@latticexyz/world-module-callwithsignature 2.2.17-03eae1330cef5cae129841958fb75541ef13fb43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (384) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1 -0
  3. package/dist/internal.d.ts +20 -0
  4. package/dist/internal.js +2 -0
  5. package/dist/internal.js.map +1 -0
  6. package/dist/mud.config.d.ts +103 -0
  7. package/dist/mud.config.js +2 -0
  8. package/dist/mud.config.js.map +1 -0
  9. package/out/AccessControl.sol/AccessControl.abi.json +1 -0
  10. package/out/AccessControl.sol/AccessControl.json +1 -0
  11. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json +256 -0
  12. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json.d.ts +258 -0
  13. package/out/AccessManagementSystem.sol/AccessManagementSystem.json +1 -0
  14. package/out/AddressArray.sol/AddressArray.abi.json +1 -0
  15. package/out/AddressArray.sol/AddressArray.json +1 -0
  16. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json +361 -0
  17. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json.d.ts +363 -0
  18. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.json +1 -0
  19. package/out/Balances.sol/Balances.abi.json +1 -0
  20. package/out/Balances.sol/Balances.json +1 -0
  21. package/out/Base.sol/CommonBase.abi.json +1 -0
  22. package/out/Base.sol/CommonBase.json +1 -0
  23. package/out/Base.sol/ScriptBase.abi.json +1 -0
  24. package/out/Base.sol/ScriptBase.json +1 -0
  25. package/out/Base.sol/TestBase.abi.json +1 -0
  26. package/out/Base.sol/TestBase.json +1 -0
  27. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json +132 -0
  28. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json.d.ts +134 -0
  29. package/out/BatchCallSystem.sol/BatchCallSystem.json +1 -0
  30. package/out/Bool.sol/Bool.abi.json +1 -0
  31. package/out/Bool.sol/Bool.json +1 -0
  32. package/out/Bytes.sol/Bytes.abi.json +1 -0
  33. package/out/Bytes.sol/Bytes.json +1 -0
  34. package/out/CallWithSignatureModule.sol/CallWithSignatureModule.abi.json +436 -0
  35. package/out/CallWithSignatureModule.sol/CallWithSignatureModule.abi.json.d.ts +438 -0
  36. package/out/CallWithSignatureModule.sol/CallWithSignatureModule.json +1 -0
  37. package/out/CallWithSignatureModule.t.sol/CallWithSignatureModuleTest.abi.json +541 -0
  38. package/out/CallWithSignatureModule.t.sol/CallWithSignatureModuleTest.abi.json.d.ts +543 -0
  39. package/out/CallWithSignatureModule.t.sol/CallWithSignatureModuleTest.json +1 -0
  40. package/out/CallWithSignatureNonces.sol/CallWithSignatureNonces.abi.json +1 -0
  41. package/out/CallWithSignatureNonces.sol/CallWithSignatureNonces.json +1 -0
  42. package/out/CallWithSignatureSystem.sol/CallWithSignatureSystem.abi.json +183 -0
  43. package/out/CallWithSignatureSystem.sol/CallWithSignatureSystem.abi.json.d.ts +185 -0
  44. package/out/CallWithSignatureSystem.sol/CallWithSignatureSystem.json +1 -0
  45. package/out/DecodeSlice.sol/DecodeSlice.abi.json +1 -0
  46. package/out/DecodeSlice.sol/DecodeSlice.json +1 -0
  47. package/out/Delegation.sol/Delegation.abi.json +1 -0
  48. package/out/Delegation.sol/Delegation.json +1 -0
  49. package/out/DelegationControl.sol/DelegationControl.abi.json +89 -0
  50. package/out/DelegationControl.sol/DelegationControl.abi.json.d.ts +91 -0
  51. package/out/DelegationControl.sol/DelegationControl.json +1 -0
  52. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json +126 -0
  53. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json.d.ts +128 -0
  54. package/out/DelegationControlMock.sol/DelegationControlMock.json +1 -0
  55. package/out/ECDSA.sol/ECDSA.abi.json +29 -0
  56. package/out/ECDSA.sol/ECDSA.abi.json.d.ts +31 -0
  57. package/out/ECDSA.sol/ECDSA.json +1 -0
  58. package/out/ERC165Checker.sol/ERC165Checker.abi.json +1 -0
  59. package/out/ERC165Checker.sol/ERC165Checker.json +1 -0
  60. package/out/EchoSubscriber.sol/EchoSubscriber.abi.json +303 -0
  61. package/out/EchoSubscriber.sol/EchoSubscriber.abi.json.d.ts +305 -0
  62. package/out/EchoSubscriber.sol/EchoSubscriber.json +1 -0
  63. package/out/EncodeArray.sol/EncodeArray.abi.json +1 -0
  64. package/out/EncodeArray.sol/EncodeArray.json +1 -0
  65. package/out/EncodedLengths.sol/EncodedLengthsInstance.abi.json +1 -0
  66. package/out/EncodedLengths.sol/EncodedLengthsInstance.json +1 -0
  67. package/out/EncodedLengths.sol/EncodedLengthsLib.abi.json +1 -0
  68. package/out/EncodedLengths.sol/EncodedLengthsLib.json +1 -0
  69. package/out/FieldLayout.sol/FieldLayoutInstance.abi.json +1 -0
  70. package/out/FieldLayout.sol/FieldLayoutInstance.json +1 -0
  71. package/out/FieldLayout.sol/FieldLayoutLib.abi.json +1 -0
  72. package/out/FieldLayout.sol/FieldLayoutLib.json +1 -0
  73. package/out/FieldLayoutEncodeHelper.sol/FieldLayoutEncodeHelper.abi.json +1 -0
  74. package/out/FieldLayoutEncodeHelper.sol/FieldLayoutEncodeHelper.json +1 -0
  75. package/out/FunctionSelectors.sol/FunctionSelectors.abi.json +1 -0
  76. package/out/FunctionSelectors.sol/FunctionSelectors.json +1 -0
  77. package/out/FunctionSignatures.sol/FunctionSignatures.abi.json +1 -0
  78. package/out/FunctionSignatures.sol/FunctionSignatures.json +1 -0
  79. package/out/GasReporter.sol/GasReporter.abi.json +520 -0
  80. package/out/GasReporter.sol/GasReporter.abi.json.d.ts +522 -0
  81. package/out/GasReporter.sol/GasReporter.json +1 -0
  82. package/out/Hook.sol/HookInstance.abi.json +1 -0
  83. package/out/Hook.sol/HookInstance.json +1 -0
  84. package/out/Hook.sol/HookLib.abi.json +1 -0
  85. package/out/Hook.sol/HookLib.json +1 -0
  86. package/out/Hooks.sol/Hooks.abi.json +1 -0
  87. package/out/Hooks.sol/Hooks.json +1 -0
  88. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.abi.json +69 -0
  89. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.abi.json.d.ts +71 -0
  90. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +1 -0
  91. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.abi.json +48 -0
  92. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.abi.json.d.ts +50 -0
  93. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +1 -0
  94. package/out/IBaseWorld.sol/IBaseWorld.abi.json +2008 -0
  95. package/out/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +2010 -0
  96. package/out/IBaseWorld.sol/IBaseWorld.json +1 -0
  97. package/out/IBatchCallSystem.sol/IBatchCallSystem.abi.json +69 -0
  98. package/out/IBatchCallSystem.sol/IBatchCallSystem.abi.json.d.ts +71 -0
  99. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +1 -0
  100. package/out/ICallWithSignatureErrors.sol/ICallWithSignatureErrors.abi.json +7 -0
  101. package/out/ICallWithSignatureErrors.sol/ICallWithSignatureErrors.abi.json.d.ts +9 -0
  102. package/out/ICallWithSignatureErrors.sol/ICallWithSignatureErrors.json +1 -0
  103. package/out/ICallWithSignatureSystem.sol/ICallWithSignatureSystem.abi.json +36 -0
  104. package/out/ICallWithSignatureSystem.sol/ICallWithSignatureSystem.abi.json.d.ts +38 -0
  105. package/out/ICallWithSignatureSystem.sol/ICallWithSignatureSystem.json +1 -0
  106. package/out/IDelegationControl.sol/IDelegationControl.abi.json +89 -0
  107. package/out/IDelegationControl.sol/IDelegationControl.abi.json.d.ts +91 -0
  108. package/out/IDelegationControl.sol/IDelegationControl.json +1 -0
  109. package/out/IERC1271.sol/IERC1271.abi.json +26 -0
  110. package/out/IERC1271.sol/IERC1271.abi.json.d.ts +28 -0
  111. package/out/IERC1271.sol/IERC1271.json +1 -0
  112. package/out/IERC165.sol/IERC165.abi.json +21 -0
  113. package/out/IERC165.sol/IERC165.abi.json.d.ts +23 -0
  114. package/out/IERC165.sol/IERC165.json +1 -0
  115. package/out/IEncodedLengthsErrors.sol/IEncodedLengthsErrors.abi.json +13 -0
  116. package/out/IEncodedLengthsErrors.sol/IEncodedLengthsErrors.abi.json.d.ts +15 -0
  117. package/out/IEncodedLengthsErrors.sol/IEncodedLengthsErrors.json +1 -0
  118. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json +88 -0
  119. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json.d.ts +90 -0
  120. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.json +1 -0
  121. package/out/IModule.sol/IModule.abi.json +73 -0
  122. package/out/IModule.sol/IModule.abi.json.d.ts +75 -0
  123. package/out/IModule.sol/IModule.json +1 -0
  124. package/out/IModuleErrors.sol/IModuleErrors.abi.json +28 -0
  125. package/out/IModuleErrors.sol/IModuleErrors.abi.json.d.ts +30 -0
  126. package/out/IModuleErrors.sol/IModuleErrors.json +1 -0
  127. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.abi.json +20 -0
  128. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.abi.json.d.ts +22 -0
  129. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +1 -0
  130. package/out/IMulticall3.sol/IMulticall3.abi.json +440 -0
  131. package/out/IMulticall3.sol/IMulticall3.abi.json.d.ts +442 -0
  132. package/out/IMulticall3.sol/IMulticall3.json +1 -0
  133. package/out/IRegistrationSystem.sol/IRegistrationSystem.abi.json +1 -0
  134. package/out/IRegistrationSystem.sol/IRegistrationSystem.json +1 -0
  135. package/out/ISchemaErrors.sol/ISchemaErrors.abi.json +18 -0
  136. package/out/ISchemaErrors.sol/ISchemaErrors.abi.json.d.ts +20 -0
  137. package/out/ISchemaErrors.sol/ISchemaErrors.json +1 -0
  138. package/out/ISliceErrors.sol/ISliceErrors.abi.json +23 -0
  139. package/out/ISliceErrors.sol/ISliceErrors.abi.json.d.ts +25 -0
  140. package/out/ISliceErrors.sol/ISliceErrors.json +1 -0
  141. package/out/IStore.sol/IStore.abi.json +1261 -0
  142. package/out/IStore.sol/IStore.abi.json.d.ts +1263 -0
  143. package/out/IStore.sol/IStore.json +1 -0
  144. package/out/IStoreErrors.sol/IStoreErrors.abi.json +204 -0
  145. package/out/IStoreErrors.sol/IStoreErrors.abi.json.d.ts +206 -0
  146. package/out/IStoreErrors.sol/IStoreErrors.json +1 -0
  147. package/out/IStoreEvents.sol/IStoreEvents.abi.json +151 -0
  148. package/out/IStoreEvents.sol/IStoreEvents.abi.json.d.ts +153 -0
  149. package/out/IStoreEvents.sol/IStoreEvents.json +1 -0
  150. package/out/IStoreHook.sol/IStoreHook.abi.json +290 -0
  151. package/out/IStoreHook.sol/IStoreHook.abi.json.d.ts +292 -0
  152. package/out/IStoreHook.sol/IStoreHook.json +1 -0
  153. package/out/IStoreKernel.sol/IStoreKernel.abi.json +1182 -0
  154. package/out/IStoreKernel.sol/IStoreKernel.abi.json.d.ts +1184 -0
  155. package/out/IStoreKernel.sol/IStoreKernel.json +1 -0
  156. package/out/IStoreRead.sol/IStoreRead.abi.json +389 -0
  157. package/out/IStoreRead.sol/IStoreRead.abi.json.d.ts +391 -0
  158. package/out/IStoreRead.sol/IStoreRead.json +1 -0
  159. package/out/IStoreRegistration.sol/IStoreRegistration.abi.json +81 -0
  160. package/out/IStoreRegistration.sol/IStoreRegistration.abi.json.d.ts +83 -0
  161. package/out/IStoreRegistration.sol/IStoreRegistration.json +1 -0
  162. package/out/IStoreWrite.sol/IStoreWrite.abi.json +446 -0
  163. package/out/IStoreWrite.sol/IStoreWrite.abi.json.d.ts +448 -0
  164. package/out/IStoreWrite.sol/IStoreWrite.json +1 -0
  165. package/out/ISystemHook.sol/ISystemHook.abi.json +67 -0
  166. package/out/ISystemHook.sol/ISystemHook.abi.json.d.ts +69 -0
  167. package/out/ISystemHook.sol/ISystemHook.json +1 -0
  168. package/out/IWorld.sol/IWorld.abi.json +2042 -0
  169. package/out/IWorld.sol/IWorld.abi.json.d.ts +2044 -0
  170. package/out/IWorld.sol/IWorld.json +1 -0
  171. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json +60 -0
  172. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json.d.ts +62 -0
  173. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +1 -0
  174. package/out/IWorldErrors.sol/IWorldErrors.abi.json +200 -0
  175. package/out/IWorldErrors.sol/IWorldErrors.abi.json.d.ts +202 -0
  176. package/out/IWorldErrors.sol/IWorldErrors.json +1 -0
  177. package/out/IWorldEvents.sol/IWorldEvents.abi.json +15 -0
  178. package/out/IWorldEvents.sol/IWorldEvents.abi.json.d.ts +17 -0
  179. package/out/IWorldEvents.sol/IWorldEvents.json +1 -0
  180. package/out/IWorldKernel.sol/IWorldCall.abi.json +55 -0
  181. package/out/IWorldKernel.sol/IWorldCall.abi.json.d.ts +57 -0
  182. package/out/IWorldKernel.sol/IWorldCall.json +1 -0
  183. package/out/IWorldKernel.sol/IWorldKernel.abi.json +349 -0
  184. package/out/IWorldKernel.sol/IWorldKernel.abi.json.d.ts +351 -0
  185. package/out/IWorldKernel.sol/IWorldKernel.json +1 -0
  186. package/out/IWorldKernel.sol/IWorldModuleInstallation.abi.json +20 -0
  187. package/out/IWorldKernel.sol/IWorldModuleInstallation.abi.json.d.ts +22 -0
  188. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +1 -0
  189. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json +204 -0
  190. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json.d.ts +206 -0
  191. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +1 -0
  192. package/out/InitModule.sol/InitModule.abi.json +462 -0
  193. package/out/InitModule.sol/InitModule.abi.json.d.ts +464 -0
  194. package/out/InitModule.sol/InitModule.json +1 -0
  195. package/out/InitModuleAddress.sol/InitModuleAddress.abi.json +1 -0
  196. package/out/InitModuleAddress.sol/InitModuleAddress.json +1 -0
  197. package/out/InstalledModules.sol/InstalledModules.abi.json +1 -0
  198. package/out/InstalledModules.sol/InstalledModules.json +1 -0
  199. package/out/LimitedCallContext.sol/LimitedCallContext.abi.json +7 -0
  200. package/out/LimitedCallContext.sol/LimitedCallContext.abi.json.d.ts +9 -0
  201. package/out/LimitedCallContext.sol/LimitedCallContext.json +1 -0
  202. package/out/Memory.sol/Memory.abi.json +1 -0
  203. package/out/Memory.sol/Memory.json +1 -0
  204. package/out/Module.sol/Module.abi.json +112 -0
  205. package/out/Module.sol/Module.abi.json.d.ts +114 -0
  206. package/out/Module.sol/Module.json +1 -0
  207. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json +151 -0
  208. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json.d.ts +153 -0
  209. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +1 -0
  210. package/out/NamespaceDelegationControl.sol/NamespaceDelegationControl.abi.json +1 -0
  211. package/out/NamespaceDelegationControl.sol/NamespaceDelegationControl.json +1 -0
  212. package/out/NamespaceOwner.sol/NamespaceOwner.abi.json +1 -0
  213. package/out/NamespaceOwner.sol/NamespaceOwner.json +1 -0
  214. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json +1018 -0
  215. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json.d.ts +1020 -0
  216. package/out/RegistrationSystem.sol/RegistrationSystem.json +1 -0
  217. package/out/ResourceAccess.sol/ResourceAccess.abi.json +1 -0
  218. package/out/ResourceAccess.sol/ResourceAccess.json +1 -0
  219. package/out/ResourceId.sol/ResourceIdInstance.abi.json +1 -0
  220. package/out/ResourceId.sol/ResourceIdInstance.json +1 -0
  221. package/out/ResourceId.sol/ResourceIdLib.abi.json +1 -0
  222. package/out/ResourceId.sol/ResourceIdLib.json +1 -0
  223. package/out/ResourceIds.sol/ResourceIds.abi.json +1 -0
  224. package/out/ResourceIds.sol/ResourceIds.json +1 -0
  225. package/out/RevertSubscriber.sol/RevertSubscriber.abi.json +290 -0
  226. package/out/RevertSubscriber.sol/RevertSubscriber.abi.json.d.ts +292 -0
  227. package/out/RevertSubscriber.sol/RevertSubscriber.json +1 -0
  228. package/out/Schema.sol/SchemaInstance.abi.json +1 -0
  229. package/out/Schema.sol/SchemaInstance.json +1 -0
  230. package/out/Schema.sol/SchemaLib.abi.json +1 -0
  231. package/out/Schema.sol/SchemaLib.json +1 -0
  232. package/out/SchemaEncodeHelper.sol/SchemaEncodeHelper.abi.json +1 -0
  233. package/out/SchemaEncodeHelper.sol/SchemaEncodeHelper.json +1 -0
  234. package/out/SignatureChecker.sol/SignatureChecker.abi.json +1 -0
  235. package/out/SignatureChecker.sol/SignatureChecker.json +1 -0
  236. package/out/Slice.sol/SliceInstance.abi.json +1 -0
  237. package/out/Slice.sol/SliceInstance.json +1 -0
  238. package/out/Slice.sol/SliceLib.abi.json +1 -0
  239. package/out/Slice.sol/SliceLib.json +1 -0
  240. package/out/StdAssertions.sol/StdAssertions.abi.json +392 -0
  241. package/out/StdAssertions.sol/StdAssertions.abi.json.d.ts +394 -0
  242. package/out/StdAssertions.sol/StdAssertions.json +1 -0
  243. package/out/StdChains.sol/StdChains.abi.json +1 -0
  244. package/out/StdChains.sol/StdChains.json +1 -0
  245. package/out/StdCheats.sol/StdCheats.abi.json +1 -0
  246. package/out/StdCheats.sol/StdCheats.json +1 -0
  247. package/out/StdCheats.sol/StdCheatsSafe.abi.json +1 -0
  248. package/out/StdCheats.sol/StdCheatsSafe.json +1 -0
  249. package/out/StdError.sol/stdError.abi.json +119 -0
  250. package/out/StdError.sol/stdError.abi.json.d.ts +121 -0
  251. package/out/StdError.sol/stdError.json +1 -0
  252. package/out/StdInvariant.sol/StdInvariant.abi.json +130 -0
  253. package/out/StdInvariant.sol/StdInvariant.abi.json.d.ts +132 -0
  254. package/out/StdInvariant.sol/StdInvariant.json +1 -0
  255. package/out/StdJson.sol/stdJson.abi.json +1 -0
  256. package/out/StdJson.sol/stdJson.json +1 -0
  257. package/out/StdMath.sol/stdMath.abi.json +1 -0
  258. package/out/StdMath.sol/stdMath.json +1 -0
  259. package/out/StdStorage.sol/stdStorage.abi.json +1 -0
  260. package/out/StdStorage.sol/stdStorage.json +1 -0
  261. package/out/StdStorage.sol/stdStorageSafe.abi.json +52 -0
  262. package/out/StdStorage.sol/stdStorageSafe.abi.json.d.ts +54 -0
  263. package/out/StdStorage.sol/stdStorageSafe.json +1 -0
  264. package/out/StdStyle.sol/StdStyle.abi.json +1 -0
  265. package/out/StdStyle.sol/StdStyle.json +1 -0
  266. package/out/StdUtils.sol/StdUtils.abi.json +1 -0
  267. package/out/StdUtils.sol/StdUtils.json +1 -0
  268. package/out/Storage.sol/Storage.abi.json +1 -0
  269. package/out/Storage.sol/Storage.json +1 -0
  270. package/out/StoreCore.sol/StoreCore.abi.json +1 -0
  271. package/out/StoreCore.sol/StoreCore.json +1 -0
  272. package/out/StoreCore.sol/StoreCoreInternal.abi.json +1 -0
  273. package/out/StoreCore.sol/StoreCoreInternal.json +1 -0
  274. package/out/StoreHook.sol/StoreHook.abi.json +290 -0
  275. package/out/StoreHook.sol/StoreHook.abi.json.d.ts +292 -0
  276. package/out/StoreHook.sol/StoreHook.json +1 -0
  277. package/out/StoreHooks.sol/StoreHooks.abi.json +1 -0
  278. package/out/StoreHooks.sol/StoreHooks.json +1 -0
  279. package/out/StoreKernel.sol/StoreKernel.abi.json +1182 -0
  280. package/out/StoreKernel.sol/StoreKernel.abi.json.d.ts +1184 -0
  281. package/out/StoreKernel.sol/StoreKernel.json +1 -0
  282. package/out/StoreRead.sol/StoreRead.abi.json +437 -0
  283. package/out/StoreRead.sol/StoreRead.abi.json.d.ts +439 -0
  284. package/out/StoreRead.sol/StoreRead.json +1 -0
  285. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json +779 -0
  286. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json.d.ts +781 -0
  287. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +1 -0
  288. package/out/StoreSwitch.sol/StoreSwitch.abi.json +1 -0
  289. package/out/StoreSwitch.sol/StoreSwitch.json +1 -0
  290. package/out/System.sol/System.abi.json +60 -0
  291. package/out/System.sol/System.abi.json.d.ts +62 -0
  292. package/out/System.sol/System.json +1 -0
  293. package/out/SystemCall.sol/SystemCall.abi.json +1 -0
  294. package/out/SystemCall.sol/SystemCall.json +1 -0
  295. package/out/SystemHook.sol/SystemHook.abi.json +67 -0
  296. package/out/SystemHook.sol/SystemHook.abi.json.d.ts +69 -0
  297. package/out/SystemHook.sol/SystemHook.json +1 -0
  298. package/out/SystemHooks.sol/SystemHooks.abi.json +1 -0
  299. package/out/SystemHooks.sol/SystemHooks.json +1 -0
  300. package/out/SystemRegistry.sol/SystemRegistry.abi.json +1 -0
  301. package/out/SystemRegistry.sol/SystemRegistry.json +1 -0
  302. package/out/Systems.sol/Systems.abi.json +1 -0
  303. package/out/Systems.sol/Systems.json +1 -0
  304. package/out/Tables.sol/Tables.abi.json +1 -0
  305. package/out/Tables.sol/Tables.json +1 -0
  306. package/out/Test.sol/Test.abi.json +520 -0
  307. package/out/Test.sol/Test.abi.json.d.ts +522 -0
  308. package/out/Test.sol/Test.json +1 -0
  309. package/out/TightCoder.sol/TightCoder.abi.json +1 -0
  310. package/out/TightCoder.sol/TightCoder.json +1 -0
  311. package/out/TwoFields.sol/TwoFields.abi.json +1 -0
  312. package/out/TwoFields.sol/TwoFields.json +1 -0
  313. package/out/UserDelegationControl.sol/UserDelegationControl.abi.json +1 -0
  314. package/out/UserDelegationControl.sol/UserDelegationControl.json +1 -0
  315. package/out/Vm.sol/Vm.abi.json +3878 -0
  316. package/out/Vm.sol/Vm.abi.json.d.ts +3880 -0
  317. package/out/Vm.sol/Vm.json +1 -0
  318. package/out/Vm.sol/VmSafe.abi.json +2678 -0
  319. package/out/Vm.sol/VmSafe.abi.json.d.ts +2680 -0
  320. package/out/Vm.sol/VmSafe.json +1 -0
  321. package/out/World.sol/World.abi.json +1542 -0
  322. package/out/World.sol/World.abi.json.d.ts +1544 -0
  323. package/out/World.sol/World.json +1 -0
  324. package/out/World.t.sol/EchoSystemHook.abi.json +80 -0
  325. package/out/World.t.sol/EchoSystemHook.abi.json.d.ts +82 -0
  326. package/out/World.t.sol/EchoSystemHook.json +1 -0
  327. package/out/World.t.sol/IWorldTestSystem.abi.json +15 -0
  328. package/out/World.t.sol/IWorldTestSystem.abi.json.d.ts +17 -0
  329. package/out/World.t.sol/IWorldTestSystem.json +1 -0
  330. package/out/World.t.sol/PayableFallbackSystem.abi.json +64 -0
  331. package/out/World.t.sol/PayableFallbackSystem.abi.json.d.ts +66 -0
  332. package/out/World.t.sol/PayableFallbackSystem.json +1 -0
  333. package/out/World.t.sol/RevertSystemHook.abi.json +80 -0
  334. package/out/World.t.sol/RevertSystemHook.abi.json.d.ts +82 -0
  335. package/out/World.t.sol/RevertSystemHook.json +1 -0
  336. package/out/World.t.sol/WorldTest.abi.json +1029 -0
  337. package/out/World.t.sol/WorldTest.abi.json.d.ts +1031 -0
  338. package/out/World.t.sol/WorldTest.json +1 -0
  339. package/out/World.t.sol/WorldTestSystem.abi.json +277 -0
  340. package/out/World.t.sol/WorldTestSystem.abi.json.d.ts +279 -0
  341. package/out/World.t.sol/WorldTestSystem.json +1 -0
  342. package/out/WorldContext.sol/WorldContextConsumer.abi.json +60 -0
  343. package/out/WorldContext.sol/WorldContextConsumer.abi.json.d.ts +62 -0
  344. package/out/WorldContext.sol/WorldContextConsumer.json +1 -0
  345. package/out/WorldContext.sol/WorldContextConsumerLib.abi.json +1 -0
  346. package/out/WorldContext.sol/WorldContextConsumerLib.json +1 -0
  347. package/out/WorldContext.sol/WorldContextProviderLib.abi.json +1 -0
  348. package/out/WorldContext.sol/WorldContextProviderLib.json +1 -0
  349. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json +691 -0
  350. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json.d.ts +693 -0
  351. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1 -0
  352. package/out/WorldResourceId.sol/WorldResourceIdInstance.abi.json +1 -0
  353. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +1 -0
  354. package/out/WorldResourceId.sol/WorldResourceIdLib.abi.json +1 -0
  355. package/out/WorldResourceId.sol/WorldResourceIdLib.json +1 -0
  356. package/out/build-info/306c60bc5d3442ad78ed6293bddbefdd.json +1 -0
  357. package/out/console.sol/console.abi.json +1 -0
  358. package/out/console.sol/console.json +1 -0
  359. package/out/console2.sol/console2.abi.json +1 -0
  360. package/out/console2.sol/console2.json +1 -0
  361. package/out/constants.sol/LayoutOffsets.abi.json +1 -0
  362. package/out/constants.sol/LayoutOffsets.json +1 -0
  363. package/out/safeconsole.sol/safeconsole.abi.json +1 -0
  364. package/out/safeconsole.sol/safeconsole.json +1 -0
  365. package/out/src/IERC165.sol/IERC165.abi.json +21 -0
  366. package/out/src/IERC165.sol/IERC165.abi.json.d.ts +23 -0
  367. package/out/src/IERC165.sol/IERC165.json +1 -0
  368. package/out/test.sol/DSTest.abi.json +296 -0
  369. package/out/test.sol/DSTest.abi.json.d.ts +298 -0
  370. package/out/test.sol/DSTest.json +1 -0
  371. package/package.json +64 -0
  372. package/src/CallWithSignatureModule.sol +48 -0
  373. package/src/CallWithSignatureSystem.sol +36 -0
  374. package/src/ECDSA.sol +174 -0
  375. package/src/ICallWithSignatureErrors.sol +9 -0
  376. package/src/IERC1271.sol +17 -0
  377. package/src/SignatureChecker.sol +50 -0
  378. package/src/codegen/index.sol +6 -0
  379. package/src/codegen/tables/CallWithSignatureNonces.sol +199 -0
  380. package/src/codegen/world/ICallWithSignatureSystem.sol +20 -0
  381. package/src/codegen/world/IWorld.sol +16 -0
  382. package/src/constants.sol +10 -0
  383. package/src/getSignedMessageHash.sol +54 -0
  384. package/src/validateCallWithSignature.sol +31 -0
