{"abi":[{"type":"function","name":"getDynamicField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getDynamicFieldSlice","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"data","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getFieldLayout","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getFieldLength","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"}],"outputs":[{"name":"","type":"uint256","internalType":"uint256"}],"stateMutability":"view"},{"type":"function","name":"getKeySchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"keySchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"}],"outputs":[{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"}],"stateMutability":"view"},{"type":"function","name":"getStaticField","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldIndex","type":"uint8","internalType":"uint8"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[{"name":"","type":"bytes32","internalType":"bytes32"}],"stateMutability":"view"},{"type":"function","name":"getValueSchema","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"}],"outputs":[{"name":"valueSchema","type":"bytes32","internalType":"Schema"}],"stateMutability":"view"}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"getDynamicField(bytes32,bytes32[],uint8)":"1e788977","getDynamicFieldLength(bytes32,bytes32[],uint8)":"dbbf0e21","getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":"4dc77d97","getField(bytes32,bytes32[],uint8)":"d03edb8c","getField(bytes32,bytes32[],uint8,bytes32)":"05242d2f","getFieldLayout(bytes32)":"3a77c2c2","getFieldLength(bytes32,bytes32[],uint8)":"a53417ed","getFieldLength(bytes32,bytes32[],uint8,bytes32)":"9f1fcf0a","getKeySchema(bytes32)":"d4285dc2","getRecord(bytes32,bytes32[])":"cc49db7e","getRecord(bytes32,bytes32[],bytes32)":"419b58fd","getStaticField(bytes32,bytes32[],uint8,bytes32)":"8c364d59","getValueSchema(bytes32)":"e228a4a3"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"}],\"name\":\"getDynamicFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"getDynamicFieldSlice\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getField\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getFieldLayout\",\"outputs\":[{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"}],\"name\":\"getFieldLength\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"\",\"type\":\"uint256\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getKeySchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"getRecord\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"getStaticField\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"}],\"name\":\"getValueSchema\",\"outputs\":[{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"kind\":\"dev\",\"methods\":{},\"title\":\"IStoreRead\",\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"getDynamicField(bytes32,bytes32[],uint8)\":{\"notice\":\"Get a single dynamic field from the given tableId and key tuple at the given dynamic field index. (Dynamic field index = field index - number of static fields)\"},\"getDynamicFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Get the byte length of a single dynamic field from the given tableId and key tuple\"},\"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)\":{\"notice\":\"Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout. The slice is unchecked and will return invalid data if `start`:`end` overflow.\"},\"getField(bytes32,bytes32[],uint8)\":{\"notice\":\"Get a single field from the given tableId and key tuple, loading the field layout from storage\"},\"getField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get a single field from the given tableId and key tuple, with the given field layout\"},\"getFieldLength(bytes32,bytes32[],uint8)\":{\"notice\":\"Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage\"},\"getFieldLength(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get the byte length of a single field from the given tableId and key tuple, with the given value field layout\"},\"getRecord(bytes32,bytes32[])\":{\"notice\":\"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage\"},\"getRecord(bytes32,bytes32[],bytes32)\":{\"notice\":\"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout\"},\"getStaticField(bytes32,bytes32[],uint8,bytes32)\":{\"notice\":\"Get a single static field from the given tableId and key tuple, with the given value field layout. Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out. Consumers are expected to truncate the returned value as needed.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/store/src/IStoreRead.sol\":\"IStoreRead\"},\"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/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/EncodedLengths.sol\":{\"keccak256\":\"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09\",\"dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7\",\"dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT\"]},\"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol\":{\"keccak256\":\"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba\",\"dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1\"]},\"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/ISchemaErrors.sol\":{\"keccak256\":\"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d\",\"dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0\",\"dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168\",\"dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicField","outputs":[{"internalType":"bytes","name":"","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getDynamicFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"stateMutability":"view","type":"function","name":"getDynamicFieldSlice","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getField","outputs":[{"internalType":"bytes","name":"data","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLayout","outputs":[{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"}],"stateMutability":"view","type":"function","name":"getFieldLength","outputs":[{"internalType":"uint256","name":"","type":"uint256"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getKeySchema","outputs":[{"internalType":"Schema","name":"keySchema","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"}],"stateMutability":"view","type":"function","name":"getRecord","outputs":[{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"fieldIndex","type":"uint8"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getStaticField","outputs":[{"internalType":"bytes32","name":"","type":"bytes32"}]},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"}],"stateMutability":"view","type":"function","name":"getValueSchema","outputs":[{"internalType":"Schema","name":"valueSchema","type":"bytes32"}]}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"getDynamicField(bytes32,bytes32[],uint8)":{"notice":"Get a single dynamic field from the given tableId and key tuple at the given dynamic field index. (Dynamic field index = field index - number of static fields)"},"getDynamicFieldLength(bytes32,bytes32[],uint8)":{"notice":"Get the byte length of a single dynamic field from the given tableId and key tuple"},"getDynamicFieldSlice(bytes32,bytes32[],uint8,uint256,uint256)":{"notice":"Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout. The slice is unchecked and will return invalid data if `start`:`end` overflow."},"getField(bytes32,bytes32[],uint8)":{"notice":"Get a single field from the given tableId and key tuple, loading the field layout from storage"},"getField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get a single field from the given tableId and key tuple, with the given field layout"},"getFieldLength(bytes32,bytes32[],uint8)":{"notice":"Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage"},"getFieldLength(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get the byte length of a single field from the given tableId and key tuple, with the given value field layout"},"getRecord(bytes32,bytes32[])":{"notice":"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage"},"getRecord(bytes32,bytes32[],bytes32)":{"notice":"Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout"},"getStaticField(bytes32,bytes32[],uint8,bytes32)":{"notice":"Get a single static field from the given tableId and key tuple, with the given value field layout. Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out. Consumers are expected to truncate the returned value as needed."}},"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/IStoreRead.sol":"IStoreRead"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/EncodedLengths.sol":{"keccak256":"0xebc0a6efd611e02b15c05a382382b597fe059eba7f2a9e90da81eeb2f7666774","urls":["bzz-raw://00b2cac12599935e25ea0697e99fc9e6d5af6c1c982761996c16707d9cd6ca09","dweb:/ipfs/QmXccFminkrFtDpNfx6X1pHvW7Tn1nA5XcGu9T17pJyZyK"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x15f698b7eabc062a00ff7a2e02db0ace2dd51f8bd2bc51a45dc0afa88f2ee658","urls":["bzz-raw://f774202c98ad394b3b62be93292512c633dec63bc931c190ed984656c2d54ec7","dweb:/ipfs/Qmd2D9mvP8S88ad2Q8WU54saNVr3Pwc5stPqEKHwcpo8AT"],"license":"MIT"},"node_modules/@latticexyz/store/src/IEncodedLengthsErrors.sol":{"keccak256":"0x06bb49164f44acc8d51df7b75ecf2f7aeb9281f7a3b357cae7d8d58bd1700dfa","urls":["bzz-raw://719027f4cc60fea30ce01cd4f672462f41fac750ae802e91a1a6d37c929e11ba","dweb:/ipfs/QmWi5DM2jT5V5SGP1afRmFyRgFvuZiGDX2PWHwP19HssF1"],"license":"MIT"},"node_modules/@latticexyz/store/src/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/ISchemaErrors.sol":{"keccak256":"0x0ac3de36c9d0058a17fcd7f1a905132215fd16ea3ed3b5109de1de04ddd7c441","urls":["bzz-raw://f83fa2546009cfd16b3b3969dcec1d67c9d818d910177b885ba263b6a948c65d","dweb:/ipfs/QmehywHdvFYBL9BTtoPsVVwJXsEA4Xjk8aPWoHw1R45KeY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b","urls":["bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db","dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x889423054511cf8a83f5dfd65a0f984dc514aba798ef3db139b59d395b2327e2","urls":["bzz-raw://40b9495d455c87db8b063e291ca3973dc3ba1163f09c5d7446241a9e1cb69ed0","dweb:/ipfs/Qmek1JKVjPUpoXnKwu66HfPS9rHstKtWTuBmG8YFxbPEWQ"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7","urls":["bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3","dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"}},"version":1},"ast":{"absolutePath":"node_modules/@latticexyz/store/src/IStoreRead.sol","id":9219,"exportedSymbols":{"EncodedLengths":[7251],"FieldLayout":[7885],"IStoreRead":[9218],"ResourceId":[9486],"Schema":[9581]},"nodeType":"SourceUnit","src":"32:3913:28","nodes":[{"id":9019,"nodeType":"PragmaDirective","src":"32:25:28","nodes":[],"literals":["solidity",">=","0.8",".24"]},{"id":9021,"nodeType":"ImportDirective","src":"59:54:28","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/EncodedLengths.sol","file":"./EncodedLengths.sol","nameLocation":"-1:-1:-1","scope":9219,"sourceUnit":7873,"symbolAliases":[{"foreign":{"id":9020,"name":"EncodedLengths","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7251,"src":"68:14:28","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":9023,"nodeType":"ImportDirective","src":"114:48:28","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/FieldLayout.sol","file":"./FieldLayout.sol","nameLocation":"-1:-1:-1","scope":9219,"sourceUnit":8362,"symbolAliases":[{"foreign":{"id":9022,"name":"FieldLayout","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":7885,"src":"123:11:28","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":9025,"nodeType":"ImportDirective","src":"163:38:28","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/Schema.sol","file":"./Schema.sol","nameLocation":"-1:-1:-1","scope":9219,"sourceUnit":10058,"symbolAliases":[{"foreign":{"id":9024,"name":"Schema","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9581,"src":"172:6:28","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":9027,"nodeType":"ImportDirective","src":"202:46:28","nodes":[],"absolutePath":"node_modules/@latticexyz/store/src/ResourceId.sol","file":"./ResourceId.sol","nameLocation":"-1:-1:-1","scope":9219,"sourceUnit":9568,"symbolAliases":[{"foreign":{"id":9026,"name":"ResourceId","nodeType":"Identifier","overloadedDeclarations":[],"referencedDeclaration":9486,"src":"211:10:28","typeDescriptions":{}},"nameLocation":"-1:-1:-1"}],"unitAlias":""},{"id":9218,"nodeType":"ContractDefinition","src":"345:3599:28","nodes":[{"id":9037,"nodeType":"FunctionDefinition","src":"370:92:28","nodes":[],"functionSelector":"3a77c2c2","implemented":false,"kind":"function","modifiers":[],"name":"getFieldLayout","nameLocation":"379:14:28","parameters":{"id":9032,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9031,"mutability":"mutable","name":"tableId","nameLocation":"405:7:28","nodeType":"VariableDeclaration","scope":9037,"src":"394:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9030,"nodeType":"UserDefinedTypeName","pathNode":{"id":9029,"name":"ResourceId","nameLocations":["394:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"394:10:28"},"referencedDeclaration":9486,"src":"394:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"}],"src":"393:20:28"},"returnParameters":{"id":9036,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9035,"mutability":"mutable","name":"fieldLayout","nameLocation":"449:11:28","nodeType":"VariableDeclaration","scope":9037,"src":"437:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},"typeName":{"id":9034,"nodeType":"UserDefinedTypeName","pathNode":{"id":9033,"name":"FieldLayout","nameLocations":["437:11:28"],"nodeType":"IdentifierPath","referencedDeclaration":7885,"src":"437:11:28"},"referencedDeclaration":7885,"src":"437:11:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"visibility":"internal"}],"src":"436:25:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9046,"nodeType":"FunctionDefinition","src":"466:87:28","nodes":[],"functionSelector":"e228a4a3","implemented":false,"kind":"function","modifiers":[],"name":"getValueSchema","nameLocation":"475:14:28","parameters":{"id":9041,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9040,"mutability":"mutable","name":"tableId","nameLocation":"501:7:28","nodeType":"VariableDeclaration","scope":9046,"src":"490:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9039,"nodeType":"UserDefinedTypeName","pathNode":{"id":9038,"name":"ResourceId","nameLocations":["490:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"490:10:28"},"referencedDeclaration":9486,"src":"490:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"}],"src":"489:20:28"},"returnParameters":{"id":9045,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9044,"mutability":"mutable","name":"valueSchema","nameLocation":"540:11:28","nodeType":"VariableDeclaration","scope":9046,"src":"533:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},"typeName":{"id":9043,"nodeType":"UserDefinedTypeName","pathNode":{"id":9042,"name":"Schema","nameLocations":["533:6:28"],"nodeType":"IdentifierPath","referencedDeclaration":9581,"src":"533:6:28"},"referencedDeclaration":9581,"src":"533:6:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},"visibility":"internal"}],"src":"532:20:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9055,"nodeType":"FunctionDefinition","src":"557:83:28","nodes":[],"functionSelector":"d4285dc2","implemented":false,"kind":"function","modifiers":[],"name":"getKeySchema","nameLocation":"566:12:28","parameters":{"id":9050,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9049,"mutability":"mutable","name":"tableId","nameLocation":"590:7:28","nodeType":"VariableDeclaration","scope":9055,"src":"579:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9048,"nodeType":"UserDefinedTypeName","pathNode":{"id":9047,"name":"ResourceId","nameLocations":["579:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"579:10:28"},"referencedDeclaration":9486,"src":"579:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"}],"src":"578:20:28"},"returnParameters":{"id":9054,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9053,"mutability":"mutable","name":"keySchema","nameLocation":"629:9:28","nodeType":"VariableDeclaration","scope":9055,"src":"622:16:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"},"typeName":{"id":9052,"nodeType":"UserDefinedTypeName","pathNode":{"id":9051,"name":"Schema","nameLocations":["622:6:28"],"nodeType":"IdentifierPath","referencedDeclaration":9581,"src":"622:6:28"},"referencedDeclaration":9581,"src":"622:6:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_Schema_$9581","typeString":"Schema"}},"visibility":"internal"}],"src":"621:18:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9072,"nodeType":"FunctionDefinition","src":"790:185:28","nodes":[],"documentation":{"id":9056,"nodeType":"StructuredDocumentation","src":"644:143:28","text":" Get full record (all fields, static and dynamic data) for the given tableId and key tuple, loading the field layout from storage"},"functionSelector":"cc49db7e","implemented":false,"kind":"function","modifiers":[],"name":"getRecord","nameLocation":"799:9:28","parameters":{"id":9063,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9059,"mutability":"mutable","name":"tableId","nameLocation":"825:7:28","nodeType":"VariableDeclaration","scope":9072,"src":"814:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9058,"nodeType":"UserDefinedTypeName","pathNode":{"id":9057,"name":"ResourceId","nameLocations":["814:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"814:10:28"},"referencedDeclaration":9486,"src":"814:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9062,"mutability":"mutable","name":"keyTuple","nameLocation":"857:8:28","nodeType":"VariableDeclaration","scope":9072,"src":"838:27:28","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_calldata_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9060,"name":"bytes32","nodeType":"ElementaryTypeName","src":"838:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9061,"nodeType":"ArrayTypeName","src":"838:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"}],"src":"808:61:28"},"returnParameters":{"id":9071,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9065,"mutability":"mutable","name":"staticData","nameLocation":"906:10:28","nodeType":"VariableDeclaration","scope":9072,"src":"893:23:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9064,"name":"bytes","nodeType":"ElementaryTypeName","src":"893:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":9068,"mutability":"mutable","name":"encodedLengths","nameLocation":"933:14:28","nodeType":"VariableDeclaration","scope":9072,"src":"918:29:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":9067,"nodeType":"UserDefinedTypeName","pathNode":{"id":9066,"name":"EncodedLengths","nameLocations":["918:14:28"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"918:14:28"},"referencedDeclaration":7251,"src":"918:14:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"},{"constant":false,"id":9070,"mutability":"mutable","name":"dynamicData","nameLocation":"962:11:28","nodeType":"VariableDeclaration","scope":9072,"src":"949:24:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9069,"name":"bytes","nodeType":"ElementaryTypeName","src":"949:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"892:82:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9092,"nodeType":"FunctionDefinition","src":"1115:214:28","nodes":[],"documentation":{"id":9073,"nodeType":"StructuredDocumentation","src":"979:133:28","text":" Get full record (all fields, static and dynamic data) for the given tableId and key tuple, with the given field layout"},"functionSelector":"419b58fd","implemented":false,"kind":"function","modifiers":[],"name":"getRecord","nameLocation":"1124:9:28","parameters":{"id":9083,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9076,"mutability":"mutable","name":"tableId","nameLocation":"1150:7:28","nodeType":"VariableDeclaration","scope":9092,"src":"1139:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9075,"nodeType":"UserDefinedTypeName","pathNode":{"id":9074,"name":"ResourceId","nameLocations":["1139:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"1139:10:28"},"referencedDeclaration":9486,"src":"1139:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9079,"mutability":"mutable","name":"keyTuple","nameLocation":"1182:8:28","nodeType":"VariableDeclaration","scope":9092,"src":"1163:27:28","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_calldata_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9077,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1163:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9078,"nodeType":"ArrayTypeName","src":"1163:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9082,"mutability":"mutable","name":"fieldLayout","nameLocation":"1208:11:28","nodeType":"VariableDeclaration","scope":9092,"src":"1196:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},"typeName":{"id":9081,"nodeType":"UserDefinedTypeName","pathNode":{"id":9080,"name":"FieldLayout","nameLocations":["1196:11:28"],"nodeType":"IdentifierPath","referencedDeclaration":7885,"src":"1196:11:28"},"referencedDeclaration":7885,"src":"1196:11:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"visibility":"internal"}],"src":"1133:90:28"},"returnParameters":{"id":9091,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9085,"mutability":"mutable","name":"staticData","nameLocation":"1260:10:28","nodeType":"VariableDeclaration","scope":9092,"src":"1247:23:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9084,"name":"bytes","nodeType":"ElementaryTypeName","src":"1247:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"},{"constant":false,"id":9088,"mutability":"mutable","name":"encodedLengths","nameLocation":"1287:14:28","nodeType":"VariableDeclaration","scope":9092,"src":"1272:29:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"},"typeName":{"id":9087,"nodeType":"UserDefinedTypeName","pathNode":{"id":9086,"name":"EncodedLengths","nameLocations":["1272:14:28"],"nodeType":"IdentifierPath","referencedDeclaration":7251,"src":"1272:14:28"},"referencedDeclaration":7251,"src":"1272:14:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_EncodedLengths_$7251","typeString":"EncodedLengths"}},"visibility":"internal"},{"constant":false,"id":9090,"mutability":"mutable","name":"dynamicData","nameLocation":"1316:11:28","nodeType":"VariableDeclaration","scope":9092,"src":"1303:24:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9089,"name":"bytes","nodeType":"ElementaryTypeName","src":"1303:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1246:82:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9106,"nodeType":"FunctionDefinition","src":"1445:143:28","nodes":[],"documentation":{"id":9093,"nodeType":"StructuredDocumentation","src":"1333:109:28","text":" Get a single field from the given tableId and key tuple, loading the field layout from storage"},"functionSelector":"d03edb8c","implemented":false,"kind":"function","modifiers":[],"name":"getField","nameLocation":"1454:8:28","parameters":{"id":9102,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9096,"mutability":"mutable","name":"tableId","nameLocation":"1479:7:28","nodeType":"VariableDeclaration","scope":9106,"src":"1468:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9095,"nodeType":"UserDefinedTypeName","pathNode":{"id":9094,"name":"ResourceId","nameLocations":["1468:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"1468:10:28"},"referencedDeclaration":9486,"src":"1468:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9099,"mutability":"mutable","name":"keyTuple","nameLocation":"1511:8:28","nodeType":"VariableDeclaration","scope":9106,"src":"1492:27:28","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_calldata_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9097,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1492:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9098,"nodeType":"ArrayTypeName","src":"1492:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9101,"mutability":"mutable","name":"fieldIndex","nameLocation":"1531:10:28","nodeType":"VariableDeclaration","scope":9106,"src":"1525:16:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9100,"name":"uint8","nodeType":"ElementaryTypeName","src":"1525:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"1462:83:28"},"returnParameters":{"id":9105,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9104,"mutability":"mutable","name":"data","nameLocation":"1582:4:28","nodeType":"VariableDeclaration","scope":9106,"src":"1569:17:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9103,"name":"bytes","nodeType":"ElementaryTypeName","src":"1569:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1568:19:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9123,"nodeType":"FunctionDefinition","src":"1694:172:28","nodes":[],"documentation":{"id":9107,"nodeType":"StructuredDocumentation","src":"1592:99:28","text":" Get a single field from the given tableId and key tuple, with the given field layout"},"functionSelector":"05242d2f","implemented":false,"kind":"function","modifiers":[],"name":"getField","nameLocation":"1703:8:28","parameters":{"id":9119,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9110,"mutability":"mutable","name":"tableId","nameLocation":"1728:7:28","nodeType":"VariableDeclaration","scope":9123,"src":"1717:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9109,"nodeType":"UserDefinedTypeName","pathNode":{"id":9108,"name":"ResourceId","nameLocations":["1717:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"1717:10:28"},"referencedDeclaration":9486,"src":"1717:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9113,"mutability":"mutable","name":"keyTuple","nameLocation":"1760:8:28","nodeType":"VariableDeclaration","scope":9123,"src":"1741:27:28","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_calldata_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9111,"name":"bytes32","nodeType":"ElementaryTypeName","src":"1741:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9112,"nodeType":"ArrayTypeName","src":"1741:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9115,"mutability":"mutable","name":"fieldIndex","nameLocation":"1780:10:28","nodeType":"VariableDeclaration","scope":9123,"src":"1774:16:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9114,"name":"uint8","nodeType":"ElementaryTypeName","src":"1774:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":9118,"mutability":"mutable","name":"fieldLayout","nameLocation":"1808:11:28","nodeType":"VariableDeclaration","scope":9123,"src":"1796:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},"typeName":{"id":9117,"nodeType":"UserDefinedTypeName","pathNode":{"id":9116,"name":"FieldLayout","nameLocations":["1796:11:28"],"nodeType":"IdentifierPath","referencedDeclaration":7885,"src":"1796:11:28"},"referencedDeclaration":7885,"src":"1796:11:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"visibility":"internal"}],"src":"1711:112:28"},"returnParameters":{"id":9122,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9121,"mutability":"mutable","name":"data","nameLocation":"1860:4:28","nodeType":"VariableDeclaration","scope":9123,"src":"1847:17:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9120,"name":"bytes","nodeType":"ElementaryTypeName","src":"1847:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"1846:19:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9140,"nodeType":"FunctionDefinition","src":"2164:168:28","nodes":[],"documentation":{"id":9124,"nodeType":"StructuredDocumentation","src":"1870:291:28","text":" Get a single static field from the given tableId and key tuple, with the given value field layout.\n Note: the field value is left-aligned in the returned bytes32, the rest of the word is not zeroed out.\n Consumers are expected to truncate the returned value as needed."},"functionSelector":"8c364d59","implemented":false,"kind":"function","modifiers":[],"name":"getStaticField","nameLocation":"2173:14:28","parameters":{"id":9136,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9127,"mutability":"mutable","name":"tableId","nameLocation":"2204:7:28","nodeType":"VariableDeclaration","scope":9140,"src":"2193:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9126,"nodeType":"UserDefinedTypeName","pathNode":{"id":9125,"name":"ResourceId","nameLocations":["2193:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"2193:10:28"},"referencedDeclaration":9486,"src":"2193:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9130,"mutability":"mutable","name":"keyTuple","nameLocation":"2236:8:28","nodeType":"VariableDeclaration","scope":9140,"src":"2217:27:28","stateVariable":false,"storageLocation":"calldata","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_calldata_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9128,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2217:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9129,"nodeType":"ArrayTypeName","src":"2217:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9132,"mutability":"mutable","name":"fieldIndex","nameLocation":"2256:10:28","nodeType":"VariableDeclaration","scope":9140,"src":"2250:16:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9131,"name":"uint8","nodeType":"ElementaryTypeName","src":"2250:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":9135,"mutability":"mutable","name":"fieldLayout","nameLocation":"2284:11:28","nodeType":"VariableDeclaration","scope":9140,"src":"2272:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},"typeName":{"id":9134,"nodeType":"UserDefinedTypeName","pathNode":{"id":9133,"name":"FieldLayout","nameLocations":["2272:11:28"],"nodeType":"IdentifierPath","referencedDeclaration":7885,"src":"2272:11:28"},"referencedDeclaration":7885,"src":"2272:11:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"visibility":"internal"}],"src":"2187:112:28"},"returnParameters":{"id":9139,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9138,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9140,"src":"2323:7:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"},"typeName":{"id":9137,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2323:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"visibility":"internal"}],"src":"2322:9:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9154,"nodeType":"FunctionDefinition","src":"2518:150:28","nodes":[],"documentation":{"id":9141,"nodeType":"StructuredDocumentation","src":"2336:179:28","text":" Get a single dynamic field from the given tableId and key tuple at the given dynamic field index.\n (Dynamic field index = field index - number of static fields)"},"functionSelector":"1e788977","implemented":false,"kind":"function","modifiers":[],"name":"getDynamicField","nameLocation":"2527:15:28","parameters":{"id":9150,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9144,"mutability":"mutable","name":"tableId","nameLocation":"2559:7:28","nodeType":"VariableDeclaration","scope":9154,"src":"2548:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9143,"nodeType":"UserDefinedTypeName","pathNode":{"id":9142,"name":"ResourceId","nameLocations":["2548:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"2548:10:28"},"referencedDeclaration":9486,"src":"2548:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9147,"mutability":"mutable","name":"keyTuple","nameLocation":"2589:8:28","nodeType":"VariableDeclaration","scope":9154,"src":"2572:25:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9145,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2572:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9146,"nodeType":"ArrayTypeName","src":"2572:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9149,"mutability":"mutable","name":"dynamicFieldIndex","nameLocation":"2609:17:28","nodeType":"VariableDeclaration","scope":9154,"src":"2603:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9148,"name":"uint8","nodeType":"ElementaryTypeName","src":"2603:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"2542:88:28"},"returnParameters":{"id":9153,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9152,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9154,"src":"2654:12:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9151,"name":"bytes","nodeType":"ElementaryTypeName","src":"2654:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"2653:14:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9168,"nodeType":"FunctionDefinition","src":"2803:137:28","nodes":[],"documentation":{"id":9155,"nodeType":"StructuredDocumentation","src":"2672:128:28","text":" Get the byte length of a single field from the given tableId and key tuple, loading the field layout from storage"},"functionSelector":"a53417ed","implemented":false,"kind":"function","modifiers":[],"name":"getFieldLength","nameLocation":"2812:14:28","parameters":{"id":9164,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9158,"mutability":"mutable","name":"tableId","nameLocation":"2843:7:28","nodeType":"VariableDeclaration","scope":9168,"src":"2832:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9157,"nodeType":"UserDefinedTypeName","pathNode":{"id":9156,"name":"ResourceId","nameLocations":["2832:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"2832:10:28"},"referencedDeclaration":9486,"src":"2832:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9161,"mutability":"mutable","name":"keyTuple","nameLocation":"2873:8:28","nodeType":"VariableDeclaration","scope":9168,"src":"2856:25:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9159,"name":"bytes32","nodeType":"ElementaryTypeName","src":"2856:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9160,"nodeType":"ArrayTypeName","src":"2856:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9163,"mutability":"mutable","name":"fieldIndex","nameLocation":"2893:10:28","nodeType":"VariableDeclaration","scope":9168,"src":"2887:16:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9162,"name":"uint8","nodeType":"ElementaryTypeName","src":"2887:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"2826:81:28"},"returnParameters":{"id":9167,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9166,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9168,"src":"2931:7:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":9165,"name":"uint256","nodeType":"ElementaryTypeName","src":"2931:7:28","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"2930:9:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9185,"nodeType":"FunctionDefinition","src":"3071:166:28","nodes":[],"documentation":{"id":9169,"nodeType":"StructuredDocumentation","src":"2944:124:28","text":" Get the byte length of a single field from the given tableId and key tuple, with the given value field layout"},"functionSelector":"9f1fcf0a","implemented":false,"kind":"function","modifiers":[],"name":"getFieldLength","nameLocation":"3080:14:28","parameters":{"id":9181,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9172,"mutability":"mutable","name":"tableId","nameLocation":"3111:7:28","nodeType":"VariableDeclaration","scope":9185,"src":"3100:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9171,"nodeType":"UserDefinedTypeName","pathNode":{"id":9170,"name":"ResourceId","nameLocations":["3100:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"3100:10:28"},"referencedDeclaration":9486,"src":"3100:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9175,"mutability":"mutable","name":"keyTuple","nameLocation":"3141:8:28","nodeType":"VariableDeclaration","scope":9185,"src":"3124:25:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9173,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3124:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9174,"nodeType":"ArrayTypeName","src":"3124:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9177,"mutability":"mutable","name":"fieldIndex","nameLocation":"3161:10:28","nodeType":"VariableDeclaration","scope":9185,"src":"3155:16:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9176,"name":"uint8","nodeType":"ElementaryTypeName","src":"3155:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":9180,"mutability":"mutable","name":"fieldLayout","nameLocation":"3189:11:28","nodeType":"VariableDeclaration","scope":9185,"src":"3177:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"},"typeName":{"id":9179,"nodeType":"UserDefinedTypeName","pathNode":{"id":9178,"name":"FieldLayout","nameLocations":["3177:11:28"],"nodeType":"IdentifierPath","referencedDeclaration":7885,"src":"3177:11:28"},"referencedDeclaration":7885,"src":"3177:11:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_FieldLayout_$7885","typeString":"FieldLayout"}},"visibility":"internal"}],"src":"3094:110:28"},"returnParameters":{"id":9184,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9183,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9185,"src":"3228:7:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":9182,"name":"uint256","nodeType":"ElementaryTypeName","src":"3228:7:28","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3227:9:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9199,"nodeType":"FunctionDefinition","src":"3341:151:28","nodes":[],"documentation":{"id":9186,"nodeType":"StructuredDocumentation","src":"3241:97:28","text":" Get the byte length of a single dynamic field from the given tableId and key tuple"},"functionSelector":"dbbf0e21","implemented":false,"kind":"function","modifiers":[],"name":"getDynamicFieldLength","nameLocation":"3350:21:28","parameters":{"id":9195,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9189,"mutability":"mutable","name":"tableId","nameLocation":"3388:7:28","nodeType":"VariableDeclaration","scope":9199,"src":"3377:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9188,"nodeType":"UserDefinedTypeName","pathNode":{"id":9187,"name":"ResourceId","nameLocations":["3377:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"3377:10:28"},"referencedDeclaration":9486,"src":"3377:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9192,"mutability":"mutable","name":"keyTuple","nameLocation":"3418:8:28","nodeType":"VariableDeclaration","scope":9199,"src":"3401:25:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9190,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3401:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9191,"nodeType":"ArrayTypeName","src":"3401:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9194,"mutability":"mutable","name":"dynamicFieldIndex","nameLocation":"3438:17:28","nodeType":"VariableDeclaration","scope":9199,"src":"3432:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9193,"name":"uint8","nodeType":"ElementaryTypeName","src":"3432:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"}],"src":"3371:88:28"},"returnParameters":{"id":9198,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9197,"mutability":"mutable","name":"","nameLocation":"-1:-1:-1","nodeType":"VariableDeclaration","scope":9199,"src":"3483:7:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":9196,"name":"uint256","nodeType":"ElementaryTypeName","src":"3483:7:28","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3482:9:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"},{"id":9217,"nodeType":"FunctionDefinition","src":"3746:196:28","nodes":[],"documentation":{"id":9200,"nodeType":"StructuredDocumentation","src":"3496:247:28","text":" Get a byte slice (including start, excluding end) of a single dynamic field from the given tableId and key tuple, with the given value field layout.\n The slice is unchecked and will return invalid data if `start`:`end` overflow."},"functionSelector":"4dc77d97","implemented":false,"kind":"function","modifiers":[],"name":"getDynamicFieldSlice","nameLocation":"3755:20:28","parameters":{"id":9213,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9203,"mutability":"mutable","name":"tableId","nameLocation":"3792:7:28","nodeType":"VariableDeclaration","scope":9217,"src":"3781:18:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"},"typeName":{"id":9202,"nodeType":"UserDefinedTypeName","pathNode":{"id":9201,"name":"ResourceId","nameLocations":["3781:10:28"],"nodeType":"IdentifierPath","referencedDeclaration":9486,"src":"3781:10:28"},"referencedDeclaration":9486,"src":"3781:10:28","typeDescriptions":{"typeIdentifier":"t_userDefinedValueType$_ResourceId_$9486","typeString":"ResourceId"}},"visibility":"internal"},{"constant":false,"id":9206,"mutability":"mutable","name":"keyTuple","nameLocation":"3822:8:28","nodeType":"VariableDeclaration","scope":9217,"src":"3805:25:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_memory_ptr","typeString":"bytes32[]"},"typeName":{"baseType":{"id":9204,"name":"bytes32","nodeType":"ElementaryTypeName","src":"3805:7:28","typeDescriptions":{"typeIdentifier":"t_bytes32","typeString":"bytes32"}},"id":9205,"nodeType":"ArrayTypeName","src":"3805:9:28","typeDescriptions":{"typeIdentifier":"t_array$_t_bytes32_$dyn_storage_ptr","typeString":"bytes32[]"}},"visibility":"internal"},{"constant":false,"id":9208,"mutability":"mutable","name":"dynamicFieldIndex","nameLocation":"3842:17:28","nodeType":"VariableDeclaration","scope":9217,"src":"3836:23:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"},"typeName":{"id":9207,"name":"uint8","nodeType":"ElementaryTypeName","src":"3836:5:28","typeDescriptions":{"typeIdentifier":"t_uint8","typeString":"uint8"}},"visibility":"internal"},{"constant":false,"id":9210,"mutability":"mutable","name":"start","nameLocation":"3873:5:28","nodeType":"VariableDeclaration","scope":9217,"src":"3865:13:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":9209,"name":"uint256","nodeType":"ElementaryTypeName","src":"3865:7:28","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"},{"constant":false,"id":9212,"mutability":"mutable","name":"end","nameLocation":"3892:3:28","nodeType":"VariableDeclaration","scope":9217,"src":"3884:11:28","stateVariable":false,"storageLocation":"default","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"},"typeName":{"id":9211,"name":"uint256","nodeType":"ElementaryTypeName","src":"3884:7:28","typeDescriptions":{"typeIdentifier":"t_uint256","typeString":"uint256"}},"visibility":"internal"}],"src":"3775:124:28"},"returnParameters":{"id":9216,"nodeType":"ParameterList","parameters":[{"constant":false,"id":9215,"mutability":"mutable","name":"data","nameLocation":"3936:4:28","nodeType":"VariableDeclaration","scope":9217,"src":"3923:17:28","stateVariable":false,"storageLocation":"memory","typeDescriptions":{"typeIdentifier":"t_bytes_memory_ptr","typeString":"bytes"},"typeName":{"id":9214,"name":"bytes","nodeType":"ElementaryTypeName","src":"3923:5:28","typeDescriptions":{"typeIdentifier":"t_bytes_storage_ptr","typeString":"bytes"}},"visibility":"internal"}],"src":"3922:19:28"},"scope":9218,"stateMutability":"view","virtual":false,"visibility":"external"}],"abstract":false,"baseContracts":[],"canonicalName":"IStoreRead","contractDependencies":[],"contractKind":"interface","documentation":{"id":9028,"nodeType":"StructuredDocumentation","src":"250:94:28","text":" @title IStoreRead\n @author MUD (https://mud.dev) by Lattice (https://lattice.xyz)"},"fullyImplemented":false,"linearizedBaseContracts":[9218],"name":"IStoreRead","nameLocation":"355:10:28","scope":9219,"usedErrors":[],"usedEvents":[]}],"license":"MIT"},"id":28}