{"abi":[],"bytecode":{"object":"0x60566037600b82828239805160001a607314602a57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220455edaa1f46b0bac9a060e08bd5d5072f3d6387c8f03cc497402c6da306a12b764736f6c63430008180033","sourceMap":"465:45973:47:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;465:45973:47;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x73000000000000000000000000000000000000000030146080604052600080fdfea2646970667358221220455edaa1f46b0bac9a060e08bd5d5072f3d6387c8f03cc497402c6da306a12b764736f6c63430008180033","sourceMap":"465:45973:47:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"This library provides functions for decoding slices into arrays of basic uint types.\",\"kind\":\"dev\",\"methods\":{},\"title\":\"DecodeSlice Library\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"notice\":\"A library for decoding slices of data into specific data types.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":\"DecodeSlice\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"ipfs\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/\",\":@latticexyz/=node_modules/@latticexyz/\",\":@openzeppelin/=node_modules/@openzeppelin/\",\":base/=src/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\",\":solmate/=node_modules/solmate/src/\"]},\"sources\":{\"node_modules/@latticexyz/store/src/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754\",\"dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e\",\"dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{},"version":1}},"settings":{"remappings":["@dk1a/solidity-stringutils/=node_modules/@dk1a/solidity-stringutils/","@latticexyz/=node_modules/@latticexyz/","@openzeppelin/=node_modules/@openzeppelin/","base/=src/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/","solmate/=node_modules/solmate/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"ipfs"},"compilationTarget":{"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":"DecodeSlice"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/store/src/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811","urls":["bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392","dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0x28887aab8ad5ca598927e59d702999ca6e3b3128f1cddd2b995a381c8d04b275","urls":["bzz-raw://7710847f4689b7f5b81436c7d52ae4395f244a2eebf8d398b2edd43accb06754","dweb:/ipfs/QmTD2wYqryXTynHAn5Vf9wtjUUSGeCJWENZTnWtBAK38pa"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x310523f7f3acca841e62fe50be8d8b042cad5b3c239cb1105d6623cf83e63152","urls":["bzz-raw://1cc40ca233acf6502bc65677b381c05331dd7323953e54b5df969051e47f851e","dweb:/ipfs/QmTxy9mhodT8drezB5K1kPR78AMaARomoJqDyaWpLuCKui"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"}},"version":1},"ast":{"absolutePath":"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol","id":24070,"exportedSymbols":{"DecodeSlice":[24069],"Slice":[10067],"TightCoder":[26498]},"nodeType":"SourceUnit","src":"32:46407:47","nodes":[{"id":21711,"nodeType":"PragmaDirective","src":"32:25:47","nodes":[],"literals":["solidity",">=","0.8",".24"]},{"id":21713,"nodeType":"ImportDirective","src":"107:46:47","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol","file":"./TightCoder.sol","nameLocation":"-1:-1:-1","scope":24070,"sourceUnit":26499,"symbolAliases":[{"foreign":{"id":21712,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"116:10:47","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":21715,"nodeType":"ImportDirective","src":"154:37:47","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/Slice.sol","file":"../Slice.sol","nameLocation":"-1:-1:-1","scope":24070,"sourceUnit":10290,"symbolAliases":[{"foreign":{"id":21714,"name":"Slice","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":10067,"src":"163:5:47","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":24069,"nodeType":"ContractDefinition","src":"465:45973:47","nodes":[{"id":21740,"nodeType":"FunctionDefinition","src":"732:217:47","nodes":[],"body":{"id":21739,"nodeType":"Block","src":"820:129:47","nodes":[],"statements":[{"assignments":[21730],"declarations":[{"constant":false,"id":21730,"mutability":"mutable","name":"_genericArray","nameLocation":"843:13:47","nodeType":"VariableDeclaration","scope":21739,"src":"826:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21728,"name":"bytes32","nodeType":"ElementaryTypeName","src":"826:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21729,"nodeType":"ArrayTypeName","src":"826:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21737,"initialValue":{"arguments":[{"id":21733,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21720,"src":"877:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"31","id":21734,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"885:1:47","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"323438","id":21735,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"888:3:47","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"value":"248"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}],"expression":{"id":21731,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"859:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21732,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"870:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"859:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21736,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"859:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"826:66:47"},{"AST":{"nativeSrc":"907:38:47","nodeType":"YulBlock","src":"907:38:47","statements":[{"nativeSrc":"915:24:47","nodeType":"YulAssignment","src":"915:24:47","value":{"name":"_genericArray","nativeSrc":"926:13:47","nodeType":"YulIdentifier","src":"926:13:47"},"variableNames":[{"name":"_output","nativeSrc":"915:7:47","nodeType":"YulIdentifier","src":"915:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21730,"isOffset":false,"isSlot":false,"src":"926:13:47","valueSize":1},{"declaration":21724,"isOffset":false,"isSlot":false,"src":"915:7:47","valueSize":1}],"id":21738,"nodeType":"InlineAssembly","src":"898:47:47"}]},"documentation":{"id":21717,"nodeType":"StructuredDocumentation","src":"489:240:47","text":" @notice Decodes a slice into an array of uint8.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint8."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint8","nameLocation":"741:17:47","parameters":{"id":21721,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21720,"mutability":"mutable","name":"_input","nameLocation":"765:6:47","nodeType":"VariableDeclaration","scope":21740,"src":"759:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21719,"nodeType":"UserDefinedTypeName","pathNode":{"id":21718,"name":"Slice","nameLocations":["759:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"759:5:47"},"referencedDeclaration":10067,"src":"759:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"758:14:47"},"returnParameters":{"id":21725,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21724,"mutability":"mutable","name":"_output","nameLocation":"811:7:47","nodeType":"VariableDeclaration","scope":21740,"src":"796:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint8_$dyn_memory_ptr","typeString":"uint8[]"},"typeName":{"baseType":{"id":21722,"name":"uint8","nodeType":"ElementaryTypeName","src":"796:5:47","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"id":21723,"nodeType":"ArrayTypeName","src":"796:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint8_$dyn_storage_ptr","typeString":"uint8[]"}},"visibility":"internal"}],"src":"795:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21764,"nodeType":"FunctionDefinition","src":"1198:219:47","nodes":[],"body":{"id":21763,"nodeType":"Block","src":"1288:129:47","nodes":[],"statements":[{"assignments":[21754],"declarations":[{"constant":false,"id":21754,"mutability":"mutable","name":"_genericArray","nameLocation":"1311:13:47","nodeType":"VariableDeclaration","scope":21763,"src":"1294:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21752,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1294:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21753,"nodeType":"ArrayTypeName","src":"1294:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21761,"initialValue":{"arguments":[{"id":21757,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21744,"src":"1345:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"32","id":21758,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1353:1:47","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"323430","id":21759,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1356:3:47","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"value":"240"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}],"expression":{"id":21755,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"1327:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21756,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1338:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"1327:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21760,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1327:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"1294:66:47"},{"AST":{"nativeSrc":"1375:38:47","nodeType":"YulBlock","src":"1375:38:47","statements":[{"nativeSrc":"1383:24:47","nodeType":"YulAssignment","src":"1383:24:47","value":{"name":"_genericArray","nativeSrc":"1394:13:47","nodeType":"YulIdentifier","src":"1394:13:47"},"variableNames":[{"name":"_output","nativeSrc":"1383:7:47","nodeType":"YulIdentifier","src":"1383:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21754,"isOffset":false,"isSlot":false,"src":"1394:13:47","valueSize":1},{"declaration":21748,"isOffset":false,"isSlot":false,"src":"1383:7:47","valueSize":1}],"id":21762,"nodeType":"InlineAssembly","src":"1366:47:47"}]},"documentation":{"id":21741,"nodeType":"StructuredDocumentation","src":"953:242:47","text":" @notice Decodes a slice into an array of uint16.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint16."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint16","nameLocation":"1207:18:47","parameters":{"id":21745,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21744,"mutability":"mutable","name":"_input","nameLocation":"1232:6:47","nodeType":"VariableDeclaration","scope":21764,"src":"1226:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21743,"nodeType":"UserDefinedTypeName","pathNode":{"id":21742,"name":"Slice","nameLocations":["1226:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"1226:5:47"},"referencedDeclaration":10067,"src":"1226:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"1225:14:47"},"returnParameters":{"id":21749,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21748,"mutability":"mutable","name":"_output","nameLocation":"1279:7:47","nodeType":"VariableDeclaration","scope":21764,"src":"1263:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint16_$dyn_memory_ptr","typeString":"uint16[]"},"typeName":{"baseType":{"id":21746,"name":"uint16","nodeType":"ElementaryTypeName","src":"1263:6:47","typeDescriptions":{"typeIdentifier":"t_uint16","typeString":"uint16"}},"id":21747,"nodeType":"ArrayTypeName","src":"1263:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint16_$dyn_storage_ptr","typeString":"uint16[]"}},"visibility":"internal"}],"src":"1262:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21788,"nodeType":"FunctionDefinition","src":"1666:219:47","nodes":[],"body":{"id":21787,"nodeType":"Block","src":"1756:129:47","nodes":[],"statements":[{"assignments":[21778],"declarations":[{"constant":false,"id":21778,"mutability":"mutable","name":"_genericArray","nameLocation":"1779:13:47","nodeType":"VariableDeclaration","scope":21787,"src":"1762:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21776,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1762:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21777,"nodeType":"ArrayTypeName","src":"1762:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21785,"initialValue":{"arguments":[{"id":21781,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21768,"src":"1813:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"33","id":21782,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1821:1:47","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},{"hexValue":"323332","id":21783,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"1824:3:47","typeDescriptions":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"},"value":"232"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"}],"expression":{"id":21779,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"1795:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21780,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"1806:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"1795:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21784,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"1795:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"1762:66:47"},{"AST":{"nativeSrc":"1843:38:47","nodeType":"YulBlock","src":"1843:38:47","statements":[{"nativeSrc":"1851:24:47","nodeType":"YulAssignment","src":"1851:24:47","value":{"name":"_genericArray","nativeSrc":"1862:13:47","nodeType":"YulIdentifier","src":"1862:13:47"},"variableNames":[{"name":"_output","nativeSrc":"1851:7:47","nodeType":"YulIdentifier","src":"1851:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21778,"isOffset":false,"isSlot":false,"src":"1862:13:47","valueSize":1},{"declaration":21772,"isOffset":false,"isSlot":false,"src":"1851:7:47","valueSize":1}],"id":21786,"nodeType":"InlineAssembly","src":"1834:47:47"}]},"documentation":{"id":21765,"nodeType":"StructuredDocumentation","src":"1421:242:47","text":" @notice Decodes a slice into an array of uint24.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint24."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint24","nameLocation":"1675:18:47","parameters":{"id":21769,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21768,"mutability":"mutable","name":"_input","nameLocation":"1700:6:47","nodeType":"VariableDeclaration","scope":21788,"src":"1694:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21767,"nodeType":"UserDefinedTypeName","pathNode":{"id":21766,"name":"Slice","nameLocations":["1694:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"1694:5:47"},"referencedDeclaration":10067,"src":"1694:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"1693:14:47"},"returnParameters":{"id":21773,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21772,"mutability":"mutable","name":"_output","nameLocation":"1747:7:47","nodeType":"VariableDeclaration","scope":21788,"src":"1731:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint24_$dyn_memory_ptr","typeString":"uint24[]"},"typeName":{"baseType":{"id":21770,"name":"uint24","nodeType":"ElementaryTypeName","src":"1731:6:47","typeDescriptions":{"typeIdentifier":"t_uint24","typeString":"uint24"}},"id":21771,"nodeType":"ArrayTypeName","src":"1731:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint24_$dyn_storage_ptr","typeString":"uint24[]"}},"visibility":"internal"}],"src":"1730:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21812,"nodeType":"FunctionDefinition","src":"2134:219:47","nodes":[],"body":{"id":21811,"nodeType":"Block","src":"2224:129:47","nodes":[],"statements":[{"assignments":[21802],"declarations":[{"constant":false,"id":21802,"mutability":"mutable","name":"_genericArray","nameLocation":"2247:13:47","nodeType":"VariableDeclaration","scope":21811,"src":"2230:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21800,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2230:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21801,"nodeType":"ArrayTypeName","src":"2230:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21809,"initialValue":{"arguments":[{"id":21805,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21792,"src":"2281:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"34","id":21806,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2289:1:47","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},{"hexValue":"323234","id":21807,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2292:3:47","typeDescriptions":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"},"value":"224"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"}],"expression":{"id":21803,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"2263:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21804,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2274:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"2263:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21808,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2263:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"2230:66:47"},{"AST":{"nativeSrc":"2311:38:47","nodeType":"YulBlock","src":"2311:38:47","statements":[{"nativeSrc":"2319:24:47","nodeType":"YulAssignment","src":"2319:24:47","value":{"name":"_genericArray","nativeSrc":"2330:13:47","nodeType":"YulIdentifier","src":"2330:13:47"},"variableNames":[{"name":"_output","nativeSrc":"2319:7:47","nodeType":"YulIdentifier","src":"2319:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21802,"isOffset":false,"isSlot":false,"src":"2330:13:47","valueSize":1},{"declaration":21796,"isOffset":false,"isSlot":false,"src":"2319:7:47","valueSize":1}],"id":21810,"nodeType":"InlineAssembly","src":"2302:47:47"}]},"documentation":{"id":21789,"nodeType":"StructuredDocumentation","src":"1889:242:47","text":" @notice Decodes a slice into an array of uint32.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint32."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint32","nameLocation":"2143:18:47","parameters":{"id":21793,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21792,"mutability":"mutable","name":"_input","nameLocation":"2168:6:47","nodeType":"VariableDeclaration","scope":21812,"src":"2162:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21791,"nodeType":"UserDefinedTypeName","pathNode":{"id":21790,"name":"Slice","nameLocations":["2162:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"2162:5:47"},"referencedDeclaration":10067,"src":"2162:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"2161:14:47"},"returnParameters":{"id":21797,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21796,"mutability":"mutable","name":"_output","nameLocation":"2215:7:47","nodeType":"VariableDeclaration","scope":21812,"src":"2199:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint32_$dyn_memory_ptr","typeString":"uint32[]"},"typeName":{"baseType":{"id":21794,"name":"uint32","nodeType":"ElementaryTypeName","src":"2199:6:47","typeDescriptions":{"typeIdentifier":"t_uint32","typeString":"uint32"}},"id":21795,"nodeType":"ArrayTypeName","src":"2199:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint32_$dyn_storage_ptr","typeString":"uint32[]"}},"visibility":"internal"}],"src":"2198:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21836,"nodeType":"FunctionDefinition","src":"2602:219:47","nodes":[],"body":{"id":21835,"nodeType":"Block","src":"2692:129:47","nodes":[],"statements":[{"assignments":[21826],"declarations":[{"constant":false,"id":21826,"mutability":"mutable","name":"_genericArray","nameLocation":"2715:13:47","nodeType":"VariableDeclaration","scope":21835,"src":"2698:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21824,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2698:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21825,"nodeType":"ArrayTypeName","src":"2698:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21833,"initialValue":{"arguments":[{"id":21829,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21816,"src":"2749:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"35","id":21830,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2757:1:47","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},{"hexValue":"323136","id":21831,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"2760:3:47","typeDescriptions":{"typeIdentifier":"t_rational_216_by_1","typeString":"int_const 216"},"value":"216"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},{"typeIdentifier":"t_rational_216_by_1","typeString":"int_const 216"}],"expression":{"id":21827,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"2731:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21828,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"2742:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"2731:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21832,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"2731:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"2698:66:47"},{"AST":{"nativeSrc":"2779:38:47","nodeType":"YulBlock","src":"2779:38:47","statements":[{"nativeSrc":"2787:24:47","nodeType":"YulAssignment","src":"2787:24:47","value":{"name":"_genericArray","nativeSrc":"2798:13:47","nodeType":"YulIdentifier","src":"2798:13:47"},"variableNames":[{"name":"_output","nativeSrc":"2787:7:47","nodeType":"YulIdentifier","src":"2787:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21826,"isOffset":false,"isSlot":false,"src":"2798:13:47","valueSize":1},{"declaration":21820,"isOffset":false,"isSlot":false,"src":"2787:7:47","valueSize":1}],"id":21834,"nodeType":"InlineAssembly","src":"2770:47:47"}]},"documentation":{"id":21813,"nodeType":"StructuredDocumentation","src":"2357:242:47","text":" @notice Decodes a slice into an array of uint40.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint40."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint40","nameLocation":"2611:18:47","parameters":{"id":21817,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21816,"mutability":"mutable","name":"_input","nameLocation":"2636:6:47","nodeType":"VariableDeclaration","scope":21836,"src":"2630:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21815,"nodeType":"UserDefinedTypeName","pathNode":{"id":21814,"name":"Slice","nameLocations":["2630:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"2630:5:47"},"referencedDeclaration":10067,"src":"2630:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"2629:14:47"},"returnParameters":{"id":21821,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21820,"mutability":"mutable","name":"_output","nameLocation":"2683:7:47","nodeType":"VariableDeclaration","scope":21836,"src":"2667:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint40_$dyn_memory_ptr","typeString":"uint40[]"},"typeName":{"baseType":{"id":21818,"name":"uint40","nodeType":"ElementaryTypeName","src":"2667:6:47","typeDescriptions":{"typeIdentifier":"t_uint40","typeString":"uint40"}},"id":21819,"nodeType":"ArrayTypeName","src":"2667:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint40_$dyn_storage_ptr","typeString":"uint40[]"}},"visibility":"internal"}],"src":"2666:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21860,"nodeType":"FunctionDefinition","src":"3070:219:47","nodes":[],"body":{"id":21859,"nodeType":"Block","src":"3160:129:47","nodes":[],"statements":[{"assignments":[21850],"declarations":[{"constant":false,"id":21850,"mutability":"mutable","name":"_genericArray","nameLocation":"3183:13:47","nodeType":"VariableDeclaration","scope":21859,"src":"3166:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21848,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3166:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21849,"nodeType":"ArrayTypeName","src":"3166:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21857,"initialValue":{"arguments":[{"id":21853,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21840,"src":"3217:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"36","id":21854,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3225:1:47","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},{"hexValue":"323038","id":21855,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3228:3:47","typeDescriptions":{"typeIdentifier":"t_rational_208_by_1","typeString":"int_const 208"},"value":"208"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},{"typeIdentifier":"t_rational_208_by_1","typeString":"int_const 208"}],"expression":{"id":21851,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"3199:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21852,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3210:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"3199:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21856,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3199:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3166:66:47"},{"AST":{"nativeSrc":"3247:38:47","nodeType":"YulBlock","src":"3247:38:47","statements":[{"nativeSrc":"3255:24:47","nodeType":"YulAssignment","src":"3255:24:47","value":{"name":"_genericArray","nativeSrc":"3266:13:47","nodeType":"YulIdentifier","src":"3266:13:47"},"variableNames":[{"name":"_output","nativeSrc":"3255:7:47","nodeType":"YulIdentifier","src":"3255:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21850,"isOffset":false,"isSlot":false,"src":"3266:13:47","valueSize":1},{"declaration":21844,"isOffset":false,"isSlot":false,"src":"3255:7:47","valueSize":1}],"id":21858,"nodeType":"InlineAssembly","src":"3238:47:47"}]},"documentation":{"id":21837,"nodeType":"StructuredDocumentation","src":"2825:242:47","text":" @notice Decodes a slice into an array of uint48.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint48."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint48","nameLocation":"3079:18:47","parameters":{"id":21841,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21840,"mutability":"mutable","name":"_input","nameLocation":"3104:6:47","nodeType":"VariableDeclaration","scope":21860,"src":"3098:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21839,"nodeType":"UserDefinedTypeName","pathNode":{"id":21838,"name":"Slice","nameLocations":["3098:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"3098:5:47"},"referencedDeclaration":10067,"src":"3098:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"3097:14:47"},"returnParameters":{"id":21845,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21844,"mutability":"mutable","name":"_output","nameLocation":"3151:7:47","nodeType":"VariableDeclaration","scope":21860,"src":"3135:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint48_$dyn_memory_ptr","typeString":"uint48[]"},"typeName":{"baseType":{"id":21842,"name":"uint48","nodeType":"ElementaryTypeName","src":"3135:6:47","typeDescriptions":{"typeIdentifier":"t_uint48","typeString":"uint48"}},"id":21843,"nodeType":"ArrayTypeName","src":"3135:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint48_$dyn_storage_ptr","typeString":"uint48[]"}},"visibility":"internal"}],"src":"3134:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21884,"nodeType":"FunctionDefinition","src":"3538:219:47","nodes":[],"body":{"id":21883,"nodeType":"Block","src":"3628:129:47","nodes":[],"statements":[{"assignments":[21874],"declarations":[{"constant":false,"id":21874,"mutability":"mutable","name":"_genericArray","nameLocation":"3651:13:47","nodeType":"VariableDeclaration","scope":21883,"src":"3634:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21872,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3634:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21873,"nodeType":"ArrayTypeName","src":"3634:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21881,"initialValue":{"arguments":[{"id":21877,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21864,"src":"3685:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"37","id":21878,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3693:1:47","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},{"hexValue":"323030","id":21879,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"3696:3:47","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"}],"expression":{"id":21875,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"3667:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21876,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"3678:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"3667:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21880,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"3667:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"3634:66:47"},{"AST":{"nativeSrc":"3715:38:47","nodeType":"YulBlock","src":"3715:38:47","statements":[{"nativeSrc":"3723:24:47","nodeType":"YulAssignment","src":"3723:24:47","value":{"name":"_genericArray","nativeSrc":"3734:13:47","nodeType":"YulIdentifier","src":"3734:13:47"},"variableNames":[{"name":"_output","nativeSrc":"3723:7:47","nodeType":"YulIdentifier","src":"3723:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21874,"isOffset":false,"isSlot":false,"src":"3734:13:47","valueSize":1},{"declaration":21868,"isOffset":false,"isSlot":false,"src":"3723:7:47","valueSize":1}],"id":21882,"nodeType":"InlineAssembly","src":"3706:47:47"}]},"documentation":{"id":21861,"nodeType":"StructuredDocumentation","src":"3293:242:47","text":" @notice Decodes a slice into an array of uint56.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint56."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint56","nameLocation":"3547:18:47","parameters":{"id":21865,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21864,"mutability":"mutable","name":"_input","nameLocation":"3572:6:47","nodeType":"VariableDeclaration","scope":21884,"src":"3566:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21863,"nodeType":"UserDefinedTypeName","pathNode":{"id":21862,"name":"Slice","nameLocations":["3566:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"3566:5:47"},"referencedDeclaration":10067,"src":"3566:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"3565:14:47"},"returnParameters":{"id":21869,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21868,"mutability":"mutable","name":"_output","nameLocation":"3619:7:47","nodeType":"VariableDeclaration","scope":21884,"src":"3603:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint56_$dyn_memory_ptr","typeString":"uint56[]"},"typeName":{"baseType":{"id":21866,"name":"uint56","nodeType":"ElementaryTypeName","src":"3603:6:47","typeDescriptions":{"typeIdentifier":"t_uint56","typeString":"uint56"}},"id":21867,"nodeType":"ArrayTypeName","src":"3603:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint56_$dyn_storage_ptr","typeString":"uint56[]"}},"visibility":"internal"}],"src":"3602:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21908,"nodeType":"FunctionDefinition","src":"4006:219:47","nodes":[],"body":{"id":21907,"nodeType":"Block","src":"4096:129:47","nodes":[],"statements":[{"assignments":[21898],"declarations":[{"constant":false,"id":21898,"mutability":"mutable","name":"_genericArray","nameLocation":"4119:13:47","nodeType":"VariableDeclaration","scope":21907,"src":"4102:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21896,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4102:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21897,"nodeType":"ArrayTypeName","src":"4102:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21905,"initialValue":{"arguments":[{"id":21901,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21888,"src":"4153:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"38","id":21902,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4161:1:47","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},{"hexValue":"313932","id":21903,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4164:3:47","typeDescriptions":{"typeIdentifier":"t_rational_192_by_1","typeString":"int_const 192"},"value":"192"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},{"typeIdentifier":"t_rational_192_by_1","typeString":"int_const 192"}],"expression":{"id":21899,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"4135:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21900,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4146:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"4135:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21904,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4135:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4102:66:47"},{"AST":{"nativeSrc":"4183:38:47","nodeType":"YulBlock","src":"4183:38:47","statements":[{"nativeSrc":"4191:24:47","nodeType":"YulAssignment","src":"4191:24:47","value":{"name":"_genericArray","nativeSrc":"4202:13:47","nodeType":"YulIdentifier","src":"4202:13:47"},"variableNames":[{"name":"_output","nativeSrc":"4191:7:47","nodeType":"YulIdentifier","src":"4191:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21898,"isOffset":false,"isSlot":false,"src":"4202:13:47","valueSize":1},{"declaration":21892,"isOffset":false,"isSlot":false,"src":"4191:7:47","valueSize":1}],"id":21906,"nodeType":"InlineAssembly","src":"4174:47:47"}]},"documentation":{"id":21885,"nodeType":"StructuredDocumentation","src":"3761:242:47","text":" @notice Decodes a slice into an array of uint64.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint64."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint64","nameLocation":"4015:18:47","parameters":{"id":21889,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21888,"mutability":"mutable","name":"_input","nameLocation":"4040:6:47","nodeType":"VariableDeclaration","scope":21908,"src":"4034:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21887,"nodeType":"UserDefinedTypeName","pathNode":{"id":21886,"name":"Slice","nameLocations":["4034:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"4034:5:47"},"referencedDeclaration":10067,"src":"4034:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"4033:14:47"},"returnParameters":{"id":21893,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21892,"mutability":"mutable","name":"_output","nameLocation":"4087:7:47","nodeType":"VariableDeclaration","scope":21908,"src":"4071:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_memory_ptr","typeString":"uint64[]"},"typeName":{"baseType":{"id":21890,"name":"uint64","nodeType":"ElementaryTypeName","src":"4071:6:47","typeDescriptions":{"typeIdentifier":"t_uint64","typeString":"uint64"}},"id":21891,"nodeType":"ArrayTypeName","src":"4071:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint64_$dyn_storage_ptr","typeString":"uint64[]"}},"visibility":"internal"}],"src":"4070:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21932,"nodeType":"FunctionDefinition","src":"4474:219:47","nodes":[],"body":{"id":21931,"nodeType":"Block","src":"4564:129:47","nodes":[],"statements":[{"assignments":[21922],"declarations":[{"constant":false,"id":21922,"mutability":"mutable","name":"_genericArray","nameLocation":"4587:13:47","nodeType":"VariableDeclaration","scope":21931,"src":"4570:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21920,"name":"bytes32","nodeType":"ElementaryTypeName","src":"4570:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21921,"nodeType":"ArrayTypeName","src":"4570:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21929,"initialValue":{"arguments":[{"id":21925,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21912,"src":"4621:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"39","id":21926,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4629:1:47","typeDescriptions":{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},"value":"9"},{"hexValue":"313834","id":21927,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"4632:3:47","typeDescriptions":{"typeIdentifier":"t_rational_184_by_1","typeString":"int_const 184"},"value":"184"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},{"typeIdentifier":"t_rational_184_by_1","typeString":"int_const 184"}],"expression":{"id":21923,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"4603:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21924,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"4614:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"4603:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21928,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"4603:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"4570:66:47"},{"AST":{"nativeSrc":"4651:38:47","nodeType":"YulBlock","src":"4651:38:47","statements":[{"nativeSrc":"4659:24:47","nodeType":"YulAssignment","src":"4659:24:47","value":{"name":"_genericArray","nativeSrc":"4670:13:47","nodeType":"YulIdentifier","src":"4670:13:47"},"variableNames":[{"name":"_output","nativeSrc":"4659:7:47","nodeType":"YulIdentifier","src":"4659:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21922,"isOffset":false,"isSlot":false,"src":"4670:13:47","valueSize":1},{"declaration":21916,"isOffset":false,"isSlot":false,"src":"4659:7:47","valueSize":1}],"id":21930,"nodeType":"InlineAssembly","src":"4642:47:47"}]},"documentation":{"id":21909,"nodeType":"StructuredDocumentation","src":"4229:242:47","text":" @notice Decodes a slice into an array of uint72.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint72."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint72","nameLocation":"4483:18:47","parameters":{"id":21913,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21912,"mutability":"mutable","name":"_input","nameLocation":"4508:6:47","nodeType":"VariableDeclaration","scope":21932,"src":"4502:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21911,"nodeType":"UserDefinedTypeName","pathNode":{"id":21910,"name":"Slice","nameLocations":["4502:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"4502:5:47"},"referencedDeclaration":10067,"src":"4502:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"4501:14:47"},"returnParameters":{"id":21917,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21916,"mutability":"mutable","name":"_output","nameLocation":"4555:7:47","nodeType":"VariableDeclaration","scope":21932,"src":"4539:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint72_$dyn_memory_ptr","typeString":"uint72[]"},"typeName":{"baseType":{"id":21914,"name":"uint72","nodeType":"ElementaryTypeName","src":"4539:6:47","typeDescriptions":{"typeIdentifier":"t_uint72","typeString":"uint72"}},"id":21915,"nodeType":"ArrayTypeName","src":"4539:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint72_$dyn_storage_ptr","typeString":"uint72[]"}},"visibility":"internal"}],"src":"4538:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21956,"nodeType":"FunctionDefinition","src":"4942:220:47","nodes":[],"body":{"id":21955,"nodeType":"Block","src":"5032:130:47","nodes":[],"statements":[{"assignments":[21946],"declarations":[{"constant":false,"id":21946,"mutability":"mutable","name":"_genericArray","nameLocation":"5055:13:47","nodeType":"VariableDeclaration","scope":21955,"src":"5038:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21944,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5038:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21945,"nodeType":"ArrayTypeName","src":"5038:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21953,"initialValue":{"arguments":[{"id":21949,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21936,"src":"5089:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3130","id":21950,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5097:2:47","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},{"hexValue":"313736","id":21951,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5101:3:47","typeDescriptions":{"typeIdentifier":"t_rational_176_by_1","typeString":"int_const 176"},"value":"176"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},{"typeIdentifier":"t_rational_176_by_1","typeString":"int_const 176"}],"expression":{"id":21947,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"5071:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21948,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5082:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"5071:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21952,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5071:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5038:67:47"},{"AST":{"nativeSrc":"5120:38:47","nodeType":"YulBlock","src":"5120:38:47","statements":[{"nativeSrc":"5128:24:47","nodeType":"YulAssignment","src":"5128:24:47","value":{"name":"_genericArray","nativeSrc":"5139:13:47","nodeType":"YulIdentifier","src":"5139:13:47"},"variableNames":[{"name":"_output","nativeSrc":"5128:7:47","nodeType":"YulIdentifier","src":"5128:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21946,"isOffset":false,"isSlot":false,"src":"5139:13:47","valueSize":1},{"declaration":21940,"isOffset":false,"isSlot":false,"src":"5128:7:47","valueSize":1}],"id":21954,"nodeType":"InlineAssembly","src":"5111:47:47"}]},"documentation":{"id":21933,"nodeType":"StructuredDocumentation","src":"4697:242:47","text":" @notice Decodes a slice into an array of uint80.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint80."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint80","nameLocation":"4951:18:47","parameters":{"id":21937,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21936,"mutability":"mutable","name":"_input","nameLocation":"4976:6:47","nodeType":"VariableDeclaration","scope":21956,"src":"4970:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21935,"nodeType":"UserDefinedTypeName","pathNode":{"id":21934,"name":"Slice","nameLocations":["4970:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"4970:5:47"},"referencedDeclaration":10067,"src":"4970:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"4969:14:47"},"returnParameters":{"id":21941,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21940,"mutability":"mutable","name":"_output","nameLocation":"5023:7:47","nodeType":"VariableDeclaration","scope":21956,"src":"5007:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint80_$dyn_memory_ptr","typeString":"uint80[]"},"typeName":{"baseType":{"id":21938,"name":"uint80","nodeType":"ElementaryTypeName","src":"5007:6:47","typeDescriptions":{"typeIdentifier":"t_uint80","typeString":"uint80"}},"id":21939,"nodeType":"ArrayTypeName","src":"5007:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint80_$dyn_storage_ptr","typeString":"uint80[]"}},"visibility":"internal"}],"src":"5006:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":21980,"nodeType":"FunctionDefinition","src":"5411:220:47","nodes":[],"body":{"id":21979,"nodeType":"Block","src":"5501:130:47","nodes":[],"statements":[{"assignments":[21970],"declarations":[{"constant":false,"id":21970,"mutability":"mutable","name":"_genericArray","nameLocation":"5524:13:47","nodeType":"VariableDeclaration","scope":21979,"src":"5507:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21968,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5507:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21969,"nodeType":"ArrayTypeName","src":"5507:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":21977,"initialValue":{"arguments":[{"id":21973,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21960,"src":"5558:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3131","id":21974,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5566:2:47","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},{"hexValue":"313638","id":21975,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"5570:3:47","typeDescriptions":{"typeIdentifier":"t_rational_168_by_1","typeString":"int_const 168"},"value":"168"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},{"typeIdentifier":"t_rational_168_by_1","typeString":"int_const 168"}],"expression":{"id":21971,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"5540:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21972,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"5551:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"5540:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":21976,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"5540:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5507:67:47"},{"AST":{"nativeSrc":"5589:38:47","nodeType":"YulBlock","src":"5589:38:47","statements":[{"nativeSrc":"5597:24:47","nodeType":"YulAssignment","src":"5597:24:47","value":{"name":"_genericArray","nativeSrc":"5608:13:47","nodeType":"YulIdentifier","src":"5608:13:47"},"variableNames":[{"name":"_output","nativeSrc":"5597:7:47","nodeType":"YulIdentifier","src":"5597:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21970,"isOffset":false,"isSlot":false,"src":"5608:13:47","valueSize":1},{"declaration":21964,"isOffset":false,"isSlot":false,"src":"5597:7:47","valueSize":1}],"id":21978,"nodeType":"InlineAssembly","src":"5580:47:47"}]},"documentation":{"id":21957,"nodeType":"StructuredDocumentation","src":"5166:242:47","text":" @notice Decodes a slice into an array of uint88.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint88."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint88","nameLocation":"5420:18:47","parameters":{"id":21961,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21960,"mutability":"mutable","name":"_input","nameLocation":"5445:6:47","nodeType":"VariableDeclaration","scope":21980,"src":"5439:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21959,"nodeType":"UserDefinedTypeName","pathNode":{"id":21958,"name":"Slice","nameLocations":["5439:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"5439:5:47"},"referencedDeclaration":10067,"src":"5439:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"5438:14:47"},"returnParameters":{"id":21965,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21964,"mutability":"mutable","name":"_output","nameLocation":"5492:7:47","nodeType":"VariableDeclaration","scope":21980,"src":"5476:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint88_$dyn_memory_ptr","typeString":"uint88[]"},"typeName":{"baseType":{"id":21962,"name":"uint88","nodeType":"ElementaryTypeName","src":"5476:6:47","typeDescriptions":{"typeIdentifier":"t_uint88","typeString":"uint88"}},"id":21963,"nodeType":"ArrayTypeName","src":"5476:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint88_$dyn_storage_ptr","typeString":"uint88[]"}},"visibility":"internal"}],"src":"5475:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22004,"nodeType":"FunctionDefinition","src":"5880:220:47","nodes":[],"body":{"id":22003,"nodeType":"Block","src":"5970:130:47","nodes":[],"statements":[{"assignments":[21994],"declarations":[{"constant":false,"id":21994,"mutability":"mutable","name":"_genericArray","nameLocation":"5993:13:47","nodeType":"VariableDeclaration","scope":22003,"src":"5976:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":21992,"name":"bytes32","nodeType":"ElementaryTypeName","src":"5976:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":21993,"nodeType":"ArrayTypeName","src":"5976:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22001,"initialValue":{"arguments":[{"id":21997,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":21984,"src":"6027:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3132","id":21998,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6035:2:47","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},{"hexValue":"313630","id":21999,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6039:3:47","typeDescriptions":{"typeIdentifier":"t_rational_160_by_1","typeString":"int_const 160"},"value":"160"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},{"typeIdentifier":"t_rational_160_by_1","typeString":"int_const 160"}],"expression":{"id":21995,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"6009:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":21996,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6020:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"6009:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22000,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6009:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"5976:67:47"},{"AST":{"nativeSrc":"6058:38:47","nodeType":"YulBlock","src":"6058:38:47","statements":[{"nativeSrc":"6066:24:47","nodeType":"YulAssignment","src":"6066:24:47","value":{"name":"_genericArray","nativeSrc":"6077:13:47","nodeType":"YulIdentifier","src":"6077:13:47"},"variableNames":[{"name":"_output","nativeSrc":"6066:7:47","nodeType":"YulIdentifier","src":"6066:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":21994,"isOffset":false,"isSlot":false,"src":"6077:13:47","valueSize":1},{"declaration":21988,"isOffset":false,"isSlot":false,"src":"6066:7:47","valueSize":1}],"id":22002,"nodeType":"InlineAssembly","src":"6049:47:47"}]},"documentation":{"id":21981,"nodeType":"StructuredDocumentation","src":"5635:242:47","text":" @notice Decodes a slice into an array of uint96.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint96."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint96","nameLocation":"5889:18:47","parameters":{"id":21985,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21984,"mutability":"mutable","name":"_input","nameLocation":"5914:6:47","nodeType":"VariableDeclaration","scope":22004,"src":"5908:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":21983,"nodeType":"UserDefinedTypeName","pathNode":{"id":21982,"name":"Slice","nameLocations":["5908:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"5908:5:47"},"referencedDeclaration":10067,"src":"5908:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"5907:14:47"},"returnParameters":{"id":21989,"nodeType":"ParameterList","parameters":[{"constant":false,"id":21988,"mutability":"mutable","name":"_output","nameLocation":"5961:7:47","nodeType":"VariableDeclaration","scope":22004,"src":"5945:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint96_$dyn_memory_ptr","typeString":"uint96[]"},"typeName":{"baseType":{"id":21986,"name":"uint96","nodeType":"ElementaryTypeName","src":"5945:6:47","typeDescriptions":{"typeIdentifier":"t_uint96","typeString":"uint96"}},"id":21987,"nodeType":"ArrayTypeName","src":"5945:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint96_$dyn_storage_ptr","typeString":"uint96[]"}},"visibility":"internal"}],"src":"5944:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22028,"nodeType":"FunctionDefinition","src":"6351:222:47","nodes":[],"body":{"id":22027,"nodeType":"Block","src":"6443:130:47","nodes":[],"statements":[{"assignments":[22018],"declarations":[{"constant":false,"id":22018,"mutability":"mutable","name":"_genericArray","nameLocation":"6466:13:47","nodeType":"VariableDeclaration","scope":22027,"src":"6449:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22016,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6449:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22017,"nodeType":"ArrayTypeName","src":"6449:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22025,"initialValue":{"arguments":[{"id":22021,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22008,"src":"6500:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3133","id":22022,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6508:2:47","typeDescriptions":{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},"value":"13"},{"hexValue":"313532","id":22023,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6512:3:47","typeDescriptions":{"typeIdentifier":"t_rational_152_by_1","typeString":"int_const 152"},"value":"152"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},{"typeIdentifier":"t_rational_152_by_1","typeString":"int_const 152"}],"expression":{"id":22019,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"6482:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22020,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6493:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"6482:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22024,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6482:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"6449:67:47"},{"AST":{"nativeSrc":"6531:38:47","nodeType":"YulBlock","src":"6531:38:47","statements":[{"nativeSrc":"6539:24:47","nodeType":"YulAssignment","src":"6539:24:47","value":{"name":"_genericArray","nativeSrc":"6550:13:47","nodeType":"YulIdentifier","src":"6550:13:47"},"variableNames":[{"name":"_output","nativeSrc":"6539:7:47","nodeType":"YulIdentifier","src":"6539:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22018,"isOffset":false,"isSlot":false,"src":"6550:13:47","valueSize":1},{"declaration":22012,"isOffset":false,"isSlot":false,"src":"6539:7:47","valueSize":1}],"id":22026,"nodeType":"InlineAssembly","src":"6522:47:47"}]},"documentation":{"id":22005,"nodeType":"StructuredDocumentation","src":"6104:244:47","text":" @notice Decodes a slice into an array of uint104.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint104."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint104","nameLocation":"6360:19:47","parameters":{"id":22009,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22008,"mutability":"mutable","name":"_input","nameLocation":"6386:6:47","nodeType":"VariableDeclaration","scope":22028,"src":"6380:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22007,"nodeType":"UserDefinedTypeName","pathNode":{"id":22006,"name":"Slice","nameLocations":["6380:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"6380:5:47"},"referencedDeclaration":10067,"src":"6380:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"6379:14:47"},"returnParameters":{"id":22013,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22012,"mutability":"mutable","name":"_output","nameLocation":"6434:7:47","nodeType":"VariableDeclaration","scope":22028,"src":"6417:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint104_$dyn_memory_ptr","typeString":"uint104[]"},"typeName":{"baseType":{"id":22010,"name":"uint104","nodeType":"ElementaryTypeName","src":"6417:7:47","typeDescriptions":{"typeIdentifier":"t_uint104","typeString":"uint104"}},"id":22011,"nodeType":"ArrayTypeName","src":"6417:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint104_$dyn_storage_ptr","typeString":"uint104[]"}},"visibility":"internal"}],"src":"6416:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22052,"nodeType":"FunctionDefinition","src":"6824:222:47","nodes":[],"body":{"id":22051,"nodeType":"Block","src":"6916:130:47","nodes":[],"statements":[{"assignments":[22042],"declarations":[{"constant":false,"id":22042,"mutability":"mutable","name":"_genericArray","nameLocation":"6939:13:47","nodeType":"VariableDeclaration","scope":22051,"src":"6922:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22040,"name":"bytes32","nodeType":"ElementaryTypeName","src":"6922:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22041,"nodeType":"ArrayTypeName","src":"6922:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22049,"initialValue":{"arguments":[{"id":22045,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22032,"src":"6973:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3134","id":22046,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6981:2:47","typeDescriptions":{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},"value":"14"},{"hexValue":"313434","id":22047,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"6985:3:47","typeDescriptions":{"typeIdentifier":"t_rational_144_by_1","typeString":"int_const 144"},"value":"144"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},{"typeIdentifier":"t_rational_144_by_1","typeString":"int_const 144"}],"expression":{"id":22043,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"6955:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22044,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"6966:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"6955:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22048,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"6955:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"6922:67:47"},{"AST":{"nativeSrc":"7004:38:47","nodeType":"YulBlock","src":"7004:38:47","statements":[{"nativeSrc":"7012:24:47","nodeType":"YulAssignment","src":"7012:24:47","value":{"name":"_genericArray","nativeSrc":"7023:13:47","nodeType":"YulIdentifier","src":"7023:13:47"},"variableNames":[{"name":"_output","nativeSrc":"7012:7:47","nodeType":"YulIdentifier","src":"7012:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22042,"isOffset":false,"isSlot":false,"src":"7023:13:47","valueSize":1},{"declaration":22036,"isOffset":false,"isSlot":false,"src":"7012:7:47","valueSize":1}],"id":22050,"nodeType":"InlineAssembly","src":"6995:47:47"}]},"documentation":{"id":22029,"nodeType":"StructuredDocumentation","src":"6577:244:47","text":" @notice Decodes a slice into an array of uint112.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint112."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint112","nameLocation":"6833:19:47","parameters":{"id":22033,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22032,"mutability":"mutable","name":"_input","nameLocation":"6859:6:47","nodeType":"VariableDeclaration","scope":22052,"src":"6853:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22031,"nodeType":"UserDefinedTypeName","pathNode":{"id":22030,"name":"Slice","nameLocations":["6853:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"6853:5:47"},"referencedDeclaration":10067,"src":"6853:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"6852:14:47"},"returnParameters":{"id":22037,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22036,"mutability":"mutable","name":"_output","nameLocation":"6907:7:47","nodeType":"VariableDeclaration","scope":22052,"src":"6890:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint112_$dyn_memory_ptr","typeString":"uint112[]"},"typeName":{"baseType":{"id":22034,"name":"uint112","nodeType":"ElementaryTypeName","src":"6890:7:47","typeDescriptions":{"typeIdentifier":"t_uint112","typeString":"uint112"}},"id":22035,"nodeType":"ArrayTypeName","src":"6890:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint112_$dyn_storage_ptr","typeString":"uint112[]"}},"visibility":"internal"}],"src":"6889:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22076,"nodeType":"FunctionDefinition","src":"7297:222:47","nodes":[],"body":{"id":22075,"nodeType":"Block","src":"7389:130:47","nodes":[],"statements":[{"assignments":[22066],"declarations":[{"constant":false,"id":22066,"mutability":"mutable","name":"_genericArray","nameLocation":"7412:13:47","nodeType":"VariableDeclaration","scope":22075,"src":"7395:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22064,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7395:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22065,"nodeType":"ArrayTypeName","src":"7395:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22073,"initialValue":{"arguments":[{"id":22069,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22056,"src":"7446:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3135","id":22070,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7454:2:47","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},{"hexValue":"313336","id":22071,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7458:3:47","typeDescriptions":{"typeIdentifier":"t_rational_136_by_1","typeString":"int_const 136"},"value":"136"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},{"typeIdentifier":"t_rational_136_by_1","typeString":"int_const 136"}],"expression":{"id":22067,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"7428:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22068,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7439:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"7428:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22072,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7428:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"7395:67:47"},{"AST":{"nativeSrc":"7477:38:47","nodeType":"YulBlock","src":"7477:38:47","statements":[{"nativeSrc":"7485:24:47","nodeType":"YulAssignment","src":"7485:24:47","value":{"name":"_genericArray","nativeSrc":"7496:13:47","nodeType":"YulIdentifier","src":"7496:13:47"},"variableNames":[{"name":"_output","nativeSrc":"7485:7:47","nodeType":"YulIdentifier","src":"7485:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22066,"isOffset":false,"isSlot":false,"src":"7496:13:47","valueSize":1},{"declaration":22060,"isOffset":false,"isSlot":false,"src":"7485:7:47","valueSize":1}],"id":22074,"nodeType":"InlineAssembly","src":"7468:47:47"}]},"documentation":{"id":22053,"nodeType":"StructuredDocumentation","src":"7050:244:47","text":" @notice Decodes a slice into an array of uint120.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint120."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint120","nameLocation":"7306:19:47","parameters":{"id":22057,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22056,"mutability":"mutable","name":"_input","nameLocation":"7332:6:47","nodeType":"VariableDeclaration","scope":22076,"src":"7326:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22055,"nodeType":"UserDefinedTypeName","pathNode":{"id":22054,"name":"Slice","nameLocations":["7326:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"7326:5:47"},"referencedDeclaration":10067,"src":"7326:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"7325:14:47"},"returnParameters":{"id":22061,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22060,"mutability":"mutable","name":"_output","nameLocation":"7380:7:47","nodeType":"VariableDeclaration","scope":22076,"src":"7363:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint120_$dyn_memory_ptr","typeString":"uint120[]"},"typeName":{"baseType":{"id":22058,"name":"uint120","nodeType":"ElementaryTypeName","src":"7363:7:47","typeDescriptions":{"typeIdentifier":"t_uint120","typeString":"uint120"}},"id":22059,"nodeType":"ArrayTypeName","src":"7363:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint120_$dyn_storage_ptr","typeString":"uint120[]"}},"visibility":"internal"}],"src":"7362:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22100,"nodeType":"FunctionDefinition","src":"7770:222:47","nodes":[],"body":{"id":22099,"nodeType":"Block","src":"7862:130:47","nodes":[],"statements":[{"assignments":[22090],"declarations":[{"constant":false,"id":22090,"mutability":"mutable","name":"_genericArray","nameLocation":"7885:13:47","nodeType":"VariableDeclaration","scope":22099,"src":"7868:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22088,"name":"bytes32","nodeType":"ElementaryTypeName","src":"7868:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22089,"nodeType":"ArrayTypeName","src":"7868:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22097,"initialValue":{"arguments":[{"id":22093,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22080,"src":"7919:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3136","id":22094,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7927:2:47","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},{"hexValue":"313238","id":22095,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"7931:3:47","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"}],"expression":{"id":22091,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"7901:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22092,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"7912:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"7901:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22096,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"7901:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"7868:67:47"},{"AST":{"nativeSrc":"7950:38:47","nodeType":"YulBlock","src":"7950:38:47","statements":[{"nativeSrc":"7958:24:47","nodeType":"YulAssignment","src":"7958:24:47","value":{"name":"_genericArray","nativeSrc":"7969:13:47","nodeType":"YulIdentifier","src":"7969:13:47"},"variableNames":[{"name":"_output","nativeSrc":"7958:7:47","nodeType":"YulIdentifier","src":"7958:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22090,"isOffset":false,"isSlot":false,"src":"7969:13:47","valueSize":1},{"declaration":22084,"isOffset":false,"isSlot":false,"src":"7958:7:47","valueSize":1}],"id":22098,"nodeType":"InlineAssembly","src":"7941:47:47"}]},"documentation":{"id":22077,"nodeType":"StructuredDocumentation","src":"7523:244:47","text":" @notice Decodes a slice into an array of uint128.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint128."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint128","nameLocation":"7779:19:47","parameters":{"id":22081,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22080,"mutability":"mutable","name":"_input","nameLocation":"7805:6:47","nodeType":"VariableDeclaration","scope":22100,"src":"7799:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22079,"nodeType":"UserDefinedTypeName","pathNode":{"id":22078,"name":"Slice","nameLocations":["7799:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"7799:5:47"},"referencedDeclaration":10067,"src":"7799:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"7798:14:47"},"returnParameters":{"id":22085,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22084,"mutability":"mutable","name":"_output","nameLocation":"7853:7:47","nodeType":"VariableDeclaration","scope":22100,"src":"7836:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint128_$dyn_memory_ptr","typeString":"uint128[]"},"typeName":{"baseType":{"id":22082,"name":"uint128","nodeType":"ElementaryTypeName","src":"7836:7:47","typeDescriptions":{"typeIdentifier":"t_uint128","typeString":"uint128"}},"id":22083,"nodeType":"ArrayTypeName","src":"7836:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint128_$dyn_storage_ptr","typeString":"uint128[]"}},"visibility":"internal"}],"src":"7835:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22124,"nodeType":"FunctionDefinition","src":"8243:222:47","nodes":[],"body":{"id":22123,"nodeType":"Block","src":"8335:130:47","nodes":[],"statements":[{"assignments":[22114],"declarations":[{"constant":false,"id":22114,"mutability":"mutable","name":"_genericArray","nameLocation":"8358:13:47","nodeType":"VariableDeclaration","scope":22123,"src":"8341:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22112,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8341:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22113,"nodeType":"ArrayTypeName","src":"8341:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22121,"initialValue":{"arguments":[{"id":22117,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22104,"src":"8392:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3137","id":22118,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8400:2:47","typeDescriptions":{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},"value":"17"},{"hexValue":"313230","id":22119,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8404:3:47","typeDescriptions":{"typeIdentifier":"t_rational_120_by_1","typeString":"int_const 120"},"value":"120"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},{"typeIdentifier":"t_rational_120_by_1","typeString":"int_const 120"}],"expression":{"id":22115,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"8374:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22116,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8385:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"8374:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22120,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8374:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"8341:67:47"},{"AST":{"nativeSrc":"8423:38:47","nodeType":"YulBlock","src":"8423:38:47","statements":[{"nativeSrc":"8431:24:47","nodeType":"YulAssignment","src":"8431:24:47","value":{"name":"_genericArray","nativeSrc":"8442:13:47","nodeType":"YulIdentifier","src":"8442:13:47"},"variableNames":[{"name":"_output","nativeSrc":"8431:7:47","nodeType":"YulIdentifier","src":"8431:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22114,"isOffset":false,"isSlot":false,"src":"8442:13:47","valueSize":1},{"declaration":22108,"isOffset":false,"isSlot":false,"src":"8431:7:47","valueSize":1}],"id":22122,"nodeType":"InlineAssembly","src":"8414:47:47"}]},"documentation":{"id":22101,"nodeType":"StructuredDocumentation","src":"7996:244:47","text":" @notice Decodes a slice into an array of uint136.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint136."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint136","nameLocation":"8252:19:47","parameters":{"id":22105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22104,"mutability":"mutable","name":"_input","nameLocation":"8278:6:47","nodeType":"VariableDeclaration","scope":22124,"src":"8272:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22103,"nodeType":"UserDefinedTypeName","pathNode":{"id":22102,"name":"Slice","nameLocations":["8272:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"8272:5:47"},"referencedDeclaration":10067,"src":"8272:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"8271:14:47"},"returnParameters":{"id":22109,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22108,"mutability":"mutable","name":"_output","nameLocation":"8326:7:47","nodeType":"VariableDeclaration","scope":22124,"src":"8309:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint136_$dyn_memory_ptr","typeString":"uint136[]"},"typeName":{"baseType":{"id":22106,"name":"uint136","nodeType":"ElementaryTypeName","src":"8309:7:47","typeDescriptions":{"typeIdentifier":"t_uint136","typeString":"uint136"}},"id":22107,"nodeType":"ArrayTypeName","src":"8309:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint136_$dyn_storage_ptr","typeString":"uint136[]"}},"visibility":"internal"}],"src":"8308:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22148,"nodeType":"FunctionDefinition","src":"8716:222:47","nodes":[],"body":{"id":22147,"nodeType":"Block","src":"8808:130:47","nodes":[],"statements":[{"assignments":[22138],"declarations":[{"constant":false,"id":22138,"mutability":"mutable","name":"_genericArray","nameLocation":"8831:13:47","nodeType":"VariableDeclaration","scope":22147,"src":"8814:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22136,"name":"bytes32","nodeType":"ElementaryTypeName","src":"8814:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22137,"nodeType":"ArrayTypeName","src":"8814:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22145,"initialValue":{"arguments":[{"id":22141,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22128,"src":"8865:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3138","id":22142,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8873:2:47","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},{"hexValue":"313132","id":22143,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"8877:3:47","typeDescriptions":{"typeIdentifier":"t_rational_112_by_1","typeString":"int_const 112"},"value":"112"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},{"typeIdentifier":"t_rational_112_by_1","typeString":"int_const 112"}],"expression":{"id":22139,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"8847:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22140,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"8858:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"8847:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22144,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"8847:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"8814:67:47"},{"AST":{"nativeSrc":"8896:38:47","nodeType":"YulBlock","src":"8896:38:47","statements":[{"nativeSrc":"8904:24:47","nodeType":"YulAssignment","src":"8904:24:47","value":{"name":"_genericArray","nativeSrc":"8915:13:47","nodeType":"YulIdentifier","src":"8915:13:47"},"variableNames":[{"name":"_output","nativeSrc":"8904:7:47","nodeType":"YulIdentifier","src":"8904:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22138,"isOffset":false,"isSlot":false,"src":"8915:13:47","valueSize":1},{"declaration":22132,"isOffset":false,"isSlot":false,"src":"8904:7:47","valueSize":1}],"id":22146,"nodeType":"InlineAssembly","src":"8887:47:47"}]},"documentation":{"id":22125,"nodeType":"StructuredDocumentation","src":"8469:244:47","text":" @notice Decodes a slice into an array of uint144.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint144."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint144","nameLocation":"8725:19:47","parameters":{"id":22129,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22128,"mutability":"mutable","name":"_input","nameLocation":"8751:6:47","nodeType":"VariableDeclaration","scope":22148,"src":"8745:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22127,"nodeType":"UserDefinedTypeName","pathNode":{"id":22126,"name":"Slice","nameLocations":["8745:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"8745:5:47"},"referencedDeclaration":10067,"src":"8745:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"8744:14:47"},"returnParameters":{"id":22133,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22132,"mutability":"mutable","name":"_output","nameLocation":"8799:7:47","nodeType":"VariableDeclaration","scope":22148,"src":"8782:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint144_$dyn_memory_ptr","typeString":"uint144[]"},"typeName":{"baseType":{"id":22130,"name":"uint144","nodeType":"ElementaryTypeName","src":"8782:7:47","typeDescriptions":{"typeIdentifier":"t_uint144","typeString":"uint144"}},"id":22131,"nodeType":"ArrayTypeName","src":"8782:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint144_$dyn_storage_ptr","typeString":"uint144[]"}},"visibility":"internal"}],"src":"8781:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22172,"nodeType":"FunctionDefinition","src":"9189:222:47","nodes":[],"body":{"id":22171,"nodeType":"Block","src":"9281:130:47","nodes":[],"statements":[{"assignments":[22162],"declarations":[{"constant":false,"id":22162,"mutability":"mutable","name":"_genericArray","nameLocation":"9304:13:47","nodeType":"VariableDeclaration","scope":22171,"src":"9287:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22160,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9287:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22161,"nodeType":"ArrayTypeName","src":"9287:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22169,"initialValue":{"arguments":[{"id":22165,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22152,"src":"9338:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3139","id":22166,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9346:2:47","typeDescriptions":{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},"value":"19"},{"hexValue":"313034","id":22167,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9350:3:47","typeDescriptions":{"typeIdentifier":"t_rational_104_by_1","typeString":"int_const 104"},"value":"104"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},{"typeIdentifier":"t_rational_104_by_1","typeString":"int_const 104"}],"expression":{"id":22163,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"9320:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22164,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9331:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"9320:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22168,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9320:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"9287:67:47"},{"AST":{"nativeSrc":"9369:38:47","nodeType":"YulBlock","src":"9369:38:47","statements":[{"nativeSrc":"9377:24:47","nodeType":"YulAssignment","src":"9377:24:47","value":{"name":"_genericArray","nativeSrc":"9388:13:47","nodeType":"YulIdentifier","src":"9388:13:47"},"variableNames":[{"name":"_output","nativeSrc":"9377:7:47","nodeType":"YulIdentifier","src":"9377:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22162,"isOffset":false,"isSlot":false,"src":"9388:13:47","valueSize":1},{"declaration":22156,"isOffset":false,"isSlot":false,"src":"9377:7:47","valueSize":1}],"id":22170,"nodeType":"InlineAssembly","src":"9360:47:47"}]},"documentation":{"id":22149,"nodeType":"StructuredDocumentation","src":"8942:244:47","text":" @notice Decodes a slice into an array of uint152.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint152."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint152","nameLocation":"9198:19:47","parameters":{"id":22153,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22152,"mutability":"mutable","name":"_input","nameLocation":"9224:6:47","nodeType":"VariableDeclaration","scope":22172,"src":"9218:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22151,"nodeType":"UserDefinedTypeName","pathNode":{"id":22150,"name":"Slice","nameLocations":["9218:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"9218:5:47"},"referencedDeclaration":10067,"src":"9218:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"9217:14:47"},"returnParameters":{"id":22157,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22156,"mutability":"mutable","name":"_output","nameLocation":"9272:7:47","nodeType":"VariableDeclaration","scope":22172,"src":"9255:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint152_$dyn_memory_ptr","typeString":"uint152[]"},"typeName":{"baseType":{"id":22154,"name":"uint152","nodeType":"ElementaryTypeName","src":"9255:7:47","typeDescriptions":{"typeIdentifier":"t_uint152","typeString":"uint152"}},"id":22155,"nodeType":"ArrayTypeName","src":"9255:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint152_$dyn_storage_ptr","typeString":"uint152[]"}},"visibility":"internal"}],"src":"9254:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22196,"nodeType":"FunctionDefinition","src":"9662:221:47","nodes":[],"body":{"id":22195,"nodeType":"Block","src":"9754:129:47","nodes":[],"statements":[{"assignments":[22186],"declarations":[{"constant":false,"id":22186,"mutability":"mutable","name":"_genericArray","nameLocation":"9777:13:47","nodeType":"VariableDeclaration","scope":22195,"src":"9760:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22184,"name":"bytes32","nodeType":"ElementaryTypeName","src":"9760:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22185,"nodeType":"ArrayTypeName","src":"9760:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22193,"initialValue":{"arguments":[{"id":22189,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22176,"src":"9811:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3230","id":22190,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9819:2:47","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},{"hexValue":"3936","id":22191,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"9823:2:47","typeDescriptions":{"typeIdentifier":"t_rational_96_by_1","typeString":"int_const 96"},"value":"96"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},{"typeIdentifier":"t_rational_96_by_1","typeString":"int_const 96"}],"expression":{"id":22187,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"9793:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22188,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"9804:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"9793:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22192,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"9793:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"9760:66:47"},{"AST":{"nativeSrc":"9841:38:47","nodeType":"YulBlock","src":"9841:38:47","statements":[{"nativeSrc":"9849:24:47","nodeType":"YulAssignment","src":"9849:24:47","value":{"name":"_genericArray","nativeSrc":"9860:13:47","nodeType":"YulIdentifier","src":"9860:13:47"},"variableNames":[{"name":"_output","nativeSrc":"9849:7:47","nodeType":"YulIdentifier","src":"9849:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22186,"isOffset":false,"isSlot":false,"src":"9860:13:47","valueSize":1},{"declaration":22180,"isOffset":false,"isSlot":false,"src":"9849:7:47","valueSize":1}],"id":22194,"nodeType":"InlineAssembly","src":"9832:47:47"}]},"documentation":{"id":22173,"nodeType":"StructuredDocumentation","src":"9415:244:47","text":" @notice Decodes a slice into an array of uint160.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint160."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint160","nameLocation":"9671:19:47","parameters":{"id":22177,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22176,"mutability":"mutable","name":"_input","nameLocation":"9697:6:47","nodeType":"VariableDeclaration","scope":22196,"src":"9691:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22175,"nodeType":"UserDefinedTypeName","pathNode":{"id":22174,"name":"Slice","nameLocations":["9691:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"9691:5:47"},"referencedDeclaration":10067,"src":"9691:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"9690:14:47"},"returnParameters":{"id":22181,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22180,"mutability":"mutable","name":"_output","nameLocation":"9745:7:47","nodeType":"VariableDeclaration","scope":22196,"src":"9728:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint160_$dyn_memory_ptr","typeString":"uint160[]"},"typeName":{"baseType":{"id":22178,"name":"uint160","nodeType":"ElementaryTypeName","src":"9728:7:47","typeDescriptions":{"typeIdentifier":"t_uint160","typeString":"uint160"}},"id":22179,"nodeType":"ArrayTypeName","src":"9728:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint160_$dyn_storage_ptr","typeString":"uint160[]"}},"visibility":"internal"}],"src":"9727:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22220,"nodeType":"FunctionDefinition","src":"10134:221:47","nodes":[],"body":{"id":22219,"nodeType":"Block","src":"10226:129:47","nodes":[],"statements":[{"assignments":[22210],"declarations":[{"constant":false,"id":22210,"mutability":"mutable","name":"_genericArray","nameLocation":"10249:13:47","nodeType":"VariableDeclaration","scope":22219,"src":"10232:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22208,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10232:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22209,"nodeType":"ArrayTypeName","src":"10232:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22217,"initialValue":{"arguments":[{"id":22213,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22200,"src":"10283:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3231","id":22214,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10291:2:47","typeDescriptions":{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},"value":"21"},{"hexValue":"3838","id":22215,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10295:2:47","typeDescriptions":{"typeIdentifier":"t_rational_88_by_1","typeString":"int_const 88"},"value":"88"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},{"typeIdentifier":"t_rational_88_by_1","typeString":"int_const 88"}],"expression":{"id":22211,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"10265:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22212,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10276:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"10265:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22216,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10265:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"10232:66:47"},{"AST":{"nativeSrc":"10313:38:47","nodeType":"YulBlock","src":"10313:38:47","statements":[{"nativeSrc":"10321:24:47","nodeType":"YulAssignment","src":"10321:24:47","value":{"name":"_genericArray","nativeSrc":"10332:13:47","nodeType":"YulIdentifier","src":"10332:13:47"},"variableNames":[{"name":"_output","nativeSrc":"10321:7:47","nodeType":"YulIdentifier","src":"10321:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22210,"isOffset":false,"isSlot":false,"src":"10332:13:47","valueSize":1},{"declaration":22204,"isOffset":false,"isSlot":false,"src":"10321:7:47","valueSize":1}],"id":22218,"nodeType":"InlineAssembly","src":"10304:47:47"}]},"documentation":{"id":22197,"nodeType":"StructuredDocumentation","src":"9887:244:47","text":" @notice Decodes a slice into an array of uint168.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint168."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint168","nameLocation":"10143:19:47","parameters":{"id":22201,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22200,"mutability":"mutable","name":"_input","nameLocation":"10169:6:47","nodeType":"VariableDeclaration","scope":22220,"src":"10163:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22199,"nodeType":"UserDefinedTypeName","pathNode":{"id":22198,"name":"Slice","nameLocations":["10163:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"10163:5:47"},"referencedDeclaration":10067,"src":"10163:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"10162:14:47"},"returnParameters":{"id":22205,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22204,"mutability":"mutable","name":"_output","nameLocation":"10217:7:47","nodeType":"VariableDeclaration","scope":22220,"src":"10200:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint168_$dyn_memory_ptr","typeString":"uint168[]"},"typeName":{"baseType":{"id":22202,"name":"uint168","nodeType":"ElementaryTypeName","src":"10200:7:47","typeDescriptions":{"typeIdentifier":"t_uint168","typeString":"uint168"}},"id":22203,"nodeType":"ArrayTypeName","src":"10200:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint168_$dyn_storage_ptr","typeString":"uint168[]"}},"visibility":"internal"}],"src":"10199:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22244,"nodeType":"FunctionDefinition","src":"10606:221:47","nodes":[],"body":{"id":22243,"nodeType":"Block","src":"10698:129:47","nodes":[],"statements":[{"assignments":[22234],"declarations":[{"constant":false,"id":22234,"mutability":"mutable","name":"_genericArray","nameLocation":"10721:13:47","nodeType":"VariableDeclaration","scope":22243,"src":"10704:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22232,"name":"bytes32","nodeType":"ElementaryTypeName","src":"10704:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22233,"nodeType":"ArrayTypeName","src":"10704:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22241,"initialValue":{"arguments":[{"id":22237,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22224,"src":"10755:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3232","id":22238,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10763:2:47","typeDescriptions":{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},"value":"22"},{"hexValue":"3830","id":22239,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"10767:2:47","typeDescriptions":{"typeIdentifier":"t_rational_80_by_1","typeString":"int_const 80"},"value":"80"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},{"typeIdentifier":"t_rational_80_by_1","typeString":"int_const 80"}],"expression":{"id":22235,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"10737:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22236,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"10748:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"10737:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22240,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"10737:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"10704:66:47"},{"AST":{"nativeSrc":"10785:38:47","nodeType":"YulBlock","src":"10785:38:47","statements":[{"nativeSrc":"10793:24:47","nodeType":"YulAssignment","src":"10793:24:47","value":{"name":"_genericArray","nativeSrc":"10804:13:47","nodeType":"YulIdentifier","src":"10804:13:47"},"variableNames":[{"name":"_output","nativeSrc":"10793:7:47","nodeType":"YulIdentifier","src":"10793:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22234,"isOffset":false,"isSlot":false,"src":"10804:13:47","valueSize":1},{"declaration":22228,"isOffset":false,"isSlot":false,"src":"10793:7:47","valueSize":1}],"id":22242,"nodeType":"InlineAssembly","src":"10776:47:47"}]},"documentation":{"id":22221,"nodeType":"StructuredDocumentation","src":"10359:244:47","text":" @notice Decodes a slice into an array of uint176.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint176."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint176","nameLocation":"10615:19:47","parameters":{"id":22225,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22224,"mutability":"mutable","name":"_input","nameLocation":"10641:6:47","nodeType":"VariableDeclaration","scope":22244,"src":"10635:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22223,"nodeType":"UserDefinedTypeName","pathNode":{"id":22222,"name":"Slice","nameLocations":["10635:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"10635:5:47"},"referencedDeclaration":10067,"src":"10635:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"10634:14:47"},"returnParameters":{"id":22229,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22228,"mutability":"mutable","name":"_output","nameLocation":"10689:7:47","nodeType":"VariableDeclaration","scope":22244,"src":"10672:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint176_$dyn_memory_ptr","typeString":"uint176[]"},"typeName":{"baseType":{"id":22226,"name":"uint176","nodeType":"ElementaryTypeName","src":"10672:7:47","typeDescriptions":{"typeIdentifier":"t_uint176","typeString":"uint176"}},"id":22227,"nodeType":"ArrayTypeName","src":"10672:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint176_$dyn_storage_ptr","typeString":"uint176[]"}},"visibility":"internal"}],"src":"10671:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22268,"nodeType":"FunctionDefinition","src":"11078:221:47","nodes":[],"body":{"id":22267,"nodeType":"Block","src":"11170:129:47","nodes":[],"statements":[{"assignments":[22258],"declarations":[{"constant":false,"id":22258,"mutability":"mutable","name":"_genericArray","nameLocation":"11193:13:47","nodeType":"VariableDeclaration","scope":22267,"src":"11176:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22256,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11176:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22257,"nodeType":"ArrayTypeName","src":"11176:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22265,"initialValue":{"arguments":[{"id":22261,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22248,"src":"11227:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3233","id":22262,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11235:2:47","typeDescriptions":{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},"value":"23"},{"hexValue":"3732","id":22263,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11239:2:47","typeDescriptions":{"typeIdentifier":"t_rational_72_by_1","typeString":"int_const 72"},"value":"72"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},{"typeIdentifier":"t_rational_72_by_1","typeString":"int_const 72"}],"expression":{"id":22259,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"11209:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22260,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11220:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"11209:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22264,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11209:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11176:66:47"},{"AST":{"nativeSrc":"11257:38:47","nodeType":"YulBlock","src":"11257:38:47","statements":[{"nativeSrc":"11265:24:47","nodeType":"YulAssignment","src":"11265:24:47","value":{"name":"_genericArray","nativeSrc":"11276:13:47","nodeType":"YulIdentifier","src":"11276:13:47"},"variableNames":[{"name":"_output","nativeSrc":"11265:7:47","nodeType":"YulIdentifier","src":"11265:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22258,"isOffset":false,"isSlot":false,"src":"11276:13:47","valueSize":1},{"declaration":22252,"isOffset":false,"isSlot":false,"src":"11265:7:47","valueSize":1}],"id":22266,"nodeType":"InlineAssembly","src":"11248:47:47"}]},"documentation":{"id":22245,"nodeType":"StructuredDocumentation","src":"10831:244:47","text":" @notice Decodes a slice into an array of uint184.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint184."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint184","nameLocation":"11087:19:47","parameters":{"id":22249,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22248,"mutability":"mutable","name":"_input","nameLocation":"11113:6:47","nodeType":"VariableDeclaration","scope":22268,"src":"11107:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22247,"nodeType":"UserDefinedTypeName","pathNode":{"id":22246,"name":"Slice","nameLocations":["11107:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"11107:5:47"},"referencedDeclaration":10067,"src":"11107:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"11106:14:47"},"returnParameters":{"id":22253,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22252,"mutability":"mutable","name":"_output","nameLocation":"11161:7:47","nodeType":"VariableDeclaration","scope":22268,"src":"11144:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint184_$dyn_memory_ptr","typeString":"uint184[]"},"typeName":{"baseType":{"id":22250,"name":"uint184","nodeType":"ElementaryTypeName","src":"11144:7:47","typeDescriptions":{"typeIdentifier":"t_uint184","typeString":"uint184"}},"id":22251,"nodeType":"ArrayTypeName","src":"11144:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint184_$dyn_storage_ptr","typeString":"uint184[]"}},"visibility":"internal"}],"src":"11143:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22292,"nodeType":"FunctionDefinition","src":"11550:221:47","nodes":[],"body":{"id":22291,"nodeType":"Block","src":"11642:129:47","nodes":[],"statements":[{"assignments":[22282],"declarations":[{"constant":false,"id":22282,"mutability":"mutable","name":"_genericArray","nameLocation":"11665:13:47","nodeType":"VariableDeclaration","scope":22291,"src":"11648:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22280,"name":"bytes32","nodeType":"ElementaryTypeName","src":"11648:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22281,"nodeType":"ArrayTypeName","src":"11648:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22289,"initialValue":{"arguments":[{"id":22285,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22272,"src":"11699:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3234","id":22286,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11707:2:47","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},{"hexValue":"3634","id":22287,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"11711:2:47","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"}],"expression":{"id":22283,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"11681:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22284,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"11692:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"11681:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22288,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"11681:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"11648:66:47"},{"AST":{"nativeSrc":"11729:38:47","nodeType":"YulBlock","src":"11729:38:47","statements":[{"nativeSrc":"11737:24:47","nodeType":"YulAssignment","src":"11737:24:47","value":{"name":"_genericArray","nativeSrc":"11748:13:47","nodeType":"YulIdentifier","src":"11748:13:47"},"variableNames":[{"name":"_output","nativeSrc":"11737:7:47","nodeType":"YulIdentifier","src":"11737:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22282,"isOffset":false,"isSlot":false,"src":"11748:13:47","valueSize":1},{"declaration":22276,"isOffset":false,"isSlot":false,"src":"11737:7:47","valueSize":1}],"id":22290,"nodeType":"InlineAssembly","src":"11720:47:47"}]},"documentation":{"id":22269,"nodeType":"StructuredDocumentation","src":"11303:244:47","text":" @notice Decodes a slice into an array of uint192.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint192."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint192","nameLocation":"11559:19:47","parameters":{"id":22273,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22272,"mutability":"mutable","name":"_input","nameLocation":"11585:6:47","nodeType":"VariableDeclaration","scope":22292,"src":"11579:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22271,"nodeType":"UserDefinedTypeName","pathNode":{"id":22270,"name":"Slice","nameLocations":["11579:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"11579:5:47"},"referencedDeclaration":10067,"src":"11579:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"11578:14:47"},"returnParameters":{"id":22277,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22276,"mutability":"mutable","name":"_output","nameLocation":"11633:7:47","nodeType":"VariableDeclaration","scope":22292,"src":"11616:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint192_$dyn_memory_ptr","typeString":"uint192[]"},"typeName":{"baseType":{"id":22274,"name":"uint192","nodeType":"ElementaryTypeName","src":"11616:7:47","typeDescriptions":{"typeIdentifier":"t_uint192","typeString":"uint192"}},"id":22275,"nodeType":"ArrayTypeName","src":"11616:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint192_$dyn_storage_ptr","typeString":"uint192[]"}},"visibility":"internal"}],"src":"11615:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22316,"nodeType":"FunctionDefinition","src":"12022:221:47","nodes":[],"body":{"id":22315,"nodeType":"Block","src":"12114:129:47","nodes":[],"statements":[{"assignments":[22306],"declarations":[{"constant":false,"id":22306,"mutability":"mutable","name":"_genericArray","nameLocation":"12137:13:47","nodeType":"VariableDeclaration","scope":22315,"src":"12120:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22304,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12120:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22305,"nodeType":"ArrayTypeName","src":"12120:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22313,"initialValue":{"arguments":[{"id":22309,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22296,"src":"12171:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3235","id":22310,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12179:2:47","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},{"hexValue":"3536","id":22311,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12183:2:47","typeDescriptions":{"typeIdentifier":"t_rational_56_by_1","typeString":"int_const 56"},"value":"56"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},{"typeIdentifier":"t_rational_56_by_1","typeString":"int_const 56"}],"expression":{"id":22307,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"12153:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22308,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12164:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"12153:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22312,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12153:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"12120:66:47"},{"AST":{"nativeSrc":"12201:38:47","nodeType":"YulBlock","src":"12201:38:47","statements":[{"nativeSrc":"12209:24:47","nodeType":"YulAssignment","src":"12209:24:47","value":{"name":"_genericArray","nativeSrc":"12220:13:47","nodeType":"YulIdentifier","src":"12220:13:47"},"variableNames":[{"name":"_output","nativeSrc":"12209:7:47","nodeType":"YulIdentifier","src":"12209:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22306,"isOffset":false,"isSlot":false,"src":"12220:13:47","valueSize":1},{"declaration":22300,"isOffset":false,"isSlot":false,"src":"12209:7:47","valueSize":1}],"id":22314,"nodeType":"InlineAssembly","src":"12192:47:47"}]},"documentation":{"id":22293,"nodeType":"StructuredDocumentation","src":"11775:244:47","text":" @notice Decodes a slice into an array of uint200.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint200."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint200","nameLocation":"12031:19:47","parameters":{"id":22297,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22296,"mutability":"mutable","name":"_input","nameLocation":"12057:6:47","nodeType":"VariableDeclaration","scope":22316,"src":"12051:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22295,"nodeType":"UserDefinedTypeName","pathNode":{"id":22294,"name":"Slice","nameLocations":["12051:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"12051:5:47"},"referencedDeclaration":10067,"src":"12051:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"12050:14:47"},"returnParameters":{"id":22301,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22300,"mutability":"mutable","name":"_output","nameLocation":"12105:7:47","nodeType":"VariableDeclaration","scope":22316,"src":"12088:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint200_$dyn_memory_ptr","typeString":"uint200[]"},"typeName":{"baseType":{"id":22298,"name":"uint200","nodeType":"ElementaryTypeName","src":"12088:7:47","typeDescriptions":{"typeIdentifier":"t_uint200","typeString":"uint200"}},"id":22299,"nodeType":"ArrayTypeName","src":"12088:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint200_$dyn_storage_ptr","typeString":"uint200[]"}},"visibility":"internal"}],"src":"12087:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22340,"nodeType":"FunctionDefinition","src":"12494:221:47","nodes":[],"body":{"id":22339,"nodeType":"Block","src":"12586:129:47","nodes":[],"statements":[{"assignments":[22330],"declarations":[{"constant":false,"id":22330,"mutability":"mutable","name":"_genericArray","nameLocation":"12609:13:47","nodeType":"VariableDeclaration","scope":22339,"src":"12592:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22328,"name":"bytes32","nodeType":"ElementaryTypeName","src":"12592:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22329,"nodeType":"ArrayTypeName","src":"12592:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22337,"initialValue":{"arguments":[{"id":22333,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22320,"src":"12643:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3236","id":22334,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12651:2:47","typeDescriptions":{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},"value":"26"},{"hexValue":"3438","id":22335,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"12655:2:47","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"}],"expression":{"id":22331,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"12625:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22332,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"12636:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"12625:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22336,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"12625:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"12592:66:47"},{"AST":{"nativeSrc":"12673:38:47","nodeType":"YulBlock","src":"12673:38:47","statements":[{"nativeSrc":"12681:24:47","nodeType":"YulAssignment","src":"12681:24:47","value":{"name":"_genericArray","nativeSrc":"12692:13:47","nodeType":"YulIdentifier","src":"12692:13:47"},"variableNames":[{"name":"_output","nativeSrc":"12681:7:47","nodeType":"YulIdentifier","src":"12681:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22330,"isOffset":false,"isSlot":false,"src":"12692:13:47","valueSize":1},{"declaration":22324,"isOffset":false,"isSlot":false,"src":"12681:7:47","valueSize":1}],"id":22338,"nodeType":"InlineAssembly","src":"12664:47:47"}]},"documentation":{"id":22317,"nodeType":"StructuredDocumentation","src":"12247:244:47","text":" @notice Decodes a slice into an array of uint208.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint208."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint208","nameLocation":"12503:19:47","parameters":{"id":22321,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22320,"mutability":"mutable","name":"_input","nameLocation":"12529:6:47","nodeType":"VariableDeclaration","scope":22340,"src":"12523:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22319,"nodeType":"UserDefinedTypeName","pathNode":{"id":22318,"name":"Slice","nameLocations":["12523:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"12523:5:47"},"referencedDeclaration":10067,"src":"12523:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"12522:14:47"},"returnParameters":{"id":22325,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22324,"mutability":"mutable","name":"_output","nameLocation":"12577:7:47","nodeType":"VariableDeclaration","scope":22340,"src":"12560:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint208_$dyn_memory_ptr","typeString":"uint208[]"},"typeName":{"baseType":{"id":22322,"name":"uint208","nodeType":"ElementaryTypeName","src":"12560:7:47","typeDescriptions":{"typeIdentifier":"t_uint208","typeString":"uint208"}},"id":22323,"nodeType":"ArrayTypeName","src":"12560:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint208_$dyn_storage_ptr","typeString":"uint208[]"}},"visibility":"internal"}],"src":"12559:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22364,"nodeType":"FunctionDefinition","src":"12966:221:47","nodes":[],"body":{"id":22363,"nodeType":"Block","src":"13058:129:47","nodes":[],"statements":[{"assignments":[22354],"declarations":[{"constant":false,"id":22354,"mutability":"mutable","name":"_genericArray","nameLocation":"13081:13:47","nodeType":"VariableDeclaration","scope":22363,"src":"13064:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22352,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13064:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22353,"nodeType":"ArrayTypeName","src":"13064:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22361,"initialValue":{"arguments":[{"id":22357,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22344,"src":"13115:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3237","id":22358,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13123:2:47","typeDescriptions":{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},"value":"27"},{"hexValue":"3430","id":22359,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13127:2:47","typeDescriptions":{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"},"value":"40"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"}],"expression":{"id":22355,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"13097:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22356,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13108:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"13097:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22360,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13097:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"13064:66:47"},{"AST":{"nativeSrc":"13145:38:47","nodeType":"YulBlock","src":"13145:38:47","statements":[{"nativeSrc":"13153:24:47","nodeType":"YulAssignment","src":"13153:24:47","value":{"name":"_genericArray","nativeSrc":"13164:13:47","nodeType":"YulIdentifier","src":"13164:13:47"},"variableNames":[{"name":"_output","nativeSrc":"13153:7:47","nodeType":"YulIdentifier","src":"13153:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22354,"isOffset":false,"isSlot":false,"src":"13164:13:47","valueSize":1},{"declaration":22348,"isOffset":false,"isSlot":false,"src":"13153:7:47","valueSize":1}],"id":22362,"nodeType":"InlineAssembly","src":"13136:47:47"}]},"documentation":{"id":22341,"nodeType":"StructuredDocumentation","src":"12719:244:47","text":" @notice Decodes a slice into an array of uint216.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint216."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint216","nameLocation":"12975:19:47","parameters":{"id":22345,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22344,"mutability":"mutable","name":"_input","nameLocation":"13001:6:47","nodeType":"VariableDeclaration","scope":22364,"src":"12995:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22343,"nodeType":"UserDefinedTypeName","pathNode":{"id":22342,"name":"Slice","nameLocations":["12995:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"12995:5:47"},"referencedDeclaration":10067,"src":"12995:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"12994:14:47"},"returnParameters":{"id":22349,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22348,"mutability":"mutable","name":"_output","nameLocation":"13049:7:47","nodeType":"VariableDeclaration","scope":22364,"src":"13032:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint216_$dyn_memory_ptr","typeString":"uint216[]"},"typeName":{"baseType":{"id":22346,"name":"uint216","nodeType":"ElementaryTypeName","src":"13032:7:47","typeDescriptions":{"typeIdentifier":"t_uint216","typeString":"uint216"}},"id":22347,"nodeType":"ArrayTypeName","src":"13032:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint216_$dyn_storage_ptr","typeString":"uint216[]"}},"visibility":"internal"}],"src":"13031:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22388,"nodeType":"FunctionDefinition","src":"13438:221:47","nodes":[],"body":{"id":22387,"nodeType":"Block","src":"13530:129:47","nodes":[],"statements":[{"assignments":[22378],"declarations":[{"constant":false,"id":22378,"mutability":"mutable","name":"_genericArray","nameLocation":"13553:13:47","nodeType":"VariableDeclaration","scope":22387,"src":"13536:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22376,"name":"bytes32","nodeType":"ElementaryTypeName","src":"13536:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22377,"nodeType":"ArrayTypeName","src":"13536:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22385,"initialValue":{"arguments":[{"id":22381,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22368,"src":"13587:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3238","id":22382,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13595:2:47","typeDescriptions":{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},"value":"28"},{"hexValue":"3332","id":22383,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"13599:2:47","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"}],"expression":{"id":22379,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"13569:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22380,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"13580:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"13569:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22384,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"13569:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"13536:66:47"},{"AST":{"nativeSrc":"13617:38:47","nodeType":"YulBlock","src":"13617:38:47","statements":[{"nativeSrc":"13625:24:47","nodeType":"YulAssignment","src":"13625:24:47","value":{"name":"_genericArray","nativeSrc":"13636:13:47","nodeType":"YulIdentifier","src":"13636:13:47"},"variableNames":[{"name":"_output","nativeSrc":"13625:7:47","nodeType":"YulIdentifier","src":"13625:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22378,"isOffset":false,"isSlot":false,"src":"13636:13:47","valueSize":1},{"declaration":22372,"isOffset":false,"isSlot":false,"src":"13625:7:47","valueSize":1}],"id":22386,"nodeType":"InlineAssembly","src":"13608:47:47"}]},"documentation":{"id":22365,"nodeType":"StructuredDocumentation","src":"13191:244:47","text":" @notice Decodes a slice into an array of uint224.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint224."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint224","nameLocation":"13447:19:47","parameters":{"id":22369,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22368,"mutability":"mutable","name":"_input","nameLocation":"13473:6:47","nodeType":"VariableDeclaration","scope":22388,"src":"13467:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22367,"nodeType":"UserDefinedTypeName","pathNode":{"id":22366,"name":"Slice","nameLocations":["13467:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"13467:5:47"},"referencedDeclaration":10067,"src":"13467:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"13466:14:47"},"returnParameters":{"id":22373,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22372,"mutability":"mutable","name":"_output","nameLocation":"13521:7:47","nodeType":"VariableDeclaration","scope":22388,"src":"13504:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint224_$dyn_memory_ptr","typeString":"uint224[]"},"typeName":{"baseType":{"id":22370,"name":"uint224","nodeType":"ElementaryTypeName","src":"13504:7:47","typeDescriptions":{"typeIdentifier":"t_uint224","typeString":"uint224"}},"id":22371,"nodeType":"ArrayTypeName","src":"13504:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint224_$dyn_storage_ptr","typeString":"uint224[]"}},"visibility":"internal"}],"src":"13503:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22412,"nodeType":"FunctionDefinition","src":"13910:221:47","nodes":[],"body":{"id":22411,"nodeType":"Block","src":"14002:129:47","nodes":[],"statements":[{"assignments":[22402],"declarations":[{"constant":false,"id":22402,"mutability":"mutable","name":"_genericArray","nameLocation":"14025:13:47","nodeType":"VariableDeclaration","scope":22411,"src":"14008:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22400,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14008:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22401,"nodeType":"ArrayTypeName","src":"14008:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22409,"initialValue":{"arguments":[{"id":22405,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22392,"src":"14059:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3239","id":22406,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14067:2:47","typeDescriptions":{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},"value":"29"},{"hexValue":"3234","id":22407,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14071:2:47","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"}],"expression":{"id":22403,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"14041:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22404,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14052:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"14041:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22408,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14041:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"14008:66:47"},{"AST":{"nativeSrc":"14089:38:47","nodeType":"YulBlock","src":"14089:38:47","statements":[{"nativeSrc":"14097:24:47","nodeType":"YulAssignment","src":"14097:24:47","value":{"name":"_genericArray","nativeSrc":"14108:13:47","nodeType":"YulIdentifier","src":"14108:13:47"},"variableNames":[{"name":"_output","nativeSrc":"14097:7:47","nodeType":"YulIdentifier","src":"14097:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22402,"isOffset":false,"isSlot":false,"src":"14108:13:47","valueSize":1},{"declaration":22396,"isOffset":false,"isSlot":false,"src":"14097:7:47","valueSize":1}],"id":22410,"nodeType":"InlineAssembly","src":"14080:47:47"}]},"documentation":{"id":22389,"nodeType":"StructuredDocumentation","src":"13663:244:47","text":" @notice Decodes a slice into an array of uint232.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint232."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint232","nameLocation":"13919:19:47","parameters":{"id":22393,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22392,"mutability":"mutable","name":"_input","nameLocation":"13945:6:47","nodeType":"VariableDeclaration","scope":22412,"src":"13939:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22391,"nodeType":"UserDefinedTypeName","pathNode":{"id":22390,"name":"Slice","nameLocations":["13939:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"13939:5:47"},"referencedDeclaration":10067,"src":"13939:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"13938:14:47"},"returnParameters":{"id":22397,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22396,"mutability":"mutable","name":"_output","nameLocation":"13993:7:47","nodeType":"VariableDeclaration","scope":22412,"src":"13976:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint232_$dyn_memory_ptr","typeString":"uint232[]"},"typeName":{"baseType":{"id":22394,"name":"uint232","nodeType":"ElementaryTypeName","src":"13976:7:47","typeDescriptions":{"typeIdentifier":"t_uint232","typeString":"uint232"}},"id":22395,"nodeType":"ArrayTypeName","src":"13976:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint232_$dyn_storage_ptr","typeString":"uint232[]"}},"visibility":"internal"}],"src":"13975:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22436,"nodeType":"FunctionDefinition","src":"14382:221:47","nodes":[],"body":{"id":22435,"nodeType":"Block","src":"14474:129:47","nodes":[],"statements":[{"assignments":[22426],"declarations":[{"constant":false,"id":22426,"mutability":"mutable","name":"_genericArray","nameLocation":"14497:13:47","nodeType":"VariableDeclaration","scope":22435,"src":"14480:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22424,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14480:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22425,"nodeType":"ArrayTypeName","src":"14480:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22433,"initialValue":{"arguments":[{"id":22429,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22416,"src":"14531:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3330","id":22430,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14539:2:47","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},{"hexValue":"3136","id":22431,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"14543:2:47","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"}],"expression":{"id":22427,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"14513:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22428,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14524:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"14513:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22432,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14513:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"14480:66:47"},{"AST":{"nativeSrc":"14561:38:47","nodeType":"YulBlock","src":"14561:38:47","statements":[{"nativeSrc":"14569:24:47","nodeType":"YulAssignment","src":"14569:24:47","value":{"name":"_genericArray","nativeSrc":"14580:13:47","nodeType":"YulIdentifier","src":"14580:13:47"},"variableNames":[{"name":"_output","nativeSrc":"14569:7:47","nodeType":"YulIdentifier","src":"14569:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22426,"isOffset":false,"isSlot":false,"src":"14580:13:47","valueSize":1},{"declaration":22420,"isOffset":false,"isSlot":false,"src":"14569:7:47","valueSize":1}],"id":22434,"nodeType":"InlineAssembly","src":"14552:47:47"}]},"documentation":{"id":22413,"nodeType":"StructuredDocumentation","src":"14135:244:47","text":" @notice Decodes a slice into an array of uint240.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint240."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint240","nameLocation":"14391:19:47","parameters":{"id":22417,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22416,"mutability":"mutable","name":"_input","nameLocation":"14417:6:47","nodeType":"VariableDeclaration","scope":22436,"src":"14411:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22415,"nodeType":"UserDefinedTypeName","pathNode":{"id":22414,"name":"Slice","nameLocations":["14411:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"14411:5:47"},"referencedDeclaration":10067,"src":"14411:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"14410:14:47"},"returnParameters":{"id":22421,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22420,"mutability":"mutable","name":"_output","nameLocation":"14465:7:47","nodeType":"VariableDeclaration","scope":22436,"src":"14448:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint240_$dyn_memory_ptr","typeString":"uint240[]"},"typeName":{"baseType":{"id":22418,"name":"uint240","nodeType":"ElementaryTypeName","src":"14448:7:47","typeDescriptions":{"typeIdentifier":"t_uint240","typeString":"uint240"}},"id":22419,"nodeType":"ArrayTypeName","src":"14448:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint240_$dyn_storage_ptr","typeString":"uint240[]"}},"visibility":"internal"}],"src":"14447:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22460,"nodeType":"FunctionDefinition","src":"14854:220:47","nodes":[],"body":{"id":22459,"nodeType":"Block","src":"14946:128:47","nodes":[],"statements":[{"assignments":[22450],"declarations":[{"constant":false,"id":22450,"mutability":"mutable","name":"_genericArray","nameLocation":"14969:13:47","nodeType":"VariableDeclaration","scope":22459,"src":"14952:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22448,"name":"bytes32","nodeType":"ElementaryTypeName","src":"14952:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22449,"nodeType":"ArrayTypeName","src":"14952:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22457,"initialValue":{"arguments":[{"id":22453,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22440,"src":"15003:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3331","id":22454,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15011:2:47","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},{"hexValue":"38","id":22455,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15015:1:47","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"}],"expression":{"id":22451,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"14985:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22452,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"14996:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"14985:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22456,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"14985:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"14952:65:47"},{"AST":{"nativeSrc":"15032:38:47","nodeType":"YulBlock","src":"15032:38:47","statements":[{"nativeSrc":"15040:24:47","nodeType":"YulAssignment","src":"15040:24:47","value":{"name":"_genericArray","nativeSrc":"15051:13:47","nodeType":"YulIdentifier","src":"15051:13:47"},"variableNames":[{"name":"_output","nativeSrc":"15040:7:47","nodeType":"YulIdentifier","src":"15040:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22450,"isOffset":false,"isSlot":false,"src":"15051:13:47","valueSize":1},{"declaration":22444,"isOffset":false,"isSlot":false,"src":"15040:7:47","valueSize":1}],"id":22458,"nodeType":"InlineAssembly","src":"15023:47:47"}]},"documentation":{"id":22437,"nodeType":"StructuredDocumentation","src":"14607:244:47","text":" @notice Decodes a slice into an array of uint248.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint248."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint248","nameLocation":"14863:19:47","parameters":{"id":22441,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22440,"mutability":"mutable","name":"_input","nameLocation":"14889:6:47","nodeType":"VariableDeclaration","scope":22460,"src":"14883:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22439,"nodeType":"UserDefinedTypeName","pathNode":{"id":22438,"name":"Slice","nameLocations":["14883:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"14883:5:47"},"referencedDeclaration":10067,"src":"14883:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"14882:14:47"},"returnParameters":{"id":22445,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22444,"mutability":"mutable","name":"_output","nameLocation":"14937:7:47","nodeType":"VariableDeclaration","scope":22460,"src":"14920:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint248_$dyn_memory_ptr","typeString":"uint248[]"},"typeName":{"baseType":{"id":22442,"name":"uint248","nodeType":"ElementaryTypeName","src":"14920:7:47","typeDescriptions":{"typeIdentifier":"t_uint248","typeString":"uint248"}},"id":22443,"nodeType":"ArrayTypeName","src":"14920:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint248_$dyn_storage_ptr","typeString":"uint248[]"}},"visibility":"internal"}],"src":"14919:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22484,"nodeType":"FunctionDefinition","src":"15325:220:47","nodes":[],"body":{"id":22483,"nodeType":"Block","src":"15417:128:47","nodes":[],"statements":[{"assignments":[22474],"declarations":[{"constant":false,"id":22474,"mutability":"mutable","name":"_genericArray","nameLocation":"15440:13:47","nodeType":"VariableDeclaration","scope":22483,"src":"15423:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22472,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15423:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22473,"nodeType":"ArrayTypeName","src":"15423:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22481,"initialValue":{"arguments":[{"id":22477,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22464,"src":"15474:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3332","id":22478,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15482:2:47","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},{"hexValue":"30","id":22479,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15486:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":22475,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"15456:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22476,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15467:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"15456:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22480,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15456:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"15423:65:47"},{"AST":{"nativeSrc":"15503:38:47","nodeType":"YulBlock","src":"15503:38:47","statements":[{"nativeSrc":"15511:24:47","nodeType":"YulAssignment","src":"15511:24:47","value":{"name":"_genericArray","nativeSrc":"15522:13:47","nodeType":"YulIdentifier","src":"15522:13:47"},"variableNames":[{"name":"_output","nativeSrc":"15511:7:47","nodeType":"YulIdentifier","src":"15511:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22474,"isOffset":false,"isSlot":false,"src":"15522:13:47","valueSize":1},{"declaration":22468,"isOffset":false,"isSlot":false,"src":"15511:7:47","valueSize":1}],"id":22482,"nodeType":"InlineAssembly","src":"15494:47:47"}]},"documentation":{"id":22461,"nodeType":"StructuredDocumentation","src":"15078:244:47","text":" @notice Decodes a slice into an array of uint256.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of uint256."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_uint256","nameLocation":"15334:19:47","parameters":{"id":22465,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22464,"mutability":"mutable","name":"_input","nameLocation":"15360:6:47","nodeType":"VariableDeclaration","scope":22484,"src":"15354:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22463,"nodeType":"UserDefinedTypeName","pathNode":{"id":22462,"name":"Slice","nameLocations":["15354:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"15354:5:47"},"referencedDeclaration":10067,"src":"15354:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"15353:14:47"},"returnParameters":{"id":22469,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22468,"mutability":"mutable","name":"_output","nameLocation":"15408:7:47","nodeType":"VariableDeclaration","scope":22484,"src":"15391:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_memory_ptr","typeString":"uint256[]"},"typeName":{"baseType":{"id":22466,"name":"uint256","nodeType":"ElementaryTypeName","src":"15391:7:47","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"id":22467,"nodeType":"ArrayTypeName","src":"15391:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_uint256_$dyn_storage_ptr","typeString":"uint256[]"}},"visibility":"internal"}],"src":"15390:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22508,"nodeType":"FunctionDefinition","src":"15790:215:47","nodes":[],"body":{"id":22507,"nodeType":"Block","src":"15876:129:47","nodes":[],"statements":[{"assignments":[22498],"declarations":[{"constant":false,"id":22498,"mutability":"mutable","name":"_genericArray","nameLocation":"15899:13:47","nodeType":"VariableDeclaration","scope":22507,"src":"15882:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22496,"name":"bytes32","nodeType":"ElementaryTypeName","src":"15882:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22497,"nodeType":"ArrayTypeName","src":"15882:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22505,"initialValue":{"arguments":[{"id":22501,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22488,"src":"15933:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"31","id":22502,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15941:1:47","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"323438","id":22503,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"15944:3:47","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"value":"248"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}],"expression":{"id":22499,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"15915:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22500,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"15926:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"15915:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22504,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"15915:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"15882:66:47"},{"AST":{"nativeSrc":"15963:38:47","nodeType":"YulBlock","src":"15963:38:47","statements":[{"nativeSrc":"15971:24:47","nodeType":"YulAssignment","src":"15971:24:47","value":{"name":"_genericArray","nativeSrc":"15982:13:47","nodeType":"YulIdentifier","src":"15982:13:47"},"variableNames":[{"name":"_output","nativeSrc":"15971:7:47","nodeType":"YulIdentifier","src":"15971:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22498,"isOffset":false,"isSlot":false,"src":"15982:13:47","valueSize":1},{"declaration":22492,"isOffset":false,"isSlot":false,"src":"15971:7:47","valueSize":1}],"id":22506,"nodeType":"InlineAssembly","src":"15954:47:47"}]},"documentation":{"id":22485,"nodeType":"StructuredDocumentation","src":"15549:238:47","text":" @notice Decodes a slice into an array of int8.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int8."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int8","nameLocation":"15799:16:47","parameters":{"id":22489,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22488,"mutability":"mutable","name":"_input","nameLocation":"15822:6:47","nodeType":"VariableDeclaration","scope":22508,"src":"15816:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22487,"nodeType":"UserDefinedTypeName","pathNode":{"id":22486,"name":"Slice","nameLocations":["15816:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"15816:5:47"},"referencedDeclaration":10067,"src":"15816:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"15815:14:47"},"returnParameters":{"id":22493,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22492,"mutability":"mutable","name":"_output","nameLocation":"15867:7:47","nodeType":"VariableDeclaration","scope":22508,"src":"15853:21:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int8_$dyn_memory_ptr","typeString":"int8[]"},"typeName":{"baseType":{"id":22490,"name":"int8","nodeType":"ElementaryTypeName","src":"15853:4:47","typeDescriptions":{"typeIdentifier":"t_int8","typeString":"int8"}},"id":22491,"nodeType":"ArrayTypeName","src":"15853:6:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int8_$dyn_storage_ptr","typeString":"int8[]"}},"visibility":"internal"}],"src":"15852:23:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22532,"nodeType":"FunctionDefinition","src":"16252:217:47","nodes":[],"body":{"id":22531,"nodeType":"Block","src":"16340:129:47","nodes":[],"statements":[{"assignments":[22522],"declarations":[{"constant":false,"id":22522,"mutability":"mutable","name":"_genericArray","nameLocation":"16363:13:47","nodeType":"VariableDeclaration","scope":22531,"src":"16346:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22520,"name":"bytes32","nodeType":"ElementaryTypeName","src":"16346:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22521,"nodeType":"ArrayTypeName","src":"16346:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22529,"initialValue":{"arguments":[{"id":22525,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22512,"src":"16397:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"32","id":22526,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16405:1:47","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"323430","id":22527,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16408:3:47","typeDescriptions":{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"},"value":"240"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_rational_240_by_1","typeString":"int_const 240"}],"expression":{"id":22523,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"16379:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22524,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16390:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"16379:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22528,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16379:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"16346:66:47"},{"AST":{"nativeSrc":"16427:38:47","nodeType":"YulBlock","src":"16427:38:47","statements":[{"nativeSrc":"16435:24:47","nodeType":"YulAssignment","src":"16435:24:47","value":{"name":"_genericArray","nativeSrc":"16446:13:47","nodeType":"YulIdentifier","src":"16446:13:47"},"variableNames":[{"name":"_output","nativeSrc":"16435:7:47","nodeType":"YulIdentifier","src":"16435:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22522,"isOffset":false,"isSlot":false,"src":"16446:13:47","valueSize":1},{"declaration":22516,"isOffset":false,"isSlot":false,"src":"16435:7:47","valueSize":1}],"id":22530,"nodeType":"InlineAssembly","src":"16418:47:47"}]},"documentation":{"id":22509,"nodeType":"StructuredDocumentation","src":"16009:240:47","text":" @notice Decodes a slice into an array of int16.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int16."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int16","nameLocation":"16261:17:47","parameters":{"id":22513,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22512,"mutability":"mutable","name":"_input","nameLocation":"16285:6:47","nodeType":"VariableDeclaration","scope":22532,"src":"16279:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22511,"nodeType":"UserDefinedTypeName","pathNode":{"id":22510,"name":"Slice","nameLocations":["16279:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"16279:5:47"},"referencedDeclaration":10067,"src":"16279:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"16278:14:47"},"returnParameters":{"id":22517,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22516,"mutability":"mutable","name":"_output","nameLocation":"16331:7:47","nodeType":"VariableDeclaration","scope":22532,"src":"16316:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int16_$dyn_memory_ptr","typeString":"int16[]"},"typeName":{"baseType":{"id":22514,"name":"int16","nodeType":"ElementaryTypeName","src":"16316:5:47","typeDescriptions":{"typeIdentifier":"t_int16","typeString":"int16"}},"id":22515,"nodeType":"ArrayTypeName","src":"16316:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int16_$dyn_storage_ptr","typeString":"int16[]"}},"visibility":"internal"}],"src":"16315:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22556,"nodeType":"FunctionDefinition","src":"16716:217:47","nodes":[],"body":{"id":22555,"nodeType":"Block","src":"16804:129:47","nodes":[],"statements":[{"assignments":[22546],"declarations":[{"constant":false,"id":22546,"mutability":"mutable","name":"_genericArray","nameLocation":"16827:13:47","nodeType":"VariableDeclaration","scope":22555,"src":"16810:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22544,"name":"bytes32","nodeType":"ElementaryTypeName","src":"16810:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22545,"nodeType":"ArrayTypeName","src":"16810:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22553,"initialValue":{"arguments":[{"id":22549,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22536,"src":"16861:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"33","id":22550,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16869:1:47","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},{"hexValue":"323332","id":22551,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"16872:3:47","typeDescriptions":{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"},"value":"232"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},{"typeIdentifier":"t_rational_232_by_1","typeString":"int_const 232"}],"expression":{"id":22547,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"16843:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22548,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"16854:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"16843:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22552,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"16843:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"16810:66:47"},{"AST":{"nativeSrc":"16891:38:47","nodeType":"YulBlock","src":"16891:38:47","statements":[{"nativeSrc":"16899:24:47","nodeType":"YulAssignment","src":"16899:24:47","value":{"name":"_genericArray","nativeSrc":"16910:13:47","nodeType":"YulIdentifier","src":"16910:13:47"},"variableNames":[{"name":"_output","nativeSrc":"16899:7:47","nodeType":"YulIdentifier","src":"16899:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22546,"isOffset":false,"isSlot":false,"src":"16910:13:47","valueSize":1},{"declaration":22540,"isOffset":false,"isSlot":false,"src":"16899:7:47","valueSize":1}],"id":22554,"nodeType":"InlineAssembly","src":"16882:47:47"}]},"documentation":{"id":22533,"nodeType":"StructuredDocumentation","src":"16473:240:47","text":" @notice Decodes a slice into an array of int24.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int24."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int24","nameLocation":"16725:17:47","parameters":{"id":22537,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22536,"mutability":"mutable","name":"_input","nameLocation":"16749:6:47","nodeType":"VariableDeclaration","scope":22556,"src":"16743:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22535,"nodeType":"UserDefinedTypeName","pathNode":{"id":22534,"name":"Slice","nameLocations":["16743:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"16743:5:47"},"referencedDeclaration":10067,"src":"16743:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"16742:14:47"},"returnParameters":{"id":22541,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22540,"mutability":"mutable","name":"_output","nameLocation":"16795:7:47","nodeType":"VariableDeclaration","scope":22556,"src":"16780:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int24_$dyn_memory_ptr","typeString":"int24[]"},"typeName":{"baseType":{"id":22538,"name":"int24","nodeType":"ElementaryTypeName","src":"16780:5:47","typeDescriptions":{"typeIdentifier":"t_int24","typeString":"int24"}},"id":22539,"nodeType":"ArrayTypeName","src":"16780:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int24_$dyn_storage_ptr","typeString":"int24[]"}},"visibility":"internal"}],"src":"16779:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22580,"nodeType":"FunctionDefinition","src":"17180:217:47","nodes":[],"body":{"id":22579,"nodeType":"Block","src":"17268:129:47","nodes":[],"statements":[{"assignments":[22570],"declarations":[{"constant":false,"id":22570,"mutability":"mutable","name":"_genericArray","nameLocation":"17291:13:47","nodeType":"VariableDeclaration","scope":22579,"src":"17274:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22568,"name":"bytes32","nodeType":"ElementaryTypeName","src":"17274:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22569,"nodeType":"ArrayTypeName","src":"17274:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22577,"initialValue":{"arguments":[{"id":22573,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22560,"src":"17325:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"34","id":22574,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17333:1:47","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},{"hexValue":"323234","id":22575,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17336:3:47","typeDescriptions":{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"},"value":"224"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},{"typeIdentifier":"t_rational_224_by_1","typeString":"int_const 224"}],"expression":{"id":22571,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"17307:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22572,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17318:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"17307:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22576,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17307:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"17274:66:47"},{"AST":{"nativeSrc":"17355:38:47","nodeType":"YulBlock","src":"17355:38:47","statements":[{"nativeSrc":"17363:24:47","nodeType":"YulAssignment","src":"17363:24:47","value":{"name":"_genericArray","nativeSrc":"17374:13:47","nodeType":"YulIdentifier","src":"17374:13:47"},"variableNames":[{"name":"_output","nativeSrc":"17363:7:47","nodeType":"YulIdentifier","src":"17363:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22570,"isOffset":false,"isSlot":false,"src":"17374:13:47","valueSize":1},{"declaration":22564,"isOffset":false,"isSlot":false,"src":"17363:7:47","valueSize":1}],"id":22578,"nodeType":"InlineAssembly","src":"17346:47:47"}]},"documentation":{"id":22557,"nodeType":"StructuredDocumentation","src":"16937:240:47","text":" @notice Decodes a slice into an array of int32.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int32."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int32","nameLocation":"17189:17:47","parameters":{"id":22561,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22560,"mutability":"mutable","name":"_input","nameLocation":"17213:6:47","nodeType":"VariableDeclaration","scope":22580,"src":"17207:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22559,"nodeType":"UserDefinedTypeName","pathNode":{"id":22558,"name":"Slice","nameLocations":["17207:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"17207:5:47"},"referencedDeclaration":10067,"src":"17207:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"17206:14:47"},"returnParameters":{"id":22565,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22564,"mutability":"mutable","name":"_output","nameLocation":"17259:7:47","nodeType":"VariableDeclaration","scope":22580,"src":"17244:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_memory_ptr","typeString":"int32[]"},"typeName":{"baseType":{"id":22562,"name":"int32","nodeType":"ElementaryTypeName","src":"17244:5:47","typeDescriptions":{"typeIdentifier":"t_int32","typeString":"int32"}},"id":22563,"nodeType":"ArrayTypeName","src":"17244:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int32_$dyn_storage_ptr","typeString":"int32[]"}},"visibility":"internal"}],"src":"17243:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22604,"nodeType":"FunctionDefinition","src":"17644:217:47","nodes":[],"body":{"id":22603,"nodeType":"Block","src":"17732:129:47","nodes":[],"statements":[{"assignments":[22594],"declarations":[{"constant":false,"id":22594,"mutability":"mutable","name":"_genericArray","nameLocation":"17755:13:47","nodeType":"VariableDeclaration","scope":22603,"src":"17738:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22592,"name":"bytes32","nodeType":"ElementaryTypeName","src":"17738:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22593,"nodeType":"ArrayTypeName","src":"17738:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22601,"initialValue":{"arguments":[{"id":22597,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22584,"src":"17789:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"35","id":22598,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17797:1:47","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},{"hexValue":"323136","id":22599,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"17800:3:47","typeDescriptions":{"typeIdentifier":"t_rational_216_by_1","typeString":"int_const 216"},"value":"216"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},{"typeIdentifier":"t_rational_216_by_1","typeString":"int_const 216"}],"expression":{"id":22595,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"17771:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22596,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"17782:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"17771:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22600,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"17771:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"17738:66:47"},{"AST":{"nativeSrc":"17819:38:47","nodeType":"YulBlock","src":"17819:38:47","statements":[{"nativeSrc":"17827:24:47","nodeType":"YulAssignment","src":"17827:24:47","value":{"name":"_genericArray","nativeSrc":"17838:13:47","nodeType":"YulIdentifier","src":"17838:13:47"},"variableNames":[{"name":"_output","nativeSrc":"17827:7:47","nodeType":"YulIdentifier","src":"17827:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22594,"isOffset":false,"isSlot":false,"src":"17838:13:47","valueSize":1},{"declaration":22588,"isOffset":false,"isSlot":false,"src":"17827:7:47","valueSize":1}],"id":22602,"nodeType":"InlineAssembly","src":"17810:47:47"}]},"documentation":{"id":22581,"nodeType":"StructuredDocumentation","src":"17401:240:47","text":" @notice Decodes a slice into an array of int40.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int40."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int40","nameLocation":"17653:17:47","parameters":{"id":22585,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22584,"mutability":"mutable","name":"_input","nameLocation":"17677:6:47","nodeType":"VariableDeclaration","scope":22604,"src":"17671:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22583,"nodeType":"UserDefinedTypeName","pathNode":{"id":22582,"name":"Slice","nameLocations":["17671:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"17671:5:47"},"referencedDeclaration":10067,"src":"17671:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"17670:14:47"},"returnParameters":{"id":22589,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22588,"mutability":"mutable","name":"_output","nameLocation":"17723:7:47","nodeType":"VariableDeclaration","scope":22604,"src":"17708:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int40_$dyn_memory_ptr","typeString":"int40[]"},"typeName":{"baseType":{"id":22586,"name":"int40","nodeType":"ElementaryTypeName","src":"17708:5:47","typeDescriptions":{"typeIdentifier":"t_int40","typeString":"int40"}},"id":22587,"nodeType":"ArrayTypeName","src":"17708:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int40_$dyn_storage_ptr","typeString":"int40[]"}},"visibility":"internal"}],"src":"17707:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22628,"nodeType":"FunctionDefinition","src":"18108:217:47","nodes":[],"body":{"id":22627,"nodeType":"Block","src":"18196:129:47","nodes":[],"statements":[{"assignments":[22618],"declarations":[{"constant":false,"id":22618,"mutability":"mutable","name":"_genericArray","nameLocation":"18219:13:47","nodeType":"VariableDeclaration","scope":22627,"src":"18202:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22616,"name":"bytes32","nodeType":"ElementaryTypeName","src":"18202:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22617,"nodeType":"ArrayTypeName","src":"18202:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22625,"initialValue":{"arguments":[{"id":22621,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22608,"src":"18253:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"36","id":22622,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18261:1:47","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},{"hexValue":"323038","id":22623,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18264:3:47","typeDescriptions":{"typeIdentifier":"t_rational_208_by_1","typeString":"int_const 208"},"value":"208"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},{"typeIdentifier":"t_rational_208_by_1","typeString":"int_const 208"}],"expression":{"id":22619,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"18235:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22620,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18246:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"18235:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22624,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18235:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"18202:66:47"},{"AST":{"nativeSrc":"18283:38:47","nodeType":"YulBlock","src":"18283:38:47","statements":[{"nativeSrc":"18291:24:47","nodeType":"YulAssignment","src":"18291:24:47","value":{"name":"_genericArray","nativeSrc":"18302:13:47","nodeType":"YulIdentifier","src":"18302:13:47"},"variableNames":[{"name":"_output","nativeSrc":"18291:7:47","nodeType":"YulIdentifier","src":"18291:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22618,"isOffset":false,"isSlot":false,"src":"18302:13:47","valueSize":1},{"declaration":22612,"isOffset":false,"isSlot":false,"src":"18291:7:47","valueSize":1}],"id":22626,"nodeType":"InlineAssembly","src":"18274:47:47"}]},"documentation":{"id":22605,"nodeType":"StructuredDocumentation","src":"17865:240:47","text":" @notice Decodes a slice into an array of int48.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int48."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int48","nameLocation":"18117:17:47","parameters":{"id":22609,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22608,"mutability":"mutable","name":"_input","nameLocation":"18141:6:47","nodeType":"VariableDeclaration","scope":22628,"src":"18135:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22607,"nodeType":"UserDefinedTypeName","pathNode":{"id":22606,"name":"Slice","nameLocations":["18135:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"18135:5:47"},"referencedDeclaration":10067,"src":"18135:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"18134:14:47"},"returnParameters":{"id":22613,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22612,"mutability":"mutable","name":"_output","nameLocation":"18187:7:47","nodeType":"VariableDeclaration","scope":22628,"src":"18172:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int48_$dyn_memory_ptr","typeString":"int48[]"},"typeName":{"baseType":{"id":22610,"name":"int48","nodeType":"ElementaryTypeName","src":"18172:5:47","typeDescriptions":{"typeIdentifier":"t_int48","typeString":"int48"}},"id":22611,"nodeType":"ArrayTypeName","src":"18172:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int48_$dyn_storage_ptr","typeString":"int48[]"}},"visibility":"internal"}],"src":"18171:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22652,"nodeType":"FunctionDefinition","src":"18572:217:47","nodes":[],"body":{"id":22651,"nodeType":"Block","src":"18660:129:47","nodes":[],"statements":[{"assignments":[22642],"declarations":[{"constant":false,"id":22642,"mutability":"mutable","name":"_genericArray","nameLocation":"18683:13:47","nodeType":"VariableDeclaration","scope":22651,"src":"18666:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22640,"name":"bytes32","nodeType":"ElementaryTypeName","src":"18666:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22641,"nodeType":"ArrayTypeName","src":"18666:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22649,"initialValue":{"arguments":[{"id":22645,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22632,"src":"18717:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"37","id":22646,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18725:1:47","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},{"hexValue":"323030","id":22647,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"18728:3:47","typeDescriptions":{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"},"value":"200"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},{"typeIdentifier":"t_rational_200_by_1","typeString":"int_const 200"}],"expression":{"id":22643,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"18699:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22644,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"18710:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"18699:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22648,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"18699:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"18666:66:47"},{"AST":{"nativeSrc":"18747:38:47","nodeType":"YulBlock","src":"18747:38:47","statements":[{"nativeSrc":"18755:24:47","nodeType":"YulAssignment","src":"18755:24:47","value":{"name":"_genericArray","nativeSrc":"18766:13:47","nodeType":"YulIdentifier","src":"18766:13:47"},"variableNames":[{"name":"_output","nativeSrc":"18755:7:47","nodeType":"YulIdentifier","src":"18755:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22642,"isOffset":false,"isSlot":false,"src":"18766:13:47","valueSize":1},{"declaration":22636,"isOffset":false,"isSlot":false,"src":"18755:7:47","valueSize":1}],"id":22650,"nodeType":"InlineAssembly","src":"18738:47:47"}]},"documentation":{"id":22629,"nodeType":"StructuredDocumentation","src":"18329:240:47","text":" @notice Decodes a slice into an array of int56.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int56."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int56","nameLocation":"18581:17:47","parameters":{"id":22633,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22632,"mutability":"mutable","name":"_input","nameLocation":"18605:6:47","nodeType":"VariableDeclaration","scope":22652,"src":"18599:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22631,"nodeType":"UserDefinedTypeName","pathNode":{"id":22630,"name":"Slice","nameLocations":["18599:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"18599:5:47"},"referencedDeclaration":10067,"src":"18599:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"18598:14:47"},"returnParameters":{"id":22637,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22636,"mutability":"mutable","name":"_output","nameLocation":"18651:7:47","nodeType":"VariableDeclaration","scope":22652,"src":"18636:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int56_$dyn_memory_ptr","typeString":"int56[]"},"typeName":{"baseType":{"id":22634,"name":"int56","nodeType":"ElementaryTypeName","src":"18636:5:47","typeDescriptions":{"typeIdentifier":"t_int56","typeString":"int56"}},"id":22635,"nodeType":"ArrayTypeName","src":"18636:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int56_$dyn_storage_ptr","typeString":"int56[]"}},"visibility":"internal"}],"src":"18635:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22676,"nodeType":"FunctionDefinition","src":"19036:217:47","nodes":[],"body":{"id":22675,"nodeType":"Block","src":"19124:129:47","nodes":[],"statements":[{"assignments":[22666],"declarations":[{"constant":false,"id":22666,"mutability":"mutable","name":"_genericArray","nameLocation":"19147:13:47","nodeType":"VariableDeclaration","scope":22675,"src":"19130:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22664,"name":"bytes32","nodeType":"ElementaryTypeName","src":"19130:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22665,"nodeType":"ArrayTypeName","src":"19130:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22673,"initialValue":{"arguments":[{"id":22669,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22656,"src":"19181:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"38","id":22670,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19189:1:47","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},{"hexValue":"313932","id":22671,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19192:3:47","typeDescriptions":{"typeIdentifier":"t_rational_192_by_1","typeString":"int_const 192"},"value":"192"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},{"typeIdentifier":"t_rational_192_by_1","typeString":"int_const 192"}],"expression":{"id":22667,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"19163:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22668,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19174:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"19163:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22672,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19163:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"19130:66:47"},{"AST":{"nativeSrc":"19211:38:47","nodeType":"YulBlock","src":"19211:38:47","statements":[{"nativeSrc":"19219:24:47","nodeType":"YulAssignment","src":"19219:24:47","value":{"name":"_genericArray","nativeSrc":"19230:13:47","nodeType":"YulIdentifier","src":"19230:13:47"},"variableNames":[{"name":"_output","nativeSrc":"19219:7:47","nodeType":"YulIdentifier","src":"19219:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22666,"isOffset":false,"isSlot":false,"src":"19230:13:47","valueSize":1},{"declaration":22660,"isOffset":false,"isSlot":false,"src":"19219:7:47","valueSize":1}],"id":22674,"nodeType":"InlineAssembly","src":"19202:47:47"}]},"documentation":{"id":22653,"nodeType":"StructuredDocumentation","src":"18793:240:47","text":" @notice Decodes a slice into an array of int64.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int64."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int64","nameLocation":"19045:17:47","parameters":{"id":22657,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22656,"mutability":"mutable","name":"_input","nameLocation":"19069:6:47","nodeType":"VariableDeclaration","scope":22676,"src":"19063:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22655,"nodeType":"UserDefinedTypeName","pathNode":{"id":22654,"name":"Slice","nameLocations":["19063:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"19063:5:47"},"referencedDeclaration":10067,"src":"19063:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"19062:14:47"},"returnParameters":{"id":22661,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22660,"mutability":"mutable","name":"_output","nameLocation":"19115:7:47","nodeType":"VariableDeclaration","scope":22676,"src":"19100:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int64_$dyn_memory_ptr","typeString":"int64[]"},"typeName":{"baseType":{"id":22658,"name":"int64","nodeType":"ElementaryTypeName","src":"19100:5:47","typeDescriptions":{"typeIdentifier":"t_int64","typeString":"int64"}},"id":22659,"nodeType":"ArrayTypeName","src":"19100:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int64_$dyn_storage_ptr","typeString":"int64[]"}},"visibility":"internal"}],"src":"19099:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22700,"nodeType":"FunctionDefinition","src":"19500:217:47","nodes":[],"body":{"id":22699,"nodeType":"Block","src":"19588:129:47","nodes":[],"statements":[{"assignments":[22690],"declarations":[{"constant":false,"id":22690,"mutability":"mutable","name":"_genericArray","nameLocation":"19611:13:47","nodeType":"VariableDeclaration","scope":22699,"src":"19594:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22688,"name":"bytes32","nodeType":"ElementaryTypeName","src":"19594:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22689,"nodeType":"ArrayTypeName","src":"19594:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22697,"initialValue":{"arguments":[{"id":22693,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22680,"src":"19645:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"39","id":22694,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19653:1:47","typeDescriptions":{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},"value":"9"},{"hexValue":"313834","id":22695,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"19656:3:47","typeDescriptions":{"typeIdentifier":"t_rational_184_by_1","typeString":"int_const 184"},"value":"184"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},{"typeIdentifier":"t_rational_184_by_1","typeString":"int_const 184"}],"expression":{"id":22691,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"19627:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22692,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"19638:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"19627:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22696,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"19627:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"19594:66:47"},{"AST":{"nativeSrc":"19675:38:47","nodeType":"YulBlock","src":"19675:38:47","statements":[{"nativeSrc":"19683:24:47","nodeType":"YulAssignment","src":"19683:24:47","value":{"name":"_genericArray","nativeSrc":"19694:13:47","nodeType":"YulIdentifier","src":"19694:13:47"},"variableNames":[{"name":"_output","nativeSrc":"19683:7:47","nodeType":"YulIdentifier","src":"19683:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22690,"isOffset":false,"isSlot":false,"src":"19694:13:47","valueSize":1},{"declaration":22684,"isOffset":false,"isSlot":false,"src":"19683:7:47","valueSize":1}],"id":22698,"nodeType":"InlineAssembly","src":"19666:47:47"}]},"documentation":{"id":22677,"nodeType":"StructuredDocumentation","src":"19257:240:47","text":" @notice Decodes a slice into an array of int72.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int72."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int72","nameLocation":"19509:17:47","parameters":{"id":22681,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22680,"mutability":"mutable","name":"_input","nameLocation":"19533:6:47","nodeType":"VariableDeclaration","scope":22700,"src":"19527:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22679,"nodeType":"UserDefinedTypeName","pathNode":{"id":22678,"name":"Slice","nameLocations":["19527:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"19527:5:47"},"referencedDeclaration":10067,"src":"19527:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"19526:14:47"},"returnParameters":{"id":22685,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22684,"mutability":"mutable","name":"_output","nameLocation":"19579:7:47","nodeType":"VariableDeclaration","scope":22700,"src":"19564:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int72_$dyn_memory_ptr","typeString":"int72[]"},"typeName":{"baseType":{"id":22682,"name":"int72","nodeType":"ElementaryTypeName","src":"19564:5:47","typeDescriptions":{"typeIdentifier":"t_int72","typeString":"int72"}},"id":22683,"nodeType":"ArrayTypeName","src":"19564:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int72_$dyn_storage_ptr","typeString":"int72[]"}},"visibility":"internal"}],"src":"19563:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22724,"nodeType":"FunctionDefinition","src":"19964:218:47","nodes":[],"body":{"id":22723,"nodeType":"Block","src":"20052:130:47","nodes":[],"statements":[{"assignments":[22714],"declarations":[{"constant":false,"id":22714,"mutability":"mutable","name":"_genericArray","nameLocation":"20075:13:47","nodeType":"VariableDeclaration","scope":22723,"src":"20058:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22712,"name":"bytes32","nodeType":"ElementaryTypeName","src":"20058:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22713,"nodeType":"ArrayTypeName","src":"20058:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22721,"initialValue":{"arguments":[{"id":22717,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22704,"src":"20109:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3130","id":22718,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20117:2:47","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},{"hexValue":"313736","id":22719,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20121:3:47","typeDescriptions":{"typeIdentifier":"t_rational_176_by_1","typeString":"int_const 176"},"value":"176"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},{"typeIdentifier":"t_rational_176_by_1","typeString":"int_const 176"}],"expression":{"id":22715,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"20091:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22716,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20102:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"20091:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22720,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20091:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"20058:67:47"},{"AST":{"nativeSrc":"20140:38:47","nodeType":"YulBlock","src":"20140:38:47","statements":[{"nativeSrc":"20148:24:47","nodeType":"YulAssignment","src":"20148:24:47","value":{"name":"_genericArray","nativeSrc":"20159:13:47","nodeType":"YulIdentifier","src":"20159:13:47"},"variableNames":[{"name":"_output","nativeSrc":"20148:7:47","nodeType":"YulIdentifier","src":"20148:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22714,"isOffset":false,"isSlot":false,"src":"20159:13:47","valueSize":1},{"declaration":22708,"isOffset":false,"isSlot":false,"src":"20148:7:47","valueSize":1}],"id":22722,"nodeType":"InlineAssembly","src":"20131:47:47"}]},"documentation":{"id":22701,"nodeType":"StructuredDocumentation","src":"19721:240:47","text":" @notice Decodes a slice into an array of int80.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int80."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int80","nameLocation":"19973:17:47","parameters":{"id":22705,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22704,"mutability":"mutable","name":"_input","nameLocation":"19997:6:47","nodeType":"VariableDeclaration","scope":22724,"src":"19991:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22703,"nodeType":"UserDefinedTypeName","pathNode":{"id":22702,"name":"Slice","nameLocations":["19991:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"19991:5:47"},"referencedDeclaration":10067,"src":"19991:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"19990:14:47"},"returnParameters":{"id":22709,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22708,"mutability":"mutable","name":"_output","nameLocation":"20043:7:47","nodeType":"VariableDeclaration","scope":22724,"src":"20028:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int80_$dyn_memory_ptr","typeString":"int80[]"},"typeName":{"baseType":{"id":22706,"name":"int80","nodeType":"ElementaryTypeName","src":"20028:5:47","typeDescriptions":{"typeIdentifier":"t_int80","typeString":"int80"}},"id":22707,"nodeType":"ArrayTypeName","src":"20028:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int80_$dyn_storage_ptr","typeString":"int80[]"}},"visibility":"internal"}],"src":"20027:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22748,"nodeType":"FunctionDefinition","src":"20429:218:47","nodes":[],"body":{"id":22747,"nodeType":"Block","src":"20517:130:47","nodes":[],"statements":[{"assignments":[22738],"declarations":[{"constant":false,"id":22738,"mutability":"mutable","name":"_genericArray","nameLocation":"20540:13:47","nodeType":"VariableDeclaration","scope":22747,"src":"20523:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22736,"name":"bytes32","nodeType":"ElementaryTypeName","src":"20523:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22737,"nodeType":"ArrayTypeName","src":"20523:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22745,"initialValue":{"arguments":[{"id":22741,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22728,"src":"20574:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3131","id":22742,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20582:2:47","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},{"hexValue":"313638","id":22743,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"20586:3:47","typeDescriptions":{"typeIdentifier":"t_rational_168_by_1","typeString":"int_const 168"},"value":"168"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},{"typeIdentifier":"t_rational_168_by_1","typeString":"int_const 168"}],"expression":{"id":22739,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"20556:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22740,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"20567:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"20556:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22744,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"20556:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"20523:67:47"},{"AST":{"nativeSrc":"20605:38:47","nodeType":"YulBlock","src":"20605:38:47","statements":[{"nativeSrc":"20613:24:47","nodeType":"YulAssignment","src":"20613:24:47","value":{"name":"_genericArray","nativeSrc":"20624:13:47","nodeType":"YulIdentifier","src":"20624:13:47"},"variableNames":[{"name":"_output","nativeSrc":"20613:7:47","nodeType":"YulIdentifier","src":"20613:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22738,"isOffset":false,"isSlot":false,"src":"20624:13:47","valueSize":1},{"declaration":22732,"isOffset":false,"isSlot":false,"src":"20613:7:47","valueSize":1}],"id":22746,"nodeType":"InlineAssembly","src":"20596:47:47"}]},"documentation":{"id":22725,"nodeType":"StructuredDocumentation","src":"20186:240:47","text":" @notice Decodes a slice into an array of int88.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int88."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int88","nameLocation":"20438:17:47","parameters":{"id":22729,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22728,"mutability":"mutable","name":"_input","nameLocation":"20462:6:47","nodeType":"VariableDeclaration","scope":22748,"src":"20456:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22727,"nodeType":"UserDefinedTypeName","pathNode":{"id":22726,"name":"Slice","nameLocations":["20456:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"20456:5:47"},"referencedDeclaration":10067,"src":"20456:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"20455:14:47"},"returnParameters":{"id":22733,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22732,"mutability":"mutable","name":"_output","nameLocation":"20508:7:47","nodeType":"VariableDeclaration","scope":22748,"src":"20493:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int88_$dyn_memory_ptr","typeString":"int88[]"},"typeName":{"baseType":{"id":22730,"name":"int88","nodeType":"ElementaryTypeName","src":"20493:5:47","typeDescriptions":{"typeIdentifier":"t_int88","typeString":"int88"}},"id":22731,"nodeType":"ArrayTypeName","src":"20493:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int88_$dyn_storage_ptr","typeString":"int88[]"}},"visibility":"internal"}],"src":"20492:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22772,"nodeType":"FunctionDefinition","src":"20894:218:47","nodes":[],"body":{"id":22771,"nodeType":"Block","src":"20982:130:47","nodes":[],"statements":[{"assignments":[22762],"declarations":[{"constant":false,"id":22762,"mutability":"mutable","name":"_genericArray","nameLocation":"21005:13:47","nodeType":"VariableDeclaration","scope":22771,"src":"20988:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22760,"name":"bytes32","nodeType":"ElementaryTypeName","src":"20988:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22761,"nodeType":"ArrayTypeName","src":"20988:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22769,"initialValue":{"arguments":[{"id":22765,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22752,"src":"21039:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3132","id":22766,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21047:2:47","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},{"hexValue":"313630","id":22767,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21051:3:47","typeDescriptions":{"typeIdentifier":"t_rational_160_by_1","typeString":"int_const 160"},"value":"160"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},{"typeIdentifier":"t_rational_160_by_1","typeString":"int_const 160"}],"expression":{"id":22763,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"21021:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22764,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21032:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"21021:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22768,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21021:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"20988:67:47"},{"AST":{"nativeSrc":"21070:38:47","nodeType":"YulBlock","src":"21070:38:47","statements":[{"nativeSrc":"21078:24:47","nodeType":"YulAssignment","src":"21078:24:47","value":{"name":"_genericArray","nativeSrc":"21089:13:47","nodeType":"YulIdentifier","src":"21089:13:47"},"variableNames":[{"name":"_output","nativeSrc":"21078:7:47","nodeType":"YulIdentifier","src":"21078:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22762,"isOffset":false,"isSlot":false,"src":"21089:13:47","valueSize":1},{"declaration":22756,"isOffset":false,"isSlot":false,"src":"21078:7:47","valueSize":1}],"id":22770,"nodeType":"InlineAssembly","src":"21061:47:47"}]},"documentation":{"id":22749,"nodeType":"StructuredDocumentation","src":"20651:240:47","text":" @notice Decodes a slice into an array of int96.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int96."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int96","nameLocation":"20903:17:47","parameters":{"id":22753,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22752,"mutability":"mutable","name":"_input","nameLocation":"20927:6:47","nodeType":"VariableDeclaration","scope":22772,"src":"20921:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22751,"nodeType":"UserDefinedTypeName","pathNode":{"id":22750,"name":"Slice","nameLocations":["20921:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"20921:5:47"},"referencedDeclaration":10067,"src":"20921:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"20920:14:47"},"returnParameters":{"id":22757,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22756,"mutability":"mutable","name":"_output","nameLocation":"20973:7:47","nodeType":"VariableDeclaration","scope":22772,"src":"20958:22:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int96_$dyn_memory_ptr","typeString":"int96[]"},"typeName":{"baseType":{"id":22754,"name":"int96","nodeType":"ElementaryTypeName","src":"20958:5:47","typeDescriptions":{"typeIdentifier":"t_int96","typeString":"int96"}},"id":22755,"nodeType":"ArrayTypeName","src":"20958:7:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int96_$dyn_storage_ptr","typeString":"int96[]"}},"visibility":"internal"}],"src":"20957:24:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22796,"nodeType":"FunctionDefinition","src":"21361:220:47","nodes":[],"body":{"id":22795,"nodeType":"Block","src":"21451:130:47","nodes":[],"statements":[{"assignments":[22786],"declarations":[{"constant":false,"id":22786,"mutability":"mutable","name":"_genericArray","nameLocation":"21474:13:47","nodeType":"VariableDeclaration","scope":22795,"src":"21457:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22784,"name":"bytes32","nodeType":"ElementaryTypeName","src":"21457:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22785,"nodeType":"ArrayTypeName","src":"21457:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22793,"initialValue":{"arguments":[{"id":22789,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22776,"src":"21508:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3133","id":22790,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21516:2:47","typeDescriptions":{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},"value":"13"},{"hexValue":"313532","id":22791,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21520:3:47","typeDescriptions":{"typeIdentifier":"t_rational_152_by_1","typeString":"int_const 152"},"value":"152"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},{"typeIdentifier":"t_rational_152_by_1","typeString":"int_const 152"}],"expression":{"id":22787,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"21490:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22788,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21501:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"21490:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22792,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21490:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"21457:67:47"},{"AST":{"nativeSrc":"21539:38:47","nodeType":"YulBlock","src":"21539:38:47","statements":[{"nativeSrc":"21547:24:47","nodeType":"YulAssignment","src":"21547:24:47","value":{"name":"_genericArray","nativeSrc":"21558:13:47","nodeType":"YulIdentifier","src":"21558:13:47"},"variableNames":[{"name":"_output","nativeSrc":"21547:7:47","nodeType":"YulIdentifier","src":"21547:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22786,"isOffset":false,"isSlot":false,"src":"21558:13:47","valueSize":1},{"declaration":22780,"isOffset":false,"isSlot":false,"src":"21547:7:47","valueSize":1}],"id":22794,"nodeType":"InlineAssembly","src":"21530:47:47"}]},"documentation":{"id":22773,"nodeType":"StructuredDocumentation","src":"21116:242:47","text":" @notice Decodes a slice into an array of int104.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int104."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int104","nameLocation":"21370:18:47","parameters":{"id":22777,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22776,"mutability":"mutable","name":"_input","nameLocation":"21395:6:47","nodeType":"VariableDeclaration","scope":22796,"src":"21389:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22775,"nodeType":"UserDefinedTypeName","pathNode":{"id":22774,"name":"Slice","nameLocations":["21389:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"21389:5:47"},"referencedDeclaration":10067,"src":"21389:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"21388:14:47"},"returnParameters":{"id":22781,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22780,"mutability":"mutable","name":"_output","nameLocation":"21442:7:47","nodeType":"VariableDeclaration","scope":22796,"src":"21426:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int104_$dyn_memory_ptr","typeString":"int104[]"},"typeName":{"baseType":{"id":22778,"name":"int104","nodeType":"ElementaryTypeName","src":"21426:6:47","typeDescriptions":{"typeIdentifier":"t_int104","typeString":"int104"}},"id":22779,"nodeType":"ArrayTypeName","src":"21426:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int104_$dyn_storage_ptr","typeString":"int104[]"}},"visibility":"internal"}],"src":"21425:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22820,"nodeType":"FunctionDefinition","src":"21830:220:47","nodes":[],"body":{"id":22819,"nodeType":"Block","src":"21920:130:47","nodes":[],"statements":[{"assignments":[22810],"declarations":[{"constant":false,"id":22810,"mutability":"mutable","name":"_genericArray","nameLocation":"21943:13:47","nodeType":"VariableDeclaration","scope":22819,"src":"21926:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22808,"name":"bytes32","nodeType":"ElementaryTypeName","src":"21926:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22809,"nodeType":"ArrayTypeName","src":"21926:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22817,"initialValue":{"arguments":[{"id":22813,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22800,"src":"21977:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3134","id":22814,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21985:2:47","typeDescriptions":{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},"value":"14"},{"hexValue":"313434","id":22815,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"21989:3:47","typeDescriptions":{"typeIdentifier":"t_rational_144_by_1","typeString":"int_const 144"},"value":"144"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},{"typeIdentifier":"t_rational_144_by_1","typeString":"int_const 144"}],"expression":{"id":22811,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"21959:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22812,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"21970:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"21959:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22816,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"21959:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"21926:67:47"},{"AST":{"nativeSrc":"22008:38:47","nodeType":"YulBlock","src":"22008:38:47","statements":[{"nativeSrc":"22016:24:47","nodeType":"YulAssignment","src":"22016:24:47","value":{"name":"_genericArray","nativeSrc":"22027:13:47","nodeType":"YulIdentifier","src":"22027:13:47"},"variableNames":[{"name":"_output","nativeSrc":"22016:7:47","nodeType":"YulIdentifier","src":"22016:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22810,"isOffset":false,"isSlot":false,"src":"22027:13:47","valueSize":1},{"declaration":22804,"isOffset":false,"isSlot":false,"src":"22016:7:47","valueSize":1}],"id":22818,"nodeType":"InlineAssembly","src":"21999:47:47"}]},"documentation":{"id":22797,"nodeType":"StructuredDocumentation","src":"21585:242:47","text":" @notice Decodes a slice into an array of int112.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int112."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int112","nameLocation":"21839:18:47","parameters":{"id":22801,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22800,"mutability":"mutable","name":"_input","nameLocation":"21864:6:47","nodeType":"VariableDeclaration","scope":22820,"src":"21858:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22799,"nodeType":"UserDefinedTypeName","pathNode":{"id":22798,"name":"Slice","nameLocations":["21858:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"21858:5:47"},"referencedDeclaration":10067,"src":"21858:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"21857:14:47"},"returnParameters":{"id":22805,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22804,"mutability":"mutable","name":"_output","nameLocation":"21911:7:47","nodeType":"VariableDeclaration","scope":22820,"src":"21895:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int112_$dyn_memory_ptr","typeString":"int112[]"},"typeName":{"baseType":{"id":22802,"name":"int112","nodeType":"ElementaryTypeName","src":"21895:6:47","typeDescriptions":{"typeIdentifier":"t_int112","typeString":"int112"}},"id":22803,"nodeType":"ArrayTypeName","src":"21895:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int112_$dyn_storage_ptr","typeString":"int112[]"}},"visibility":"internal"}],"src":"21894:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22844,"nodeType":"FunctionDefinition","src":"22299:220:47","nodes":[],"body":{"id":22843,"nodeType":"Block","src":"22389:130:47","nodes":[],"statements":[{"assignments":[22834],"declarations":[{"constant":false,"id":22834,"mutability":"mutable","name":"_genericArray","nameLocation":"22412:13:47","nodeType":"VariableDeclaration","scope":22843,"src":"22395:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22832,"name":"bytes32","nodeType":"ElementaryTypeName","src":"22395:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22833,"nodeType":"ArrayTypeName","src":"22395:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22841,"initialValue":{"arguments":[{"id":22837,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22824,"src":"22446:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3135","id":22838,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22454:2:47","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},{"hexValue":"313336","id":22839,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22458:3:47","typeDescriptions":{"typeIdentifier":"t_rational_136_by_1","typeString":"int_const 136"},"value":"136"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},{"typeIdentifier":"t_rational_136_by_1","typeString":"int_const 136"}],"expression":{"id":22835,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"22428:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22836,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22439:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"22428:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22840,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22428:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22395:67:47"},{"AST":{"nativeSrc":"22477:38:47","nodeType":"YulBlock","src":"22477:38:47","statements":[{"nativeSrc":"22485:24:47","nodeType":"YulAssignment","src":"22485:24:47","value":{"name":"_genericArray","nativeSrc":"22496:13:47","nodeType":"YulIdentifier","src":"22496:13:47"},"variableNames":[{"name":"_output","nativeSrc":"22485:7:47","nodeType":"YulIdentifier","src":"22485:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22834,"isOffset":false,"isSlot":false,"src":"22496:13:47","valueSize":1},{"declaration":22828,"isOffset":false,"isSlot":false,"src":"22485:7:47","valueSize":1}],"id":22842,"nodeType":"InlineAssembly","src":"22468:47:47"}]},"documentation":{"id":22821,"nodeType":"StructuredDocumentation","src":"22054:242:47","text":" @notice Decodes a slice into an array of int120.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int120."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int120","nameLocation":"22308:18:47","parameters":{"id":22825,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22824,"mutability":"mutable","name":"_input","nameLocation":"22333:6:47","nodeType":"VariableDeclaration","scope":22844,"src":"22327:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22823,"nodeType":"UserDefinedTypeName","pathNode":{"id":22822,"name":"Slice","nameLocations":["22327:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"22327:5:47"},"referencedDeclaration":10067,"src":"22327:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"22326:14:47"},"returnParameters":{"id":22829,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22828,"mutability":"mutable","name":"_output","nameLocation":"22380:7:47","nodeType":"VariableDeclaration","scope":22844,"src":"22364:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int120_$dyn_memory_ptr","typeString":"int120[]"},"typeName":{"baseType":{"id":22826,"name":"int120","nodeType":"ElementaryTypeName","src":"22364:6:47","typeDescriptions":{"typeIdentifier":"t_int120","typeString":"int120"}},"id":22827,"nodeType":"ArrayTypeName","src":"22364:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int120_$dyn_storage_ptr","typeString":"int120[]"}},"visibility":"internal"}],"src":"22363:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22868,"nodeType":"FunctionDefinition","src":"22768:220:47","nodes":[],"body":{"id":22867,"nodeType":"Block","src":"22858:130:47","nodes":[],"statements":[{"assignments":[22858],"declarations":[{"constant":false,"id":22858,"mutability":"mutable","name":"_genericArray","nameLocation":"22881:13:47","nodeType":"VariableDeclaration","scope":22867,"src":"22864:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22856,"name":"bytes32","nodeType":"ElementaryTypeName","src":"22864:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22857,"nodeType":"ArrayTypeName","src":"22864:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22865,"initialValue":{"arguments":[{"id":22861,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22848,"src":"22915:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3136","id":22862,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22923:2:47","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},{"hexValue":"313238","id":22863,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"22927:3:47","typeDescriptions":{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"},"value":"128"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},{"typeIdentifier":"t_rational_128_by_1","typeString":"int_const 128"}],"expression":{"id":22859,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"22897:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22860,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"22908:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"22897:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22864,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"22897:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"22864:67:47"},{"AST":{"nativeSrc":"22946:38:47","nodeType":"YulBlock","src":"22946:38:47","statements":[{"nativeSrc":"22954:24:47","nodeType":"YulAssignment","src":"22954:24:47","value":{"name":"_genericArray","nativeSrc":"22965:13:47","nodeType":"YulIdentifier","src":"22965:13:47"},"variableNames":[{"name":"_output","nativeSrc":"22954:7:47","nodeType":"YulIdentifier","src":"22954:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22858,"isOffset":false,"isSlot":false,"src":"22965:13:47","valueSize":1},{"declaration":22852,"isOffset":false,"isSlot":false,"src":"22954:7:47","valueSize":1}],"id":22866,"nodeType":"InlineAssembly","src":"22937:47:47"}]},"documentation":{"id":22845,"nodeType":"StructuredDocumentation","src":"22523:242:47","text":" @notice Decodes a slice into an array of int128.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int128."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int128","nameLocation":"22777:18:47","parameters":{"id":22849,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22848,"mutability":"mutable","name":"_input","nameLocation":"22802:6:47","nodeType":"VariableDeclaration","scope":22868,"src":"22796:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22847,"nodeType":"UserDefinedTypeName","pathNode":{"id":22846,"name":"Slice","nameLocations":["22796:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"22796:5:47"},"referencedDeclaration":10067,"src":"22796:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"22795:14:47"},"returnParameters":{"id":22853,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22852,"mutability":"mutable","name":"_output","nameLocation":"22849:7:47","nodeType":"VariableDeclaration","scope":22868,"src":"22833:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_memory_ptr","typeString":"int128[]"},"typeName":{"baseType":{"id":22850,"name":"int128","nodeType":"ElementaryTypeName","src":"22833:6:47","typeDescriptions":{"typeIdentifier":"t_int128","typeString":"int128"}},"id":22851,"nodeType":"ArrayTypeName","src":"22833:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int128_$dyn_storage_ptr","typeString":"int128[]"}},"visibility":"internal"}],"src":"22832:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22892,"nodeType":"FunctionDefinition","src":"23237:220:47","nodes":[],"body":{"id":22891,"nodeType":"Block","src":"23327:130:47","nodes":[],"statements":[{"assignments":[22882],"declarations":[{"constant":false,"id":22882,"mutability":"mutable","name":"_genericArray","nameLocation":"23350:13:47","nodeType":"VariableDeclaration","scope":22891,"src":"23333:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22880,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23333:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22881,"nodeType":"ArrayTypeName","src":"23333:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22889,"initialValue":{"arguments":[{"id":22885,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22872,"src":"23384:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3137","id":22886,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23392:2:47","typeDescriptions":{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},"value":"17"},{"hexValue":"313230","id":22887,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23396:3:47","typeDescriptions":{"typeIdentifier":"t_rational_120_by_1","typeString":"int_const 120"},"value":"120"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},{"typeIdentifier":"t_rational_120_by_1","typeString":"int_const 120"}],"expression":{"id":22883,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"23366:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22884,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23377:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"23366:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22888,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23366:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"23333:67:47"},{"AST":{"nativeSrc":"23415:38:47","nodeType":"YulBlock","src":"23415:38:47","statements":[{"nativeSrc":"23423:24:47","nodeType":"YulAssignment","src":"23423:24:47","value":{"name":"_genericArray","nativeSrc":"23434:13:47","nodeType":"YulIdentifier","src":"23434:13:47"},"variableNames":[{"name":"_output","nativeSrc":"23423:7:47","nodeType":"YulIdentifier","src":"23423:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22882,"isOffset":false,"isSlot":false,"src":"23434:13:47","valueSize":1},{"declaration":22876,"isOffset":false,"isSlot":false,"src":"23423:7:47","valueSize":1}],"id":22890,"nodeType":"InlineAssembly","src":"23406:47:47"}]},"documentation":{"id":22869,"nodeType":"StructuredDocumentation","src":"22992:242:47","text":" @notice Decodes a slice into an array of int136.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int136."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int136","nameLocation":"23246:18:47","parameters":{"id":22873,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22872,"mutability":"mutable","name":"_input","nameLocation":"23271:6:47","nodeType":"VariableDeclaration","scope":22892,"src":"23265:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22871,"nodeType":"UserDefinedTypeName","pathNode":{"id":22870,"name":"Slice","nameLocations":["23265:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"23265:5:47"},"referencedDeclaration":10067,"src":"23265:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"23264:14:47"},"returnParameters":{"id":22877,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22876,"mutability":"mutable","name":"_output","nameLocation":"23318:7:47","nodeType":"VariableDeclaration","scope":22892,"src":"23302:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int136_$dyn_memory_ptr","typeString":"int136[]"},"typeName":{"baseType":{"id":22874,"name":"int136","nodeType":"ElementaryTypeName","src":"23302:6:47","typeDescriptions":{"typeIdentifier":"t_int136","typeString":"int136"}},"id":22875,"nodeType":"ArrayTypeName","src":"23302:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int136_$dyn_storage_ptr","typeString":"int136[]"}},"visibility":"internal"}],"src":"23301:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22916,"nodeType":"FunctionDefinition","src":"23706:220:47","nodes":[],"body":{"id":22915,"nodeType":"Block","src":"23796:130:47","nodes":[],"statements":[{"assignments":[22906],"declarations":[{"constant":false,"id":22906,"mutability":"mutable","name":"_genericArray","nameLocation":"23819:13:47","nodeType":"VariableDeclaration","scope":22915,"src":"23802:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22904,"name":"bytes32","nodeType":"ElementaryTypeName","src":"23802:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22905,"nodeType":"ArrayTypeName","src":"23802:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22913,"initialValue":{"arguments":[{"id":22909,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22896,"src":"23853:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3138","id":22910,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23861:2:47","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},{"hexValue":"313132","id":22911,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"23865:3:47","typeDescriptions":{"typeIdentifier":"t_rational_112_by_1","typeString":"int_const 112"},"value":"112"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},{"typeIdentifier":"t_rational_112_by_1","typeString":"int_const 112"}],"expression":{"id":22907,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"23835:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22908,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"23846:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"23835:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22912,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"23835:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"23802:67:47"},{"AST":{"nativeSrc":"23884:38:47","nodeType":"YulBlock","src":"23884:38:47","statements":[{"nativeSrc":"23892:24:47","nodeType":"YulAssignment","src":"23892:24:47","value":{"name":"_genericArray","nativeSrc":"23903:13:47","nodeType":"YulIdentifier","src":"23903:13:47"},"variableNames":[{"name":"_output","nativeSrc":"23892:7:47","nodeType":"YulIdentifier","src":"23892:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22906,"isOffset":false,"isSlot":false,"src":"23903:13:47","valueSize":1},{"declaration":22900,"isOffset":false,"isSlot":false,"src":"23892:7:47","valueSize":1}],"id":22914,"nodeType":"InlineAssembly","src":"23875:47:47"}]},"documentation":{"id":22893,"nodeType":"StructuredDocumentation","src":"23461:242:47","text":" @notice Decodes a slice into an array of int144.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int144."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int144","nameLocation":"23715:18:47","parameters":{"id":22897,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22896,"mutability":"mutable","name":"_input","nameLocation":"23740:6:47","nodeType":"VariableDeclaration","scope":22916,"src":"23734:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22895,"nodeType":"UserDefinedTypeName","pathNode":{"id":22894,"name":"Slice","nameLocations":["23734:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"23734:5:47"},"referencedDeclaration":10067,"src":"23734:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"23733:14:47"},"returnParameters":{"id":22901,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22900,"mutability":"mutable","name":"_output","nameLocation":"23787:7:47","nodeType":"VariableDeclaration","scope":22916,"src":"23771:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int144_$dyn_memory_ptr","typeString":"int144[]"},"typeName":{"baseType":{"id":22898,"name":"int144","nodeType":"ElementaryTypeName","src":"23771:6:47","typeDescriptions":{"typeIdentifier":"t_int144","typeString":"int144"}},"id":22899,"nodeType":"ArrayTypeName","src":"23771:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int144_$dyn_storage_ptr","typeString":"int144[]"}},"visibility":"internal"}],"src":"23770:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22940,"nodeType":"FunctionDefinition","src":"24175:220:47","nodes":[],"body":{"id":22939,"nodeType":"Block","src":"24265:130:47","nodes":[],"statements":[{"assignments":[22930],"declarations":[{"constant":false,"id":22930,"mutability":"mutable","name":"_genericArray","nameLocation":"24288:13:47","nodeType":"VariableDeclaration","scope":22939,"src":"24271:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22928,"name":"bytes32","nodeType":"ElementaryTypeName","src":"24271:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22929,"nodeType":"ArrayTypeName","src":"24271:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22937,"initialValue":{"arguments":[{"id":22933,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22920,"src":"24322:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3139","id":22934,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24330:2:47","typeDescriptions":{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},"value":"19"},{"hexValue":"313034","id":22935,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24334:3:47","typeDescriptions":{"typeIdentifier":"t_rational_104_by_1","typeString":"int_const 104"},"value":"104"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},{"typeIdentifier":"t_rational_104_by_1","typeString":"int_const 104"}],"expression":{"id":22931,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"24304:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22932,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24315:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"24304:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22936,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24304:34:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"24271:67:47"},{"AST":{"nativeSrc":"24353:38:47","nodeType":"YulBlock","src":"24353:38:47","statements":[{"nativeSrc":"24361:24:47","nodeType":"YulAssignment","src":"24361:24:47","value":{"name":"_genericArray","nativeSrc":"24372:13:47","nodeType":"YulIdentifier","src":"24372:13:47"},"variableNames":[{"name":"_output","nativeSrc":"24361:7:47","nodeType":"YulIdentifier","src":"24361:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22930,"isOffset":false,"isSlot":false,"src":"24372:13:47","valueSize":1},{"declaration":22924,"isOffset":false,"isSlot":false,"src":"24361:7:47","valueSize":1}],"id":22938,"nodeType":"InlineAssembly","src":"24344:47:47"}]},"documentation":{"id":22917,"nodeType":"StructuredDocumentation","src":"23930:242:47","text":" @notice Decodes a slice into an array of int152.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int152."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int152","nameLocation":"24184:18:47","parameters":{"id":22921,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22920,"mutability":"mutable","name":"_input","nameLocation":"24209:6:47","nodeType":"VariableDeclaration","scope":22940,"src":"24203:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22919,"nodeType":"UserDefinedTypeName","pathNode":{"id":22918,"name":"Slice","nameLocations":["24203:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"24203:5:47"},"referencedDeclaration":10067,"src":"24203:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"24202:14:47"},"returnParameters":{"id":22925,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22924,"mutability":"mutable","name":"_output","nameLocation":"24256:7:47","nodeType":"VariableDeclaration","scope":22940,"src":"24240:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int152_$dyn_memory_ptr","typeString":"int152[]"},"typeName":{"baseType":{"id":22922,"name":"int152","nodeType":"ElementaryTypeName","src":"24240:6:47","typeDescriptions":{"typeIdentifier":"t_int152","typeString":"int152"}},"id":22923,"nodeType":"ArrayTypeName","src":"24240:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int152_$dyn_storage_ptr","typeString":"int152[]"}},"visibility":"internal"}],"src":"24239:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22964,"nodeType":"FunctionDefinition","src":"24644:219:47","nodes":[],"body":{"id":22963,"nodeType":"Block","src":"24734:129:47","nodes":[],"statements":[{"assignments":[22954],"declarations":[{"constant":false,"id":22954,"mutability":"mutable","name":"_genericArray","nameLocation":"24757:13:47","nodeType":"VariableDeclaration","scope":22963,"src":"24740:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22952,"name":"bytes32","nodeType":"ElementaryTypeName","src":"24740:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22953,"nodeType":"ArrayTypeName","src":"24740:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22961,"initialValue":{"arguments":[{"id":22957,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22944,"src":"24791:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3230","id":22958,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24799:2:47","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},{"hexValue":"3936","id":22959,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"24803:2:47","typeDescriptions":{"typeIdentifier":"t_rational_96_by_1","typeString":"int_const 96"},"value":"96"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},{"typeIdentifier":"t_rational_96_by_1","typeString":"int_const 96"}],"expression":{"id":22955,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"24773:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22956,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"24784:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"24773:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22960,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"24773:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"24740:66:47"},{"AST":{"nativeSrc":"24821:38:47","nodeType":"YulBlock","src":"24821:38:47","statements":[{"nativeSrc":"24829:24:47","nodeType":"YulAssignment","src":"24829:24:47","value":{"name":"_genericArray","nativeSrc":"24840:13:47","nodeType":"YulIdentifier","src":"24840:13:47"},"variableNames":[{"name":"_output","nativeSrc":"24829:7:47","nodeType":"YulIdentifier","src":"24829:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22954,"isOffset":false,"isSlot":false,"src":"24840:13:47","valueSize":1},{"declaration":22948,"isOffset":false,"isSlot":false,"src":"24829:7:47","valueSize":1}],"id":22962,"nodeType":"InlineAssembly","src":"24812:47:47"}]},"documentation":{"id":22941,"nodeType":"StructuredDocumentation","src":"24399:242:47","text":" @notice Decodes a slice into an array of int160.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int160."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int160","nameLocation":"24653:18:47","parameters":{"id":22945,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22944,"mutability":"mutable","name":"_input","nameLocation":"24678:6:47","nodeType":"VariableDeclaration","scope":22964,"src":"24672:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22943,"nodeType":"UserDefinedTypeName","pathNode":{"id":22942,"name":"Slice","nameLocations":["24672:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"24672:5:47"},"referencedDeclaration":10067,"src":"24672:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"24671:14:47"},"returnParameters":{"id":22949,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22948,"mutability":"mutable","name":"_output","nameLocation":"24725:7:47","nodeType":"VariableDeclaration","scope":22964,"src":"24709:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int160_$dyn_memory_ptr","typeString":"int160[]"},"typeName":{"baseType":{"id":22946,"name":"int160","nodeType":"ElementaryTypeName","src":"24709:6:47","typeDescriptions":{"typeIdentifier":"t_int160","typeString":"int160"}},"id":22947,"nodeType":"ArrayTypeName","src":"24709:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int160_$dyn_storage_ptr","typeString":"int160[]"}},"visibility":"internal"}],"src":"24708:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":22988,"nodeType":"FunctionDefinition","src":"25112:219:47","nodes":[],"body":{"id":22987,"nodeType":"Block","src":"25202:129:47","nodes":[],"statements":[{"assignments":[22978],"declarations":[{"constant":false,"id":22978,"mutability":"mutable","name":"_genericArray","nameLocation":"25225:13:47","nodeType":"VariableDeclaration","scope":22987,"src":"25208:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":22976,"name":"bytes32","nodeType":"ElementaryTypeName","src":"25208:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":22977,"nodeType":"ArrayTypeName","src":"25208:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":22985,"initialValue":{"arguments":[{"id":22981,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22968,"src":"25259:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3231","id":22982,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25267:2:47","typeDescriptions":{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},"value":"21"},{"hexValue":"3838","id":22983,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25271:2:47","typeDescriptions":{"typeIdentifier":"t_rational_88_by_1","typeString":"int_const 88"},"value":"88"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},{"typeIdentifier":"t_rational_88_by_1","typeString":"int_const 88"}],"expression":{"id":22979,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"25241:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":22980,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25252:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"25241:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":22984,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25241:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"25208:66:47"},{"AST":{"nativeSrc":"25289:38:47","nodeType":"YulBlock","src":"25289:38:47","statements":[{"nativeSrc":"25297:24:47","nodeType":"YulAssignment","src":"25297:24:47","value":{"name":"_genericArray","nativeSrc":"25308:13:47","nodeType":"YulIdentifier","src":"25308:13:47"},"variableNames":[{"name":"_output","nativeSrc":"25297:7:47","nodeType":"YulIdentifier","src":"25297:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":22978,"isOffset":false,"isSlot":false,"src":"25308:13:47","valueSize":1},{"declaration":22972,"isOffset":false,"isSlot":false,"src":"25297:7:47","valueSize":1}],"id":22986,"nodeType":"InlineAssembly","src":"25280:47:47"}]},"documentation":{"id":22965,"nodeType":"StructuredDocumentation","src":"24867:242:47","text":" @notice Decodes a slice into an array of int168.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int168."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int168","nameLocation":"25121:18:47","parameters":{"id":22969,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22968,"mutability":"mutable","name":"_input","nameLocation":"25146:6:47","nodeType":"VariableDeclaration","scope":22988,"src":"25140:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22967,"nodeType":"UserDefinedTypeName","pathNode":{"id":22966,"name":"Slice","nameLocations":["25140:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"25140:5:47"},"referencedDeclaration":10067,"src":"25140:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"25139:14:47"},"returnParameters":{"id":22973,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22972,"mutability":"mutable","name":"_output","nameLocation":"25193:7:47","nodeType":"VariableDeclaration","scope":22988,"src":"25177:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int168_$dyn_memory_ptr","typeString":"int168[]"},"typeName":{"baseType":{"id":22970,"name":"int168","nodeType":"ElementaryTypeName","src":"25177:6:47","typeDescriptions":{"typeIdentifier":"t_int168","typeString":"int168"}},"id":22971,"nodeType":"ArrayTypeName","src":"25177:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int168_$dyn_storage_ptr","typeString":"int168[]"}},"visibility":"internal"}],"src":"25176:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23012,"nodeType":"FunctionDefinition","src":"25580:219:47","nodes":[],"body":{"id":23011,"nodeType":"Block","src":"25670:129:47","nodes":[],"statements":[{"assignments":[23002],"declarations":[{"constant":false,"id":23002,"mutability":"mutable","name":"_genericArray","nameLocation":"25693:13:47","nodeType":"VariableDeclaration","scope":23011,"src":"25676:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23000,"name":"bytes32","nodeType":"ElementaryTypeName","src":"25676:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23001,"nodeType":"ArrayTypeName","src":"25676:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23009,"initialValue":{"arguments":[{"id":23005,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":22992,"src":"25727:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3232","id":23006,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25735:2:47","typeDescriptions":{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},"value":"22"},{"hexValue":"3830","id":23007,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"25739:2:47","typeDescriptions":{"typeIdentifier":"t_rational_80_by_1","typeString":"int_const 80"},"value":"80"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},{"typeIdentifier":"t_rational_80_by_1","typeString":"int_const 80"}],"expression":{"id":23003,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"25709:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23004,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"25720:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"25709:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23008,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"25709:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"25676:66:47"},{"AST":{"nativeSrc":"25757:38:47","nodeType":"YulBlock","src":"25757:38:47","statements":[{"nativeSrc":"25765:24:47","nodeType":"YulAssignment","src":"25765:24:47","value":{"name":"_genericArray","nativeSrc":"25776:13:47","nodeType":"YulIdentifier","src":"25776:13:47"},"variableNames":[{"name":"_output","nativeSrc":"25765:7:47","nodeType":"YulIdentifier","src":"25765:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23002,"isOffset":false,"isSlot":false,"src":"25776:13:47","valueSize":1},{"declaration":22996,"isOffset":false,"isSlot":false,"src":"25765:7:47","valueSize":1}],"id":23010,"nodeType":"InlineAssembly","src":"25748:47:47"}]},"documentation":{"id":22989,"nodeType":"StructuredDocumentation","src":"25335:242:47","text":" @notice Decodes a slice into an array of int176.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int176."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int176","nameLocation":"25589:18:47","parameters":{"id":22993,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22992,"mutability":"mutable","name":"_input","nameLocation":"25614:6:47","nodeType":"VariableDeclaration","scope":23012,"src":"25608:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":22991,"nodeType":"UserDefinedTypeName","pathNode":{"id":22990,"name":"Slice","nameLocations":["25608:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"25608:5:47"},"referencedDeclaration":10067,"src":"25608:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"25607:14:47"},"returnParameters":{"id":22997,"nodeType":"ParameterList","parameters":[{"constant":false,"id":22996,"mutability":"mutable","name":"_output","nameLocation":"25661:7:47","nodeType":"VariableDeclaration","scope":23012,"src":"25645:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int176_$dyn_memory_ptr","typeString":"int176[]"},"typeName":{"baseType":{"id":22994,"name":"int176","nodeType":"ElementaryTypeName","src":"25645:6:47","typeDescriptions":{"typeIdentifier":"t_int176","typeString":"int176"}},"id":22995,"nodeType":"ArrayTypeName","src":"25645:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int176_$dyn_storage_ptr","typeString":"int176[]"}},"visibility":"internal"}],"src":"25644:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23036,"nodeType":"FunctionDefinition","src":"26048:219:47","nodes":[],"body":{"id":23035,"nodeType":"Block","src":"26138:129:47","nodes":[],"statements":[{"assignments":[23026],"declarations":[{"constant":false,"id":23026,"mutability":"mutable","name":"_genericArray","nameLocation":"26161:13:47","nodeType":"VariableDeclaration","scope":23035,"src":"26144:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23024,"name":"bytes32","nodeType":"ElementaryTypeName","src":"26144:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23025,"nodeType":"ArrayTypeName","src":"26144:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23033,"initialValue":{"arguments":[{"id":23029,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23016,"src":"26195:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3233","id":23030,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26203:2:47","typeDescriptions":{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},"value":"23"},{"hexValue":"3732","id":23031,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26207:2:47","typeDescriptions":{"typeIdentifier":"t_rational_72_by_1","typeString":"int_const 72"},"value":"72"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},{"typeIdentifier":"t_rational_72_by_1","typeString":"int_const 72"}],"expression":{"id":23027,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"26177:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23028,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26188:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"26177:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23032,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26177:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"26144:66:47"},{"AST":{"nativeSrc":"26225:38:47","nodeType":"YulBlock","src":"26225:38:47","statements":[{"nativeSrc":"26233:24:47","nodeType":"YulAssignment","src":"26233:24:47","value":{"name":"_genericArray","nativeSrc":"26244:13:47","nodeType":"YulIdentifier","src":"26244:13:47"},"variableNames":[{"name":"_output","nativeSrc":"26233:7:47","nodeType":"YulIdentifier","src":"26233:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23026,"isOffset":false,"isSlot":false,"src":"26244:13:47","valueSize":1},{"declaration":23020,"isOffset":false,"isSlot":false,"src":"26233:7:47","valueSize":1}],"id":23034,"nodeType":"InlineAssembly","src":"26216:47:47"}]},"documentation":{"id":23013,"nodeType":"StructuredDocumentation","src":"25803:242:47","text":" @notice Decodes a slice into an array of int184.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int184."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int184","nameLocation":"26057:18:47","parameters":{"id":23017,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23016,"mutability":"mutable","name":"_input","nameLocation":"26082:6:47","nodeType":"VariableDeclaration","scope":23036,"src":"26076:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23015,"nodeType":"UserDefinedTypeName","pathNode":{"id":23014,"name":"Slice","nameLocations":["26076:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"26076:5:47"},"referencedDeclaration":10067,"src":"26076:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"26075:14:47"},"returnParameters":{"id":23021,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23020,"mutability":"mutable","name":"_output","nameLocation":"26129:7:47","nodeType":"VariableDeclaration","scope":23036,"src":"26113:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int184_$dyn_memory_ptr","typeString":"int184[]"},"typeName":{"baseType":{"id":23018,"name":"int184","nodeType":"ElementaryTypeName","src":"26113:6:47","typeDescriptions":{"typeIdentifier":"t_int184","typeString":"int184"}},"id":23019,"nodeType":"ArrayTypeName","src":"26113:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int184_$dyn_storage_ptr","typeString":"int184[]"}},"visibility":"internal"}],"src":"26112:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23060,"nodeType":"FunctionDefinition","src":"26516:219:47","nodes":[],"body":{"id":23059,"nodeType":"Block","src":"26606:129:47","nodes":[],"statements":[{"assignments":[23050],"declarations":[{"constant":false,"id":23050,"mutability":"mutable","name":"_genericArray","nameLocation":"26629:13:47","nodeType":"VariableDeclaration","scope":23059,"src":"26612:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23048,"name":"bytes32","nodeType":"ElementaryTypeName","src":"26612:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23049,"nodeType":"ArrayTypeName","src":"26612:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23057,"initialValue":{"arguments":[{"id":23053,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23040,"src":"26663:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3234","id":23054,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26671:2:47","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},{"hexValue":"3634","id":23055,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"26675:2:47","typeDescriptions":{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"},"value":"64"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},{"typeIdentifier":"t_rational_64_by_1","typeString":"int_const 64"}],"expression":{"id":23051,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"26645:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23052,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"26656:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"26645:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23056,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"26645:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"26612:66:47"},{"AST":{"nativeSrc":"26693:38:47","nodeType":"YulBlock","src":"26693:38:47","statements":[{"nativeSrc":"26701:24:47","nodeType":"YulAssignment","src":"26701:24:47","value":{"name":"_genericArray","nativeSrc":"26712:13:47","nodeType":"YulIdentifier","src":"26712:13:47"},"variableNames":[{"name":"_output","nativeSrc":"26701:7:47","nodeType":"YulIdentifier","src":"26701:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23050,"isOffset":false,"isSlot":false,"src":"26712:13:47","valueSize":1},{"declaration":23044,"isOffset":false,"isSlot":false,"src":"26701:7:47","valueSize":1}],"id":23058,"nodeType":"InlineAssembly","src":"26684:47:47"}]},"documentation":{"id":23037,"nodeType":"StructuredDocumentation","src":"26271:242:47","text":" @notice Decodes a slice into an array of int192.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int192."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int192","nameLocation":"26525:18:47","parameters":{"id":23041,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23040,"mutability":"mutable","name":"_input","nameLocation":"26550:6:47","nodeType":"VariableDeclaration","scope":23060,"src":"26544:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23039,"nodeType":"UserDefinedTypeName","pathNode":{"id":23038,"name":"Slice","nameLocations":["26544:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"26544:5:47"},"referencedDeclaration":10067,"src":"26544:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"26543:14:47"},"returnParameters":{"id":23045,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23044,"mutability":"mutable","name":"_output","nameLocation":"26597:7:47","nodeType":"VariableDeclaration","scope":23060,"src":"26581:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int192_$dyn_memory_ptr","typeString":"int192[]"},"typeName":{"baseType":{"id":23042,"name":"int192","nodeType":"ElementaryTypeName","src":"26581:6:47","typeDescriptions":{"typeIdentifier":"t_int192","typeString":"int192"}},"id":23043,"nodeType":"ArrayTypeName","src":"26581:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int192_$dyn_storage_ptr","typeString":"int192[]"}},"visibility":"internal"}],"src":"26580:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23084,"nodeType":"FunctionDefinition","src":"26984:219:47","nodes":[],"body":{"id":23083,"nodeType":"Block","src":"27074:129:47","nodes":[],"statements":[{"assignments":[23074],"declarations":[{"constant":false,"id":23074,"mutability":"mutable","name":"_genericArray","nameLocation":"27097:13:47","nodeType":"VariableDeclaration","scope":23083,"src":"27080:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23072,"name":"bytes32","nodeType":"ElementaryTypeName","src":"27080:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23073,"nodeType":"ArrayTypeName","src":"27080:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23081,"initialValue":{"arguments":[{"id":23077,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23064,"src":"27131:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3235","id":23078,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27139:2:47","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},{"hexValue":"3536","id":23079,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27143:2:47","typeDescriptions":{"typeIdentifier":"t_rational_56_by_1","typeString":"int_const 56"},"value":"56"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},{"typeIdentifier":"t_rational_56_by_1","typeString":"int_const 56"}],"expression":{"id":23075,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"27113:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23076,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27124:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"27113:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23080,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27113:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"27080:66:47"},{"AST":{"nativeSrc":"27161:38:47","nodeType":"YulBlock","src":"27161:38:47","statements":[{"nativeSrc":"27169:24:47","nodeType":"YulAssignment","src":"27169:24:47","value":{"name":"_genericArray","nativeSrc":"27180:13:47","nodeType":"YulIdentifier","src":"27180:13:47"},"variableNames":[{"name":"_output","nativeSrc":"27169:7:47","nodeType":"YulIdentifier","src":"27169:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23074,"isOffset":false,"isSlot":false,"src":"27180:13:47","valueSize":1},{"declaration":23068,"isOffset":false,"isSlot":false,"src":"27169:7:47","valueSize":1}],"id":23082,"nodeType":"InlineAssembly","src":"27152:47:47"}]},"documentation":{"id":23061,"nodeType":"StructuredDocumentation","src":"26739:242:47","text":" @notice Decodes a slice into an array of int200.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int200."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int200","nameLocation":"26993:18:47","parameters":{"id":23065,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23064,"mutability":"mutable","name":"_input","nameLocation":"27018:6:47","nodeType":"VariableDeclaration","scope":23084,"src":"27012:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23063,"nodeType":"UserDefinedTypeName","pathNode":{"id":23062,"name":"Slice","nameLocations":["27012:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"27012:5:47"},"referencedDeclaration":10067,"src":"27012:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"27011:14:47"},"returnParameters":{"id":23069,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23068,"mutability":"mutable","name":"_output","nameLocation":"27065:7:47","nodeType":"VariableDeclaration","scope":23084,"src":"27049:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int200_$dyn_memory_ptr","typeString":"int200[]"},"typeName":{"baseType":{"id":23066,"name":"int200","nodeType":"ElementaryTypeName","src":"27049:6:47","typeDescriptions":{"typeIdentifier":"t_int200","typeString":"int200"}},"id":23067,"nodeType":"ArrayTypeName","src":"27049:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int200_$dyn_storage_ptr","typeString":"int200[]"}},"visibility":"internal"}],"src":"27048:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23108,"nodeType":"FunctionDefinition","src":"27452:219:47","nodes":[],"body":{"id":23107,"nodeType":"Block","src":"27542:129:47","nodes":[],"statements":[{"assignments":[23098],"declarations":[{"constant":false,"id":23098,"mutability":"mutable","name":"_genericArray","nameLocation":"27565:13:47","nodeType":"VariableDeclaration","scope":23107,"src":"27548:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23096,"name":"bytes32","nodeType":"ElementaryTypeName","src":"27548:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23097,"nodeType":"ArrayTypeName","src":"27548:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23105,"initialValue":{"arguments":[{"id":23101,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23088,"src":"27599:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3236","id":23102,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27607:2:47","typeDescriptions":{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},"value":"26"},{"hexValue":"3438","id":23103,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"27611:2:47","typeDescriptions":{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"},"value":"48"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},{"typeIdentifier":"t_rational_48_by_1","typeString":"int_const 48"}],"expression":{"id":23099,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"27581:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23100,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"27592:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"27581:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23104,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"27581:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"27548:66:47"},{"AST":{"nativeSrc":"27629:38:47","nodeType":"YulBlock","src":"27629:38:47","statements":[{"nativeSrc":"27637:24:47","nodeType":"YulAssignment","src":"27637:24:47","value":{"name":"_genericArray","nativeSrc":"27648:13:47","nodeType":"YulIdentifier","src":"27648:13:47"},"variableNames":[{"name":"_output","nativeSrc":"27637:7:47","nodeType":"YulIdentifier","src":"27637:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23098,"isOffset":false,"isSlot":false,"src":"27648:13:47","valueSize":1},{"declaration":23092,"isOffset":false,"isSlot":false,"src":"27637:7:47","valueSize":1}],"id":23106,"nodeType":"InlineAssembly","src":"27620:47:47"}]},"documentation":{"id":23085,"nodeType":"StructuredDocumentation","src":"27207:242:47","text":" @notice Decodes a slice into an array of int208.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int208."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int208","nameLocation":"27461:18:47","parameters":{"id":23089,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23088,"mutability":"mutable","name":"_input","nameLocation":"27486:6:47","nodeType":"VariableDeclaration","scope":23108,"src":"27480:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23087,"nodeType":"UserDefinedTypeName","pathNode":{"id":23086,"name":"Slice","nameLocations":["27480:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"27480:5:47"},"referencedDeclaration":10067,"src":"27480:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"27479:14:47"},"returnParameters":{"id":23093,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23092,"mutability":"mutable","name":"_output","nameLocation":"27533:7:47","nodeType":"VariableDeclaration","scope":23108,"src":"27517:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int208_$dyn_memory_ptr","typeString":"int208[]"},"typeName":{"baseType":{"id":23090,"name":"int208","nodeType":"ElementaryTypeName","src":"27517:6:47","typeDescriptions":{"typeIdentifier":"t_int208","typeString":"int208"}},"id":23091,"nodeType":"ArrayTypeName","src":"27517:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int208_$dyn_storage_ptr","typeString":"int208[]"}},"visibility":"internal"}],"src":"27516:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23132,"nodeType":"FunctionDefinition","src":"27920:219:47","nodes":[],"body":{"id":23131,"nodeType":"Block","src":"28010:129:47","nodes":[],"statements":[{"assignments":[23122],"declarations":[{"constant":false,"id":23122,"mutability":"mutable","name":"_genericArray","nameLocation":"28033:13:47","nodeType":"VariableDeclaration","scope":23131,"src":"28016:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23120,"name":"bytes32","nodeType":"ElementaryTypeName","src":"28016:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23121,"nodeType":"ArrayTypeName","src":"28016:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23129,"initialValue":{"arguments":[{"id":23125,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23112,"src":"28067:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3237","id":23126,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28075:2:47","typeDescriptions":{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},"value":"27"},{"hexValue":"3430","id":23127,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28079:2:47","typeDescriptions":{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"},"value":"40"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},{"typeIdentifier":"t_rational_40_by_1","typeString":"int_const 40"}],"expression":{"id":23123,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"28049:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23124,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28060:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"28049:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23128,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28049:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"28016:66:47"},{"AST":{"nativeSrc":"28097:38:47","nodeType":"YulBlock","src":"28097:38:47","statements":[{"nativeSrc":"28105:24:47","nodeType":"YulAssignment","src":"28105:24:47","value":{"name":"_genericArray","nativeSrc":"28116:13:47","nodeType":"YulIdentifier","src":"28116:13:47"},"variableNames":[{"name":"_output","nativeSrc":"28105:7:47","nodeType":"YulIdentifier","src":"28105:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23122,"isOffset":false,"isSlot":false,"src":"28116:13:47","valueSize":1},{"declaration":23116,"isOffset":false,"isSlot":false,"src":"28105:7:47","valueSize":1}],"id":23130,"nodeType":"InlineAssembly","src":"28088:47:47"}]},"documentation":{"id":23109,"nodeType":"StructuredDocumentation","src":"27675:242:47","text":" @notice Decodes a slice into an array of int216.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int216."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int216","nameLocation":"27929:18:47","parameters":{"id":23113,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23112,"mutability":"mutable","name":"_input","nameLocation":"27954:6:47","nodeType":"VariableDeclaration","scope":23132,"src":"27948:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23111,"nodeType":"UserDefinedTypeName","pathNode":{"id":23110,"name":"Slice","nameLocations":["27948:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"27948:5:47"},"referencedDeclaration":10067,"src":"27948:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"27947:14:47"},"returnParameters":{"id":23117,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23116,"mutability":"mutable","name":"_output","nameLocation":"28001:7:47","nodeType":"VariableDeclaration","scope":23132,"src":"27985:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int216_$dyn_memory_ptr","typeString":"int216[]"},"typeName":{"baseType":{"id":23114,"name":"int216","nodeType":"ElementaryTypeName","src":"27985:6:47","typeDescriptions":{"typeIdentifier":"t_int216","typeString":"int216"}},"id":23115,"nodeType":"ArrayTypeName","src":"27985:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int216_$dyn_storage_ptr","typeString":"int216[]"}},"visibility":"internal"}],"src":"27984:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23156,"nodeType":"FunctionDefinition","src":"28388:219:47","nodes":[],"body":{"id":23155,"nodeType":"Block","src":"28478:129:47","nodes":[],"statements":[{"assignments":[23146],"declarations":[{"constant":false,"id":23146,"mutability":"mutable","name":"_genericArray","nameLocation":"28501:13:47","nodeType":"VariableDeclaration","scope":23155,"src":"28484:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23144,"name":"bytes32","nodeType":"ElementaryTypeName","src":"28484:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23145,"nodeType":"ArrayTypeName","src":"28484:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23153,"initialValue":{"arguments":[{"id":23149,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23136,"src":"28535:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3238","id":23150,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28543:2:47","typeDescriptions":{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},"value":"28"},{"hexValue":"3332","id":23151,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"28547:2:47","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"}],"expression":{"id":23147,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"28517:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23148,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28528:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"28517:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23152,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28517:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"28484:66:47"},{"AST":{"nativeSrc":"28565:38:47","nodeType":"YulBlock","src":"28565:38:47","statements":[{"nativeSrc":"28573:24:47","nodeType":"YulAssignment","src":"28573:24:47","value":{"name":"_genericArray","nativeSrc":"28584:13:47","nodeType":"YulIdentifier","src":"28584:13:47"},"variableNames":[{"name":"_output","nativeSrc":"28573:7:47","nodeType":"YulIdentifier","src":"28573:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23146,"isOffset":false,"isSlot":false,"src":"28584:13:47","valueSize":1},{"declaration":23140,"isOffset":false,"isSlot":false,"src":"28573:7:47","valueSize":1}],"id":23154,"nodeType":"InlineAssembly","src":"28556:47:47"}]},"documentation":{"id":23133,"nodeType":"StructuredDocumentation","src":"28143:242:47","text":" @notice Decodes a slice into an array of int224.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int224."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int224","nameLocation":"28397:18:47","parameters":{"id":23137,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23136,"mutability":"mutable","name":"_input","nameLocation":"28422:6:47","nodeType":"VariableDeclaration","scope":23156,"src":"28416:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23135,"nodeType":"UserDefinedTypeName","pathNode":{"id":23134,"name":"Slice","nameLocations":["28416:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"28416:5:47"},"referencedDeclaration":10067,"src":"28416:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"28415:14:47"},"returnParameters":{"id":23141,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23140,"mutability":"mutable","name":"_output","nameLocation":"28469:7:47","nodeType":"VariableDeclaration","scope":23156,"src":"28453:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int224_$dyn_memory_ptr","typeString":"int224[]"},"typeName":{"baseType":{"id":23138,"name":"int224","nodeType":"ElementaryTypeName","src":"28453:6:47","typeDescriptions":{"typeIdentifier":"t_int224","typeString":"int224"}},"id":23139,"nodeType":"ArrayTypeName","src":"28453:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int224_$dyn_storage_ptr","typeString":"int224[]"}},"visibility":"internal"}],"src":"28452:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23180,"nodeType":"FunctionDefinition","src":"28856:219:47","nodes":[],"body":{"id":23179,"nodeType":"Block","src":"28946:129:47","nodes":[],"statements":[{"assignments":[23170],"declarations":[{"constant":false,"id":23170,"mutability":"mutable","name":"_genericArray","nameLocation":"28969:13:47","nodeType":"VariableDeclaration","scope":23179,"src":"28952:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23168,"name":"bytes32","nodeType":"ElementaryTypeName","src":"28952:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23169,"nodeType":"ArrayTypeName","src":"28952:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23177,"initialValue":{"arguments":[{"id":23173,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23160,"src":"29003:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3239","id":23174,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29011:2:47","typeDescriptions":{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},"value":"29"},{"hexValue":"3234","id":23175,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29015:2:47","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"}],"expression":{"id":23171,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"28985:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23172,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"28996:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"28985:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23176,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"28985:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"28952:66:47"},{"AST":{"nativeSrc":"29033:38:47","nodeType":"YulBlock","src":"29033:38:47","statements":[{"nativeSrc":"29041:24:47","nodeType":"YulAssignment","src":"29041:24:47","value":{"name":"_genericArray","nativeSrc":"29052:13:47","nodeType":"YulIdentifier","src":"29052:13:47"},"variableNames":[{"name":"_output","nativeSrc":"29041:7:47","nodeType":"YulIdentifier","src":"29041:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23170,"isOffset":false,"isSlot":false,"src":"29052:13:47","valueSize":1},{"declaration":23164,"isOffset":false,"isSlot":false,"src":"29041:7:47","valueSize":1}],"id":23178,"nodeType":"InlineAssembly","src":"29024:47:47"}]},"documentation":{"id":23157,"nodeType":"StructuredDocumentation","src":"28611:242:47","text":" @notice Decodes a slice into an array of int232.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int232."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int232","nameLocation":"28865:18:47","parameters":{"id":23161,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23160,"mutability":"mutable","name":"_input","nameLocation":"28890:6:47","nodeType":"VariableDeclaration","scope":23180,"src":"28884:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23159,"nodeType":"UserDefinedTypeName","pathNode":{"id":23158,"name":"Slice","nameLocations":["28884:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"28884:5:47"},"referencedDeclaration":10067,"src":"28884:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"28883:14:47"},"returnParameters":{"id":23165,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23164,"mutability":"mutable","name":"_output","nameLocation":"28937:7:47","nodeType":"VariableDeclaration","scope":23180,"src":"28921:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int232_$dyn_memory_ptr","typeString":"int232[]"},"typeName":{"baseType":{"id":23162,"name":"int232","nodeType":"ElementaryTypeName","src":"28921:6:47","typeDescriptions":{"typeIdentifier":"t_int232","typeString":"int232"}},"id":23163,"nodeType":"ArrayTypeName","src":"28921:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int232_$dyn_storage_ptr","typeString":"int232[]"}},"visibility":"internal"}],"src":"28920:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23204,"nodeType":"FunctionDefinition","src":"29324:219:47","nodes":[],"body":{"id":23203,"nodeType":"Block","src":"29414:129:47","nodes":[],"statements":[{"assignments":[23194],"declarations":[{"constant":false,"id":23194,"mutability":"mutable","name":"_genericArray","nameLocation":"29437:13:47","nodeType":"VariableDeclaration","scope":23203,"src":"29420:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23192,"name":"bytes32","nodeType":"ElementaryTypeName","src":"29420:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23193,"nodeType":"ArrayTypeName","src":"29420:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23201,"initialValue":{"arguments":[{"id":23197,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23184,"src":"29471:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3330","id":23198,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29479:2:47","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},{"hexValue":"3136","id":23199,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29483:2:47","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"}],"expression":{"id":23195,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"29453:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23196,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29464:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"29453:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23200,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29453:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"29420:66:47"},{"AST":{"nativeSrc":"29501:38:47","nodeType":"YulBlock","src":"29501:38:47","statements":[{"nativeSrc":"29509:24:47","nodeType":"YulAssignment","src":"29509:24:47","value":{"name":"_genericArray","nativeSrc":"29520:13:47","nodeType":"YulIdentifier","src":"29520:13:47"},"variableNames":[{"name":"_output","nativeSrc":"29509:7:47","nodeType":"YulIdentifier","src":"29509:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23194,"isOffset":false,"isSlot":false,"src":"29520:13:47","valueSize":1},{"declaration":23188,"isOffset":false,"isSlot":false,"src":"29509:7:47","valueSize":1}],"id":23202,"nodeType":"InlineAssembly","src":"29492:47:47"}]},"documentation":{"id":23181,"nodeType":"StructuredDocumentation","src":"29079:242:47","text":" @notice Decodes a slice into an array of int240.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int240."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int240","nameLocation":"29333:18:47","parameters":{"id":23185,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23184,"mutability":"mutable","name":"_input","nameLocation":"29358:6:47","nodeType":"VariableDeclaration","scope":23204,"src":"29352:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23183,"nodeType":"UserDefinedTypeName","pathNode":{"id":23182,"name":"Slice","nameLocations":["29352:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"29352:5:47"},"referencedDeclaration":10067,"src":"29352:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"29351:14:47"},"returnParameters":{"id":23189,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23188,"mutability":"mutable","name":"_output","nameLocation":"29405:7:47","nodeType":"VariableDeclaration","scope":23204,"src":"29389:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int240_$dyn_memory_ptr","typeString":"int240[]"},"typeName":{"baseType":{"id":23186,"name":"int240","nodeType":"ElementaryTypeName","src":"29389:6:47","typeDescriptions":{"typeIdentifier":"t_int240","typeString":"int240"}},"id":23187,"nodeType":"ArrayTypeName","src":"29389:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int240_$dyn_storage_ptr","typeString":"int240[]"}},"visibility":"internal"}],"src":"29388:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23228,"nodeType":"FunctionDefinition","src":"29792:218:47","nodes":[],"body":{"id":23227,"nodeType":"Block","src":"29882:128:47","nodes":[],"statements":[{"assignments":[23218],"declarations":[{"constant":false,"id":23218,"mutability":"mutable","name":"_genericArray","nameLocation":"29905:13:47","nodeType":"VariableDeclaration","scope":23227,"src":"29888:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23216,"name":"bytes32","nodeType":"ElementaryTypeName","src":"29888:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23217,"nodeType":"ArrayTypeName","src":"29888:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23225,"initialValue":{"arguments":[{"id":23221,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23208,"src":"29939:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3331","id":23222,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29947:2:47","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},{"hexValue":"38","id":23223,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"29951:1:47","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"}],"expression":{"id":23219,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"29921:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23220,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"29932:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"29921:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23224,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"29921:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"29888:65:47"},{"AST":{"nativeSrc":"29968:38:47","nodeType":"YulBlock","src":"29968:38:47","statements":[{"nativeSrc":"29976:24:47","nodeType":"YulAssignment","src":"29976:24:47","value":{"name":"_genericArray","nativeSrc":"29987:13:47","nodeType":"YulIdentifier","src":"29987:13:47"},"variableNames":[{"name":"_output","nativeSrc":"29976:7:47","nodeType":"YulIdentifier","src":"29976:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23218,"isOffset":false,"isSlot":false,"src":"29987:13:47","valueSize":1},{"declaration":23212,"isOffset":false,"isSlot":false,"src":"29976:7:47","valueSize":1}],"id":23226,"nodeType":"InlineAssembly","src":"29959:47:47"}]},"documentation":{"id":23205,"nodeType":"StructuredDocumentation","src":"29547:242:47","text":" @notice Decodes a slice into an array of int248.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int248."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int248","nameLocation":"29801:18:47","parameters":{"id":23209,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23208,"mutability":"mutable","name":"_input","nameLocation":"29826:6:47","nodeType":"VariableDeclaration","scope":23228,"src":"29820:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23207,"nodeType":"UserDefinedTypeName","pathNode":{"id":23206,"name":"Slice","nameLocations":["29820:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"29820:5:47"},"referencedDeclaration":10067,"src":"29820:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"29819:14:47"},"returnParameters":{"id":23213,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23212,"mutability":"mutable","name":"_output","nameLocation":"29873:7:47","nodeType":"VariableDeclaration","scope":23228,"src":"29857:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int248_$dyn_memory_ptr","typeString":"int248[]"},"typeName":{"baseType":{"id":23210,"name":"int248","nodeType":"ElementaryTypeName","src":"29857:6:47","typeDescriptions":{"typeIdentifier":"t_int248","typeString":"int248"}},"id":23211,"nodeType":"ArrayTypeName","src":"29857:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int248_$dyn_storage_ptr","typeString":"int248[]"}},"visibility":"internal"}],"src":"29856:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23252,"nodeType":"FunctionDefinition","src":"30259:218:47","nodes":[],"body":{"id":23251,"nodeType":"Block","src":"30349:128:47","nodes":[],"statements":[{"assignments":[23242],"declarations":[{"constant":false,"id":23242,"mutability":"mutable","name":"_genericArray","nameLocation":"30372:13:47","nodeType":"VariableDeclaration","scope":23251,"src":"30355:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23240,"name":"bytes32","nodeType":"ElementaryTypeName","src":"30355:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23241,"nodeType":"ArrayTypeName","src":"30355:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23249,"initialValue":{"arguments":[{"id":23245,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23232,"src":"30406:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3332","id":23246,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30414:2:47","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},{"hexValue":"30","id":23247,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30418:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23243,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"30388:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23244,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30399:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"30388:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23248,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30388:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"30355:65:47"},{"AST":{"nativeSrc":"30435:38:47","nodeType":"YulBlock","src":"30435:38:47","statements":[{"nativeSrc":"30443:24:47","nodeType":"YulAssignment","src":"30443:24:47","value":{"name":"_genericArray","nativeSrc":"30454:13:47","nodeType":"YulIdentifier","src":"30454:13:47"},"variableNames":[{"name":"_output","nativeSrc":"30443:7:47","nodeType":"YulIdentifier","src":"30443:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23242,"isOffset":false,"isSlot":false,"src":"30454:13:47","valueSize":1},{"declaration":23236,"isOffset":false,"isSlot":false,"src":"30443:7:47","valueSize":1}],"id":23250,"nodeType":"InlineAssembly","src":"30426:47:47"}]},"documentation":{"id":23229,"nodeType":"StructuredDocumentation","src":"30014:242:47","text":" @notice Decodes a slice into an array of int256.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of int256."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_int256","nameLocation":"30268:18:47","parameters":{"id":23233,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23232,"mutability":"mutable","name":"_input","nameLocation":"30293:6:47","nodeType":"VariableDeclaration","scope":23252,"src":"30287:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23231,"nodeType":"UserDefinedTypeName","pathNode":{"id":23230,"name":"Slice","nameLocations":["30287:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"30287:5:47"},"referencedDeclaration":10067,"src":"30287:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"30286:14:47"},"returnParameters":{"id":23237,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23236,"mutability":"mutable","name":"_output","nameLocation":"30340:7:47","nodeType":"VariableDeclaration","scope":23252,"src":"30324:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_memory_ptr","typeString":"int256[]"},"typeName":{"baseType":{"id":23234,"name":"int256","nodeType":"ElementaryTypeName","src":"30324:6:47","typeDescriptions":{"typeIdentifier":"t_int256","typeString":"int256"}},"id":23235,"nodeType":"ArrayTypeName","src":"30324:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_int256_$dyn_storage_ptr","typeString":"int256[]"}},"visibility":"internal"}],"src":"30323:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23276,"nodeType":"FunctionDefinition","src":"30726:217:47","nodes":[],"body":{"id":23275,"nodeType":"Block","src":"30816:127:47","nodes":[],"statements":[{"assignments":[23266],"declarations":[{"constant":false,"id":23266,"mutability":"mutable","name":"_genericArray","nameLocation":"30839:13:47","nodeType":"VariableDeclaration","scope":23275,"src":"30822:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23264,"name":"bytes32","nodeType":"ElementaryTypeName","src":"30822:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23265,"nodeType":"ArrayTypeName","src":"30822:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23273,"initialValue":{"arguments":[{"id":23269,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23256,"src":"30873:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"31","id":23270,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30881:1:47","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"30","id":23271,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"30884:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23267,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"30855:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23268,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"30866:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"30855:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23272,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"30855:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"30822:64:47"},{"AST":{"nativeSrc":"30901:38:47","nodeType":"YulBlock","src":"30901:38:47","statements":[{"nativeSrc":"30909:24:47","nodeType":"YulAssignment","src":"30909:24:47","value":{"name":"_genericArray","nativeSrc":"30920:13:47","nodeType":"YulIdentifier","src":"30920:13:47"},"variableNames":[{"name":"_output","nativeSrc":"30909:7:47","nodeType":"YulIdentifier","src":"30909:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23266,"isOffset":false,"isSlot":false,"src":"30920:13:47","valueSize":1},{"declaration":23260,"isOffset":false,"isSlot":false,"src":"30909:7:47","valueSize":1}],"id":23274,"nodeType":"InlineAssembly","src":"30892:47:47"}]},"documentation":{"id":23253,"nodeType":"StructuredDocumentation","src":"30481:242:47","text":" @notice Decodes a slice into an array of bytes1.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes1."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes1","nameLocation":"30735:18:47","parameters":{"id":23257,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23256,"mutability":"mutable","name":"_input","nameLocation":"30760:6:47","nodeType":"VariableDeclaration","scope":23276,"src":"30754:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23255,"nodeType":"UserDefinedTypeName","pathNode":{"id":23254,"name":"Slice","nameLocations":["30754:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"30754:5:47"},"referencedDeclaration":10067,"src":"30754:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"30753:14:47"},"returnParameters":{"id":23261,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23260,"mutability":"mutable","name":"_output","nameLocation":"30807:7:47","nodeType":"VariableDeclaration","scope":23276,"src":"30791:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes1_$dyn_memory_ptr","typeString":"bytes1[]"},"typeName":{"baseType":{"id":23258,"name":"bytes1","nodeType":"ElementaryTypeName","src":"30791:6:47","typeDescriptions":{"typeIdentifier":"t_bytes1","typeString":"bytes1"}},"id":23259,"nodeType":"ArrayTypeName","src":"30791:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes1_$dyn_storage_ptr","typeString":"bytes1[]"}},"visibility":"internal"}],"src":"30790:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23300,"nodeType":"FunctionDefinition","src":"31192:217:47","nodes":[],"body":{"id":23299,"nodeType":"Block","src":"31282:127:47","nodes":[],"statements":[{"assignments":[23290],"declarations":[{"constant":false,"id":23290,"mutability":"mutable","name":"_genericArray","nameLocation":"31305:13:47","nodeType":"VariableDeclaration","scope":23299,"src":"31288:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23288,"name":"bytes32","nodeType":"ElementaryTypeName","src":"31288:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23289,"nodeType":"ArrayTypeName","src":"31288:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23297,"initialValue":{"arguments":[{"id":23293,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23280,"src":"31339:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"32","id":23294,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31347:1:47","typeDescriptions":{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},"value":"2"},{"hexValue":"30","id":23295,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31350:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_2_by_1","typeString":"int_const 2"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23291,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"31321:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23292,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"31332:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"31321:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23296,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31321:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"31288:64:47"},{"AST":{"nativeSrc":"31367:38:47","nodeType":"YulBlock","src":"31367:38:47","statements":[{"nativeSrc":"31375:24:47","nodeType":"YulAssignment","src":"31375:24:47","value":{"name":"_genericArray","nativeSrc":"31386:13:47","nodeType":"YulIdentifier","src":"31386:13:47"},"variableNames":[{"name":"_output","nativeSrc":"31375:7:47","nodeType":"YulIdentifier","src":"31375:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23290,"isOffset":false,"isSlot":false,"src":"31386:13:47","valueSize":1},{"declaration":23284,"isOffset":false,"isSlot":false,"src":"31375:7:47","valueSize":1}],"id":23298,"nodeType":"InlineAssembly","src":"31358:47:47"}]},"documentation":{"id":23277,"nodeType":"StructuredDocumentation","src":"30947:242:47","text":" @notice Decodes a slice into an array of bytes2.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes2."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes2","nameLocation":"31201:18:47","parameters":{"id":23281,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23280,"mutability":"mutable","name":"_input","nameLocation":"31226:6:47","nodeType":"VariableDeclaration","scope":23300,"src":"31220:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23279,"nodeType":"UserDefinedTypeName","pathNode":{"id":23278,"name":"Slice","nameLocations":["31220:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"31220:5:47"},"referencedDeclaration":10067,"src":"31220:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"31219:14:47"},"returnParameters":{"id":23285,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23284,"mutability":"mutable","name":"_output","nameLocation":"31273:7:47","nodeType":"VariableDeclaration","scope":23300,"src":"31257:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes2_$dyn_memory_ptr","typeString":"bytes2[]"},"typeName":{"baseType":{"id":23282,"name":"bytes2","nodeType":"ElementaryTypeName","src":"31257:6:47","typeDescriptions":{"typeIdentifier":"t_bytes2","typeString":"bytes2"}},"id":23283,"nodeType":"ArrayTypeName","src":"31257:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes2_$dyn_storage_ptr","typeString":"bytes2[]"}},"visibility":"internal"}],"src":"31256:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23324,"nodeType":"FunctionDefinition","src":"31658:217:47","nodes":[],"body":{"id":23323,"nodeType":"Block","src":"31748:127:47","nodes":[],"statements":[{"assignments":[23314],"declarations":[{"constant":false,"id":23314,"mutability":"mutable","name":"_genericArray","nameLocation":"31771:13:47","nodeType":"VariableDeclaration","scope":23323,"src":"31754:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23312,"name":"bytes32","nodeType":"ElementaryTypeName","src":"31754:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23313,"nodeType":"ArrayTypeName","src":"31754:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23321,"initialValue":{"arguments":[{"id":23317,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23304,"src":"31805:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"33","id":23318,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31813:1:47","typeDescriptions":{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},"value":"3"},{"hexValue":"30","id":23319,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"31816:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_3_by_1","typeString":"int_const 3"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23315,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"31787:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23316,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"31798:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"31787:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23320,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"31787:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"31754:64:47"},{"AST":{"nativeSrc":"31833:38:47","nodeType":"YulBlock","src":"31833:38:47","statements":[{"nativeSrc":"31841:24:47","nodeType":"YulAssignment","src":"31841:24:47","value":{"name":"_genericArray","nativeSrc":"31852:13:47","nodeType":"YulIdentifier","src":"31852:13:47"},"variableNames":[{"name":"_output","nativeSrc":"31841:7:47","nodeType":"YulIdentifier","src":"31841:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23314,"isOffset":false,"isSlot":false,"src":"31852:13:47","valueSize":1},{"declaration":23308,"isOffset":false,"isSlot":false,"src":"31841:7:47","valueSize":1}],"id":23322,"nodeType":"InlineAssembly","src":"31824:47:47"}]},"documentation":{"id":23301,"nodeType":"StructuredDocumentation","src":"31413:242:47","text":" @notice Decodes a slice into an array of bytes3.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes3."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes3","nameLocation":"31667:18:47","parameters":{"id":23305,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23304,"mutability":"mutable","name":"_input","nameLocation":"31692:6:47","nodeType":"VariableDeclaration","scope":23324,"src":"31686:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23303,"nodeType":"UserDefinedTypeName","pathNode":{"id":23302,"name":"Slice","nameLocations":["31686:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"31686:5:47"},"referencedDeclaration":10067,"src":"31686:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"31685:14:47"},"returnParameters":{"id":23309,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23308,"mutability":"mutable","name":"_output","nameLocation":"31739:7:47","nodeType":"VariableDeclaration","scope":23324,"src":"31723:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes3_$dyn_memory_ptr","typeString":"bytes3[]"},"typeName":{"baseType":{"id":23306,"name":"bytes3","nodeType":"ElementaryTypeName","src":"31723:6:47","typeDescriptions":{"typeIdentifier":"t_bytes3","typeString":"bytes3"}},"id":23307,"nodeType":"ArrayTypeName","src":"31723:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes3_$dyn_storage_ptr","typeString":"bytes3[]"}},"visibility":"internal"}],"src":"31722:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23348,"nodeType":"FunctionDefinition","src":"32124:217:47","nodes":[],"body":{"id":23347,"nodeType":"Block","src":"32214:127:47","nodes":[],"statements":[{"assignments":[23338],"declarations":[{"constant":false,"id":23338,"mutability":"mutable","name":"_genericArray","nameLocation":"32237:13:47","nodeType":"VariableDeclaration","scope":23347,"src":"32220:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23336,"name":"bytes32","nodeType":"ElementaryTypeName","src":"32220:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23337,"nodeType":"ArrayTypeName","src":"32220:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23345,"initialValue":{"arguments":[{"id":23341,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23328,"src":"32271:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"34","id":23342,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32279:1:47","typeDescriptions":{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},"value":"4"},{"hexValue":"30","id":23343,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32282:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_4_by_1","typeString":"int_const 4"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23339,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"32253:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23340,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32264:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"32253:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23344,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32253:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"32220:64:47"},{"AST":{"nativeSrc":"32299:38:47","nodeType":"YulBlock","src":"32299:38:47","statements":[{"nativeSrc":"32307:24:47","nodeType":"YulAssignment","src":"32307:24:47","value":{"name":"_genericArray","nativeSrc":"32318:13:47","nodeType":"YulIdentifier","src":"32318:13:47"},"variableNames":[{"name":"_output","nativeSrc":"32307:7:47","nodeType":"YulIdentifier","src":"32307:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23338,"isOffset":false,"isSlot":false,"src":"32318:13:47","valueSize":1},{"declaration":23332,"isOffset":false,"isSlot":false,"src":"32307:7:47","valueSize":1}],"id":23346,"nodeType":"InlineAssembly","src":"32290:47:47"}]},"documentation":{"id":23325,"nodeType":"StructuredDocumentation","src":"31879:242:47","text":" @notice Decodes a slice into an array of bytes4.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes4."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes4","nameLocation":"32133:18:47","parameters":{"id":23329,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23328,"mutability":"mutable","name":"_input","nameLocation":"32158:6:47","nodeType":"VariableDeclaration","scope":23348,"src":"32152:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23327,"nodeType":"UserDefinedTypeName","pathNode":{"id":23326,"name":"Slice","nameLocations":["32152:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"32152:5:47"},"referencedDeclaration":10067,"src":"32152:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"32151:14:47"},"returnParameters":{"id":23333,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23332,"mutability":"mutable","name":"_output","nameLocation":"32205:7:47","nodeType":"VariableDeclaration","scope":23348,"src":"32189:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes4_$dyn_memory_ptr","typeString":"bytes4[]"},"typeName":{"baseType":{"id":23330,"name":"bytes4","nodeType":"ElementaryTypeName","src":"32189:6:47","typeDescriptions":{"typeIdentifier":"t_bytes4","typeString":"bytes4"}},"id":23331,"nodeType":"ArrayTypeName","src":"32189:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes4_$dyn_storage_ptr","typeString":"bytes4[]"}},"visibility":"internal"}],"src":"32188:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23372,"nodeType":"FunctionDefinition","src":"32590:217:47","nodes":[],"body":{"id":23371,"nodeType":"Block","src":"32680:127:47","nodes":[],"statements":[{"assignments":[23362],"declarations":[{"constant":false,"id":23362,"mutability":"mutable","name":"_genericArray","nameLocation":"32703:13:47","nodeType":"VariableDeclaration","scope":23371,"src":"32686:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23360,"name":"bytes32","nodeType":"ElementaryTypeName","src":"32686:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23361,"nodeType":"ArrayTypeName","src":"32686:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23369,"initialValue":{"arguments":[{"id":23365,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23352,"src":"32737:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"35","id":23366,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32745:1:47","typeDescriptions":{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},"value":"5"},{"hexValue":"30","id":23367,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"32748:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_5_by_1","typeString":"int_const 5"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23363,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"32719:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23364,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"32730:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"32719:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23368,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"32719:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"32686:64:47"},{"AST":{"nativeSrc":"32765:38:47","nodeType":"YulBlock","src":"32765:38:47","statements":[{"nativeSrc":"32773:24:47","nodeType":"YulAssignment","src":"32773:24:47","value":{"name":"_genericArray","nativeSrc":"32784:13:47","nodeType":"YulIdentifier","src":"32784:13:47"},"variableNames":[{"name":"_output","nativeSrc":"32773:7:47","nodeType":"YulIdentifier","src":"32773:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23362,"isOffset":false,"isSlot":false,"src":"32784:13:47","valueSize":1},{"declaration":23356,"isOffset":false,"isSlot":false,"src":"32773:7:47","valueSize":1}],"id":23370,"nodeType":"InlineAssembly","src":"32756:47:47"}]},"documentation":{"id":23349,"nodeType":"StructuredDocumentation","src":"32345:242:47","text":" @notice Decodes a slice into an array of bytes5.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes5."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes5","nameLocation":"32599:18:47","parameters":{"id":23353,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23352,"mutability":"mutable","name":"_input","nameLocation":"32624:6:47","nodeType":"VariableDeclaration","scope":23372,"src":"32618:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23351,"nodeType":"UserDefinedTypeName","pathNode":{"id":23350,"name":"Slice","nameLocations":["32618:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"32618:5:47"},"referencedDeclaration":10067,"src":"32618:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"32617:14:47"},"returnParameters":{"id":23357,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23356,"mutability":"mutable","name":"_output","nameLocation":"32671:7:47","nodeType":"VariableDeclaration","scope":23372,"src":"32655:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes5_$dyn_memory_ptr","typeString":"bytes5[]"},"typeName":{"baseType":{"id":23354,"name":"bytes5","nodeType":"ElementaryTypeName","src":"32655:6:47","typeDescriptions":{"typeIdentifier":"t_bytes5","typeString":"bytes5"}},"id":23355,"nodeType":"ArrayTypeName","src":"32655:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes5_$dyn_storage_ptr","typeString":"bytes5[]"}},"visibility":"internal"}],"src":"32654:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23396,"nodeType":"FunctionDefinition","src":"33056:217:47","nodes":[],"body":{"id":23395,"nodeType":"Block","src":"33146:127:47","nodes":[],"statements":[{"assignments":[23386],"declarations":[{"constant":false,"id":23386,"mutability":"mutable","name":"_genericArray","nameLocation":"33169:13:47","nodeType":"VariableDeclaration","scope":23395,"src":"33152:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23384,"name":"bytes32","nodeType":"ElementaryTypeName","src":"33152:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23385,"nodeType":"ArrayTypeName","src":"33152:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23393,"initialValue":{"arguments":[{"id":23389,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23376,"src":"33203:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"36","id":23390,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33211:1:47","typeDescriptions":{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},"value":"6"},{"hexValue":"30","id":23391,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33214:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_6_by_1","typeString":"int_const 6"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23387,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"33185:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23388,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33196:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"33185:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23392,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33185:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"33152:64:47"},{"AST":{"nativeSrc":"33231:38:47","nodeType":"YulBlock","src":"33231:38:47","statements":[{"nativeSrc":"33239:24:47","nodeType":"YulAssignment","src":"33239:24:47","value":{"name":"_genericArray","nativeSrc":"33250:13:47","nodeType":"YulIdentifier","src":"33250:13:47"},"variableNames":[{"name":"_output","nativeSrc":"33239:7:47","nodeType":"YulIdentifier","src":"33239:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23386,"isOffset":false,"isSlot":false,"src":"33250:13:47","valueSize":1},{"declaration":23380,"isOffset":false,"isSlot":false,"src":"33239:7:47","valueSize":1}],"id":23394,"nodeType":"InlineAssembly","src":"33222:47:47"}]},"documentation":{"id":23373,"nodeType":"StructuredDocumentation","src":"32811:242:47","text":" @notice Decodes a slice into an array of bytes6.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes6."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes6","nameLocation":"33065:18:47","parameters":{"id":23377,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23376,"mutability":"mutable","name":"_input","nameLocation":"33090:6:47","nodeType":"VariableDeclaration","scope":23396,"src":"33084:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23375,"nodeType":"UserDefinedTypeName","pathNode":{"id":23374,"name":"Slice","nameLocations":["33084:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"33084:5:47"},"referencedDeclaration":10067,"src":"33084:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"33083:14:47"},"returnParameters":{"id":23381,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23380,"mutability":"mutable","name":"_output","nameLocation":"33137:7:47","nodeType":"VariableDeclaration","scope":23396,"src":"33121:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes6_$dyn_memory_ptr","typeString":"bytes6[]"},"typeName":{"baseType":{"id":23378,"name":"bytes6","nodeType":"ElementaryTypeName","src":"33121:6:47","typeDescriptions":{"typeIdentifier":"t_bytes6","typeString":"bytes6"}},"id":23379,"nodeType":"ArrayTypeName","src":"33121:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes6_$dyn_storage_ptr","typeString":"bytes6[]"}},"visibility":"internal"}],"src":"33120:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23420,"nodeType":"FunctionDefinition","src":"33522:217:47","nodes":[],"body":{"id":23419,"nodeType":"Block","src":"33612:127:47","nodes":[],"statements":[{"assignments":[23410],"declarations":[{"constant":false,"id":23410,"mutability":"mutable","name":"_genericArray","nameLocation":"33635:13:47","nodeType":"VariableDeclaration","scope":23419,"src":"33618:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23408,"name":"bytes32","nodeType":"ElementaryTypeName","src":"33618:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23409,"nodeType":"ArrayTypeName","src":"33618:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23417,"initialValue":{"arguments":[{"id":23413,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23400,"src":"33669:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"37","id":23414,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33677:1:47","typeDescriptions":{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},"value":"7"},{"hexValue":"30","id":23415,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"33680:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_7_by_1","typeString":"int_const 7"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23411,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"33651:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23412,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"33662:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"33651:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23416,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"33651:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"33618:64:47"},{"AST":{"nativeSrc":"33697:38:47","nodeType":"YulBlock","src":"33697:38:47","statements":[{"nativeSrc":"33705:24:47","nodeType":"YulAssignment","src":"33705:24:47","value":{"name":"_genericArray","nativeSrc":"33716:13:47","nodeType":"YulIdentifier","src":"33716:13:47"},"variableNames":[{"name":"_output","nativeSrc":"33705:7:47","nodeType":"YulIdentifier","src":"33705:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23410,"isOffset":false,"isSlot":false,"src":"33716:13:47","valueSize":1},{"declaration":23404,"isOffset":false,"isSlot":false,"src":"33705:7:47","valueSize":1}],"id":23418,"nodeType":"InlineAssembly","src":"33688:47:47"}]},"documentation":{"id":23397,"nodeType":"StructuredDocumentation","src":"33277:242:47","text":" @notice Decodes a slice into an array of bytes7.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes7."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes7","nameLocation":"33531:18:47","parameters":{"id":23401,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23400,"mutability":"mutable","name":"_input","nameLocation":"33556:6:47","nodeType":"VariableDeclaration","scope":23420,"src":"33550:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23399,"nodeType":"UserDefinedTypeName","pathNode":{"id":23398,"name":"Slice","nameLocations":["33550:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"33550:5:47"},"referencedDeclaration":10067,"src":"33550:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"33549:14:47"},"returnParameters":{"id":23405,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23404,"mutability":"mutable","name":"_output","nameLocation":"33603:7:47","nodeType":"VariableDeclaration","scope":23420,"src":"33587:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes7_$dyn_memory_ptr","typeString":"bytes7[]"},"typeName":{"baseType":{"id":23402,"name":"bytes7","nodeType":"ElementaryTypeName","src":"33587:6:47","typeDescriptions":{"typeIdentifier":"t_bytes7","typeString":"bytes7"}},"id":23403,"nodeType":"ArrayTypeName","src":"33587:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes7_$dyn_storage_ptr","typeString":"bytes7[]"}},"visibility":"internal"}],"src":"33586:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23444,"nodeType":"FunctionDefinition","src":"33988:217:47","nodes":[],"body":{"id":23443,"nodeType":"Block","src":"34078:127:47","nodes":[],"statements":[{"assignments":[23434],"declarations":[{"constant":false,"id":23434,"mutability":"mutable","name":"_genericArray","nameLocation":"34101:13:47","nodeType":"VariableDeclaration","scope":23443,"src":"34084:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23432,"name":"bytes32","nodeType":"ElementaryTypeName","src":"34084:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23433,"nodeType":"ArrayTypeName","src":"34084:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23441,"initialValue":{"arguments":[{"id":23437,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23424,"src":"34135:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"38","id":23438,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34143:1:47","typeDescriptions":{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},"value":"8"},{"hexValue":"30","id":23439,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34146:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_8_by_1","typeString":"int_const 8"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23435,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"34117:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23436,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34128:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"34117:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23440,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34117:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"34084:64:47"},{"AST":{"nativeSrc":"34163:38:47","nodeType":"YulBlock","src":"34163:38:47","statements":[{"nativeSrc":"34171:24:47","nodeType":"YulAssignment","src":"34171:24:47","value":{"name":"_genericArray","nativeSrc":"34182:13:47","nodeType":"YulIdentifier","src":"34182:13:47"},"variableNames":[{"name":"_output","nativeSrc":"34171:7:47","nodeType":"YulIdentifier","src":"34171:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23434,"isOffset":false,"isSlot":false,"src":"34182:13:47","valueSize":1},{"declaration":23428,"isOffset":false,"isSlot":false,"src":"34171:7:47","valueSize":1}],"id":23442,"nodeType":"InlineAssembly","src":"34154:47:47"}]},"documentation":{"id":23421,"nodeType":"StructuredDocumentation","src":"33743:242:47","text":" @notice Decodes a slice into an array of bytes8.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes8."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes8","nameLocation":"33997:18:47","parameters":{"id":23425,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23424,"mutability":"mutable","name":"_input","nameLocation":"34022:6:47","nodeType":"VariableDeclaration","scope":23444,"src":"34016:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23423,"nodeType":"UserDefinedTypeName","pathNode":{"id":23422,"name":"Slice","nameLocations":["34016:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"34016:5:47"},"referencedDeclaration":10067,"src":"34016:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"34015:14:47"},"returnParameters":{"id":23429,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23428,"mutability":"mutable","name":"_output","nameLocation":"34069:7:47","nodeType":"VariableDeclaration","scope":23444,"src":"34053:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes8_$dyn_memory_ptr","typeString":"bytes8[]"},"typeName":{"baseType":{"id":23426,"name":"bytes8","nodeType":"ElementaryTypeName","src":"34053:6:47","typeDescriptions":{"typeIdentifier":"t_bytes8","typeString":"bytes8"}},"id":23427,"nodeType":"ArrayTypeName","src":"34053:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes8_$dyn_storage_ptr","typeString":"bytes8[]"}},"visibility":"internal"}],"src":"34052:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23468,"nodeType":"FunctionDefinition","src":"34454:217:47","nodes":[],"body":{"id":23467,"nodeType":"Block","src":"34544:127:47","nodes":[],"statements":[{"assignments":[23458],"declarations":[{"constant":false,"id":23458,"mutability":"mutable","name":"_genericArray","nameLocation":"34567:13:47","nodeType":"VariableDeclaration","scope":23467,"src":"34550:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23456,"name":"bytes32","nodeType":"ElementaryTypeName","src":"34550:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23457,"nodeType":"ArrayTypeName","src":"34550:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23465,"initialValue":{"arguments":[{"id":23461,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23448,"src":"34601:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"39","id":23462,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34609:1:47","typeDescriptions":{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},"value":"9"},{"hexValue":"30","id":23463,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"34612:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_9_by_1","typeString":"int_const 9"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23459,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"34583:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23460,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"34594:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"34583:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23464,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"34583:31:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"34550:64:47"},{"AST":{"nativeSrc":"34629:38:47","nodeType":"YulBlock","src":"34629:38:47","statements":[{"nativeSrc":"34637:24:47","nodeType":"YulAssignment","src":"34637:24:47","value":{"name":"_genericArray","nativeSrc":"34648:13:47","nodeType":"YulIdentifier","src":"34648:13:47"},"variableNames":[{"name":"_output","nativeSrc":"34637:7:47","nodeType":"YulIdentifier","src":"34637:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23458,"isOffset":false,"isSlot":false,"src":"34648:13:47","valueSize":1},{"declaration":23452,"isOffset":false,"isSlot":false,"src":"34637:7:47","valueSize":1}],"id":23466,"nodeType":"InlineAssembly","src":"34620:47:47"}]},"documentation":{"id":23445,"nodeType":"StructuredDocumentation","src":"34209:242:47","text":" @notice Decodes a slice into an array of bytes9.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes9."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes9","nameLocation":"34463:18:47","parameters":{"id":23449,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23448,"mutability":"mutable","name":"_input","nameLocation":"34488:6:47","nodeType":"VariableDeclaration","scope":23468,"src":"34482:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23447,"nodeType":"UserDefinedTypeName","pathNode":{"id":23446,"name":"Slice","nameLocations":["34482:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"34482:5:47"},"referencedDeclaration":10067,"src":"34482:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"34481:14:47"},"returnParameters":{"id":23453,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23452,"mutability":"mutable","name":"_output","nameLocation":"34535:7:47","nodeType":"VariableDeclaration","scope":23468,"src":"34519:23:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes9_$dyn_memory_ptr","typeString":"bytes9[]"},"typeName":{"baseType":{"id":23450,"name":"bytes9","nodeType":"ElementaryTypeName","src":"34519:6:47","typeDescriptions":{"typeIdentifier":"t_bytes9","typeString":"bytes9"}},"id":23451,"nodeType":"ArrayTypeName","src":"34519:8:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes9_$dyn_storage_ptr","typeString":"bytes9[]"}},"visibility":"internal"}],"src":"34518:25:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23492,"nodeType":"FunctionDefinition","src":"34922:220:47","nodes":[],"body":{"id":23491,"nodeType":"Block","src":"35014:128:47","nodes":[],"statements":[{"assignments":[23482],"declarations":[{"constant":false,"id":23482,"mutability":"mutable","name":"_genericArray","nameLocation":"35037:13:47","nodeType":"VariableDeclaration","scope":23491,"src":"35020:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23480,"name":"bytes32","nodeType":"ElementaryTypeName","src":"35020:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23481,"nodeType":"ArrayTypeName","src":"35020:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23489,"initialValue":{"arguments":[{"id":23485,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23472,"src":"35071:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3130","id":23486,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35079:2:47","typeDescriptions":{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},"value":"10"},{"hexValue":"30","id":23487,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35083:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_10_by_1","typeString":"int_const 10"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23483,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"35053:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23484,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35064:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"35053:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23488,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35053:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35020:65:47"},{"AST":{"nativeSrc":"35100:38:47","nodeType":"YulBlock","src":"35100:38:47","statements":[{"nativeSrc":"35108:24:47","nodeType":"YulAssignment","src":"35108:24:47","value":{"name":"_genericArray","nativeSrc":"35119:13:47","nodeType":"YulIdentifier","src":"35119:13:47"},"variableNames":[{"name":"_output","nativeSrc":"35108:7:47","nodeType":"YulIdentifier","src":"35108:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23482,"isOffset":false,"isSlot":false,"src":"35119:13:47","valueSize":1},{"declaration":23476,"isOffset":false,"isSlot":false,"src":"35108:7:47","valueSize":1}],"id":23490,"nodeType":"InlineAssembly","src":"35091:47:47"}]},"documentation":{"id":23469,"nodeType":"StructuredDocumentation","src":"34675:244:47","text":" @notice Decodes a slice into an array of bytes10.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes10."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes10","nameLocation":"34931:19:47","parameters":{"id":23473,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23472,"mutability":"mutable","name":"_input","nameLocation":"34957:6:47","nodeType":"VariableDeclaration","scope":23492,"src":"34951:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23471,"nodeType":"UserDefinedTypeName","pathNode":{"id":23470,"name":"Slice","nameLocations":["34951:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"34951:5:47"},"referencedDeclaration":10067,"src":"34951:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"34950:14:47"},"returnParameters":{"id":23477,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23476,"mutability":"mutable","name":"_output","nameLocation":"35005:7:47","nodeType":"VariableDeclaration","scope":23492,"src":"34988:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes10_$dyn_memory_ptr","typeString":"bytes10[]"},"typeName":{"baseType":{"id":23474,"name":"bytes10","nodeType":"ElementaryTypeName","src":"34988:7:47","typeDescriptions":{"typeIdentifier":"t_bytes10","typeString":"bytes10"}},"id":23475,"nodeType":"ArrayTypeName","src":"34988:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes10_$dyn_storage_ptr","typeString":"bytes10[]"}},"visibility":"internal"}],"src":"34987:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23516,"nodeType":"FunctionDefinition","src":"35393:220:47","nodes":[],"body":{"id":23515,"nodeType":"Block","src":"35485:128:47","nodes":[],"statements":[{"assignments":[23506],"declarations":[{"constant":false,"id":23506,"mutability":"mutable","name":"_genericArray","nameLocation":"35508:13:47","nodeType":"VariableDeclaration","scope":23515,"src":"35491:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23504,"name":"bytes32","nodeType":"ElementaryTypeName","src":"35491:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23505,"nodeType":"ArrayTypeName","src":"35491:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23513,"initialValue":{"arguments":[{"id":23509,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23496,"src":"35542:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3131","id":23510,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35550:2:47","typeDescriptions":{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},"value":"11"},{"hexValue":"30","id":23511,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"35554:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_11_by_1","typeString":"int_const 11"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23507,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"35524:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23508,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"35535:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"35524:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23512,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35524:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35491:65:47"},{"AST":{"nativeSrc":"35571:38:47","nodeType":"YulBlock","src":"35571:38:47","statements":[{"nativeSrc":"35579:24:47","nodeType":"YulAssignment","src":"35579:24:47","value":{"name":"_genericArray","nativeSrc":"35590:13:47","nodeType":"YulIdentifier","src":"35590:13:47"},"variableNames":[{"name":"_output","nativeSrc":"35579:7:47","nodeType":"YulIdentifier","src":"35579:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23506,"isOffset":false,"isSlot":false,"src":"35590:13:47","valueSize":1},{"declaration":23500,"isOffset":false,"isSlot":false,"src":"35579:7:47","valueSize":1}],"id":23514,"nodeType":"InlineAssembly","src":"35562:47:47"}]},"documentation":{"id":23493,"nodeType":"StructuredDocumentation","src":"35146:244:47","text":" @notice Decodes a slice into an array of bytes11.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes11."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes11","nameLocation":"35402:19:47","parameters":{"id":23497,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23496,"mutability":"mutable","name":"_input","nameLocation":"35428:6:47","nodeType":"VariableDeclaration","scope":23516,"src":"35422:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23495,"nodeType":"UserDefinedTypeName","pathNode":{"id":23494,"name":"Slice","nameLocations":["35422:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"35422:5:47"},"referencedDeclaration":10067,"src":"35422:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"35421:14:47"},"returnParameters":{"id":23501,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23500,"mutability":"mutable","name":"_output","nameLocation":"35476:7:47","nodeType":"VariableDeclaration","scope":23516,"src":"35459:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes11_$dyn_memory_ptr","typeString":"bytes11[]"},"typeName":{"baseType":{"id":23498,"name":"bytes11","nodeType":"ElementaryTypeName","src":"35459:7:47","typeDescriptions":{"typeIdentifier":"t_bytes11","typeString":"bytes11"}},"id":23499,"nodeType":"ArrayTypeName","src":"35459:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes11_$dyn_storage_ptr","typeString":"bytes11[]"}},"visibility":"internal"}],"src":"35458:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23540,"nodeType":"FunctionDefinition","src":"35864:220:47","nodes":[],"body":{"id":23539,"nodeType":"Block","src":"35956:128:47","nodes":[],"statements":[{"assignments":[23530],"declarations":[{"constant":false,"id":23530,"mutability":"mutable","name":"_genericArray","nameLocation":"35979:13:47","nodeType":"VariableDeclaration","scope":23539,"src":"35962:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23528,"name":"bytes32","nodeType":"ElementaryTypeName","src":"35962:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23529,"nodeType":"ArrayTypeName","src":"35962:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23537,"initialValue":{"arguments":[{"id":23533,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23520,"src":"36013:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3132","id":23534,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36021:2:47","typeDescriptions":{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},"value":"12"},{"hexValue":"30","id":23535,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36025:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_12_by_1","typeString":"int_const 12"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23531,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"35995:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23532,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36006:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"35995:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23536,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"35995:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"35962:65:47"},{"AST":{"nativeSrc":"36042:38:47","nodeType":"YulBlock","src":"36042:38:47","statements":[{"nativeSrc":"36050:24:47","nodeType":"YulAssignment","src":"36050:24:47","value":{"name":"_genericArray","nativeSrc":"36061:13:47","nodeType":"YulIdentifier","src":"36061:13:47"},"variableNames":[{"name":"_output","nativeSrc":"36050:7:47","nodeType":"YulIdentifier","src":"36050:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23530,"isOffset":false,"isSlot":false,"src":"36061:13:47","valueSize":1},{"declaration":23524,"isOffset":false,"isSlot":false,"src":"36050:7:47","valueSize":1}],"id":23538,"nodeType":"InlineAssembly","src":"36033:47:47"}]},"documentation":{"id":23517,"nodeType":"StructuredDocumentation","src":"35617:244:47","text":" @notice Decodes a slice into an array of bytes12.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes12."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes12","nameLocation":"35873:19:47","parameters":{"id":23521,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23520,"mutability":"mutable","name":"_input","nameLocation":"35899:6:47","nodeType":"VariableDeclaration","scope":23540,"src":"35893:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23519,"nodeType":"UserDefinedTypeName","pathNode":{"id":23518,"name":"Slice","nameLocations":["35893:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"35893:5:47"},"referencedDeclaration":10067,"src":"35893:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"35892:14:47"},"returnParameters":{"id":23525,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23524,"mutability":"mutable","name":"_output","nameLocation":"35947:7:47","nodeType":"VariableDeclaration","scope":23540,"src":"35930:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes12_$dyn_memory_ptr","typeString":"bytes12[]"},"typeName":{"baseType":{"id":23522,"name":"bytes12","nodeType":"ElementaryTypeName","src":"35930:7:47","typeDescriptions":{"typeIdentifier":"t_bytes12","typeString":"bytes12"}},"id":23523,"nodeType":"ArrayTypeName","src":"35930:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes12_$dyn_storage_ptr","typeString":"bytes12[]"}},"visibility":"internal"}],"src":"35929:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23564,"nodeType":"FunctionDefinition","src":"36335:220:47","nodes":[],"body":{"id":23563,"nodeType":"Block","src":"36427:128:47","nodes":[],"statements":[{"assignments":[23554],"declarations":[{"constant":false,"id":23554,"mutability":"mutable","name":"_genericArray","nameLocation":"36450:13:47","nodeType":"VariableDeclaration","scope":23563,"src":"36433:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23552,"name":"bytes32","nodeType":"ElementaryTypeName","src":"36433:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23553,"nodeType":"ArrayTypeName","src":"36433:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23561,"initialValue":{"arguments":[{"id":23557,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23544,"src":"36484:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3133","id":23558,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36492:2:47","typeDescriptions":{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},"value":"13"},{"hexValue":"30","id":23559,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36496:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_13_by_1","typeString":"int_const 13"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23555,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"36466:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23556,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36477:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"36466:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23560,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36466:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"36433:65:47"},{"AST":{"nativeSrc":"36513:38:47","nodeType":"YulBlock","src":"36513:38:47","statements":[{"nativeSrc":"36521:24:47","nodeType":"YulAssignment","src":"36521:24:47","value":{"name":"_genericArray","nativeSrc":"36532:13:47","nodeType":"YulIdentifier","src":"36532:13:47"},"variableNames":[{"name":"_output","nativeSrc":"36521:7:47","nodeType":"YulIdentifier","src":"36521:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23554,"isOffset":false,"isSlot":false,"src":"36532:13:47","valueSize":1},{"declaration":23548,"isOffset":false,"isSlot":false,"src":"36521:7:47","valueSize":1}],"id":23562,"nodeType":"InlineAssembly","src":"36504:47:47"}]},"documentation":{"id":23541,"nodeType":"StructuredDocumentation","src":"36088:244:47","text":" @notice Decodes a slice into an array of bytes13.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes13."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes13","nameLocation":"36344:19:47","parameters":{"id":23545,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23544,"mutability":"mutable","name":"_input","nameLocation":"36370:6:47","nodeType":"VariableDeclaration","scope":23564,"src":"36364:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23543,"nodeType":"UserDefinedTypeName","pathNode":{"id":23542,"name":"Slice","nameLocations":["36364:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"36364:5:47"},"referencedDeclaration":10067,"src":"36364:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"36363:14:47"},"returnParameters":{"id":23549,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23548,"mutability":"mutable","name":"_output","nameLocation":"36418:7:47","nodeType":"VariableDeclaration","scope":23564,"src":"36401:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes13_$dyn_memory_ptr","typeString":"bytes13[]"},"typeName":{"baseType":{"id":23546,"name":"bytes13","nodeType":"ElementaryTypeName","src":"36401:7:47","typeDescriptions":{"typeIdentifier":"t_bytes13","typeString":"bytes13"}},"id":23547,"nodeType":"ArrayTypeName","src":"36401:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes13_$dyn_storage_ptr","typeString":"bytes13[]"}},"visibility":"internal"}],"src":"36400:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23588,"nodeType":"FunctionDefinition","src":"36806:220:47","nodes":[],"body":{"id":23587,"nodeType":"Block","src":"36898:128:47","nodes":[],"statements":[{"assignments":[23578],"declarations":[{"constant":false,"id":23578,"mutability":"mutable","name":"_genericArray","nameLocation":"36921:13:47","nodeType":"VariableDeclaration","scope":23587,"src":"36904:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23576,"name":"bytes32","nodeType":"ElementaryTypeName","src":"36904:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23577,"nodeType":"ArrayTypeName","src":"36904:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23585,"initialValue":{"arguments":[{"id":23581,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23568,"src":"36955:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3134","id":23582,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36963:2:47","typeDescriptions":{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},"value":"14"},{"hexValue":"30","id":23583,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"36967:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_14_by_1","typeString":"int_const 14"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23579,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"36937:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23580,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"36948:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"36937:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23584,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"36937:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"36904:65:47"},{"AST":{"nativeSrc":"36984:38:47","nodeType":"YulBlock","src":"36984:38:47","statements":[{"nativeSrc":"36992:24:47","nodeType":"YulAssignment","src":"36992:24:47","value":{"name":"_genericArray","nativeSrc":"37003:13:47","nodeType":"YulIdentifier","src":"37003:13:47"},"variableNames":[{"name":"_output","nativeSrc":"36992:7:47","nodeType":"YulIdentifier","src":"36992:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23578,"isOffset":false,"isSlot":false,"src":"37003:13:47","valueSize":1},{"declaration":23572,"isOffset":false,"isSlot":false,"src":"36992:7:47","valueSize":1}],"id":23586,"nodeType":"InlineAssembly","src":"36975:47:47"}]},"documentation":{"id":23565,"nodeType":"StructuredDocumentation","src":"36559:244:47","text":" @notice Decodes a slice into an array of bytes14.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes14."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes14","nameLocation":"36815:19:47","parameters":{"id":23569,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23568,"mutability":"mutable","name":"_input","nameLocation":"36841:6:47","nodeType":"VariableDeclaration","scope":23588,"src":"36835:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23567,"nodeType":"UserDefinedTypeName","pathNode":{"id":23566,"name":"Slice","nameLocations":["36835:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"36835:5:47"},"referencedDeclaration":10067,"src":"36835:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"36834:14:47"},"returnParameters":{"id":23573,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23572,"mutability":"mutable","name":"_output","nameLocation":"36889:7:47","nodeType":"VariableDeclaration","scope":23588,"src":"36872:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes14_$dyn_memory_ptr","typeString":"bytes14[]"},"typeName":{"baseType":{"id":23570,"name":"bytes14","nodeType":"ElementaryTypeName","src":"36872:7:47","typeDescriptions":{"typeIdentifier":"t_bytes14","typeString":"bytes14"}},"id":23571,"nodeType":"ArrayTypeName","src":"36872:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes14_$dyn_storage_ptr","typeString":"bytes14[]"}},"visibility":"internal"}],"src":"36871:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23612,"nodeType":"FunctionDefinition","src":"37277:220:47","nodes":[],"body":{"id":23611,"nodeType":"Block","src":"37369:128:47","nodes":[],"statements":[{"assignments":[23602],"declarations":[{"constant":false,"id":23602,"mutability":"mutable","name":"_genericArray","nameLocation":"37392:13:47","nodeType":"VariableDeclaration","scope":23611,"src":"37375:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23600,"name":"bytes32","nodeType":"ElementaryTypeName","src":"37375:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23601,"nodeType":"ArrayTypeName","src":"37375:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23609,"initialValue":{"arguments":[{"id":23605,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23592,"src":"37426:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3135","id":23606,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37434:2:47","typeDescriptions":{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},"value":"15"},{"hexValue":"30","id":23607,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37438:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_15_by_1","typeString":"int_const 15"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23603,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"37408:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23604,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37419:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"37408:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23608,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37408:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"37375:65:47"},{"AST":{"nativeSrc":"37455:38:47","nodeType":"YulBlock","src":"37455:38:47","statements":[{"nativeSrc":"37463:24:47","nodeType":"YulAssignment","src":"37463:24:47","value":{"name":"_genericArray","nativeSrc":"37474:13:47","nodeType":"YulIdentifier","src":"37474:13:47"},"variableNames":[{"name":"_output","nativeSrc":"37463:7:47","nodeType":"YulIdentifier","src":"37463:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23602,"isOffset":false,"isSlot":false,"src":"37474:13:47","valueSize":1},{"declaration":23596,"isOffset":false,"isSlot":false,"src":"37463:7:47","valueSize":1}],"id":23610,"nodeType":"InlineAssembly","src":"37446:47:47"}]},"documentation":{"id":23589,"nodeType":"StructuredDocumentation","src":"37030:244:47","text":" @notice Decodes a slice into an array of bytes15.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes15."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes15","nameLocation":"37286:19:47","parameters":{"id":23593,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23592,"mutability":"mutable","name":"_input","nameLocation":"37312:6:47","nodeType":"VariableDeclaration","scope":23612,"src":"37306:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23591,"nodeType":"UserDefinedTypeName","pathNode":{"id":23590,"name":"Slice","nameLocations":["37306:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"37306:5:47"},"referencedDeclaration":10067,"src":"37306:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"37305:14:47"},"returnParameters":{"id":23597,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23596,"mutability":"mutable","name":"_output","nameLocation":"37360:7:47","nodeType":"VariableDeclaration","scope":23612,"src":"37343:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes15_$dyn_memory_ptr","typeString":"bytes15[]"},"typeName":{"baseType":{"id":23594,"name":"bytes15","nodeType":"ElementaryTypeName","src":"37343:7:47","typeDescriptions":{"typeIdentifier":"t_bytes15","typeString":"bytes15"}},"id":23595,"nodeType":"ArrayTypeName","src":"37343:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes15_$dyn_storage_ptr","typeString":"bytes15[]"}},"visibility":"internal"}],"src":"37342:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23636,"nodeType":"FunctionDefinition","src":"37748:220:47","nodes":[],"body":{"id":23635,"nodeType":"Block","src":"37840:128:47","nodes":[],"statements":[{"assignments":[23626],"declarations":[{"constant":false,"id":23626,"mutability":"mutable","name":"_genericArray","nameLocation":"37863:13:47","nodeType":"VariableDeclaration","scope":23635,"src":"37846:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23624,"name":"bytes32","nodeType":"ElementaryTypeName","src":"37846:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23625,"nodeType":"ArrayTypeName","src":"37846:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23633,"initialValue":{"arguments":[{"id":23629,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23616,"src":"37897:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3136","id":23630,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37905:2:47","typeDescriptions":{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},"value":"16"},{"hexValue":"30","id":23631,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"37909:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_16_by_1","typeString":"int_const 16"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23627,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"37879:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23628,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"37890:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"37879:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23632,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"37879:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"37846:65:47"},{"AST":{"nativeSrc":"37926:38:47","nodeType":"YulBlock","src":"37926:38:47","statements":[{"nativeSrc":"37934:24:47","nodeType":"YulAssignment","src":"37934:24:47","value":{"name":"_genericArray","nativeSrc":"37945:13:47","nodeType":"YulIdentifier","src":"37945:13:47"},"variableNames":[{"name":"_output","nativeSrc":"37934:7:47","nodeType":"YulIdentifier","src":"37934:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23626,"isOffset":false,"isSlot":false,"src":"37945:13:47","valueSize":1},{"declaration":23620,"isOffset":false,"isSlot":false,"src":"37934:7:47","valueSize":1}],"id":23634,"nodeType":"InlineAssembly","src":"37917:47:47"}]},"documentation":{"id":23613,"nodeType":"StructuredDocumentation","src":"37501:244:47","text":" @notice Decodes a slice into an array of bytes16.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes16."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes16","nameLocation":"37757:19:47","parameters":{"id":23617,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23616,"mutability":"mutable","name":"_input","nameLocation":"37783:6:47","nodeType":"VariableDeclaration","scope":23636,"src":"37777:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23615,"nodeType":"UserDefinedTypeName","pathNode":{"id":23614,"name":"Slice","nameLocations":["37777:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"37777:5:47"},"referencedDeclaration":10067,"src":"37777:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"37776:14:47"},"returnParameters":{"id":23621,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23620,"mutability":"mutable","name":"_output","nameLocation":"37831:7:47","nodeType":"VariableDeclaration","scope":23636,"src":"37814:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes16_$dyn_memory_ptr","typeString":"bytes16[]"},"typeName":{"baseType":{"id":23618,"name":"bytes16","nodeType":"ElementaryTypeName","src":"37814:7:47","typeDescriptions":{"typeIdentifier":"t_bytes16","typeString":"bytes16"}},"id":23619,"nodeType":"ArrayTypeName","src":"37814:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes16_$dyn_storage_ptr","typeString":"bytes16[]"}},"visibility":"internal"}],"src":"37813:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23660,"nodeType":"FunctionDefinition","src":"38219:220:47","nodes":[],"body":{"id":23659,"nodeType":"Block","src":"38311:128:47","nodes":[],"statements":[{"assignments":[23650],"declarations":[{"constant":false,"id":23650,"mutability":"mutable","name":"_genericArray","nameLocation":"38334:13:47","nodeType":"VariableDeclaration","scope":23659,"src":"38317:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23648,"name":"bytes32","nodeType":"ElementaryTypeName","src":"38317:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23649,"nodeType":"ArrayTypeName","src":"38317:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23657,"initialValue":{"arguments":[{"id":23653,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23640,"src":"38368:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3137","id":23654,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38376:2:47","typeDescriptions":{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},"value":"17"},{"hexValue":"30","id":23655,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38380:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_17_by_1","typeString":"int_const 17"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23651,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"38350:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23652,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38361:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"38350:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23656,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38350:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"38317:65:47"},{"AST":{"nativeSrc":"38397:38:47","nodeType":"YulBlock","src":"38397:38:47","statements":[{"nativeSrc":"38405:24:47","nodeType":"YulAssignment","src":"38405:24:47","value":{"name":"_genericArray","nativeSrc":"38416:13:47","nodeType":"YulIdentifier","src":"38416:13:47"},"variableNames":[{"name":"_output","nativeSrc":"38405:7:47","nodeType":"YulIdentifier","src":"38405:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23650,"isOffset":false,"isSlot":false,"src":"38416:13:47","valueSize":1},{"declaration":23644,"isOffset":false,"isSlot":false,"src":"38405:7:47","valueSize":1}],"id":23658,"nodeType":"InlineAssembly","src":"38388:47:47"}]},"documentation":{"id":23637,"nodeType":"StructuredDocumentation","src":"37972:244:47","text":" @notice Decodes a slice into an array of bytes17.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes17."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes17","nameLocation":"38228:19:47","parameters":{"id":23641,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23640,"mutability":"mutable","name":"_input","nameLocation":"38254:6:47","nodeType":"VariableDeclaration","scope":23660,"src":"38248:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23639,"nodeType":"UserDefinedTypeName","pathNode":{"id":23638,"name":"Slice","nameLocations":["38248:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"38248:5:47"},"referencedDeclaration":10067,"src":"38248:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"38247:14:47"},"returnParameters":{"id":23645,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23644,"mutability":"mutable","name":"_output","nameLocation":"38302:7:47","nodeType":"VariableDeclaration","scope":23660,"src":"38285:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes17_$dyn_memory_ptr","typeString":"bytes17[]"},"typeName":{"baseType":{"id":23642,"name":"bytes17","nodeType":"ElementaryTypeName","src":"38285:7:47","typeDescriptions":{"typeIdentifier":"t_bytes17","typeString":"bytes17"}},"id":23643,"nodeType":"ArrayTypeName","src":"38285:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes17_$dyn_storage_ptr","typeString":"bytes17[]"}},"visibility":"internal"}],"src":"38284:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23684,"nodeType":"FunctionDefinition","src":"38690:220:47","nodes":[],"body":{"id":23683,"nodeType":"Block","src":"38782:128:47","nodes":[],"statements":[{"assignments":[23674],"declarations":[{"constant":false,"id":23674,"mutability":"mutable","name":"_genericArray","nameLocation":"38805:13:47","nodeType":"VariableDeclaration","scope":23683,"src":"38788:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23672,"name":"bytes32","nodeType":"ElementaryTypeName","src":"38788:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23673,"nodeType":"ArrayTypeName","src":"38788:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23681,"initialValue":{"arguments":[{"id":23677,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23664,"src":"38839:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3138","id":23678,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38847:2:47","typeDescriptions":{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},"value":"18"},{"hexValue":"30","id":23679,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"38851:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_18_by_1","typeString":"int_const 18"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23675,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"38821:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23676,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"38832:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"38821:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23680,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"38821:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"38788:65:47"},{"AST":{"nativeSrc":"38868:38:47","nodeType":"YulBlock","src":"38868:38:47","statements":[{"nativeSrc":"38876:24:47","nodeType":"YulAssignment","src":"38876:24:47","value":{"name":"_genericArray","nativeSrc":"38887:13:47","nodeType":"YulIdentifier","src":"38887:13:47"},"variableNames":[{"name":"_output","nativeSrc":"38876:7:47","nodeType":"YulIdentifier","src":"38876:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23674,"isOffset":false,"isSlot":false,"src":"38887:13:47","valueSize":1},{"declaration":23668,"isOffset":false,"isSlot":false,"src":"38876:7:47","valueSize":1}],"id":23682,"nodeType":"InlineAssembly","src":"38859:47:47"}]},"documentation":{"id":23661,"nodeType":"StructuredDocumentation","src":"38443:244:47","text":" @notice Decodes a slice into an array of bytes18.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes18."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes18","nameLocation":"38699:19:47","parameters":{"id":23665,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23664,"mutability":"mutable","name":"_input","nameLocation":"38725:6:47","nodeType":"VariableDeclaration","scope":23684,"src":"38719:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23663,"nodeType":"UserDefinedTypeName","pathNode":{"id":23662,"name":"Slice","nameLocations":["38719:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"38719:5:47"},"referencedDeclaration":10067,"src":"38719:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"38718:14:47"},"returnParameters":{"id":23669,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23668,"mutability":"mutable","name":"_output","nameLocation":"38773:7:47","nodeType":"VariableDeclaration","scope":23684,"src":"38756:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes18_$dyn_memory_ptr","typeString":"bytes18[]"},"typeName":{"baseType":{"id":23666,"name":"bytes18","nodeType":"ElementaryTypeName","src":"38756:7:47","typeDescriptions":{"typeIdentifier":"t_bytes18","typeString":"bytes18"}},"id":23667,"nodeType":"ArrayTypeName","src":"38756:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes18_$dyn_storage_ptr","typeString":"bytes18[]"}},"visibility":"internal"}],"src":"38755:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23708,"nodeType":"FunctionDefinition","src":"39161:220:47","nodes":[],"body":{"id":23707,"nodeType":"Block","src":"39253:128:47","nodes":[],"statements":[{"assignments":[23698],"declarations":[{"constant":false,"id":23698,"mutability":"mutable","name":"_genericArray","nameLocation":"39276:13:47","nodeType":"VariableDeclaration","scope":23707,"src":"39259:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23696,"name":"bytes32","nodeType":"ElementaryTypeName","src":"39259:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23697,"nodeType":"ArrayTypeName","src":"39259:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23705,"initialValue":{"arguments":[{"id":23701,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23688,"src":"39310:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3139","id":23702,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39318:2:47","typeDescriptions":{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},"value":"19"},{"hexValue":"30","id":23703,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39322:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_19_by_1","typeString":"int_const 19"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23699,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"39292:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23700,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"39303:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"39292:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23704,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39292:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"39259:65:47"},{"AST":{"nativeSrc":"39339:38:47","nodeType":"YulBlock","src":"39339:38:47","statements":[{"nativeSrc":"39347:24:47","nodeType":"YulAssignment","src":"39347:24:47","value":{"name":"_genericArray","nativeSrc":"39358:13:47","nodeType":"YulIdentifier","src":"39358:13:47"},"variableNames":[{"name":"_output","nativeSrc":"39347:7:47","nodeType":"YulIdentifier","src":"39347:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23698,"isOffset":false,"isSlot":false,"src":"39358:13:47","valueSize":1},{"declaration":23692,"isOffset":false,"isSlot":false,"src":"39347:7:47","valueSize":1}],"id":23706,"nodeType":"InlineAssembly","src":"39330:47:47"}]},"documentation":{"id":23685,"nodeType":"StructuredDocumentation","src":"38914:244:47","text":" @notice Decodes a slice into an array of bytes19.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes19."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes19","nameLocation":"39170:19:47","parameters":{"id":23689,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23688,"mutability":"mutable","name":"_input","nameLocation":"39196:6:47","nodeType":"VariableDeclaration","scope":23708,"src":"39190:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23687,"nodeType":"UserDefinedTypeName","pathNode":{"id":23686,"name":"Slice","nameLocations":["39190:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"39190:5:47"},"referencedDeclaration":10067,"src":"39190:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"39189:14:47"},"returnParameters":{"id":23693,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23692,"mutability":"mutable","name":"_output","nameLocation":"39244:7:47","nodeType":"VariableDeclaration","scope":23708,"src":"39227:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes19_$dyn_memory_ptr","typeString":"bytes19[]"},"typeName":{"baseType":{"id":23690,"name":"bytes19","nodeType":"ElementaryTypeName","src":"39227:7:47","typeDescriptions":{"typeIdentifier":"t_bytes19","typeString":"bytes19"}},"id":23691,"nodeType":"ArrayTypeName","src":"39227:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes19_$dyn_storage_ptr","typeString":"bytes19[]"}},"visibility":"internal"}],"src":"39226:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23732,"nodeType":"FunctionDefinition","src":"39632:220:47","nodes":[],"body":{"id":23731,"nodeType":"Block","src":"39724:128:47","nodes":[],"statements":[{"assignments":[23722],"declarations":[{"constant":false,"id":23722,"mutability":"mutable","name":"_genericArray","nameLocation":"39747:13:47","nodeType":"VariableDeclaration","scope":23731,"src":"39730:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23720,"name":"bytes32","nodeType":"ElementaryTypeName","src":"39730:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23721,"nodeType":"ArrayTypeName","src":"39730:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23729,"initialValue":{"arguments":[{"id":23725,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23712,"src":"39781:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3230","id":23726,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39789:2:47","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},{"hexValue":"30","id":23727,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"39793:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23723,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"39763:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23724,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"39774:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"39763:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23728,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"39763:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"39730:65:47"},{"AST":{"nativeSrc":"39810:38:47","nodeType":"YulBlock","src":"39810:38:47","statements":[{"nativeSrc":"39818:24:47","nodeType":"YulAssignment","src":"39818:24:47","value":{"name":"_genericArray","nativeSrc":"39829:13:47","nodeType":"YulIdentifier","src":"39829:13:47"},"variableNames":[{"name":"_output","nativeSrc":"39818:7:47","nodeType":"YulIdentifier","src":"39818:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23722,"isOffset":false,"isSlot":false,"src":"39829:13:47","valueSize":1},{"declaration":23716,"isOffset":false,"isSlot":false,"src":"39818:7:47","valueSize":1}],"id":23730,"nodeType":"InlineAssembly","src":"39801:47:47"}]},"documentation":{"id":23709,"nodeType":"StructuredDocumentation","src":"39385:244:47","text":" @notice Decodes a slice into an array of bytes20.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes20."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes20","nameLocation":"39641:19:47","parameters":{"id":23713,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23712,"mutability":"mutable","name":"_input","nameLocation":"39667:6:47","nodeType":"VariableDeclaration","scope":23732,"src":"39661:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23711,"nodeType":"UserDefinedTypeName","pathNode":{"id":23710,"name":"Slice","nameLocations":["39661:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"39661:5:47"},"referencedDeclaration":10067,"src":"39661:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"39660:14:47"},"returnParameters":{"id":23717,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23716,"mutability":"mutable","name":"_output","nameLocation":"39715:7:47","nodeType":"VariableDeclaration","scope":23732,"src":"39698:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes20_$dyn_memory_ptr","typeString":"bytes20[]"},"typeName":{"baseType":{"id":23714,"name":"bytes20","nodeType":"ElementaryTypeName","src":"39698:7:47","typeDescriptions":{"typeIdentifier":"t_bytes20","typeString":"bytes20"}},"id":23715,"nodeType":"ArrayTypeName","src":"39698:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes20_$dyn_storage_ptr","typeString":"bytes20[]"}},"visibility":"internal"}],"src":"39697:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23756,"nodeType":"FunctionDefinition","src":"40103:220:47","nodes":[],"body":{"id":23755,"nodeType":"Block","src":"40195:128:47","nodes":[],"statements":[{"assignments":[23746],"declarations":[{"constant":false,"id":23746,"mutability":"mutable","name":"_genericArray","nameLocation":"40218:13:47","nodeType":"VariableDeclaration","scope":23755,"src":"40201:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23744,"name":"bytes32","nodeType":"ElementaryTypeName","src":"40201:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23745,"nodeType":"ArrayTypeName","src":"40201:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23753,"initialValue":{"arguments":[{"id":23749,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23736,"src":"40252:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3231","id":23750,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40260:2:47","typeDescriptions":{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},"value":"21"},{"hexValue":"30","id":23751,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40264:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_21_by_1","typeString":"int_const 21"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23747,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"40234:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23748,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40245:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"40234:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23752,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40234:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"40201:65:47"},{"AST":{"nativeSrc":"40281:38:47","nodeType":"YulBlock","src":"40281:38:47","statements":[{"nativeSrc":"40289:24:47","nodeType":"YulAssignment","src":"40289:24:47","value":{"name":"_genericArray","nativeSrc":"40300:13:47","nodeType":"YulIdentifier","src":"40300:13:47"},"variableNames":[{"name":"_output","nativeSrc":"40289:7:47","nodeType":"YulIdentifier","src":"40289:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23746,"isOffset":false,"isSlot":false,"src":"40300:13:47","valueSize":1},{"declaration":23740,"isOffset":false,"isSlot":false,"src":"40289:7:47","valueSize":1}],"id":23754,"nodeType":"InlineAssembly","src":"40272:47:47"}]},"documentation":{"id":23733,"nodeType":"StructuredDocumentation","src":"39856:244:47","text":" @notice Decodes a slice into an array of bytes21.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes21."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes21","nameLocation":"40112:19:47","parameters":{"id":23737,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23736,"mutability":"mutable","name":"_input","nameLocation":"40138:6:47","nodeType":"VariableDeclaration","scope":23756,"src":"40132:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23735,"nodeType":"UserDefinedTypeName","pathNode":{"id":23734,"name":"Slice","nameLocations":["40132:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"40132:5:47"},"referencedDeclaration":10067,"src":"40132:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"40131:14:47"},"returnParameters":{"id":23741,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23740,"mutability":"mutable","name":"_output","nameLocation":"40186:7:47","nodeType":"VariableDeclaration","scope":23756,"src":"40169:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes21_$dyn_memory_ptr","typeString":"bytes21[]"},"typeName":{"baseType":{"id":23738,"name":"bytes21","nodeType":"ElementaryTypeName","src":"40169:7:47","typeDescriptions":{"typeIdentifier":"t_bytes21","typeString":"bytes21"}},"id":23739,"nodeType":"ArrayTypeName","src":"40169:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes21_$dyn_storage_ptr","typeString":"bytes21[]"}},"visibility":"internal"}],"src":"40168:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23780,"nodeType":"FunctionDefinition","src":"40574:220:47","nodes":[],"body":{"id":23779,"nodeType":"Block","src":"40666:128:47","nodes":[],"statements":[{"assignments":[23770],"declarations":[{"constant":false,"id":23770,"mutability":"mutable","name":"_genericArray","nameLocation":"40689:13:47","nodeType":"VariableDeclaration","scope":23779,"src":"40672:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23768,"name":"bytes32","nodeType":"ElementaryTypeName","src":"40672:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23769,"nodeType":"ArrayTypeName","src":"40672:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23777,"initialValue":{"arguments":[{"id":23773,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23760,"src":"40723:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3232","id":23774,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40731:2:47","typeDescriptions":{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},"value":"22"},{"hexValue":"30","id":23775,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"40735:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_22_by_1","typeString":"int_const 22"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23771,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"40705:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23772,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"40716:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"40705:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23776,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"40705:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"40672:65:47"},{"AST":{"nativeSrc":"40752:38:47","nodeType":"YulBlock","src":"40752:38:47","statements":[{"nativeSrc":"40760:24:47","nodeType":"YulAssignment","src":"40760:24:47","value":{"name":"_genericArray","nativeSrc":"40771:13:47","nodeType":"YulIdentifier","src":"40771:13:47"},"variableNames":[{"name":"_output","nativeSrc":"40760:7:47","nodeType":"YulIdentifier","src":"40760:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23770,"isOffset":false,"isSlot":false,"src":"40771:13:47","valueSize":1},{"declaration":23764,"isOffset":false,"isSlot":false,"src":"40760:7:47","valueSize":1}],"id":23778,"nodeType":"InlineAssembly","src":"40743:47:47"}]},"documentation":{"id":23757,"nodeType":"StructuredDocumentation","src":"40327:244:47","text":" @notice Decodes a slice into an array of bytes22.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes22."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes22","nameLocation":"40583:19:47","parameters":{"id":23761,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23760,"mutability":"mutable","name":"_input","nameLocation":"40609:6:47","nodeType":"VariableDeclaration","scope":23780,"src":"40603:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23759,"nodeType":"UserDefinedTypeName","pathNode":{"id":23758,"name":"Slice","nameLocations":["40603:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"40603:5:47"},"referencedDeclaration":10067,"src":"40603:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"40602:14:47"},"returnParameters":{"id":23765,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23764,"mutability":"mutable","name":"_output","nameLocation":"40657:7:47","nodeType":"VariableDeclaration","scope":23780,"src":"40640:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes22_$dyn_memory_ptr","typeString":"bytes22[]"},"typeName":{"baseType":{"id":23762,"name":"bytes22","nodeType":"ElementaryTypeName","src":"40640:7:47","typeDescriptions":{"typeIdentifier":"t_bytes22","typeString":"bytes22"}},"id":23763,"nodeType":"ArrayTypeName","src":"40640:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes22_$dyn_storage_ptr","typeString":"bytes22[]"}},"visibility":"internal"}],"src":"40639:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23804,"nodeType":"FunctionDefinition","src":"41045:220:47","nodes":[],"body":{"id":23803,"nodeType":"Block","src":"41137:128:47","nodes":[],"statements":[{"assignments":[23794],"declarations":[{"constant":false,"id":23794,"mutability":"mutable","name":"_genericArray","nameLocation":"41160:13:47","nodeType":"VariableDeclaration","scope":23803,"src":"41143:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23792,"name":"bytes32","nodeType":"ElementaryTypeName","src":"41143:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23793,"nodeType":"ArrayTypeName","src":"41143:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23801,"initialValue":{"arguments":[{"id":23797,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23784,"src":"41194:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3233","id":23798,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41202:2:47","typeDescriptions":{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},"value":"23"},{"hexValue":"30","id":23799,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41206:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_23_by_1","typeString":"int_const 23"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23795,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"41176:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23796,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"41187:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"41176:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23800,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41176:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"41143:65:47"},{"AST":{"nativeSrc":"41223:38:47","nodeType":"YulBlock","src":"41223:38:47","statements":[{"nativeSrc":"41231:24:47","nodeType":"YulAssignment","src":"41231:24:47","value":{"name":"_genericArray","nativeSrc":"41242:13:47","nodeType":"YulIdentifier","src":"41242:13:47"},"variableNames":[{"name":"_output","nativeSrc":"41231:7:47","nodeType":"YulIdentifier","src":"41231:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23794,"isOffset":false,"isSlot":false,"src":"41242:13:47","valueSize":1},{"declaration":23788,"isOffset":false,"isSlot":false,"src":"41231:7:47","valueSize":1}],"id":23802,"nodeType":"InlineAssembly","src":"41214:47:47"}]},"documentation":{"id":23781,"nodeType":"StructuredDocumentation","src":"40798:244:47","text":" @notice Decodes a slice into an array of bytes23.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes23."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes23","nameLocation":"41054:19:47","parameters":{"id":23785,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23784,"mutability":"mutable","name":"_input","nameLocation":"41080:6:47","nodeType":"VariableDeclaration","scope":23804,"src":"41074:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23783,"nodeType":"UserDefinedTypeName","pathNode":{"id":23782,"name":"Slice","nameLocations":["41074:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"41074:5:47"},"referencedDeclaration":10067,"src":"41074:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"41073:14:47"},"returnParameters":{"id":23789,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23788,"mutability":"mutable","name":"_output","nameLocation":"41128:7:47","nodeType":"VariableDeclaration","scope":23804,"src":"41111:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes23_$dyn_memory_ptr","typeString":"bytes23[]"},"typeName":{"baseType":{"id":23786,"name":"bytes23","nodeType":"ElementaryTypeName","src":"41111:7:47","typeDescriptions":{"typeIdentifier":"t_bytes23","typeString":"bytes23"}},"id":23787,"nodeType":"ArrayTypeName","src":"41111:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes23_$dyn_storage_ptr","typeString":"bytes23[]"}},"visibility":"internal"}],"src":"41110:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23828,"nodeType":"FunctionDefinition","src":"41516:220:47","nodes":[],"body":{"id":23827,"nodeType":"Block","src":"41608:128:47","nodes":[],"statements":[{"assignments":[23818],"declarations":[{"constant":false,"id":23818,"mutability":"mutable","name":"_genericArray","nameLocation":"41631:13:47","nodeType":"VariableDeclaration","scope":23827,"src":"41614:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23816,"name":"bytes32","nodeType":"ElementaryTypeName","src":"41614:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23817,"nodeType":"ArrayTypeName","src":"41614:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23825,"initialValue":{"arguments":[{"id":23821,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23808,"src":"41665:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3234","id":23822,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41673:2:47","typeDescriptions":{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},"value":"24"},{"hexValue":"30","id":23823,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"41677:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_24_by_1","typeString":"int_const 24"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23819,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"41647:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23820,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"41658:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"41647:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23824,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"41647:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"41614:65:47"},{"AST":{"nativeSrc":"41694:38:47","nodeType":"YulBlock","src":"41694:38:47","statements":[{"nativeSrc":"41702:24:47","nodeType":"YulAssignment","src":"41702:24:47","value":{"name":"_genericArray","nativeSrc":"41713:13:47","nodeType":"YulIdentifier","src":"41713:13:47"},"variableNames":[{"name":"_output","nativeSrc":"41702:7:47","nodeType":"YulIdentifier","src":"41702:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23818,"isOffset":false,"isSlot":false,"src":"41713:13:47","valueSize":1},{"declaration":23812,"isOffset":false,"isSlot":false,"src":"41702:7:47","valueSize":1}],"id":23826,"nodeType":"InlineAssembly","src":"41685:47:47"}]},"documentation":{"id":23805,"nodeType":"StructuredDocumentation","src":"41269:244:47","text":" @notice Decodes a slice into an array of bytes24.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes24."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes24","nameLocation":"41525:19:47","parameters":{"id":23809,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23808,"mutability":"mutable","name":"_input","nameLocation":"41551:6:47","nodeType":"VariableDeclaration","scope":23828,"src":"41545:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23807,"nodeType":"UserDefinedTypeName","pathNode":{"id":23806,"name":"Slice","nameLocations":["41545:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"41545:5:47"},"referencedDeclaration":10067,"src":"41545:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"41544:14:47"},"returnParameters":{"id":23813,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23812,"mutability":"mutable","name":"_output","nameLocation":"41599:7:47","nodeType":"VariableDeclaration","scope":23828,"src":"41582:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes24_$dyn_memory_ptr","typeString":"bytes24[]"},"typeName":{"baseType":{"id":23810,"name":"bytes24","nodeType":"ElementaryTypeName","src":"41582:7:47","typeDescriptions":{"typeIdentifier":"t_bytes24","typeString":"bytes24"}},"id":23811,"nodeType":"ArrayTypeName","src":"41582:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes24_$dyn_storage_ptr","typeString":"bytes24[]"}},"visibility":"internal"}],"src":"41581:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23852,"nodeType":"FunctionDefinition","src":"41987:220:47","nodes":[],"body":{"id":23851,"nodeType":"Block","src":"42079:128:47","nodes":[],"statements":[{"assignments":[23842],"declarations":[{"constant":false,"id":23842,"mutability":"mutable","name":"_genericArray","nameLocation":"42102:13:47","nodeType":"VariableDeclaration","scope":23851,"src":"42085:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23840,"name":"bytes32","nodeType":"ElementaryTypeName","src":"42085:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23841,"nodeType":"ArrayTypeName","src":"42085:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23849,"initialValue":{"arguments":[{"id":23845,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23832,"src":"42136:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3235","id":23846,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42144:2:47","typeDescriptions":{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},"value":"25"},{"hexValue":"30","id":23847,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42148:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_25_by_1","typeString":"int_const 25"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23843,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"42118:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23844,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"42129:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"42118:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23848,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42118:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"42085:65:47"},{"AST":{"nativeSrc":"42165:38:47","nodeType":"YulBlock","src":"42165:38:47","statements":[{"nativeSrc":"42173:24:47","nodeType":"YulAssignment","src":"42173:24:47","value":{"name":"_genericArray","nativeSrc":"42184:13:47","nodeType":"YulIdentifier","src":"42184:13:47"},"variableNames":[{"name":"_output","nativeSrc":"42173:7:47","nodeType":"YulIdentifier","src":"42173:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23842,"isOffset":false,"isSlot":false,"src":"42184:13:47","valueSize":1},{"declaration":23836,"isOffset":false,"isSlot":false,"src":"42173:7:47","valueSize":1}],"id":23850,"nodeType":"InlineAssembly","src":"42156:47:47"}]},"documentation":{"id":23829,"nodeType":"StructuredDocumentation","src":"41740:244:47","text":" @notice Decodes a slice into an array of bytes25.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes25."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes25","nameLocation":"41996:19:47","parameters":{"id":23833,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23832,"mutability":"mutable","name":"_input","nameLocation":"42022:6:47","nodeType":"VariableDeclaration","scope":23852,"src":"42016:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23831,"nodeType":"UserDefinedTypeName","pathNode":{"id":23830,"name":"Slice","nameLocations":["42016:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"42016:5:47"},"referencedDeclaration":10067,"src":"42016:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"42015:14:47"},"returnParameters":{"id":23837,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23836,"mutability":"mutable","name":"_output","nameLocation":"42070:7:47","nodeType":"VariableDeclaration","scope":23852,"src":"42053:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes25_$dyn_memory_ptr","typeString":"bytes25[]"},"typeName":{"baseType":{"id":23834,"name":"bytes25","nodeType":"ElementaryTypeName","src":"42053:7:47","typeDescriptions":{"typeIdentifier":"t_bytes25","typeString":"bytes25"}},"id":23835,"nodeType":"ArrayTypeName","src":"42053:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes25_$dyn_storage_ptr","typeString":"bytes25[]"}},"visibility":"internal"}],"src":"42052:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23876,"nodeType":"FunctionDefinition","src":"42458:220:47","nodes":[],"body":{"id":23875,"nodeType":"Block","src":"42550:128:47","nodes":[],"statements":[{"assignments":[23866],"declarations":[{"constant":false,"id":23866,"mutability":"mutable","name":"_genericArray","nameLocation":"42573:13:47","nodeType":"VariableDeclaration","scope":23875,"src":"42556:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23864,"name":"bytes32","nodeType":"ElementaryTypeName","src":"42556:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23865,"nodeType":"ArrayTypeName","src":"42556:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23873,"initialValue":{"arguments":[{"id":23869,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23856,"src":"42607:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3236","id":23870,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42615:2:47","typeDescriptions":{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},"value":"26"},{"hexValue":"30","id":23871,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"42619:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_26_by_1","typeString":"int_const 26"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23867,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"42589:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23868,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"42600:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"42589:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23872,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"42589:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"42556:65:47"},{"AST":{"nativeSrc":"42636:38:47","nodeType":"YulBlock","src":"42636:38:47","statements":[{"nativeSrc":"42644:24:47","nodeType":"YulAssignment","src":"42644:24:47","value":{"name":"_genericArray","nativeSrc":"42655:13:47","nodeType":"YulIdentifier","src":"42655:13:47"},"variableNames":[{"name":"_output","nativeSrc":"42644:7:47","nodeType":"YulIdentifier","src":"42644:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23866,"isOffset":false,"isSlot":false,"src":"42655:13:47","valueSize":1},{"declaration":23860,"isOffset":false,"isSlot":false,"src":"42644:7:47","valueSize":1}],"id":23874,"nodeType":"InlineAssembly","src":"42627:47:47"}]},"documentation":{"id":23853,"nodeType":"StructuredDocumentation","src":"42211:244:47","text":" @notice Decodes a slice into an array of bytes26.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes26."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes26","nameLocation":"42467:19:47","parameters":{"id":23857,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23856,"mutability":"mutable","name":"_input","nameLocation":"42493:6:47","nodeType":"VariableDeclaration","scope":23876,"src":"42487:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23855,"nodeType":"UserDefinedTypeName","pathNode":{"id":23854,"name":"Slice","nameLocations":["42487:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"42487:5:47"},"referencedDeclaration":10067,"src":"42487:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"42486:14:47"},"returnParameters":{"id":23861,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23860,"mutability":"mutable","name":"_output","nameLocation":"42541:7:47","nodeType":"VariableDeclaration","scope":23876,"src":"42524:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes26_$dyn_memory_ptr","typeString":"bytes26[]"},"typeName":{"baseType":{"id":23858,"name":"bytes26","nodeType":"ElementaryTypeName","src":"42524:7:47","typeDescriptions":{"typeIdentifier":"t_bytes26","typeString":"bytes26"}},"id":23859,"nodeType":"ArrayTypeName","src":"42524:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes26_$dyn_storage_ptr","typeString":"bytes26[]"}},"visibility":"internal"}],"src":"42523:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23900,"nodeType":"FunctionDefinition","src":"42929:220:47","nodes":[],"body":{"id":23899,"nodeType":"Block","src":"43021:128:47","nodes":[],"statements":[{"assignments":[23890],"declarations":[{"constant":false,"id":23890,"mutability":"mutable","name":"_genericArray","nameLocation":"43044:13:47","nodeType":"VariableDeclaration","scope":23899,"src":"43027:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23888,"name":"bytes32","nodeType":"ElementaryTypeName","src":"43027:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23889,"nodeType":"ArrayTypeName","src":"43027:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23897,"initialValue":{"arguments":[{"id":23893,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23880,"src":"43078:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3237","id":23894,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43086:2:47","typeDescriptions":{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},"value":"27"},{"hexValue":"30","id":23895,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43090:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_27_by_1","typeString":"int_const 27"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23891,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"43060:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23892,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43071:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"43060:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23896,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43060:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"43027:65:47"},{"AST":{"nativeSrc":"43107:38:47","nodeType":"YulBlock","src":"43107:38:47","statements":[{"nativeSrc":"43115:24:47","nodeType":"YulAssignment","src":"43115:24:47","value":{"name":"_genericArray","nativeSrc":"43126:13:47","nodeType":"YulIdentifier","src":"43126:13:47"},"variableNames":[{"name":"_output","nativeSrc":"43115:7:47","nodeType":"YulIdentifier","src":"43115:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23890,"isOffset":false,"isSlot":false,"src":"43126:13:47","valueSize":1},{"declaration":23884,"isOffset":false,"isSlot":false,"src":"43115:7:47","valueSize":1}],"id":23898,"nodeType":"InlineAssembly","src":"43098:47:47"}]},"documentation":{"id":23877,"nodeType":"StructuredDocumentation","src":"42682:244:47","text":" @notice Decodes a slice into an array of bytes27.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes27."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes27","nameLocation":"42938:19:47","parameters":{"id":23881,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23880,"mutability":"mutable","name":"_input","nameLocation":"42964:6:47","nodeType":"VariableDeclaration","scope":23900,"src":"42958:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23879,"nodeType":"UserDefinedTypeName","pathNode":{"id":23878,"name":"Slice","nameLocations":["42958:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"42958:5:47"},"referencedDeclaration":10067,"src":"42958:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"42957:14:47"},"returnParameters":{"id":23885,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23884,"mutability":"mutable","name":"_output","nameLocation":"43012:7:47","nodeType":"VariableDeclaration","scope":23900,"src":"42995:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes27_$dyn_memory_ptr","typeString":"bytes27[]"},"typeName":{"baseType":{"id":23882,"name":"bytes27","nodeType":"ElementaryTypeName","src":"42995:7:47","typeDescriptions":{"typeIdentifier":"t_bytes27","typeString":"bytes27"}},"id":23883,"nodeType":"ArrayTypeName","src":"42995:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes27_$dyn_storage_ptr","typeString":"bytes27[]"}},"visibility":"internal"}],"src":"42994:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23924,"nodeType":"FunctionDefinition","src":"43400:220:47","nodes":[],"body":{"id":23923,"nodeType":"Block","src":"43492:128:47","nodes":[],"statements":[{"assignments":[23914],"declarations":[{"constant":false,"id":23914,"mutability":"mutable","name":"_genericArray","nameLocation":"43515:13:47","nodeType":"VariableDeclaration","scope":23923,"src":"43498:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23912,"name":"bytes32","nodeType":"ElementaryTypeName","src":"43498:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23913,"nodeType":"ArrayTypeName","src":"43498:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23921,"initialValue":{"arguments":[{"id":23917,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23904,"src":"43549:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3238","id":23918,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43557:2:47","typeDescriptions":{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},"value":"28"},{"hexValue":"30","id":23919,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"43561:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_28_by_1","typeString":"int_const 28"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23915,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"43531:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23916,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"43542:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"43531:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23920,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"43531:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"43498:65:47"},{"AST":{"nativeSrc":"43578:38:47","nodeType":"YulBlock","src":"43578:38:47","statements":[{"nativeSrc":"43586:24:47","nodeType":"YulAssignment","src":"43586:24:47","value":{"name":"_genericArray","nativeSrc":"43597:13:47","nodeType":"YulIdentifier","src":"43597:13:47"},"variableNames":[{"name":"_output","nativeSrc":"43586:7:47","nodeType":"YulIdentifier","src":"43586:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23914,"isOffset":false,"isSlot":false,"src":"43597:13:47","valueSize":1},{"declaration":23908,"isOffset":false,"isSlot":false,"src":"43586:7:47","valueSize":1}],"id":23922,"nodeType":"InlineAssembly","src":"43569:47:47"}]},"documentation":{"id":23901,"nodeType":"StructuredDocumentation","src":"43153:244:47","text":" @notice Decodes a slice into an array of bytes28.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes28."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes28","nameLocation":"43409:19:47","parameters":{"id":23905,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23904,"mutability":"mutable","name":"_input","nameLocation":"43435:6:47","nodeType":"VariableDeclaration","scope":23924,"src":"43429:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23903,"nodeType":"UserDefinedTypeName","pathNode":{"id":23902,"name":"Slice","nameLocations":["43429:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"43429:5:47"},"referencedDeclaration":10067,"src":"43429:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"43428:14:47"},"returnParameters":{"id":23909,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23908,"mutability":"mutable","name":"_output","nameLocation":"43483:7:47","nodeType":"VariableDeclaration","scope":23924,"src":"43466:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes28_$dyn_memory_ptr","typeString":"bytes28[]"},"typeName":{"baseType":{"id":23906,"name":"bytes28","nodeType":"ElementaryTypeName","src":"43466:7:47","typeDescriptions":{"typeIdentifier":"t_bytes28","typeString":"bytes28"}},"id":23907,"nodeType":"ArrayTypeName","src":"43466:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes28_$dyn_storage_ptr","typeString":"bytes28[]"}},"visibility":"internal"}],"src":"43465:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23948,"nodeType":"FunctionDefinition","src":"43871:220:47","nodes":[],"body":{"id":23947,"nodeType":"Block","src":"43963:128:47","nodes":[],"statements":[{"assignments":[23938],"declarations":[{"constant":false,"id":23938,"mutability":"mutable","name":"_genericArray","nameLocation":"43986:13:47","nodeType":"VariableDeclaration","scope":23947,"src":"43969:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23936,"name":"bytes32","nodeType":"ElementaryTypeName","src":"43969:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23937,"nodeType":"ArrayTypeName","src":"43969:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23945,"initialValue":{"arguments":[{"id":23941,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23928,"src":"44020:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3239","id":23942,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44028:2:47","typeDescriptions":{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},"value":"29"},{"hexValue":"30","id":23943,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44032:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_29_by_1","typeString":"int_const 29"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23939,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"44002:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23940,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"44013:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"44002:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23944,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44002:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"43969:65:47"},{"AST":{"nativeSrc":"44049:38:47","nodeType":"YulBlock","src":"44049:38:47","statements":[{"nativeSrc":"44057:24:47","nodeType":"YulAssignment","src":"44057:24:47","value":{"name":"_genericArray","nativeSrc":"44068:13:47","nodeType":"YulIdentifier","src":"44068:13:47"},"variableNames":[{"name":"_output","nativeSrc":"44057:7:47","nodeType":"YulIdentifier","src":"44057:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23938,"isOffset":false,"isSlot":false,"src":"44068:13:47","valueSize":1},{"declaration":23932,"isOffset":false,"isSlot":false,"src":"44057:7:47","valueSize":1}],"id":23946,"nodeType":"InlineAssembly","src":"44040:47:47"}]},"documentation":{"id":23925,"nodeType":"StructuredDocumentation","src":"43624:244:47","text":" @notice Decodes a slice into an array of bytes29.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes29."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes29","nameLocation":"43880:19:47","parameters":{"id":23929,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23928,"mutability":"mutable","name":"_input","nameLocation":"43906:6:47","nodeType":"VariableDeclaration","scope":23948,"src":"43900:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23927,"nodeType":"UserDefinedTypeName","pathNode":{"id":23926,"name":"Slice","nameLocations":["43900:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"43900:5:47"},"referencedDeclaration":10067,"src":"43900:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"43899:14:47"},"returnParameters":{"id":23933,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23932,"mutability":"mutable","name":"_output","nameLocation":"43954:7:47","nodeType":"VariableDeclaration","scope":23948,"src":"43937:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes29_$dyn_memory_ptr","typeString":"bytes29[]"},"typeName":{"baseType":{"id":23930,"name":"bytes29","nodeType":"ElementaryTypeName","src":"43937:7:47","typeDescriptions":{"typeIdentifier":"t_bytes29","typeString":"bytes29"}},"id":23931,"nodeType":"ArrayTypeName","src":"43937:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes29_$dyn_storage_ptr","typeString":"bytes29[]"}},"visibility":"internal"}],"src":"43936:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23972,"nodeType":"FunctionDefinition","src":"44342:220:47","nodes":[],"body":{"id":23971,"nodeType":"Block","src":"44434:128:47","nodes":[],"statements":[{"assignments":[23962],"declarations":[{"constant":false,"id":23962,"mutability":"mutable","name":"_genericArray","nameLocation":"44457:13:47","nodeType":"VariableDeclaration","scope":23971,"src":"44440:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23960,"name":"bytes32","nodeType":"ElementaryTypeName","src":"44440:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23961,"nodeType":"ArrayTypeName","src":"44440:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23969,"initialValue":{"arguments":[{"id":23965,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23952,"src":"44491:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3330","id":23966,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44499:2:47","typeDescriptions":{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},"value":"30"},{"hexValue":"30","id":23967,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44503:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_30_by_1","typeString":"int_const 30"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23963,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"44473:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23964,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"44484:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"44473:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23968,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44473:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"44440:65:47"},{"AST":{"nativeSrc":"44520:38:47","nodeType":"YulBlock","src":"44520:38:47","statements":[{"nativeSrc":"44528:24:47","nodeType":"YulAssignment","src":"44528:24:47","value":{"name":"_genericArray","nativeSrc":"44539:13:47","nodeType":"YulIdentifier","src":"44539:13:47"},"variableNames":[{"name":"_output","nativeSrc":"44528:7:47","nodeType":"YulIdentifier","src":"44528:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23962,"isOffset":false,"isSlot":false,"src":"44539:13:47","valueSize":1},{"declaration":23956,"isOffset":false,"isSlot":false,"src":"44528:7:47","valueSize":1}],"id":23970,"nodeType":"InlineAssembly","src":"44511:47:47"}]},"documentation":{"id":23949,"nodeType":"StructuredDocumentation","src":"44095:244:47","text":" @notice Decodes a slice into an array of bytes30.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes30."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes30","nameLocation":"44351:19:47","parameters":{"id":23953,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23952,"mutability":"mutable","name":"_input","nameLocation":"44377:6:47","nodeType":"VariableDeclaration","scope":23972,"src":"44371:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23951,"nodeType":"UserDefinedTypeName","pathNode":{"id":23950,"name":"Slice","nameLocations":["44371:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"44371:5:47"},"referencedDeclaration":10067,"src":"44371:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"44370:14:47"},"returnParameters":{"id":23957,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23956,"mutability":"mutable","name":"_output","nameLocation":"44425:7:47","nodeType":"VariableDeclaration","scope":23972,"src":"44408:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes30_$dyn_memory_ptr","typeString":"bytes30[]"},"typeName":{"baseType":{"id":23954,"name":"bytes30","nodeType":"ElementaryTypeName","src":"44408:7:47","typeDescriptions":{"typeIdentifier":"t_bytes30","typeString":"bytes30"}},"id":23955,"nodeType":"ArrayTypeName","src":"44408:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes30_$dyn_storage_ptr","typeString":"bytes30[]"}},"visibility":"internal"}],"src":"44407:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":23996,"nodeType":"FunctionDefinition","src":"44813:220:47","nodes":[],"body":{"id":23995,"nodeType":"Block","src":"44905:128:47","nodes":[],"statements":[{"assignments":[23986],"declarations":[{"constant":false,"id":23986,"mutability":"mutable","name":"_genericArray","nameLocation":"44928:13:47","nodeType":"VariableDeclaration","scope":23995,"src":"44911:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":23984,"name":"bytes32","nodeType":"ElementaryTypeName","src":"44911:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":23985,"nodeType":"ArrayTypeName","src":"44911:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":23993,"initialValue":{"arguments":[{"id":23989,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":23976,"src":"44962:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3331","id":23990,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44970:2:47","typeDescriptions":{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},"value":"31"},{"hexValue":"30","id":23991,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"44974:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_31_by_1","typeString":"int_const 31"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":23987,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"44944:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":23988,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"44955:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"44944:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":23992,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"44944:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"44911:65:47"},{"AST":{"nativeSrc":"44991:38:47","nodeType":"YulBlock","src":"44991:38:47","statements":[{"nativeSrc":"44999:24:47","nodeType":"YulAssignment","src":"44999:24:47","value":{"name":"_genericArray","nativeSrc":"45010:13:47","nodeType":"YulIdentifier","src":"45010:13:47"},"variableNames":[{"name":"_output","nativeSrc":"44999:7:47","nodeType":"YulIdentifier","src":"44999:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":23986,"isOffset":false,"isSlot":false,"src":"45010:13:47","valueSize":1},{"declaration":23980,"isOffset":false,"isSlot":false,"src":"44999:7:47","valueSize":1}],"id":23994,"nodeType":"InlineAssembly","src":"44982:47:47"}]},"documentation":{"id":23973,"nodeType":"StructuredDocumentation","src":"44566:244:47","text":" @notice Decodes a slice into an array of bytes31.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes31."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes31","nameLocation":"44822:19:47","parameters":{"id":23977,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23976,"mutability":"mutable","name":"_input","nameLocation":"44848:6:47","nodeType":"VariableDeclaration","scope":23996,"src":"44842:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23975,"nodeType":"UserDefinedTypeName","pathNode":{"id":23974,"name":"Slice","nameLocations":["44842:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"44842:5:47"},"referencedDeclaration":10067,"src":"44842:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"44841:14:47"},"returnParameters":{"id":23981,"nodeType":"ParameterList","parameters":[{"constant":false,"id":23980,"mutability":"mutable","name":"_output","nameLocation":"44896:7:47","nodeType":"VariableDeclaration","scope":23996,"src":"44879:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes31_$dyn_memory_ptr","typeString":"bytes31[]"},"typeName":{"baseType":{"id":23978,"name":"bytes31","nodeType":"ElementaryTypeName","src":"44879:7:47","typeDescriptions":{"typeIdentifier":"t_bytes31","typeString":"bytes31"}},"id":23979,"nodeType":"ArrayTypeName","src":"44879:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes31_$dyn_storage_ptr","typeString":"bytes31[]"}},"visibility":"internal"}],"src":"44878:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":24020,"nodeType":"FunctionDefinition","src":"45284:220:47","nodes":[],"body":{"id":24019,"nodeType":"Block","src":"45376:128:47","nodes":[],"statements":[{"assignments":[24010],"declarations":[{"constant":false,"id":24010,"mutability":"mutable","name":"_genericArray","nameLocation":"45399:13:47","nodeType":"VariableDeclaration","scope":24019,"src":"45382:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":24008,"name":"bytes32","nodeType":"ElementaryTypeName","src":"45382:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":24009,"nodeType":"ArrayTypeName","src":"45382:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":24017,"initialValue":{"arguments":[{"id":24013,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":24000,"src":"45433:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3332","id":24014,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45441:2:47","typeDescriptions":{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},"value":"32"},{"hexValue":"30","id":24015,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45445:1:47","typeDescriptions":{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"},"value":"0"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_32_by_1","typeString":"int_const 32"},{"typeIdentifier":"t_rational_0_by_1","typeString":"int_const 0"}],"expression":{"id":24011,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"45415:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":24012,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45426:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"45415:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":24016,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45415:32:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"45382:65:47"},{"AST":{"nativeSrc":"45462:38:47","nodeType":"YulBlock","src":"45462:38:47","statements":[{"nativeSrc":"45470:24:47","nodeType":"YulAssignment","src":"45470:24:47","value":{"name":"_genericArray","nativeSrc":"45481:13:47","nodeType":"YulIdentifier","src":"45481:13:47"},"variableNames":[{"name":"_output","nativeSrc":"45470:7:47","nodeType":"YulIdentifier","src":"45470:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":24010,"isOffset":false,"isSlot":false,"src":"45481:13:47","valueSize":1},{"declaration":24004,"isOffset":false,"isSlot":false,"src":"45470:7:47","valueSize":1}],"id":24018,"nodeType":"InlineAssembly","src":"45453:47:47"}]},"documentation":{"id":23997,"nodeType":"StructuredDocumentation","src":"45037:244:47","text":" @notice Decodes a slice into an array of bytes32.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bytes32."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bytes32","nameLocation":"45293:19:47","parameters":{"id":24001,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24000,"mutability":"mutable","name":"_input","nameLocation":"45319:6:47","nodeType":"VariableDeclaration","scope":24020,"src":"45313:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":23999,"nodeType":"UserDefinedTypeName","pathNode":{"id":23998,"name":"Slice","nameLocations":["45313:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"45313:5:47"},"referencedDeclaration":10067,"src":"45313:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"45312:14:47"},"returnParameters":{"id":24005,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24004,"mutability":"mutable","name":"_output","nameLocation":"45367:7:47","nodeType":"VariableDeclaration","scope":24020,"src":"45350:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":24002,"name":"bytes32","nodeType":"ElementaryTypeName","src":"45350:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":24003,"nodeType":"ArrayTypeName","src":"45350:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"src":"45349:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":24044,"nodeType":"FunctionDefinition","src":"45749:215:47","nodes":[],"body":{"id":24043,"nodeType":"Block","src":"45835:129:47","nodes":[],"statements":[{"assignments":[24034],"declarations":[{"constant":false,"id":24034,"mutability":"mutable","name":"_genericArray","nameLocation":"45858:13:47","nodeType":"VariableDeclaration","scope":24043,"src":"45841:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":24032,"name":"bytes32","nodeType":"ElementaryTypeName","src":"45841:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":24033,"nodeType":"ArrayTypeName","src":"45841:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":24041,"initialValue":{"arguments":[{"id":24037,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":24024,"src":"45892:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"31","id":24038,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45900:1:47","typeDescriptions":{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},"value":"1"},{"hexValue":"323438","id":24039,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"45903:3:47","typeDescriptions":{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"},"value":"248"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_1_by_1","typeString":"int_const 1"},{"typeIdentifier":"t_rational_248_by_1","typeString":"int_const 248"}],"expression":{"id":24035,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"45874:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":24036,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"45885:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"45874:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":24040,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"45874:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"45841:66:47"},{"AST":{"nativeSrc":"45922:38:47","nodeType":"YulBlock","src":"45922:38:47","statements":[{"nativeSrc":"45930:24:47","nodeType":"YulAssignment","src":"45930:24:47","value":{"name":"_genericArray","nativeSrc":"45941:13:47","nodeType":"YulIdentifier","src":"45941:13:47"},"variableNames":[{"name":"_output","nativeSrc":"45930:7:47","nodeType":"YulIdentifier","src":"45930:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":24034,"isOffset":false,"isSlot":false,"src":"45941:13:47","valueSize":1},{"declaration":24028,"isOffset":false,"isSlot":false,"src":"45930:7:47","valueSize":1}],"id":24042,"nodeType":"InlineAssembly","src":"45913:47:47"}]},"documentation":{"id":24021,"nodeType":"StructuredDocumentation","src":"45508:238:47","text":" @notice Decodes a slice into an array of bool.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of bool."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_bool","nameLocation":"45758:16:47","parameters":{"id":24025,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24024,"mutability":"mutable","name":"_input","nameLocation":"45781:6:47","nodeType":"VariableDeclaration","scope":24044,"src":"45775:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":24023,"nodeType":"UserDefinedTypeName","pathNode":{"id":24022,"name":"Slice","nameLocations":["45775:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"45775:5:47"},"referencedDeclaration":10067,"src":"45775:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"45774:14:47"},"returnParameters":{"id":24029,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24028,"mutability":"mutable","name":"_output","nameLocation":"45826:7:47","nodeType":"VariableDeclaration","scope":24044,"src":"45812:21:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_memory_ptr","typeString":"bool[]"},"typeName":{"baseType":{"id":24026,"name":"bool","nodeType":"ElementaryTypeName","src":"45812:4:47","typeDescriptions":{"typeIdentifier":"t_bool","typeString":"bool"}},"id":24027,"nodeType":"ArrayTypeName","src":"45812:6:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bool_$dyn_storage_ptr","typeString":"bool[]"}},"visibility":"internal"}],"src":"45811:23:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"},{"id":24068,"nodeType":"FunctionDefinition","src":"46215:221:47","nodes":[],"body":{"id":24067,"nodeType":"Block","src":"46307:129:47","nodes":[],"statements":[{"assignments":[24058],"declarations":[{"constant":false,"id":24058,"mutability":"mutable","name":"_genericArray","nameLocation":"46330:13:47","nodeType":"VariableDeclaration","scope":24067,"src":"46313:30:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":24056,"name":"bytes32","nodeType":"ElementaryTypeName","src":"46313:7:47","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":24057,"nodeType":"ArrayTypeName","src":"46313:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"id":24065,"initialValue":{"arguments":[{"id":24061,"name":"_input","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":24048,"src":"46364:6:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},{"hexValue":"3230","id":24062,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46372:2:47","typeDescriptions":{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},"value":"20"},{"hexValue":"3936","id":24063,"isConstant":false,"isLValue":false,"isPure":true,"kind":"number","lValueRequested":false,"nodeType":"Literal","src":"46376:2:47","typeDescriptions":{"typeIdentifier":"t_rational_96_by_1","typeString":"int_const 96"},"value":"96"}],"expression":{"argumentTypes":[{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},{"typeIdentifier":"t_rational_20_by_1","typeString":"int_const 20"},{"typeIdentifier":"t_rational_96_by_1","typeString":"int_const 96"}],"expression":{"id":24059,"name":"TightCoder","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":26498,"src":"46346:10:47","typeDescriptions":{"typeIdentifier":"t_type$_t_contract$_TightCoder_$26498_$","typeString":"type(library TightCoder)"}},"id":24060,"isConstant":false,"isLValue":false,"isPure":false,"lValueRequested":false,"memberLocation":"46357:6:47","memberName":"decode","nodeType":"MemberAccess","referencedDeclaration":26497,"src":"46346:17:47","typeDescriptions":{"typeIdentifier":"t_function_internal_pure$_t_userDefinedValueType$_Slice_$10067_$_t_uint256_$_t_uint256_$returns$_t_array$_t_bytes32_$dyn_memory_ptr_$","typeString":"function (Slice,uint256,uint256) pure returns (bytes32[] memory)"}},"id":24064,"isConstant":false,"isLValue":false,"isPure":false,"kind":"functionCall","lValueRequested":false,"nameLocations":[],"names":[],"nodeType":"FunctionCall","src":"46346:33:47","tryCall":false,"typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[] memory"}},"nodeType":"VariableDeclarationStatement","src":"46313:66:47"},{"AST":{"nativeSrc":"46394:38:47","nodeType":"YulBlock","src":"46394:38:47","statements":[{"nativeSrc":"46402:24:47","nodeType":"YulAssignment","src":"46402:24:47","value":{"name":"_genericArray","nativeSrc":"46413:13:47","nodeType":"YulIdentifier","src":"46413:13:47"},"variableNames":[{"name":"_output","nativeSrc":"46402:7:47","nodeType":"YulIdentifier","src":"46402:7:47"}]}]},"evmVersion":"paris","externalReferences":[{"declaration":24058,"isOffset":false,"isSlot":false,"src":"46413:13:47","valueSize":1},{"declaration":24052,"isOffset":false,"isSlot":false,"src":"46402:7:47","valueSize":1}],"id":24066,"nodeType":"InlineAssembly","src":"46385:47:47"}]},"documentation":{"id":24045,"nodeType":"StructuredDocumentation","src":"45968:244:47","text":" @notice Decodes a slice into an array of address.\n @dev Uses TightCoder for initial decoding, and then assembly for memory conversion.\n @param _input The slice to decode.\n @return _output The decoded array of address."},"implemented":true,"kind":"function","modifiers":[],"name":"decodeArray_address","nameLocation":"46224:19:47","parameters":{"id":24049,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24048,"mutability":"mutable","name":"_input","nameLocation":"46250:6:47","nodeType":"VariableDeclaration","scope":24068,"src":"46244:12:47","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"},"typeName":{"id":24047,"nodeType":"UserDefinedTypeName","pathNode":{"id":24046,"name":"Slice","nameLocations":["46244:5:47"],"nodeType":"IdentifierPath","referencedDeclaration":10067,"src":"46244:5:47"},"referencedDeclaration":10067,"src":"46244:5:47","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Slice_$10067","typeString":"Slice"}},"visibility":"internal"}],"src":"46243:14:47"},"returnParameters":{"id":24053,"nodeType":"ParameterList","parameters":[{"constant":false,"id":24052,"mutability":"mutable","name":"_output","nameLocation":"46298:7:47","nodeType":"VariableDeclaration","scope":24068,"src":"46281:24:47","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_memory_ptr","typeString":"address[]"},"typeName":{"baseType":{"id":24050,"name":"address","nodeType":"ElementaryTypeName","src":"46281:7:47","stateMutability":"nonpayable","typeDescriptions":{"typeIdentifier":"t_address","typeString":"address"}},"id":24051,"nodeType":"ArrayTypeName","src":"46281:9:47","typeDescriptions":{"typeIdentifier":"t_array$_t_address_$dyn_storage_ptr","typeString":"address[]"}},"visibility":"internal"}],"src":"46280:26:47"},"scope":24069,"stateMutability":"pure","virtual":false,"visibility":"internal"}],"abstract":false,"baseContracts":[],"canonicalName":"DecodeSlice","contractDependencies":[],"contractKind":"library","documentation":{"id":21716,"nodeType":"StructuredDocumentation","src":"193:271:47","text":" @title DecodeSlice Library\n @author MUD (https://mud.dev) by Lattice (https://lattice.xyz)\n @notice A library for decoding slices of data into specific data types.\n @dev This library provides functions for decoding slices into arrays of basic uint types."},"fullyImplemented":true,"linearizedBaseContracts":[24069],"name":"DecodeSlice","nameLocation":"473:11:47","scope":24070,"usedErrors":[],"usedEvents":[]}],"license":"MIT"},"id":47}