@@ -0,0 +1,292 @@
1
+ declare const abi: [
2
+ {
3
+ "type": "function",
4
+ "name": "onAfterDeleteRecord",
5
+ "inputs": [
6
+ {
7
+ "name": "tableId",
8
+ "type": "bytes32",
9
+ "internalType": "ResourceId"
10
+ },
11
+ {
12
+ "name": "keyTuple",
13
+ "type": "bytes32[]",
14
+ "internalType": "bytes32[]"
15
+ },
16
+ {
17
+ "name": "fieldLayout",
18
+ "type": "bytes32",
19
+ "internalType": "FieldLayout"
20
+ }
21
+ ],
22
+ "outputs": [],
23
+ "stateMutability": "nonpayable"
24
+ },
25
+ {
26
+ "type": "function",
27
+ "name": "onAfterSetRecord",
28
+ "inputs": [
29
+ {
30
+ "name": "tableId",
31
+ "type": "bytes32",
32
+ "internalType": "ResourceId"
33
+ },
34
+ {
35
+ "name": "keyTuple",
36
+ "type": "bytes32[]",
37
+ "internalType": "bytes32[]"
38
+ },
39
+ {
40
+ "name": "staticData",
41
+ "type": "bytes",
42
+ "internalType": "bytes"
43
+ },
44
+ {
45
+ "name": "encodedLengths",
46
+ "type": "bytes32",
47
+ "internalType": "EncodedLengths"
48
+ },
49
+ {
50
+ "name": "dynamicData",
51
+ "type": "bytes",
52
+ "internalType": "bytes"
53
+ },
54
+ {
55
+ "name": "fieldLayout",
56
+ "type": "bytes32",
57
+ "internalType": "FieldLayout"
58
+ }
59
+ ],
60
+ "outputs": [],
61
+ "stateMutability": "nonpayable"
62
+ },
63
+ {
64
+ "type": "function",
65
+ "name": "onAfterSpliceDynamicData",
66
+ "inputs": [
67
+ {
68
+ "name": "tableId",
69
+ "type": "bytes32",
70
+ "internalType": "ResourceId"
71
+ },
72
+ {
73
+ "name": "keyTuple",
74
+ "type": "bytes32[]",
75
+ "internalType": "bytes32[]"
76
+ },
77
+ {
78
+ "name": "dynamicFieldIndex",
79
+ "type": "uint8",
80
+ "internalType": "uint8"
81
+ },
82
+ {
83
+ "name": "startWithinField",
84
+ "type": "uint40",
85
+ "internalType": "uint40"
86
+ },
87
+ {
88
+ "name": "deleteCount",
89
+ "type": "uint40",
90
+ "internalType": "uint40"
91
+ },
92
+ {
93
+ "name": "encodedLengths",
94
+ "type": "bytes32",
95
+ "internalType": "EncodedLengths"
96
+ },
97
+ {
98
+ "name": "data",
99
+ "type": "bytes",
100
+ "internalType": "bytes"
101
+ }
102
+ ],
103
+ "outputs": [],
104
+ "stateMutability": "nonpayable"
105
+ },
106
+ {
107
+ "type": "function",
108
+ "name": "onAfterSpliceStaticData",
109
+ "inputs": [
110
+ {
111
+ "name": "tableId",
112
+ "type": "bytes32",
113
+ "internalType": "ResourceId"
114
+ },
115
+ {
116
+ "name": "keyTuple",
117
+ "type": "bytes32[]",
118
+ "internalType": "bytes32[]"
119
+ },
120
+ {
121
+ "name": "start",
122
+ "type": "uint48",
123
+ "internalType": "uint48"
124
+ },
125
+ {
126
+ "name": "data",
127
+ "type": "bytes",
128
+ "internalType": "bytes"
129
+ }
130
+ ],
131
+ "outputs": [],
132
+ "stateMutability": "nonpayable"
133
+ },
134
+ {
135
+ "type": "function",
136
+ "name": "onBeforeDeleteRecord",
137
+ "inputs": [
138
+ {
139
+ "name": "tableId",
140
+ "type": "bytes32",
141
+ "internalType": "ResourceId"
142
+ },
143
+ {
144
+ "name": "keyTuple",
145
+ "type": "bytes32[]",
146
+ "internalType": "bytes32[]"
147
+ },
148
+ {
149
+ "name": "fieldLayout",
150
+ "type": "bytes32",
151
+ "internalType": "FieldLayout"
152
+ }
153
+ ],
154
+ "outputs": [],
155
+ "stateMutability": "nonpayable"
156
+ },
157
+ {
158
+ "type": "function",
159
+ "name": "onBeforeSetRecord",
160
+ "inputs": [
161
+ {
162
+ "name": "tableId",
163
+ "type": "bytes32",
164
+ "internalType": "ResourceId"
165
+ },
166
+ {
167
+ "name": "keyTuple",
168
+ "type": "bytes32[]",
169
+ "internalType": "bytes32[]"
170
+ },
171
+ {
172
+ "name": "staticData",
173
+ "type": "bytes",
174
+ "internalType": "bytes"
175
+ },
176
+ {
177
+ "name": "encodedLengths",
178
+ "type": "bytes32",
179
+ "internalType": "EncodedLengths"
180
+ },
181
+ {
182
+ "name": "dynamicData",
183
+ "type": "bytes",
184
+ "internalType": "bytes"
185
+ },
186
+ {
187
+ "name": "fieldLayout",
188
+ "type": "bytes32",
189
+ "internalType": "FieldLayout"
190
+ }
191
+ ],
192
+ "outputs": [],
193
+ "stateMutability": "nonpayable"
194
+ },
195
+ {
196
+ "type": "function",
197
+ "name": "onBeforeSpliceDynamicData",
198
+ "inputs": [
199
+ {
200
+ "name": "tableId",
201
+ "type": "bytes32",
202
+ "internalType": "ResourceId"
203
+ },
204
+ {
205
+ "name": "keyTuple",
206
+ "type": "bytes32[]",
207
+ "internalType": "bytes32[]"
208
+ },
209
+ {
210
+ "name": "dynamicFieldIndex",
211
+ "type": "uint8",
212
+ "internalType": "uint8"
213
+ },
214
+ {
215
+ "name": "startWithinField",
216
+ "type": "uint40",
217
+ "internalType": "uint40"
218
+ },
219
+ {
220
+ "name": "deleteCount",
221
+ "type": "uint40",
222
+ "internalType": "uint40"
223
+ },
224
+ {
225
+ "name": "encodedLengths",
226
+ "type": "bytes32",
227
+ "internalType": "EncodedLengths"
228
+ },
229
+ {
230
+ "name": "data",
231
+ "type": "bytes",
232
+ "internalType": "bytes"
233
+ }
234
+ ],
235
+ "outputs": [],
236
+ "stateMutability": "nonpayable"
237
+ },
238
+ {
239
+ "type": "function",
240
+ "name": "onBeforeSpliceStaticData",
241
+ "inputs": [
242
+ {
243
+ "name": "tableId",
244
+ "type": "bytes32",
245
+ "internalType": "ResourceId"
246
+ },
247
+ {
248
+ "name": "keyTuple",
249
+ "type": "bytes32[]",
250
+ "internalType": "bytes32[]"
251
+ },
252
+ {
253
+ "name": "start",
254
+ "type": "uint48",
255
+ "internalType": "uint48"
256
+ },
257
+ {
258
+ "name": "data",
259
+ "type": "bytes",
260
+ "internalType": "bytes"
261
+ }
262
+ ],
263
+ "outputs": [],
264
+ "stateMutability": "nonpayable"
265
+ },
266
+ {
267
+ "type": "function",
268
+ "name": "supportsInterface",
269
+ "inputs": [
270
+ {
271
+ "name": "interfaceId",
272
+ "type": "bytes4",
273
+ "internalType": "bytes4"
274
+ }
275
+ ],
276
+ "outputs": [
277
+ {
278
+ "name": "",
279
+ "type": "bool",
280
+ "internalType": "bool"
281
+ }
282
+ ],
283
+ "stateMutability": "pure"
284
+ },
285
+ {
286
+ "type": "error",
287
+ "name": "StoreHook_NotImplemented",
288
+ "inputs": []
289
+ }
290
+ ];
291
+
292
+ export default abi;
@@ -0,0 +1 @@
1
+ {"abi":[{"type":"function","name":"onAfterDeleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onAfterSetRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onAfterSpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onAfterSpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onBeforeDeleteRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onBeforeSetRecord","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"staticData","type":"bytes","internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","internalType":"bytes"},{"name":"fieldLayout","type":"bytes32","internalType":"FieldLayout"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onBeforeSpliceDynamicData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"dynamicFieldIndex","type":"uint8","internalType":"uint8"},{"name":"startWithinField","type":"uint40","internalType":"uint40"},{"name":"deleteCount","type":"uint40","internalType":"uint40"},{"name":"encodedLengths","type":"bytes32","internalType":"EncodedLengths"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"onBeforeSpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","internalType":"bytes32[]"},{"name":"start","type":"uint48","internalType":"uint48"},{"name":"data","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"type":"error","name":"StoreHook_NotImplemented","inputs":[]}],"bytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"deployedBytecode":{"object":"0x","sourceMap":"","linkReferences":{}},"methodIdentifiers":{"onAfterDeleteRecord(bytes32,bytes32[],bytes32)":"83b5c95b","onAfterSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)":"5b28cdaf","onAfterSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)":"63584533","onAfterSpliceStaticData(bytes32,bytes32[],uint48,bytes)":"a8ba8721","onBeforeDeleteRecord(bytes32,bytes32[],bytes32)":"9faeaf45","onBeforeSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)":"57066c9c","onBeforeSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)":"55eb5a28","onBeforeSpliceStaticData(bytes32,bytes32[],uint48,bytes)":"964f667d","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"StoreHook_NotImplemented\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"onAfterDeleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"onAfterSetRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onAfterSpliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onAfterSpliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"onBeforeDeleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"onBeforeSetRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"dynamicFieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"EncodedLengths\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onBeforeSpliceDynamicData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"onBeforeSpliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"author\":\"MUD (https://mud.dev) by Lattice (https://lattice.xyz)\",\"details\":\"Implementers should override the hook functions to provide custom logic. If any hooks are activated without overriding these functions, they revert.\",\"kind\":\"dev\",\"methods\":{\"onAfterDeleteRecord(bytes32,bytes32[],bytes32)\":{\"details\":\"This function should be overridden to provide custom logic.\",\"params\":{\"fieldLayout\":\"The layout of the field, see FieldLayout.sol.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is to be deleted.\"}},\"onAfterSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)\":{\"details\":\"This function should be overridden to provide custom logic.\",\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"fieldLayout\":\"The layout of the field, see FieldLayout.sol.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record was set.\"}},\"onAfterSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)\":{\"details\":\"This function should be overridden to provide custom logic. Splice operations in dynamic data always reach the end of the dynamic data to avoid shifting data after the inserted or deleted data.\",\"params\":{\"data\":\"The data to be inserted into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the dynamic data of the record.\",\"dynamicFieldIndex\":\"The index of the dynamic field.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"startWithinField\":\"The start byte position within the field for splicing.\",\"tableId\":\"The ID of the table where the data is to be spliced.\"}},\"onAfterSpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"This function should be overridden to provide custom logic. Splice operations in static data always overwrite data starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to be written to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start byte position for splicing.\",\"tableId\":\"The ID of the table where the data is to be spliced.\"}},\"onBeforeDeleteRecord(bytes32,bytes32[],bytes32)\":{\"details\":\"This function should be overridden to provide custom logic.\",\"params\":{\"fieldLayout\":\"The layout of the field, see FieldLayout.sol.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"tableId\":\"The ID of the table where the record is to be deleted.\"}},\"onBeforeSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)\":{\"details\":\"This function should be overridden to provide custom logic.\",\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"fieldLayout\":\"The layout of the field, see FieldLayout.sol.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"staticData\":\"The static data of the record.\",\"tableId\":\"The ID of the table where the record is to be set.\"}},\"onBeforeSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)\":{\"details\":\"This function should be overridden to provide custom logic. Splice operations in dynamic data always reach the end of the dynamic data to avoid shifting data after the inserted or deleted data.\",\"params\":{\"data\":\"The data to be inserted into the dynamic data of the record at the start byte.\",\"deleteCount\":\"The number of bytes to delete in the dynamic data of the record.\",\"dynamicFieldIndex\":\"The index of the dynamic field.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"startWithinField\":\"The start byte position within the field for splicing.\",\"tableId\":\"The ID of the table where the data is to be spliced.\"}},\"onBeforeSpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"This function should be overridden to provide custom logic. Splice operations in static data always overwrite data starting at the start position, so the total length of the data remains the same and no data is shifted.\",\"params\":{\"data\":\"The data to be written to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the composite key for the record.\",\"start\":\"The start byte position for splicing.\",\"tableId\":\"The ID of the table where the data is to be spliced.\"}},\"supportsInterface(bytes4)\":{\"details\":\"This function is a part of the ERC-165 standard.\",\"params\":{\"interfaceId\":\"The ID of the interface to check.\"},\"returns\":{\"_0\":\"true if the interface is supported, false otherwise.\"}}},\"title\":\"Store Hook Contract\",\"version\":1},\"userdoc\":{\"errors\":{\"StoreHook_NotImplemented()\":[{\"notice\":\"Error emitted when a function is not implemented.\"}]},\"kind\":\"user\",\"methods\":{\"onAfterDeleteRecord(bytes32,bytes32[],bytes32)\":{\"notice\":\"Hook that runs after deleting a record.\"},\"onAfterSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)\":{\"notice\":\"Hook that runs after setting a record.\"},\"onAfterSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)\":{\"notice\":\"Hook that runs after splicing dynamic (variable length) data.\"},\"onAfterSpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Hook that runs after splicing static (fixed length) data.\"},\"onBeforeDeleteRecord(bytes32,bytes32[],bytes32)\":{\"notice\":\"Hook that runs before deleting a record.\"},\"onBeforeSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)\":{\"notice\":\"Hook that runs before setting a record.\"},\"onBeforeSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)\":{\"notice\":\"Hook that runs before splicing dynamic (variable length) data.\"},\"onBeforeSpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Hook that runs before splicing static (fixed length) data.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Check if the interface is supported.\"}},\"notice\":\"This abstract contract provides hooks for the storage operations.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/store/src/StoreHook.sol\":\"StoreHook\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"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/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"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/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b\",\"dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7\"]},\"node_modules/@latticexyz/store/src/StoreHook.sol\":{\"keccak256\":\"0x5123aae46b3f37ea6d7d567fd82658ea7f58d06a6ebd76aaf358582459f13173\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7223f7ca27353b8d86bd75441df8221383e6966caa7c25f9a802e7623bb5275d\",\"dweb:/ipfs/QmaGmQK5JK2jS2sodKVxWuKiRNrtN8ErbdqE53PDatEDym\"]},\"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":[],"type":"error","name":"StoreHook_NotImplemented"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"onAfterDeleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"onAfterSetRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onAfterSpliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onAfterSpliceStaticData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"onBeforeDeleteRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"bytes","name":"staticData","type":"bytes"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"dynamicData","type":"bytes"},{"internalType":"FieldLayout","name":"fieldLayout","type":"bytes32"}],"stateMutability":"nonpayable","type":"function","name":"onBeforeSetRecord"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint8","name":"dynamicFieldIndex","type":"uint8"},{"internalType":"uint40","name":"startWithinField","type":"uint40"},{"internalType":"uint40","name":"deleteCount","type":"uint40"},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onBeforeSpliceDynamicData"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]"},{"internalType":"uint48","name":"start","type":"uint48"},{"internalType":"bytes","name":"data","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"onBeforeSpliceStaticData"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"onAfterDeleteRecord(bytes32,bytes32[],bytes32)":{"details":"This function should be overridden to provide custom logic.","params":{"fieldLayout":"The layout of the field, see FieldLayout.sol.","keyTuple":"An array representing the composite key for the record.","tableId":"The ID of the table where the record is to be deleted."}},"onAfterSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)":{"details":"This function should be overridden to provide custom logic.","params":{"dynamicData":"The dynamic data of the record.","encodedLengths":"The encoded lengths of the dynamic data of the record.","fieldLayout":"The layout of the field, see FieldLayout.sol.","keyTuple":"An array representing the composite key for the record.","staticData":"The static data of the record.","tableId":"The ID of the table where the record was set."}},"onAfterSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)":{"details":"This function should be overridden to provide custom logic. Splice operations in dynamic data always reach the end of the dynamic data to avoid shifting data after the inserted or deleted data.","params":{"data":"The data to be inserted into the dynamic data of the record at the start byte.","deleteCount":"The number of bytes to delete in the dynamic data of the record.","dynamicFieldIndex":"The index of the dynamic field.","encodedLengths":"The encoded lengths of the dynamic data of the record.","keyTuple":"An array representing the composite key for the record.","startWithinField":"The start byte position within the field for splicing.","tableId":"The ID of the table where the data is to be spliced."}},"onAfterSpliceStaticData(bytes32,bytes32[],uint48,bytes)":{"details":"This function should be overridden to provide custom logic. Splice operations in static data always overwrite data starting at the start position, so the total length of the data remains the same and no data is shifted.","params":{"data":"The data to be written to the static data of the record at the start byte.","keyTuple":"An array representing the composite key for the record.","start":"The start byte position for splicing.","tableId":"The ID of the table where the data is to be spliced."}},"onBeforeDeleteRecord(bytes32,bytes32[],bytes32)":{"details":"This function should be overridden to provide custom logic.","params":{"fieldLayout":"The layout of the field, see FieldLayout.sol.","keyTuple":"An array representing the composite key for the record.","tableId":"The ID of the table where the record is to be deleted."}},"onBeforeSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)":{"details":"This function should be overridden to provide custom logic.","params":{"dynamicData":"The dynamic data of the record.","encodedLengths":"The encoded lengths of the dynamic data of the record.","fieldLayout":"The layout of the field, see FieldLayout.sol.","keyTuple":"An array representing the composite key for the record.","staticData":"The static data of the record.","tableId":"The ID of the table where the record is to be set."}},"onBeforeSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)":{"details":"This function should be overridden to provide custom logic. Splice operations in dynamic data always reach the end of the dynamic data to avoid shifting data after the inserted or deleted data.","params":{"data":"The data to be inserted into the dynamic data of the record at the start byte.","deleteCount":"The number of bytes to delete in the dynamic data of the record.","dynamicFieldIndex":"The index of the dynamic field.","encodedLengths":"The encoded lengths of the dynamic data of the record.","keyTuple":"An array representing the composite key for the record.","startWithinField":"The start byte position within the field for splicing.","tableId":"The ID of the table where the data is to be spliced."}},"onBeforeSpliceStaticData(bytes32,bytes32[],uint48,bytes)":{"details":"This function should be overridden to provide custom logic. Splice operations in static data always overwrite data starting at the start position, so the total length of the data remains the same and no data is shifted.","params":{"data":"The data to be written to the static data of the record at the start byte.","keyTuple":"An array representing the composite key for the record.","start":"The start byte position for splicing.","tableId":"The ID of the table where the data is to be spliced."}},"supportsInterface(bytes4)":{"details":"This function is a part of the ERC-165 standard.","params":{"interfaceId":"The ID of the interface to check."},"returns":{"_0":"true if the interface is supported, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"onAfterDeleteRecord(bytes32,bytes32[],bytes32)":{"notice":"Hook that runs after deleting a record."},"onAfterSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)":{"notice":"Hook that runs after setting a record."},"onAfterSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)":{"notice":"Hook that runs after splicing dynamic (variable length) data."},"onAfterSpliceStaticData(bytes32,bytes32[],uint48,bytes)":{"notice":"Hook that runs after splicing static (fixed length) data."},"onBeforeDeleteRecord(bytes32,bytes32[],bytes32)":{"notice":"Hook that runs before deleting a record."},"onBeforeSetRecord(bytes32,bytes32[],bytes,bytes32,bytes,bytes32)":{"notice":"Hook that runs before setting a record."},"onBeforeSpliceDynamicData(bytes32,bytes32[],uint8,uint40,uint40,bytes32,bytes)":{"notice":"Hook that runs before splicing dynamic (variable length) data."},"onBeforeSpliceStaticData(bytes32,bytes32[],uint48,bytes)":{"notice":"Hook that runs before splicing static (fixed length) data."},"supportsInterface(bytes4)":{"notice":"Check if the interface is supported."}},"version":1}},"settings":{"remappings":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/store/src/StoreHook.sol":"StoreHook"},"evmVersion":"cancun","libraries":{}},"sources":{"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/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"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/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5","urls":["bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b","dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreHook.sol":{"keccak256":"0x5123aae46b3f37ea6d7d567fd82658ea7f58d06a6ebd76aaf358582459f13173","urls":["bzz-raw://7223f7ca27353b8d86bd75441df8221383e6966caa7c25f9a802e7623bb5275d","dweb:/ipfs/QmaGmQK5JK2jS2sodKVxWuKiRNrtN8ErbdqE53PDatEDym"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x67e0d59237bd37424827ecde1ecdbe71f65376af517b0623cd8f8d5451bca7a6","urls":["bzz-raw://09c5ec7fe73e06140957d44a3d9938587711c783ccbf08ff017638c9279a3168","dweb:/ipfs/QmfS9ZRqHXmBJ1h5B4x4gbU6d18DtMgKZSkxhQgNVRxueu"],"license":"MIT"}},"version":1},"id":25}
@@ -0,0 +1 @@
1
+ []
@@ -0,0 +1 @@
1
+ {"abi":[],"bytecode":{"object":"0x602c6032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c6343000818000a","sourceMap":"770:14289:32:-:0;;;;;;;;;;;;;;;-1:-1:-1;;;770:14289:32;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x730000000000000000000000000000000000000000301460806040525f80fdfea164736f6c6343000818000a","sourceMap":"770:14289:32:-:0;;;;;;;;","linkReferences":{}},"methodIdentifiers":{},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{},\"version\":1}},\"settings\":{\"compilationTarget\":{\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":\"StoreHooks\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/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/Bytes.sol\":{\"keccak256\":\"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35\",\"dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6\"]},\"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/Hook.sol\":{\"keccak256\":\"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3\",\"dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"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/ISliceErrors.sol\":{\"keccak256\":\"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883\",\"dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc\",\"dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6\",\"dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08\",\"dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562\",\"dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p\"]},\"node_modules/@latticexyz/store/src/IStoreKernel.sol\":{\"keccak256\":\"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0\",\"dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xdcf28b3293d4d6c1fe2808a8918c1b2122e4e0e49f2793c79ebd2b9ae210ff7b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb3d9cc80f549ed0c5b768aea69fb1b3c364bd4f85d193a3040c411b594d94db\",\"dweb:/ipfs/QmYYdY5CjPHiW5ucXihTva1eHsCPNqBsvL6zYYafH3ap4p\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a\",\"dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890\",\"dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b\",\"dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x0d2a08030d21292ecbcc850d9111f3817d03f17cd5e02186894848a9152d79d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f30024c1613fb587aaba4c1dcb8e4e46ed765a2cebd5b63fbebd327d1bf13d3\",\"dweb:/ipfs/QmZzqSnPMYKDYwbFNvUFrvuazMUyQHzQ59w3A9x6juHAm7\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4\",\"dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee\",\"dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2\",\"dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91\",\"dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4\",\"dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xcc0fa969a57724e7a9184009e2b1ea8ecb209a06e283c6d2b6a15cabff35f39d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d91985b8f48fcb8259b776c10bc17a1656e8dbeaa15c0c0e73368af38e6cfc8a\",\"dweb:/ipfs/QmRiYbrXqqWcTrvwz95kN6ZiMhUBfLiUycxQiSGeZFDkuo\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xa52e8323cc7227d69a3c6b2e244b4e0face106eeaa5cf23e759b0278b0f4a7ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf5d3ede2d114c26abe7b5268ed17aedb56d6ded91af19019ecebb75edf48b36\",\"dweb:/ipfs/QmWwqNFjqWFhfv8ABRXV9mbZBGumz741YCmVuQPqtiVZaD\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0x155aa0e073774674596a28371a3a863ad1d6c44d418140269d2982a45e40734b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c849ad6563c4afbdd7eec40042c9afa0d9919ece10c2acab390e358095ddd160\",\"dweb:/ipfs/QmbB7eVhKe3simEvugH18e1fBJKmwqionms3YWbWuRBDYV\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x7930483bedccb95dd73447108e67d576924c83ec591cb70c699cdea7ebaabccc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5c23093bf098e8e1f224a0e20beb6860d461a5f8d33265d382e3d43bdc431080\",\"dweb:/ipfs/QmSQwjDCEgTUgUWajjETvCRJd18ZPRhYPyS6Rcg6wDizXw\"]},\"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/storeHookTypes.sol\":{\"keccak256\":\"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3\",\"dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586\",\"dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2\"]},\"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/EncodeArray.sol\":{\"keccak256\":\"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea\",\"dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3\",\"dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a\",\"dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ\"]}},\"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":["@latticexyz/=node_modules/@latticexyz/","ds-test/=node_modules/ds-test/src/","forge-std/=node_modules/forge-std/src/"],"optimizer":{"enabled":true,"runs":3000},"metadata":{"bytecodeHash":"none"},"compilationTarget":{"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":"StoreHooks"},"evmVersion":"cancun","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/Bytes.sol":{"keccak256":"0x7dec900f9c9e7dff59430fa6f520e76c56338c3e829201aea140d49342e4fef8","urls":["bzz-raw://e55c1dfcda94dcc64b8577949b2e92a9d3fc44f5fba1ae77ceacccfdc8e22e35","dweb:/ipfs/QmS7uRJbEQYkPuZ5Dz5aSNjaaxj9PA8RtxUeUGN2W3jZx6"],"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/Hook.sol":{"keccak256":"0xd016a2e1260f5a81ff9a8dfac58d7947e114414df8cce7302a2629908ea5f18e","urls":["bzz-raw://0c558a6f3a5f540c0190fa6d642a094a185c5db1acfc2437c7dbde0340f00ac3","dweb:/ipfs/QmViAHvR7U7HNfBiBZEMFiy1TTSHDFNiDzBfQSeLBShCky"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"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/ISliceErrors.sol":{"keccak256":"0x72684b7dfc1b44537401ccf10d6120186d02323266fcc762bc81859985eded4c","urls":["bzz-raw://e8d037b6937969ae54018ddf647eeaf5eb69a2b0bf9edf9456d3d270316b2883","dweb:/ipfs/QmfYJeyAmzRqpn68FteiM97p5t17iBw62FCET4bK5g4w37"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x42515d1410333a3573f78a460576271ef62c16edad5cf771ef6287b83ca1c706","urls":["bzz-raw://6a58d03c4cf420df57d2b2e2e7932daad877e46e89561b46e1fa9f593a701bdc","dweb:/ipfs/QmeFmKS7J1WqqBAgXkyxxx2fGA8JzuGszUmVsV2T6DYtsL"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x37e4d2f015dd4005ff9b3f711257c891027804bc268db1791984af4989951912","urls":["bzz-raw://a4a566ea96b69211f503707f69a9f9012d5873a3fd57b3f221549f46a7518df6","dweb:/ipfs/QmVgcE3JufJr3iyeV6xqkvS4YtDcy6Eqyram2yzWUhwoB4"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0x8606e9de37943c74beabb9ac9acd2132f951bed1ef79f2f4f3de83ed1f271f6a","urls":["bzz-raw://d13adeee7ae9e687bf1cd12a8c36223179685fc828a7c468ee9311c879401b08","dweb:/ipfs/QmQeb2ArSoQpE6ujBbDj9LY3xqpVCPiz3bh9SLT6siE8RY"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x6574a30a2bbd8a0de21b2504c55effb8802fdeff62296af82a9380bd753adcc4","urls":["bzz-raw://85a859c533f51b584a9a2e8a64d61b6cf6f69bfcff1b926ad787518b1cae9562","dweb:/ipfs/QmVyjmyJ69ZeqaXHg91JtGLVahRfZ7KtWaessLWZ6rYk9p"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreKernel.sol":{"keccak256":"0x37a23dcbabc5937a717f2fda636b6a97963ed4b5a96870a62dfb199a8b692f89","urls":["bzz-raw://ac9741ea6daf21f39699be11afd919ae3ec07df24d948aaaa6549456fefd7fc0","dweb:/ipfs/QmeiPQkZitM4Pc3i6L87thU71Fs1JVWAgMqXnSK8VrCq75"],"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/IStoreRegistration.sol":{"keccak256":"0x9e91a73f93cc9ebc00c265c83177f6a3f8a156749a9261202e2845e12aeaa96b","urls":["bzz-raw://a39280d87d22dd0a959d8f55925cb092dba1fee2f11d3dd8e3ffabed45a9ab6a","dweb:/ipfs/QmRMBFLJtT2KN43Xz9P3vUNWxXrP8rLTNBFw2P6Z7EGeaS"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x120fd448da5806e09ecb5327ad4dba64df01d2ee7232de0979133627e87e24ba","urls":["bzz-raw://7a3cb151b2ddee217f330d61813b2dcd997de94940c903719f6d066a21467890","dweb:/ipfs/Qmbes1RRY6KdtsMohp8834xXyipeQK9GJ41NfgXK1d1QAZ"],"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/ResourceId.sol":{"keccak256":"0x842b07f2ff9df2e1ecf9bf424b0e5a77e1471c983d674cf86b76c365178d6cc5","urls":["bzz-raw://f4c2df8853b020aef1bb8615ac69d5512a9b5385b82c88e03b27dc521c9d007b","dweb:/ipfs/QmWEDiJn69DvHsdrikrMWY8DERWPSeWwVYgPcunfq3yiT7"],"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/Slice.sol":{"keccak256":"0xae6c03881fdfa56cba1879d9c9c6b52c2829e6a278a200176678d8da05a89345","urls":["bzz-raw://3cad7dc4944c0518de2e7f99697485d365ae37aa6cad6967996377c2dd951fe4","dweb:/ipfs/QmW3grFwr8BcgJmLfjLbj3FthnD7NRUBFMFiahbXztHPr7"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x7e735a4c7fa8b8a5fe2371d90801e3287ddb78efed69b31e1a76f0b7b153c4c3","urls":["bzz-raw://9e6db36bd52144b6feeecd91a58fc311127a3892fc96c4171db5b570fe9876ee","dweb:/ipfs/QmS6LqnTZvpMc4eiz5JowBoNnh3RYemG6JHjqtYucT1rQi"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x9513dc38e5baadde0ba9b08320a324043b0e88a10702be5c3507da8c3d45e861","urls":["bzz-raw://99c80c65a394763668e4aed69220fec6bb3ed847fb277ddd1ff1d4bfdf452da2","dweb:/ipfs/QmRT2BATKtrYmixWMuWo9Cz8g8oscfLNSmvjxTyiTNA1pc"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x7edf7c1641408f3a580eb28bda58054583cb846f875608612671c6d40712ba40","urls":["bzz-raw://4146adef610d1daab085a81aa9f2d4fd8c4e5f459b9ef184f3ef23465573cf91","dweb:/ipfs/QmQqZMsbkzSNG6VfYzQLdRCBCsNohBSVQmWoTP6QvKmKUP"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0x094a6f1e2910b345b6b254e0fc2c8882b3190c673f7ee19742e857057a4d3f85","urls":["bzz-raw://18908e2e7e878635abea72ef99851fddd204371e6b641f010e831ebfa0b1bfd4","dweb:/ipfs/QmSNAxXqxTrzPkZ4rSAQgBnuer1yLPq74hoqnzrZV3WGsb"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xcc0fa969a57724e7a9184009e2b1ea8ecb209a06e283c6d2b6a15cabff35f39d","urls":["bzz-raw://d91985b8f48fcb8259b776c10bc17a1656e8dbeaa15c0c0e73368af38e6cfc8a","dweb:/ipfs/QmRiYbrXqqWcTrvwz95kN6ZiMhUBfLiUycxQiSGeZFDkuo"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xa52e8323cc7227d69a3c6b2e244b4e0face106eeaa5cf23e759b0278b0f4a7ab","urls":["bzz-raw://bf5d3ede2d114c26abe7b5268ed17aedb56d6ded91af19019ecebb75edf48b36","dweb:/ipfs/QmWwqNFjqWFhfv8ABRXV9mbZBGumz741YCmVuQPqtiVZaD"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0x155aa0e073774674596a28371a3a863ad1d6c44d418140269d2982a45e40734b","urls":["bzz-raw://c849ad6563c4afbdd7eec40042c9afa0d9919ece10c2acab390e358095ddd160","dweb:/ipfs/QmbB7eVhKe3simEvugH18e1fBJKmwqionms3YWbWuRBDYV"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x7930483bedccb95dd73447108e67d576924c83ec591cb70c699cdea7ebaabccc","urls":["bzz-raw://5c23093bf098e8e1f224a0e20beb6860d461a5f8d33265d382e3d43bdc431080","dweb:/ipfs/QmSQwjDCEgTUgUWajjETvCRJd18ZPRhYPyS6Rcg6wDizXw"],"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/storeHookTypes.sol":{"keccak256":"0x4f29001e53690ce74fe405a6d0376a564c9c743d1631d36fab04331865e4d572","urls":["bzz-raw://138c80abd63225a3eeb01ebfa1f9288e188a7ee5b2266b275fb4ed31b5aa30e3","dweb:/ipfs/QmdEx9uHgCCbTcetGwFH5a66Ft7ajmrMDXvP1fW7WjnnE2"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x1c4cb6b3ecf76f614479ab304d7de3ade0e99c7ccfd07717b57c92f699a27261","urls":["bzz-raw://2c9b0e0c9b3b5610d6fd65a8ffd7c54df390a34ccc70d58f4a055c49ad1ea586","dweb:/ipfs/QmP6ffpnR7aRyvq9AiUkVNH6LbGfFP3NDq7E2n2PVcHhp2"],"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/EncodeArray.sol":{"keccak256":"0x259ee545fd9dfd4767f0b7fef31f52fd3c54c4a1c6657d6fbda4927800c937b3","urls":["bzz-raw://0a4e31efa9f476cd267af7c3e11fe0151252206a1f6407a80a4092444c2de8ea","dweb:/ipfs/QmRF4gWYw33mFTMh7nX8DJ1qzx3Ko6yMsnxubzYTRppdyo"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x0e74ff88ec94cb33f79d8afc1497c4fdccf02db40ab47f3701c7d02fc305d4d8","urls":["bzz-raw://36b7cd0c2a3f2dcdc83ab7ac5a93f123746ce29c0f1000f2b275ad2c647ff0f3","dweb:/ipfs/QmYdipHYUhHhS78wLdtmKZUK14FEwpto5mFy3rNeZssMLz"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x78c571906ee999ee7e56d4f7702b8a93c3a9e55e6b552aca115b5f6ac7f1c80a","urls":["bzz-raw://a9f141b2d556b2a2545e7db5606e8a038679a995a22aeaf1702cb3a60320b60a","dweb:/ipfs/QmY7x258Fhj3TT3RT4sNyyfiRphVYdZXhtAnSYpasJ4xVQ"],"license":"MIT"}},"version":1},"id":32}