@latticexyz/world-modules 2.0.0-transaction-context-324984c5 → 2.0.1-main-4a6b4598

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 (393) hide show
  1. package/dist/mud.config.d.ts +700 -222
  2. package/dist/mud.config.js +1 -1
  3. package/dist/mud.config.js.map +1 -1
  4. package/out/AccessControl.sol/AccessControl.json +1 -1
  5. package/out/AccessControlLib.sol/AccessControlLib.json +1 -1
  6. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json +0 -13
  7. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json.d.ts +0 -13
  8. package/out/AccessManagementSystem.sol/AccessManagementSystem.json +1 -1
  9. package/out/AddressArray.sol/AddressArray.json +1 -1
  10. package/out/Allowances.sol/Allowances.json +1 -1
  11. package/out/ArrayLib.sol/ArrayLib.json +1 -1
  12. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json +0 -24
  13. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json.d.ts +0 -24
  14. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.json +1 -1
  15. package/out/Balances.sol/Balances.json +1 -1
  16. package/out/Base.sol/CommonBase.json +1 -1
  17. package/out/Base.sol/ScriptBase.json +1 -1
  18. package/out/Base.sol/TestBase.json +1 -1
  19. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json +0 -13
  20. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json.d.ts +0 -13
  21. package/out/BatchCallSystem.sol/BatchCallSystem.json +1 -1
  22. package/out/Bool.sol/Bool.json +1 -1
  23. package/out/Bytes.sol/Bytes.json +1 -1
  24. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.abi.json +0 -13
  25. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.abi.json.d.ts +0 -13
  26. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +1 -1
  27. package/out/CallboundDelegations.sol/CallboundDelegations.json +1 -1
  28. package/out/DecodeSlice.sol/DecodeSlice.json +1 -1
  29. package/out/Delegation.sol/Delegation.json +1 -1
  30. package/out/DelegationControl.sol/DelegationControl.abi.json +0 -13
  31. package/out/DelegationControl.sol/DelegationControl.abi.json.d.ts +0 -13
  32. package/out/DelegationControl.sol/DelegationControl.json +1 -1
  33. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json +0 -13
  34. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json.d.ts +0 -13
  35. package/out/DelegationControlMock.sol/DelegationControlMock.json +1 -1
  36. package/out/ERC165Checker.sol/ERC165Checker.json +1 -1
  37. package/out/ERC20.t.sol/ERC20Test.json +1 -1
  38. package/out/ERC20Metadata.sol/ERC20Metadata.json +1 -1
  39. package/out/ERC20Module.sol/ERC20Module.abi.json +10 -23
  40. package/out/ERC20Module.sol/ERC20Module.abi.json.d.ts +10 -23
  41. package/out/ERC20Module.sol/ERC20Module.json +1 -1
  42. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.abi.json +10 -10
  43. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.abi.json.d.ts +10 -10
  44. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.json +1 -1
  45. package/out/ERC20Registry.sol/ERC20Registry.json +1 -1
  46. package/out/ERC20System.sol/ERC20System.abi.json +0 -13
  47. package/out/ERC20System.sol/ERC20System.abi.json.d.ts +0 -13
  48. package/out/ERC20System.sol/ERC20System.json +1 -1
  49. package/out/ERC721.t.sol/ERC721Recipient.json +1 -1
  50. package/out/ERC721.t.sol/ERC721Test.json +1 -1
  51. package/out/ERC721.t.sol/ERC721TokenReceiver.json +1 -1
  52. package/out/ERC721.t.sol/NonERC721Recipient.json +1 -1
  53. package/out/ERC721.t.sol/RevertingERC721Recipient.json +1 -1
  54. package/out/ERC721.t.sol/WrongReturnDataERC721Recipient.json +1 -1
  55. package/out/ERC721Metadata.sol/ERC721Metadata.json +1 -1
  56. package/out/ERC721Module.sol/ERC721Module.abi.json +10 -23
  57. package/out/ERC721Module.sol/ERC721Module.abi.json.d.ts +10 -23
  58. package/out/ERC721Module.sol/ERC721Module.json +1 -1
  59. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.abi.json +10 -10
  60. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.abi.json.d.ts +10 -10
  61. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.json +1 -1
  62. package/out/ERC721Registry.sol/ERC721Registry.json +1 -1
  63. package/out/ERC721System.sol/ERC721System.abi.json +0 -13
  64. package/out/ERC721System.sol/ERC721System.abi.json.d.ts +0 -13
  65. package/out/ERC721System.sol/ERC721System.json +1 -1
  66. package/out/EchoSubscriber.sol/EchoSubscriber.abi.json +4 -4
  67. package/out/EchoSubscriber.sol/EchoSubscriber.abi.json.d.ts +4 -4
  68. package/out/EchoSubscriber.sol/EchoSubscriber.json +1 -1
  69. package/out/EncodeArray.sol/EncodeArray.json +1 -1
  70. package/out/EncodedLengths.sol/EncodedLengthsInstance.json +1 -0
  71. package/out/EncodedLengths.sol/EncodedLengthsLib.json +1 -0
  72. package/out/FieldLayout.sol/FieldLayoutInstance.json +1 -1
  73. package/out/FieldLayout.sol/FieldLayoutLib.abi.json +1 -88
  74. package/out/FieldLayout.sol/FieldLayoutLib.json +1 -1
  75. package/out/FieldLayoutEncodeHelper.sol/FieldLayoutEncodeHelper.json +1 -1
  76. package/out/FunctionSelectors.sol/FunctionSelectors.json +1 -1
  77. package/out/FunctionSignatures.sol/FunctionSignatures.json +1 -1
  78. package/out/GasReporter.sol/GasReporter.json +1 -1
  79. package/out/Hook.sol/HookInstance.json +1 -1
  80. package/out/Hook.sol/HookLib.json +1 -1
  81. package/out/Hooks.sol/Hooks.json +1 -1
  82. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +1 -1
  83. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +1 -1
  84. package/out/IBaseWorld.sol/IBaseWorld.abi.json +171 -16
  85. package/out/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +171 -16
  86. package/out/IBaseWorld.sol/IBaseWorld.json +1 -1
  87. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +1 -1
  88. package/out/IDelegationControl.sol/IDelegationControl.abi.json +0 -13
  89. package/out/IDelegationControl.sol/IDelegationControl.abi.json.d.ts +0 -13
  90. package/out/IDelegationControl.sol/IDelegationControl.json +1 -1
  91. package/out/IERC20.sol/IERC20.json +1 -1
  92. package/out/IERC20Errors.sol/IERC20Errors.json +1 -1
  93. package/out/IERC20Events.sol/IERC20Events.json +1 -1
  94. package/out/IERC20Mintable.sol/IERC20Mintable.json +1 -1
  95. package/out/IERC20System.sol/IERC20System.json +1 -1
  96. package/out/IERC721.sol/IERC721.json +1 -1
  97. package/out/IERC721Errors.sol/IERC721Errors.json +1 -1
  98. package/out/IERC721Events.sol/IERC721Events.json +1 -1
  99. package/out/IERC721Metadata.sol/IERC721Metadata.json +1 -1
  100. package/out/IERC721Mintable.sol/IERC721Mintable.json +1 -1
  101. package/out/IERC721Receiver.sol/IERC721Receiver.json +1 -1
  102. package/out/{PackedCounter.sol/PackedCounterInstance.abi.json → IEncodedLengthsErrors.sol/IEncodedLengthsErrors.abi.json} +1 -1
  103. package/out/{PackedCounter.sol/PackedCounterInstance.abi.json.d.ts → IEncodedLengthsErrors.sol/IEncodedLengthsErrors.abi.json.d.ts} +1 -1
  104. package/out/IEncodedLengthsErrors.sol/IEncodedLengthsErrors.json +1 -0
  105. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json +88 -0
  106. package/out/{FieldLayout.sol/FieldLayoutLib.abi.json.d.ts → IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json.d.ts} +7 -7
  107. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.json +1 -0
  108. package/out/IModule.sol/IModule.json +1 -1
  109. package/out/IModuleErrors.sol/IModuleErrors.abi.json +28 -0
  110. package/out/IModuleErrors.sol/IModuleErrors.abi.json.d.ts +28 -0
  111. package/out/IModuleErrors.sol/IModuleErrors.json +1 -0
  112. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +1 -1
  113. package/out/IMulticall3.sol/IMulticall3.json +1 -1
  114. package/out/IPuppetFactorySystem.sol/IPuppetFactorySystem.json +1 -1
  115. package/out/IRegistrationSystem.sol/IRegistrationSystem.json +1 -1
  116. package/out/ISchemaErrors.sol/ISchemaErrors.abi.json +18 -0
  117. package/out/{Schema.sol/SchemaLib.abi.json.d.ts → ISchemaErrors.sol/ISchemaErrors.abi.json.d.ts} +2 -2
  118. package/out/ISchemaErrors.sol/ISchemaErrors.json +1 -0
  119. package/out/ISliceErrors.sol/ISliceErrors.abi.json +23 -0
  120. package/out/ISliceErrors.sol/ISliceErrors.json +1 -0
  121. package/out/IStore.sol/IStore.abi.json +145 -5
  122. package/out/IStore.sol/IStore.abi.json.d.ts +145 -5
  123. package/out/IStore.sol/IStore.json +1 -1
  124. package/out/IStoreErrors.sol/IStoreErrors.json +1 -1
  125. package/out/IStoreEvents.sol/IStoreEvents.abi.json +21 -2
  126. package/out/IStoreEvents.sol/IStoreEvents.abi.json.d.ts +21 -2
  127. package/out/IStoreEvents.sol/IStoreEvents.json +1 -1
  128. package/out/IStoreHook.sol/IStoreHook.abi.json +4 -4
  129. package/out/IStoreHook.sol/IStoreHook.abi.json.d.ts +4 -4
  130. package/out/IStoreHook.sol/IStoreHook.json +1 -1
  131. package/out/{IStoreData.sol/IStoreData.abi.json → IStoreKernel.sol/IStoreKernel.abi.json} +347 -5
  132. package/out/{IStoreData.sol/IStoreData.abi.json.d.ts → IStoreKernel.sol/IStoreKernel.abi.json.d.ts} +347 -5
  133. package/out/IStoreKernel.sol/IStoreKernel.json +1 -0
  134. package/out/IStoreRead.sol/IStoreRead.abi.json +2 -2
  135. package/out/IStoreRead.sol/IStoreRead.abi.json.d.ts +2 -2
  136. package/out/IStoreRead.sol/IStoreRead.json +1 -1
  137. package/out/IStoreRegistration.sol/IStoreRegistration.json +1 -1
  138. package/out/IStoreWrite.sol/IStoreWrite.abi.json +22 -3
  139. package/out/IStoreWrite.sol/IStoreWrite.abi.json.d.ts +22 -3
  140. package/out/IStoreWrite.sol/IStoreWrite.json +1 -1
  141. package/out/ISystemHook.sol/ISystemHook.json +1 -1
  142. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json +0 -13
  143. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json.d.ts +0 -13
  144. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +1 -1
  145. package/out/IWorldErrors.sol/IWorldErrors.abi.json +0 -11
  146. package/out/IWorldErrors.sol/IWorldErrors.abi.json.d.ts +0 -11
  147. package/out/IWorldErrors.sol/IWorldErrors.json +1 -1
  148. package/out/IWorldEvents.sol/IWorldEvents.abi.json +15 -0
  149. package/out/IWorldEvents.sol/IWorldEvents.abi.json.d.ts +15 -0
  150. package/out/IWorldEvents.sol/IWorldEvents.json +1 -0
  151. package/out/IWorldKernel.sol/IWorldCall.json +1 -1
  152. package/out/IWorldKernel.sol/IWorldKernel.abi.json +26 -11
  153. package/out/IWorldKernel.sol/IWorldKernel.abi.json.d.ts +26 -11
  154. package/out/IWorldKernel.sol/IWorldKernel.json +1 -1
  155. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +1 -1
  156. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json +3 -3
  157. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json.d.ts +3 -3
  158. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +1 -1
  159. package/out/InitModule.sol/InitModule.abi.json +10 -23
  160. package/out/InitModule.sol/InitModule.abi.json.d.ts +10 -23
  161. package/out/InitModule.sol/InitModule.json +1 -1
  162. package/out/InitModuleAddress.sol/InitModuleAddress.json +1 -1
  163. package/out/InstalledModules.sol/InstalledModules.json +1 -1
  164. package/out/KeysInTable.sol/KeysInTable.json +1 -1
  165. package/out/KeysInTableHook.sol/KeysInTableHook.abi.json +13 -7
  166. package/out/KeysInTableHook.sol/KeysInTableHook.abi.json.d.ts +13 -7
  167. package/out/KeysInTableHook.sol/KeysInTableHook.json +1 -1
  168. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json +0 -29
  169. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json.d.ts +0 -29
  170. package/out/KeysInTableModule.sol/KeysInTableModule.json +1 -1
  171. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.abi.json +6 -6
  172. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.abi.json.d.ts +6 -6
  173. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.json +1 -1
  174. package/out/KeysWithValue.sol/KeysWithValue.json +1 -1
  175. package/out/KeysWithValueHook.sol/KeysWithValueHook.abi.json +12 -6
  176. package/out/KeysWithValueHook.sol/KeysWithValueHook.abi.json.d.ts +12 -6
  177. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1 -1
  178. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json +0 -29
  179. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json.d.ts +0 -29
  180. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +1 -1
  181. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.abi.json +6 -6
  182. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.abi.json.d.ts +6 -6
  183. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.json +1 -1
  184. package/out/LimitedCallContext.sol/LimitedCallContext.json +1 -1
  185. package/out/Memory.sol/Memory.json +1 -1
  186. package/out/Module.sol/Module.abi.json +0 -13
  187. package/out/Module.sol/Module.abi.json.d.ts +0 -13
  188. package/out/Module.sol/Module.json +1 -1
  189. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json +0 -13
  190. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json.d.ts +0 -13
  191. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +1 -1
  192. package/out/NamespaceDelegationControl.sol/NamespaceDelegationControl.json +1 -1
  193. package/out/NamespaceOwner.sol/NamespaceOwner.json +1 -1
  194. package/out/OperatorApproval.sol/OperatorApproval.json +1 -1
  195. package/out/Owners.sol/Owners.json +1 -1
  196. package/out/Puppet.sol/Puppet.json +1 -1
  197. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.abi.json +0 -13
  198. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.abi.json.d.ts +0 -13
  199. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.json +1 -1
  200. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.abi.json +0 -13
  201. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.abi.json.d.ts +0 -13
  202. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.json +1 -1
  203. package/out/PuppetMaster.sol/PuppetMaster.json +1 -1
  204. package/out/PuppetModule.sol/PuppetModule.abi.json +10 -23
  205. package/out/PuppetModule.sol/PuppetModule.abi.json.d.ts +10 -23
  206. package/out/PuppetModule.sol/PuppetModule.json +1 -1
  207. package/out/PuppetModule.t.sol/PuppetModuleTest.json +1 -1
  208. package/out/PuppetModule.t.sol/PuppetTestSystem.abi.json +0 -13
  209. package/out/PuppetModule.t.sol/PuppetTestSystem.abi.json.d.ts +0 -13
  210. package/out/PuppetModule.t.sol/PuppetTestSystem.json +1 -1
  211. package/out/PuppetRegistry.sol/PuppetRegistry.json +1 -1
  212. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json +31 -49
  213. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json.d.ts +31 -49
  214. package/out/RegistrationSystem.sol/RegistrationSystem.json +1 -1
  215. package/out/ResourceAccess.sol/ResourceAccess.json +1 -1
  216. package/out/ResourceId.sol/ResourceIdInstance.json +1 -1
  217. package/out/ResourceId.sol/ResourceIdLib.json +1 -1
  218. package/out/ResourceIds.sol/ResourceIds.json +1 -1
  219. package/out/RevertSubscriber.sol/RevertSubscriber.abi.json +4 -4
  220. package/out/RevertSubscriber.sol/RevertSubscriber.abi.json.d.ts +4 -4
  221. package/out/RevertSubscriber.sol/RevertSubscriber.json +1 -1
  222. package/out/Schema.sol/SchemaInstance.json +1 -1
  223. package/out/Schema.sol/SchemaLib.abi.json +1 -18
  224. package/out/Schema.sol/SchemaLib.json +1 -1
  225. package/out/SchemaEncodeHelper.sol/SchemaEncodeHelper.json +1 -1
  226. package/out/Slice.sol/SliceInstance.json +1 -1
  227. package/out/Slice.sol/SliceLib.abi.json +1 -23
  228. package/out/Slice.sol/SliceLib.json +1 -1
  229. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json +10 -23
  230. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json.d.ts +10 -23
  231. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +1 -1
  232. package/out/StandardDelegationsModule.t.sol/StandardDelegationsModuleTest.json +1 -1
  233. package/out/StdAssertions.sol/StdAssertions.json +1 -1
  234. package/out/StdChains.sol/StdChains.json +1 -1
  235. package/out/StdCheats.sol/StdCheats.json +1 -1
  236. package/out/StdCheats.sol/StdCheatsSafe.json +1 -1
  237. package/out/StdError.sol/stdError.json +1 -1
  238. package/out/StdInvariant.sol/StdInvariant.json +1 -1
  239. package/out/StdJson.sol/stdJson.json +1 -1
  240. package/out/StdMath.sol/stdMath.json +1 -1
  241. package/out/StdStorage.sol/stdStorage.json +1 -1
  242. package/out/StdStorage.sol/stdStorageSafe.json +1 -1
  243. package/out/StdStyle.sol/StdStyle.json +1 -1
  244. package/out/StdUtils.sol/StdUtils.json +1 -1
  245. package/out/Storage.sol/Storage.json +1 -1
  246. package/out/StoreCore.sol/StoreCore.abi.json +1 -132
  247. package/out/StoreCore.sol/StoreCore.json +1 -1
  248. package/out/StoreCore.sol/StoreCoreInternal.json +1 -1
  249. package/out/StoreHook.sol/StoreHook.abi.json +4 -4
  250. package/out/StoreHook.sol/StoreHook.abi.json.d.ts +4 -4
  251. package/out/StoreHook.sol/StoreHook.json +1 -1
  252. package/out/StoreHooks.sol/StoreHooks.json +1 -1
  253. package/out/{StoreData.sol/StoreData.abi.json → StoreKernel.sol/StoreKernel.abi.json} +299 -5
  254. package/out/{StoreData.sol/StoreData.abi.json.d.ts → StoreKernel.sol/StoreKernel.abi.json.d.ts} +299 -5
  255. package/out/StoreKernel.sol/StoreKernel.json +1 -0
  256. package/out/StoreRead.sol/StoreRead.abi.json +2 -2
  257. package/out/StoreRead.sol/StoreRead.abi.json.d.ts +2 -2
  258. package/out/StoreRead.sol/StoreRead.json +1 -1
  259. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json +28 -46
  260. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json.d.ts +28 -46
  261. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +1 -1
  262. package/out/StoreSwitch.sol/StoreSwitch.json +1 -1
  263. package/out/System.sol/System.abi.json +0 -13
  264. package/out/System.sol/System.abi.json.d.ts +0 -13
  265. package/out/System.sol/System.json +1 -1
  266. package/out/SystemCall.sol/SystemCall.json +1 -1
  267. package/out/SystemHook.sol/SystemHook.json +1 -1
  268. package/out/SystemHooks.sol/SystemHooks.json +1 -1
  269. package/out/SystemRegistry.sol/SystemRegistry.json +1 -1
  270. package/out/SystemSwitch.sol/SystemSwitch.json +1 -1
  271. package/out/SystemSwitch.t.sol/EchoSystem.abi.json +0 -13
  272. package/out/SystemSwitch.t.sol/EchoSystem.abi.json.d.ts +0 -13
  273. package/out/SystemSwitch.t.sol/EchoSystem.json +1 -1
  274. package/out/SystemSwitch.t.sol/SystemSwitchTest.abi.json +0 -16
  275. package/out/SystemSwitch.t.sol/SystemSwitchTest.abi.json.d.ts +0 -16
  276. package/out/SystemSwitch.t.sol/SystemSwitchTest.json +1 -1
  277. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.abi.json +0 -13
  278. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.abi.json.d.ts +0 -13
  279. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.json +1 -1
  280. package/out/SystemboundDelegations.sol/SystemboundDelegations.json +1 -1
  281. package/out/Systems.sol/Systems.json +1 -1
  282. package/out/Tables.sol/Tables.json +1 -1
  283. package/out/Test.sol/Test.json +1 -1
  284. package/out/TightCoder.sol/TightCoder.json +1 -1
  285. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.abi.json +0 -13
  286. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.abi.json.d.ts +0 -13
  287. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +1 -1
  288. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1 -1
  289. package/out/TokenApproval.sol/TokenApproval.json +1 -1
  290. package/out/TokenURI.sol/TokenURI.json +1 -1
  291. package/out/TotalSupply.sol/TotalSupply.json +1 -1
  292. package/out/TwoFields.sol/TwoFields.json +1 -1
  293. package/out/UniqueEntity.sol/UniqueEntity.json +1 -1
  294. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json +10 -23
  295. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json.d.ts +10 -23
  296. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +1 -1
  297. package/out/UniqueEntityModule.t.sol/UniqueEntityModuleTest.json +1 -1
  298. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json +0 -13
  299. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json.d.ts +0 -13
  300. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.json +1 -1
  301. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.abi.json +0 -13
  302. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.abi.json.d.ts +0 -13
  303. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +1 -1
  304. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +1 -1
  305. package/out/UserDelegationControl.sol/UserDelegationControl.json +1 -1
  306. package/out/Vm.sol/Vm.json +1 -1
  307. package/out/Vm.sol/VmSafe.json +1 -1
  308. package/out/World.sol/World.abi.json +232 -127
  309. package/out/World.sol/World.abi.json.d.ts +232 -127
  310. package/out/World.sol/World.json +1 -1
  311. package/out/World.t.sol/EchoSystemHook.json +1 -1
  312. package/out/World.t.sol/IWorldTestSystem.json +1 -1
  313. package/out/World.t.sol/PayableFallbackSystem.abi.json +0 -13
  314. package/out/World.t.sol/PayableFallbackSystem.abi.json.d.ts +0 -13
  315. package/out/World.t.sol/PayableFallbackSystem.json +1 -1
  316. package/out/World.t.sol/RevertSystemHook.json +1 -1
  317. package/out/World.t.sol/WorldTest.abi.json +7 -7
  318. package/out/World.t.sol/WorldTest.abi.json.d.ts +7 -7
  319. package/out/World.t.sol/WorldTest.json +1 -1
  320. package/out/World.t.sol/WorldTestSystem.abi.json +1 -14
  321. package/out/World.t.sol/WorldTestSystem.abi.json.d.ts +1 -14
  322. package/out/World.t.sol/WorldTestSystem.json +1 -1
  323. package/out/WorldContext.sol/WorldContextConsumer.abi.json +0 -13
  324. package/out/WorldContext.sol/WorldContextConsumer.abi.json.d.ts +0 -13
  325. package/out/WorldContext.sol/WorldContextConsumer.json +1 -1
  326. package/out/WorldContext.sol/WorldContextConsumerLib.json +1 -1
  327. package/out/WorldContext.sol/WorldContextProviderLib.json +1 -1
  328. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json +12 -30
  329. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json.d.ts +12 -30
  330. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1 -1
  331. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +1 -1
  332. package/out/WorldResourceId.sol/WorldResourceIdLib.json +1 -1
  333. package/out/console.sol/console.json +1 -1
  334. package/out/console2.sol/console2.json +1 -1
  335. package/out/constants.sol/LayoutOffsets.json +1 -1
  336. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json +174 -19
  337. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +174 -19
  338. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +1 -1
  339. package/out/query.t.sol/QueryTest.abi.json +6 -6
  340. package/out/query.t.sol/QueryTest.abi.json.d.ts +6 -6
  341. package/out/query.t.sol/QueryTest.json +1 -1
  342. package/out/safeconsole.sol/safeconsole.json +1 -1
  343. package/out/src/IERC165.sol/IERC165.json +1 -1
  344. package/out/tables/Balances.sol/Balances.json +1 -1
  345. package/out/test.sol/DSTest.json +1 -1
  346. package/out/world/src/IERC165.sol/IERC165.json +1 -1
  347. package/package.json +8 -9
  348. package/src/index.sol +5 -5
  349. package/src/interfaces/IBaseWorld.sol +2 -3
  350. package/src/interfaces/IERC20System.sol +1 -0
  351. package/src/interfaces/IPuppetFactorySystem.sol +1 -0
  352. package/src/modules/erc20-puppet/ERC20Module.sol +1 -3
  353. package/src/modules/erc20-puppet/tables/Allowances.sol +13 -43
  354. package/src/modules/erc20-puppet/tables/ERC20Metadata.sol +24 -54
  355. package/src/modules/erc20-puppet/tables/ERC20Registry.sol +13 -42
  356. package/src/modules/erc20-puppet/tables/TotalSupply.sol +13 -41
  357. package/src/modules/erc721-puppet/ERC721Module.sol +1 -3
  358. package/src/modules/erc721-puppet/IERC721Metadata.sol +1 -0
  359. package/src/modules/erc721-puppet/IERC721Receiver.sol +1 -0
  360. package/src/modules/erc721-puppet/tables/ERC721Metadata.sol +23 -53
  361. package/src/modules/erc721-puppet/tables/ERC721Registry.sol +13 -42
  362. package/src/modules/erc721-puppet/tables/OperatorApproval.sol +13 -43
  363. package/src/modules/erc721-puppet/tables/Owners.sol +13 -42
  364. package/src/modules/erc721-puppet/tables/TokenApproval.sol +13 -42
  365. package/src/modules/erc721-puppet/tables/TokenURI.sol +15 -44
  366. package/src/modules/keysintable/KeysInTableHook.sol +3 -3
  367. package/src/modules/keysintable/KeysInTableModule.sol +13 -13
  368. package/src/modules/keysintable/query.sol +7 -7
  369. package/src/modules/keysintable/tables/KeysInTable.sol +47 -63
  370. package/src/modules/keysintable/tables/UsedKeysIndex.sol +25 -57
  371. package/src/modules/keyswithvalue/KeysWithValueHook.sol +5 -5
  372. package/src/modules/keyswithvalue/KeysWithValueModule.sol +3 -3
  373. package/src/modules/keyswithvalue/getKeysWithValue.sol +3 -3
  374. package/src/modules/keyswithvalue/tables/KeysWithValue.sol +16 -45
  375. package/src/modules/puppet/tables/PuppetRegistry.sol +13 -42
  376. package/src/modules/std-delegations/tables/CallboundDelegations.sol +15 -48
  377. package/src/modules/std-delegations/tables/SystemboundDelegations.sol +15 -47
  378. package/src/modules/std-delegations/tables/TimeboundDelegations.sol +15 -46
  379. package/src/modules/tokens/tables/Balances.sol +13 -42
  380. package/src/modules/uniqueentity/tables/UniqueEntity.sol +14 -42
  381. package/src/utils/AccessControlLib.sol +1 -0
  382. package/src/utils/SystemSwitch.sol +1 -0
  383. package/ts/scripts/tablegen.ts +2 -2
  384. package/ts/scripts/worldgen.ts +6 -5
  385. package/out/IStoreData.sol/IStoreData.json +0 -1
  386. package/out/PackedCounter.sol/PackedCounterInstance.json +0 -1
  387. package/out/PackedCounter.sol/PackedCounterLib.json +0 -1
  388. package/out/StoreCore.sol/StoreCore.abi.json.d.ts +0 -132
  389. package/out/StoreData.sol/StoreData.json +0 -1
  390. package/out/TransactionContext.sol/TransactionContext.json +0 -1
  391. /package/out/{PackedCounter.sol/PackedCounterLib.abi.json → EncodedLengths.sol/EncodedLengthsInstance.abi.json} +0 -0
  392. /package/out/{TransactionContext.sol/TransactionContext.abi.json → EncodedLengths.sol/EncodedLengthsLib.abi.json} +0 -0
  393. /package/out/{Slice.sol/SliceLib.abi.json.d.ts → ISliceErrors.sol/ISliceErrors.abi.json.d.ts} +0 -0
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"register","inputs":[{"name":"world","type":"address","internalType":"contract IBaseWorld"},{"name":"namespace","type":"bytes14","internalType":"bytes14"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"PackedCounter"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"FieldLayoutLib_Empty","inputs":[]},{"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType","inputs":[]},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b50615a73806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e3660046128e1565b610045565b005b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601083901c16176100958161025e565b61011a576040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff84169063b29e408990602401600060405180830381600087803b15801561010157600080fd5b505af1158015610115573d6000803e3d6000fd5b505050505b61012b610126836102eb565b610323565b61013c61013783610357565b610389565b61014d610148836103cd565b6103ff565b61015e61015983610443565b610475565b61016f61016a836104b7565b6104e9565b61018061017b8361052d565b61055f565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a96101a5846105a1565b6040516101b1906128d4565b604051809103906000f0801580156101cd573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561024157600080fd5b505af1158015610255573d6000803e3d6000fd5b50505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061029757610297612958565b602090810291909101015260006102d77f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6105ee565b90506102e38160f81c90565b949350505050565b600061031d613a3160f11b837f4f70657261746f72417070726f76616c000000000000000000000000000000006106c5565b92915050565b61035481630101000160d81b61033761074c565b61033f610809565b610347610843565b61034f61091b565b610992565b50565b600061031d613a3160f11b837f4f776e65727300000000000000000000000000000000000000000000000000006106c5565b610354817e140100140000000000000000000000000000000000000000000000000000006103b5610a65565b6103bd610a9f565b6103c5610ad9565b61034f610b50565b600061031d613a3160f11b837f546f6b656e417070726f76616c000000000000000000000000000000000000006106c5565b610354817e1401001400000000000000000000000000000000000000000000000000000061042b610a65565b610433610a9f565b61043b610ad9565b61034f610bc7565b600061031d613a3160f11b837f546f6b656e5552490000000000000000000000000000000000000000000000006106c5565b610354817c010000000000000000000000000000000000000000000000000000000061049f610a65565b6104a7610c3e565b6104af610ad9565b61034f610c78565b600061031d613a3160f11b837f42616c616e6365730000000000000000000000000000000000000000000000006106c5565b610354817e20010020000000000000000000000000000000000000000000000000000000610515610a9f565b61051d610a65565b610525610bc7565b61034f610cef565b600061031d613a3160f11b837f4d657461646174610000000000000000000000000000000000000000000000006106c5565b610354817c0300000000000000000000000000000000000000000000000000000000610589610d66565b610591610d7f565b610599610e44565b61034f610e77565b600061031d7f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d00000000000000000000000000000000000000006106c5565b6000806105f9610f97565b90503073ffffffffffffffffffffffffffffffffffffffff82160361062c5761062486868686610fe3565b9150506102e3565b6040517f8c364d5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690638c364d59906106849089908990899089906004016129aa565b602060405180830381865afa1580156106a1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062491906129d9565b60006106d360706010612a08565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060820183526000928392919060208301908036833701905050905060618160008151811061078657610786612958565b602002602001019060c581111561079f5761079f612a1b565b908160c58111156107b2576107b2612a1b565b815250506061816001815181106107cb576107cb612958565b602002602001019060c58111156107e4576107e4612a1b565b908160c58111156107f7576107f7612a1b565b90525061080381611019565b91505090565b604080516001808252818301909252600091829190602080830190803683370190505090506060816000815181106107cb576107cb612958565b6040805160028082526060828101909352816020015b60608152602001906001900390816108595790505090506040518060400160405280600581526020017f6f776e6572000000000000000000000000000000000000000000000000000000815250816000815181106108b9576108b9612958565b60200260200101819052506040518060400160405280600881526020017f6f70657261746f720000000000000000000000000000000000000000000000008152508160018151811061090d5761090d612958565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816109325790505090506040518060400160405280600881526020017f617070726f7665640000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b600061099c610f97565b90503073ffffffffffffffffffffffffffffffffffffffff8216036109ce576109c98787878787876111dd565b610255565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f4990610a2a908a908a908a908a908a908a90600401612adb565b600060405180830381600087803b158015610a4457600080fd5b505af1158015610a58573d6000803e3d6000fd5b5050505050505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050601f816000815181106107cb576107cb612958565b604080516001808252818301909252600091829190602080830190803683370190505090506061816000815181106107cb576107cb612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610af05790505090506040518060400160405280600781526020017f746f6b656e4964000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610b675790505090506040518060400160405280600581526020017f6f776e65720000000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610bde5790505090506040518060400160405280600781526020017f6163636f756e74000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b6040805160018082528183019092526000918291906020808301908036833701905050905060c5816000815181106107cb576107cb612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610c8f5790505090506040518060400160405280600881526020017f746f6b656e5552490000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610d065790505090506040518060400160405280600581526020017f76616c75650000000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b6040805160008082526020820190925261080381611019565b604080516003808252608082019092526000918291906020820160608036833701905050905060c581600081518110610dba57610dba612958565b602002602001019060c5811115610dd357610dd3612a1b565b908160c5811115610de657610de6612a1b565b8152505060c581600181518110610dff57610dff612958565b602002602001019060c5811115610e1857610e18612a1b565b908160c5811115610e2b57610e2b612a1b565b8152505060c5816002815181106107cb576107cb612958565b60408051600080825260208201909252606091610e71565b6060815260200190600190039081610e5c5790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610e8f5790505090506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600081518110610eef57610eef612958565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c000000000000000000000000000000000000000000000000000081525081600181518110610f4357610f43612958565b60200260200101819052506040518060400160405280600781526020017f62617365555249000000000000000000000000000000000000000000000000008152508160028151811061090d5761090d612958565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610fde573391505090565b919050565b6000611010610ff2868661163b565b60ff858116601b0360080285901c1661100b8587611691565b6116ca565b95945050505050565b6000601c8251111561104c578151604051635318beb960e01b815260040161104391815260200190565b60405180910390fd5b60008080805b855181101561112757600061109087838151811061107257611072612958565b602002602001015160c581111561108b5761108b612a1b565b61171b565b9050806000036110a5576001909201916110dd565b82156110dd576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106110fe576110fe612958565b602002602001015160c581111561111757611117612a1b565b901b949094179350600101611052565b50600581111561114d57604051635318beb960e01b815260048101829052602401611043565b8451819003600861116060026020612b25565b61116a9190612b38565b83901b93909317926008600161118260026020612b25565b61118c9190612b25565b6111969190612b38565b81901b939093179260086001806111af60026020612b25565b6111b99190612b25565b6111c39190612b25565b6111cd9190612b38565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061125657507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b156112b757613a3160f11b868760405160200161127591815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252611043939291600401612b4f565b6112c085611775565b6112cb8460016119bc565b6112d68360006119bc565b60e084901c60e885901c0160ff168251146113365760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b60e085901c60e886901c0160ff168151146113965760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff161461140e5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b61141785611b58565b61142084611b58565b146114725761142e85611b58565b61143784611b58565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b61147b85611b8a565b61148484611b8a565b146114d65761149285611b8a565b61149b84611b8a565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b60005b6114e286611b58565b811015611578576115076114f68583611ba7565b60c581111561108b5761108b612a1b565b6008601b8390030287901c60ff1614611570576008601b8290030286901c60ff166115356114f68684611ba7565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b6001016114d9565b5061158286611bcf565b156115dc57858660405160200161159b91815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526110439291600401612b90565b61162886868686866040516020016115f49190612ba9565b604051602081830303815290604052866040516020016116149190612ba9565b604051602081830303815290604052611c48565b611633866001611d2b565b505050505050565b60008282604051602001611650929190612bbc565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156116c2576116b860ff601b83900360080287901c1683612a08565b9150600101611696565b509392505050565b6000602082106116f0576020820484019350602082816116ec576116ec612bf8565b0691505b508254600882021b6020829003808411156116c2576001850154600882021c82179150509392505050565b6000808260c581111561173057611730612a1b565b60ff169050606181101561174a57601f1660010192915050565b60618360c581111561175e5761175e612a1b565b0361176c5750601492915050565b50600092915050565b806117ac576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006117b782611b8a565b905060058111156117fe576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401611043565b600061180983611b58565b905060006118178383612a08565b9050601c81111561185e576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401611043565b6000805b838110156119095760ff601b82900360080287901c1660008190036118b6576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401611043565b60208111156118f4576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401611043565b6118fe8184612a08565b925050600101611862565b5061191385611dd1565b811461195f5761192285611dd1565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401611043565b825b601c8110156116335760ff601b82900360080287901c1680156119b3576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401611043565b50600101611961565b801580156119c8575081155b156119e957604051635318beb960e01b815260006004820152602401611043565b60006119f483611b8a565b90506005811115611a1b57604051635318beb960e01b815260048101829052602401611043565b6000611a2684611b58565b90506000611a348383612a08565b9050601c811115611a5b57604051635318beb960e01b815260048101829052602401611043565b6000805b83811015611ac7576000611a766114f68984611ba7565b905080600003611ab2576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611abc8184612a08565b925050600101611a5f565b50611ad186611dd1565b8114611afc57611ae086611dd1565b604051635318beb960e01b815260040161104391815260200190565b825b82811015610255576000611b156114f68984611ba7565b90508015611b4f576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101611afe565b600060086001611b6a60026020612b25565b611b749190612b25565b611b7e9190612b38565b8260ff911c1692915050565b60006008600180611b9d60026020612b25565b611b6a9190612b25565b6000601b8290036008028360ff911c1660c5811115611bc857611bc8612a1b565b9392505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611c0857611c08612958565b602090810291909101015260006102d77f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610fe3565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091526000611c7f8484611df4565b90506000611c8d8585611e11565b60408051600180825281830190925291925060009190602080830190803683370190505090508981600081518110611cc757611cc7612958565b6020908102919091010152611d1f7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611e3d565b50505050505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611d6157611d61612958565b602002602001018181525050611dcc7f746273746f72650000000000000000005265736f75726365496473000000000060001b82600085604051602001611daf91151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b612176565b505050565b60006008611de160026020612b25565b611deb9190612b38565b9190911c919050565b8151815160009181810160389190911b1760609190911b17611bc8565b60608282604051602001611e26929190612c0e565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611ec957857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611ebc9493929190612c3d565b60405180910390a2611633565b6000611ed487612192565b905060005b8151811015611fad576000828281518110611ef657611ef6612958565b60200260200101519050611f226001826affffffffffffffffffffff191661221b90919063ffffffff16565b15611fa4576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611f71908c908c908c908c908c908c90600401612c87565b600060405180830381600087803b158015611f8b57600080fd5b505af1158015611f9f573d6000803e3d6000fd5b505050505b50600101611ed9565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611fe49493929190612c3d565b60405180910390a26000611ff8888861163b565b90506000602087019050612010826000895184612239565b600061201b85611b8a565b111561209f57600061202d8a8a6122f7565b878155905060208601915060008060005b61204788611b8a565b8160ff16101561209a5761205c8d8d8361234d565b92506120778a8260ff166028026038011c64ffffffffff1690565b91506120868360008488612239565b6120908286612a08565b945060010161203e565b505050505b60005b8351811015611d1f5760008482815181106120bf576120bf612958565b602002602001015190506120eb6002826affffffffffffffffffffff191661221b90919063ffffffff16565b1561216d576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061213a908e908e908e908e908e908e90600401612c87565b600060405180830381600087803b15801561215457600080fd5b505af1158015612168573d6000803e3d6000fd5b505050505b506001016120a2565b61218b85856121858487611691565b856123cd565b5050505050565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106121cc576121cc612958565b602090810291909101015260006122047f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612668565b90506102e361221682600084516126a2565b612730565b60008160ff168261222c8560581c90565b1660ff1614905092915050565b82156122b357602083106122635760208304840193506020838161225f5761225f612bf8565b0692505b82156122b35760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116122a45750506122f1565b50600194909401939182900391015b5b602082106122d55780518455600190930192601f19909101906020016122b4565b81156122f15783548151600019600885021c9182169119161784555b50505050565b6000828260405160200161230c929190612bbc565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001612362929190612bbc565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361245757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161244a93929190612ce0565b60405180910390a26122f1565b6000612463858561163b565b9050600061247086612192565b905060005b815181101561254557600082828151811061249257612492612958565b602002602001015190506124be6004826affffffffffffffffffffff191661221b90919063ffffffff16565b1561253c576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612509908b908b908b908b90600401612d1d565b600060405180830381600087803b15801561252357600080fd5b505af1158015612537573d6000803e3d6000fd5b505050505b50600101612475565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161257a93929190612ce0565b60405180910390a2612595828565ffffffffffff1685612741565b60005b81518110156102555760008282815181106125b5576125b5612958565b602002602001015190506125e16008826affffffffffffffffffffff191661221b90919063ffffffff16565b1561265f576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061262c908b908b908b908b90600401612d1d565b600060405180830381600087803b15801561264657600080fd5b505af115801561265a573d6000803e3d6000fd5b505050505b50600101612598565b60606102e361267885858561234d565b600061269d856126888989612757565b9060ff166028026038011c64ffffffffff1690565b61276a565b6000818311806126b25750835182115b156126ef578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161104393929190612d56565b602084016126fd8482612a08565b9050600061270b8585612b25565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611bc8836015600061278d565b611dcc838383516127528560200190565b612239565b6000611bc861276684846122f7565b5490565b60405160208101601f19603f84840101166040528282526116c285858584612808565b6060600061279b8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127c1576127c1612bf8565b04905060405193506020840160208202810160405281855260005b828110156127fc578451871c8252938701936020909101906001016127dc565b50505050509392505050565b821561288f57602083106128325760208304840193506020838161282e5761282e612bf8565b0692505b821561288f5760208390036000818410156128555750600019600884021c61285f565b50600019600882021c5b8554600886021b8184511682198216178452508184116128805750506122f1565b50600194909401939182900391015b5b602082106128b15783548152600190930192601f1990910190602001612890565b81156122f1576000600019600884021c8251865482191691161782525050505050565b612ceb80612d7c83390190565b600080604083850312156128f457600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461291857600080fd5b915060208301357fffffffffffffffffffffffffffff0000000000000000000000000000000000008116811461294d57600080fd5b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b60008151808452602080850194506020840160005b8381101561299f57815187529582019590820190600101612983565b509495945050505050565b8481526080602082015260006129c3608083018661296e565b60ff949094166040830152506060015292915050565b6000602082840312156129eb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561031d5761031d6129f2565b634e487b7160e01b600052602160045260246000fd5b60005b83811015612a4c578181015183820152602001612a34565b50506000910152565b60008151808452612a6d816020860160208601612a31565b601f01601f19169290920160200192915050565b60008282518085526020808601955060208260051b8401016020860160005b84811015612ace57601f19868403018952612abc838351612a55565b98840198925090830190600101612aa0565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201526000612b0660c0830185612a81565b82810360a0840152612b188185612a81565b9998505050505050505050565b8181038181111561031d5761031d6129f2565b808202811582820484141761031d5761031d6129f2565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006110106060830184612a55565b8281526040602082015260006102e36040830184612a55565b602081526000611bc86020830184612a81565b8281526000602080830184516020860160005b82811015612beb57815184529284019290840190600101612bcf565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b60008351612c20818460208801612a31565b835190830190612c34818360208801612a31565b01949350505050565b608081526000612c50608083018761296e565b8281036020840152612c628187612a55565b90508460408401528281036060840152612c7c8185612a55565b979650505050505050565b86815260c060208201526000612ca060c083018861296e565b8281036040840152612cb28188612a55565b90508560608401528281036080840152612ccc8186612a55565b9150508260a0830152979650505050505050565b606081526000612cf3606083018661296e565b65ffffffffffff851660208401528281036040840152612d138185612a55565b9695505050505050565b848152608060208201526000612d36608083018661296e565b65ffffffffffff851660408401528281036060840152612c7c8185612a55565b606081526000612d696060830186612a55565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612ccb806100206000396000f3fe608060405234801561001057600080fd5b50600436106101775760003560e01c80636352211e116100d8578063a14481941161008c578063c87b56dd11610066578063c87b56dd146102e4578063e1af802c146102f7578063e985e9c5146102ff57600080fd5b8063a1448194146102ab578063a22cb465146102be578063b88d4fde146102d157600080fd5b80638832e6e3116100bd5780638832e6e3146102885780639081c7581461029b57806395d89b41146102a357600080fd5b80636352211e1461026257806370a082311461027557600080fd5b806323b872dd1161012f57806342842e0e1161011457806342842e0e1461022757806342966c681461023a57806345ec93541461024d57600080fd5b806323b872dd1461020157806340c10f191461021457600080fd5b8063081812fc11610160578063081812fc146101b9578063095ea7b3146101e4578063119df25f146101f957600080fd5b806301ffc9a71461017c57806306fdde03146101a4575b600080fd5b61018f61018a366004612547565b610312565b60405190151581526020015b60405180910390f35b6101ac6103ab565b60405161019b91906125b4565b6101cc6101c73660046125c7565b6103ca565b6040516001600160a01b03909116815260200161019b565b6101f76101f23660046125f7565b6103df565b005b6101cc6103f5565b6101f761020f366004612621565b6103ff565b6101f76102223660046125f7565b6104af565b6101f7610235366004612621565b6104c1565b6101f76102483660046125c7565b6104e1565b36601f1901355b60405190815260200161019b565b6101cc6102703660046125c7565b6104f5565b61025461028336600461265d565b610500565b6101f761029636600461273d565b61055e565b6101cc610571565b6101ac61057b565b6101f76102b93660046125f7565b610590565b6101f76102cc366004612794565b6105b2565b6101f76102df3660046127d0565b6105c4565b6101ac6102f23660046125c7565b6105db565b6101cc610677565b61018f61030d366004612838565b610681565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f255f267f0000000000000000000000000000000000000000000000000000000014806103a557507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606103c56103c06103bb6106a4565b6106c2565b6106f4565b905090565b60006103d582610712565b506103a582610763565b6103f182826103ec6103f5565b61077e565b5050565b60006103c561078b565b6001600160a01b03821661042e57604051633250574960e11b8152600060048201526024015b60405180910390fd5b6000610442838361043d6103f5565b6107bd565b9050836001600160a01b0316816001600160a01b0316146104a9576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610425565b50505050565b6104b7610941565b6103f1828261095c565b6104dc838383604051806020016040528060008152506105c4565b505050565b6104e9610941565b6104f2816109da565b50565b60006103a582610712565b60006001600160a01b038216610545576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610425565b6103a56105586105536106a4565b610a2e565b83610a60565b610566610941565b6104dc838383610ae6565b60006103c5610afd565b60606103c561058b6103bb6106a4565b610b07565b610598610941565b6103f1828260405180602001604052806000815250610ae6565b6103f16105bd6103f5565b8383610b26565b6105cf8484846103ff565b6104a984848484610c4a565b60606105e682610712565b5060006105f1610dab565b9050600061060e6106086106036106a4565b610dc0565b85610df2565b905060008151116106395760408051602081018690520160405160208183030381529060405261063b565b805b9050600082511161064c578061066f565b818160405160200161065f92919061286b565b6040516020818303038152906040525b949350505050565b60006103c5610e49565b600061069d6106966106916106a4565b610e53565b8484610e85565b9392505050565b6000806106b030610f44565b90506106bc8160101b90565b91505090565b60006103a5613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610fe1565b6040805160008082526020820190925260609161066f848383611059565b60008061071e83611120565b90506001600160a01b0381166103a5576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610425565b60006103a56107786107736106a4565b611130565b83611162565b6104dc83838360016111ca565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107ba5750335b90565b6000806107cb6105536106a4565b905060006107d885611120565b90506001600160a01b038416156107f4576107f481858761135c565b6001600160a01b03811615610828576108116000866000806111ca565b610828828260016108228686610a60565b036113f2565b6001600160a01b0386161561084e5761084e8287610846858a610a60565b6001016113f2565b61086861086161085c6106a4565b61148f565b86886114c1565b610870611566565b6001600160a01b03166366c93bdb7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6108af846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526109059291906001600160a01b038c16908b906024810161289a565b600060405180830381600087803b15801561091f57600080fd5b505af1158015610933573d6000803e3d6000fd5b509298975050505050505050565b61095a61094d30610f44565b6109556103f5565b611641565b565b6001600160a01b03821661098657604051633250574960e11b815260006004820152602401610425565b6000610994838360006107bd565b90506001600160a01b038116156104dc576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610425565b60006109e960008360006107bd565b90506001600160a01b0381166103f1576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101839052602401610425565b60006103a5613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610fe1565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610aa557610aa56128d0565b60209081029190910101526000610add8583837e200100200000000000000000000000000000000000000000000000000000006116e2565b95945050505050565b610af0838361095c565b6104dc6000848484610c4a565b60006103c561179f565b6040805160008082526020820190925260609161066f84836001611059565b6001600160a01b038216610b71576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610425565b610b87610b7f6106916106a4565b8484846117ee565b610b8f611566565b6001600160a01b031663c9a34acd7f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31610bce866001600160a01b031690565b6001600160a01b038616604080518715156020820152016040516020818303038152906040526040518563ffffffff1660e01b8152600401610c1394939291906128e6565b600060405180830381600087803b158015610c2d57600080fd5b505af1158015610c41573d6000803e3d6000fd5b50505050505050565b6001600160a01b0383163b156104a957826001600160a01b031663150b7a02610c716103f5565b8685856040518563ffffffff1660e01b8152600401610c93949392919061290b565b6020604051808303816000875af1925050508015610cce575060408051601f3d908101601f19168201909252610ccb9181019061293d565b60015b610d37573d808015610cfc576040519150601f19603f3d011682016040523d82523d6000602084013e610d01565b606091505b508051600003610d2f57604051633250574960e11b81526001600160a01b0385166004820152602401610425565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014610da457604051633250574960e11b81526001600160a01b0385166004820152602401610425565b5050505050565b60606103c5610dbb6103bb6106a4565b6118bb565b60006103a5613a3160f11b837f546f6b656e555249000000000000000000000000000000000000000000000000610fe1565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110610e2f57610e2f6128d0565b6020026020010181815250506000610add85836000611059565b60006103c56118da565b60006103a5613a3160f11b837f4f70657261746f72417070726f76616c00000000000000000000000000000000610fe1565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610eca57610eca6128d0565b602002602001018181525050826001600160a01b031660001b81600181518110610ef657610ef66128d0565b60209081029190910101526000610f2e8683837e010100010000000000000000000000000000000000000000000000000000006116e2565b9050610f3a8160f81c90565b9695505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610f8957610f896128d0565b6020908102919091010152600061066f7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006116e2565b6000610fef60706010612970565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b606060006110656118da565b9050306001600160a01b0382160361108a57611082858585611919565b91505061069d565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906110d3908890889088906004016129bf565b600060405180830381865afa1580156110f0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261108291908101906129eb565b509392505050565b60006103a561077861085c6106a4565b60006103a5613a3160f11b837f546f6b656e417070726f76616c00000000000000000000000000000000000000610fe1565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061119e5761119e6128d0565b602090810291909101015260006111be858383630500400560da1b6116e2565b60601c95945050505050565b80806111de57506001600160a01b03821615155b156113475760006111ee84610712565b90506001600160a01b0383161580159061121a5750826001600160a01b0316816001600160a01b031614155b801561122d575061122b8184610681565b155b1561126f576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610425565b81156113455761127d611566565b6001600160a01b03166366c93bdb7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256112bc846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526113129291906001600160a01b038b16908a906024810161289a565b600060405180830381600087803b15801561132c57600080fd5b505af1158015611340573d6000803e3d6000fd5b505050505b505b6104a96113556107736106a4565b84866114c1565b611367838383611953565b6104dc576001600160a01b0383166113ae576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610425565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610425565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b81600081518110611434576114346128d0565b6020026020010181815250506104a9848260008560405160200161145a91815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119b8565b60006103a5613a3160f11b837f4f776e6572730000000000000000000000000000000000000000000000000000610fe1565b604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106114fa576114fa6128d0565b6020026020010181815250506104a98482600085604051602001611549919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f19818403018152919052630500400560da1b6119b8565b60008061157230610f44565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f507570706574526567697374727900000000000000000000000000000000000060308201529192506000916115f691016040516020818303038152906040526115f090612a59565b83611a6e565b90506001600160a01b0381166103a5576040517f9434f7e100000000000000000000000000000000000000000000000000000000815230600482015260248101839052604401610425565b6001600160a01b0381166116967f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611aa7565b6001600160a01b0316146103f1576116ad82611b2b565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610425929190612a80565b6000806116ed6118da565b9050306001600160a01b038216036117135761170b86868686611c59565b91505061066f565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061175e908990899089908990600401612aab565b602060405180830381865afa15801561177b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061170b9190612ada565b6040805160008082526020820190925260006117e47f7462776f726c640000000000000000005472616e73616374696f6e436f6e74658383630500400560da1b6116e2565b60601c9392505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b8160008151811061182f5761182f6128d0565b602002602001018181525050826001600160a01b031660001b8160018151811061185b5761185b6128d0565b602002602001018181525050610da4858260008560405160200161188691151560f81b815260010190565b60408051601f198184030181529190527e010100010000000000000000000000000000000000000000000000000000006119b8565b6040805160008082526020820190925260609161066f84836002611059565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611914573391505090565b919050565b606061066f611929858585611c86565b600061194e856119398989611d06565b9060ff166028026038011c64ffffffffff1690565b611d19565b60006001600160a01b0383161580159061066f5750826001600160a01b0316846001600160a01b0316148061198d575061198d8484610681565b8061066f5750826001600160a01b03166119a683610763565b6001600160a01b031614949350505050565b60006119c26118da565b9050306001600160a01b038216036119e6576119e18686868686611d3c565b611a66565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611a339089908990899089908990600401612af3565b600060405180830381600087803b158015611a4d57600080fd5b505af1158015611a61573d6000803e3d6000fd5b505050505b505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061119e5761119e6128d0565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611ae057611ae06128d0565b60209081029190910101526000611b207f7462776f726c640000000000000000004e616d6573706163654f776e657200008383630500400560da1b6116e2565b60601c949350505050565b606081601081901b6000611b3e83611d51565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615611b9957611b947fffffffffffffffffffffffffffff0000000000000000000000000000000000008416611d68565b611bd0565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615611bf757611bf283611d68565b611c2e565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001611c4093929190612b3a565b6040516020818303038152906040529350505050919050565b6000610add611c688686611dee565b60ff858116601b0360080285901c16611c818587611e44565b611e75565b60008383604051602001611c9b929190612bc8565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b600061069d611d158484611ec6565b5490565b60405160208101601f19603f848401011660405282825261111885858584611f1c565b610da48585611d4b8487611e44565b85611fe8565b6000611d5f60706010612970565b9190911b919050565b606060005b6010811015611dbe576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615611dbe57600101611d6d565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061066f565b60008282604051602001611e03929190612bc8565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561111857611e6b60ff601b83900360080287901c1683612970565b9150600101611e49565b600060208210611e9b57602082048401935060208281611e9757611e97612c04565b0691505b508254600882021b602082900380841115611118576001850154600882021c82179150509392505050565b60008282604051602001611edb929190612bc8565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b8215611fa35760208310611f4657602083048401935060208381611f4257611f42612c04565b0692505b8215611fa3576020839003600081841015611f695750600019600884021c611f73565b50600019600882021c5b8554600886021b818451168219821617845250818411611f945750506104a9565b50600194909401939182900391015b5b60208210611fc55783548152600190930192601f1990910190602001611fa4565b81156104a9576000600019600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361207257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161206593929190612c1a565b60405180910390a26104a9565b600061207e8585611dee565b9050600061208b86612283565b905060005b81518110156121605760008282815181106120ad576120ad6128d0565b602002602001015190506120d96004826affffffffffffffffffffff191661230c90919063ffffffff16565b15612157576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612124908b908b908b908b90600401612c4d565b600060405180830381600087803b15801561213e57600080fd5b505af1158015612152573d6000803e3d6000fd5b505050505b50600101612090565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161219593929190612c1a565b60405180910390a26121b0828565ffffffffffff168561232a565b60005b8151811015610c415760008282815181106121d0576121d06128d0565b602002602001015190506121fc6008826affffffffffffffffffffff191661230c90919063ffffffff16565b1561227a576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612247908b908b908b908b90600401612c4d565b600060405180830381600087803b15801561226157600080fd5b505af1158015612275573d6000803e3d6000fd5b505050505b506001016121b3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106122bd576122bd6128d0565b602090810291909101015260006122f57f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611919565b905061066f6123078260008451612340565b6123ce565b60008160ff168261231d8560581c90565b1660ff1614905092915050565b6104dc8383835161233b8560200190565b6123df565b6000818311806123505750835182115b1561238d578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161042593929190612c86565b6020840161239b8482612970565b905060006123a98585612cab565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061069d836015600061249e565b821561245957602083106124095760208304840193506020838161240557612405612c04565b0692505b82156124595760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161244a5750506104a9565b50600194909401939182900391015b5b6020821061247b5780518455600190930192601f199091019060200161245a565b81156104a9576000600019600884021c8554835182191691161785555050505050565b606060006124ac8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816124d2576124d2612c04565b04905060405193506020840160208202810160405281855260005b8281101561250d578451871c8252938701936020909101906001016124ed565b50505050509392505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146104f257600080fd5b60006020828403121561255957600080fd5b813561069d81612519565b60005b8381101561257f578181015183820152602001612567565b50506000910152565b600081518084526125a0816020860160208601612564565b601f01601f19169290920160200192915050565b60208152600061069d6020830184612588565b6000602082840312156125d957600080fd5b5035919050565b80356001600160a01b038116811461191457600080fd5b6000806040838503121561260a57600080fd5b612613836125e0565b946020939093013593505050565b60008060006060848603121561263657600080fd5b61263f846125e0565b925061264d602085016125e0565b9150604084013590509250925092565b60006020828403121561266f57600080fd5b61069d826125e0565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126b7576126b7612678565b604052919050565b600067ffffffffffffffff8211156126d9576126d9612678565b50601f01601f191660200190565b600082601f8301126126f857600080fd5b813561270b612706826126bf565b61268e565b81815284602083860101111561272057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561275257600080fd5b61275b846125e0565b925060208401359150604084013567ffffffffffffffff81111561277e57600080fd5b61278a868287016126e7565b9150509250925092565b600080604083850312156127a757600080fd5b6127b0836125e0565b9150602083013580151581146127c557600080fd5b809150509250929050565b600080600080608085870312156127e657600080fd5b6127ef856125e0565b93506127fd602086016125e0565b925060408501359150606085013567ffffffffffffffff81111561282057600080fd5b61282c878288016126e7565b91505092959194509250565b6000806040838503121561284b57600080fd5b612854836125e0565b9150612862602084016125e0565b90509250929050565b6000835161287d818460208801612564565b835190830190612891818360208801612564565b01949350505050565b85815284602082015283604082015282606082015260a0608082015260006128c560a0830184612588565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b848152836020820152826040820152608060608201526000610f3a6080830184612588565b60006001600160a01b03808716835280861660208401525083604083015260806060830152610f3a6080830184612588565b60006020828403121561294f57600080fd5b815161069d81612519565b634e487b7160e01b600052601160045260246000fd5b808201808211156103a5576103a561295a565b60008151808452602080850194506020840160005b838110156129b457815187529582019590820190600101612998565b509495945050505050565b8381526060602082015260006129d86060830185612983565b905060ff83166040830152949350505050565b6000602082840312156129fd57600080fd5b815167ffffffffffffffff811115612a1457600080fd5b8201601f81018413612a2557600080fd5b8051612a33612706826126bf565b818152856020838501011115612a4857600080fd5b610add826020830160208601612564565b80516020808301519190811015612a7a576000198160200360031b1b821691505b50919050565b604081526000612a936040830185612588565b90506001600160a01b03831660208301529392505050565b848152608060208201526000612ac46080830186612983565b60ff949094166040830152506060015292915050565b600060208284031215612aec57600080fd5b5051919050565b85815260a060208201526000612b0c60a0830187612983565b60ff861660408401528281036060840152612b278186612588565b9150508260808301529695505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612b9b816003860160208901612564565b808401905081600382015284519150612bbb826004830160208801612564565b0160040195945050505050565b8281526000602080830184516020860160005b82811015612bf757815184529284019290840190600101612bdb565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b606081526000612c2d6060830186612983565b65ffffffffffff851660208401528281036040840152610f3a8185612588565b848152608060208201526000612c666080830186612983565b65ffffffffffff8516604084015282810360608401526128c58185612588565b606081526000612c996060830186612588565b60208301949094525060400152919050565b818103818111156103a5576103a561295a56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"3270:922:142:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e3660046128e1565b610045565b005b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601083901c16176100958161025e565b61011a576040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff84169063b29e408990602401600060405180830381600087803b15801561010157600080fd5b505af1158015610115573d6000803e3d6000fd5b505050505b61012b610126836102eb565b610323565b61013c61013783610357565b610389565b61014d610148836103cd565b6103ff565b61015e61015983610443565b610475565b61016f61016a836104b7565b6104e9565b61018061017b8361052d565b61055f565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a96101a5846105a1565b6040516101b1906128d4565b604051809103906000f0801580156101cd573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561024157600080fd5b505af1158015610255573d6000803e3d6000fd5b50505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061029757610297612958565b602090810291909101015260006102d77f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6105ee565b90506102e38160f81c90565b949350505050565b600061031d613a3160f11b837f4f70657261746f72417070726f76616c000000000000000000000000000000006106c5565b92915050565b61035481630101000160d81b61033761074c565b61033f610809565b610347610843565b61034f61091b565b610992565b50565b600061031d613a3160f11b837f4f776e65727300000000000000000000000000000000000000000000000000006106c5565b610354817e140100140000000000000000000000000000000000000000000000000000006103b5610a65565b6103bd610a9f565b6103c5610ad9565b61034f610b50565b600061031d613a3160f11b837f546f6b656e417070726f76616c000000000000000000000000000000000000006106c5565b610354817e1401001400000000000000000000000000000000000000000000000000000061042b610a65565b610433610a9f565b61043b610ad9565b61034f610bc7565b600061031d613a3160f11b837f546f6b656e5552490000000000000000000000000000000000000000000000006106c5565b610354817c010000000000000000000000000000000000000000000000000000000061049f610a65565b6104a7610c3e565b6104af610ad9565b61034f610c78565b600061031d613a3160f11b837f42616c616e6365730000000000000000000000000000000000000000000000006106c5565b610354817e20010020000000000000000000000000000000000000000000000000000000610515610a9f565b61051d610a65565b610525610bc7565b61034f610cef565b600061031d613a3160f11b837f4d657461646174610000000000000000000000000000000000000000000000006106c5565b610354817c0300000000000000000000000000000000000000000000000000000000610589610d66565b610591610d7f565b610599610e44565b61034f610e77565b600061031d7f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d00000000000000000000000000000000000000006106c5565b6000806105f9610f97565b90503073ffffffffffffffffffffffffffffffffffffffff82160361062c5761062486868686610fe3565b9150506102e3565b6040517f8c364d5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690638c364d59906106849089908990899089906004016129aa565b602060405180830381865afa1580156106a1573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061062491906129d9565b60006106d360706010612a08565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060820183526000928392919060208301908036833701905050905060618160008151811061078657610786612958565b602002602001019060c581111561079f5761079f612a1b565b908160c58111156107b2576107b2612a1b565b815250506061816001815181106107cb576107cb612958565b602002602001019060c58111156107e4576107e4612a1b565b908160c58111156107f7576107f7612a1b565b90525061080381611019565b91505090565b604080516001808252818301909252600091829190602080830190803683370190505090506060816000815181106107cb576107cb612958565b6040805160028082526060828101909352816020015b60608152602001906001900390816108595790505090506040518060400160405280600581526020017f6f776e6572000000000000000000000000000000000000000000000000000000815250816000815181106108b9576108b9612958565b60200260200101819052506040518060400160405280600881526020017f6f70657261746f720000000000000000000000000000000000000000000000008152508160018151811061090d5761090d612958565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816109325790505090506040518060400160405280600881526020017f617070726f7665640000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b600061099c610f97565b90503073ffffffffffffffffffffffffffffffffffffffff8216036109ce576109c98787878787876111dd565b610255565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f4990610a2a908a908a908a908a908a908a90600401612adb565b600060405180830381600087803b158015610a4457600080fd5b505af1158015610a58573d6000803e3d6000fd5b5050505050505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050601f816000815181106107cb576107cb612958565b604080516001808252818301909252600091829190602080830190803683370190505090506061816000815181106107cb576107cb612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610af05790505090506040518060400160405280600781526020017f746f6b656e4964000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610b675790505090506040518060400160405280600581526020017f6f776e65720000000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610bde5790505090506040518060400160405280600781526020017f6163636f756e74000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b6040805160018082528183019092526000918291906020808301908036833701905050905060c5816000815181106107cb576107cb612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610c8f5790505090506040518060400160405280600881526020017f746f6b656e5552490000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b604080516001808252818301909252606091816020015b6060815260200190600190039081610d065790505090506040518060400160405280600581526020017f76616c75650000000000000000000000000000000000000000000000000000008152508160008151811061090d5761090d612958565b6040805160008082526020820190925261080381611019565b604080516003808252608082019092526000918291906020820160608036833701905050905060c581600081518110610dba57610dba612958565b602002602001019060c5811115610dd357610dd3612a1b565b908160c5811115610de657610de6612a1b565b8152505060c581600181518110610dff57610dff612958565b602002602001019060c5811115610e1857610e18612a1b565b908160c5811115610e2b57610e2b612a1b565b8152505060c5816002815181106107cb576107cb612958565b60408051600080825260208201909252606091610e71565b6060815260200190600190039081610e5c5790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610e8f5790505090506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600081518110610eef57610eef612958565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c000000000000000000000000000000000000000000000000000081525081600181518110610f4357610f43612958565b60200260200101819052506040518060400160405280600781526020017f62617365555249000000000000000000000000000000000000000000000000008152508160028151811061090d5761090d612958565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610fde573391505090565b919050565b6000611010610ff2868661163b565b60ff858116601b0360080285901c1661100b8587611691565b6116ca565b95945050505050565b6000601c8251111561104c578151604051635318beb960e01b815260040161104391815260200190565b60405180910390fd5b60008080805b855181101561112757600061109087838151811061107257611072612958565b602002602001015160c581111561108b5761108b612a1b565b61171b565b9050806000036110a5576001909201916110dd565b82156110dd576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106110fe576110fe612958565b602002602001015160c581111561111757611117612a1b565b901b949094179350600101611052565b50600581111561114d57604051635318beb960e01b815260048101829052602401611043565b8451819003600861116060026020612b25565b61116a9190612b38565b83901b93909317926008600161118260026020612b25565b61118c9190612b25565b6111969190612b38565b81901b939093179260086001806111af60026020612b25565b6111b99190612b25565b6111c39190612b25565b6111cd9190612b38565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061125657507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b156112b757613a3160f11b868760405160200161127591815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252611043939291600401612b4f565b6112c085611775565b6112cb8460016119bc565b6112d68360006119bc565b60e084901c60e885901c0160ff168251146113365760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b60e085901c60e886901c0160ff168151146113965760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff161461140e5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b61141785611b58565b61142084611b58565b146114725761142e85611b58565b61143784611b58565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b61147b85611b8a565b61148484611b8a565b146114d65761149285611b8a565b61149b84611b8a565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b60005b6114e286611b58565b811015611578576115076114f68583611ba7565b60c581111561108b5761108b612a1b565b6008601b8390030287901c60ff1614611570576008601b8290030286901c60ff166115356114f68684611ba7565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401611043565b6001016114d9565b5061158286611bcf565b156115dc57858660405160200161159b91815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526110439291600401612b90565b61162886868686866040516020016115f49190612ba9565b604051602081830303815290604052866040516020016116149190612ba9565b604051602081830303815290604052611c48565b611633866001611d2b565b505050505050565b60008282604051602001611650929190612bbc565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156116c2576116b860ff601b83900360080287901c1683612a08565b9150600101611696565b509392505050565b6000602082106116f0576020820484019350602082816116ec576116ec612bf8565b0691505b508254600882021b6020829003808411156116c2576001850154600882021c82179150509392505050565b6000808260c581111561173057611730612a1b565b60ff169050606181101561174a57601f1660010192915050565b60618360c581111561175e5761175e612a1b565b0361176c5750601492915050565b50600092915050565b806117ac576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006117b782611b8a565b905060058111156117fe576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401611043565b600061180983611b58565b905060006118178383612a08565b9050601c81111561185e576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401611043565b6000805b838110156119095760ff601b82900360080287901c1660008190036118b6576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401611043565b60208111156118f4576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401611043565b6118fe8184612a08565b925050600101611862565b5061191385611dd1565b811461195f5761192285611dd1565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401611043565b825b601c8110156116335760ff601b82900360080287901c1680156119b3576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401611043565b50600101611961565b801580156119c8575081155b156119e957604051635318beb960e01b815260006004820152602401611043565b60006119f483611b8a565b90506005811115611a1b57604051635318beb960e01b815260048101829052602401611043565b6000611a2684611b58565b90506000611a348383612a08565b9050601c811115611a5b57604051635318beb960e01b815260048101829052602401611043565b6000805b83811015611ac7576000611a766114f68984611ba7565b905080600003611ab2576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611abc8184612a08565b925050600101611a5f565b50611ad186611dd1565b8114611afc57611ae086611dd1565b604051635318beb960e01b815260040161104391815260200190565b825b82811015610255576000611b156114f68984611ba7565b90508015611b4f576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101611afe565b600060086001611b6a60026020612b25565b611b749190612b25565b611b7e9190612b38565b8260ff911c1692915050565b60006008600180611b9d60026020612b25565b611b6a9190612b25565b6000601b8290036008028360ff911c1660c5811115611bc857611bc8612a1b565b9392505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611c0857611c08612958565b602090810291909101015260006102d77f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610fe3565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091526000611c7f8484611df4565b90506000611c8d8585611e11565b60408051600180825281830190925291925060009190602080830190803683370190505090508981600081518110611cc757611cc7612958565b6020908102919091010152611d1f7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611e3d565b50505050505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611d6157611d61612958565b602002602001018181525050611dcc7f746273746f72650000000000000000005265736f75726365496473000000000060001b82600085604051602001611daf91151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b612176565b505050565b60006008611de160026020612b25565b611deb9190612b38565b9190911c919050565b8151815160009181810160389190911b1760609190911b17611bc8565b60608282604051602001611e26929190612c0e565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611ec957857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611ebc9493929190612c3d565b60405180910390a2611633565b6000611ed487612192565b905060005b8151811015611fad576000828281518110611ef657611ef6612958565b60200260200101519050611f226001826affffffffffffffffffffff191661221b90919063ffffffff16565b15611fa4576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611f71908c908c908c908c908c908c90600401612c87565b600060405180830381600087803b158015611f8b57600080fd5b505af1158015611f9f573d6000803e3d6000fd5b505050505b50600101611ed9565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611fe49493929190612c3d565b60405180910390a26000611ff8888861163b565b90506000602087019050612010826000895184612239565b600061201b85611b8a565b111561209f57600061202d8a8a6122f7565b878155905060208601915060008060005b61204788611b8a565b8160ff16101561209a5761205c8d8d8361234d565b92506120778a8260ff166028026038011c64ffffffffff1690565b91506120868360008488612239565b6120908286612a08565b945060010161203e565b505050505b60005b8351811015611d1f5760008482815181106120bf576120bf612958565b602002602001015190506120eb6002826affffffffffffffffffffff191661221b90919063ffffffff16565b1561216d576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf9061213a908e908e908e908e908e908e90600401612c87565b600060405180830381600087803b15801561215457600080fd5b505af1158015612168573d6000803e3d6000fd5b505050505b506001016120a2565b61218b85856121858487611691565b856123cd565b5050505050565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106121cc576121cc612958565b602090810291909101015260006122047f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612668565b90506102e361221682600084516126a2565b612730565b60008160ff168261222c8560581c90565b1660ff1614905092915050565b82156122b357602083106122635760208304840193506020838161225f5761225f612bf8565b0692505b82156122b35760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116122a45750506122f1565b50600194909401939182900391015b5b602082106122d55780518455600190930192601f19909101906020016122b4565b81156122f15783548151600019600885021c9182169119161784555b50505050565b6000828260405160200161230c929190612bbc565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001612362929190612bbc565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361245757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161244a93929190612ce0565b60405180910390a26122f1565b6000612463858561163b565b9050600061247086612192565b905060005b815181101561254557600082828151811061249257612492612958565b602002602001015190506124be6004826affffffffffffffffffffff191661221b90919063ffffffff16565b1561253c576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612509908b908b908b908b90600401612d1d565b600060405180830381600087803b15801561252357600080fd5b505af1158015612537573d6000803e3d6000fd5b505050505b50600101612475565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161257a93929190612ce0565b60405180910390a2612595828565ffffffffffff1685612741565b60005b81518110156102555760008282815181106125b5576125b5612958565b602002602001015190506125e16008826affffffffffffffffffffff191661221b90919063ffffffff16565b1561265f576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061262c908b908b908b908b90600401612d1d565b600060405180830381600087803b15801561264657600080fd5b505af115801561265a573d6000803e3d6000fd5b505050505b50600101612598565b60606102e361267885858561234d565b600061269d856126888989612757565b9060ff166028026038011c64ffffffffff1690565b61276a565b6000818311806126b25750835182115b156126ef578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161104393929190612d56565b602084016126fd8482612a08565b9050600061270b8585612b25565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000611bc8836015600061278d565b611dcc838383516127528560200190565b612239565b6000611bc861276684846122f7565b5490565b60405160208101601f19603f84840101166040528282526116c285858584612808565b6060600061279b8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816127c1576127c1612bf8565b04905060405193506020840160208202810160405281855260005b828110156127fc578451871c8252938701936020909101906001016127dc565b50505050509392505050565b821561288f57602083106128325760208304840193506020838161282e5761282e612bf8565b0692505b821561288f5760208390036000818410156128555750600019600884021c61285f565b50600019600882021c5b8554600886021b8184511682198216178452508184116128805750506122f1565b50600194909401939182900391015b5b602082106128b15783548152600190930192601f1990910190602001612890565b81156122f1576000600019600884021c8251865482191691161782525050505050565b612ceb80612d7c83390190565b600080604083850312156128f457600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461291857600080fd5b915060208301357fffffffffffffffffffffffffffff0000000000000000000000000000000000008116811461294d57600080fd5b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b60008151808452602080850194506020840160005b8381101561299f57815187529582019590820190600101612983565b509495945050505050565b8481526080602082015260006129c3608083018661296e565b60ff949094166040830152506060015292915050565b6000602082840312156129eb57600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561031d5761031d6129f2565b634e487b7160e01b600052602160045260246000fd5b60005b83811015612a4c578181015183820152602001612a34565b50506000910152565b60008151808452612a6d816020860160208601612a31565b601f01601f19169290920160200192915050565b60008282518085526020808601955060208260051b8401016020860160005b84811015612ace57601f19868403018952612abc838351612a55565b98840198925090830190600101612aa0565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201526000612b0660c0830185612a81565b82810360a0840152612b188185612a81565b9998505050505050505050565b8181038181111561031d5761031d6129f2565b808202811582820484141761031d5761031d6129f2565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006110106060830184612a55565b8281526040602082015260006102e36040830184612a55565b602081526000611bc86020830184612a81565b8281526000602080830184516020860160005b82811015612beb57815184529284019290840190600101612bcf565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b60008351612c20818460208801612a31565b835190830190612c34818360208801612a31565b01949350505050565b608081526000612c50608083018761296e565b8281036020840152612c628187612a55565b90508460408401528281036060840152612c7c8185612a55565b979650505050505050565b86815260c060208201526000612ca060c083018861296e565b8281036040840152612cb28188612a55565b90508560608401528281036080840152612ccc8186612a55565b9150508260a0830152979650505050505050565b606081526000612cf3606083018661296e565b65ffffffffffff851660208401528281036040840152612d138185612a55565b9695505050505050565b848152608060208201526000612d36608083018661296e565b65ffffffffffff851660408401528281036060840152612c7c8185612a55565b606081526000612d696060830186612a55565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612ccb806100206000396000f3fe608060405234801561001057600080fd5b50600436106101775760003560e01c80636352211e116100d8578063a14481941161008c578063c87b56dd11610066578063c87b56dd146102e4578063e1af802c146102f7578063e985e9c5146102ff57600080fd5b8063a1448194146102ab578063a22cb465146102be578063b88d4fde146102d157600080fd5b80638832e6e3116100bd5780638832e6e3146102885780639081c7581461029b57806395d89b41146102a357600080fd5b80636352211e1461026257806370a082311461027557600080fd5b806323b872dd1161012f57806342842e0e1161011457806342842e0e1461022757806342966c681461023a57806345ec93541461024d57600080fd5b806323b872dd1461020157806340c10f191461021457600080fd5b8063081812fc11610160578063081812fc146101b9578063095ea7b3146101e4578063119df25f146101f957600080fd5b806301ffc9a71461017c57806306fdde03146101a4575b600080fd5b61018f61018a366004612547565b610312565b60405190151581526020015b60405180910390f35b6101ac6103ab565b60405161019b91906125b4565b6101cc6101c73660046125c7565b6103ca565b6040516001600160a01b03909116815260200161019b565b6101f76101f23660046125f7565b6103df565b005b6101cc6103f5565b6101f761020f366004612621565b6103ff565b6101f76102223660046125f7565b6104af565b6101f7610235366004612621565b6104c1565b6101f76102483660046125c7565b6104e1565b36601f1901355b60405190815260200161019b565b6101cc6102703660046125c7565b6104f5565b61025461028336600461265d565b610500565b6101f761029636600461273d565b61055e565b6101cc610571565b6101ac61057b565b6101f76102b93660046125f7565b610590565b6101f76102cc366004612794565b6105b2565b6101f76102df3660046127d0565b6105c4565b6101ac6102f23660046125c7565b6105db565b6101cc610677565b61018f61030d366004612838565b610681565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f255f267f0000000000000000000000000000000000000000000000000000000014806103a557507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606103c56103c06103bb6106a4565b6106c2565b6106f4565b905090565b60006103d582610712565b506103a582610763565b6103f182826103ec6103f5565b61077e565b5050565b60006103c561078b565b6001600160a01b03821661042e57604051633250574960e11b8152600060048201526024015b60405180910390fd5b6000610442838361043d6103f5565b6107bd565b9050836001600160a01b0316816001600160a01b0316146104a9576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610425565b50505050565b6104b7610941565b6103f1828261095c565b6104dc838383604051806020016040528060008152506105c4565b505050565b6104e9610941565b6104f2816109da565b50565b60006103a582610712565b60006001600160a01b038216610545576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610425565b6103a56105586105536106a4565b610a2e565b83610a60565b610566610941565b6104dc838383610ae6565b60006103c5610afd565b60606103c561058b6103bb6106a4565b610b07565b610598610941565b6103f1828260405180602001604052806000815250610ae6565b6103f16105bd6103f5565b8383610b26565b6105cf8484846103ff565b6104a984848484610c4a565b60606105e682610712565b5060006105f1610dab565b9050600061060e6106086106036106a4565b610dc0565b85610df2565b905060008151116106395760408051602081018690520160405160208183030381529060405261063b565b805b9050600082511161064c578061066f565b818160405160200161065f92919061286b565b6040516020818303038152906040525b949350505050565b60006103c5610e49565b600061069d6106966106916106a4565b610e53565b8484610e85565b9392505050565b6000806106b030610f44565b90506106bc8160101b90565b91505090565b60006103a5613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610fe1565b6040805160008082526020820190925260609161066f848383611059565b60008061071e83611120565b90506001600160a01b0381166103a5576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610425565b60006103a56107786107736106a4565b611130565b83611162565b6104dc83838360016111ca565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107ba5750335b90565b6000806107cb6105536106a4565b905060006107d885611120565b90506001600160a01b038416156107f4576107f481858761135c565b6001600160a01b03811615610828576108116000866000806111ca565b610828828260016108228686610a60565b036113f2565b6001600160a01b0386161561084e5761084e8287610846858a610a60565b6001016113f2565b61086861086161085c6106a4565b61148f565b86886114c1565b610870611566565b6001600160a01b03166366c93bdb7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6108af846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526109059291906001600160a01b038c16908b906024810161289a565b600060405180830381600087803b15801561091f57600080fd5b505af1158015610933573d6000803e3d6000fd5b509298975050505050505050565b61095a61094d30610f44565b6109556103f5565b611641565b565b6001600160a01b03821661098657604051633250574960e11b815260006004820152602401610425565b6000610994838360006107bd565b90506001600160a01b038116156104dc576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610425565b60006109e960008360006107bd565b90506001600160a01b0381166103f1576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101839052602401610425565b60006103a5613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610fe1565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610aa557610aa56128d0565b60209081029190910101526000610add8583837e200100200000000000000000000000000000000000000000000000000000006116e2565b95945050505050565b610af0838361095c565b6104dc6000848484610c4a565b60006103c561179f565b6040805160008082526020820190925260609161066f84836001611059565b6001600160a01b038216610b71576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610425565b610b87610b7f6106916106a4565b8484846117ee565b610b8f611566565b6001600160a01b031663c9a34acd7f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31610bce866001600160a01b031690565b6001600160a01b038616604080518715156020820152016040516020818303038152906040526040518563ffffffff1660e01b8152600401610c1394939291906128e6565b600060405180830381600087803b158015610c2d57600080fd5b505af1158015610c41573d6000803e3d6000fd5b50505050505050565b6001600160a01b0383163b156104a957826001600160a01b031663150b7a02610c716103f5565b8685856040518563ffffffff1660e01b8152600401610c93949392919061290b565b6020604051808303816000875af1925050508015610cce575060408051601f3d908101601f19168201909252610ccb9181019061293d565b60015b610d37573d808015610cfc576040519150601f19603f3d011682016040523d82523d6000602084013e610d01565b606091505b508051600003610d2f57604051633250574960e11b81526001600160a01b0385166004820152602401610425565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014610da457604051633250574960e11b81526001600160a01b0385166004820152602401610425565b5050505050565b60606103c5610dbb6103bb6106a4565b6118bb565b60006103a5613a3160f11b837f546f6b656e555249000000000000000000000000000000000000000000000000610fe1565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110610e2f57610e2f6128d0565b6020026020010181815250506000610add85836000611059565b60006103c56118da565b60006103a5613a3160f11b837f4f70657261746f72417070726f76616c00000000000000000000000000000000610fe1565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610eca57610eca6128d0565b602002602001018181525050826001600160a01b031660001b81600181518110610ef657610ef66128d0565b60209081029190910101526000610f2e8683837e010100010000000000000000000000000000000000000000000000000000006116e2565b9050610f3a8160f81c90565b9695505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610f8957610f896128d0565b6020908102919091010152600061066f7f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006116e2565b6000610fef60706010612970565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b606060006110656118da565b9050306001600160a01b0382160361108a57611082858585611919565b91505061069d565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906110d3908890889088906004016129bf565b600060405180830381865afa1580156110f0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261108291908101906129eb565b509392505050565b60006103a561077861085c6106a4565b60006103a5613a3160f11b837f546f6b656e417070726f76616c00000000000000000000000000000000000000610fe1565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b8160008151811061119e5761119e6128d0565b602090810291909101015260006111be858383630500400560da1b6116e2565b60601c95945050505050565b80806111de57506001600160a01b03821615155b156113475760006111ee84610712565b90506001600160a01b0383161580159061121a5750826001600160a01b0316816001600160a01b031614155b801561122d575061122b8184610681565b155b1561126f576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610425565b81156113455761127d611566565b6001600160a01b03166366c93bdb7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256112bc846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526113129291906001600160a01b038b16908a906024810161289a565b600060405180830381600087803b15801561132c57600080fd5b505af1158015611340573d6000803e3d6000fd5b505050505b505b6104a96113556107736106a4565b84866114c1565b611367838383611953565b6104dc576001600160a01b0383166113ae576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610425565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610425565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b81600081518110611434576114346128d0565b6020026020010181815250506104a9848260008560405160200161145a91815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119b8565b60006103a5613a3160f11b837f4f776e6572730000000000000000000000000000000000000000000000000000610fe1565b604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106114fa576114fa6128d0565b6020026020010181815250506104a98482600085604051602001611549919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f19818403018152919052630500400560da1b6119b8565b60008061157230610f44565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f507570706574526567697374727900000000000000000000000000000000000060308201529192506000916115f691016040516020818303038152906040526115f090612a59565b83611a6e565b90506001600160a01b0381166103a5576040517f9434f7e100000000000000000000000000000000000000000000000000000000815230600482015260248101839052604401610425565b6001600160a01b0381166116967f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611aa7565b6001600160a01b0316146103f1576116ad82611b2b565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610425929190612a80565b6000806116ed6118da565b9050306001600160a01b038216036117135761170b86868686611c59565b91505061066f565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d599061175e908990899089908990600401612aab565b602060405180830381865afa15801561177b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061170b9190612ada565b6040805160008082526020820190925260006117e47f7462776f726c640000000000000000005472616e73616374696f6e436f6e74658383630500400560da1b6116e2565b60601c9392505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b8160008151811061182f5761182f6128d0565b602002602001018181525050826001600160a01b031660001b8160018151811061185b5761185b6128d0565b602002602001018181525050610da4858260008560405160200161188691151560f81b815260010190565b60408051601f198184030181529190527e010100010000000000000000000000000000000000000000000000000000006119b8565b6040805160008082526020820190925260609161066f84836002611059565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611914573391505090565b919050565b606061066f611929858585611c86565b600061194e856119398989611d06565b9060ff166028026038011c64ffffffffff1690565b611d19565b60006001600160a01b0383161580159061066f5750826001600160a01b0316846001600160a01b0316148061198d575061198d8484610681565b8061066f5750826001600160a01b03166119a683610763565b6001600160a01b031614949350505050565b60006119c26118da565b9050306001600160a01b038216036119e6576119e18686868686611d3c565b611a66565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611a339089908990899089908990600401612af3565b600060405180830381600087803b158015611a4d57600080fd5b505af1158015611a61573d6000803e3d6000fd5b505050505b505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061119e5761119e6128d0565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611ae057611ae06128d0565b60209081029190910101526000611b207f7462776f726c640000000000000000004e616d6573706163654f776e657200008383630500400560da1b6116e2565b60601c949350505050565b606081601081901b6000611b3e83611d51565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615611b9957611b947fffffffffffffffffffffffffffff0000000000000000000000000000000000008416611d68565b611bd0565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615611bf757611bf283611d68565b611c2e565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001611c4093929190612b3a565b6040516020818303038152906040529350505050919050565b6000610add611c688686611dee565b60ff858116601b0360080285901c16611c818587611e44565b611e75565b60008383604051602001611c9b929190612bc8565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b600061069d611d158484611ec6565b5490565b60405160208101601f19603f848401011660405282825261111885858584611f1c565b610da48585611d4b8487611e44565b85611fe8565b6000611d5f60706010612970565b9190911b919050565b606060005b6010811015611dbe576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615611dbe57600101611d6d565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061066f565b60008282604051602001611e03929190612bc8565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561111857611e6b60ff601b83900360080287901c1683612970565b9150600101611e49565b600060208210611e9b57602082048401935060208281611e9757611e97612c04565b0691505b508254600882021b602082900380841115611118576001850154600882021c82179150509392505050565b60008282604051602001611edb929190612bc8565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b8215611fa35760208310611f4657602083048401935060208381611f4257611f42612c04565b0692505b8215611fa3576020839003600081841015611f695750600019600884021c611f73565b50600019600882021c5b8554600886021b818451168219821617845250818411611f945750506104a9565b50600194909401939182900391015b5b60208210611fc55783548152600190930192601f1990910190602001611fa4565b81156104a9576000600019600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361207257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161206593929190612c1a565b60405180910390a26104a9565b600061207e8585611dee565b9050600061208b86612283565b905060005b81518110156121605760008282815181106120ad576120ad6128d0565b602002602001015190506120d96004826affffffffffffffffffffff191661230c90919063ffffffff16565b15612157576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612124908b908b908b908b90600401612c4d565b600060405180830381600087803b15801561213e57600080fd5b505af1158015612152573d6000803e3d6000fd5b505050505b50600101612090565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161219593929190612c1a565b60405180910390a26121b0828565ffffffffffff168561232a565b60005b8151811015610c415760008282815181106121d0576121d06128d0565b602002602001015190506121fc6008826affffffffffffffffffffff191661230c90919063ffffffff16565b1561227a576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612247908b908b908b908b90600401612c4d565b600060405180830381600087803b15801561226157600080fd5b505af1158015612275573d6000803e3d6000fd5b505050505b506001016121b3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106122bd576122bd6128d0565b602090810291909101015260006122f57f746273746f726500000000000000000053746f7265486f6f6b730000000000008383611919565b905061066f6123078260008451612340565b6123ce565b60008160ff168261231d8560581c90565b1660ff1614905092915050565b6104dc8383835161233b8560200190565b6123df565b6000818311806123505750835182115b1561238d578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161042593929190612c86565b6020840161239b8482612970565b905060006123a98585612cab565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061069d836015600061249e565b821561245957602083106124095760208304840193506020838161240557612405612c04565b0692505b82156124595760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161244a5750506104a9565b50600194909401939182900391015b5b6020821061247b5780518455600190930192601f199091019060200161245a565b81156104a9576000600019600884021c8554835182191691161785555050505050565b606060006124ac8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816124d2576124d2612c04565b04905060405193506020840160208202810160405281855260005b8281101561250d578451871c8252938701936020909101906001016124ed565b50505050509392505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146104f257600080fd5b60006020828403121561255957600080fd5b813561069d81612519565b60005b8381101561257f578181015183820152602001612567565b50506000910152565b600081518084526125a0816020860160208601612564565b601f01601f19169290920160200192915050565b60208152600061069d6020830184612588565b6000602082840312156125d957600080fd5b5035919050565b80356001600160a01b038116811461191457600080fd5b6000806040838503121561260a57600080fd5b612613836125e0565b946020939093013593505050565b60008060006060848603121561263657600080fd5b61263f846125e0565b925061264d602085016125e0565b9150604084013590509250925092565b60006020828403121561266f57600080fd5b61069d826125e0565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126b7576126b7612678565b604052919050565b600067ffffffffffffffff8211156126d9576126d9612678565b50601f01601f191660200190565b600082601f8301126126f857600080fd5b813561270b612706826126bf565b61268e565b81815284602083860101111561272057600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561275257600080fd5b61275b846125e0565b925060208401359150604084013567ffffffffffffffff81111561277e57600080fd5b61278a868287016126e7565b9150509250925092565b600080604083850312156127a757600080fd5b6127b0836125e0565b9150602083013580151581146127c557600080fd5b809150509250929050565b600080600080608085870312156127e657600080fd5b6127ef856125e0565b93506127fd602086016125e0565b925060408501359150606085013567ffffffffffffffff81111561282057600080fd5b61282c878288016126e7565b91505092959194509250565b6000806040838503121561284b57600080fd5b612854836125e0565b9150612862602084016125e0565b90509250929050565b6000835161287d818460208801612564565b835190830190612891818360208801612564565b01949350505050565b85815284602082015283604082015282606082015260a0608082015260006128c560a0830184612588565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b848152836020820152826040820152608060608201526000610f3a6080830184612588565b60006001600160a01b03808716835280861660208401525083604083015260806060830152610f3a6080830184612588565b60006020828403121561294f57600080fd5b815161069d81612519565b634e487b7160e01b600052601160045260246000fd5b808201808211156103a5576103a561295a565b60008151808452602080850194506020840160005b838110156129b457815187529582019590820190600101612998565b509495945050505050565b8381526060602082015260006129d86060830185612983565b905060ff83166040830152949350505050565b6000602082840312156129fd57600080fd5b815167ffffffffffffffff811115612a1457600080fd5b8201601f81018413612a2557600080fd5b8051612a33612706826126bf565b818152856020838501011115612a4857600080fd5b610add826020830160208601612564565b80516020808301519190811015612a7a576000198160200360031b1b821691505b50919050565b604081526000612a936040830185612588565b90506001600160a01b03831660208301529392505050565b848152608060208201526000612ac46080830186612983565b60ff949094166040830152506060015292915050565b600060208284031215612aec57600080fd5b5051919050565b85815260a060208201526000612b0c60a0830187612983565b60ff861660408401528281036060840152612b278186612588565b9150508260808301529695505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612b9b816003860160208901612564565b808401905081600382015284519150612bbb826004830160208801612564565b0160040195945050505050565b8281526000602080830184516020860160005b82811015612bf757815184529284019290840190600101612bdb565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b606081526000612c2d6060830186612983565b65ffffffffffff851660208401528281036040840152610f3a8185612588565b848152608060208201526000612c666080830186612983565b65ffffffffffff8516604084015282810360608401526128c58185612588565b606081526000612c996060830186612588565b60208301949094525060400152919050565b818103818111156103a5576103a561295a56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"3270:922:142:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3404:786;;;;;;:::i;:::-;;:::i;:::-;;;1531:18:59;1554:33;385:5:16;1554:33:59;;;;1523:65;3610:37:142;1523:65:59;3610:21:142;:37::i;:::-;3605:98;;3657:39;;;;;;;;754:25:208;;;3657:23:142;;;;;;727:18:208;;3657:39:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3605:98;3736:62;3762:35;3787:9;3762:24;:35::i;:::-;3736:25;:62::i;:::-;3804:42;3820:25;3835:9;3820:14;:25::i;:::-;3804:15;:42::i;:::-;3852:56;3875:32;3897:9;3875:21;:32::i;:::-;3852:22;:56::i;:::-;3914:46;3932:27;3949:9;3932:16;:27::i;:::-;3914:17;:46::i;:::-;3966;3984:27;4001:9;3984:16;:27::i;:::-;3966:17;:46::i;:::-;4018:52;4042:27;4059:9;4042:16;:27::i;:::-;4018:23;:52::i;:::-;4111:5;:20;;;4132:26;4148:9;4132:15;:26::i;:::-;4160:18;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4111:74:142;;;;;;;;;;;;;1039:25:208;;;;1112:42;1100:55;1080:18;;;1073:83;4180:4:142;1172:18:208;;;1165:50;1012:18;;4111:74:142;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3466:724;3404:786;;:::o;3232:315:27:-;3345:16;;;3359:1;3345:16;;;;;;;;;3297:11;;;;3345:16;;;;;;;;;;;;-1:-1:-1;3345:16:27;3316:45;;3400:10;3367:9;3377:1;3367:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3418:13;3434:64;1076:66;3471:9;3418:13;-1:-1:-1;;;3434:26:27;:64::i;:::-;3418:80;;3512:29;3533:5;3520:20;;7897:5;7811:97;3512:29;3504:38;3232:315;-1:-1:-1;;;;3232:315:27:o;892:198:158:-;959:10;982:105;-1:-1:-1;;;1045:9:158;1062:22;982:25;:105::i;:::-;975:112;892:198;-1:-1:-1;;892:198:158:o;2694:174:154:-;2748:115;2774:8;-1:-1:-1;;;2798:14:154;:12;:14::i;:::-;2814:16;:14;:16::i;:::-;2832:13;:11;:13::i;:::-;2847:15;:13;:15::i;:::-;2748:25;:115::i;:::-;2694:174;:::o;1092:177:158:-;1149:10;1172:94;-1:-1:-1;;;1235:9:158;1252:11;1172:25;:94::i;2616:174:155:-;2670:115;2696:8;1058:66;2720:14;:12;:14::i;:::-;2736:16;:14;:16::i;:::-;2754:13;:11;:13::i;:::-;2769:15;:13;:15::i;1271:192:158:-;1335:10;1358:102;-1:-1:-1;;;1421:9:158;1438:19;1358:25;:102::i;2625:174:156:-;2679:115;2705:8;1058:66;2729:14;:12;:14::i;:::-;2745:16;:14;:16::i;:::-;2763:13;:11;:13::i;:::-;2778:15;:13;:15::i;1465:182:158:-;1524:10;1547:97;-1:-1:-1;;;1610:9:158;1627:14;1547:25;:97::i;2620:174:157:-;2674:115;2700:8;1058:66;2724:14;:12;:14::i;:::-;2740:16;:14;:16::i;:::-;2758:13;:11;:13::i;:::-;2773:15;:13;:15::i;526:181:158:-;585:10;608:96;-1:-1:-1;;;671:9:158;688:13;608:25;:96::i;2618:174:190:-;2672:115;2698:8;1058:66;2722:14;:12;:14::i;:::-;2738:16;:14;:16::i;:::-;2756:13;:11;:13::i;:::-;2771:15;:13;:15::i;709:181:158:-;768:10;791:96;-1:-1:-1;;;854:9:158;871:13;791:25;:96::i;2777:174:152:-;2831:115;2857:8;1058:66;2881:14;:12;:14::i;:::-;2897:16;:14;:16::i;:::-;2915:13;:11;:13::i;:::-;2930:15;:13;:15::i;1649:186:158:-;1707:10;1730:102;1766:15;1794:9;1811:18;1730:25;:102::i;17702:457:24:-;17859:7;17874:21;17898:17;:15;:17::i;:::-;17874:41;-1:-1:-1;17950:4:24;17925:30;;;;17921:234;;17972:68;17997:7;18006:8;18016:10;18028:11;17972:24;:68::i;:::-;17965:75;;;;;17921:234;18068:80;;;;;:36;;;;;;:80;;18105:7;;18114:8;;18124:10;;18136:11;;18068:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;980:257:59:-;1067:10;1196:26;438:6;385:5:16;1196:26:59;:::i;:::-;1123:15;;;1142:31;385:5:16;1142:31:59;;;;1123:51;1178:13;;;:45;;;1123:101;;-1:-1:-1;980:257:59;;;;;:::o;1480:240:154:-;1574:19;;;1591:1;1574:19;;;;;;;;1527:6;;;;1574:19;1591:1;1574:19;;;;;;;;;;-1:-1:-1;1574:19:154;1541:52;;1615:18;1599:10;1610:1;1599:13;;;;;;;;:::i;:::-;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;1655:18;1639:10;1650:1;1639:13;;;;;;;;:::i;:::-;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;1687:28:154;1704:10;1687:16;:28::i;:::-;1680:35;;;1480:240;:::o;1837:205::-;1935:19;;;1952:1;1935:19;;;;;;;;;1886:6;;;;1935:19;;;;;;;;;;;;-1:-1:-1;1935:19:154;1900:54;;1978:15;1960:12;1973:1;1960:15;;;;;;;;:::i;2176:166::-;2265:15;;;2278:1;2265:15;;;2222:24;2265:15;;;;;;;;;;;;;;;;;;;;;;;;;;2254:26;;2286:21;;;;;;;;;;;;;;;;;:8;2295:1;2286:11;;;;;;;;:::i;:::-;;;;;;:21;;;;2313:24;;;;;;;;;;;;;;;;;:8;2322:1;2313:11;;;;;;;;:::i;:::-;;;;;;:24;;;;2176:166;:::o;2482:147::-;2577:15;;;2590:1;2577:15;;;;;;;;;2530:26;;2577:15;;;;;;;;;;;;;;;;;;;;2564:28;;2598:26;;;;;;;;;;;;;;;;;:10;2609:1;2598:13;;;;;;;;:::i;5574:520:24:-;5777:21;5801:17;:15;:17::i;:::-;5777:41;-1:-1:-1;5853:4:24;5828:30;;;;5824:266;;5868:91;5892:7;5901:11;5914:9;5925:11;5938:8;5948:10;5868:23;:91::i;:::-;5824:266;;;5980:103;;;;;:35;;;;;;:103;;6016:7;;6025:11;;6038:9;;6049:11;;6062:8;;6072:10;;5980:103;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5771:323;5574:520;;;;;;:::o;1470:200:155:-;1564:19;;;1581:1;1564:19;;;;;;;;;1517:6;;;;1564:19;;;;;;;;;;;;-1:-1:-1;1564:19:155;1531:52;;1605:18;1589:10;1600:1;1589:13;;;;;;;;:::i;1787:208::-;1885:19;;;1902:1;1885:19;;;;;;;;;1836:6;;;;1885:19;;;;;;;;;;;;-1:-1:-1;1885:19:155;1850:54;;1928:18;1910:12;1923:1;1910:15;;;;;;;;:::i;2129:138::-;2218:15;;;2231:1;2218:15;;;;;;;;;2175:24;;2218:15;;;;;;;;;;;;;;;;;;;;2207:26;;2239:23;;;;;;;;;;;;;;;;;:8;2248:1;2239:11;;;;;;;;:::i;2407:144::-;2502:15;;;2515:1;2502:15;;;;;;;;;2455:26;;2502:15;;;;;;;;;;;;;;;;;;;;2489:28;;2523:23;;;;;;;;;;;;;;;;;:10;2534:1;2523:13;;;;;;;;:::i;2414:146:156:-;2509:15;;;2522:1;2509:15;;;;;;;;;2462:26;;2509:15;;;;;;;;;;;;;;;;;;;;2496:28;;2530:25;;;;;;;;;;;;;;;;;:10;2541:1;2530:13;;;;;;;;:::i;1789:207:157:-;1887:19;;;1904:1;1887:19;;;;;;;;;1838:6;;;;1887:19;;;;;;;;;;;;-1:-1:-1;1887:19:157;1852:54;;1930:17;1912:12;1925:1;1912:15;;;;;;;;:::i;2408:147::-;2503:15;;;2516:1;2503:15;;;;;;;;;2456:26;;2503:15;;;;;;;;;;;;;;;;;;;;2490:28;;2524:26;;;;;;;;;;;;;;;;;:10;2535:1;2524:13;;;;;;;;:::i;2409:144:190:-;2504:15;;;2517:1;2504:15;;;;;;;;;2457:26;;2504:15;;;;;;;;;;;;;;;;;;;;2491:28;;2525:23;;;;;;;;;;;;;;;;;:10;2536:1;2525:13;;;;;;;;:::i;1559:160:152:-;1653:19;;;1606:6;1653:19;;;;;;;;;1686:28;1703:10;1686:16;:28::i;1836:289::-;1934:19;;;1951:1;1934:19;;;;;;;;;1885:6;;;;1934:19;;;;;;;;;;;-1:-1:-1;1934:19:152;1899:54;;1977:17;1959:12;1972:1;1959:15;;;;;;;;:::i;:::-;;;;;;:35;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;2018:17;2000:12;2013:1;2000:15;;;;;;;;:::i;:::-;;;;;;:35;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;;;2059:17;2041:12;2054:1;2041:15;;;;;;;;:::i;2259:109::-;2348:15;;;2361:1;2348:15;;;;;;;;;2305:24;;2348:15;;;;;;;;;;;;;;;;;;;;2337:26;;2259:109;:::o;2508:204::-;2603:15;;;2616:1;2603:15;;;;;;;;;2556:26;;2603:15;;;;;;;;;;;;;;;;;;;;2590:28;;2624:22;;;;;;;;;;;;;;;;;:10;2635:1;2624:13;;;;;;;;:::i;:::-;;;;;;:22;;;;2652:24;;;;;;;;;;;;;;;;;:10;2663:1;2652:13;;;;;;;;:::i;:::-;;;;;;:24;;;;2682:25;;;;;;;;;;;;;;;;;:10;2693:1;2682:13;;;;;;;;:::i;1766:227:24:-;996:42;1855:22;1816:7;;1855:22;;;1883:106;;1931:10;1924:17;;;1766:227;:::o;1883:106::-;1969:13;1766:227;-1:-1:-1;1766:227:24:o;38022:541:20:-;38179:7;38316:242;38360:59;38401:7;38410:8;38360:40;:59::i;:::-;38437:31;;;;4479:19:3;:27;537:1:30;4478:44:3;4444:79;;;4431:93;38486:63:20;38525:11;38538:10;38486:38;:63::i;:::-;38316:17;:242::i;:::-;38303:255;38022:541;-1:-1:-1;;;;;38022:541:20:o;1247:2059:17:-;1315:6;647:2:30;1333:7:17;:14;:33;1329:85;;;1399:7;:14;1375:39;;-1:-1:-1;;;1375:39:17;;;;;;754:25:208;;742:2;727:18;;577:208;1375:39:17;;;;;;;;1329:85;1420:14;;;;1621:956;1645:7;:14;1641:1;:18;1621:956;;;1671:24;1698:32;:7;1706:1;1698:10;;;;;;;;:::i;:::-;;;;;;;:30;;;;;;;;:::i;:::-;;:32::i;:::-;1671:59;;1743:16;1763:1;1743:21;1739:404;;1928:15;;;;;1739:404;;;1972:17;;1968:175;;2096:38;;;;;;;;;;;;;;1968:175;2269:16;2254:31;;;;537:1:30;2531::17;2527;437:2:30;2509:19:17;:23;2508:40;2492:7;2500:1;2492:10;;;;;;;;:::i;:::-;;;;;;;2484:19;;;;;;;;:::i;:::-;:65;;2474:75;;;;;-1:-1:-1;2559:3:17;;1621:956;;;;902:1:30;2621:13:17;:34;2617:85;;;2664:38;;-1:-1:-1;;;2664:38:17;;;;;754:25:208;;;727:18;;2664:38:17;577:208:208;2617:85:17;2802:14;;:30;;;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;3090:41:17;;;3080:51;;;;;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;3147:47:17;;;3137:57;;;;;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1576:38;;;;:::i;:::-;3210:49:17;;;;3200:59;;;;;1247:2059;-1:-1:-1;;;;1247:2059:17:o;8858:2614:20:-;-1:-1:-1;;;9118:7:20;:35;;;;;;:83;;-1:-1:-1;9178:23:20;9157:7;:44;;;;9118:83;9114:209;;;-1:-1:-1;;;9273:7:20;9306;9289:25;;;;;;6107:19:208;;6151:2;6142:12;;5947:213;9289:25:20;;;;-1:-1:-1;;9289:25:20;;;;;;;;;;9218:98;;;;;;;;;;:::i;9114:209::-;9369:22;:11;:20;:22::i;:::-;9432:40;:9;9465:4;9432:18;:40::i;:::-;9478:43;:11;9513:5;9478:20;:43::i;:::-;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9609:8:20;:15;:40;9605:148;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9730:15:20;;9666:80;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;6781:18;;9666:80:20;6634:248:208;9605:148:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9803:10:20;:17;:44;9799:158;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9932:17:20;;9864:86;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;6781:18;;9864:86:20;6634:248:208;9799:158:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10014:50:20;10010:171;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10081:93:20;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;6781:18;;10081:93:20;6634:248:208;10010:171:20;10223:29;:11;:27;:29::i;:::-;10190;:11;:27;:29::i;:::-;:62;10186:225;;10328:29;:11;:27;:29::i;:::-;10367;:11;:27;:29::i;:::-;10269:135;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;6781:18;;10269:135:20;6634:248:208;10186:225:20;10454:30;:11;:28;:30::i;:::-;10420;:11;:28;:30::i;:::-;:64;10416:230;;10561:30;:11;:28;:30::i;:::-;10601;:11;:28;:30::i;:::-;10501:138;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;6781:18;;10501:138:20;6634:248:208;10416:230:20;10743:9;10738:314;10758:29;:11;:27;:29::i;:::-;10754:1;:33;10738:314;;;10832:44;:22;:11;10852:1;10832:19;:22::i;:::-;:42;;;;;;;;:::i;:44::-;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10806:70:20;10802:244;;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10983:44:20;:22;:11;11003:1;10983:19;:22::i;:44::-;10895:142;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;6781:18;;10895:142:20;6634:248:208;10802:244:20;10789:3;;10738:314;;;;11114:31;11137:7;11114:22;:31::i;:::-;11110:140;;;11200:7;11233;11216:25;;;;;;6107:19:208;;6151:2;6142:12;;5947:213;11216:25:20;;;;-1:-1:-1;;11216:25:20;;;;;;;;;;11162:81;;;;;;;;;:::i;11110:140::-;11291:103;11303:7;11312:11;11325:9;11336:11;11360:8;11349:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;11382:10;11371:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;11291:11;:103::i;:::-;11430:37;11453:7;11462:4;11430:22;:37::i;:::-;8858:2614;;;;;;:::o;52539:191::-;52641:7;52705;52714:8;52688:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;52688:35:20;;;;;;;;;52678:46;;52688:35;52678:46;;;;44145:22;52671:53;;52539:191;-1:-1:-1;;;52539:191:20:o;53556:242::-;53652:7;;;53691:84;53711:10;53707:14;;:1;:14;53691:84;;;53736:32;4431:93:3;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;53736:32:20;;:::i;:::-;;-1:-1:-1;53723:3:20;;53691:84;;;-1:-1:-1;53787:6:20;53556:242;-1:-1:-1;;;53556:242:20:o;8879:812:19:-;8977:14;9013:2;9003:6;:12;8999:112;;9072:2;9063:6;:11;9045:29;;;;9094:2;9084:12;;;;;;:::i;:::-;;;;8999:112;-1:-1:-1;9302:21:19;;9287:12;9275:25;;9271:53;9450:2;:11;;;9532:22;;;9528:159;;;9668:1;9652:14;9648:22;9642:29;9627:12;9612:13;9608:32;9604:68;9596:6;9593:80;9583:90;;8993:698;8879:812;;;;;:::o;3195:520:1:-;3261:7;3274:13;3296:10;3290:17;;;;;;;;:::i;:::-;3274:33;;;;3324:2;3316:5;:10;3312:401;;;3568:2;3560:10;3574:1;3559:16;;;-1:-1:-1;;3195:520:1:o;3312:401::-;3610:18;3596:10;:32;;;;;;;;:::i;:::-;;3592:121;;-1:-1:-1;3643:2:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;-1:-1:-1;3707:1:1;;3195:520;-1:-1:-1;;3195:520:1:o;6774:1658:3:-;6457:45;6837:86;;6879:37;;;;;;;;;;;;;;6837:86;6929:25;6957:30;:11;:28;:30::i;:::-;6929:58;;902:1:30;6997:17:3;:38;6993:155;;;7052:89;;;;;;;;6808:25:208;;;902:1:30;6849:18:208;;;6842:34;6781:18;;7052:89:3;6634:248:208;6993:155:3;7154:24;7181:29;:11;:27;:29::i;:::-;7154:56;-1:-1:-1;7216:23:3;7242:36;7261:17;7154:56;7242:36;:::i;:::-;7216:62;;647:2:30;7288:15:3;:34;7284:140;;;7339:78;;;;;;;;6808:25:208;;;647:2:30;6849:18:208;;;6842:34;6781:18;;7339:78:3;6634:248:208;7284:140:3;7466:25;7502:9;7497:427;7517:16;7513:1;:20;7497:427;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;7545:24;7606:21;;;7602:232;;7646:51;;;;;;;;754:25:208;;;727:18;;7646:51:3;577:208:208;7602:232:3;334:2:30;7716:16:3;:28;7712:122;;;7763:62;;;;;;;;754:25:208;;;727:18;;7763:62:3;577:208:208;7712:122:3;7841:37;7862:16;7841:37;;:::i;:::-;;-1:-1:-1;;7906:3:3;;7497:427;;;;7991:30;:11;:28;:30::i;:::-;7970:17;:51;7966:183;;8092:30;:11;:28;:30::i;:::-;8038:104;;;;;;;;6808:25:208;;;;6849:18;;;6842:34;;;6781:18;;8038:104:3;6634:248:208;7966:183:3;8205:16;8188:240;647:2:30;8223:1:3;:20;8188:240;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;8319:21;;8315:107;;8359:54;;;;;;;;754:25:208;;;727:18;;8359:54:3;577:208:208;8315:107:3;-1:-1:-1;8245:3:3;;8188:240;;5689:1629:17;5796:10;5795:11;:31;;;;-1:-1:-1;6457:45:3;;5810:16:17;5791:80;;;5835:36;;-1:-1:-1;;;5835:36:17;;5869:1;5835:36;;;754:25:208;727:18;;5835:36:17;577:208:208;5791:80:17;5934:25;5962;:6;:23;:25::i;:::-;5934:53;;902:1:30;5997:17:17;:38;5993:103;;;6044:52;;-1:-1:-1;;;6044:52:17;;;;;754:25:208;;;727:18;;6044:52:17;577:208:208;5993:103:17;6103:24;6130;:6;:22;:24::i;:::-;6103:51;-1:-1:-1;6224:23:17;6250:36;6269:17;6103:51;6250:36;:::i;:::-;6224:62;;647:2:30;6296:15:17;:34;6292:97;;;6339:50;;-1:-1:-1;;;6339:50:17;;;;;754:25:208;;;727:18;;6339:50:17;577:208:208;6292:97:17;6450:25;6486:9;6481:313;6501:16;6497:1;:20;6481:313;;;6529:24;6556:39;:17;:6;6571:1;6556:14;:17::i;:39::-;6529:66;;6607:16;6627:1;6607:21;6603:101;;6647:48;;;;;;;;;;;;;;6603:101;6711:37;6732:16;6711:37;;:::i;:::-;;-1:-1:-1;;6776:3:17;;6481:313;;;;6862:25;:6;:23;:25::i;:::-;6841:17;:46;6837:134;;6938:25;:6;:23;:25::i;:::-;6904:60;;-1:-1:-1;;;6904:60:17;;;;;;754:25:208;;742:2;727:18;;577:208;6837:134:17;7046:16;7029:285;7068:15;7064:1;:19;7029:285;;;7095:24;7122:39;:17;:6;7137:1;7122:14;:17::i;:39::-;7095:66;-1:-1:-1;7173:20:17;;7169:100;;7212:48;;;;;;;;;;;;;;7169:100;-1:-1:-1;7296:3:17;;7029:285;;5135:171:3;5208:7;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;5244:11:3;5223:78;5236:64;;5223:78;;5135:171;-1:-1:-1;;5135:171:3:o;5533:173::-;5607:7;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;3948:206:17:-;4018:10;4108:19;:27;;;4139:1;4107:33;4086:6;4061:82;4078:63;;4061:82;;;;;;;;;:::i;:::-;4054:89;3948:206;-1:-1:-1;;;3948:206:17:o;3588:314:27:-;3702:16;;;3716:1;3702:16;;;;;;;;;3654:11;;;;3702:16;;;;;;;;;;;;-1:-1:-1;3702:16:27;3673:45;;3757:10;3724:9;3734:1;3724:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3775:13;3791:62;1076:66;3826:9;3775:13;-1:-1:-1;;;3791:24:27;:62::i;20651:676:29:-;25205:53;;;;;;8998:19:208;;;9033:12;;;9026:28;;;25178:12:29;9070::208;;;9063:28;;;25205:53:29;;;;;;;;;;9107:12:208;;;;25205:53:29;;;20942:29;20974:55;20988:18;21008:20;20974:13;:55::i;:::-;20942:87;;21035:25;21063:55;21077:18;21097:20;21063:13;:55::i;:::-;21154:16;;;21168:1;21154:16;;;;;;;;;21035:83;;-1:-1:-1;21125:26:29;;21154:16;;;;;;;;;;;;-1:-1:-1;21154:16:29;21125:45;;21209:7;21176:9;21186:1;21176:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;21224:98;1171:66;21254:9;21265:11;21278:15;21295:12;1343:66;21224:19;:98::i;:::-;20853:474;;;;20651:676;;;;;;:::o;4952:268:27:-;5052:16;;;5066:1;5052:16;;;;;;;;;5023:26;;5052:16;;;;;;;;;;;-1:-1:-1;5052:16:27;5023:45;;5107:10;5074:9;5084:1;5074:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5125:90;1076:66;1060:83;;5160:9;5171:1;5192:6;5174:26;;;;;;8673:14:208;8666:22;8661:3;8657:32;8645:45;;8715:1;8706:11;;8522:201;5174:26:27;;;;-1:-1:-1;;5174:26:27;;;;;;;;;-1:-1:-1;;;5125:24:27;:90::i;:::-;5017:203;4952:268;;:::o;4754:171:3:-;4828:7;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;4850:70:3;;;;;4754:171;-1:-1:-1;4754:171:3:o;25454:388:29:-;25762:32;;25796:34;;25580:29;;2444:5:15;;;834:16;2475:39;;;;2457:58;2556:23;2541:39;;;;2523:58;25740:91:29;2303:344:15;26007:234:29;26133:12;26184:18;26213:20;26160:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26153:83;;26007:234;;;;:::o;15127:3138:20:-;15421:23;15400:7;:44;;;15396:198;;15514:7;15498:75;15523:8;15533:10;15545:14;15561:11;15498:75;;;;;;;;;:::i;:::-;;;;;;;;15581:7;;15396:198;15732:22;15757:24;15773:7;15757:15;:24::i;:::-;15732:49;;15792:9;15787:340;15807:5;:12;15803:1;:16;15787:340;;;15834:9;15856:5;15862:1;15856:8;;;;;;;;:::i;:::-;;;;;;;15834:31;;15877:33;343:6:32;15877:4:20;:14;;;;;:33;;;;:::i;:::-;15873:248;;;15922:190;;;;;3404:35:4;;;;;15922:47:20;;:190;;15981:7;;16000:8;;16020:10;;16042:14;;16068:11;;16091;;15922:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15873:248;-1:-1:-1;15821:3:20;;15787:340;;;;16191:7;16175:75;16200:8;16210:10;16222:14;16238:11;16175:75;;;;;;;;;:::i;:::-;;;;;;;;16314:26;16343:59;16384:7;16393:8;16343:40;:59::i;:::-;16314:88;-1:-1:-1;16408:21:20;828:4:14;818:15;;16408:54:20;;16468:149;16506:18;16540:1;16557:10;:17;16597:13;16468;:149::i;:::-;16717:1;16684:30;:11;:28;:30::i;:::-;:34;16680:1174;;;16803:33;16839:66;16887:7;16896:8;16839:47;:66::i;:::-;629:28:19;;;16803:102:20;-1:-1:-1;828:4:14;818:15;;17079:47:20;;17235:27;17270:25;17308:7;17303:545;17321:30;:11;:28;:30::i;:::-;17317:1;:34;;;17303:545;;;17387:63;17429:7;17438:8;17448:1;17387:41;:63::i;:::-;17365:85;-1:-1:-1;17480:25:20;:14;17503:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;17480:25:20;17460:45;;17515:170;17557:19;17596:1;17617:17;17661:13;17515;:170::i;:::-;17695:34;17712:17;17695:34;;:::i;:::-;;-1:-1:-1;17826:3:20;;17303:545;;;;16720:1134;;;16680:1174;17928:9;17923:338;17943:5;:12;17939:1;:16;17923:338;;;17970:9;17992:5;17998:1;17992:8;;;;;;;;:::i;:::-;;;;;;;17970:31;;18013:32;437:6:32;18013:4:20;:14;;;;;:32;;;;:::i;:::-;18009:246;;;18057:189;;;;;3404:35:4;;;;;18057:46:20;;:189;;18115:7;;18134:8;;18154:10;;18176:14;;18202:11;;18225;;18057:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18009:246;-1:-1:-1;17957:3:20;;17923:338;;24989:355;25161:178;25195:7;25220:8;25250:63;25289:11;25302:10;25250:38;:63::i;:::-;25328:4;25161:16;:178::i;:::-;24989:355;;;;;:::o;4391:342:28:-;4507:16;;;4521:1;4507:16;;;;;;;;;4448:22;;4478:26;;4507:16;;;;;;;;;;;;-1:-1:-1;4507:16:28;4478:45;;4562:7;4529:9;4539:1;4529:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4577:18;4598:49;1075:66;4634:9;4577:18;4598:25;:49::i;:::-;4577:70;;4661:66;:44;4682:5;4689:1;4692:5;:12;4661:20;:44::i;:::-;:64;:66::i;2903:136:4:-;2973:4;3025:9;2992:42;;3011:9;2993:15;3003:4;3802:26;;;3672:162;2993:15;:27;2992:42;;;2985:49;;2903:136;;;;:::o;1423:2340:19:-;1536:10;;1532:1504;;1689:2;1679:6;:12;1675:122;;1752:2;1743:6;:11;1725:29;;;;1776:2;1766:12;;;;;;:::i;:::-;;;;1675:122;1887:10;;1883:1147;;2095:2;:11;;;1969:21;-1:-1:-1;;537:1:30;738:25:31;;716:48;2142:18:19;2127:33;;2329:12;2321:6;2317:25;2376:4;2365:9;2361:20;2353:28;;2431:13;2425:20;2414:9;2410:36;2392:54;;2679:4;2675:9;2658:14;2652:21;2648:37;2579:4;2567:10;2563:21;2506:193;2478:14;2458:253;;2770:13;2760:6;:23;2756:36;;2785:7;;;;2756:36;-1:-1:-1;2933:1:19;2915:19;;;;;2988:23;;;;;2946:30;1883:1147;3066:253;3083:2;3073:6;:12;3066:253;;3178:20;;3155:44;;3252:1;3234:19;;;;-1:-1:-1;;3292:12:19;;;;3280:2;3263:19;3066:253;;;3387:10;;3383:376;;3695:21;;3606:20;;-1:-1:-1;;537:1:30;738:25:31;;716:48;3691:32:19;;;3628:9;;3602:36;3551:184;3507:238;;3383:376;1423:2340;;;;:::o;55104:230:20:-;55225:7;55309;55318:8;55292:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;55292:35:20;;;;;;;;;55282:46;;55292:35;55282:46;;;;44308:40;55255:73;;55104:230;-1:-1:-1;;;55104:230:20:o;54475:274::-;54619:7;54724;54733:8;54707:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;54697:46;;;;;;54676:17;54669:25;;54649:45;;;44217:34;54649:45;:94;54641:103;;54634:110;;54475:274;;;;;:::o;18901:1676::-;19101:23;19080:7;:44;;;19076:232;;19231:7;19187:100;19250:8;19267:5;19280:4;19187:100;;;;;;;;:::i;:::-;;;;;;;;19295:7;;19076:232;19314:16;19333:59;19374:7;19383:8;19333:40;:59::i;:::-;19314:78;;19538:22;19563:24;19579:7;19563:15;:24::i;:::-;19538:49;;19598:9;19593:328;19613:5;:12;19609:1;:16;19593:328;;;19640:9;19662:5;19668:1;19662:8;;;;;;;;:::i;:::-;;;;;;;19640:31;;19683:41;548:6:32;19683:4:20;:14;;;;;:41;;;;:::i;:::-;19679:236;;;19736:170;;;;;3404:35:4;;;;;19736:54:20;;:170;;19812:7;;19841:8;;19868:5;;19891:4;;19736:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19679:236;-1:-1:-1;19627:3:20;;19593:328;;;;20022:7;19978:100;20041:8;20058:5;20071:4;19978:100;;;;;;;;:::i;:::-;;;;;;;;20128:70;20160:8;20178:5;20128:70;;20191:4;20128:13;:70::i;:::-;20252:9;20247:326;20267:5;:12;20263:1;:16;20247:326;;;20294:9;20316:5;20322:1;20316:8;;;;;;;;:::i;:::-;;;;;;;20294:31;;20337:40;657:6:32;20337:4:20;:14;;;;;:40;;;;:::i;:::-;20333:234;;;20389:169;;;;;3404:35:4;;;;;20389:53:20;;:169;;20464:7;;20493:8;;20520:5;;20543:4;;20389:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20333:234;-1:-1:-1;20281:3:20;;20247:326;;39031:522;39167:12;39291:257;39330:79;39372:7;39381:8;39391:17;39330:41;:79::i;:::-;39427:1;39446:93;39521:17;39446:66;39494:7;39503:8;39446:47;:66::i;:::-;:74;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;39446:93:20;39291:12;:257::i;1954:561:18:-;2045:5;2140:3;2132:5;:11;:32;;;;2153:4;:11;2147:3;:17;2132:32;2128:80;;;2191:4;2197:5;2204:3;2173:35;;;;;;;;;;;;;:::i;2128:80::-;2274:4;2264:15;;2321:16;2332:5;2264:15;2321:16;:::i;:::-;;-1:-1:-1;2343:12:18;2358:11;2364:5;2358:3;:11;:::i;:::-;643:17;2493:15;2485:3;2474:14;;;;2473:36;;;;;;-1:-1:-1;;;;;1954:561:18:o;40037:220:34:-;40103:24;40135:30;40168:32;40186:6;40194:2;40198:1;40168:17;:32::i;900:162:19:-;989:68;995:14;1011:6;1019:4;:11;1032:24;1051:4;828::14;818:15;;692:151;1032:24:19;989:5;:68::i;55672:301:20:-;55793:13;55885:82;55916:48;55946:7;55955:8;55916:29;:48::i;:::-;4645:21:19;;4539:137;4976:669;5392:4;5386:11;5433:4;5421:17;;-1:-1:-1;;5307:16:19;5480:26;;;5307:16;5303:32;5452:4;5445:63;5552:6;5544;5537:22;5570:51;5575:14;5591:6;5599;5607:13;5570:4;:51::i;2615:1129:36:-;2735:22;2765:21;2789;:11;2869:3:18;2847:25;;2773:104;2789:21:36;2765:45;-1:-1:-1;643:17:18;3110:38;;2816:20:36;2978:11;3110:38:18;2978:11:36;2963:26;;;;:::i;:::-;;2949:40;;3098:4;3092:11;3083:20;;3141:4;3134:5;3130:16;3201:4;3188:11;3184:22;3170:12;3166:41;3160:4;3153:55;3251:11;3244:5;3237:26;3294:1;3271:463;3310:11;3307:1;3304:18;3271:463;;;3704:20;;3683:42;;3662:64;;3576:31;;;;3489:4;3471:23;;;;3397:1;3390:9;3271:463;;;3275:28;;3050:690;;;2615:1129;;;;;:::o;6010:2380:19:-;6127:10;;6123:1542;;6280:2;6270:6;:12;6266:122;;6343:2;6334:6;:11;6316:29;;;;6367:2;6357:12;;;;;;:::i;:::-;;;;6266:122;6478:10;;6474:1185;;6686:2;:11;;;6560:21;6744:22;;;6740:135;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;7069:14;7063:21;7048:12;7040:6;7036:25;7032:53;7309:4;7293:13;7287:20;7283:31;7219:4;7215:9;7203:10;7199:26;7144:184;7117:13;7097:243;;7399:13;7389:6;:23;7385:36;;7414:7;;;;7385:36;-1:-1:-1;7562:1:19;7544:19;;;;;7617:23;;;;;7575:30;6474:1185;7694:253;7711:2;7701:6;:12;7694:253;;7805:21;;7783:44;;7880:1;7862:19;;;;-1:-1:-1;;7920:12:19;;;;7908:2;7891:19;7694:253;;;8015:10;;8011:375;;8035:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;8323:20:19;;8233:21;;8256:9;;8229:37;8319:31;;8178:184;8135:237;;-1:-1:-1;6010:2380:19;;;;:::o;-1:-1:-1:-;;;;;;;;:::o;14:558:208:-;102:6;110;163:2;151:9;142:7;138:23;134:32;131:52;;;179:1;176;169:12;131:52;218:9;205:23;268:42;261:5;257:54;250:5;247:65;237:93;;326:1;323;316:12;237:93;349:5;-1:-1:-1;406:2:208;391:18;;378:32;454:66;441:80;;429:93;;419:121;;536:1;533;526:12;419:121;559:7;549:17;;;14:558;;;;;:::o;1415:184::-;-1:-1:-1;;;1464:1:208;1457:88;1564:4;1561:1;1554:15;1588:4;1585:1;1578:15;1604:439;1657:3;1695:5;1689:12;1722:6;1717:3;1710:19;1748:4;1777;1772:3;1768:14;1761:21;;1816:4;1809:5;1805:16;1839:1;1849:169;1863:6;1860:1;1857:13;1849:169;;;1924:13;;1912:26;;1958:12;;;;1993:15;;;;1885:1;1878:9;1849:169;;;-1:-1:-1;2034:3:208;;1604:439;-1:-1:-1;;;;;1604:439:208:o;2048:545::-;2369:6;2358:9;2351:25;2412:3;2407:2;2396:9;2392:18;2385:31;2332:4;2433:57;2485:3;2474:9;2470:19;2462:6;2433:57;:::i;:::-;2538:4;2526:17;;;;2521:2;2506:18;;2499:45;-1:-1:-1;2575:2:208;2560:18;2553:34;2425:65;2048:545;-1:-1:-1;;2048:545:208:o;2598:184::-;2668:6;2721:2;2709:9;2700:7;2696:23;2692:32;2689:52;;;2737:1;2734;2727:12;2689:52;-1:-1:-1;2760:16:208;;2598:184;-1:-1:-1;2598:184:208:o;2787:::-;-1:-1:-1;;;2836:1:208;2829:88;2936:4;2933:1;2926:15;2960:4;2957:1;2950:15;2976:125;3041:9;;;3062:10;;;3059:36;;;3075:18;;:::i;3106:184::-;-1:-1:-1;;;3155:1:208;3148:88;3255:4;3252:1;3245:15;3279:4;3276:1;3269:15;3295:250;3380:1;3390:113;3404:6;3401:1;3398:13;3390:113;;;3480:11;;;3474:18;3461:11;;;3454:39;3426:2;3419:10;3390:113;;;-1:-1:-1;;3537:1:208;3519:16;;3512:27;3295:250::o;3550:330::-;3592:3;3630:5;3624:12;3657:6;3652:3;3645:19;3673:76;3742:6;3735:4;3730:3;3726:14;3719:4;3712:5;3708:16;3673:76;:::i;:::-;3794:2;3782:15;-1:-1:-1;;3778:88:208;3769:98;;;;3869:4;3765:109;;3550:330;-1:-1:-1;;3550:330:208:o;3885:657::-;3937:3;3968;4000:5;3994:12;4027:6;4022:3;4015:19;4053:4;4082;4077:3;4073:14;4066:21;;4140:4;4130:6;4127:1;4123:14;4116:5;4112:26;4108:37;4179:4;4172:5;4168:16;4202:1;4212:304;4226:6;4223:1;4220:13;4212:304;;;-1:-1:-1;;4301:5:208;4295:4;4291:16;4287:89;4282:3;4275:102;4398:38;4431:4;4422:6;4416:13;4398:38;:::i;:::-;4494:12;;;;4390:46;-1:-1:-1;4459:15:208;;;;4248:1;4241:9;4212:304;;;-1:-1:-1;4532:4:208;;3885:657;-1:-1:-1;;;;;;;3885:657:208:o;4547:907::-;5072:6;5061:9;5054:25;5115:6;5110:2;5099:9;5095:18;5088:34;5158:6;5153:2;5142:9;5138:18;5131:34;5201:6;5196:2;5185:9;5181:18;5174:34;5245:3;5239;5228:9;5224:19;5217:32;5035:4;5272:56;5323:3;5312:9;5308:19;5300:6;5272:56;:::i;:::-;5377:9;5369:6;5365:22;5359:3;5348:9;5344:19;5337:51;5405:43;5441:6;5433;5405:43;:::i;:::-;5397:51;4547:907;-1:-1:-1;;;;;;;;;4547:907:208:o;5641:128::-;5708:9;;;5729:11;;;5726:37;;;5743:18;;:::i;5774:168::-;5847:9;;;5878;;5895:15;;;5889:22;;5875:37;5865:71;;5916:18;;:::i;6165:464::-;6411:66;6403:6;6399:79;6388:9;6381:98;6515:6;6510:2;6499:9;6495:18;6488:34;6558:2;6553;6542:9;6538:18;6531:30;6362:4;6578:45;6619:2;6608:9;6604:18;6596:6;6578:45;:::i;6887:322::-;7095:6;7084:9;7077:25;7138:2;7133;7122:9;7118:18;7111:30;7058:4;7158:45;7199:2;7188:9;7184:18;7176:6;7158:45;:::i;7214:280::-;7413:2;7402:9;7395:21;7376:4;7433:55;7484:2;7473:9;7469:18;7461:6;7433:55;:::i;7499:639::-;7749:6;7744:3;7737:19;7719:3;7775:2;7808;7803:3;7799:12;7840:6;7834:13;7905:2;7897:6;7893:15;7926:1;7936:175;7950:6;7947:1;7944:13;7936:175;;;8013:13;;7999:28;;8049:14;;;;8086:15;;;;7972:1;7965:9;7936:175;;;-1:-1:-1;8127:5:208;;7499:639;-1:-1:-1;;;;;;;7499:639:208:o;8143:184::-;-1:-1:-1;;;8192:1:208;8185:88;8292:4;8289:1;8282:15;8316:4;8313:1;8306:15;9130:492;9305:3;9343:6;9337:13;9359:66;9418:6;9413:3;9406:4;9398:6;9394:17;9359:66;:::i;:::-;9488:13;;9447:16;;;;9510:70;9488:13;9447:16;9557:4;9545:17;;9510:70;:::i;:::-;9596:20;;9130:492;-1:-1:-1;;;;9130:492:208:o;9627:690::-;9960:3;9949:9;9942:22;9923:4;9987:57;10039:3;10028:9;10024:19;10016:6;9987:57;:::i;:::-;10092:9;10084:6;10080:22;10075:2;10064:9;10060:18;10053:50;10126:33;10152:6;10144;10126:33;:::i;:::-;10112:47;;10195:6;10190:2;10179:9;10175:18;10168:34;10250:9;10242:6;10238:22;10233:2;10222:9;10218:18;10211:50;10278:33;10304:6;10296;10278:33;:::i;:::-;10270:41;9627:690;-1:-1:-1;;;;;;;9627:690:208:o;10322:896::-;10773:6;10762:9;10755:25;10816:3;10811:2;10800:9;10796:18;10789:31;10736:4;10843:57;10895:3;10884:9;10880:19;10872:6;10843:57;:::i;:::-;10948:9;10940:6;10936:22;10931:2;10920:9;10916:18;10909:50;10982:33;11008:6;11000;10982:33;:::i;:::-;10968:47;;11051:6;11046:2;11035:9;11031:18;11024:34;11107:9;11099:6;11095:22;11089:3;11078:9;11074:19;11067:51;11135:33;11161:6;11153;11135:33;:::i;:::-;11127:41;;;11205:6;11199:3;11188:9;11184:19;11177:35;10322:896;;;;;;;;;:::o;11223:512::-;11474:2;11463:9;11456:21;11437:4;11500:56;11552:2;11541:9;11537:18;11529:6;11500:56;:::i;:::-;11604:14;11596:6;11592:27;11587:2;11576:9;11572:18;11565:55;11668:9;11660:6;11656:22;11651:2;11640:9;11636:18;11629:50;11696:33;11722:6;11714;11696:33;:::i;:::-;11688:41;11223:512;-1:-1:-1;;;;;;11223:512:208:o;11740:616::-;12050:6;12039:9;12032:25;12093:3;12088:2;12077:9;12073:18;12066:31;12013:4;12120:57;12172:3;12161:9;12157:19;12149:6;12120:57;:::i;:::-;12225:14;12217:6;12213:27;12208:2;12197:9;12193:18;12186:55;12289:9;12281:6;12277:22;12272:2;12261:9;12257:18;12250:50;12317:33;12343:6;12335;12317:33;:::i;12361:360::-;12564:2;12553:9;12546:21;12527:4;12584:45;12625:2;12614:9;12610:18;12602:6;12584:45;:::i;:::-;12660:2;12645:18;;12638:34;;;;-1:-1:-1;12703:2:208;12688:18;12681:34;12576:53;12361:360;-1:-1:-1;12361:360:208:o","linkReferences":{}},"methodIdentifiers":{"register(address,bytes14)":"472466c2"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"FieldLayoutLib_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"SchemaLib_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SchemaLib_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"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\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"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\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"contract IBaseWorld\",\"name\":\"world\",\"type\":\"address\"},{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"register\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"SchemaLib_InvalidLength(uint256)\":[{\"details\":\"Error raised when the provided schema has an invalid length.\"}],\"SchemaLib_StaticTypeAfterDynamicType()\":[{\"details\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"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 set.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten 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 write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"register(address,bytes14)\":{\"notice\":\"Register systems and tables for a new ERC721 token in a given namespace\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/modules/erc721-puppet/ERC721Module.sol\":\"ERC721ModuleRegistrationLibrary\"},\"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\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55\",\"dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf\",\"dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4\",\"dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b\",\"dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb\",\"dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84\",\"dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1\",\"dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e\",\"dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924\",\"dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67\",\"dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263\",\"dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912\",\"dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6\",\"dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99\",\"dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a\",\"dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d\",\"dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3\",\"dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff\",\"dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787\",\"dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551\",\"dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea\",\"dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4\",\"dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44\",\"dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2\",\"dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38\",\"dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64\",\"dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb\",\"dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4\",\"dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf\",\"dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205\",\"dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed\",\"dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU\"]},\"node_modules/@latticexyz/world/src/DelegationControl.sol\":{\"keccak256\":\"0x8cb98a092891f05e855c9bc4705f0c6ad5d5c82be731afd3591c091ef91530a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://66e589610bcf3a79d5a158a3ce6d4a894b96575826a16fd817bd80721625e3d6\",\"dweb:/ipfs/QmTDFR47F5Cq82LRXMxBt6j8omobm9cZtmBBnWycBnmjPx\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d\",\"dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0x6c11c44fef08d46ca9f291551a42b8576259f65b7e957aef92540ba0acd72909\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ffbc3646ea495350939319f5418ba2dd45b6ec809d6b84ed3264e592a9385bd\",\"dweb:/ipfs/QmPCjuQUMWVUPv7vSVfztnymYA9hUP1xRS62FD6iwzGMuo\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc\",\"dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0x61392feda0588aba0f72be7c44c65d9115604b5f3d61a79a716d2cc78906bb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7cd374cc3c8b05140aa54d712cbd541a51fc7cb4065f7bfc172f64169c1a818a\",\"dweb:/ipfs/QmcsHDhXQFUDB5vf8kES61teypHLuMxNdheat9TN8wY9so\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x7d478d15961646ee2889e30169e4e4045ed98c92bfa398abda9299179c234ca6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6aa9999fb5bed10c89639cbc1caf099971abaa8c481a581038227e6c14210776\",\"dweb:/ipfs/QmdxsLT2cFi9Y7buNBVC1WWeKKjNyNDTrpkuRNwGYSGAFz\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xf15243b03fdc6e5222aefdaad74fffc909f9058f9d8d6ba06acb797197f74635\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c3f4ecb21499e677697dbe71002a5e96651fb0d8c279c4065e6441f13a9c75b3\",\"dweb:/ipfs/QmZ7oEHWK85aetzt9uJ3bmJJKLZkK5PoaakxiEDq4xEEww\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0xfdfdbdb1373ff83d8529865e21bbe796025861140a0a96c7183bcc6999ba63dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1c1d003f9a28bc9098cc669406f569905a7726fc17cb07a6a6027531aebe5020\",\"dweb:/ipfs/QmPrEP9SRfKRouAQmVn6dq4MgguBPboMdMPg88WqBjsjgn\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9\",\"dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x570da3c73388cb2bcdce4b137968871d89ffe294ba00997029a505060f3a6f0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://840b4bf9a472574066e6ebe765a8cbbc4ecff41820b5c72b4e92f92fa7c88d55\",\"dweb:/ipfs/QmXX9AUXdVH1xdDZLD1FS3MNoHmunYL1BYt8Ar9iDwVtTU\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74\",\"dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0xea5256f37d5f373dc0d008b30a44f46f85d5aa4826c9c9702e3a62cafe4fc00d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5f34c70731153f300c4d89b4ddcfd0b02834abf208fcd2ec5863fb1dc5bde74f\",\"dweb:/ipfs/QmdmCzFDr6WmSQ23b2T3aaJhJ6Qvzhc9UaE5z33adciAd4\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xd9ead56302e6ce3f7958983f6652c2712df74ce83cd002248b235769bd5f87d4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a925eab29746fdcff87662142f61565d64bfa108ee14a9a5d496413c150533c4\",\"dweb:/ipfs/QmaFXKnfuMbkaZCEz3e2J3Nx49keqvmaGa7QLBvbj1ntYt\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x7451726394ea4c39dcca268895499a7d908bd868092cf9b133772077ad5c6a6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c102f036a0ce081255c1088c75e823e5eb5dfdf36ade55d45a6c3914e2a4a5e5\",\"dweb:/ipfs/QmUWEstc4kRhqvUc5sbPyCvy3kvH3hzmH1GrP8MjyQYy3v\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0xd71d9a5a1ee5969cbfc548ddcd01814293d57b5c7f40df0a8ff926df43ec9d9b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6377994ebe168759b1f8ed17d4621720d66259c3ebff77acc2f7cc7dd9fec45\",\"dweb:/ipfs/QmeNaatg7JTe6tLc2RbC28SLEQTJFddXy5xZHmqi9zQ9Jx\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0xba969b5b252d1eb26f22908e4581456a6791e02e693cb14f48de35feb31b56f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34fcc11f5a70bcb51ea1ca76587e7dea7dfb940f522c820988212573a9ca32b6\",\"dweb:/ipfs/QmQSgQdJiXMVVSU5woFMC1mAGJBicBeoQUZ5UVX94UjJbX\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0x90d05ad5b6ce321f2d15d93cc6d126c0332afd161cebd008ea115a552bb0e772\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a6bd7a337b1a8ca9ce2c853db9003352895697d43bdf8c49da850ee19990aa8\",\"dweb:/ipfs/QmbvpN53672EQZMAfmDEC8bP6MRYUnAqLDRUmkkv6DMrAT\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0xfe79af16bea789b894c322b3796b7a5fd3042d2da0ea808768e1588bff53056c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://15a2c7d26d21773fa41dd3891553ad57520f0c401627da8f79c11751b0fca478\",\"dweb:/ipfs/QmZYpNkSXqqz5tUeqNwppY7Q75ec9gGPv7BkjUJc87AZFE\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0x6d247eea47c3566ea8e71b39e662607509f7a2080eabddf83c9f6b0682d27edc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ab03d2cf026d39902ec68c3665a6779053e82e0f60bccfe2810be4b43f05894e\",\"dweb:/ipfs/Qmdzg8bmkWjN4mw9EfnHFqYHpTJACGm9YoYZDZhX1MMamY\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e\",\"dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c\",\"dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c\",\"dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7\",\"dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/TransactionContext.sol\":{\"keccak256\":\"0xbf501d3d05958c923bb4cb8ca11d5d7c0fba898eda1235bbb1bea95e8f77ed9b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ceb206c972ff952de239ace637c9ead2e069035d1676ea18690289572d8663d1\",\"dweb:/ipfs/QmYRENaiEAexz1xEy9YoX2Xj7nAdr29g7dEsbshK3VoXNE\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/types.sol\":{\"keccak256\":\"0x1876630a009a39e1a771e5d05d420731b85523b4fe091ce04a72f6f283f5e9b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1166a3d9f7db80d2e041def918fa54baa0f4d51edb35731a8b2bf6ee76810411\",\"dweb:/ipfs/Qmf5VmgLsWJy3Tea5JM9mzCKJ49NJC1fRcgWGVFruusBgJ\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8\",\"dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d\",\"dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12\"]},\"src/modules/erc721-puppet/ERC721Module.sol\":{\"keccak256\":\"0x2291b83a76fab3263b9385e880f607f05246e50652f004f7653c3b3536d16e37\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://855c97565a34c412a5c1da63bd5548a8274c3d2aeb0ef364193044ad4e5cb2de\",\"dweb:/ipfs/Qmdj25kqiZDbAw1q4cvVFoqjFa4LNcG3HabcS8kZyj7neE\"]},\"src/modules/erc721-puppet/ERC721System.sol\":{\"keccak256\":\"0x293bc28b56c49abc6f7238482bf81da2d23e8f2faf9020a1a413b6fcf5d3322f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf6c50fa383088288d5dc0a8d2977a022cce19c5f4b71baec113fad25722b752\",\"dweb:/ipfs/QmXLSng3w6KFDL5YyuoYStKoyCUgS5TfwioZRmYzUonPhT\"]},\"src/modules/erc721-puppet/IERC721.sol\":{\"keccak256\":\"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16\",\"dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv\"]},\"src/modules/erc721-puppet/IERC721Errors.sol\":{\"keccak256\":\"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47\",\"dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx\"]},\"src/modules/erc721-puppet/IERC721Events.sol\":{\"keccak256\":\"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2\",\"dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn\"]},\"src/modules/erc721-puppet/IERC721Mintable.sol\":{\"keccak256\":\"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733\",\"dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo\"]},\"src/modules/erc721-puppet/IERC721Receiver.sol\":{\"keccak256\":\"0xa831e4590058e4424b7b7e859bef0eea8de3f2a036a100f81a2ac5f1117258d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ccc8731758952f21049142b6f8c5b9a64389367b8ebe6a79953c2e92c7393e5\",\"dweb:/ipfs/Qmf9o5qgENkreeUMga4DJfoqk6ocwGqMcCLpjJojthDM9t\"]},\"src/modules/erc721-puppet/constants.sol\":{\"keccak256\":\"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c\",\"dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn\"]},\"src/modules/erc721-puppet/tables/ERC721Metadata.sol\":{\"keccak256\":\"0x23b0f62cec1cb1ca59342f273f6fa237e174573d9b37b0a564dd7ae400d63c2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://60418a4d729e56cb17f2888dfa41964a8e29ddbe1b32239dba97cd9b90a2bfad\",\"dweb:/ipfs/QmSeEUxh2zX6gKRzovN4eSgb2VYCohVUwpbPiXAA54up1W\"]},\"src/modules/erc721-puppet/tables/ERC721Registry.sol\":{\"keccak256\":\"0x0ebefc2dd5f88b83442ce474d2b8bc6e3bd30325ac75bf3af6195640f04b2118\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c617cb37e88ea3b19fffb930078bea50a86c33273fd218cb47ad967434160995\",\"dweb:/ipfs/QmZZEYD5QkBEyJzrSByAoVsP2sFwvp3r8QMHcsvLibHGax\"]},\"src/modules/erc721-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0x258d17e5897f5278845ac031a56605f1baa1d1bd531e17331f39ea83f2307da3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d88b315ed46f3aadc64d01970cb4bf9d51655b9350f70dbe847799e3da2243d5\",\"dweb:/ipfs/Qma3hWeWAsRxjX2quDV2dooDNQUX1xSihoa2HL2cr2j4rN\"]},\"src/modules/erc721-puppet/tables/Owners.sol\":{\"keccak256\":\"0x1b923dc566774e48cbd6a40d071b93c22ddd4c0c17d142b2825031b731e20f61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8383531c8d680b898882d0afcce627884ddb8de1b02b97788d1da425940b1b2b\",\"dweb:/ipfs/QmPDFdLaYUnEoUhSeFjKctvPPw6vDHFjoM3C173ww9TPTZ\"]},\"src/modules/erc721-puppet/tables/TokenApproval.sol\":{\"keccak256\":\"0xc6eef4dad94ed16b7b2c480912f9ae0fd3dd9a1e1e96f1a0166eaf3b96937f73\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://747c07a427e4b3f5f02665fdd676716923b6b9aa06109e523560b5007fb5e0f4\",\"dweb:/ipfs/QmUrnBFHorUEa1nzaHnHnvLq4G4S3pY6EgrsAN66R35b8B\"]},\"src/modules/erc721-puppet/tables/TokenURI.sol\":{\"keccak256\":\"0x10b10937ee5a470ef746b2d20860f7c44dae4f3b4c39252d227054c81338a202\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26de8741012adf60050dd199e22b5ced8cf97e96c5e7e95642dece2993bfb198\",\"dweb:/ipfs/QmSQJDtCXKNg9zgu72LTTMvXcGtDxMuoD9tjqyW4macxRX\"]},\"src/modules/erc721-puppet/utils.sol\":{\"keccak256\":\"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c\",\"dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS\"]},\"src/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"src/modules/puppet/PuppetDelegationControl.sol\":{\"keccak256\":\"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d\",\"dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS\"]},\"src/modules/puppet/PuppetFactorySystem.sol\":{\"keccak256\":\"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9\",\"dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv\"]},\"src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"src/modules/puppet/createPuppet.sol\":{\"keccak256\":\"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398\",\"dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc\"]},\"src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x7599140542e17339a785741ca6057d2b5ca5529a816b4609940e43e154bf179d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b251df5ef3be9a7cca661d861ba8802181fe55607cf119313ad6db0bcd73be9\",\"dweb:/ipfs/QmaVjFTBdqasneWm1EakzBgBU9n7i4vV1YdrGiqYT5pobk\"]},\"src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"src/modules/tokens/tables/Balances.sol\":{\"keccak256\":\"0x323871032273e403a04e1b27c36dda8ec5cc7ae116c96af6843ad9b9585327db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd555e72a6b5c42e27aaeda796e93b50a9e4a0f9253dba806a484ff8559c4fd7\",\"dweb:/ipfs/QmQ3hJxyoWVj4Cx7w2Yb9DW18htPeN2z8drkz2Sq3emEyB\"]},\"src/utils/AccessControlLib.sol\":{\"keccak256\":\"0xc14746b7e25f7d3340b9585c170f2120a46639f3c6ebb8ba88ca81311f475df2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fba240838bc55220b4c9efdcd389df4ec028d43ea9f682cf583d7879280a7bb8\",\"dweb:/ipfs/QmV5fyNXfFgdTxYRYB1NzNQKkypnQH8SJ5C6BZpjhieiUS\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"FieldLayoutLib_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyFields"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"SchemaLib_InvalidLength"},{"inputs":[],"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"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","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[{"internalType":"contract IBaseWorld","name":"world","type":"address"},{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"stateMutability":"nonpayable","type":"function","name":"register"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"register(address,bytes14)":{"notice":"Register systems and tables for a new ERC721 token in a given namespace"}},"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":{"src/modules/erc721-puppet/ERC721Module.sol":"ERC721ModuleRegistrationLibrary"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd","urls":["bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55","dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728","urls":["bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf","dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09","urls":["bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4","dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2"],"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/IStore.sol":{"keccak256":"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3","urls":["bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b","dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec","urls":["bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb","dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79","urls":["bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84","dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f","urls":["bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1","dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99","urls":["bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e","dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449","urls":["bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924","dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167","urls":["bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67","dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc","urls":["bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263","dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d","urls":["bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912","dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e","urls":["bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6","dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8","urls":["bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99","dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5","urls":["bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a","dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f","urls":["bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d","dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20","urls":["bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3","dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9","urls":["bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff","dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c","urls":["bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787","dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7","urls":["bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551","dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763","urls":["bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea","dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b","urls":["bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4","dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270","urls":["bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44","dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50","urls":["bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2","dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410","urls":["bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38","dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305","urls":["bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64","dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554","urls":["bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb","dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7","urls":["bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4","dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29","urls":["bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf","dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a","urls":["bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205","dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61","urls":["bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed","dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU"],"license":"MIT"},"node_modules/@latticexyz/world/src/DelegationControl.sol":{"keccak256":"0x8cb98a092891f05e855c9bc4705f0c6ad5d5c82be731afd3591c091ef91530a3","urls":["bzz-raw://66e589610bcf3a79d5a158a3ce6d4a894b96575826a16fd817bd80721625e3d6","dweb:/ipfs/QmTDFR47F5Cq82LRXMxBt6j8omobm9cZtmBBnWycBnmjPx"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e","urls":["bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d","dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0x6c11c44fef08d46ca9f291551a42b8576259f65b7e957aef92540ba0acd72909","urls":["bzz-raw://0ffbc3646ea495350939319f5418ba2dd45b6ec809d6b84ed3264e592a9385bd","dweb:/ipfs/QmPCjuQUMWVUPv7vSVfztnymYA9hUP1xRS62FD6iwzGMuo"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc","urls":["bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc","dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0x61392feda0588aba0f72be7c44c65d9115604b5f3d61a79a716d2cc78906bb01","urls":["bzz-raw://7cd374cc3c8b05140aa54d712cbd541a51fc7cb4065f7bfc172f64169c1a818a","dweb:/ipfs/QmcsHDhXQFUDB5vf8kES61teypHLuMxNdheat9TN8wY9so"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x7d478d15961646ee2889e30169e4e4045ed98c92bfa398abda9299179c234ca6","urls":["bzz-raw://6aa9999fb5bed10c89639cbc1caf099971abaa8c481a581038227e6c14210776","dweb:/ipfs/QmdxsLT2cFi9Y7buNBVC1WWeKKjNyNDTrpkuRNwGYSGAFz"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xf15243b03fdc6e5222aefdaad74fffc909f9058f9d8d6ba06acb797197f74635","urls":["bzz-raw://c3f4ecb21499e677697dbe71002a5e96651fb0d8c279c4065e6441f13a9c75b3","dweb:/ipfs/QmZ7oEHWK85aetzt9uJ3bmJJKLZkK5PoaakxiEDq4xEEww"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0xfdfdbdb1373ff83d8529865e21bbe796025861140a0a96c7183bcc6999ba63dd","urls":["bzz-raw://1c1d003f9a28bc9098cc669406f569905a7726fc17cb07a6a6027531aebe5020","dweb:/ipfs/QmPrEP9SRfKRouAQmVn6dq4MgguBPboMdMPg88WqBjsjgn"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3","urls":["bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9","dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x570da3c73388cb2bcdce4b137968871d89ffe294ba00997029a505060f3a6f0d","urls":["bzz-raw://840b4bf9a472574066e6ebe765a8cbbc4ecff41820b5c72b4e92f92fa7c88d55","dweb:/ipfs/QmXX9AUXdVH1xdDZLD1FS3MNoHmunYL1BYt8Ar9iDwVtTU"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd","urls":["bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74","dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0xea5256f37d5f373dc0d008b30a44f46f85d5aa4826c9c9702e3a62cafe4fc00d","urls":["bzz-raw://5f34c70731153f300c4d89b4ddcfd0b02834abf208fcd2ec5863fb1dc5bde74f","dweb:/ipfs/QmdmCzFDr6WmSQ23b2T3aaJhJ6Qvzhc9UaE5z33adciAd4"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xd9ead56302e6ce3f7958983f6652c2712df74ce83cd002248b235769bd5f87d4","urls":["bzz-raw://a925eab29746fdcff87662142f61565d64bfa108ee14a9a5d496413c150533c4","dweb:/ipfs/QmaFXKnfuMbkaZCEz3e2J3Nx49keqvmaGa7QLBvbj1ntYt"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0x7451726394ea4c39dcca268895499a7d908bd868092cf9b133772077ad5c6a6a","urls":["bzz-raw://c102f036a0ce081255c1088c75e823e5eb5dfdf36ade55d45a6c3914e2a4a5e5","dweb:/ipfs/QmUWEstc4kRhqvUc5sbPyCvy3kvH3hzmH1GrP8MjyQYy3v"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0xd71d9a5a1ee5969cbfc548ddcd01814293d57b5c7f40df0a8ff926df43ec9d9b","urls":["bzz-raw://c6377994ebe168759b1f8ed17d4621720d66259c3ebff77acc2f7cc7dd9fec45","dweb:/ipfs/QmeNaatg7JTe6tLc2RbC28SLEQTJFddXy5xZHmqi9zQ9Jx"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0xba969b5b252d1eb26f22908e4581456a6791e02e693cb14f48de35feb31b56f4","urls":["bzz-raw://34fcc11f5a70bcb51ea1ca76587e7dea7dfb940f522c820988212573a9ca32b6","dweb:/ipfs/QmQSgQdJiXMVVSU5woFMC1mAGJBicBeoQUZ5UVX94UjJbX"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0x90d05ad5b6ce321f2d15d93cc6d126c0332afd161cebd008ea115a552bb0e772","urls":["bzz-raw://9a6bd7a337b1a8ca9ce2c853db9003352895697d43bdf8c49da850ee19990aa8","dweb:/ipfs/QmbvpN53672EQZMAfmDEC8bP6MRYUnAqLDRUmkkv6DMrAT"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0xfe79af16bea789b894c322b3796b7a5fd3042d2da0ea808768e1588bff53056c","urls":["bzz-raw://15a2c7d26d21773fa41dd3891553ad57520f0c401627da8f79c11751b0fca478","dweb:/ipfs/QmZYpNkSXqqz5tUeqNwppY7Q75ec9gGPv7BkjUJc87AZFE"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0x6d247eea47c3566ea8e71b39e662607509f7a2080eabddf83c9f6b0682d27edc","urls":["bzz-raw://ab03d2cf026d39902ec68c3665a6779053e82e0f60bccfe2810be4b43f05894e","dweb:/ipfs/Qmdzg8bmkWjN4mw9EfnHFqYHpTJACGm9YoYZDZhX1MMamY"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd","urls":["bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e","dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568","urls":["bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c","dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194","urls":["bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c","dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21","urls":["bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7","dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/TransactionContext.sol":{"keccak256":"0xbf501d3d05958c923bb4cb8ca11d5d7c0fba898eda1235bbb1bea95e8f77ed9b","urls":["bzz-raw://ceb206c972ff952de239ace637c9ead2e069035d1676ea18690289572d8663d1","dweb:/ipfs/QmYRENaiEAexz1xEy9YoX2Xj7nAdr29g7dEsbshK3VoXNE"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/types.sol":{"keccak256":"0x1876630a009a39e1a771e5d05d420731b85523b4fe091ce04a72f6f283f5e9b3","urls":["bzz-raw://1166a3d9f7db80d2e041def918fa54baa0f4d51edb35731a8b2bf6ee76810411","dweb:/ipfs/Qmf5VmgLsWJy3Tea5JM9mzCKJ49NJC1fRcgWGVFruusBgJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a","urls":["bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8","dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed","urls":["bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d","dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12"],"license":"MIT"},"src/modules/erc721-puppet/ERC721Module.sol":{"keccak256":"0x2291b83a76fab3263b9385e880f607f05246e50652f004f7653c3b3536d16e37","urls":["bzz-raw://855c97565a34c412a5c1da63bd5548a8274c3d2aeb0ef364193044ad4e5cb2de","dweb:/ipfs/Qmdj25kqiZDbAw1q4cvVFoqjFa4LNcG3HabcS8kZyj7neE"],"license":"MIT"},"src/modules/erc721-puppet/ERC721System.sol":{"keccak256":"0x293bc28b56c49abc6f7238482bf81da2d23e8f2faf9020a1a413b6fcf5d3322f","urls":["bzz-raw://bf6c50fa383088288d5dc0a8d2977a022cce19c5f4b71baec113fad25722b752","dweb:/ipfs/QmXLSng3w6KFDL5YyuoYStKoyCUgS5TfwioZRmYzUonPhT"],"license":"MIT"},"src/modules/erc721-puppet/IERC721.sol":{"keccak256":"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e","urls":["bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16","dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Errors.sol":{"keccak256":"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903","urls":["bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47","dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Events.sol":{"keccak256":"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13","urls":["bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2","dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Mintable.sol":{"keccak256":"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa","urls":["bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733","dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Receiver.sol":{"keccak256":"0xa831e4590058e4424b7b7e859bef0eea8de3f2a036a100f81a2ac5f1117258d7","urls":["bzz-raw://9ccc8731758952f21049142b6f8c5b9a64389367b8ebe6a79953c2e92c7393e5","dweb:/ipfs/Qmf9o5qgENkreeUMga4DJfoqk6ocwGqMcCLpjJojthDM9t"],"license":"MIT"},"src/modules/erc721-puppet/constants.sol":{"keccak256":"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d","urls":["bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c","dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Metadata.sol":{"keccak256":"0x23b0f62cec1cb1ca59342f273f6fa237e174573d9b37b0a564dd7ae400d63c2a","urls":["bzz-raw://60418a4d729e56cb17f2888dfa41964a8e29ddbe1b32239dba97cd9b90a2bfad","dweb:/ipfs/QmSeEUxh2zX6gKRzovN4eSgb2VYCohVUwpbPiXAA54up1W"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Registry.sol":{"keccak256":"0x0ebefc2dd5f88b83442ce474d2b8bc6e3bd30325ac75bf3af6195640f04b2118","urls":["bzz-raw://c617cb37e88ea3b19fffb930078bea50a86c33273fd218cb47ad967434160995","dweb:/ipfs/QmZZEYD5QkBEyJzrSByAoVsP2sFwvp3r8QMHcsvLibHGax"],"license":"MIT"},"src/modules/erc721-puppet/tables/OperatorApproval.sol":{"keccak256":"0x258d17e5897f5278845ac031a56605f1baa1d1bd531e17331f39ea83f2307da3","urls":["bzz-raw://d88b315ed46f3aadc64d01970cb4bf9d51655b9350f70dbe847799e3da2243d5","dweb:/ipfs/Qma3hWeWAsRxjX2quDV2dooDNQUX1xSihoa2HL2cr2j4rN"],"license":"MIT"},"src/modules/erc721-puppet/tables/Owners.sol":{"keccak256":"0x1b923dc566774e48cbd6a40d071b93c22ddd4c0c17d142b2825031b731e20f61","urls":["bzz-raw://8383531c8d680b898882d0afcce627884ddb8de1b02b97788d1da425940b1b2b","dweb:/ipfs/QmPDFdLaYUnEoUhSeFjKctvPPw6vDHFjoM3C173ww9TPTZ"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenApproval.sol":{"keccak256":"0xc6eef4dad94ed16b7b2c480912f9ae0fd3dd9a1e1e96f1a0166eaf3b96937f73","urls":["bzz-raw://747c07a427e4b3f5f02665fdd676716923b6b9aa06109e523560b5007fb5e0f4","dweb:/ipfs/QmUrnBFHorUEa1nzaHnHnvLq4G4S3pY6EgrsAN66R35b8B"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenURI.sol":{"keccak256":"0x10b10937ee5a470ef746b2d20860f7c44dae4f3b4c39252d227054c81338a202","urls":["bzz-raw://26de8741012adf60050dd199e22b5ced8cf97e96c5e7e95642dece2993bfb198","dweb:/ipfs/QmSQJDtCXKNg9zgu72LTTMvXcGtDxMuoD9tjqyW4macxRX"],"license":"MIT"},"src/modules/erc721-puppet/utils.sol":{"keccak256":"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5","urls":["bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c","dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS"],"license":"MIT"},"src/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"src/modules/puppet/PuppetDelegationControl.sol":{"keccak256":"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3","urls":["bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d","dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS"],"license":"MIT"},"src/modules/puppet/PuppetFactorySystem.sol":{"keccak256":"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe","urls":["bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9","dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv"],"license":"MIT"},"src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"src/modules/puppet/createPuppet.sol":{"keccak256":"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1","urls":["bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398","dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc"],"license":"MIT"},"src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x7599140542e17339a785741ca6057d2b5ca5529a816b4609940e43e154bf179d","urls":["bzz-raw://2b251df5ef3be9a7cca661d861ba8802181fe55607cf119313ad6db0bcd73be9","dweb:/ipfs/QmaVjFTBdqasneWm1EakzBgBU9n7i4vV1YdrGiqYT5pobk"],"license":"MIT"},"src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"license":"MIT"},"src/modules/tokens/tables/Balances.sol":{"keccak256":"0x323871032273e403a04e1b27c36dda8ec5cc7ae116c96af6843ad9b9585327db","urls":["bzz-raw://bd555e72a6b5c42e27aaeda796e93b50a9e4a0f9253dba806a484ff8559c4fd7","dweb:/ipfs/QmQ3hJxyoWVj4Cx7w2Yb9DW18htPeN2z8drkz2Sq3emEyB"],"license":"MIT"},"src/utils/AccessControlLib.sol":{"keccak256":"0xc14746b7e25f7d3340b9585c170f2120a46639f3c6ebb8ba88ca81311f475df2","urls":["bzz-raw://fba240838bc55220b4c9efdcd389df4ec028d43ea9f682cf583d7879280a7bb8","dweb:/ipfs/QmV5fyNXfFgdTxYRYB1NzNQKkypnQH8SJ5C6BZpjhieiUS"],"license":"MIT"}},"version":1},"id":142}
1
+ {"abi":[{"type":"function","name":"register","inputs":[{"name":"world","type":"address","internalType":"contract IBaseWorld"},{"name":"namespace","type":"bytes14","internalType":"bytes14"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"event","name":"Store_SetRecord","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"staticData","type":"bytes","indexed":false,"internalType":"bytes"},{"name":"encodedLengths","type":"bytes32","indexed":false,"internalType":"EncodedLengths"},{"name":"dynamicData","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"event","name":"Store_SpliceStaticData","inputs":[{"name":"tableId","type":"bytes32","indexed":true,"internalType":"ResourceId"},{"name":"keyTuple","type":"bytes32[]","indexed":false,"internalType":"bytes32[]"},{"name":"start","type":"uint48","indexed":false,"internalType":"uint48"},{"name":"data","type":"bytes","indexed":false,"internalType":"bytes"}],"anonymous":false},{"type":"error","name":"FieldLayout_Empty","inputs":[]},{"type":"error","name":"FieldLayout_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayout_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Schema_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Schema_StaticTypeAfterDynamicType","inputs":[]},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x608060405234801561001057600080fd5b5061554d806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e366004612431565b610045565b005b6000601082901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167f6e73000000000000000000000000000000000000000000000000000000000000176040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905290915073ffffffffffffffffffffffffffffffffffffffff84169063b29e408990602401600060405180830381600087803b1580156100f957600080fd5b505af115801561010d573d6000803e3d6000fd5b5050505061012261011d83610255565b61028d565b61013361012e83610309565b61033b565b61014461013f83610397565b6103c9565b61015561015083610425565b610457565b610166610161836104af565b6104e1565b6101776101728361053d565b61056f565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a961019c846105c1565b6040516101a890612424565b604051809103906000f0801580156101c4573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561023857600080fd5b505af115801561024c573d6000803e3d6000fd5b50505050505050565b6000610287613a3160f11b837f4f70657261746f72417070726f76616c0000000000000000000000000000000061060a565b92915050565b610306817e010100010000000000000000000000000000000000000000000000000000007e280200616100000000000000000000000000000000000000000000000000007e010100600000000000000000000000000000000000000000000000000000006102f9610691565b610301610769565b6107e0565b50565b6000610287613a3160f11b837f4f776e657273000000000000000000000000000000000000000000000000000061060a565b610306817e14010014000000000000000000000000000000000000000000000000000000632001001f60d81b7e1401006100000000000000000000000000000000000000000000000000000061038f6108b3565b61030161092a565b6000610287613a3160f11b837f546f6b656e417070726f76616c0000000000000000000000000000000000000061060a565b610306817e14010014000000000000000000000000000000000000000000000000000000632001001f60d81b7e1401006100000000000000000000000000000000000000000000000000000061041d6108b3565b6103016109a1565b6000610287613a3160f11b837f546f6b656e55524900000000000000000000000000000000000000000000000061060a565b610306817c0100000000000000000000000000000000000000000000000000000000632001001f60d81b7c01c50000000000000000000000000000000000000000000000000000006104a76108b3565b610301610a18565b6000610287613a3160f11b837f42616c616e63657300000000000000000000000000000000000000000000000061060a565b610306817e200100200000000000000000000000000000000000000000000000000000007e14010061000000000000000000000000000000000000000000000000000000632001001f60d81b6105356109a1565b610301610a8f565b6000610287613a3160f11b837f4d6574616461746100000000000000000000000000000000000000000000000061060a565b610306817c030000000000000000000000000000000000000000000000000000000060007c03c5c5c5000000000000000000000000000000000000000000000000006105b9610b06565b610301610b39565b60006102877f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d00000000000000000000000000000000000000005b6000610618607060106124be565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060828101909352816020015b60608152602001906001900390816106a75790505090506040518060400160405280600581526020017f6f776e657200000000000000000000000000000000000000000000000000000081525081600081518110610707576107076124d1565b60200260200101819052506040518060400160405280600881526020017f6f70657261746f720000000000000000000000000000000000000000000000008152508160018151811061075b5761075b6124d1565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816107805790505090506040518060400160405280600881526020017f617070726f7665640000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b60006107ea610c59565b90503073ffffffffffffffffffffffffffffffffffffffff82160361081c57610817878787878787610ca5565b61024c565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f4990610878908a908a908a908a908a908a90600401612591565b600060405180830381600087803b15801561089257600080fd5b505af11580156108a6573d6000803e3d6000fd5b5050505050505050505050565b604080516001808252818301909252606091816020015b60608152602001906001900390816108ca5790505090506040518060400160405280600781526020017f746f6b656e4964000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b60608152602001906001900390816109415790505090506040518060400160405280600581526020017f6f776e65720000000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b60608152602001906001900390816109b85790505090506040518060400160405280600781526020017f6163636f756e74000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b6060815260200190600190039081610a2f5790505090506040518060400160405280600881526020017f746f6b656e5552490000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b6060815260200190600190039081610aa65790505090506040518060400160405280600581526020017f76616c75650000000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b60408051600080825260208201909252606091610b33565b6060815260200190600190039081610b1e5790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610b515790505090506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600081518110610bb157610bb16124d1565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c000000000000000000000000000000000000000000000000000081525081600181518110610c0557610c056124d1565b60200260200101819052506040518060400160405280600781526020017f62617365555249000000000000000000000000000000000000000000000000008152508160028151811061075b5761075b6124d1565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610ca0573391505090565b919050565b613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001614801590610d1e57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b15610d8857613a3160f11b8687604051602001610d3d91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610d7f9392916004016125db565b60405180910390fd5b610d9185611111565b610d9c846001611358565b610da7836000611358565b60e084901c60e885901c0160ff16825114610e075760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60e085901c60e886901c0160ff16815114610e675760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff1614610edf5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b610ee8856114f4565b610ef1846114f4565b14610f4357610eff856114f4565b610f08846114f4565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b610f4c85611526565b610f5584611526565b14610fa757610f6385611526565b610f6c84611526565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60005b610fb3866114f4565b81101561104e57610fdd610fc78583611543565b60c5811115610fd857610fd861261c565b61156b565b6008601b8390030287901c60ff1614611046576008601b8290030286901c60ff1661100b610fc78684611543565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b600101610faa565b50611058866115c5565b156110b257858660405160200161107191815260200190565b60408051601f19818403018152908290527fdfaaf9cf000000000000000000000000000000000000000000000000000000008252610d7f9291600401612632565b6110fe86868686866040516020016110ca919061264b565b604051602081830303815290604052866040516020016110ea919061264b565b60405160208183030381529060405261166a565b61110986600161174d565b505050505050565b80611148576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061115382611526565b9050600581111561119a576040517f6793df620000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610d7f565b60006111a5836114f4565b905060006111b383836124be565b9050601c8111156111fa576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610d7f565b6000805b838110156112a55760ff601b82900360080287901c166000819003611252576040517f53b2dd0500000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b6020811115611290576040517f7237f23700000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b61129a81846124be565b9250506001016111fe565b506112af8561180b565b81146112fb576112be8561180b565b6040517feba964de000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610d7f565b825b601c8110156111095760ff601b82900360080287901c16801561134f576040517f1d8d44db00000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b506001016112fd565b80158015611364575081155b156113855760405163d498615960e01b815260006004820152602401610d7f565b600061139083611526565b905060058111156113b75760405163d498615960e01b815260048101829052602401610d7f565b60006113c2846114f4565b905060006113d083836124be565b9050601c8111156113f75760405163d498615960e01b815260048101829052602401610d7f565b6000805b83811015611463576000611412610fc78984611543565b90508060000361144e576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61145881846124be565b9250506001016113fb565b5061146d8661180b565b81146114985761147c8661180b565b60405163d498615960e01b8152600401610d7f91815260200190565b825b8281101561024c5760006114b1610fc78984611543565b905080156114eb576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161149a565b6000600860016115066002602061265e565b611510919061265e565b61151a9190612671565b8260ff911c1692915050565b600060086001806115396002602061265e565b611506919061265e565b6000601b8290036008028360ff911c1660c58111156115645761156461261c565b9392505050565b6000808260c58111156115805761158061261c565b60ff169050606181101561159a57601f1660010192915050565b60618360c58111156115ae576115ae61261c565b036115bc5750601492915050565b50600092915050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106115fe576115fe6124d1565b602090810291909101015260006116567f746273746f72650000000000000000005265736f75726365496473000000000083837e0101000100000000000000000000000000000000000000000000000000000061182e565b90506116628160f81c90565b949350505050565b6040805160208101879052808201869052606080820186905282518083039091018152608090910190915260006116a18484611864565b905060006116af8585611881565b604080516001808252818301909252919250600091906020808301908036833701905050905089816000815181106116e9576116e96124d1565b60209081029190910101526117417f746273746f72650000000000000000005461626c657300000000000000000000828686867e600302202020000000000000000000000000000000000000000000000000006118ad565b50505050505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611783576117836124d1565b6020026020010181815250506118067f746273746f72650000000000000000005265736f75726365496473000000000060001b826000856040516020016117d191151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611be6565b505050565b6000600861181b6002602061265e565b6118259190612671565b9190911c919050565b600061185b61183d8686611c02565b60ff858116601b0360080285901c166118568587611c58565b611c91565b95945050505050565b8151815160009181810160389190911b1760609190911b17611564565b60608282604051602001611896929190612688565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361193957857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161192c94939291906126f3565b60405180910390a2611109565b600061194487611ce2565b905060005b8151811015611a1d576000828281518110611966576119666124d1565b602002602001015190506119926001826affffffffffffffffffffff1916611d6b90919063ffffffff16565b15611a14576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906119e1908c908c908c908c908c908c9060040161273d565b600060405180830381600087803b1580156119fb57600080fd5b505af1158015611a0f573d6000803e3d6000fd5b505050505b50600101611949565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611a5494939291906126f3565b60405180910390a26000611a688888611c02565b90506000602087019050611a80826000895184611d89565b6000611a8b85611526565b1115611b0f576000611a9d8a8a611e47565b878155905060208601915060008060005b611ab788611526565b8160ff161015611b0a57611acc8d8d83611e9d565b9250611ae78a8260ff166028026038011c64ffffffffff1690565b9150611af68360008488611d89565b611b0082866124be565b9450600101611aae565b505050505b60005b8351811015611741576000848281518110611b2f57611b2f6124d1565b60200260200101519050611b5b6002826affffffffffffffffffffff1916611d6b90919063ffffffff16565b15611bdd576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611baa908e908e908e908e908e908e9060040161273d565b600060405180830381600087803b158015611bc457600080fd5b505af1158015611bd8573d6000803e3d6000fd5b505050505b50600101611b12565b611bfb8585611bf58487611c58565b85611f1d565b5050505050565b60008282604051602001611c17929190612796565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611c8957611c7f60ff601b83900360080287901c16836124be565b9150600101611c5d565b509392505050565b600060208210611cb757602082048401935060208281611cb357611cb36127d2565b0691505b508254600882021b602082900380841115611c89576001850154600882021c82179150509392505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611d1c57611d1c6124d1565b60209081029190910101526000611d547f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836121b8565b9050611662611d6682600084516121f2565b612280565b60008160ff1682611d7c8560581c90565b1660ff1614905092915050565b8215611e035760208310611db357602083048401935060208381611daf57611daf6127d2565b0692505b8215611e035760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611df4575050611e41565b50600194909401939182900391015b5b60208210611e255780518455600190930192601f1990910190602001611e04565b8115611e415783548151600019600885021c9182169119161784555b50505050565b60008282604051602001611e5c929190612796565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001611eb2929190612796565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603611fa757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051611f9a939291906127e8565b60405180910390a2611e41565b6000611fb38585611c02565b90506000611fc086611ce2565b905060005b8151811015612095576000828281518110611fe257611fe26124d1565b6020026020010151905061200e6004826affffffffffffffffffffff1916611d6b90919063ffffffff16565b1561208c576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612059908b908b908b908b90600401612825565b600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050505b50600101611fc5565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516120ca939291906127e8565b60405180910390a26120e5828565ffffffffffff1685612291565b60005b815181101561024c576000828281518110612105576121056124d1565b602002602001015190506121316008826affffffffffffffffffffff1916611d6b90919063ffffffff16565b156121af576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061217c908b908b908b908b90600401612825565b600060405180830381600087803b15801561219657600080fd5b505af11580156121aa573d6000803e3d6000fd5b505050505b506001016120e8565b60606116626121c8858585611e9d565b60006121ed856121d889896122a7565b9060ff166028026038011c64ffffffffff1690565b6122ba565b6000818311806122025750835182115b1561223f578383836040517f23230fa3000000000000000000000000000000000000000000000000000000008152600401610d7f9392919061285e565b6020840161224d84826124be565b9050600061225b858561265e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061156483601560006122dd565b611806838383516122a28560200190565b611d89565b60006115646122b68484611e47565b5490565b60405160208101601f19603f8484010116604052828252611c8985858584612358565b606060006122eb8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612311576123116127d2565b04905060405193506020840160208202810160405281855260005b8281101561234c578451871c82529387019360209091019060010161232c565b50505050509392505050565b82156123df57602083106123825760208304840193506020838161237e5761237e6127d2565b0692505b82156123df5760208390036000818410156123a55750600019600884021c6123af565b50600019600882021c5b8554600886021b8184511682198216178452508184116123d0575050611e41565b50600194909401939182900391015b5b602082106124015783548152600190930192601f19909101906020016123e0565b8115611e41576000600019600884021c8251865482191691161782525050505050565b612cbd8061288483390190565b6000806040838503121561244457600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461246857600080fd5b915060208301357fffffffffffffffffffffffffffff0000000000000000000000000000000000008116811461249d57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610287576102876124a8565b634e487b7160e01b600052603260045260246000fd5b60005b838110156125025781810151838201526020016124ea565b50506000910152565b600081518084526125238160208601602086016124e7565b601f01601f19169290920160200192915050565b60008282518085526020808601955060208260051b8401016020860160005b8481101561258457601f1986840301895261257283835161250b565b98840198925090830190600101612556565b5090979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006125bc60c0830185612537565b82810360a08401526125ce8185612537565b9998505050505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815282602082015260606040820152600061185b606083018461250b565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000611662604083018461250b565b6020815260006115646020830184612537565b81810381811115610287576102876124a8565b8082028115828204841417610287576102876124a8565b6000835161269a8184602088016124e7565b8351908301906126ae8183602088016124e7565b01949350505050565b60008151808452602080850194506020840160005b838110156126e8578151875295820195908201906001016126cc565b509495945050505050565b60808152600061270660808301876126b7565b8281036020840152612718818761250b565b90508460408401528281036060840152612732818561250b565b979650505050505050565b86815260c06020820152600061275660c08301886126b7565b8281036040840152612768818861250b565b90508560608401528281036080840152612782818661250b565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b828110156127c5578151845292840192908401906001016127a9565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006127fb60608301866126b7565b65ffffffffffff85166020840152828103604084015261281b818561250b565b9695505050505050565b84815260806020820152600061283e60808301866126b7565b65ffffffffffff851660408401528281036060840152612732818561250b565b606081526000612871606083018661250b565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612c9d806100206000396000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c80636352211e116100cd578063a22cb46511610081578063c87b56dd11610066578063c87b56dd146102d1578063e1af802c146102e4578063e985e9c5146102ec57600080fd5b8063a22cb465146102ab578063b88d4fde146102be57600080fd5b80638832e6e3116100b25780638832e6e31461027d57806395d89b4114610290578063a14481941461029857600080fd5b80636352211e1461025757806370a082311461026a57600080fd5b806323b872dd1161012457806342842e0e1161010957806342842e0e1461021c57806342966c681461022f57806345ec93541461024257600080fd5b806323b872dd146101f657806340c10f191461020957600080fd5b8063081812fc11610155578063081812fc146101ae578063095ea7b3146101d9578063119df25f146101ee57600080fd5b806301ffc9a71461017157806306fdde0314610199575b600080fd5b61018461017f366004612519565b6102ff565b60405190151581526020015b60405180910390f35b6101a1610398565b6040516101909190612586565b6101c16101bc366004612599565b6103b7565b6040516001600160a01b039091168152602001610190565b6101ec6101e73660046125c9565b6103cc565b005b6101c16103e2565b6101ec6102043660046125f3565b6103ec565b6101ec6102173660046125c9565b61049c565b6101ec61022a3660046125f3565b6104ae565b6101ec61023d366004612599565b6104ce565b36601f1901355b604051908152602001610190565b6101c1610265366004612599565b6104e2565b61024961027836600461262f565b6104ed565b6101ec61028b36600461270f565b61054b565b6101a161055e565b6101ec6102a63660046125c9565b610573565b6101ec6102b9366004612766565b610595565b6101ec6102cc3660046127a2565b6105a7565b6101a16102df366004612599565b6105be565b6101c161065a565b6101846102fa36600461280a565b610664565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061039257507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606103b26103ad6103a8610687565b6106a5565b6106d7565b905090565b60006103c2826106f5565b5061039282610746565b6103de82826103d96103e2565b610761565b5050565b60006103b261076e565b6001600160a01b03821661041b57604051633250574960e11b8152600060048201526024015b60405180910390fd5b600061042f838361042a6103e2565b6107a0565b9050836001600160a01b0316816001600160a01b031614610496576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610412565b50505050565b6104a4610924565b6103de828261093f565b6104c9838383604051806020016040528060008152506105a7565b505050565b6104d6610924565b6104df816109bd565b50565b6000610392826106f5565b60006001600160a01b038216610532576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b610392610545610540610687565b610a11565b83610a43565b610553610924565b6104c9838383610ac9565b60606103b261056e6103a8610687565b610ae0565b61057b610924565b6103de828260405180602001604052806000815250610ac9565b6103de6105a06103e2565b8383610aff565b6105b28484846103ec565b61049684848484610c23565b60606105c9826106f5565b5060006105d4610d84565b905060006105f16105eb6105e6610687565b610d99565b85610dcb565b9050600081511161061c5760408051602081018690520160405160208183030381529060405261061e565b805b9050600082511161062f5780610652565b818160405160200161064292919061283d565b6040516020818303038152906040525b949350505050565b60006103b2610e22565b6000610680610679610674610687565b610e2c565b8484610e5e565b9392505050565b60008061069330610f1d565b905061069f8160101b90565b91505090565b6000610392613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610fba565b60408051600080825260208201909252606091610652848383611032565b600080610701836110f9565b90506001600160a01b038116610392576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610412565b600061039261075b610756610687565b611109565b8361113b565b6104c983838360016111bb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061079d5750335b90565b6000806107ae610540610687565b905060006107bb856110f9565b90506001600160a01b038416156107d7576107d781858761134d565b6001600160a01b0381161561080b576107f46000866000806111bb565b61080b828260016108058686610a43565b036113e3565b6001600160a01b03861615610831576108318287610829858a610a43565b6001016113e3565b61084b61084461083f610687565b611480565b86886114b2565b61085361156f565b6001600160a01b03166366c93bdb7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610892846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526108e89291906001600160a01b038c16908b906024810161286c565b600060405180830381600087803b15801561090257600080fd5b505af1158015610916573d6000803e3d6000fd5b509298975050505050505050565b61093d61093030610f1d565b6109386103e2565b61164a565b565b6001600160a01b03821661096957604051633250574960e11b815260006004820152602401610412565b6000610977838360006107a0565b90506001600160a01b038116156104c9576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b60006109cc60008360006107a0565b90506001600160a01b0381166103de576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101839052602401610412565b6000610392613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610fba565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610a8857610a886128a2565b60209081029190910101526000610ac08583837e200100200000000000000000000000000000000000000000000000000000006116eb565b95945050505050565b610ad3838361093f565b6104c96000848484610c23565b6040805160008082526020820190925260609161065284836001611032565b6001600160a01b038216610b4a576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610412565b610b60610b58610674610687565b8484846117a8565b610b6861156f565b6001600160a01b031663c9a34acd7f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31610ba7866001600160a01b031690565b6001600160a01b038616604080518715156020820152016040516020818303038152906040526040518563ffffffff1660e01b8152600401610bec94939291906128b8565b600060405180830381600087803b158015610c0657600080fd5b505af1158015610c1a573d6000803e3d6000fd5b50505050505050565b6001600160a01b0383163b1561049657826001600160a01b031663150b7a02610c4a6103e2565b8685856040518563ffffffff1660e01b8152600401610c6c94939291906128dd565b6020604051808303816000875af1925050508015610ca7575060408051601f3d908101601f19168201909252610ca49181019061290f565b60015b610d10573d808015610cd5576040519150601f19603f3d011682016040523d82523d6000602084013e610cda565b606091505b508051600003610d0857604051633250574960e11b81526001600160a01b0385166004820152602401610412565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014610d7d57604051633250574960e11b81526001600160a01b0385166004820152602401610412565b5050505050565b60606103b2610d946103a8610687565b611875565b6000610392613a3160f11b837f546f6b656e555249000000000000000000000000000000000000000000000000610fba565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110610e0857610e086128a2565b6020026020010181815250506000610ac085836000611032565b60006103b2611894565b6000610392613a3160f11b837f4f70657261746f72417070726f76616c00000000000000000000000000000000610fba565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610ea357610ea36128a2565b602002602001018181525050826001600160a01b031660001b81600181518110610ecf57610ecf6128a2565b60209081029190910101526000610f078683837e010100010000000000000000000000000000000000000000000000000000006116eb565b9050610f138160f81c90565b9695505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610f6257610f626128a2565b602090810291909101015260006106527f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006116eb565b6000610fc860706010612942565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b6060600061103e611894565b9050306001600160a01b038216036110635761105b8585856118d3565b915050610680565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906110ac90889088908890600401612991565b600060405180830381865afa1580156110c9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261105b91908101906129bd565b509392505050565b600061039261075b61083f610687565b6000610392613a3160f11b837f546f6b656e417070726f76616c00000000000000000000000000000000000000610fba565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b81600081518110611177576111776128a2565b602090810291909101015260006111af8583837e140100140000000000000000000000000000000000000000000000000000006116eb565b60601c95945050505050565b80806111cf57506001600160a01b03821615155b156113385760006111df846106f5565b90506001600160a01b0383161580159061120b5750826001600160a01b0316816001600160a01b031614155b801561121e575061121c8184610664565b155b15611260576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610412565b81156113365761126e61156f565b6001600160a01b03166366c93bdb7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256112ad846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526113039291906001600160a01b038b16908a906024810161286c565b600060405180830381600087803b15801561131d57600080fd5b505af1158015611331573d6000803e3d6000fd5b505050505b505b610496611346610756610687565b84866114b2565b61135883838361190d565b6104c9576001600160a01b03831661139f576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610412565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610412565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b81600081518110611425576114256128a2565b602002602001018181525050610496848260008560405160200161144b91815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000611972565b6000610392613a3160f11b837f4f776e6572730000000000000000000000000000000000000000000000000000610fba565b604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106114eb576114eb6128a2565b602002602001018181525050610496848260008560405160200161153a919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e14010014000000000000000000000000000000000000000000000000000000611972565b60008061157b30610f1d565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f507570706574526567697374727900000000000000000000000000000000000060308201529192506000916115ff91016040516020818303038152906040526115f990612a2b565b83611a28565b90506001600160a01b038116610392576040517f9434f7e100000000000000000000000000000000000000000000000000000000815230600482015260248101839052604401610412565b6001600160a01b03811661169f7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611a61565b6001600160a01b0316146103de576116b682611afd565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610412929190612a52565b6000806116f6611894565b9050306001600160a01b0382160361171c5761171486868686611c2b565b915050610652565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611767908990899089908990600401612a7d565b602060405180830381865afa158015611784573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117149190612aac565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b816000815181106117e9576117e96128a2565b602002602001018181525050826001600160a01b031660001b81600181518110611815576118156128a2565b602002602001018181525050610d7d858260008560405160200161184091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611972565b6040805160008082526020820190925260609161065284836002611032565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806118ce573391505090565b919050565b60606106526118e3858585611c58565b6000611908856118f38989611cd8565b9060ff166028026038011c64ffffffffff1690565b611ceb565b60006001600160a01b038316158015906106525750826001600160a01b0316846001600160a01b0316148061194757506119478484610664565b806106525750826001600160a01b031661196083610746565b6001600160a01b031614949350505050565b600061197c611894565b9050306001600160a01b038216036119a05761199b8686868686611d0e565b611a20565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906119ed9089908990899089908990600401612ac5565b600060405180830381600087803b158015611a0757600080fd5b505af1158015611a1b573d6000803e3d6000fd5b505050505b505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611177576111776128a2565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a9a57611a9a6128a2565b60209081029190910101526000611af27f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116eb565b60601c949350505050565b606081601081901b6000611b1083611d23565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615611b6b57611b667fffffffffffffffffffffffffffff0000000000000000000000000000000000008416611d3a565b611ba2565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615611bc957611bc483611d3a565b611c00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001611c1293929190612b0c565b6040516020818303038152906040529350505050919050565b6000610ac0611c3a8686611dc0565b60ff858116601b0360080285901c16611c538587611e16565b611e47565b60008383604051602001611c6d929190612b9a565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b6000610680611ce78484611e98565b5490565b60405160208101601f19603f84840101166040528282526110f185858584611eee565b610d7d8585611d1d8487611e16565b85611fba565b6000611d3160706010612942565b9190911b919050565b606060005b6010811015611d90576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615611d9057600101611d3f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280610652565b60008282604051602001611dd5929190612b9a565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156110f157611e3d60ff601b83900360080287901c1683612942565b9150600101611e1b565b600060208210611e6d57602082048401935060208281611e6957611e69612bd6565b0691505b508254600882021b6020829003808411156110f1576001850154600882021c82179150509392505050565b60008282604051602001611ead929190612b9a565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b8215611f755760208310611f1857602083048401935060208381611f1457611f14612bd6565b0692505b8215611f75576020839003600081841015611f3b5750600019600884021c611f45565b50600019600882021c5b8554600886021b818451168219821617845250818411611f66575050610496565b50600194909401939182900391015b5b60208210611f975783548152600190930192601f1990910190602001611f76565b8115610496576000600019600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361204457837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161203793929190612bec565b60405180910390a2610496565b60006120508585611dc0565b9050600061205d86612255565b905060005b815181101561213257600082828151811061207f5761207f6128a2565b602002602001015190506120ab6004826affffffffffffffffffffff19166122de90919063ffffffff16565b15612129576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906120f6908b908b908b908b90600401612c1f565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b505050505b50600101612062565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161216793929190612bec565b60405180910390a2612182828565ffffffffffff16856122fc565b60005b8151811015610c1a5760008282815181106121a2576121a26128a2565b602002602001015190506121ce6008826affffffffffffffffffffff19166122de90919063ffffffff16565b1561224c576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612219908b908b908b908b90600401612c1f565b600060405180830381600087803b15801561223357600080fd5b505af1158015612247573d6000803e3d6000fd5b505050505b50600101612185565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061228f5761228f6128a2565b602090810291909101015260006122c77f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118d3565b90506106526122d98260008451612312565b6123a0565b60008160ff16826122ef8560581c90565b1660ff1614905092915050565b6104c98383835161230d8560200190565b6123b1565b6000818311806123225750835182115b1561235f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161041293929190612c58565b6020840161236d8482612942565b9050600061237b8585612c7d565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106808360156000612470565b821561242b57602083106123db576020830484019350602083816123d7576123d7612bd6565b0692505b821561242b5760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161241c575050610496565b50600194909401939182900391015b5b6020821061244d5780518455600190930192601f199091019060200161242c565b8115610496576000600019600884021c8554835182191691161785555050505050565b6060600061247e8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816124a4576124a4612bd6565b04905060405193506020840160208202810160405281855260005b828110156124df578451871c8252938701936020909101906001016124bf565b50505050509392505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146104df57600080fd5b60006020828403121561252b57600080fd5b8135610680816124eb565b60005b83811015612551578181015183820152602001612539565b50506000910152565b60008151808452612572816020860160208601612536565b601f01601f19169290920160200192915050565b602081526000610680602083018461255a565b6000602082840312156125ab57600080fd5b5035919050565b80356001600160a01b03811681146118ce57600080fd5b600080604083850312156125dc57600080fd5b6125e5836125b2565b946020939093013593505050565b60008060006060848603121561260857600080fd5b612611846125b2565b925061261f602085016125b2565b9150604084013590509250925092565b60006020828403121561264157600080fd5b610680826125b2565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126895761268961264a565b604052919050565b600067ffffffffffffffff8211156126ab576126ab61264a565b50601f01601f191660200190565b600082601f8301126126ca57600080fd5b81356126dd6126d882612691565b612660565b8181528460208386010111156126f257600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561272457600080fd5b61272d846125b2565b925060208401359150604084013567ffffffffffffffff81111561275057600080fd5b61275c868287016126b9565b9150509250925092565b6000806040838503121561277957600080fd5b612782836125b2565b91506020830135801515811461279757600080fd5b809150509250929050565b600080600080608085870312156127b857600080fd5b6127c1856125b2565b93506127cf602086016125b2565b925060408501359150606085013567ffffffffffffffff8111156127f257600080fd5b6127fe878288016126b9565b91505092959194509250565b6000806040838503121561281d57600080fd5b612826836125b2565b9150612834602084016125b2565b90509250929050565b6000835161284f818460208801612536565b835190830190612863818360208801612536565b01949350505050565b85815284602082015283604082015282606082015260a06080820152600061289760a083018461255a565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b848152836020820152826040820152608060608201526000610f13608083018461255a565b60006001600160a01b03808716835280861660208401525083604083015260806060830152610f13608083018461255a565b60006020828403121561292157600080fd5b8151610680816124eb565b634e487b7160e01b600052601160045260246000fd5b808201808211156103925761039261292c565b60008151808452602080850194506020840160005b838110156129865781518752958201959082019060010161296a565b509495945050505050565b8381526060602082015260006129aa6060830185612955565b905060ff83166040830152949350505050565b6000602082840312156129cf57600080fd5b815167ffffffffffffffff8111156129e657600080fd5b8201601f810184136129f757600080fd5b8051612a056126d882612691565b818152856020838501011115612a1a57600080fd5b610ac0826020830160208601612536565b80516020808301519190811015612a4c576000198160200360031b1b821691505b50919050565b604081526000612a65604083018561255a565b90506001600160a01b03831660208301529392505050565b848152608060208201526000612a966080830186612955565b60ff949094166040830152506060015292915050565b600060208284031215612abe57600080fd5b5051919050565b85815260a060208201526000612ade60a0830187612955565b60ff861660408401528281036060840152612af9818661255a565b9150508260808301529695505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612b6d816003860160208901612536565b808401905081600382015284519150612b8d826004830160208801612536565b0160040195945050505050565b8281526000602080830184516020860160005b82811015612bc957815184529284019290840190600101612bad565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b606081526000612bff6060830186612955565b65ffffffffffff851660208401528281036040840152610f13818561255a565b848152608060208201526000612c386080830186612955565b65ffffffffffff851660408401528281036060840152612897818561255a565b606081526000612c6b606083018661255a565b60208301949094525060400152919050565b818103818111156103925761039261292c56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"3270:864:148:-:0;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e366004612431565b610045565b005b6000601082901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167f6e73000000000000000000000000000000000000000000000000000000000000176040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905290915073ffffffffffffffffffffffffffffffffffffffff84169063b29e408990602401600060405180830381600087803b1580156100f957600080fd5b505af115801561010d573d6000803e3d6000fd5b5050505061012261011d83610255565b61028d565b61013361012e83610309565b61033b565b61014461013f83610397565b6103c9565b61015561015083610425565b610457565b610166610161836104af565b6104e1565b6101776101728361053d565b61056f565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a961019c846105c1565b6040516101a890612424565b604051809103906000f0801580156101c4573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561023857600080fd5b505af115801561024c573d6000803e3d6000fd5b50505050505050565b6000610287613a3160f11b837f4f70657261746f72417070726f76616c0000000000000000000000000000000061060a565b92915050565b610306817e010100010000000000000000000000000000000000000000000000000000007e280200616100000000000000000000000000000000000000000000000000007e010100600000000000000000000000000000000000000000000000000000006102f9610691565b610301610769565b6107e0565b50565b6000610287613a3160f11b837f4f776e657273000000000000000000000000000000000000000000000000000061060a565b610306817e14010014000000000000000000000000000000000000000000000000000000632001001f60d81b7e1401006100000000000000000000000000000000000000000000000000000061038f6108b3565b61030161092a565b6000610287613a3160f11b837f546f6b656e417070726f76616c0000000000000000000000000000000000000061060a565b610306817e14010014000000000000000000000000000000000000000000000000000000632001001f60d81b7e1401006100000000000000000000000000000000000000000000000000000061041d6108b3565b6103016109a1565b6000610287613a3160f11b837f546f6b656e55524900000000000000000000000000000000000000000000000061060a565b610306817c0100000000000000000000000000000000000000000000000000000000632001001f60d81b7c01c50000000000000000000000000000000000000000000000000000006104a76108b3565b610301610a18565b6000610287613a3160f11b837f42616c616e63657300000000000000000000000000000000000000000000000061060a565b610306817e200100200000000000000000000000000000000000000000000000000000007e14010061000000000000000000000000000000000000000000000000000000632001001f60d81b6105356109a1565b610301610a8f565b6000610287613a3160f11b837f4d6574616461746100000000000000000000000000000000000000000000000061060a565b610306817c030000000000000000000000000000000000000000000000000000000060007c03c5c5c5000000000000000000000000000000000000000000000000006105b9610b06565b610301610b39565b60006102877f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d00000000000000000000000000000000000000005b6000610618607060106124be565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060828101909352816020015b60608152602001906001900390816106a75790505090506040518060400160405280600581526020017f6f776e657200000000000000000000000000000000000000000000000000000081525081600081518110610707576107076124d1565b60200260200101819052506040518060400160405280600881526020017f6f70657261746f720000000000000000000000000000000000000000000000008152508160018151811061075b5761075b6124d1565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816107805790505090506040518060400160405280600881526020017f617070726f7665640000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b60006107ea610c59565b90503073ffffffffffffffffffffffffffffffffffffffff82160361081c57610817878787878787610ca5565b61024c565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f4990610878908a908a908a908a908a908a90600401612591565b600060405180830381600087803b15801561089257600080fd5b505af11580156108a6573d6000803e3d6000fd5b5050505050505050505050565b604080516001808252818301909252606091816020015b60608152602001906001900390816108ca5790505090506040518060400160405280600781526020017f746f6b656e4964000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b60608152602001906001900390816109415790505090506040518060400160405280600581526020017f6f776e65720000000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b60608152602001906001900390816109b85790505090506040518060400160405280600781526020017f6163636f756e74000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b6060815260200190600190039081610a2f5790505090506040518060400160405280600881526020017f746f6b656e5552490000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b6060815260200190600190039081610aa65790505090506040518060400160405280600581526020017f76616c75650000000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b60408051600080825260208201909252606091610b33565b6060815260200190600190039081610b1e5790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610b515790505090506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600081518110610bb157610bb16124d1565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c000000000000000000000000000000000000000000000000000081525081600181518110610c0557610c056124d1565b60200260200101819052506040518060400160405280600781526020017f62617365555249000000000000000000000000000000000000000000000000008152508160028151811061075b5761075b6124d1565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610ca0573391505090565b919050565b613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001614801590610d1e57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b15610d8857613a3160f11b8687604051602001610d3d91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610d7f9392916004016125db565b60405180910390fd5b610d9185611111565b610d9c846001611358565b610da7836000611358565b60e084901c60e885901c0160ff16825114610e075760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60e085901c60e886901c0160ff16815114610e675760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff1614610edf5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b610ee8856114f4565b610ef1846114f4565b14610f4357610eff856114f4565b610f08846114f4565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b610f4c85611526565b610f5584611526565b14610fa757610f6385611526565b610f6c84611526565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60005b610fb3866114f4565b81101561104e57610fdd610fc78583611543565b60c5811115610fd857610fd861261c565b61156b565b6008601b8390030287901c60ff1614611046576008601b8290030286901c60ff1661100b610fc78684611543565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b600101610faa565b50611058866115c5565b156110b257858660405160200161107191815260200190565b60408051601f19818403018152908290527fdfaaf9cf000000000000000000000000000000000000000000000000000000008252610d7f9291600401612632565b6110fe86868686866040516020016110ca919061264b565b604051602081830303815290604052866040516020016110ea919061264b565b60405160208183030381529060405261166a565b61110986600161174d565b505050505050565b80611148576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061115382611526565b9050600581111561119a576040517f6793df620000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610d7f565b60006111a5836114f4565b905060006111b383836124be565b9050601c8111156111fa576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610d7f565b6000805b838110156112a55760ff601b82900360080287901c166000819003611252576040517f53b2dd0500000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b6020811115611290576040517f7237f23700000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b61129a81846124be565b9250506001016111fe565b506112af8561180b565b81146112fb576112be8561180b565b6040517feba964de000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610d7f565b825b601c8110156111095760ff601b82900360080287901c16801561134f576040517f1d8d44db00000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b506001016112fd565b80158015611364575081155b156113855760405163d498615960e01b815260006004820152602401610d7f565b600061139083611526565b905060058111156113b75760405163d498615960e01b815260048101829052602401610d7f565b60006113c2846114f4565b905060006113d083836124be565b9050601c8111156113f75760405163d498615960e01b815260048101829052602401610d7f565b6000805b83811015611463576000611412610fc78984611543565b90508060000361144e576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61145881846124be565b9250506001016113fb565b5061146d8661180b565b81146114985761147c8661180b565b60405163d498615960e01b8152600401610d7f91815260200190565b825b8281101561024c5760006114b1610fc78984611543565b905080156114eb576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161149a565b6000600860016115066002602061265e565b611510919061265e565b61151a9190612671565b8260ff911c1692915050565b600060086001806115396002602061265e565b611506919061265e565b6000601b8290036008028360ff911c1660c58111156115645761156461261c565b9392505050565b6000808260c58111156115805761158061261c565b60ff169050606181101561159a57601f1660010192915050565b60618360c58111156115ae576115ae61261c565b036115bc5750601492915050565b50600092915050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106115fe576115fe6124d1565b602090810291909101015260006116567f746273746f72650000000000000000005265736f75726365496473000000000083837e0101000100000000000000000000000000000000000000000000000000000061182e565b90506116628160f81c90565b949350505050565b6040805160208101879052808201869052606080820186905282518083039091018152608090910190915260006116a18484611864565b905060006116af8585611881565b604080516001808252818301909252919250600091906020808301908036833701905050905089816000815181106116e9576116e96124d1565b60209081029190910101526117417f746273746f72650000000000000000005461626c657300000000000000000000828686867e600302202020000000000000000000000000000000000000000000000000006118ad565b50505050505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611783576117836124d1565b6020026020010181815250506118067f746273746f72650000000000000000005265736f75726365496473000000000060001b826000856040516020016117d191151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611be6565b505050565b6000600861181b6002602061265e565b6118259190612671565b9190911c919050565b600061185b61183d8686611c02565b60ff858116601b0360080285901c166118568587611c58565b611c91565b95945050505050565b8151815160009181810160389190911b1760609190911b17611564565b60608282604051602001611896929190612688565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361193957857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161192c94939291906126f3565b60405180910390a2611109565b600061194487611ce2565b905060005b8151811015611a1d576000828281518110611966576119666124d1565b602002602001015190506119926001826affffffffffffffffffffff1916611d6b90919063ffffffff16565b15611a14576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906119e1908c908c908c908c908c908c9060040161273d565b600060405180830381600087803b1580156119fb57600080fd5b505af1158015611a0f573d6000803e3d6000fd5b505050505b50600101611949565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611a5494939291906126f3565b60405180910390a26000611a688888611c02565b90506000602087019050611a80826000895184611d89565b6000611a8b85611526565b1115611b0f576000611a9d8a8a611e47565b878155905060208601915060008060005b611ab788611526565b8160ff161015611b0a57611acc8d8d83611e9d565b9250611ae78a8260ff166028026038011c64ffffffffff1690565b9150611af68360008488611d89565b611b0082866124be565b9450600101611aae565b505050505b60005b8351811015611741576000848281518110611b2f57611b2f6124d1565b60200260200101519050611b5b6002826affffffffffffffffffffff1916611d6b90919063ffffffff16565b15611bdd576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611baa908e908e908e908e908e908e9060040161273d565b600060405180830381600087803b158015611bc457600080fd5b505af1158015611bd8573d6000803e3d6000fd5b505050505b50600101611b12565b611bfb8585611bf58487611c58565b85611f1d565b5050505050565b60008282604051602001611c17929190612796565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611c8957611c7f60ff601b83900360080287901c16836124be565b9150600101611c5d565b509392505050565b600060208210611cb757602082048401935060208281611cb357611cb36127d2565b0691505b508254600882021b602082900380841115611c89576001850154600882021c82179150509392505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611d1c57611d1c6124d1565b60209081029190910101526000611d547f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836121b8565b9050611662611d6682600084516121f2565b612280565b60008160ff1682611d7c8560581c90565b1660ff1614905092915050565b8215611e035760208310611db357602083048401935060208381611daf57611daf6127d2565b0692505b8215611e035760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611df4575050611e41565b50600194909401939182900391015b5b60208210611e255780518455600190930192601f1990910190602001611e04565b8115611e415783548151600019600885021c9182169119161784555b50505050565b60008282604051602001611e5c929190612796565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001611eb2929190612796565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603611fa757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051611f9a939291906127e8565b60405180910390a2611e41565b6000611fb38585611c02565b90506000611fc086611ce2565b905060005b8151811015612095576000828281518110611fe257611fe26124d1565b6020026020010151905061200e6004826affffffffffffffffffffff1916611d6b90919063ffffffff16565b1561208c576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612059908b908b908b908b90600401612825565b600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050505b50600101611fc5565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516120ca939291906127e8565b60405180910390a26120e5828565ffffffffffff1685612291565b60005b815181101561024c576000828281518110612105576121056124d1565b602002602001015190506121316008826affffffffffffffffffffff1916611d6b90919063ffffffff16565b156121af576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061217c908b908b908b908b90600401612825565b600060405180830381600087803b15801561219657600080fd5b505af11580156121aa573d6000803e3d6000fd5b505050505b506001016120e8565b60606116626121c8858585611e9d565b60006121ed856121d889896122a7565b9060ff166028026038011c64ffffffffff1690565b6122ba565b6000818311806122025750835182115b1561223f578383836040517f23230fa3000000000000000000000000000000000000000000000000000000008152600401610d7f9392919061285e565b6020840161224d84826124be565b9050600061225b858561265e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061156483601560006122dd565b611806838383516122a28560200190565b611d89565b60006115646122b68484611e47565b5490565b60405160208101601f19603f8484010116604052828252611c8985858584612358565b606060006122eb8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612311576123116127d2565b04905060405193506020840160208202810160405281855260005b8281101561234c578451871c82529387019360209091019060010161232c565b50505050509392505050565b82156123df57602083106123825760208304840193506020838161237e5761237e6127d2565b0692505b82156123df5760208390036000818410156123a55750600019600884021c6123af565b50600019600882021c5b8554600886021b8184511682198216178452508184116123d0575050611e41565b50600194909401939182900391015b5b602082106124015783548152600190930192601f19909101906020016123e0565b8115611e41576000600019600884021c8251865482191691161782525050505050565b612cbd8061288483390190565b6000806040838503121561244457600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461246857600080fd5b915060208301357fffffffffffffffffffffffffffff0000000000000000000000000000000000008116811461249d57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610287576102876124a8565b634e487b7160e01b600052603260045260246000fd5b60005b838110156125025781810151838201526020016124ea565b50506000910152565b600081518084526125238160208601602086016124e7565b601f01601f19169290920160200192915050565b60008282518085526020808601955060208260051b8401016020860160005b8481101561258457601f1986840301895261257283835161250b565b98840198925090830190600101612556565b5090979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006125bc60c0830185612537565b82810360a08401526125ce8185612537565b9998505050505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815282602082015260606040820152600061185b606083018461250b565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000611662604083018461250b565b6020815260006115646020830184612537565b81810381811115610287576102876124a8565b8082028115828204841417610287576102876124a8565b6000835161269a8184602088016124e7565b8351908301906126ae8183602088016124e7565b01949350505050565b60008151808452602080850194506020840160005b838110156126e8578151875295820195908201906001016126cc565b509495945050505050565b60808152600061270660808301876126b7565b8281036020840152612718818761250b565b90508460408401528281036060840152612732818561250b565b979650505050505050565b86815260c06020820152600061275660c08301886126b7565b8281036040840152612768818861250b565b90508560608401528281036080840152612782818661250b565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b828110156127c5578151845292840192908401906001016127a9565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006127fb60608301866126b7565b65ffffffffffff85166020840152828103604084015261281b818561250b565b9695505050505050565b84815260806020820152600061283e60808301866126b7565b65ffffffffffff851660408401528281036060840152612732818561250b565b606081526000612871606083018661250b565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612c9d806100206000396000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c80636352211e116100cd578063a22cb46511610081578063c87b56dd11610066578063c87b56dd146102d1578063e1af802c146102e4578063e985e9c5146102ec57600080fd5b8063a22cb465146102ab578063b88d4fde146102be57600080fd5b80638832e6e3116100b25780638832e6e31461027d57806395d89b4114610290578063a14481941461029857600080fd5b80636352211e1461025757806370a082311461026a57600080fd5b806323b872dd1161012457806342842e0e1161010957806342842e0e1461021c57806342966c681461022f57806345ec93541461024257600080fd5b806323b872dd146101f657806340c10f191461020957600080fd5b8063081812fc11610155578063081812fc146101ae578063095ea7b3146101d9578063119df25f146101ee57600080fd5b806301ffc9a71461017157806306fdde0314610199575b600080fd5b61018461017f366004612519565b6102ff565b60405190151581526020015b60405180910390f35b6101a1610398565b6040516101909190612586565b6101c16101bc366004612599565b6103b7565b6040516001600160a01b039091168152602001610190565b6101ec6101e73660046125c9565b6103cc565b005b6101c16103e2565b6101ec6102043660046125f3565b6103ec565b6101ec6102173660046125c9565b61049c565b6101ec61022a3660046125f3565b6104ae565b6101ec61023d366004612599565b6104ce565b36601f1901355b604051908152602001610190565b6101c1610265366004612599565b6104e2565b61024961027836600461262f565b6104ed565b6101ec61028b36600461270f565b61054b565b6101a161055e565b6101ec6102a63660046125c9565b610573565b6101ec6102b9366004612766565b610595565b6101ec6102cc3660046127a2565b6105a7565b6101a16102df366004612599565b6105be565b6101c161065a565b6101846102fa36600461280a565b610664565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061039257507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606103b26103ad6103a8610687565b6106a5565b6106d7565b905090565b60006103c2826106f5565b5061039282610746565b6103de82826103d96103e2565b610761565b5050565b60006103b261076e565b6001600160a01b03821661041b57604051633250574960e11b8152600060048201526024015b60405180910390fd5b600061042f838361042a6103e2565b6107a0565b9050836001600160a01b0316816001600160a01b031614610496576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610412565b50505050565b6104a4610924565b6103de828261093f565b6104c9838383604051806020016040528060008152506105a7565b505050565b6104d6610924565b6104df816109bd565b50565b6000610392826106f5565b60006001600160a01b038216610532576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b610392610545610540610687565b610a11565b83610a43565b610553610924565b6104c9838383610ac9565b60606103b261056e6103a8610687565b610ae0565b61057b610924565b6103de828260405180602001604052806000815250610ac9565b6103de6105a06103e2565b8383610aff565b6105b28484846103ec565b61049684848484610c23565b60606105c9826106f5565b5060006105d4610d84565b905060006105f16105eb6105e6610687565b610d99565b85610dcb565b9050600081511161061c5760408051602081018690520160405160208183030381529060405261061e565b805b9050600082511161062f5780610652565b818160405160200161064292919061283d565b6040516020818303038152906040525b949350505050565b60006103b2610e22565b6000610680610679610674610687565b610e2c565b8484610e5e565b9392505050565b60008061069330610f1d565b905061069f8160101b90565b91505090565b6000610392613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610fba565b60408051600080825260208201909252606091610652848383611032565b600080610701836110f9565b90506001600160a01b038116610392576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610412565b600061039261075b610756610687565b611109565b8361113b565b6104c983838360016111bb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061079d5750335b90565b6000806107ae610540610687565b905060006107bb856110f9565b90506001600160a01b038416156107d7576107d781858761134d565b6001600160a01b0381161561080b576107f46000866000806111bb565b61080b828260016108058686610a43565b036113e3565b6001600160a01b03861615610831576108318287610829858a610a43565b6001016113e3565b61084b61084461083f610687565b611480565b86886114b2565b61085361156f565b6001600160a01b03166366c93bdb7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610892846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526108e89291906001600160a01b038c16908b906024810161286c565b600060405180830381600087803b15801561090257600080fd5b505af1158015610916573d6000803e3d6000fd5b509298975050505050505050565b61093d61093030610f1d565b6109386103e2565b61164a565b565b6001600160a01b03821661096957604051633250574960e11b815260006004820152602401610412565b6000610977838360006107a0565b90506001600160a01b038116156104c9576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b60006109cc60008360006107a0565b90506001600160a01b0381166103de576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101839052602401610412565b6000610392613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610fba565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610a8857610a886128a2565b60209081029190910101526000610ac08583837e200100200000000000000000000000000000000000000000000000000000006116eb565b95945050505050565b610ad3838361093f565b6104c96000848484610c23565b6040805160008082526020820190925260609161065284836001611032565b6001600160a01b038216610b4a576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610412565b610b60610b58610674610687565b8484846117a8565b610b6861156f565b6001600160a01b031663c9a34acd7f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31610ba7866001600160a01b031690565b6001600160a01b038616604080518715156020820152016040516020818303038152906040526040518563ffffffff1660e01b8152600401610bec94939291906128b8565b600060405180830381600087803b158015610c0657600080fd5b505af1158015610c1a573d6000803e3d6000fd5b50505050505050565b6001600160a01b0383163b1561049657826001600160a01b031663150b7a02610c4a6103e2565b8685856040518563ffffffff1660e01b8152600401610c6c94939291906128dd565b6020604051808303816000875af1925050508015610ca7575060408051601f3d908101601f19168201909252610ca49181019061290f565b60015b610d10573d808015610cd5576040519150601f19603f3d011682016040523d82523d6000602084013e610cda565b606091505b508051600003610d0857604051633250574960e11b81526001600160a01b0385166004820152602401610412565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014610d7d57604051633250574960e11b81526001600160a01b0385166004820152602401610412565b5050505050565b60606103b2610d946103a8610687565b611875565b6000610392613a3160f11b837f546f6b656e555249000000000000000000000000000000000000000000000000610fba565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110610e0857610e086128a2565b6020026020010181815250506000610ac085836000611032565b60006103b2611894565b6000610392613a3160f11b837f4f70657261746f72417070726f76616c00000000000000000000000000000000610fba565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610ea357610ea36128a2565b602002602001018181525050826001600160a01b031660001b81600181518110610ecf57610ecf6128a2565b60209081029190910101526000610f078683837e010100010000000000000000000000000000000000000000000000000000006116eb565b9050610f138160f81c90565b9695505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610f6257610f626128a2565b602090810291909101015260006106527f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006116eb565b6000610fc860706010612942565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b6060600061103e611894565b9050306001600160a01b038216036110635761105b8585856118d3565b915050610680565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906110ac90889088908890600401612991565b600060405180830381865afa1580156110c9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261105b91908101906129bd565b509392505050565b600061039261075b61083f610687565b6000610392613a3160f11b837f546f6b656e417070726f76616c00000000000000000000000000000000000000610fba565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b81600081518110611177576111776128a2565b602090810291909101015260006111af8583837e140100140000000000000000000000000000000000000000000000000000006116eb565b60601c95945050505050565b80806111cf57506001600160a01b03821615155b156113385760006111df846106f5565b90506001600160a01b0383161580159061120b5750826001600160a01b0316816001600160a01b031614155b801561121e575061121c8184610664565b155b15611260576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610412565b81156113365761126e61156f565b6001600160a01b03166366c93bdb7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256112ad846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526113039291906001600160a01b038b16908a906024810161286c565b600060405180830381600087803b15801561131d57600080fd5b505af1158015611331573d6000803e3d6000fd5b505050505b505b610496611346610756610687565b84866114b2565b61135883838361190d565b6104c9576001600160a01b03831661139f576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610412565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610412565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b81600081518110611425576114256128a2565b602002602001018181525050610496848260008560405160200161144b91815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000611972565b6000610392613a3160f11b837f4f776e6572730000000000000000000000000000000000000000000000000000610fba565b604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106114eb576114eb6128a2565b602002602001018181525050610496848260008560405160200161153a919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e14010014000000000000000000000000000000000000000000000000000000611972565b60008061157b30610f1d565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f507570706574526567697374727900000000000000000000000000000000000060308201529192506000916115ff91016040516020818303038152906040526115f990612a2b565b83611a28565b90506001600160a01b038116610392576040517f9434f7e100000000000000000000000000000000000000000000000000000000815230600482015260248101839052604401610412565b6001600160a01b03811661169f7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611a61565b6001600160a01b0316146103de576116b682611afd565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610412929190612a52565b6000806116f6611894565b9050306001600160a01b0382160361171c5761171486868686611c2b565b915050610652565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611767908990899089908990600401612a7d565b602060405180830381865afa158015611784573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117149190612aac565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b816000815181106117e9576117e96128a2565b602002602001018181525050826001600160a01b031660001b81600181518110611815576118156128a2565b602002602001018181525050610d7d858260008560405160200161184091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611972565b6040805160008082526020820190925260609161065284836002611032565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806118ce573391505090565b919050565b60606106526118e3858585611c58565b6000611908856118f38989611cd8565b9060ff166028026038011c64ffffffffff1690565b611ceb565b60006001600160a01b038316158015906106525750826001600160a01b0316846001600160a01b0316148061194757506119478484610664565b806106525750826001600160a01b031661196083610746565b6001600160a01b031614949350505050565b600061197c611894565b9050306001600160a01b038216036119a05761199b8686868686611d0e565b611a20565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906119ed9089908990899089908990600401612ac5565b600060405180830381600087803b158015611a0757600080fd5b505af1158015611a1b573d6000803e3d6000fd5b505050505b505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611177576111776128a2565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a9a57611a9a6128a2565b60209081029190910101526000611af27f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116eb565b60601c949350505050565b606081601081901b6000611b1083611d23565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615611b6b57611b667fffffffffffffffffffffffffffff0000000000000000000000000000000000008416611d3a565b611ba2565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615611bc957611bc483611d3a565b611c00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001611c1293929190612b0c565b6040516020818303038152906040529350505050919050565b6000610ac0611c3a8686611dc0565b60ff858116601b0360080285901c16611c538587611e16565b611e47565b60008383604051602001611c6d929190612b9a565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b6000610680611ce78484611e98565b5490565b60405160208101601f19603f84840101166040528282526110f185858584611eee565b610d7d8585611d1d8487611e16565b85611fba565b6000611d3160706010612942565b9190911b919050565b606060005b6010811015611d90576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615611d9057600101611d3f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280610652565b60008282604051602001611dd5929190612b9a565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156110f157611e3d60ff601b83900360080287901c1683612942565b9150600101611e1b565b600060208210611e6d57602082048401935060208281611e6957611e69612bd6565b0691505b508254600882021b6020829003808411156110f1576001850154600882021c82179150509392505050565b60008282604051602001611ead929190612b9a565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b8215611f755760208310611f1857602083048401935060208381611f1457611f14612bd6565b0692505b8215611f75576020839003600081841015611f3b5750600019600884021c611f45565b50600019600882021c5b8554600886021b818451168219821617845250818411611f66575050610496565b50600194909401939182900391015b5b60208210611f975783548152600190930192601f1990910190602001611f76565b8115610496576000600019600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361204457837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161203793929190612bec565b60405180910390a2610496565b60006120508585611dc0565b9050600061205d86612255565b905060005b815181101561213257600082828151811061207f5761207f6128a2565b602002602001015190506120ab6004826affffffffffffffffffffff19166122de90919063ffffffff16565b15612129576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906120f6908b908b908b908b90600401612c1f565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b505050505b50600101612062565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161216793929190612bec565b60405180910390a2612182828565ffffffffffff16856122fc565b60005b8151811015610c1a5760008282815181106121a2576121a26128a2565b602002602001015190506121ce6008826affffffffffffffffffffff19166122de90919063ffffffff16565b1561224c576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612219908b908b908b908b90600401612c1f565b600060405180830381600087803b15801561223357600080fd5b505af1158015612247573d6000803e3d6000fd5b505050505b50600101612185565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061228f5761228f6128a2565b602090810291909101015260006122c77f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118d3565b90506106526122d98260008451612312565b6123a0565b60008160ff16826122ef8560581c90565b1660ff1614905092915050565b6104c98383835161230d8560200190565b6123b1565b6000818311806123225750835182115b1561235f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161041293929190612c58565b6020840161236d8482612942565b9050600061237b8585612c7d565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106808360156000612470565b821561242b57602083106123db576020830484019350602083816123d7576123d7612bd6565b0692505b821561242b5760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161241c575050610496565b50600194909401939182900391015b5b6020821061244d5780518455600190930192601f199091019060200161242c565b8115610496576000600019600884021c8554835182191691161785555050505050565b6060600061247e8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816124a4576124a4612bd6565b04905060405193506020840160208202810160405281855260005b828110156124df578451871c8252938701936020909101906001016124bf565b50505050509392505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146104df57600080fd5b60006020828403121561252b57600080fd5b8135610680816124eb565b60005b83811015612551578181015183820152602001612539565b50506000910152565b60008151808452612572816020860160208601612536565b601f01601f19169290920160200192915050565b602081526000610680602083018461255a565b6000602082840312156125ab57600080fd5b5035919050565b80356001600160a01b03811681146118ce57600080fd5b600080604083850312156125dc57600080fd5b6125e5836125b2565b946020939093013593505050565b60008060006060848603121561260857600080fd5b612611846125b2565b925061261f602085016125b2565b9150604084013590509250925092565b60006020828403121561264157600080fd5b610680826125b2565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126895761268961264a565b604052919050565b600067ffffffffffffffff8211156126ab576126ab61264a565b50601f01601f191660200190565b600082601f8301126126ca57600080fd5b81356126dd6126d882612691565b612660565b8181528460208386010111156126f257600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561272457600080fd5b61272d846125b2565b925060208401359150604084013567ffffffffffffffff81111561275057600080fd5b61275c868287016126b9565b9150509250925092565b6000806040838503121561277957600080fd5b612782836125b2565b91506020830135801515811461279757600080fd5b809150509250929050565b600080600080608085870312156127b857600080fd5b6127c1856125b2565b93506127cf602086016125b2565b925060408501359150606085013567ffffffffffffffff8111156127f257600080fd5b6127fe878288016126b9565b91505092959194509250565b6000806040838503121561281d57600080fd5b612826836125b2565b9150612834602084016125b2565b90509250929050565b6000835161284f818460208801612536565b835190830190612863818360208801612536565b01949350505050565b85815284602082015283604082015282606082015260a06080820152600061289760a083018461255a565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b848152836020820152826040820152608060608201526000610f13608083018461255a565b60006001600160a01b03808716835280861660208401525083604083015260806060830152610f13608083018461255a565b60006020828403121561292157600080fd5b8151610680816124eb565b634e487b7160e01b600052601160045260246000fd5b808201808211156103925761039261292c565b60008151808452602080850194506020840160005b838110156129865781518752958201959082019060010161296a565b509495945050505050565b8381526060602082015260006129aa6060830185612955565b905060ff83166040830152949350505050565b6000602082840312156129cf57600080fd5b815167ffffffffffffffff8111156129e657600080fd5b8201601f810184136129f757600080fd5b8051612a056126d882612691565b818152856020838501011115612a1a57600080fd5b610ac0826020830160208601612536565b80516020808301519190811015612a4c576000198160200360031b1b821691505b50919050565b604081526000612a65604083018561255a565b90506001600160a01b03831660208301529392505050565b848152608060208201526000612a966080830186612955565b60ff949094166040830152506060015292915050565b600060208284031215612abe57600080fd5b5051919050565b85815260a060208201526000612ade60a0830187612955565b60ff861660408401528281036060840152612af9818661255a565b9150508260808301529695505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612b6d816003860160208901612536565b808401905081600382015284519150612b8d826004830160208801612536565b0160040195945050505050565b8281526000602080830184516020860160005b82811015612bc957815184529284019290840190600101612bad565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b606081526000612bff6060830186612955565b65ffffffffffff851660208401528281036040840152610f13818561255a565b848152608060208201526000612c386080830186612955565b65ffffffffffff851660408401528281036060840152612897818561255a565b606081526000612c6b606083018661255a565b60208301949094525060400152919050565b818103818111156103925761039261292c56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"3270:864:148:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3404:728;;;;;;:::i;:::-;;:::i;:::-;;;3526:25;451:5:20;1620:33:65;;;;;1597:18;1589:65;3605:39:148;;;;;;;;754:25:214;;;3526:73:148;;-1:-1:-1;3605:23:148;;;;;;727:18:214;;3605:39:148;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3678:62;3704:35;3729:9;3704:24;:35::i;:::-;3678:25;:62::i;:::-;3746:42;3762:25;3777:9;3762:14;:25::i;:::-;3746:15;:42::i;:::-;3794:56;3817:32;3839:9;3817:21;:32::i;:::-;3794:22;:56::i;:::-;3856:46;3874:27;3891:9;3874:16;:27::i;:::-;3856:17;:46::i;:::-;3908;3926:27;3943:9;3926:16;:27::i;:::-;3908:17;:46::i;:::-;3960:52;3984:27;4001:9;3984:16;:27::i;:::-;3960:23;:52::i;:::-;4053:5;:20;;;4074:26;4090:9;4074:15;:26::i;:::-;4102:18;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;4053:74:148;;;;;;;;;;;;;1039:25:214;;;;1112:42;1100:55;1080:18;;;1073:83;4122:4:148;1172:18:214;;;1165:50;1012:18;;4053:74:148;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;3466:666;3404:728;;:::o;892:198:164:-;959:10;982:105;-1:-1:-1;;;1045:9:164;1062:22;982:25;:105::i;:::-;975:112;892:198;-1:-1:-1;;892:198:164:o;1996:166:160:-;2050:107;2076:8;959:66;1122;1276;2126:13;:11;:13::i;:::-;2141:15;:13;:15::i;:::-;2050:25;:107::i;:::-;1996:166;:::o;1092:177:164:-;1149:10;1172:94;-1:-1:-1;;;1235:9:164;1252:11;1172:25;:94::i;1949:166:161:-;2003:107;2029:8;949:66;-1:-1:-1;;;1260:66:161;2079:13;:11;:13::i;:::-;2094:15;:13;:15::i;1271:192:164:-;1335:10;1358:102;-1:-1:-1;;;1421:9:164;1438:19;1358:25;:102::i;1958:166:162:-;2012:107;2038:8;956:66;-1:-1:-1;;;1267:66:162;2088:13;:11;:13::i;:::-;2103:15;:13;:15::i;1465:182:164:-;1524:10;1547:97;-1:-1:-1;;;1610:9:164;1627:14;1547:25;:97::i;1953:166:163:-;2007:107;2033:8;951:66;-1:-1:-1;;;1261:66:163;2083:13;:11;:13::i;:::-;2098:15;:13;:15::i;526:181:164:-;585:10;608:96;-1:-1:-1;;;671:9:164;688:13;608:25;:96::i;1951:166:196:-;2005:107;2031:8;951:66;1105;-1:-1:-1;;;2081:13:196;:11;:13::i;:::-;2096:15;:13;:15::i;709:181:164:-;768:10;791:96;-1:-1:-1;;;854:9:164;871:13;791:25;:96::i;2077:166:158:-;2131:107;2157:8;1038:66;1021:84;1357:66;2207:13;:11;:13::i;:::-;2222:15;:13;:15::i;1649:186:164:-;1707:10;1730:102;1766:15;1794:9;1811:18;1046:257:65;1133:10;1262:26;438:6;451:5:20;1262:26:65;:::i;:::-;1189:15;;;1208:31;451:5:20;1208:31:65;;;;1189:51;1244:13;;;:45;;;1189:101;;-1:-1:-1;1046:257:65;;;;;:::o;1478:166:160:-;1567:15;;;1580:1;1567:15;;;1524:24;1567:15;;;;;;;;;;;;;;;;;;;;;;;;;;1556:26;;1588:21;;;;;;;;;;;;;;;;;:8;1597:1;1588:11;;;;;;;;:::i;:::-;;;;;;:21;;;;1615:24;;;;;;;;;;;;;;;;;:8;1624:1;1615:11;;;;;;;;:::i;:::-;;;;;;:24;;;;1478:166;:::o;1784:147::-;1879:15;;;1892:1;1879:15;;;;;;;;;1832:26;;1879:15;;;;;;;;;;;;;;;;;;;;1866:28;;1900:26;;;;;;;;;;;;;;;;;:10;1911:1;1900:13;;;;;;;;:::i;5644:520:28:-;5847:21;5871:17;:15;:17::i;:::-;5847:41;-1:-1:-1;5923:4:28;5898:30;;;;5894:266;;5938:91;5962:7;5971:11;5984:9;5995:11;6008:8;6018:10;5938:23;:91::i;:::-;5894:266;;;6050:103;;;;;:35;;;;;;:103;;6086:7;;6095:11;;6108:9;;6119:11;;6132:8;;6142:10;;6050:103;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5841:323;5644:520;;;;;;:::o;1462:138:161:-;1551:15;;;1564:1;1551:15;;;;;;;;;1508:24;;1551:15;;;;;;;;;;;;;;;;;;;;1540:26;;1572:23;;;;;;;;;;;;;;;;;:8;1581:1;1572:11;;;;;;;;:::i;1740:144::-;1835:15;;;1848:1;1835:15;;;;;;;;;1788:26;;1835:15;;;;;;;;;;;;;;;;;;;;1822:28;;1856:23;;;;;;;;;;;;;;;;;:10;1867:1;1856:13;;;;;;;;:::i;1747:146:162:-;1842:15;;;1855:1;1842:15;;;;;;;;;1795:26;;1842:15;;;;;;;;;;;;;;;;;;;;1829:28;;1863:25;;;;;;;;;;;;;;;;;:10;1874:1;1863:13;;;;;;;;:::i;1741:147:163:-;1836:15;;;1849:1;1836:15;;;;;;;;;1789:26;;1836:15;;;;;;;;;;;;;;;;;;;;1823:28;;1857:26;;;;;;;;;;;;;;;;;:10;1868:1;1857:13;;;;;;;;:::i;1742:144:196:-;1837:15;;;1850:1;1837:15;;;;;;;;;1790:26;;1837:15;;;;;;;;;;;;;;;;;;;;1824:28;;1858:23;;;;;;;;;;;;;;;;;:10;1869:1;1858:13;;;;;;;;:::i;1559:109:158:-;1648:15;;;1661:1;1648:15;;;;;;;;;1605:24;;1648:15;;;;;;;;;;;;;;;;;;;;1637:26;;1559:109;:::o;1808:204::-;1903:15;;;1916:1;1903:15;;;;;;;;;1856:26;;1903:15;;;;;;;;;;;;;;;;;;;;1890:28;;1924:22;;;;;;;;;;;;;;;;;:10;1935:1;1924:13;;;;;;;;:::i;:::-;;;;;;:22;;;;1952:24;;;;;;;;;;;;;;;;;:10;1963:1;1952:13;;;;;;;;:::i;:::-;;;;;;:24;;;;1982:25;;;;;;;;;;;;;;;;;:10;1993:1;1982:13;;;;;;;;:::i;1836:227:28:-;1066:42;1925:22;1886:7;;1925:22;;;1953:106;;2001:10;1994:17;;;1836:227;:::o;1953:106::-;2039:13;1836:227;-1:-1:-1;1836:227:28:o;6622:2614:24:-;-1:-1:-1;;;6882:7:24;:35;;;;;;:83;;-1:-1:-1;6942:23:24;6921:7;:44;;;;6882:83;6878:209;;;-1:-1:-1;;;7037:7:24;7070;7053:25;;;;;;4248:19:214;;4292:2;4283:12;;4088:213;7053:25:24;;;;-1:-1:-1;;7053:25:24;;;;;;;;;;6982:98;;;;;;;;;;:::i;:::-;;;;;;;;6878:209;7133:22;:11;:20;:22::i;:::-;7196:40;:9;7229:4;7196:18;:40::i;:::-;7242:43;:11;7277:5;7242:20;:43::i;:::-;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;7373:8:24;:15;:40;7369:148;;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;7494:15:24;;7430:80;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;4922:18;;7430:80:24;4775:248:214;7369:148:24;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;7567:10:24;:17;:44;7563:158;;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;7696:17:24;;7628:86;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;4922:18;;7628:86:24;4775:248:214;7563:158:24;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;7778:50:24;7774:171;;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;1683:38:34;5236:60:21;;;1515:34:34;5159:59:21;;;5153:144;5138:159;;7845:93:24;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;4922:18;;7845:93:24;4775:248:214;7774:171:24;7987:29;:11;:27;:29::i;:::-;7954;:11;:27;:29::i;:::-;:62;7950:225;;8092:29;:11;:27;:29::i;:::-;8131;:11;:27;:29::i;:::-;8033:135;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;4922:18;;8033:135:24;4775:248:214;7950:225:24;8218:30;:11;:28;:30::i;:::-;8184;:11;:28;:30::i;:::-;:64;8180:230;;8325:30;:11;:28;:30::i;:::-;8365;:11;:28;:30::i;:::-;8265:138;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;4922:18;;8265:138:24;4775:248:214;8180:230:24;8507:9;8502:314;8522:29;:11;:27;:29::i;:::-;8518:1;:33;8502:314;;;8596:44;:22;:11;8616:1;8596:19;:22::i;:::-;:42;;;;;;;;:::i;:::-;;:44::i;:::-;579:1:34;4323:19:4;:27;;;4322:44;4288:79;;;4275:93;;8570:70:24;8566:244;;579:1:34;4323:19:4;:27;;;4322:44;4288:79;;;4275:93;;8747:44:24;:22;:11;8767:1;8747:19;:22::i;:44::-;8659:142;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;4922:18;;8659:142:24;4775:248:214;8566:244:24;8553:3;;8502:314;;;;8878:31;8901:7;8878:22;:31::i;:::-;8874:140;;;8964:7;8997;8980:25;;;;;;4248:19:214;;4292:2;4283:12;;4088:213;8980:25:24;;;;-1:-1:-1;;8980:25:24;;;;;;;;;;8926:81;;;;;;;;;:::i;8874:140::-;9055:103;9067:7;9076:11;9089:9;9100:11;9124:8;9113:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;9146:10;9135:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;9055:11;:103::i;:::-;9194:37;9217:7;9226:4;9194:22;:37::i;:::-;6622:2614;;;;;;:::o;6618:1665:4:-;6301:45;6681:87;;6723:38;;;;;;;;;;;;;;6681:87;6774:25;6802:30;:11;:28;:30::i;:::-;6774:58;;943:1:34;6842:17:4;:38;6838:156;;;6897:90;;;;;;;;4949:25:214;;;943:1:34;4990:18:214;;;4983:34;4922:18;;6897:90:4;4775:248:214;6838:156:4;7000:24;7027:29;:11;:27;:29::i;:::-;7000:56;-1:-1:-1;7062:23:4;7088:36;7107:17;7000:56;7088:36;:::i;:::-;7062:62;;689:2:34;7134:15:4;:34;7130:141;;;7185:79;;;;;;;;4949:25:214;;;689:2:34;4990:18:214;;;4983:34;4922:18;;7185:79:4;4775:248:214;7130:141:4;7313:25;7349:9;7344:429;7364:16;7360:1;:20;7344:429;;;4275:93;4323:19;:27;;;579:1:34;4322:44:4;4288:79;;;4275:93;7392:24;7453:21;;;7449:234;;7493:52;;;;;;;;754:25:214;;;727:18;;7493:52:4;577:208:214;7449:234:4;376:2:34;7564:16:4;:28;7560:123;;;7611:63;;;;;;;;754:25:214;;;727:18;;7611:63:4;577:208:214;7560:123:4;7690:37;7711:16;7690:37;;:::i;:::-;;-1:-1:-1;;7755:3:4;;7344:429;;;;7840:30;:11;:28;:30::i;:::-;7819:17;:51;7815:184;;7942:30;:11;:28;:30::i;:::-;7887:105;;;;;;;;4949:25:214;;;;4990:18;;;4983:34;;;4922:18;;7887:105:4;4775:248:214;7815:184:4;8055:16;8038:241;689:2:34;8073:1:4;:20;8038:241;;;4275:93;4323:19;:27;;;579:1:34;4322:44:4;4288:79;;;4275:93;8169:21;;8165:108;;8209:55;;;;;;;;754:25:214;;;727:18;;8209:55:4;577:208:214;8165:108:4;-1:-1:-1;8095:3:4;;8038:241;;5760:1635:21;5867:10;5866:11;:31;;;;-1:-1:-1;6301:45:4;;5881:16:21;5862:81;;;5906:37;;-1:-1:-1;;;5906:37:21;;5941:1;5906:37;;;754:25:214;727:18;;5906:37:21;577:208:214;5862:81:21;6006:25;6034;:6;:23;:25::i;:::-;6006:53;;943:1:34;6069:17:21;:38;6065:104;;;6116:53;;-1:-1:-1;;;6116:53:21;;;;;754:25:214;;;727:18;;6116:53:21;577:208:214;6065:104:21;6176:24;6203;:6;:22;:24::i;:::-;6176:51;-1:-1:-1;6297:23:21;6323:36;6342:17;6176:51;6323:36;:::i;:::-;6297:62;;689:2:34;6369:15:21;:34;6365:98;;;6412:51;;-1:-1:-1;;;6412:51:21;;;;;754:25:214;;;727:18;;6412:51:21;577:208:214;6365:98:21;6524:25;6560:9;6555:314;6575:16;6571:1;:20;6555:314;;;6603:24;6630:39;:17;:6;6645:1;6630:14;:17::i;:39::-;6603:66;;6681:16;6701:1;6681:21;6677:102;;6721:49;;;;;;;;;;;;;;6677:102;6786:37;6807:16;6786:37;;:::i;:::-;;-1:-1:-1;;6851:3:21;;6555:314;;;;6937:25;:6;:23;:25::i;:::-;6916:17;:46;6912:135;;7014:25;:6;:23;:25::i;:::-;6979:61;;-1:-1:-1;;;6979:61:21;;;;;;754:25:214;;742:2;727:18;;577:208;6912:135:21;7122:16;7105:286;7144:15;7140:1;:19;7105:286;;;7171:24;7198:39;:17;:6;7213:1;7198:14;:17::i;:39::-;7171:66;-1:-1:-1;7249:20:21;;7245:101;;7288:49;;;;;;;;;;;;;;7245:101;-1:-1:-1;7373:3:21;;7105:286;;4979:171:4;5052:7;579:1:34;1532;1516:13;1528:1;376:2;1516:13;:::i;:::-;:17;;;;:::i;:::-;1515:34;;;;:::i;:::-;5088:11:4;5067:78;5080:64;;5067:78;;4979:171;-1:-1:-1;;4979:171:4:o;5377:173::-;5451:7;579:1:34;1704;;1684:13;1696:1;376:2;1684:13;:::i;:::-;:17;;;;:::i;4019:206:21:-;4089:10;4179:19;:27;;;4210:1;4178:33;4157:6;4132:82;4149:63;;4132:82;;;;;;;;;:::i;:::-;4125:89;4019:206;-1:-1:-1;;;4019:206:21:o;3195:520:1:-;3261:7;3274:13;3296:10;3290:17;;;;;;;;:::i;:::-;3274:33;;;;3324:2;3316:5;:10;3312:401;;;3568:2;3560:10;3574:1;3559:16;;;-1:-1:-1;;3195:520:1:o;3312:401::-;3610:18;3596:10;:32;;;;;;;;:::i;:::-;;3592:121;;-1:-1:-1;3643:2:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;-1:-1:-1;3707:1:1;;3195:520;-1:-1:-1;;3195:520:1:o;2858:314:31:-;2972:16;;;2986:1;2972:16;;;;;;;;;2924:11;;;;2972:16;;;;;;;;;;;;-1:-1:-1;2972:16:31;2943:45;;3027:10;2994:9;3004:1;2994:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3045:13;3061:62;973:66;3096:9;3045:13;1102:66;3061:24;:62::i;:::-;3045:78;;3137:29;3158:5;3145:20;;1650:10:20;1541:126;3137:29:31;3129:38;2858:314;-1:-1:-1;;;;2858:314:31:o;19797:677:33:-;24365:53;;;;;;6984:19:214;;;7019:12;;;7012:28;;;24338:12:33;7056::214;;;7049:28;;;24365:53:33;;;;;;;;;;7093:12:214;;;;24365:53:33;;;20088:30;20121:55;20135:18;20155:20;20121:13;:55::i;:::-;20088:88;;20182:25;20210:55;20224:18;20244:20;20210:13;:55::i;:::-;20301:16;;;20315:1;20301:16;;;;;;;;;20182:83;;-1:-1:-1;20272:26:33;;20301:16;;;;;;;;;;;;-1:-1:-1;20301:16:33;20272:45;;20356:7;20323:9;20333:1;20323:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;20371:98;1213:66;20401:9;20412:11;20425:15;20442:12;1342:66;20371:19;:98::i;:::-;19999:475;;;;19797:677;;;;;;:::o;4222:268:31:-;4322:16;;;4336:1;4322:16;;;;;;;;;4293:26;;4322:16;;;;;;;;;;;-1:-1:-1;4322:16:31;4293:45;;4377:10;4344:9;4354:1;4344:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4395:90;973:66;957:83;;4430:9;4441:1;4462:6;4444:26;;;;;;6658:14:214;6651:22;6646:3;6642:32;6630:45;;6700:1;6691:11;;6507:201;4444:26:31;;;;-1:-1:-1;;4444:26:31;;;;;;;;;1102:66;4395:24;:90::i;:::-;4287:203;4222:268;;:::o;4598:171:4:-;4672:7;579:1:34;1354:13;1366:1;376:2;1354:13;:::i;:::-;1353:30;;;;:::i;:::-;4694:70:4;;;;;4598:171;-1:-1:-1;4598:171:4:o;35853:541:24:-;36010:7;36147:242;36191:59;36232:7;36241:8;36191:40;:59::i;:::-;36268:31;;;;4323:19:4;:27;579:1:34;4322:44:4;4288:79;;;4275:93;36317:63:24;36356:11;36369:10;36317:38;:63::i;:::-;36147:17;:242::i;:::-;36134:255;35853:541;-1:-1:-1;;;;;35853:541:24:o;24614:390:33:-;24924:32;;24958:34;;24740:30;;2662:5:3;;;975:16;2694:39;;;;2675:59;2776:23;2761:39;;;;2742:59;24901:92:33;2518:351:3;25169:234:33;25295:12;25346:18;25375:20;25322:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;25315:83;;25169:234;;;;:::o;12894:3165:24:-;13189:23;13168:7;:44;;;13164:211;;13295:7;13266:88;13304:8;13314:10;13326:14;13342:11;13266:88;;;;;;;;;:::i;:::-;;;;;;;;13362:7;;13164:211;13513:22;13538:24;13554:7;13538:15;:24::i;:::-;13513:49;;13573:9;13568:340;13588:5;:12;13584:1;:16;13568:340;;;13615:9;13637:5;13643:1;13637:8;;;;;;;;:::i;:::-;;;;;;;13615:31;;13658:33;409:6:36;13658:4:24;:14;;;;;:33;;;;:::i;:::-;13654:248;;;13703:190;;;;;3536:35:5;;;;;13703:47:24;;:190;;13762:7;;13781:8;;13801:10;;13823:14;;13849:11;;13872;;13703:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13654:248;-1:-1:-1;13602:3:24;;13568:340;;;;13985:7;13956:88;13994:8;14004:10;14016:14;14032:11;13956:88;;;;;;;;;:::i;:::-;;;;;;;;14108:26;14137:59;14178:7;14187:8;14137:40;:59::i;:::-;14108:88;-1:-1:-1;14202:21:24;894:4:19;884:15;;14202:54:24;;14262:149;14300:18;14334:1;14351:10;:17;14391:13;14262;:149::i;:::-;14511:1;14478:30;:11;:28;:30::i;:::-;:34;14474:1174;;;14597:33;14633:66;14681:7;14690:8;14633:47;:66::i;:::-;695:28:23;;;14597:102:24;-1:-1:-1;894:4:19;884:15;;14873:47:24;;15029:27;15064:25;15102:7;15097:545;15115:30;:11;:28;:30::i;:::-;15111:1;:34;;;15097:545;;;15181:63;15223:7;15232:8;15242:1;15181:41;:63::i;:::-;15159:85;-1:-1:-1;15274:25:24;:14;15297:1;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;15274:25:24;15254:45;;15309:170;15351:19;15390:1;15411:17;15455:13;15309;:170::i;:::-;15489:34;15506:17;15489:34;;:::i;:::-;;-1:-1:-1;15620:3:24;;15097:545;;;;14514:1134;;;14474:1174;15722:9;15717:338;15737:5;:12;15733:1;:16;15717:338;;;15764:9;15786:5;15792:1;15786:8;;;;;;;;:::i;:::-;;;;;;;15764:31;;15807:32;503:6:36;15807:4:24;:14;;;;;:32;;;;:::i;:::-;15803:246;;;15851:189;;;;;3536:35:5;;;;;15851:46:24;;:189;;15909:7;;15928:8;;15948:10;;15970:14;;15996:11;;16019;;15851:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15803:246;-1:-1:-1;15751:3:24;;15717:338;;22789:355;22961:178;22995:7;23020:8;23050:63;23089:11;23102:10;23050:38;:63::i;:::-;23128:4;22961:16;:178::i;:::-;22789:355;;;;;:::o;50488:191::-;50590:7;50654;50663:8;50637:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50637:35:24;;;;;;;;;50627:46;;50637:35;50627:46;;;;42043:22;50620:53;;50488:191;-1:-1:-1;;;50488:191:24:o;51505:242::-;51601:7;;;51640:84;51660:10;51656:14;;:1;:14;51640:84;;;51685:32;4275:93:4;4323:19;:27;;;579:1:34;4322:44:4;4288:79;;;4275:93;51685:32:24;;:::i;:::-;;-1:-1:-1;51672:3:24;;51640:84;;;-1:-1:-1;51736:6:24;51505:242;-1:-1:-1;;;51505:242:24:o;8945:812:23:-;9043:14;9079:2;9069:6;:12;9065:112;;9138:2;9129:6;:11;9111:29;;;;9160:2;9150:12;;;;;;:::i;:::-;;;;9065:112;-1:-1:-1;9368:21:23;;9353:12;9341:25;;9337:53;9516:2;:11;;;9598:22;;;9594:159;;;9734:1;9718:14;9714:22;9708:29;9693:12;9678:13;9674:32;9670:68;9662:6;9659:80;9649:90;;9059:698;8945:812;;;;;:::o;3658:342:32:-;3774:16;;;3788:1;3774:16;;;;;;;;;3715:22;;3745:26;;3774:16;;;;;;;;;;;;-1:-1:-1;3774:16:32;3745:45;;3829:7;3796:9;3806:1;3796:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3844:18;3865:49;971:66;3901:9;3844:18;3865:25;:49::i;:::-;3844:70;;3928:66;:44;3949:5;3956:1;3959:5;:12;3928:20;:44::i;:::-;:64;:66::i;3035:136:5:-;3105:4;3157:9;3124:42;;3143:9;3125:15;3135:4;3934:26;;;3804:162;3125:15;:27;3124:42;;;3117:49;;3035:136;;;;:::o;1489:2340:23:-;1602:10;;1598:1504;;1755:2;1745:6;:12;1741:122;;1818:2;1809:6;:11;1791:29;;;;1842:2;1832:12;;;;;;:::i;:::-;;;;1741:122;1953:10;;1949:1147;;2161:2;:11;;;2035:21;-1:-1:-1;;579:1:34;804:25:35;;782:48;2208:18:23;2193:33;;2395:12;2387:6;2383:25;2442:4;2431:9;2427:20;2419:28;;2497:13;2491:20;2480:9;2476:36;2458:54;;2745:4;2741:9;2724:14;2718:21;2714:37;2645:4;2633:10;2629:21;2572:193;2544:14;2524:253;;2836:13;2826:6;:23;2822:36;;2851:7;;;;2822:36;-1:-1:-1;2999:1:23;2981:19;;;;;3054:23;;;;;3012:30;1949:1147;3132:253;3149:2;3139:6;:12;3132:253;;3244:20;;3221:44;;3318:1;3300:19;;;;-1:-1:-1;;3358:12:23;;;;3346:2;3329:19;3132:253;;;3453:10;;3449:376;;3761:21;;3672:20;;-1:-1:-1;;579:1:34;804:25:35;;782:48;3757:32:23;;;3694:9;;3668:36;3617:184;3573:238;;3449:376;1489:2340;;;;:::o;53053:230:24:-;53174:7;53258;53267:8;53241:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53241:35:24;;;;;;;;;53231:46;;53241:35;53231:46;;;;42206:40;53204:73;;53053:230;-1:-1:-1;;;53053:230:24:o;52424:274::-;52568:7;52673;52682:8;52656:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52646:46;;;;;;52625:17;52618:25;;52598:45;;;42115:34;52598:45;:94;52590:103;;52583:110;;52424:274;;;;;:::o;16695:1682::-;16895:23;16874:7;:44;;;16870:235;;17028:7;16981:103;17047:8;17064:5;17077:4;16981:103;;;;;;;;:::i;:::-;;;;;;;;17092:7;;16870:235;17111:16;17130:59;17171:7;17180:8;17130:40;:59::i;:::-;17111:78;;17335:22;17360:24;17376:7;17360:15;:24::i;:::-;17335:49;;17395:9;17390:328;17410:5;:12;17406:1;:16;17390:328;;;17437:9;17459:5;17465:1;17459:8;;;;;;;;:::i;:::-;;;;;;;17437:31;;17480:41;614:6:36;17480:4:24;:14;;;;;:41;;;;:::i;:::-;17476:236;;;17533:170;;;;;3536:35:5;;;;;17533:54:24;;:170;;17609:7;;17638:8;;17665:5;;17688:4;;17533:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17476:236;-1:-1:-1;17424:3:24;;17390:328;;;;17822:7;17775:103;17841:8;17858:5;17871:4;17775:103;;;;;;;;:::i;:::-;;;;;;;;17928:70;17960:8;17978:5;17928:70;;17991:4;17928:13;:70::i;:::-;18052:9;18047:326;18067:5;:12;18063:1;:16;18047:326;;;18094:9;18116:5;18122:1;18116:8;;;;;;;;:::i;:::-;;;;;;;18094:31;;18137:40;723:6:36;18137:4:24;:14;;;;;:40;;;;:::i;:::-;18133:234;;;18189:169;;;;;3536:35:5;;;;;18189:53:24;;:169;;18264:7;;18293:8;;18320:5;;18343:4;;18189:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18133:234;-1:-1:-1;18081:3:24;;18047:326;;36862:522;36998:12;37122:257;37161:79;37203:7;37212:8;37222:17;37161:41;:79::i;:::-;37258:1;37277:93;37352:17;37277:66;37325:7;37334:8;37277:47;:66::i;:::-;:74;7070:16:3;;1063;7070;975;7059:27;7017:70;6995:94;;;6878:222;37277:93:24;37122:12;:257::i;2003:574:22:-;2094:5;2189:3;2181:5;:11;:32;;;;2202:4;:11;2196:3;:17;2181:32;2177:93;;;2253:4;2259:5;2266:3;2222:48;;;;;;;;;;;;;:::i;2177:93::-;2336:4;2326:15;;2383:16;2394:5;2326:15;2383:16;:::i;:::-;;-1:-1:-1;2405:12:22;2420:11;2426:5;2420:3;:11;:::i;:::-;692:17;2555:15;2547:3;2536:14;;;;2535:36;;;;;;-1:-1:-1;;;;;2003:574:22:o;40103:220:38:-;40169:24;40201:30;40234:32;40252:6;40260:2;40264:1;40234:17;:32::i;966:162:23:-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::19;884:15;;758:151;1098:24:23;1055:5;:68::i;53621:303:24:-;53742:14;53836:82;53867:48;53897:7;53906:8;53867:29;:48::i;:::-;4711:21:23;;4605:137;5042:669;5458:4;5452:11;5499:4;5487:17;;-1:-1:-1;;5373:16:23;5546:26;;;5373:16;5369:32;5518:4;5511:63;5618:6;5610;5603:22;5636:51;5641:14;5657:6;5665;5673:13;5636:4;:51::i;2681:1129:40:-;2801:22;2831:21;2855;:11;2997:3:22;2975:25;;2901:104;2855:21:40;2831:45;-1:-1:-1;692:17:22;3238:38;;2882:20:40;3044:11;3238:38:22;3044:11:40;3029:26;;;;:::i;:::-;;3015:40;;3164:4;3158:11;3149:20;;3207:4;3200:5;3196:16;3267:4;3254:11;3250:22;3236:12;3232:41;3226:4;3219:55;3317:11;3310:5;3303:26;3360:1;3337:463;3376:11;3373:1;3370:18;3337:463;;;3770:20;;3749:42;;3728:64;;3642:31;;;;3555:4;3537:23;;;;3463:1;3456:9;3337:463;;;3341:28;;3116:690;;;2681:1129;;;;;:::o;6076:2380:23:-;6193:10;;6189:1542;;6346:2;6336:6;:12;6332:122;;6409:2;6400:6;:11;6382:29;;;;6433:2;6423:12;;;;;;:::i;:::-;;;;6332:122;6544:10;;6540:1185;;6752:2;:11;;;6626:21;6810:22;;;6806:135;;;-1:-1:-1;;;579:1:34;804:25:35;;782:48;6806:135:23;;;-1:-1:-1;;;579:1:34;804:25:35;;782:48;6806:135:23;7135:14;7129:21;7114:12;7106:6;7102:25;7098:53;7375:4;7359:13;7353:20;7349:31;7285:4;7281:9;7269:10;7265:26;7210:184;7183:13;7163:243;;7465:13;7455:6;:23;7451:36;;7480:7;;;;7451:36;-1:-1:-1;7628:1:23;7610:19;;;;;7683:23;;;;;7641:30;6540:1185;7760:253;7777:2;7767:6;:12;7760:253;;7871:21;;7849:44;;7946:1;7928:19;;;;-1:-1:-1;;7986:12:23;;;;7974:2;7957:19;7760:253;;;8081:10;;8077:375;;8101:12;-1:-1:-1;;579:1:34;804:25:35;;782:48;8389:20:23;;8299:21;;8322:9;;8295:37;8385:31;;8244:184;8201:237;;-1:-1:-1;6076:2380:23;;;;:::o;-1:-1:-1:-;;;;;;;;:::o;14:558:214:-;102:6;110;163:2;151:9;142:7;138:23;134:32;131:52;;;179:1;176;169:12;131:52;218:9;205:23;268:42;261:5;257:54;250:5;247:65;237:93;;326:1;323;316:12;237:93;349:5;-1:-1:-1;406:2:214;391:18;;378:32;454:66;441:80;;429:93;;419:121;;536:1;533;526:12;419:121;559:7;549:17;;;14:558;;;;;:::o;1226:184::-;-1:-1:-1;;;1275:1:214;1268:88;1375:4;1372:1;1365:15;1399:4;1396:1;1389:15;1415:125;1480:9;;;1501:10;;;1498:36;;;1514:18;;:::i;1734:184::-;-1:-1:-1;;;1783:1:214;1776:88;1883:4;1880:1;1873:15;1907:4;1904:1;1897:15;1923:250;2008:1;2018:113;2032:6;2029:1;2026:13;2018:113;;;2108:11;;;2102:18;2089:11;;;2082:39;2054:2;2047:10;2018:113;;;-1:-1:-1;;2165:1:214;2147:16;;2140:27;1923:250::o;2178:330::-;2220:3;2258:5;2252:12;2285:6;2280:3;2273:19;2301:76;2370:6;2363:4;2358:3;2354:14;2347:4;2340:5;2336:16;2301:76;:::i;:::-;2422:2;2410:15;-1:-1:-1;;2406:88:214;2397:98;;;;2497:4;2393:109;;2178:330;-1:-1:-1;;2178:330:214:o;2513:657::-;2565:3;2596;2628:5;2622:12;2655:6;2650:3;2643:19;2681:4;2710;2705:3;2701:14;2694:21;;2768:4;2758:6;2755:1;2751:14;2744:5;2740:26;2736:37;2807:4;2800:5;2796:16;2830:1;2840:304;2854:6;2851:1;2848:13;2840:304;;;-1:-1:-1;;2929:5:214;2923:4;2919:16;2915:89;2910:3;2903:102;3026:38;3059:4;3050:6;3044:13;3026:38;:::i;:::-;3122:12;;;;3018:46;-1:-1:-1;3087:15:214;;;;2876:1;2869:9;2840:304;;;-1:-1:-1;3160:4:214;;2513:657;-1:-1:-1;;;;;;;2513:657:214:o;3175:908::-;3701:6;3690:9;3683:25;3744:6;3739:2;3728:9;3724:18;3717:34;3787:6;3782:2;3771:9;3767:18;3760:34;3830:6;3825:2;3814:9;3810:18;3803:34;3874:3;3868;3857:9;3853:19;3846:32;3664:4;3901:56;3952:3;3941:9;3937:19;3929:6;3901:56;:::i;:::-;4006:9;3998:6;3994:22;3988:3;3977:9;3973:19;3966:51;4034:43;4070:6;4062;4034:43;:::i;:::-;4026:51;3175:908;-1:-1:-1;;;;;;;;;3175:908:214:o;4306:464::-;4552:66;4544:6;4540:79;4529:9;4522:98;4656:6;4651:2;4640:9;4636:18;4629:34;4699:2;4694;4683:9;4679:18;4672:30;4503:4;4719:45;4760:2;4749:9;4745:18;4737:6;4719:45;:::i;5028:184::-;-1:-1:-1;;;5077:1:214;5070:88;5177:4;5174:1;5167:15;5201:4;5198:1;5191:15;5217:322;5425:6;5414:9;5407:25;5468:2;5463;5452:9;5448:18;5441:30;5388:4;5488:45;5529:2;5518:9;5514:18;5506:6;5488:45;:::i;5544:280::-;5743:2;5732:9;5725:21;5706:4;5763:55;5814:2;5803:9;5799:18;5791:6;5763:55;:::i;6201:128::-;6268:9;;;6289:11;;;6286:37;;;6303:18;;:::i;6334:168::-;6407:9;;;6438;;6455:15;;;6449:22;;6435:37;6425:71;;6476:18;;:::i;7116:492::-;7291:3;7329:6;7323:13;7345:66;7404:6;7399:3;7392:4;7384:6;7380:17;7345:66;:::i;:::-;7474:13;;7433:16;;;;7496:70;7474:13;7433:16;7543:4;7531:17;;7496:70;:::i;:::-;7582:20;;7116:492;-1:-1:-1;;;;7116:492:214:o;7613:439::-;7666:3;7704:5;7698:12;7731:6;7726:3;7719:19;7757:4;7786;7781:3;7777:14;7770:21;;7825:4;7818:5;7814:16;7848:1;7858:169;7872:6;7869:1;7866:13;7858:169;;;7933:13;;7921:26;;7967:12;;;;8002:15;;;;7894:1;7887:9;7858:169;;;-1:-1:-1;8043:3:214;;7613:439;-1:-1:-1;;;;;7613:439:214:o;8057:691::-;8391:3;8380:9;8373:22;8354:4;8418:57;8470:3;8459:9;8455:19;8447:6;8418:57;:::i;:::-;8523:9;8515:6;8511:22;8506:2;8495:9;8491:18;8484:50;8557:33;8583:6;8575;8557:33;:::i;:::-;8543:47;;8626:6;8621:2;8610:9;8606:18;8599:34;8681:9;8673:6;8669:22;8664:2;8653:9;8649:18;8642:50;8709:33;8735:6;8727;8709:33;:::i;:::-;8701:41;8057:691;-1:-1:-1;;;;;;;8057:691:214:o;8753:898::-;9206:6;9195:9;9188:25;9249:3;9244:2;9233:9;9229:18;9222:31;9169:4;9276:57;9328:3;9317:9;9313:19;9305:6;9276:57;:::i;:::-;9381:9;9373:6;9369:22;9364:2;9353:9;9349:18;9342:50;9415:33;9441:6;9433;9415:33;:::i;:::-;9401:47;;9484:6;9479:2;9468:9;9464:18;9457:34;9540:9;9532:6;9528:22;9522:3;9511:9;9507:19;9500:51;9568:33;9594:6;9586;9568:33;:::i;:::-;9560:41;;;9638:6;9632:3;9621:9;9617:19;9610:35;8753:898;;;;;;;;;:::o;9656:639::-;9906:6;9901:3;9894:19;9876:3;9932:2;9965;9960:3;9956:12;9997:6;9991:13;10062:2;10054:6;10050:15;10083:1;10093:175;10107:6;10104:1;10101:13;10093:175;;;10170:13;;10156:28;;10206:14;;;;10243:15;;;;10129:1;10122:9;10093:175;;;-1:-1:-1;10284:5:214;;9656:639;-1:-1:-1;;;;;;;9656:639:214:o;10300:184::-;-1:-1:-1;;;10349:1:214;10342:88;10449:4;10446:1;10439:15;10473:4;10470:1;10463:15;10489:512;10740:2;10729:9;10722:21;10703:4;10766:56;10818:2;10807:9;10803:18;10795:6;10766:56;:::i;:::-;10870:14;10862:6;10858:27;10853:2;10842:9;10838:18;10831:55;10934:9;10926:6;10922:22;10917:2;10906:9;10902:18;10895:50;10962:33;10988:6;10980;10962:33;:::i;:::-;10954:41;10489:512;-1:-1:-1;;;;;;10489:512:214:o;11006:616::-;11316:6;11305:9;11298:25;11359:3;11354:2;11343:9;11339:18;11332:31;11279:4;11386:57;11438:3;11427:9;11423:19;11415:6;11386:57;:::i;:::-;11491:14;11483:6;11479:27;11474:2;11463:9;11459:18;11452:55;11555:9;11547:6;11543:22;11538:2;11527:9;11523:18;11516:50;11583:33;11609:6;11601;11583:33;:::i;11627:360::-;11830:2;11819:9;11812:21;11793:4;11850:45;11891:2;11880:9;11876:18;11868:6;11850:45;:::i;:::-;11926:2;11911:18;;11904:34;;;;-1:-1:-1;11969:2:214;11954:18;11947:34;11842:53;11627:360;-1:-1:-1;11627:360:214:o","linkReferences":{}},"methodIdentifiers":{"register(address,bytes14)":"472466c2"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[],\"name\":\"FieldLayout_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayout_TooManyFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"Schema_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Schema_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"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\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"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\":\"EncodedLengths\",\"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\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[{\"internalType\":\"contract IBaseWorld\",\"name\":\"world\",\"type\":\"address\"},{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"register\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"computedStaticDataLength\":\"The computed static data length.\",\"staticDataLength\":\"The static data length of the field layout.\"}}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"params\":{\"index\":\"The index of the field.\"}}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"params\":{\"maxFields\":\"The maximum number of fields a Schema can handle.\",\"numFields\":\"The total number of fields in the field layout.\"}}],\"Schema_InvalidLength(uint256)\":[{\"params\":{\"length\":\"The length of the schema.\"}}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"details\":\"Raised if `start` is greater than `end` or `end` greater than the length of `data`.\",\"params\":{\"data\":\"The bytes array to subslice.\",\"end\":\"The end index for the subslice.\",\"start\":\"The start index for the subslice.\"}}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"params\":{\"expected\":\"The expected resource type.\",\"resourceId\":\"The resource ID.\",\"resourceIdString\":\"The stringified resource ID (for easier debugging).\"}}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"params\":{\"expected\":\"The expected length.\",\"received\":\"The provided length.\"}}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"params\":{\"tableId\":\"The ID of the table.\",\"tableIdString\":\"The stringified ID of the table (for easier debugging if cleartext tableIds are used).\"}}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"params\":{\"dynamicData\":\"The dynamic data of the record.\",\"encodedLengths\":\"The encoded lengths of the dynamic data of the record.\",\"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 set.\"}},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"details\":\"In static data, data is always overwritten 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 write to the static data of the record at the start byte.\",\"keyTuple\":\"An array representing the key for the record.\",\"start\":\"The start position in bytes for the splice operation.\",\"tableId\":\"The ID of the table where the data is spliced.\"}}},\"kind\":\"dev\",\"methods\":{},\"version\":1},\"userdoc\":{\"errors\":{\"FieldLayout_Empty()\":[{\"notice\":\"Error raised when the provided field layout is empty.\"}],\"FieldLayout_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has an invalid static data length.\"}],\"FieldLayout_StaticLengthDoesNotFitInAWord(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length that does not fit in a word (32 bytes).\"}],\"FieldLayout_StaticLengthIsNotZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a nonzero static data length.\"}],\"FieldLayout_StaticLengthIsZero(uint256)\":[{\"notice\":\"Error raised when the provided field layout has a static data length of zero.\"}],\"FieldLayout_TooManyDynamicFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many dynamic fields.\"}],\"FieldLayout_TooManyFields(uint256,uint256)\":[{\"notice\":\"Error raised when the provided field layout has too many fields.\"}],\"Schema_InvalidLength(uint256)\":[{\"notice\":\"Error raised when the provided schema has an invalid length.\"}],\"Schema_StaticTypeAfterDynamicType()\":[{\"notice\":\"Error raised when a static type is placed after a dynamic type in a schema.\"}],\"Slice_OutOfBounds(bytes,uint256,uint256)\":[{\"notice\":\"Error raised when the provided slice is out of bounds.\"}],\"Store_InvalidFieldNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided field names length is invalid.\"}],\"Store_InvalidKeyNamesLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided key names length is invalid.\"}],\"Store_InvalidResourceType(bytes2,bytes32,string)\":[{\"notice\":\"Error raised if the provided resource ID cannot be found.\"}],\"Store_InvalidStaticDataLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided static data length is invalid.\"}],\"Store_InvalidValueSchemaDynamicLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema dynamic length is invalid.\"}],\"Store_InvalidValueSchemaLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided value schema length is invalid.\"}],\"Store_InvalidValueSchemaStaticLength(uint256,uint256)\":[{\"notice\":\"Error raised if the provided schema static length is invalid.\"}],\"Store_TableAlreadyExists(bytes32,string)\":[{\"notice\":\"Error raised if the provided table already exists.\"}]},\"events\":{\"Store_SetRecord(bytes32,bytes32[],bytes,bytes32,bytes)\":{\"notice\":\"Emitted when a new record is set in the store.\"},\"Store_SpliceStaticData(bytes32,bytes32[],uint48,bytes)\":{\"notice\":\"Emitted when static data in the store is spliced.\"}},\"kind\":\"user\",\"methods\":{\"register(address,bytes14)\":{\"notice\":\"Register systems and tables for a new ERC721 token in a given namespace\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/modules/erc721-puppet/ERC721Module.sol\":\"ERC721ModuleRegistrationLibrary\"},\"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\":\"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\":\"0x167af6321dc89c2e5850e31949b1d64ab70bb1cc809daa54a030e8ff30f35411\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e4b1a2d5da7e4f79349f5257a62b4c6ffe110d6e18fe407099aec71a2f3b2539\",\"dweb:/ipfs/QmQXqehp55UecYyuYTiPBKSnuedqYybXfCCjoPPrZ2hnRw\"]},\"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\":\"0x0128498e258f144cf98f0aa9aa0b39955273f31ca5464258a4cac8b3dbdb1b35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cab457b868f39aaab35cb80ec4446606a0647a128234a2e3a16188d609efdd33\",\"dweb:/ipfs/QmP4DeduAZfLBG7uN7DUuEoqom6sairSkwU3vb22MZMHL9\"]},\"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\":\"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53\",\"dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905\",\"dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6\",\"dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc\",\"dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2\"]},\"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\":\"0xdd9f36208c5975c50187645c3296dccf014a73a9ed2d03b209984e101eca89c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://27245a6f43082eecb2f1ffd309c477020b64eadaa070066d10c3c46b8b5f720a\",\"dweb:/ipfs/QmQ8nqsgKRw2DYwydFbY9HZv1sNySnysrWkbteTp21eEuZ\"]},\"node_modules/@latticexyz/world/src/DelegationControl.sol\":{\"keccak256\":\"0x8fa0fe6f180267dd17948607704000850b896dd16570525a2347949023022b54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://45a984963246009d0021961527210f77b0af851b18cdc9efc7ef0ed3c7b98958\",\"dweb:/ipfs/QmU8JAbabZeujX18JF4KCaCW34PbwSe8zR6Cc1cNRUJ4Bh\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x7cc2fbdd8ff6c996e19fab46c1031b76355da74973cebf45ce4df4b035d566bf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://857d577f84a68018a3392ec4540c15e80326aaf4b0f224d0d239605abacfc0f3\",\"dweb:/ipfs/QmVEr3rTH1F1BFaCTMd7MmuceTqASwKBcMRnuFZ4tUAYmR\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7\",\"dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2\",\"dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1\"]},\"node_modules/@latticexyz/world/src/IModuleErrors.sol\":{\"keccak256\":\"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea\",\"dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f\",\"dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255\",\"dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf\",\"dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B\"]},\"node_modules/@latticexyz/world/src/IWorldEvents.sol\":{\"keccak256\":\"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57\",\"dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092\",\"dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0xd99e81434439567e123dbade39850ea3e439ed7a33fe9a609ca6f1e08214908d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a00f6f27be952688d8db4ed77667d55219a56a04973db4d421a2776eb46da88b\",\"dweb:/ipfs/QmRqDmtDwZ8pXCcJFzwP7JDtUk86LmhWDrZBKy6q9UK9rz\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f\",\"dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x50ca52bdd89a9f27d6b03ad00ef45c8c5a6884ea9d75e18f8fa53524ac2feed9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://55febdece37b291527094fb654919d4c8fe0b231792996a14c5e5cc76512b19e\",\"dweb:/ipfs/QmZHFbDDNmdFHWc1uTSvDgMUUgb8NgBPb1cDUJYajswbHT\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea\",\"dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0x7e7321b86836bfbf4b96d0fb2a424ed678efcf01b15fa3d0b4ae4f0b975ad5dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ead41554796bd0507e390f2997aa4a8df7bff8b51523b86fa3c5bd8acb1fec48\",\"dweb:/ipfs/QmVe1VUhfbRy8tviA7UcCtS8NjXhsF1E6Re9xLqWS5aRTK\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83\",\"dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0xf7acdfa0eb01c710d11fba129d613863fe86f1bed352f0bc5630bea81cceae17\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3e4107681cd20c018cd8f5dff6da72e8a4b02f631c7c59b618e8743482c7bc81\",\"dweb:/ipfs/QmXS8NLaKVXcf97HrD8U4hGHqb9ytYGwdZrTVHHb5EwrRj\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0x600cc362780c319e640950ad3520af7fa558171268baab252ff4da4414aa0f1c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6d113a833b64bccbbe852f3d0261efd80ad4a0f6771802dc91af79c762a33ff2\",\"dweb:/ipfs/QmaXEdJJaMMQF8nZieWyXdVD15yuXnH89QLZHwD18LAndz\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0x7070453d969eba7defd90047d58ae979e27e5c1fcf05598daa4d17fedbe84c35\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ee5c196c5e339ac0222cd1d14fd9d09451d255605f73732abc33397a9512503b\",\"dweb:/ipfs/QmYwNsWnxP24RzDqFYLnBYswZY97YE3nwG6Xf55f5FqNXa\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c\",\"dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0x70bed82da026058ddccf52766823c7d55c7d29faad0ab1d76d763786d5277f7c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1da6476d62e450d3d935ea8292723612a84fa1d07342fbc052ee851181701a27\",\"dweb:/ipfs/Qmd1FQpmEVbQciLDPkHPXSKB7aYW1YB74BN5JXqn74erhR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0x50a1f277a00f01e3cb97a85f0fc624ae2192a726136720b6a900b465a7aecc05\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8f3cd87cc0b905d5b75d134d95176630404e76c0f0a343cbd17b8338e1492c0b\",\"dweb:/ipfs/QmURFDNBdUWgh57apX9n7VF68rSQeQrpc5to4FFV6bbJgN\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597\",\"dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e\",\"dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0xcb1e9fd5cd02cbb7125f2a64c02f89272d4b0f2afc0b43f24b727f023ef06493\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f4a923e67dea1c1c0a978cbb89d4e27f6e0205f49efe0556ac90b358bd2062ab\",\"dweb:/ipfs/QmZww8gDH9kyXsCaTYWzupNhL1QqR1emAbb5VifFWhDWYF\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7\",\"dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/types.sol\":{\"keccak256\":\"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525\",\"dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359\",\"dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea\",\"dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk\"]},\"src/modules/erc721-puppet/ERC721Module.sol\":{\"keccak256\":\"0x250bb5dc2dfa876f4bebe509425a31c163a5097689e9191bb078b3e2c527e350\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e35550e1945671d16773f3e12788ec1d1ebeb57c9ed350ec2add3c1c81efc17c\",\"dweb:/ipfs/QmdxB8Ao2D2QRSx9SzTvZ9FhsuEaG7s1xR2NhfQaoANS9K\"]},\"src/modules/erc721-puppet/ERC721System.sol\":{\"keccak256\":\"0x293bc28b56c49abc6f7238482bf81da2d23e8f2faf9020a1a413b6fcf5d3322f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf6c50fa383088288d5dc0a8d2977a022cce19c5f4b71baec113fad25722b752\",\"dweb:/ipfs/QmXLSng3w6KFDL5YyuoYStKoyCUgS5TfwioZRmYzUonPhT\"]},\"src/modules/erc721-puppet/IERC721.sol\":{\"keccak256\":\"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16\",\"dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv\"]},\"src/modules/erc721-puppet/IERC721Errors.sol\":{\"keccak256\":\"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47\",\"dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx\"]},\"src/modules/erc721-puppet/IERC721Events.sol\":{\"keccak256\":\"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2\",\"dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn\"]},\"src/modules/erc721-puppet/IERC721Mintable.sol\":{\"keccak256\":\"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733\",\"dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo\"]},\"src/modules/erc721-puppet/IERC721Receiver.sol\":{\"keccak256\":\"0x62fd44cbfe77f557d2f3bb53f7851ee08e0f547d1a66dc4909b137b79f6b9806\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a15974c235e222bbc301460835b2c73c2203fbabacb53ea21261737be0724fc\",\"dweb:/ipfs/QmbLrBfWMeYQjqBVFBn5yAHrXHuNKeGTWiUwciX4dheAmR\"]},\"src/modules/erc721-puppet/constants.sol\":{\"keccak256\":\"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c\",\"dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn\"]},\"src/modules/erc721-puppet/tables/ERC721Metadata.sol\":{\"keccak256\":\"0xb0aec142df53cbd8465dc34da6734f92fe96a8d05f16ff368109206676b14978\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e84a1a25ba5f7bbbefbeebd78a863c7234507bbf72fe025144f1ffeec88a488b\",\"dweb:/ipfs/QmVx7DeGeCbwPMXcZ6yph9yLK8f2Riod7hXYfs4tmF55tv\"]},\"src/modules/erc721-puppet/tables/ERC721Registry.sol\":{\"keccak256\":\"0x0ff67f42e1740a856e733908b9ce0e0f0f4219c8020057039891e8226e9e2656\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://14769249967a1179ccb6760f0058eefb7fa2dfa8316a79e29d40cd4f8ee977aa\",\"dweb:/ipfs/QmVtkAwVSYwggFQhXtHifRGvHLuinJDQfVYyU8LYP7PmYb\"]},\"src/modules/erc721-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79\",\"dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg\"]},\"src/modules/erc721-puppet/tables/Owners.sol\":{\"keccak256\":\"0x189034b75e6ae4d1422205be83c2280bb515acd625863f889bb1a7ae0670b2b1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://70bbdcab47c980fe519e62d829ad76015c5525d940b942f5a3f8a9108c71f510\",\"dweb:/ipfs/QmZ5ixxJtFScPi6VugYq7jJRgrvmczFzjyLhxEhHTfNcQK\"]},\"src/modules/erc721-puppet/tables/TokenApproval.sol\":{\"keccak256\":\"0xde22b2b236bc5046f8ef24b8fb806ba085859628ada159bde90395cd2f0621fc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26fb05815619dc76c1854c1327d860ce38ed67a02337d8373fd8339538a5e16c\",\"dweb:/ipfs/QmZSJFRdNokt6uTGnonCA4GbAQPWF5d3aeFYj6wtDJaktD\"]},\"src/modules/erc721-puppet/tables/TokenURI.sol\":{\"keccak256\":\"0x7fe5517ff1843d9fe70dd37beb18a954efe3c62f2d484fbf8e0646f22a1493a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://abc83f7656b5a33f695d900f9da3fb5896054a41eb0f5c963d2b01794a8461e3\",\"dweb:/ipfs/QmWXV2jZ8Tp3k4zNyqG3GNN9SchsDK1zSQwFXCvEGmnRuy\"]},\"src/modules/erc721-puppet/utils.sol\":{\"keccak256\":\"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c\",\"dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS\"]},\"src/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"src/modules/puppet/PuppetDelegationControl.sol\":{\"keccak256\":\"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d\",\"dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS\"]},\"src/modules/puppet/PuppetFactorySystem.sol\":{\"keccak256\":\"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9\",\"dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv\"]},\"src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"src/modules/puppet/createPuppet.sol\":{\"keccak256\":\"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398\",\"dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc\"]},\"src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14\",\"dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q\"]},\"src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"src/modules/tokens/tables/Balances.sol\":{\"keccak256\":\"0x6397f165aed38d2e921a0ae4f280f8079e0241d24bce2915c99ce69ea036b0cc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b9ecc3fe44da5dc9c2532d85b288f6d9dfc28ea5a0899fe32faa1d7d78bd047\",\"dweb:/ipfs/QmayMhjNZJNRKjyxC7AEXkx87ePDu4rNVqZ7eDRTzk8Jrc\"]},\"src/utils/AccessControlLib.sol\":{\"keccak256\":\"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a\",\"dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[],"type":"error","name":"FieldLayout_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayout_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayout_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayout_TooManyFields"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"Schema_InvalidLength"},{"inputs":[],"type":"error","name":"Schema_StaticTypeAfterDynamicType"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"EncodedLengths","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[{"internalType":"contract IBaseWorld","name":"world","type":"address"},{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"stateMutability":"nonpayable","type":"function","name":"register"}],"devdoc":{"kind":"dev","methods":{},"version":1},"userdoc":{"kind":"user","methods":{"register(address,bytes14)":{"notice":"Register systems and tables for a new ERC721 token in a given namespace"}},"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":{"src/modules/erc721-puppet/ERC721Module.sol":"ERC721ModuleRegistrationLibrary"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/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":"0x167af6321dc89c2e5850e31949b1d64ab70bb1cc809daa54a030e8ff30f35411","urls":["bzz-raw://e4b1a2d5da7e4f79349f5257a62b4c6ffe110d6e18fe407099aec71a2f3b2539","dweb:/ipfs/QmQXqehp55UecYyuYTiPBKSnuedqYybXfCCjoPPrZ2hnRw"],"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":"0x0128498e258f144cf98f0aa9aa0b39955273f31ca5464258a4cac8b3dbdb1b35","urls":["bzz-raw://cab457b868f39aaab35cb80ec4446606a0647a128234a2e3a16188d609efdd33","dweb:/ipfs/QmP4DeduAZfLBG7uN7DUuEoqom6sairSkwU3vb22MZMHL9"],"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":"0xfdea5b4cf666720c1c0d81a8acdede68e6220aee45d8a9f3c9834b4edc5da394","urls":["bzz-raw://b3a394dfe123cfb7200f65d379fb0cb3d2c84475b382faf6ee11bf9c45a63b53","dweb:/ipfs/QmRMPHFBbCKtqKBVV9gvd2jhnfsyUKmCBEQkgviMoxi1UG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xf192bceab34508cee21dd7c33e4d776f79c4a7ca55ee8905c6c694850ebfdf64","urls":["bzz-raw://c95113f76f6de671cb44710754e0942934182b544660a4330fc90a505e198905","dweb:/ipfs/QmXma5ZxfK8Y9TbvB7QM9hdhfc1ixiMcLpo9BQxnVthHB5"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xa825218614acc19a4100357dd7ee410b67b994fe7aaa68650d5d0d4202d4ca8c","urls":["bzz-raw://09b0cbb598fe2b75bbcd269b47d686a66fcc89c0c40d9a09807eba7688b81fc6","dweb:/ipfs/QmYk6XQwSLhRumujTCsqxdvugKuP8oLjjB926pMHR445ra"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0x918b977e7f7f3e947d6d5aa189c54c9c7e7c106d0a0d53734ee959ad454abe09","urls":["bzz-raw://3a3de63c04c838bf80c1903cf7464d201d0ece0f86a7aaca35462b730e9338fc","dweb:/ipfs/QmSUkLZ88J7tSwdmR3viBJHU8QVgN2Gji6W8wYLJEDNkc2"],"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":"0xdd9f36208c5975c50187645c3296dccf014a73a9ed2d03b209984e101eca89c5","urls":["bzz-raw://27245a6f43082eecb2f1ffd309c477020b64eadaa070066d10c3c46b8b5f720a","dweb:/ipfs/QmQ8nqsgKRw2DYwydFbY9HZv1sNySnysrWkbteTp21eEuZ"],"license":"MIT"},"node_modules/@latticexyz/world/src/DelegationControl.sol":{"keccak256":"0x8fa0fe6f180267dd17948607704000850b896dd16570525a2347949023022b54","urls":["bzz-raw://45a984963246009d0021961527210f77b0af851b18cdc9efc7ef0ed3c7b98958","dweb:/ipfs/QmU8JAbabZeujX18JF4KCaCW34PbwSe8zR6Cc1cNRUJ4Bh"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x7cc2fbdd8ff6c996e19fab46c1031b76355da74973cebf45ce4df4b035d566bf","urls":["bzz-raw://857d577f84a68018a3392ec4540c15e80326aaf4b0f224d0d239605abacfc0f3","dweb:/ipfs/QmVEr3rTH1F1BFaCTMd7MmuceTqASwKBcMRnuFZ4tUAYmR"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe3d9074a1be3247be67ff4dd2c9e41481650ddaa799285a249736bb85673e33d","urls":["bzz-raw://0b6743ee1e6d0c74927bf17fc1da0cad7575aa7634871b94190ffbdb4c28c2a7","dweb:/ipfs/Qma5bNsPJSBTesWxg3eAAMUBTDE7UjqWaHF7eMiGwP87jr"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0xbb926cf64e685bbf2770d60124664cc84ab70bd3038e17a074f2d472c3fc2c57","urls":["bzz-raw://143c3dcbdf1702dd4f9c869629609386c12f7c0247e88a6d062dc4d519ebe0d2","dweb:/ipfs/QmQJSDd8uFL4sssw9fb9NHo4s6zjuDUgmrLHj3zsJuhMo1"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModuleErrors.sol":{"keccak256":"0x60917e029779c81cfea1f5140c389269e51d7adb78987f39101b9e0d7bdad12d","urls":["bzz-raw://513f41920d67ca28c3e0fe247403c28a4d342785192df449c99d5f92db04fcea","dweb:/ipfs/QmeAG2TtxAgcJQR4QxftuSvQrxisYQ1i1GZoyd7oeFQBDJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0x81f1743d7ca6a9c7efc4997cf95e603ccb2070885265ca0e540f461aa7430721","urls":["bzz-raw://93d99e78b541b33ecd501bf0cd407a78cef490fec8eaef2f188bddb9e293a99f","dweb:/ipfs/QmPrcMDxwhvBZTr2AxoGqJA9L3Mjx27KBc98h3gXSsa3PM"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xb39e9d8cff4162e255f6c460ef9f9f0ad5b804627f745d967b2f10d0dd509299","urls":["bzz-raw://18d957cd87febccc00d82b9454047f0f5236250c9245befc0f57978671675255","dweb:/ipfs/QmdZ1eXBd15vLpLVqTNJDAAaTzzucpRLD8GPJahLKT4J7x"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x0abae6f4ed1b3070bddd0ed194c08b83a948b61ae959396202cf627bf1056a2b","urls":["bzz-raw://a7037954f281cc0188a5aafc1d0cca0aabc110fd0234e6c43dca35ad69ed3baf","dweb:/ipfs/Qmbv2nfK1qPpnoAbqNJFqWwo7AuyaX2ZEgZMFspMv7DR5B"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldEvents.sol":{"keccak256":"0x39f6d8930db431c04158b85cc2a612c48d43dc81ec998f267076b12293c5d243","urls":["bzz-raw://d68f1543e5e166d639372d1aec57e3e193b5bb3b37270b6cb0488fab2c0ebe57","dweb:/ipfs/QmdJUFDx87AHWFKP3jVrYg8xqAkiPfuT1M3tEotNt7KUoy"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xdaa1e92439036e392fe79892819ae165732f416b831f84d38050ca3d958e549b","urls":["bzz-raw://ea8dc52e31a62e8971322ea9ed8f2e83d562ec199d7f93a392c293e96ff7f092","dweb:/ipfs/QmSbM8MgHbrJLYP7uzemfZeC4xctqdyKDbspwHUsgeeVJC"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0xd99e81434439567e123dbade39850ea3e439ed7a33fe9a609ca6f1e08214908d","urls":["bzz-raw://a00f6f27be952688d8db4ed77667d55219a56a04973db4d421a2776eb46da88b","dweb:/ipfs/QmRqDmtDwZ8pXCcJFzwP7JDtUk86LmhWDrZBKy6q9UK9rz"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0xadcb32bdc444a4420909b738d81fa662dc63739455fe93d5aa89c93a3ccfd2dd","urls":["bzz-raw://d303094c84ebfb0f9f114c54ff4dfc68bfa1e526d0ebe304be6fbeb7cb2f0d3f","dweb:/ipfs/QmYvUx1mNDhkxZFqxLeswW3w9HkvVqeoJiJKj1HN1SB7Gi"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x50ca52bdd89a9f27d6b03ad00ef45c8c5a6884ea9d75e18f8fa53524ac2feed9","urls":["bzz-raw://55febdece37b291527094fb654919d4c8fe0b231792996a14c5e5cc76512b19e","dweb:/ipfs/QmZHFbDDNmdFHWc1uTSvDgMUUgb8NgBPb1cDUJYajswbHT"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xaff9a22fac8a0f6eee5763b07a7ccb623c829d37922b85e42e914aad2ad417ee","urls":["bzz-raw://e598f0274d6d97c0a09806bf4fd1f0d054c310cf51b2123f5ce6380d6f3186ea","dweb:/ipfs/QmaaVvqm21YsCgxozDyShcM17jKUXJhf2y26bk2YzPYZoM"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0x7e7321b86836bfbf4b96d0fb2a424ed678efcf01b15fa3d0b4ae4f0b975ad5dc","urls":["bzz-raw://ead41554796bd0507e390f2997aa4a8df7bff8b51523b86fa3c5bd8acb1fec48","dweb:/ipfs/QmVe1VUhfbRy8tviA7UcCtS8NjXhsF1E6Re9xLqWS5aRTK"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xe57042e82311847c56fa569377ed84459bf55afccdd3123312a5dff90c1d06f4","urls":["bzz-raw://baf3258c9118bf16ba68ebcfecdb5e5ffc85d5c0cdc2815ca298283dfcff2c83","dweb:/ipfs/QmcBVyUBR3PVejz7249VrEBMCMKHi72KoUXQ8DFmMmY48F"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0xf7acdfa0eb01c710d11fba129d613863fe86f1bed352f0bc5630bea81cceae17","urls":["bzz-raw://3e4107681cd20c018cd8f5dff6da72e8a4b02f631c7c59b618e8743482c7bc81","dweb:/ipfs/QmXS8NLaKVXcf97HrD8U4hGHqb9ytYGwdZrTVHHb5EwrRj"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0x600cc362780c319e640950ad3520af7fa558171268baab252ff4da4414aa0f1c","urls":["bzz-raw://6d113a833b64bccbbe852f3d0261efd80ad4a0f6771802dc91af79c762a33ff2","dweb:/ipfs/QmaXEdJJaMMQF8nZieWyXdVD15yuXnH89QLZHwD18LAndz"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0x7070453d969eba7defd90047d58ae979e27e5c1fcf05598daa4d17fedbe84c35","urls":["bzz-raw://ee5c196c5e339ac0222cd1d14fd9d09451d255605f73732abc33397a9512503b","dweb:/ipfs/QmYwNsWnxP24RzDqFYLnBYswZY97YE3nwG6Xf55f5FqNXa"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0xe08d3af994098120b5507c71a1c3558763b8c1a88c6eae506aa438c2af78f800","urls":["bzz-raw://bb0c47b16ff524140388765fe9ef99211dd7d9b9374dae09144a9956138de00c","dweb:/ipfs/Qma8ibVu6WZs1hFW3hMnUykV3pPXGZhZ3xJwJXNj6Xu7aL"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0x70bed82da026058ddccf52766823c7d55c7d29faad0ab1d76d763786d5277f7c","urls":["bzz-raw://1da6476d62e450d3d935ea8292723612a84fa1d07342fbc052ee851181701a27","dweb:/ipfs/Qmd1FQpmEVbQciLDPkHPXSKB7aYW1YB74BN5JXqn74erhR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0x50a1f277a00f01e3cb97a85f0fc624ae2192a726136720b6a900b465a7aecc05","urls":["bzz-raw://8f3cd87cc0b905d5b75d134d95176630404e76c0f0a343cbd17b8338e1492c0b","dweb:/ipfs/QmURFDNBdUWgh57apX9n7VF68rSQeQrpc5to4FFV6bbJgN"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x3a53f395fc56398b4095c1e4016ad5f87d06236fc00f1fb85b9cfe138575b614","urls":["bzz-raw://9d91d30c8506a2d07bcafe0f8feff002bbc7764060d7e7bef7f15b9c4a97c597","dweb:/ipfs/QmVTAxSh1JSMpKD1jmJSTvXbDZQubdJW2DQDoePWecJskH"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0xb857dd63073a6469f5bb8deb6c0617763cd42c484821e247572c6b53bb1da3cc","urls":["bzz-raw://07c710d67440b98b145c1991623b7c8cc7f0805b4e6fa37a7d54afcece31239e","dweb:/ipfs/Qmb368QqzbQGUttbDS7eVBGQ8KcXhiai2F9vy3Thyyk2vx"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0xcb1e9fd5cd02cbb7125f2a64c02f89272d4b0f2afc0b43f24b727f023ef06493","urls":["bzz-raw://f4a923e67dea1c1c0a978cbb89d4e27f6e0205f49efe0556ac90b358bd2062ab","dweb:/ipfs/QmZww8gDH9kyXsCaTYWzupNhL1QqR1emAbb5VifFWhDWYF"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0x1706fe4b5441a4e3982a3d32f7de2148627b8dfbbe3e38391dd4dab06b86478c","urls":["bzz-raw://c0569fa73cd26c6476188646194ad58eb5cf78cb7c7dc7722748455c23c9d4d7","dweb:/ipfs/Qma1RuR12bTXSVJJ8Q8Gw23KkBw7pyV9u5Kr8TGutaxYdz"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/types.sol":{"keccak256":"0x81b75eb286ec515bde6cbb16c3d089054abb530b744865bbace68343d23177bc","urls":["bzz-raw://afc77bd51e24da666260bb48c44ff611869fb2e550921d732e5aac84a1f09525","dweb:/ipfs/QmeU5N4yeRh5nEA65pvGtQQJNv1GvEPy4PkhMVRYRMoMvh"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0xa1147f218a0152b153d4e8bada0f606bfed40ac1f184fd16a941c2d0033c53f5","urls":["bzz-raw://3f5e0f6d1b51a3a04d4bd84537b2ced373b32824898cf6fbfd13ae1cbdf06359","dweb:/ipfs/QmayYRmBZRUV9m4UnFxuC62VvHriXhkYXeH3HibZ3Gmxxf"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xeb042e7d3638430f6fd394107f3237cf14e4325154f0098624e8a7826584d465","urls":["bzz-raw://39e0b8eb87616b661f5a4f2fd7e1a727bd19b7fd8d40ad3d93fda26822f433ea","dweb:/ipfs/QmacYMatKV9pwEwirVRY9a6r89RoNs5yk99ic37ieWA8Dk"],"license":"MIT"},"src/modules/erc721-puppet/ERC721Module.sol":{"keccak256":"0x250bb5dc2dfa876f4bebe509425a31c163a5097689e9191bb078b3e2c527e350","urls":["bzz-raw://e35550e1945671d16773f3e12788ec1d1ebeb57c9ed350ec2add3c1c81efc17c","dweb:/ipfs/QmdxB8Ao2D2QRSx9SzTvZ9FhsuEaG7s1xR2NhfQaoANS9K"],"license":"MIT"},"src/modules/erc721-puppet/ERC721System.sol":{"keccak256":"0x293bc28b56c49abc6f7238482bf81da2d23e8f2faf9020a1a413b6fcf5d3322f","urls":["bzz-raw://bf6c50fa383088288d5dc0a8d2977a022cce19c5f4b71baec113fad25722b752","dweb:/ipfs/QmXLSng3w6KFDL5YyuoYStKoyCUgS5TfwioZRmYzUonPhT"],"license":"MIT"},"src/modules/erc721-puppet/IERC721.sol":{"keccak256":"0x87b18a3fe819a06930749c60912e28d3add40de2881d976d4d7565858468ac8e","urls":["bzz-raw://90d6f52696977e65bbc4a3d937ac4be843e2d1006591b861b2b3038c7a7e1d16","dweb:/ipfs/QmS2vsjycwSgGPgWrPEDdFK5WTvE6ixhzYQLL57xHJAXNv"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Errors.sol":{"keccak256":"0xc408b8c878980829678cf94ca6d83c71c0587e802221d226c84b66c60a198903","urls":["bzz-raw://9a04ce4eafe37b18476b4dbbd207eff2e33b1ea073a06d5ff8df8e08aa69ac47","dweb:/ipfs/QmTqKcfCXBntqtEcGobHMTJyy37xv93t1342RvqtpgnDQx"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Events.sol":{"keccak256":"0x4ea76f18fbb68319807fe1fa39d3035b8177bd30c3977c40ed41e9810ffebb13","urls":["bzz-raw://2f0508d70a34ce0661e52b4201996bea5e61e0108a4a218acc3728be5d51fbc2","dweb:/ipfs/QmQx9bX9cYUENRvXV55NhHL3TFiNXGqvVyy8aYDA1KCagn"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Mintable.sol":{"keccak256":"0xa647391a56ac17e6e73a5fb04d641c8a97abde19a7da80a8fc80902d7cce36aa","urls":["bzz-raw://862f638b4e4b300067f6a485580ec904d428281de46e3a186b558ff3e15e4733","dweb:/ipfs/QmUkgdfZJtwyBSrCyckw9GVFrZsD1rUAK2Nd3GBH12duLo"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Receiver.sol":{"keccak256":"0x62fd44cbfe77f557d2f3bb53f7851ee08e0f547d1a66dc4909b137b79f6b9806","urls":["bzz-raw://0a15974c235e222bbc301460835b2c73c2203fbabacb53ea21261737be0724fc","dweb:/ipfs/QmbLrBfWMeYQjqBVFBn5yAHrXHuNKeGTWiUwciX4dheAmR"],"license":"MIT"},"src/modules/erc721-puppet/constants.sol":{"keccak256":"0xf8a29616bcb176258295bae6dcb8c9eada8e18812c823c3490ff238370f3a64d","urls":["bzz-raw://f800f102f773e4c5b2281b44a9f477d7a4d7dca13ddb369fa0d4479cddbfb04c","dweb:/ipfs/QmSiqQuHY8cPTXkpnK3NyZCkeATzjYNpoR8vrijrfLdwqn"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Metadata.sol":{"keccak256":"0xb0aec142df53cbd8465dc34da6734f92fe96a8d05f16ff368109206676b14978","urls":["bzz-raw://e84a1a25ba5f7bbbefbeebd78a863c7234507bbf72fe025144f1ffeec88a488b","dweb:/ipfs/QmVx7DeGeCbwPMXcZ6yph9yLK8f2Riod7hXYfs4tmF55tv"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Registry.sol":{"keccak256":"0x0ff67f42e1740a856e733908b9ce0e0f0f4219c8020057039891e8226e9e2656","urls":["bzz-raw://14769249967a1179ccb6760f0058eefb7fa2dfa8316a79e29d40cd4f8ee977aa","dweb:/ipfs/QmVtkAwVSYwggFQhXtHifRGvHLuinJDQfVYyU8LYP7PmYb"],"license":"MIT"},"src/modules/erc721-puppet/tables/OperatorApproval.sol":{"keccak256":"0xbbed481b7ccef9525cd566c8e36f42512c8de94c7431510356b35c853c2764d5","urls":["bzz-raw://984af22419c3ba9e19775b47cdd981872bb1aff430ebab83752a0ea3f6b6fb79","dweb:/ipfs/Qmdr1FByP2aWAuursvKr126EZhNzT29H4bGs3qx9yacVfg"],"license":"MIT"},"src/modules/erc721-puppet/tables/Owners.sol":{"keccak256":"0x189034b75e6ae4d1422205be83c2280bb515acd625863f889bb1a7ae0670b2b1","urls":["bzz-raw://70bbdcab47c980fe519e62d829ad76015c5525d940b942f5a3f8a9108c71f510","dweb:/ipfs/QmZ5ixxJtFScPi6VugYq7jJRgrvmczFzjyLhxEhHTfNcQK"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenApproval.sol":{"keccak256":"0xde22b2b236bc5046f8ef24b8fb806ba085859628ada159bde90395cd2f0621fc","urls":["bzz-raw://26fb05815619dc76c1854c1327d860ce38ed67a02337d8373fd8339538a5e16c","dweb:/ipfs/QmZSJFRdNokt6uTGnonCA4GbAQPWF5d3aeFYj6wtDJaktD"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenURI.sol":{"keccak256":"0x7fe5517ff1843d9fe70dd37beb18a954efe3c62f2d484fbf8e0646f22a1493a7","urls":["bzz-raw://abc83f7656b5a33f695d900f9da3fb5896054a41eb0f5c963d2b01794a8461e3","dweb:/ipfs/QmWXV2jZ8Tp3k4zNyqG3GNN9SchsDK1zSQwFXCvEGmnRuy"],"license":"MIT"},"src/modules/erc721-puppet/utils.sol":{"keccak256":"0xd497c2610d37ef3b800e3aef80d36661c60b5e36325565c3bc5c3ce986b641a5","urls":["bzz-raw://7406b572bdef593e1a8d0faaa94e9869108fc2cc7955da3aa3a62a56428c9a0c","dweb:/ipfs/QmPKnuzAkPVyhpJz25fNCfGcvyPPZZWgsm5QbKZva82EWS"],"license":"MIT"},"src/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"src/modules/puppet/PuppetDelegationControl.sol":{"keccak256":"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3","urls":["bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d","dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS"],"license":"MIT"},"src/modules/puppet/PuppetFactorySystem.sol":{"keccak256":"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe","urls":["bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9","dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv"],"license":"MIT"},"src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"src/modules/puppet/createPuppet.sol":{"keccak256":"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1","urls":["bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398","dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc"],"license":"MIT"},"src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x37273e42577e71b80621bcaa9132b8f9d28ded452242fb478fd7e52f382b83a6","urls":["bzz-raw://26403866f063923a910cc1e6f4ff7b0e74e4f343b1222675658d1b9a1ecdbe14","dweb:/ipfs/QmSTqLMbg9PvyFkVexVbLPUPLr1aBuBtcfnBZGbqEaje7Q"],"license":"MIT"},"src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"license":"MIT"},"src/modules/tokens/tables/Balances.sol":{"keccak256":"0x6397f165aed38d2e921a0ae4f280f8079e0241d24bce2915c99ce69ea036b0cc","urls":["bzz-raw://8b9ecc3fe44da5dc9c2532d85b288f6d9dfc28ea5a0899fe32faa1d7d78bd047","dweb:/ipfs/QmayMhjNZJNRKjyxC7AEXkx87ePDu4rNVqZ7eDRTzk8Jrc"],"license":"MIT"},"src/utils/AccessControlLib.sol":{"keccak256":"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542","urls":["bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a","dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z"],"license":"MIT"}},"version":1},"id":148}