@latticexyz/world-modules 2.0.0-main-fd10cff6 → 2.0.0-main-fa74f25e

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 (87) hide show
  1. package/out/ArrayLib.sol/ArrayLib.json +255 -255
  2. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +244 -220
  3. package/out/CallboundDelegations.sol/CallboundDelegations.json +2595 -2595
  4. package/out/DelegationControl.sol/DelegationControl.json +125 -101
  5. package/out/Hooks.sol/Hooks.json +45 -45
  6. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +64 -64
  7. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +53 -53
  8. package/out/IBaseWorld.sol/IBaseWorld.json +130 -85
  9. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +51 -51
  10. package/out/ICoreSystem.sol/ICoreSystem.json +6 -6
  11. package/out/IDelegationControl.sol/IDelegationControl.json +50 -26
  12. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +20 -20
  13. package/out/ISystemHook.sol/ISystemHook.json +171 -131
  14. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.json +13 -13
  15. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +157 -109
  16. package/out/IWorldErrors.sol/IWorldErrors.json +345 -255
  17. package/out/IWorldKernel.sol/IWorldCall.json +294 -254
  18. package/out/IWorldKernel.sol/IWorldKernel.json +321 -258
  19. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +279 -253
  20. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +201 -201
  21. package/out/KeysInTable.sol/KeysInTable.json +10668 -10668
  22. package/out/KeysInTableHook.sol/KeysInTableHook.json +862 -862
  23. package/out/KeysInTableModule.sol/KeysInTableModule.json +573 -549
  24. package/out/KeysWithValue.sol/KeysWithValue.json +3828 -3828
  25. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1011 -1011
  26. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +462 -438
  27. package/out/Module.sol/Module.json +109 -85
  28. package/out/ResourceIds.sol/ResourceIds.json +45 -45
  29. package/out/Schema.sol/SchemaInstance.json +30 -30
  30. package/out/Schema.sol/SchemaLib.json +30 -30
  31. package/out/SchemaType.sol/SchemaType.json +276 -276
  32. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +339 -315
  33. package/out/StoreHook.sol/StoreHook.json +358 -358
  34. package/out/StoreHooks.sol/StoreHooks.json +45 -45
  35. package/out/System.sol/System.json +84 -41
  36. package/out/Tables.sol/Tables.json +73 -73
  37. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +148 -124
  38. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1986 -1986
  39. package/out/UniqueEntity.sol/UniqueEntity.json +1402 -1402
  40. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +366 -342
  41. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +138 -102
  42. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +2722 -2722
  43. package/out/WorldContext.sol/WorldContextConsumer.json +774 -677
  44. package/out/WorldContext.sol/WorldContextProvider.json +737 -677
  45. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +777 -765
  46. package/out/WorldResourceId.sol/WorldResourceIdLib.json +777 -765
  47. package/out/constants.sol/constants.json +115 -115
  48. package/out/getKeysInTable.sol/getKeysInTable.json +564 -564
  49. package/out/getKeysWithValue.sol/getKeysWithValue.json +264 -264
  50. package/out/getTargetTableId.sol/getTargetTableId.json +163 -163
  51. package/out/getUniqueEntity.sol/getUniqueEntity.json +88 -88
  52. package/out/hasKey.sol/hasKey.json +130 -130
  53. package/out/index.sol/index.json +53 -53
  54. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +202 -157
  55. package/out/query.sol/query.json +1154 -1154
  56. package/out/revertWithBytes.sol/revertWithBytes.json +51 -51
  57. package/out/src/Bytes.sol/Bytes.json +1332 -1332
  58. package/out/src/FieldLayout.sol/FieldLayoutInstance.json +697 -697
  59. package/out/src/FieldLayout.sol/FieldLayoutLib.json +697 -697
  60. package/out/src/IStore.sol/IStore.json +53 -53
  61. package/out/src/IWorldKernel.sol/IWorldCall.json +307 -267
  62. package/out/src/IWorldKernel.sol/IWorldKernel.json +334 -271
  63. package/out/src/IWorldKernel.sol/IWorldModuleInstallation.json +292 -266
  64. package/out/src/Memory.sol/Memory.json +89 -89
  65. package/out/src/PackedCounter.sol/PackedCounterInstance.json +923 -923
  66. package/out/src/PackedCounter.sol/PackedCounterLib.json +923 -923
  67. package/out/src/ResourceId.sol/ResourceIdInstance.json +112 -112
  68. package/out/src/ResourceId.sol/ResourceIdLib.json +112 -112
  69. package/out/src/Schema.sol/SchemaInstance.json +787 -787
  70. package/out/src/Schema.sol/SchemaLib.json +787 -787
  71. package/out/src/Slice.sol/SliceInstance.json +429 -429
  72. package/out/src/Slice.sol/SliceLib.json +429 -429
  73. package/out/src/StoreCore.sol/StoreCore.json +4455 -4455
  74. package/out/src/StoreCore.sol/StoreCoreInternal.json +4455 -4455
  75. package/out/src/StoreSwitch.sol/StoreSwitch.json +2454 -2454
  76. package/out/src/WorldContext.sol/WorldContextConsumer.json +780 -683
  77. package/out/src/WorldContext.sol/WorldContextProvider.json +743 -683
  78. package/out/src/WorldResourceId.sol/WorldResourceIdInstance.json +777 -765
  79. package/out/src/WorldResourceId.sol/WorldResourceIdLib.json +777 -765
  80. package/out/storeHookTypes.sol/storeHookTypes.json +115 -115
  81. package/out/storeResourceTypes.sol/storeResourceTypes.json +12 -12
  82. package/out/tables/ResourceIds.sol/ResourceIds.json +1746 -1746
  83. package/out/tables/Tables.sol/Tables.json +7288 -7288
  84. package/out/tightcoder/EncodeArray.sol/EncodeArray.json +3246 -3246
  85. package/out/types.sol/types.json +39 -39
  86. package/out/worldResourceTypes.sol/worldResourceTypes.json +87 -87
  87. package/package.json +8 -8
@@ -1427,7 +1427,7 @@
1427
1427
  "unregisterStoreHook(bytes32,address)": "05609129",
1428
1428
  "worldVersion()": "6951955d"
1429
1429
  },
1430
- "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidDynamicDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"storeVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloStore\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"worldVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloWorld\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"creator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"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\":\"PackedCounter\",\"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\":\"PackedCounter\",\"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\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"coreModule\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"args\",\"type\":\"bytes\"}],\"name\":\"installRootModule\",\"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\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"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\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"keyNames\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"fieldNames\",\"type\":\"string[]\"}],\"name\":\"registerTable\",\"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\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"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\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"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\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"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\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storeVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"worldVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID. If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID on behalf of the given delegator. If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\"},\"creator()\":{\"notice\":\"The immutable original deployer of the World.\"},\"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.\"},\"initialize(address)\":{\"notice\":\"Allows the creator of the World to initialize the World once.\"},\"installRootModule(address,bytes)\":{\"notice\":\"Install the given root module in the World. Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.\"},\"worldVersion()\":{\"notice\":\"The version of the World.\"}},\"notice\":\"The IBaseWorld interface includes all systems dynamically added to the World during the deploy process.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IBaseWorld.sol\":\"IBaseWorld\"},\"evmVersion\":\"paris\",\"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\":\"0x770eff7a38b9b7b1613dc11ca09db4f28b42a117c9b39b2a06a650a58a250bdb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39f544110658a53def52c2a4e33b8b158b95a4f14fccea58d5268b6e728d86d4\",\"dweb:/ipfs/QmTesj6tjSFbfAiKUitXapdNYWPStS8bLkB3r22qfyHwUC\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xb36724e0369ad053579ec04b9b51707dd8dcc4a72b38404cebdf018ce40bf202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8745e1632b7ee94f128600837a36ae53fabaf73c506b0c6d1cae70ea2e9b086\",\"dweb:/ipfs/QmXuMqmybWjEPqWEx91DTM7KAUyxAmDcsj7riBfCfA427N\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xadb7ac513012e59b66ca70b786eec1465f6b44ae268765de6d8ae1f1a9531192\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://aa59a7d190154d7eba8fa6b5f0c6e5477f434a217f0e353c3b158a3c25895057\",\"dweb:/ipfs/QmeWTCwGJwZjjYYKdaSSWa1rzc4Uo4YXMUDotTQfdSCtRD\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x1a113ae394de69ca1db7e9acb1886eaee3967dcfed46fc78497e77bc26dd778f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://091e04dc9e8d5b3a492d1d39a6d06fd5b4bad3c282bd4c06a38d92bec3422513\",\"dweb:/ipfs/QmbfMi1bH9RAs4JMDxKmhVqpAoyoVgN9nd7o11SakJC1zQ\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x9092b65551d0f910e5645cebb5acadb387cdd192d75fa89cd6b293bd65b28827\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://478825a6f7eff9ddab968e71e1d55ebee279d3b318f10976d9334384000059c0\",\"dweb:/ipfs/Qme7NY976woRy3RQjE4tkkiwoXnoVtTmER3PbWCSbjZ2kb\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x2a7392d937f372fbcd0ee9333a5af33e2630587b6e6dd714b1cebf75d8cdfc15\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6dca5e58374dc496bbc33fbe7b0c3774d3767662b23630a515a59b13d69fe66c\",\"dweb:/ipfs/QmU15fFKVtmYgGivVG3wJfCnRKjsJY2jdEjp75FFCqUN7t\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0xb9070663ded3cad82285bb7610949e422f88abb48c2ddbd792af83d127d64212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://830490f1c888bec86df1e7ef43773d60ebdbdfdb2b91ab7fe074e2f38d7439dc\",\"dweb:/ipfs/QmS26fpXdZuGgMmjcdQDf9k1Bedn2dhjk9byFZJoNkctPZ\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xa6d353df9033207ea4b6b13cb13535d6d9abd6963e7c27749c5ca2a9bf5f8cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2827bf5d86d2011cde150e8a4c6b39d187398831870407ca8aa065257f04954a\",\"dweb:/ipfs/QmanvEbRTpN5u2YYnk8hTupoWugFAKL7xbj6cHUaZQ83WG\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x237a6871db470dda42feb50f4f237c066daf599cda28e48458d533d639f2b3d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca670b27fc6cc824223b6e99d307632baf9ee66a7d58cfbdcfca57e2d5eb1488\",\"dweb:/ipfs/QmVQx23VfsyYRvyRy5ZQEeUvNyfuK75DZ8EF4uKCGEQ4sr\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xd2180d53ecd31069b1166f170ecdcd85917ac50f45fc26fb39b49cee7ba00e37\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1494bb0a3228e2d194bddaed4761fd3ca865979f0e3f3a53acd271143a4aa0ac\",\"dweb:/ipfs/Qmaddnzzmu99iP9dTWK9ZeByh5dZyjY9SpVnRdvyr2fBAo\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf448fbb2bc9c982721a43234463656da5a49cea08543e62148d54f11e1ac3e2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://64b3579d9b9dcd73dca2beab3d4fcf60237420945ebbb2e9f4ffcc88f4110115\",\"dweb:/ipfs/QmaW5nN3zGEriSYHncye6Nz2TkAw1oo1CyG2JuJTJrJoXg\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x8b6c7af5ee330928aebb58c8872d3944304ee10ed11f8a325b6accc4ec5df81b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b866d158701c7a40834bed735194b804ef219f2bbe574e2307785fff7bcf9da1\",\"dweb:/ipfs/QmXzJfZkXVfyr2RFGwDuazeVnV3UWYmQxjKZ3KzFbbe75U\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x1efd826172c7004d5771c2abe6e27a36a7fb05273e81f05f2ec36a3dcfb9af2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3d024122b3f9d7f050fabd646a7151ab92dd90c0907b9025aa97656965b28e04\",\"dweb:/ipfs/QmYNyvdSDoMa6FaRzTV2JLcUZVSygnyS3HbRCdNZJ8PV7A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x4a61aefe72d6035b1e9aca7841aab44ebd26f8706bdbb447f382046fa94753b6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f715743739e4f8f8a98d78397025a92299ecb3b5dde88cc53bc1ab72bf531fa6\",\"dweb:/ipfs/QmVsYAupGWZUemE4t6xjLqztGHadQ8cyo9E4mT5ZDKUmTs\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x07c1468d1776e76c451d7ce1e94509bd02f664f89e6fc98d82925cf06ecce31d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://97bababaebe4bd8402fbff2db3395506f5277b8dcc53b88ceb636350f5438e3d\",\"dweb:/ipfs/QmP4dWkucmpgYztjv8HsXy21JqQYYn42nztzDAcSVuHSv1\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x3826d50fae1df0e69313e5f52c235e860a8c9ff2623a5e0ae3fd0438cfa557fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91806d1fe0ffa80ca861bd8eb7251911e523d0bbf72858300f0119ef12ae2961\",\"dweb:/ipfs/QmbPcr8eu32qhBwYfYem9nZ549BNc7Zjyc4VkYjFnM8nyQ\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xb2c27c7b8f974f1e3c70dd82c92f35f5bbd2887e16afe454e6dbc38300a51feb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6cbdbcc95835f67030eebdebeaf0bfd6faa612381179e7f7be8b9d3c00b20878\",\"dweb:/ipfs/QmNeZU5MmRQqhcLxN6BA2BQvgEst8yg67F4VQoPJEEK6kg\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5\",\"dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xec02d49b84a882c9cf01e4e5c16f890ed7c52db945fd43a6f97ffe87730ba0d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f8ee1a3aaac5789b36808bdae2e26e32d1664583a6b21680b5721f04d81bbc3\",\"dweb:/ipfs/Qmd4L3vGQiavSCe9g2k7riyA6cer3ruuxRFehAJCSxNRfw\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0xf3c2037a2899d81a15d5e13c7101337fcf01fcb321cec418e36da5617d52c99c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://565b53005697c2cb4ce744f4b192545e3b059d42ea97075fe022a47d0d38cb7f\",\"dweb:/ipfs/QmbGVQuozeLMwUic7LanodXacPiBfomKS8ERnkVFi9vSYz\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xc2e28cb4daa77de640228f7b3b5c98423e6c39a8b8f68af5a56b076cad7025de\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7ae7e0798dc66368f6dc56992cd1fe3046dd51bcb6fcc3b04b7fd0d48b9557bc\",\"dweb:/ipfs/QmXKJLLGjVaDBRhbvT47Mxkt2jFEBShvHLAtt3CZYVEbqF\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0x979e418af3d0d3a1866240bed58d2792f0718cc1803a1476ec8c93af5577cae3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c68cfe48ce67fe83f4b000c954891821d1fae31bfdd36de37a12637c8a1864f7\",\"dweb:/ipfs/QmUX9tHSMTeScbiacKX2T16gLV6aPKDU1Q3eDiNxqmVNa1\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0x36c772d51a5da46fcddf88831194d6d331083b8c8246fa79107c4b697c258d77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d2656374c398a2b075d5f26d2ab2c3ea315c99912e52d8030d50f5f8fdda8ac\",\"dweb:/ipfs/QmSG8uJr2ZbFVnht5cTG6xb6XbB6f3kvnznks4BdeAMYET\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x88f844f2c43757c819c8f140b30254f07c3484e12cce573879d43b2ee6a23f8b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://55a9095094c2b7b1043020681696380cfc3cffd1f264a70bacb44fccd0fc0a8a\",\"dweb:/ipfs/QmfPdLPr9hfV8X8yfHhEf2HmEWAnA4d1c6EHEjHMdeM7ML\"]},\"src/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x4e4c31988d816f7c256a8c252827ad4b30b5eb36741726b8f85021cf8f7db070\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41a44250a4de2ae6524f01b8091f338b0b43a10eecce6c12691812a246923cb6\",\"dweb:/ipfs/QmetGJd5tXPz9KAgmA5Wf6JTZ1PnhdJ9nDhsuVrEevYEjs\"]}},\"version\":1}",
1430
+ "rawMetadata": "{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"accessedIndex\",\"type\":\"uint256\"}],\"name\":\"Store_IndexOutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidDynamicDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint40\",\"name\":\"startWithinField\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"internalType\":\"uint40\",\"name\":\"fieldLength\",\"type\":\"uint40\"}],\"name\":\"Store_InvalidSplice\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"resource\",\"type\":\"string\"},{\"internalType\":\"address\",\"name\":\"caller\",\"type\":\"address\"}],\"name\":\"World_AccessDenied\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_AlreadyInitialized\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_CallbackNotAllowed\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"address\",\"name\":\"delegatee\",\"type\":\"address\"}],\"name\":\"World_DelegationNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"functionSelector\",\"type\":\"bytes4\"}],\"name\":\"World_FunctionSelectorNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"balance\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"amount\",\"type\":\"uint256\"}],\"name\":\"World_InsufficientBalance\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"contractAddress\",\"type\":\"address\"},{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"World_InterfaceNotSupported\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceId\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceAlreadyExists\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"World_ResourceNotFound\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"system\",\"type\":\"address\"}],\"name\":\"World_SystemAlreadyExists\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"World_UnlimitedDelegationNotAllowed\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"storeVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloStore\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"bytes32\",\"name\":\"worldVersion\",\"type\":\"bytes32\"}],\"name\":\"HelloWorld\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"Store_DeleteRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"uint40\",\"name\":\"deleteCount\",\"type\":\"uint40\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceDynamicData\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"call\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"delegator\",\"type\":\"address\"},{\"internalType\":\"ResourceId\",\"name\":\"systemId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"callData\",\"type\":\"bytes\"}],\"name\":\"callFrom\",\"outputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"stateMutability\":\"payable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"creator\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"}],\"name\":\"deleteRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"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\":\"PackedCounter\",\"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\":\"PackedCounter\",\"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\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"coreModule\",\"type\":\"address\"}],\"name\":\"initialize\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"contract IModule\",\"name\":\"module\",\"type\":\"address\"},{\"internalType\":\"bytes\",\"name\":\"args\",\"type\":\"bytes\"}],\"name\":\"installRootModule\",\"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\":\"uint256\",\"name\":\"byteLengthToPop\",\"type\":\"uint256\"}],\"name\":\"popFromDynamicField\",\"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\":\"bytes\",\"name\":\"dataToPush\",\"type\":\"bytes\"}],\"name\":\"pushToDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"},{\"internalType\":\"uint8\",\"name\":\"enabledHooksBitmap\",\"type\":\"uint8\"}],\"name\":\"registerStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"keySchema\",\"type\":\"bytes32\"},{\"internalType\":\"Schema\",\"name\":\"valueSchema\",\"type\":\"bytes32\"},{\"internalType\":\"string[]\",\"name\":\"keyNames\",\"type\":\"string[]\"},{\"internalType\":\"string[]\",\"name\":\"fieldNames\",\"type\":\"string[]\"}],\"name\":\"registerTable\",\"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\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setDynamicField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"setField\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setField\",\"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\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"setRecord\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"internalType\":\"uint8\",\"name\":\"fieldIndex\",\"type\":\"uint8\"},{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"FieldLayout\",\"name\":\"fieldLayout\",\"type\":\"bytes32\"}],\"name\":\"setStaticField\",\"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\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"spliceDynamicData\",\"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\":\"spliceStaticData\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"storeVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"contract IStoreHook\",\"name\":\"hookAddress\",\"type\":\"address\"}],\"name\":\"unregisterStoreHook\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"worldVersion\",\"outputs\":[{\"internalType\":\"bytes32\",\"name\":\"\",\"type\":\"bytes32\"}],\"stateMutability\":\"view\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"World_AccessDenied(string,address)\":[{\"params\":{\"caller\":\"The address of the user trying to access the resource.\",\"resource\":\"The resource's identifier.\"}}],\"World_CallbackNotAllowed(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector of the disallowed callback.\"}}],\"World_DelegationNotFound(address,address)\":[{\"params\":{\"delegatee\":\"The address of the delegatee.\",\"delegator\":\"The address of the delegator.\"}}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"params\":{\"functionSelector\":\"The function selector in question.\"}}],\"World_InsufficientBalance(uint256,uint256)\":[{\"params\":{\"amount\":\"The amount needed.\",\"balance\":\"The current balance.\"}}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"params\":{\"contractAddress\":\"The address of the contract in question.\",\"interfaceId\":\"The ID of the interface.\"}}],\"World_InvalidResourceId(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_ResourceNotFound(bytes32,string)\":[{\"params\":{\"resourceId\":\"The ID of the resource.\",\"resourceIdString\":\"The string representation of the resource ID.\"}}],\"World_SystemAlreadyExists(address)\":[{\"params\":{\"system\":\"The address of the system.\"}}]},\"events\":{\"HelloWorld(bytes32)\":{\"details\":\"Emitted upon successful World initialization.\",\"params\":{\"worldVersion\":\"The version of the World being initialized.\"}}},\"kind\":\"dev\",\"methods\":{\"call(bytes32,bytes)\":{\"details\":\"If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"callFrom(address,bytes32,bytes)\":{\"details\":\"If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).\",\"params\":{\"callData\":\"The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.\",\"delegator\":\"The address on whose behalf the call is made.\",\"systemId\":\"The ID of the system to be called.\"},\"returns\":{\"_0\":\"The abi encoded return data from the called system.\"}},\"creator()\":{\"returns\":{\"_0\":\"The address of the World's creator.\"}},\"initialize(address)\":{\"details\":\"Can only be called once by the creator.\",\"params\":{\"coreModule\":\"The CoreModule to be installed during initialization.\"}},\"installRootModule(address,bytes)\":{\"details\":\"Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.\",\"params\":{\"args\":\"The arguments provided for the module installation.\",\"module\":\"The module to be installed.\"}},\"worldVersion()\":{\"returns\":{\"_0\":\"The version identifier of the World.\"}}},\"version\":1},\"userdoc\":{\"errors\":{\"World_AccessDenied(string,address)\":[{\"notice\":\"Raised when a user tries to access a resource they don't have permission for.\"}],\"World_AlreadyInitialized()\":[{\"notice\":\"Raised when trying to initialize an already initialized World.\"}],\"World_CallbackNotAllowed(bytes4)\":[{\"notice\":\"Raised when the World is calling itself via an external call.\"}],\"World_DelegationNotFound(address,address)\":[{\"notice\":\"Raised when the specified delegation is not found.\"}],\"World_FunctionSelectorAlreadyExists(bytes4)\":[{\"notice\":\"Raised when trying to register a function selector that already exists.\"}],\"World_FunctionSelectorNotFound(bytes4)\":[{\"notice\":\"Raised when the specified function selector is not found.\"}],\"World_InsufficientBalance(uint256,uint256)\":[{\"notice\":\"Raised when there's an insufficient balance for a particular operation.\"}],\"World_InterfaceNotSupported(address,bytes4)\":[{\"notice\":\"Raised when the specified interface is not supported by the contract.\"}],\"World_InvalidResourceId(bytes32,string)\":[{\"notice\":\"Raised when an invalid resource ID is provided.\"}],\"World_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Raised when an invalid resource type is provided.\"}],\"World_ResourceAlreadyExists(bytes32,string)\":[{\"notice\":\"Raised when trying to register a resource that already exists.\"}],\"World_ResourceNotFound(bytes32,string)\":[{\"notice\":\"Raised when the specified resource is not found.\"}],\"World_SystemAlreadyExists(address)\":[{\"notice\":\"Raised when trying to register a system that already exists.\"}],\"World_UnlimitedDelegationNotAllowed()\":[{\"notice\":\"Raised when trying to create an unlimited delegation in a context where it is not allowed, e.g. when registering a namespace fallback delegation.\"}]},\"kind\":\"user\",\"methods\":{\"call(bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID.\"},\"callFrom(address,bytes32,bytes)\":{\"notice\":\"Call the system at the given system ID on behalf of the given delegator.\"},\"creator()\":{\"notice\":\"Retrieve the immutable original deployer of the World.\"},\"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.\"},\"initialize(address)\":{\"notice\":\"Initializes the World.\"},\"installRootModule(address,bytes)\":{\"notice\":\"Install the given root module in the World.\"},\"worldVersion()\":{\"notice\":\"Retrieve the version of the World.\"}},\"notice\":\"The IBaseWorld interface includes all systems dynamically added to the World during the deploy process.\",\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/interfaces/IBaseWorld.sol\":\"IBaseWorld\"},\"evmVersion\":\"paris\",\"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\":\"0x770eff7a38b9b7b1613dc11ca09db4f28b42a117c9b39b2a06a650a58a250bdb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39f544110658a53def52c2a4e33b8b158b95a4f14fccea58d5268b6e728d86d4\",\"dweb:/ipfs/QmTesj6tjSFbfAiKUitXapdNYWPStS8bLkB3r22qfyHwUC\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xb36724e0369ad053579ec04b9b51707dd8dcc4a72b38404cebdf018ce40bf202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d8745e1632b7ee94f128600837a36ae53fabaf73c506b0c6d1cae70ea2e9b086\",\"dweb:/ipfs/QmXuMqmybWjEPqWEx91DTM7KAUyxAmDcsj7riBfCfA427N\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xadb7ac513012e59b66ca70b786eec1465f6b44ae268765de6d8ae1f1a9531192\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://aa59a7d190154d7eba8fa6b5f0c6e5477f434a217f0e353c3b158a3c25895057\",\"dweb:/ipfs/QmeWTCwGJwZjjYYKdaSSWa1rzc4Uo4YXMUDotTQfdSCtRD\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x1a113ae394de69ca1db7e9acb1886eaee3967dcfed46fc78497e77bc26dd778f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://091e04dc9e8d5b3a492d1d39a6d06fd5b4bad3c282bd4c06a38d92bec3422513\",\"dweb:/ipfs/QmbfMi1bH9RAs4JMDxKmhVqpAoyoVgN9nd7o11SakJC1zQ\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x9092b65551d0f910e5645cebb5acadb387cdd192d75fa89cd6b293bd65b28827\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://478825a6f7eff9ddab968e71e1d55ebee279d3b318f10976d9334384000059c0\",\"dweb:/ipfs/Qme7NY976woRy3RQjE4tkkiwoXnoVtTmER3PbWCSbjZ2kb\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x2a7392d937f372fbcd0ee9333a5af33e2630587b6e6dd714b1cebf75d8cdfc15\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6dca5e58374dc496bbc33fbe7b0c3774d3767662b23630a515a59b13d69fe66c\",\"dweb:/ipfs/QmU15fFKVtmYgGivVG3wJfCnRKjsJY2jdEjp75FFCqUN7t\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0xb9070663ded3cad82285bb7610949e422f88abb48c2ddbd792af83d127d64212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://830490f1c888bec86df1e7ef43773d60ebdbdfdb2b91ab7fe074e2f38d7439dc\",\"dweb:/ipfs/QmS26fpXdZuGgMmjcdQDf9k1Bedn2dhjk9byFZJoNkctPZ\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xa6d353df9033207ea4b6b13cb13535d6d9abd6963e7c27749c5ca2a9bf5f8cef\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2827bf5d86d2011cde150e8a4c6b39d187398831870407ca8aa065257f04954a\",\"dweb:/ipfs/QmanvEbRTpN5u2YYnk8hTupoWugFAKL7xbj6cHUaZQ83WG\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x237a6871db470dda42feb50f4f237c066daf599cda28e48458d533d639f2b3d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ca670b27fc6cc824223b6e99d307632baf9ee66a7d58cfbdcfca57e2d5eb1488\",\"dweb:/ipfs/QmVQx23VfsyYRvyRy5ZQEeUvNyfuK75DZ8EF4uKCGEQ4sr\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xd2180d53ecd31069b1166f170ecdcd85917ac50f45fc26fb39b49cee7ba00e37\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1494bb0a3228e2d194bddaed4761fd3ca865979f0e3f3a53acd271143a4aa0ac\",\"dweb:/ipfs/Qmaddnzzmu99iP9dTWK9ZeByh5dZyjY9SpVnRdvyr2fBAo\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf448fbb2bc9c982721a43234463656da5a49cea08543e62148d54f11e1ac3e2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://64b3579d9b9dcd73dca2beab3d4fcf60237420945ebbb2e9f4ffcc88f4110115\",\"dweb:/ipfs/QmaW5nN3zGEriSYHncye6Nz2TkAw1oo1CyG2JuJTJrJoXg\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x8b6c7af5ee330928aebb58c8872d3944304ee10ed11f8a325b6accc4ec5df81b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b866d158701c7a40834bed735194b804ef219f2bbe574e2307785fff7bcf9da1\",\"dweb:/ipfs/QmXzJfZkXVfyr2RFGwDuazeVnV3UWYmQxjKZ3KzFbbe75U\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x1efd826172c7004d5771c2abe6e27a36a7fb05273e81f05f2ec36a3dcfb9af2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3d024122b3f9d7f050fabd646a7151ab92dd90c0907b9025aa97656965b28e04\",\"dweb:/ipfs/QmYNyvdSDoMa6FaRzTV2JLcUZVSygnyS3HbRCdNZJ8PV7A\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x4a61aefe72d6035b1e9aca7841aab44ebd26f8706bdbb447f382046fa94753b6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f715743739e4f8f8a98d78397025a92299ecb3b5dde88cc53bc1ab72bf531fa6\",\"dweb:/ipfs/QmVsYAupGWZUemE4t6xjLqztGHadQ8cyo9E4mT5ZDKUmTs\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x07c1468d1776e76c451d7ce1e94509bd02f664f89e6fc98d82925cf06ecce31d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://97bababaebe4bd8402fbff2db3395506f5277b8dcc53b88ceb636350f5438e3d\",\"dweb:/ipfs/QmP4dWkucmpgYztjv8HsXy21JqQYYn42nztzDAcSVuHSv1\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x3826d50fae1df0e69313e5f52c235e860a8c9ff2623a5e0ae3fd0438cfa557fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://91806d1fe0ffa80ca861bd8eb7251911e523d0bbf72858300f0119ef12ae2961\",\"dweb:/ipfs/QmbPcr8eu32qhBwYfYem9nZ549BNc7Zjyc4VkYjFnM8nyQ\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xb2c27c7b8f974f1e3c70dd82c92f35f5bbd2887e16afe454e6dbc38300a51feb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6cbdbcc95835f67030eebdebeaf0bfd6faa612381179e7f7be8b9d3c00b20878\",\"dweb:/ipfs/QmNeZU5MmRQqhcLxN6BA2BQvgEst8yg67F4VQoPJEEK6kg\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5\",\"dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xec02d49b84a882c9cf01e4e5c16f890ed7c52db945fd43a6f97ffe87730ba0d3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f8ee1a3aaac5789b36808bdae2e26e32d1664583a6b21680b5721f04d81bbc3\",\"dweb:/ipfs/Qmd4L3vGQiavSCe9g2k7riyA6cer3ruuxRFehAJCSxNRfw\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83\",\"dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0x9dc133cb55dc23fd6fcbbef8078bb4ea9bf67d698400cf89fc62b905b60cf5eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7c1a57df7052218483eafe72d873660f39a73e2e06c1b14ad8a579d85b94bc6c\",\"dweb:/ipfs/Qme7dnjvADGZyM2L7nZ51nSjsjXXF9isTVCpWaUCd1cEGs\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb\",\"dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0x36c772d51a5da46fcddf88831194d6d331083b8c8246fa79107c4b697c258d77\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2d2656374c398a2b075d5f26d2ab2c3ea315c99912e52d8030d50f5f8fdda8ac\",\"dweb:/ipfs/QmSG8uJr2ZbFVnht5cTG6xb6XbB6f3kvnznks4BdeAMYET\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2\",\"dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9\"]},\"src/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x4e4c31988d816f7c256a8c252827ad4b30b5eb36741726b8f85021cf8f7db070\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://41a44250a4de2ae6524f01b8091f338b0b43a10eecce6c12691812a246923cb6\",\"dweb:/ipfs/QmetGJd5tXPz9KAgmA5Wf6JTZ1PnhdJ9nDhsuVrEevYEjs\"]}},\"version\":1}",
1431
1431
  "metadata": {
1432
1432
  "compiler": {
1433
1433
  "version": "0.8.21+commit.d9974bed"
@@ -2804,20 +2804,65 @@
2804
2804
  ],
2805
2805
  "devdoc": {
2806
2806
  "kind": "dev",
2807
- "methods": {},
2807
+ "methods": {
2808
+ "call(bytes32,bytes)": {
2809
+ "details": "If the system is not public, the caller must have access to the namespace or name (encoded in the system ID).",
2810
+ "params": {
2811
+ "callData": "The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.",
2812
+ "systemId": "The ID of the system to be called."
2813
+ },
2814
+ "returns": {
2815
+ "_0": "The abi encoded return data from the called system."
2816
+ }
2817
+ },
2818
+ "callFrom(address,bytes32,bytes)": {
2819
+ "details": "If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID).",
2820
+ "params": {
2821
+ "callData": "The data to pass with the call, function selector (4 bytes) followed by the ABI encoded parameters.",
2822
+ "delegator": "The address on whose behalf the call is made.",
2823
+ "systemId": "The ID of the system to be called."
2824
+ },
2825
+ "returns": {
2826
+ "_0": "The abi encoded return data from the called system."
2827
+ }
2828
+ },
2829
+ "creator()": {
2830
+ "returns": {
2831
+ "_0": "The address of the World's creator."
2832
+ }
2833
+ },
2834
+ "initialize(address)": {
2835
+ "details": "Can only be called once by the creator.",
2836
+ "params": {
2837
+ "coreModule": "The CoreModule to be installed during initialization."
2838
+ }
2839
+ },
2840
+ "installRootModule(address,bytes)": {
2841
+ "details": "Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace.",
2842
+ "params": {
2843
+ "args": "The arguments provided for the module installation.",
2844
+ "module": "The module to be installed."
2845
+ }
2846
+ },
2847
+ "worldVersion()": {
2848
+ "returns": {
2849
+ "_0": "The version identifier of the World."
2850
+ }
2851
+ }
2852
+ },
2808
2853
  "version": 1
2809
2854
  },
2810
2855
  "userdoc": {
2811
2856
  "kind": "user",
2812
2857
  "methods": {
2813
2858
  "call(bytes32,bytes)": {
2814
- "notice": "Call the system at the given system ID. If the system is not public, the caller must have access to the namespace or name (encoded in the system ID)."
2859
+ "notice": "Call the system at the given system ID."
2815
2860
  },
2816
2861
  "callFrom(address,bytes32,bytes)": {
2817
- "notice": "Call the system at the given system ID on behalf of the given delegator. If the system is not public, the delegator must have access to the namespace or name (encoded in the system ID)."
2862
+ "notice": "Call the system at the given system ID on behalf of the given delegator."
2818
2863
  },
2819
2864
  "creator()": {
2820
- "notice": "The immutable original deployer of the World."
2865
+ "notice": "Retrieve the immutable original deployer of the World."
2821
2866
  },
2822
2867
  "getDynamicField(bytes32,bytes32[],uint8)": {
2823
2868
  "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)"
@@ -2850,13 +2895,13 @@
2850
2895
  "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."
2851
2896
  },
2852
2897
  "initialize(address)": {
2853
- "notice": "Allows the creator of the World to initialize the World once."
2898
+ "notice": "Initializes the World."
2854
2899
  },
2855
2900
  "installRootModule(address,bytes)": {
2856
- "notice": "Install the given root module in the World. Requires the caller to own the root namespace. The module is delegatecalled and installed in the root namespace."
2901
+ "notice": "Install the given root module in the World."
2857
2902
  },
2858
2903
  "worldVersion()": {
2859
- "notice": "The version of the World."
2904
+ "notice": "Retrieve the version of the World."
2860
2905
  }
2861
2906
  },
2862
2907
  "version": 1
@@ -3034,26 +3079,26 @@
3034
3079
  "license": "MIT"
3035
3080
  },
3036
3081
  "node_modules/@latticexyz/world/src/IWorldErrors.sol": {
3037
- "keccak256": "0xf3c2037a2899d81a15d5e13c7101337fcf01fcb321cec418e36da5617d52c99c",
3082
+ "keccak256": "0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7",
3038
3083
  "urls": [
3039
- "bzz-raw://565b53005697c2cb4ce744f4b192545e3b059d42ea97075fe022a47d0d38cb7f",
3040
- "dweb:/ipfs/QmbGVQuozeLMwUic7LanodXacPiBfomKS8ERnkVFi9vSYz"
3084
+ "bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83",
3085
+ "dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4"
3041
3086
  ],
3042
3087
  "license": "MIT"
3043
3088
  },
3044
3089
  "node_modules/@latticexyz/world/src/IWorldKernel.sol": {
3045
- "keccak256": "0xc2e28cb4daa77de640228f7b3b5c98423e6c39a8b8f68af5a56b076cad7025de",
3090
+ "keccak256": "0x9dc133cb55dc23fd6fcbbef8078bb4ea9bf67d698400cf89fc62b905b60cf5eb",
3046
3091
  "urls": [
3047
- "bzz-raw://7ae7e0798dc66368f6dc56992cd1fe3046dd51bcb6fcc3b04b7fd0d48b9557bc",
3048
- "dweb:/ipfs/QmXKJLLGjVaDBRhbvT47Mxkt2jFEBShvHLAtt3CZYVEbqF"
3092
+ "bzz-raw://7c1a57df7052218483eafe72d873660f39a73e2e06c1b14ad8a579d85b94bc6c",
3093
+ "dweb:/ipfs/Qme7dnjvADGZyM2L7nZ51nSjsjXXF9isTVCpWaUCd1cEGs"
3049
3094
  ],
3050
3095
  "license": "MIT"
3051
3096
  },
3052
3097
  "node_modules/@latticexyz/world/src/WorldResourceId.sol": {
3053
- "keccak256": "0x979e418af3d0d3a1866240bed58d2792f0718cc1803a1476ec8c93af5577cae3",
3098
+ "keccak256": "0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417",
3054
3099
  "urls": [
3055
- "bzz-raw://c68cfe48ce67fe83f4b000c954891821d1fae31bfdd36de37a12637c8a1864f7",
3056
- "dweb:/ipfs/QmUX9tHSMTeScbiacKX2T16gLV6aPKDU1Q3eDiNxqmVNa1"
3100
+ "bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb",
3101
+ "dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK"
3057
3102
  ],
3058
3103
  "license": "MIT"
3059
3104
  },
@@ -3066,10 +3111,10 @@
3066
3111
  "license": "MIT"
3067
3112
  },
3068
3113
  "node_modules/@latticexyz/world/src/worldResourceTypes.sol": {
3069
- "keccak256": "0x88f844f2c43757c819c8f140b30254f07c3484e12cce573879d43b2ee6a23f8b",
3114
+ "keccak256": "0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746",
3070
3115
  "urls": [
3071
- "bzz-raw://55a9095094c2b7b1043020681696380cfc3cffd1f264a70bacb44fccd0fc0a8a",
3072
- "dweb:/ipfs/QmfPdLPr9hfV8X8yfHhEf2HmEWAnA4d1c6EHEjHMdeM7ML"
3116
+ "bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2",
3117
+ "dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9"
3073
3118
  ],
3074
3119
  "license": "MIT"
3075
3120
  },
@@ -3086,23 +3131,23 @@
3086
3131
  },
3087
3132
  "ast": {
3088
3133
  "absolutePath": "src/interfaces/IBaseWorld.sol",
3089
- "id": 39288,
3134
+ "id": 39345,
3090
3135
  "exportedSymbols": {
3091
3136
  "IBaseWorld": [
3092
- 39287
3137
+ 39344
3093
3138
  ],
3094
3139
  "IStore": [
3095
- 25517
3140
+ 25557
3096
3141
  ],
3097
3142
  "IWorldKernel": [
3098
- 38569
3143
+ 38612
3099
3144
  ]
3100
3145
  },
3101
3146
  "nodeType": "SourceUnit",
3102
3147
  "src": "32:375:111",
3103
3148
  "nodes": [
3104
3149
  {
3105
- "id": 39277,
3150
+ "id": 39334,
3106
3151
  "nodeType": "PragmaDirective",
3107
3152
  "src": "32:25:111",
3108
3153
  "nodes": [],
@@ -3114,23 +3159,23 @@
3114
3159
  ]
3115
3160
  },
3116
3161
  {
3117
- "id": 39279,
3162
+ "id": 39336,
3118
3163
  "nodeType": "ImportDirective",
3119
3164
  "src": "108:58:111",
3120
3165
  "nodes": [],
3121
3166
  "absolutePath": "node_modules/@latticexyz/store/src/IStore.sol",
3122
3167
  "file": "@latticexyz/store/src/IStore.sol",
3123
3168
  "nameLocation": "-1:-1:-1",
3124
- "scope": 39288,
3125
- "sourceUnit": 25518,
3169
+ "scope": 39345,
3170
+ "sourceUnit": 25558,
3126
3171
  "symbolAliases": [
3127
3172
  {
3128
3173
  "foreign": {
3129
- "id": 39278,
3174
+ "id": 39335,
3130
3175
  "name": "IStore",
3131
3176
  "nodeType": "Identifier",
3132
3177
  "overloadedDeclarations": [],
3133
- "referencedDeclaration": 25517,
3178
+ "referencedDeclaration": 25557,
3134
3179
  "src": "117:6:111",
3135
3180
  "typeDescriptions": {}
3136
3181
  },
@@ -3140,23 +3185,23 @@
3140
3185
  "unitAlias": ""
3141
3186
  },
3142
3187
  {
3143
- "id": 39281,
3188
+ "id": 39338,
3144
3189
  "nodeType": "ImportDirective",
3145
3190
  "src": "167:70:111",
3146
3191
  "nodes": [],
3147
3192
  "absolutePath": "node_modules/@latticexyz/world/src/IWorldKernel.sol",
3148
3193
  "file": "@latticexyz/world/src/IWorldKernel.sol",
3149
3194
  "nameLocation": "-1:-1:-1",
3150
- "scope": 39288,
3151
- "sourceUnit": 38570,
3195
+ "scope": 39345,
3196
+ "sourceUnit": 38613,
3152
3197
  "symbolAliases": [
3153
3198
  {
3154
3199
  "foreign": {
3155
- "id": 39280,
3200
+ "id": 39337,
3156
3201
  "name": "IWorldKernel",
3157
3202
  "nodeType": "Identifier",
3158
3203
  "overloadedDeclarations": [],
3159
- "referencedDeclaration": 38569,
3204
+ "referencedDeclaration": 38612,
3160
3205
  "src": "176:12:111",
3161
3206
  "typeDescriptions": {}
3162
3207
  },
@@ -3166,7 +3211,7 @@
3166
3211
  "unitAlias": ""
3167
3212
  },
3168
3213
  {
3169
- "id": 39287,
3214
+ "id": 39344,
3170
3215
  "nodeType": "ContractDefinition",
3171
3216
  "src": "357:49:111",
3172
3217
  "nodes": [],
@@ -3174,31 +3219,31 @@
3174
3219
  "baseContracts": [
3175
3220
  {
3176
3221
  "baseName": {
3177
- "id": 39283,
3222
+ "id": 39340,
3178
3223
  "name": "IStore",
3179
3224
  "nameLocations": [
3180
3225
  "381:6:111"
3181
3226
  ],
3182
3227
  "nodeType": "IdentifierPath",
3183
- "referencedDeclaration": 25517,
3228
+ "referencedDeclaration": 25557,
3184
3229
  "src": "381:6:111"
3185
3230
  },
3186
- "id": 39284,
3231
+ "id": 39341,
3187
3232
  "nodeType": "InheritanceSpecifier",
3188
3233
  "src": "381:6:111"
3189
3234
  },
3190
3235
  {
3191
3236
  "baseName": {
3192
- "id": 39285,
3237
+ "id": 39342,
3193
3238
  "name": "IWorldKernel",
3194
3239
  "nameLocations": [
3195
3240
  "389:12:111"
3196
3241
  ],
3197
3242
  "nodeType": "IdentifierPath",
3198
- "referencedDeclaration": 38569,
3243
+ "referencedDeclaration": 38612,
3199
3244
  "src": "389:12:111"
3200
3245
  },
3201
- "id": 39286,
3246
+ "id": 39343,
3202
3247
  "nodeType": "InheritanceSpecifier",
3203
3248
  "src": "389:12:111"
3204
3249
  }
@@ -3207,61 +3252,61 @@
3207
3252
  "contractDependencies": [],
3208
3253
  "contractKind": "interface",
3209
3254
  "documentation": {
3210
- "id": 39282,
3255
+ "id": 39339,
3211
3256
  "nodeType": "StructuredDocumentation",
3212
3257
  "src": "239:117:111",
3213
3258
  "text": " The IBaseWorld interface includes all systems dynamically added to the World\n during the deploy process."
3214
3259
  },
3215
3260
  "fullyImplemented": false,
3216
3261
  "linearizedBaseContracts": [
3217
- 39287,
3218
- 38569,
3219
- 60910,
3220
- 38538,
3221
- 38513,
3222
- 25517,
3223
- 57523,
3224
- 57576,
3225
- 57457,
3226
- 61448,
3227
- 66747,
3228
- 61296
3262
+ 39344,
3263
+ 38612,
3264
+ 60987,
3265
+ 38580,
3266
+ 38554,
3267
+ 25557,
3268
+ 57580,
3269
+ 57633,
3270
+ 57514,
3271
+ 61525,
3272
+ 66828,
3273
+ 61373
3229
3274
  ],
3230
3275
  "name": "IBaseWorld",
3231
3276
  "nameLocation": "367:10:111",
3232
- "scope": 39288,
3277
+ "scope": 39345,
3233
3278
  "usedErrors": [
3234
- 57468,
3235
- 57475,
3236
- 57484,
3237
- 57490,
3238
- 57496,
3239
- 57502,
3240
- 57508,
3241
- 57514,
3242
- 57522,
3243
- 60837,
3244
- 60844,
3245
- 60851,
3246
- 60857,
3247
- 60864,
3248
- 60868,
3249
- 60872,
3250
- 60876,
3251
- 60882,
3252
- 60884,
3253
- 60890,
3254
- 60896,
3255
- 60905,
3256
- 60909
3279
+ 57525,
3280
+ 57532,
3281
+ 57541,
3282
+ 57547,
3283
+ 57553,
3284
+ 57559,
3285
+ 57565,
3286
+ 57571,
3287
+ 57579,
3288
+ 60901,
3289
+ 60909,
3290
+ 60917,
3291
+ 60924,
3292
+ 60932,
3293
+ 60937,
3294
+ 60942,
3295
+ 60947,
3296
+ 60954,
3297
+ 60957,
3298
+ 60964,
3299
+ 60971,
3300
+ 60981,
3301
+ 60986
3257
3302
  ],
3258
3303
  "usedEvents": [
3259
- 38549,
3260
- 57451,
3261
- 66709,
3262
- 66721,
3263
- 66738,
3264
- 66746
3304
+ 38592,
3305
+ 57508,
3306
+ 66790,
3307
+ 66802,
3308
+ 66819,
3309
+ 66827
3265
3310
  ]
3266
3311
  }
3267
3312
  ],