@latticexyz/world-modules 2.0.0-main-711f6e2a → 2.0.0-march-19-skystrife-playtest-f0a343b1

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 (407) hide show
  1. package/out/AccessControl.sol/AccessControl.json +1 -1
  2. package/out/AccessControlLib.sol/AccessControlLib.json +1 -1
  3. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json +0 -55
  4. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json.d.ts +0 -55
  5. package/out/AccessManagementSystem.sol/AccessManagementSystem.json +1 -1
  6. package/out/AddressArray.sol/AddressArray.json +1 -1
  7. package/out/Allowances.sol/Allowances.json +1 -1
  8. package/out/ArrayLib.sol/ArrayLib.json +1 -1
  9. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json +0 -16
  10. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json.d.ts +0 -16
  11. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.json +1 -1
  12. package/out/Balances.sol/Balances.json +1 -1
  13. package/out/Base.sol/CommonBase.json +1 -1
  14. package/out/Base.sol/ScriptBase.json +1 -1
  15. package/out/Base.sol/TestBase.json +1 -1
  16. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json +0 -5
  17. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json.d.ts +0 -5
  18. package/out/BatchCallSystem.sol/BatchCallSystem.json +1 -1
  19. package/out/Bool.sol/Bool.json +1 -1
  20. package/out/Bytes.sol/Bytes.json +1 -1
  21. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +1 -1
  22. package/out/CallboundDelegations.sol/CallboundDelegations.json +1 -1
  23. package/out/{InitModule.sol/InitModule.abi.json → CoreModule.sol/CoreModule.abi.json} +23 -149
  24. package/out/{InitModule.sol/InitModule.abi.json.d.ts → CoreModule.sol/CoreModule.abi.json.d.ts} +23 -149
  25. package/out/CoreModule.sol/CoreModule.json +1 -0
  26. package/out/{RegistrationSystem.sol/RegistrationSystem.abi.json → CoreSystem.sol/CoreSystem.abi.json} +157 -167
  27. package/out/{RegistrationSystem.sol/RegistrationSystem.abi.json.d.ts → CoreSystem.sol/CoreSystem.abi.json.d.ts} +157 -167
  28. package/out/CoreSystem.sol/CoreSystem.json +1 -0
  29. package/out/DecodeSlice.sol/DecodeSlice.json +1 -1
  30. package/out/Delegation.sol/Delegation.json +1 -1
  31. package/out/DelegationControl.sol/DelegationControl.json +1 -1
  32. package/out/DelegationControlMock.sol/DelegationControlMock.json +1 -1
  33. package/out/ERC20.t.sol/ERC20Test.json +1 -1
  34. package/out/ERC20Metadata.sol/ERC20Metadata.json +1 -1
  35. package/out/ERC20Module.sol/ERC20Module.abi.json +24 -124
  36. package/out/ERC20Module.sol/ERC20Module.abi.json.d.ts +24 -124
  37. package/out/ERC20Module.sol/ERC20Module.json +1 -1
  38. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.abi.json +8 -121
  39. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.abi.json.d.ts +8 -121
  40. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.json +1 -1
  41. package/out/ERC20Registry.sol/ERC20Registry.json +1 -1
  42. package/out/ERC20System.sol/ERC20System.json +1 -1
  43. package/out/ERC721.t.sol/ERC721Recipient.json +1 -1
  44. package/out/ERC721.t.sol/ERC721Test.abi.json +1 -1
  45. package/out/ERC721.t.sol/ERC721Test.abi.json.d.ts +1 -1
  46. package/out/ERC721.t.sol/ERC721Test.json +1 -1
  47. package/out/ERC721.t.sol/ERC721TokenReceiver.json +1 -1
  48. package/out/ERC721.t.sol/NonERC721Recipient.json +1 -1
  49. package/out/ERC721.t.sol/RevertingERC721Recipient.json +1 -1
  50. package/out/ERC721.t.sol/WrongReturnDataERC721Recipient.json +1 -1
  51. package/out/ERC721Metadata.sol/ERC721Metadata.json +1 -1
  52. package/out/ERC721Module.sol/ERC721Module.abi.json +24 -124
  53. package/out/ERC721Module.sol/ERC721Module.abi.json.d.ts +24 -124
  54. package/out/ERC721Module.sol/ERC721Module.json +1 -1
  55. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.abi.json +8 -121
  56. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.abi.json.d.ts +8 -121
  57. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.json +1 -1
  58. package/out/ERC721Registry.sol/ERC721Registry.json +1 -1
  59. package/out/ERC721System.sol/ERC721System.json +1 -1
  60. package/out/EchoSubscriber.sol/EchoSubscriber.json +1 -1
  61. package/out/EncodeArray.sol/EncodeArray.json +1 -1
  62. package/out/FieldLayout.sol/FieldLayoutInstance.json +1 -1
  63. package/out/FieldLayout.sol/FieldLayoutLib.abi.json +23 -1
  64. package/out/FieldLayout.sol/FieldLayoutLib.abi.json.d.ts +23 -0
  65. package/out/FieldLayout.sol/FieldLayoutLib.json +1 -1
  66. package/out/FieldLayoutEncodeHelper.sol/FieldLayoutEncodeHelper.json +1 -1
  67. package/out/FunctionSelectors.sol/FunctionSelectors.json +1 -1
  68. package/out/FunctionSignatures.sol/FunctionSignatures.json +1 -1
  69. package/out/GasReporter.sol/GasReporter.json +1 -1
  70. package/out/Hook.sol/HookInstance.json +1 -1
  71. package/out/Hook.sol/HookLib.json +1 -1
  72. package/out/Hooks.sol/Hooks.json +1 -1
  73. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.abi.json +0 -13
  74. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.abi.json.d.ts +0 -13
  75. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +1 -1
  76. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +1 -1
  77. package/out/IBaseWorld.sol/IBaseWorld.abi.json +5 -230
  78. package/out/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +5 -230
  79. package/out/IBaseWorld.sol/IBaseWorld.json +1 -1
  80. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +1 -1
  81. package/out/ICoreSystem.sol/ICoreSystem.json +1 -0
  82. package/out/IDelegationControl.sol/IDelegationControl.json +1 -1
  83. package/out/IERC20.sol/IERC20.json +1 -1
  84. package/out/IERC20Errors.sol/IERC20Errors.json +1 -1
  85. package/out/IERC20Events.sol/IERC20Events.json +1 -1
  86. package/out/IERC20Mintable.sol/IERC20Mintable.json +1 -1
  87. package/out/IERC20System.sol/IERC20System.json +1 -1
  88. package/out/IERC721.sol/IERC721.json +1 -1
  89. package/out/IERC721Errors.sol/IERC721Errors.json +1 -1
  90. package/out/IERC721Events.sol/IERC721Events.json +1 -1
  91. package/out/IERC721Metadata.sol/IERC721Metadata.json +1 -1
  92. package/out/IERC721Mintable.sol/IERC721Mintable.json +1 -1
  93. package/out/IERC721Receiver.sol/IERC721Receiver.json +1 -1
  94. package/out/IModule.sol/IModule.abi.json +17 -4
  95. package/out/IModule.sol/IModule.abi.json.d.ts +17 -4
  96. package/out/IModule.sol/IModule.json +1 -1
  97. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.abi.json +1 -1
  98. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.abi.json.d.ts +1 -1
  99. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +1 -1
  100. package/out/IMulticall3.sol/IMulticall3.json +1 -1
  101. package/out/IPuppetFactorySystem.sol/IPuppetFactorySystem.json +1 -1
  102. package/out/IStore.sol/IStore.abi.json +3 -191
  103. package/out/IStore.sol/IStore.abi.json.d.ts +3 -191
  104. package/out/IStore.sol/IStore.json +1 -1
  105. package/out/IStoreData.sol/IStoreData.abi.json +0 -6
  106. package/out/IStoreData.sol/IStoreData.abi.json.d.ts +0 -6
  107. package/out/IStoreData.sol/IStoreData.json +1 -1
  108. package/out/IStoreErrors.sol/IStoreErrors.abi.json +3 -51
  109. package/out/IStoreErrors.sol/IStoreErrors.abi.json.d.ts +3 -51
  110. package/out/IStoreErrors.sol/IStoreErrors.json +1 -1
  111. package/out/IStoreEvents.sol/IStoreEvents.abi.json +0 -19
  112. package/out/IStoreEvents.sol/IStoreEvents.abi.json.d.ts +0 -19
  113. package/out/IStoreEvents.sol/IStoreEvents.json +1 -1
  114. package/out/IStoreHook.sol/IStoreHook.json +1 -1
  115. package/out/IStoreRead.sol/IStoreRead.json +1 -1
  116. package/out/IStoreRegistration.sol/IStoreRegistration.json +1 -1
  117. package/out/IStoreWrite.sol/IStoreWrite.abi.json +0 -19
  118. package/out/IStoreWrite.sol/IStoreWrite.abi.json.d.ts +0 -19
  119. package/out/IStoreWrite.sol/IStoreWrite.json +1 -1
  120. package/out/ISystemHook.sol/ISystemHook.json +1 -1
  121. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.abi.json +15 -0
  122. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.abi.json.d.ts +15 -0
  123. package/out/IUniqueEntitySystem.sol/IUniqueEntitySystem.json +1 -0
  124. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +1 -1
  125. package/out/IWorldErrors.sol/IWorldErrors.abi.json +0 -11
  126. package/out/IWorldErrors.sol/IWorldErrors.abi.json.d.ts +0 -11
  127. package/out/IWorldErrors.sol/IWorldErrors.json +1 -1
  128. package/out/IWorldKernel.sol/IWorldCall.json +1 -1
  129. package/out/IWorldKernel.sol/IWorldKernel.abi.json +2 -39
  130. package/out/IWorldKernel.sol/IWorldKernel.abi.json.d.ts +2 -39
  131. package/out/IWorldKernel.sol/IWorldKernel.json +1 -1
  132. package/out/IWorldKernel.sol/IWorldModuleInstallation.abi.json +1 -1
  133. package/out/IWorldKernel.sol/IWorldModuleInstallation.abi.json.d.ts +1 -1
  134. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +1 -1
  135. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json +4 -30
  136. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.abi.json.d.ts +4 -30
  137. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +1 -1
  138. package/out/InstalledModules.sol/InstalledModules.json +1 -1
  139. package/out/KeysInTable.sol/KeysInTable.json +1 -1
  140. package/out/KeysInTableHook.sol/KeysInTableHook.abi.json +0 -22
  141. package/out/KeysInTableHook.sol/KeysInTableHook.abi.json.d.ts +0 -22
  142. package/out/KeysInTableHook.sol/KeysInTableHook.json +1 -1
  143. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json +32 -3
  144. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json.d.ts +32 -3
  145. package/out/KeysInTableModule.sol/KeysInTableModule.json +1 -1
  146. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.abi.json +8 -41
  147. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.abi.json.d.ts +8 -41
  148. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.json +1 -1
  149. package/out/KeysWithValue.sol/KeysWithValue.json +1 -1
  150. package/out/KeysWithValueHook.sol/KeysWithValueHook.abi.json +0 -6
  151. package/out/KeysWithValueHook.sol/KeysWithValueHook.abi.json.d.ts +0 -6
  152. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1 -1
  153. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json +32 -3
  154. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json.d.ts +32 -3
  155. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +1 -1
  156. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.abi.json +8 -41
  157. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.abi.json.d.ts +8 -41
  158. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.json +1 -1
  159. package/out/Memory.sol/Memory.json +1 -1
  160. package/out/Module.sol/Module.abi.json +17 -4
  161. package/out/Module.sol/Module.abi.json.d.ts +17 -4
  162. package/out/Module.sol/Module.json +1 -1
  163. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json +1 -6
  164. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json.d.ts +1 -6
  165. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +1 -1
  166. package/out/NamespaceDelegationControl.sol/NamespaceDelegationControl.json +1 -1
  167. package/out/NamespaceOwner.sol/NamespaceOwner.json +1 -1
  168. package/out/OperatorApproval.sol/OperatorApproval.json +1 -1
  169. package/out/Owners.sol/Owners.json +1 -1
  170. package/out/PackedCounter.sol/PackedCounterInstance.abi.json +13 -1
  171. package/out/PackedCounter.sol/PackedCounterInstance.json +1 -1
  172. package/out/PackedCounter.sol/PackedCounterLib.json +1 -1
  173. package/out/Puppet.sol/Puppet.json +1 -1
  174. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.json +1 -1
  175. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.json +1 -1
  176. package/out/PuppetMaster.sol/PuppetMaster.json +1 -1
  177. package/out/PuppetModule.sol/PuppetModule.abi.json +23 -123
  178. package/out/PuppetModule.sol/PuppetModule.abi.json.d.ts +23 -123
  179. package/out/PuppetModule.sol/PuppetModule.json +1 -1
  180. package/out/PuppetModule.t.sol/PuppetModuleTest.abi.json +0 -14
  181. package/out/PuppetModule.t.sol/PuppetModuleTest.abi.json.d.ts +0 -14
  182. package/out/PuppetModule.t.sol/PuppetModuleTest.json +1 -1
  183. package/out/PuppetModule.t.sol/PuppetTestSystem.json +1 -1
  184. package/out/PuppetRegistry.sol/PuppetRegistry.json +1 -1
  185. package/out/ResourceAccess.sol/ResourceAccess.json +1 -1
  186. package/out/ResourceId.sol/ResourceIdInstance.json +1 -1
  187. package/out/ResourceId.sol/ResourceIdLib.json +1 -1
  188. package/out/ResourceIds.sol/ResourceIds.json +1 -1
  189. package/out/RevertSubscriber.sol/RevertSubscriber.json +1 -1
  190. package/out/Schema.sol/SchemaInstance.json +1 -1
  191. package/out/Schema.sol/SchemaLib.abi.json +18 -1
  192. package/out/{ISchemaErrors.sol/ISchemaErrors.abi.json.d.ts → Schema.sol/SchemaLib.abi.json.d.ts} +2 -2
  193. package/out/Schema.sol/SchemaLib.json +1 -1
  194. package/out/SchemaEncodeHelper.sol/SchemaEncodeHelper.json +1 -1
  195. package/out/Slice.sol/SliceInstance.json +1 -1
  196. package/out/Slice.sol/SliceLib.abi.json +23 -1
  197. package/out/Slice.sol/SliceLib.json +1 -1
  198. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json +23 -123
  199. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json.d.ts +23 -123
  200. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +1 -1
  201. package/out/StandardDelegationsModule.t.sol/StandardDelegationsModuleTest.json +1 -1
  202. package/out/StdAssertions.sol/StdAssertions.json +1 -1
  203. package/out/StdChains.sol/StdChains.json +1 -1
  204. package/out/StdCheats.sol/StdCheats.json +1 -1
  205. package/out/StdCheats.sol/StdCheatsSafe.json +1 -1
  206. package/out/StdError.sol/stdError.json +1 -1
  207. package/out/StdInvariant.sol/StdInvariant.json +1 -1
  208. package/out/StdJson.sol/stdJson.json +1 -1
  209. package/out/StdMath.sol/stdMath.json +1 -1
  210. package/out/StdStorage.sol/stdStorage.json +1 -1
  211. package/out/StdStorage.sol/stdStorageSafe.json +1 -1
  212. package/out/StdStyle.sol/StdStyle.json +1 -1
  213. package/out/StdUtils.sol/StdUtils.json +1 -1
  214. package/out/Storage.sol/Storage.json +1 -1
  215. package/out/StoreCore.sol/StoreCore.abi.json +132 -1
  216. package/out/StoreCore.sol/StoreCore.abi.json.d.ts +132 -0
  217. package/out/StoreCore.sol/StoreCore.json +1 -1
  218. package/out/StoreCore.sol/StoreCoreInternal.json +1 -1
  219. package/out/StoreData.sol/StoreData.abi.json +0 -22
  220. package/out/StoreData.sol/StoreData.abi.json.d.ts +0 -22
  221. package/out/StoreData.sol/StoreData.json +1 -1
  222. package/out/StoreHook.sol/StoreHook.json +1 -1
  223. package/out/StoreHooks.sol/StoreHooks.json +1 -1
  224. package/out/StoreRead.sol/StoreRead.abi.json +0 -16
  225. package/out/StoreRead.sol/StoreRead.abi.json.d.ts +0 -16
  226. package/out/StoreRead.sol/StoreRead.json +1 -1
  227. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json +8 -159
  228. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json.d.ts +8 -159
  229. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +1 -1
  230. package/out/StoreSwitch.sol/StoreSwitch.json +1 -1
  231. package/out/System.sol/System.json +1 -1
  232. package/out/SystemCall.sol/SystemCall.json +1 -1
  233. package/out/SystemHook.sol/SystemHook.json +1 -1
  234. package/out/SystemHooks.sol/SystemHooks.json +1 -1
  235. package/out/SystemRegistry.sol/SystemRegistry.json +1 -1
  236. package/out/SystemSwitch.sol/SystemSwitch.json +1 -1
  237. package/out/SystemSwitch.t.sol/EchoSystem.abi.json +1 -98
  238. package/out/SystemSwitch.t.sol/EchoSystem.abi.json.d.ts +1 -98
  239. package/out/SystemSwitch.t.sol/EchoSystem.json +1 -1
  240. package/out/SystemSwitch.t.sol/SystemSwitchTest.abi.json +15 -43
  241. package/out/SystemSwitch.t.sol/SystemSwitchTest.abi.json.d.ts +15 -43
  242. package/out/SystemSwitch.t.sol/SystemSwitchTest.json +1 -1
  243. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.json +1 -1
  244. package/out/SystemboundDelegations.sol/SystemboundDelegations.json +1 -1
  245. package/out/Systems.sol/Systems.json +1 -1
  246. package/out/Tables.sol/Tables.json +1 -1
  247. package/out/Test.sol/Test.json +1 -1
  248. package/out/TightCoder.sol/TightCoder.json +1 -1
  249. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +1 -1
  250. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1 -1
  251. package/out/TokenApproval.sol/TokenApproval.json +1 -1
  252. package/out/TokenURI.sol/TokenURI.json +1 -1
  253. package/out/TotalSupply.sol/TotalSupply.json +1 -1
  254. package/out/TwoFields.sol/TwoFields.json +1 -1
  255. package/out/UniqueEntity.sol/UniqueEntity.json +1 -1
  256. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json +25 -125
  257. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json.d.ts +25 -125
  258. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +1 -1
  259. package/out/UniqueEntityModule.t.sol/UniqueEntityModuleTest.json +1 -1
  260. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json +0 -68
  261. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json.d.ts +0 -68
  262. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.json +1 -1
  263. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +1 -1
  264. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +1 -1
  265. package/out/UserDelegationControl.sol/UserDelegationControl.json +1 -1
  266. package/out/Vm.sol/Vm.json +1 -1
  267. package/out/Vm.sol/VmSafe.json +1 -1
  268. package/out/World.sol/World.abi.json +124 -53
  269. package/out/World.sol/World.abi.json.d.ts +124 -53
  270. package/out/World.sol/World.json +1 -1
  271. package/out/World.t.sol/EchoSystemHook.json +1 -1
  272. package/out/World.t.sol/IWorldTestSystem.abi.json +1 -1
  273. package/out/World.t.sol/IWorldTestSystem.abi.json.d.ts +1 -1
  274. package/out/World.t.sol/IWorldTestSystem.json +1 -1
  275. package/out/World.t.sol/PayableFallbackSystem.json +1 -1
  276. package/out/World.t.sol/RevertSystemHook.json +1 -1
  277. package/out/World.t.sol/WorldTest.abi.json +8 -76
  278. package/out/World.t.sol/WorldTest.abi.json.d.ts +8 -76
  279. package/out/World.t.sol/WorldTest.json +1 -1
  280. package/out/World.t.sol/WorldTestSystem.json +1 -1
  281. package/out/WorldContext.sol/WorldContextConsumer.json +1 -1
  282. package/out/WorldContext.sol/WorldContextConsumerLib.json +1 -1
  283. package/out/WorldContext.sol/WorldContextProviderLib.json +1 -1
  284. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json +4 -52
  285. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json.d.ts +4 -52
  286. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1 -1
  287. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +1 -1
  288. package/out/WorldResourceId.sol/WorldResourceIdLib.json +1 -1
  289. package/out/console.sol/console.json +1 -1
  290. package/out/console2.sol/console2.json +1 -1
  291. package/out/constants.sol/LayoutOffsets.json +1 -1
  292. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json +10 -274
  293. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +10 -274
  294. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +1 -1
  295. package/out/query.t.sol/QueryTest.abi.json +8 -41
  296. package/out/query.t.sol/QueryTest.abi.json.d.ts +8 -41
  297. package/out/query.t.sol/QueryTest.json +1 -1
  298. package/out/safeconsole.sol/safeconsole.json +1 -1
  299. package/out/src/IERC165.sol/IERC165.json +1 -1
  300. package/out/tables/Balances.sol/Balances.json +1 -1
  301. package/out/test.sol/DSTest.json +1 -1
  302. package/out/world/src/IERC165.sol/IERC165.json +1 -1
  303. package/package.json +9 -9
  304. package/src/index.sol +6 -6
  305. package/src/interfaces/IBaseWorld.sol +4 -3
  306. package/src/interfaces/IERC20System.sol +1 -2
  307. package/src/interfaces/IPuppetFactorySystem.sol +1 -2
  308. package/src/interfaces/IUniqueEntitySystem.sol +7 -0
  309. package/src/modules/erc20-puppet/ERC20Module.sol +25 -16
  310. package/src/modules/erc20-puppet/ERC20System.sol +1 -1
  311. package/src/modules/erc20-puppet/IERC20.sol +1 -1
  312. package/src/modules/erc20-puppet/IERC20Errors.sol +1 -1
  313. package/src/modules/erc20-puppet/IERC20Events.sol +1 -1
  314. package/src/modules/erc20-puppet/IERC20Mintable.sol +1 -1
  315. package/src/modules/erc20-puppet/constants.sol +2 -1
  316. package/src/modules/erc20-puppet/registerERC20.sol +1 -1
  317. package/src/modules/erc20-puppet/tables/Allowances.sol +43 -12
  318. package/src/modules/erc20-puppet/tables/ERC20Metadata.sol +44 -13
  319. package/src/modules/erc20-puppet/tables/ERC20Registry.sol +42 -12
  320. package/src/modules/erc20-puppet/tables/TotalSupply.sol +41 -12
  321. package/src/modules/erc20-puppet/utils.sol +1 -1
  322. package/src/modules/erc721-puppet/ERC721Module.sol +25 -16
  323. package/src/modules/erc721-puppet/ERC721System.sol +1 -1
  324. package/src/modules/erc721-puppet/IERC721.sol +1 -1
  325. package/src/modules/erc721-puppet/IERC721Errors.sol +1 -1
  326. package/src/modules/erc721-puppet/IERC721Events.sol +1 -1
  327. package/src/modules/erc721-puppet/IERC721Metadata.sol +1 -2
  328. package/src/modules/erc721-puppet/IERC721Mintable.sol +1 -1
  329. package/src/modules/erc721-puppet/IERC721Receiver.sol +1 -2
  330. package/src/modules/erc721-puppet/constants.sol +2 -1
  331. package/src/modules/erc721-puppet/registerERC721.sol +1 -1
  332. package/src/modules/erc721-puppet/tables/ERC721Metadata.sol +43 -12
  333. package/src/modules/erc721-puppet/tables/ERC721Registry.sol +42 -12
  334. package/src/modules/erc721-puppet/tables/OperatorApproval.sol +43 -12
  335. package/src/modules/erc721-puppet/tables/Owners.sol +42 -12
  336. package/src/modules/erc721-puppet/tables/TokenApproval.sol +42 -12
  337. package/src/modules/erc721-puppet/tables/TokenURI.sol +42 -12
  338. package/src/modules/erc721-puppet/utils.sol +1 -1
  339. package/src/modules/keysintable/KeysInTableHook.sol +1 -1
  340. package/src/modules/keysintable/KeysInTableModule.sol +23 -17
  341. package/src/modules/keysintable/constants.sol +1 -1
  342. package/src/modules/keysintable/getKeysInTable.sol +1 -1
  343. package/src/modules/keysintable/hasKey.sol +1 -1
  344. package/src/modules/keysintable/query.sol +1 -1
  345. package/src/modules/keysintable/tables/KeysInTable.sol +51 -15
  346. package/src/modules/keysintable/tables/UsedKeysIndex.sol +51 -17
  347. package/src/modules/keyswithvalue/KeysWithValueHook.sol +1 -1
  348. package/src/modules/keyswithvalue/KeysWithValueModule.sol +17 -22
  349. package/src/modules/keyswithvalue/constants.sol +1 -1
  350. package/src/modules/keyswithvalue/getKeysWithValue.sol +1 -1
  351. package/src/modules/keyswithvalue/getTargetTableId.sol +1 -1
  352. package/src/modules/keyswithvalue/tables/KeysWithValue.sol +43 -13
  353. package/src/modules/puppet/Puppet.sol +1 -1
  354. package/src/modules/puppet/PuppetDelegationControl.sol +1 -1
  355. package/src/modules/puppet/PuppetFactorySystem.sol +1 -1
  356. package/src/modules/puppet/PuppetMaster.sol +1 -1
  357. package/src/modules/puppet/PuppetModule.sol +9 -24
  358. package/src/modules/puppet/constants.sol +3 -4
  359. package/src/modules/puppet/createPuppet.sol +1 -1
  360. package/src/modules/puppet/tables/PuppetRegistry.sol +42 -12
  361. package/src/modules/puppet/utils.sol +1 -1
  362. package/src/modules/std-delegations/CallboundDelegationControl.sol +1 -1
  363. package/src/modules/std-delegations/StandardDelegationsModule.sol +6 -2
  364. package/src/modules/std-delegations/SystemboundDelegationControl.sol +1 -1
  365. package/src/modules/std-delegations/TimeboundDelegationControl.sol +1 -1
  366. package/src/modules/std-delegations/constants.sol +3 -1
  367. package/src/modules/std-delegations/tables/CallboundDelegations.sol +49 -14
  368. package/src/modules/std-delegations/tables/SystemboundDelegations.sol +48 -14
  369. package/src/modules/std-delegations/tables/TimeboundDelegations.sol +47 -14
  370. package/src/modules/tokens/tables/Balances.sol +42 -12
  371. package/src/modules/uniqueentity/UniqueEntityModule.sol +15 -16
  372. package/src/modules/uniqueentity/UniqueEntitySystem.sol +1 -1
  373. package/src/modules/uniqueentity/constants.sol +3 -3
  374. package/src/modules/uniqueentity/getUniqueEntity.sol +3 -2
  375. package/src/modules/uniqueentity/tables/UniqueEntity.sol +42 -13
  376. package/src/modules/utils/ArrayLib.sol +2 -2
  377. package/src/utils/AccessControlLib.sol +1 -2
  378. package/src/utils/SystemSwitch.sol +10 -8
  379. package/dist/mud.config.d.ts +0 -256
  380. package/out/ERC165Checker.sol/ERC165Checker.json +0 -1
  381. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json +0 -88
  382. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.abi.json.d.ts +0 -88
  383. package/out/IFieldLayoutErrors.sol/IFieldLayoutErrors.json +0 -1
  384. package/out/IModuleErrors.sol/IModuleErrors.abi.json +0 -28
  385. package/out/IModuleErrors.sol/IModuleErrors.abi.json.d.ts +0 -28
  386. package/out/IModuleErrors.sol/IModuleErrors.json +0 -1
  387. package/out/IPackedCounterErrors.sol/IPackedCounterErrors.abi.json +0 -13
  388. package/out/IPackedCounterErrors.sol/IPackedCounterErrors.json +0 -1
  389. package/out/IRegistrationSystem.sol/IRegistrationSystem.abi.json +0 -1
  390. package/out/IRegistrationSystem.sol/IRegistrationSystem.json +0 -1
  391. package/out/ISchemaErrors.sol/ISchemaErrors.abi.json +0 -18
  392. package/out/ISchemaErrors.sol/ISchemaErrors.json +0 -1
  393. package/out/ISliceErrors.sol/ISliceErrors.abi.json +0 -23
  394. package/out/ISliceErrors.sol/ISliceErrors.json +0 -1
  395. package/out/IWorldEvents.sol/IWorldEvents.abi.json +0 -15
  396. package/out/IWorldEvents.sol/IWorldEvents.abi.json.d.ts +0 -15
  397. package/out/IWorldEvents.sol/IWorldEvents.json +0 -1
  398. package/out/InitModule.sol/InitModule.json +0 -1
  399. package/out/InitModuleAddress.sol/InitModuleAddress.abi.json +0 -1
  400. package/out/InitModuleAddress.sol/InitModuleAddress.json +0 -1
  401. package/out/LimitedCallContext.sol/LimitedCallContext.abi.json +0 -7
  402. package/out/LimitedCallContext.sol/LimitedCallContext.abi.json.d.ts +0 -7
  403. package/out/LimitedCallContext.sol/LimitedCallContext.json +0 -1
  404. package/out/RegistrationSystem.sol/RegistrationSystem.json +0 -1
  405. /package/out/{ERC165Checker.sol/ERC165Checker.abi.json → ICoreSystem.sol/ICoreSystem.abi.json} +0 -0
  406. /package/out/{IPackedCounterErrors.sol/IPackedCounterErrors.abi.json.d.ts → PackedCounter.sol/PackedCounterInstance.abi.json.d.ts} +0 -0
  407. /package/out/{ISliceErrors.sol/ISliceErrors.abi.json.d.ts → Slice.sol/SliceLib.abi.json.d.ts} +0 -0
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"value","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"install","inputs":[{"name":"encodedArgs","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRoot","inputs":[{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"pure"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"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":"ERC721Module_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"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":"Module_AlreadyInstalled","inputs":[]},{"type":"error","name":"Module_MissingDependency","inputs":[{"name":"dependency","type":"address","internalType":"address"}]},{"type":"error","name":"Module_NonRootInstallNotSupported","inputs":[]},{"type":"error","name":"Module_RootInstallNotSupported","inputs":[]},{"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":"0x60c0604081905230608052620000159062000053565b604051809103906000f08015801562000032573d6000803e3d6000fd5b506001600160a01b031660a0523480156200004c57600080fd5b5062000061565b61556d806200340283390190565b60805160a05161337b6200008760003960006102d7015260006101fb015261337b6000f3fe608060405234801561001057600080fd5b50600436106100725760003560e01c806345ec93541161005057806345ec9354146100d45780637c5b0335146100e7578063e1af802c146100fa57600080fd5b806301ffc9a714610077578063119df25f1461009f57806313861fb5146100bf575b600080fd5b61008a610085366004612b12565b610102565b60405190151581526020015b60405180910390f35b6100a76101e7565b6040516001600160a01b039091168152602001610096565b6100d26100cd366004612bec565b6101f6565b005b604051601f193601358152602001610096565b6100d26100f5366004612bec565b610749565b6100a761077b565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019557507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101e157507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101f1610785565b905090565b6102207f0000000000000000000000000000000000000000000000000000000000000000826107b7565b600080828060200190518101906102379190612ce0565b90925090507f9a8d9cc8cdced28f8a8f8f9a8c0000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff198316016102c6576040517f2ca07d8400000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b60006102d061077b565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316838660405160240161033b9291906001600160a01b0392909216825271ffffffffffffffffffffffffffffffffffff1916602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c2000000000000000000000000000000000000000000000000000000001790525161039e9190612dc3565b600060405180830381855af49150503d80600081146103d9576040519150601f19603f3d011682016040523d82523d6000602084013e6103de565b606091505b5091509150816103f1576103f1816107fc565b6104036103fd86610804565b85610836565b600061040e86610893565b9050600061041c85836108e0565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601089901c16176001600160a01b03861663ef5d6bbb8261047d6101e7565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b1580156104dc57600080fd5b505af11580156104f0573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610572935001905060405160208183030381529060405261056d90612ddf565b610bde565b6106bf576040517f6e7300000000000000000000000000000000000000000000000000000000000060208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201526001600160a01b0387169063b29e4089906030016040516020818303038152906040526105f190612ddf565b6040518263ffffffff1660e01b815260040161060f91815260200190565b600060405180830381600087803b15801561062957600080fd5b505af115801561063d573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f455243373231526567697374727900000000000000000000000000000000000060308201526106bf93500190506040516020818303038152906040526106ba90612ddf565b610c6b565b60408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f4552433732315265676973747279000000000000000000000000000000000000603082015261073e910160405160208183030381529060405261073790612ddf565b8284610ce7565b505050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006101f1610da7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107b45750335b90565b6107c18282610db1565b156107f8576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b805160208201fd5b60006101e1613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610dcb565b60606000610851836000015184602001518560400151610e51565b9050600061086c846000015185602001518660400151610e7a565b60408051600081526020810190915290915061088b8682868686610ea9565b505050505050565b60006101e17f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000610dcb565b604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f466163746f72790000000000000000000000000000000000000000000000000060308201526000916001600160a01b03851691633ae7af08910160405160208183030381529060405261098390612ddf565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610a20929190600401612e2f565b6000604051808303816000875af1158015610a3f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a679190810190612e48565b806020019051810190610a7a9190612e91565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610b5d90612ddf565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610ba692919060248101612eba565b600060405180830381600087803b158015610bc057600080fd5b505af1158015610bd4573d6000803e3d6000fd5b5050505092915050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610c1757610c17612ed9565b60209081029190910101526000610c577f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f5e565b9050610c638160f81c90565b949350505050565b610ce4817e140100140000000000000000000000000000000000000000000000000000007e2001005f0000000000000000000000000000000000000000000000000000007e14010061000000000000000000000000000000000000000000000000000000610cd761101b565b610cdf6110a0565b611117565b50565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610d1d57610d1d612ed9565b602002602001018181525050610da18482600085604051602001610d6c919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e140100140000000000000000000000000000000000000000000000000000006111d1565b50505050565b60006101f1611247565b6000610dc4838380519060200120611286565b9392505050565b6000610dd960706010612f05565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b6000610c63845184518451608881901b606083901b603885901b85850184011717179392505050565b6060838383604051602001610e9193929190612f18565b60405160208183030381529060405290509392505050565b6000610eb3611247565b9050306001600160a01b03821603610ed757610ed28686868686611340565b61088b565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90610f249089908990899089908990600401612f97565b600060405180830381600087803b158015610f3e57600080fd5b505af1158015610f52573d6000803e3d6000fd5b50505050505050505050565b600080610f69611247565b9050306001600160a01b03821603610f8f57610f878686868661135d565b915050610c63565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610fda908990899089908990600401612fe8565b602060405180830381865afa158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f879190613017565b604080516001808252818301909252606091816020015b60608152602001906001900390816110325790505090506040518060400160405280600b81526020017f6e616d65737061636549640000000000000000000000000000000000000000008152508160008151811061109257611092612ed9565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816110b75790505090506040518060400160405280600c81526020017f746f6b656e4164647265737300000000000000000000000000000000000000008152508160008151811061109257611092612ed9565b6000611121611247565b9050306001600160a01b038216036111465761114187878787878761138a565b6111c8565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990611195908a908a908a908a908a908a9060040161308a565b600060405180830381600087803b1580156111af57600080fd5b505af11580156111c3573d6000803e3d6000fd5b505050505b50505050505050565b60006111db611247565b9050306001600160a01b038216036111fa57610ed286868686866117e5565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610f2490899089908990899089906004016130d4565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611281573391505090565b919050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b816000815181106112cb576112cb612ed9565b60200260200101818152505082816001815181106112eb576112eb612ed9565b6020908102919091010152600061132b7f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610f5e565b90506113378160f81c90565b95945050505050565b61135685858585856113518b6117fa565b61187f565b5050505050565b600061133761136c8686611bb8565b60ff858116601b0360080285901c166113858587611c0e565b611c47565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061140357507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561146457613a3160f11b868760405160200161142291815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102bd93929160040161311b565b61146d85611c98565b611478846001611edf565b611483836000611edf565b60e084901c60e885901c0160ff168251146114e35760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b60e085901c60e886901c0160ff168151146115435760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146115bb5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b6115c48561207b565b6115cd8461207b565b1461161f576115db8561207b565b6115e48461207b565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b611628856120ad565b611631846120ad565b146116835761163f856120ad565b611648846120ad565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b60005b61168f8661207b565b81101561172a576116b96116a385836120ca565b60c58111156116b4576116b461315c565b6120eb565b6008601b8390030287901c60ff1614611722576008601b8290030286901c60ff166116e76116a386846120ca565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b600101611686565b506117348661214b565b1561178e57858660405160200161174d91815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102bd9291600401612e2f565b6117da86868686866040516020016117a69190613172565b604051602081830303815290604052866040516020016117c69190613172565b6040516020818303038152906040526121c4565b61088b86600161227f565b61135685856117f48487611c0e565b85612325565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161184957507e60030220202000000000000000000000000000000000000000000000000000919050565b6101e16118767f746273746f72650000000000000000005461626c657300000000000000000000846125c0565b60206000611c47565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361190b57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516118fe9493929190613185565b60405180910390a261088b565b6000611916876125dc565b905060005b81518110156119ef57600082828151811061193857611938612ed9565b602002602001015190506119646001826affffffffffffffffffffff191661266590919063ffffffff16565b156119e6576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906119b3908c908c908c908c908c908c906004016131cf565b600060405180830381600087803b1580156119cd57600080fd5b505af11580156119e1573d6000803e3d6000fd5b505050505b5060010161191b565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611a269493929190613185565b60405180910390a26000611a3a8888611bb8565b90506000602087019050611a52826000895184612683565b6000611a5d856120ad565b1115611ae1576000611a6f8a8a612742565b878155905060208601915060008060005b611a89886120ad565b8160ff161015611adc57611a9e8d8d83612798565b9250611ab98a8260ff166028026038011c64ffffffffff1690565b9150611ac88360008488612683565b611ad28286612f05565b9450600101611a80565b505050505b60005b8351811015610f52576000848281518110611b0157611b01612ed9565b60200260200101519050611b2d6002826affffffffffffffffffffff191661266590919063ffffffff16565b15611baf576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611b7c908e908e908e908e908e908e906004016131cf565b600060405180830381600087803b158015611b9657600080fd5b505af1158015611baa573d6000803e3d6000fd5b505050505b50600101611ae4565b60008282604051602001611bcd929190613228565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611c3f57611c3560ff601b83900360080287901c1683612f05565b9150600101611c13565b509392505050565b600060208210611c6d57602082048401935060208281611c6957611c69613264565b0691505b508254600882021b602082900380841115611c3f576001850154600882021c82179150509392505050565b80611ccf576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611cda826120ad565b90506005811115611d21576040517f6793df6200000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016102bd565b6000611d2c8361207b565b90506000611d3a8383612f05565b9050601c811115611d81576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016102bd565b6000805b83811015611e2c5760ff601b82900360080287901c166000819003611dd9576040517f53b2dd05000000000000000000000000000000000000000000000000000000008152600481018390526024016102bd565b6020811115611e17576040517f7237f237000000000000000000000000000000000000000000000000000000008152600481018390526024016102bd565b611e218184612f05565b925050600101611d85565b50611e3685612818565b8114611e8257611e4585612818565b6040517feba964de0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016102bd565b825b601c81101561088b5760ff601b82900360080287901c168015611ed6576040517f1d8d44db000000000000000000000000000000000000000000000000000000008152600481018390526024016102bd565b50600101611e84565b80158015611eeb575081155b15611f0c5760405163d498615960e01b8152600060048201526024016102bd565b6000611f17836120ad565b90506005811115611f3e5760405163d498615960e01b8152600481018290526024016102bd565b6000611f498461207b565b90506000611f578383612f05565b9050601c811115611f7e5760405163d498615960e01b8152600481018290526024016102bd565b6000805b83811015611fea576000611f996116a389846120ca565b905080600003611fd5576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611fdf8184612f05565b925050600101611f82565b50611ff486612818565b811461201f5761200386612818565b60405163d498615960e01b81526004016102bd91815260200190565b825b828110156111c85760006120386116a389846120ca565b90508015612072576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101612021565b60006008600161208d6002602061327a565b612097919061327a565b6120a1919061328d565b8260ff911c1692915050565b600060086001806120c06002602061327a565b61208d919061327a565b6000601b8290036008028360ff911c1660c5811115610dc457610dc461315c565b6000808260c58111156121005761210061315c565b60ff169050606181101561211a57601f1660010192915050565b60618360c581111561212e5761212e61315c565b0361213c5750601492915050565b50600092915050565b50919050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061218457612184612ed9565b60209081029190910101526000610c577f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b61135d565b60006121d186868661283b565b905060006121df848461285d565b905060006121ed858561287a565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061222757612227612ed9565b6020908102919091010152610f527f746273746f72650000000000000000005461626c657300000000000000000000828686867e6003022020200000000000000000000000000000000000000000000000000061187f565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106122b5576122b5612ed9565b6020026020010181815250506123207f746273746f72650000000000000000005265736f75726365496473000000000060001b8260008560405160200161230391151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b6117e5565b505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036123af57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516123a2939291906132a4565b60405180910390a2610da1565b60006123bb8585611bb8565b905060006123c8866125dc565b905060005b815181101561249d5760008282815181106123ea576123ea612ed9565b602002602001015190506124166004826affffffffffffffffffffff191661266590919063ffffffff16565b15612494576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612461908b908b908b908b906004016132e1565b600060405180830381600087803b15801561247b57600080fd5b505af115801561248f573d6000803e3d6000fd5b505050505b506001016123cd565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516124d2939291906132a4565b60405180910390a26124ed828565ffffffffffff16856128a6565b60005b81518110156111c857600082828151811061250d5761250d612ed9565b602002602001015190506125396008826affffffffffffffffffffff191661266590919063ffffffff16565b156125b7576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612584908b908b908b908b906004016132e1565b600060405180830381600087803b15801561259e57600080fd5b505af11580156125b2573d6000803e3d6000fd5b505050505b506001016124f0565b6040805160208101849052908101829052600090606001611bcd565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061261657612616612ed9565b6020908102919091010152600061264e7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836128bc565b9050610c6361266082600084516128f6565b612984565b60008160ff16826126768560581c90565b1660ff1614905092915050565b82156126fd57602083106126ad576020830484019350602083816126a9576126a9613264565b0692505b82156126fd5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116126ee575050610da1565b50600194909401939182900391015b5b6020821061271f5780518455600190930192601f19909101906020016126fe565b8115610da1576000600019600884021c8554835182191691161785555050505050565b60008282604051602001612757929190613228565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b600083836040516020016127ad929190613228565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b600060086128286002602061327a565b612832919061328d565b9190911c919050565b6040805160208101859052908101839052606081810183905290608001610e91565b8151815160009181810160389190911b1760609190911b17610dc4565b6060828260405160200161288f92919061331a565b604051602081830303815290604052905092915050565b612320838383516128b78560200190565b612683565b6060610c636128cc858585612798565b60006128f1856128dc8989612995565b9060ff166028026038011c64ffffffffff1690565b6129a8565b6000818311806129065750835182115b15612943578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102bd93929190613349565b602084016129518482612f05565b9050600061295f858561327a565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610dc483601560006129cb565b6000610dc46129a48484612742565b5490565b60405160208101601f19603f8484010116604052828252611c3f85858584612a46565b606060006129d98560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816129ff576129ff613264565b04905060405193506020840160208202810160405281855260005b82811015612a3a578451871c825293870193602090910190600101612a1a565b50505050509392505050565b8215612acd5760208310612a7057602083048401935060208381612a6c57612a6c613264565b0692505b8215612acd576020839003600081841015612a935750600019600884021c612a9d565b50600019600882021c5b8554600886021b818451168219821617845250818411612abe575050610da1565b50600194909401939182900391015b5b60208210612aef5783548152600190930192601f1990910190602001612ace565b8115610da1576000600019600884021c8251865482191691161782525050505050565b600060208284031215612b2457600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610dc457600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715612b8d57612b8d612b54565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612bbc57612bbc612b54565b604052919050565b600067ffffffffffffffff821115612bde57612bde612b54565b50601f01601f191660200190565b600060208284031215612bfe57600080fd5b813567ffffffffffffffff811115612c1557600080fd5b8201601f81018413612c2657600080fd5b8035612c39612c3482612bc4565b612b93565b818152856020838501011115612c4e57600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b83811015612c87578181015183820152602001612c6f565b50506000910152565b6000612c9e612c3484612bc4565b9050828152838383011115612cb257600080fd5b610dc4836020830184612c6c565b600082601f830112612cd157600080fd5b610dc483835160208501612c90565b60008060408385031215612cf357600080fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612d1657600080fd5b602084015190925067ffffffffffffffff80821115612d3457600080fd5b9084019060608287031215612d4857600080fd5b612d50612b6a565b825182811115612d5f57600080fd5b612d6b88828601612cc0565b825250602083015182811115612d8057600080fd5b612d8c88828601612cc0565b602083015250604083015182811115612da457600080fd5b612db088828601612cc0565b6040830152508093505050509250929050565b60008251612dd5818460208701612c6c565b9190910192915050565b805160208083015191908110156121455760001960209190910360031b1b16919050565b60008151808452612e1b816020860160208601612c6c565b601f01601f19169290920160200192915050565b828152604060208201526000610c636040830184612e03565b600060208284031215612e5a57600080fd5b815167ffffffffffffffff811115612e7157600080fd5b8201601f81018413612e8257600080fd5b610c6384825160208401612c90565b600060208284031215612ea357600080fd5b81516001600160a01b0381168114610dc457600080fd5b8381528260208201526060604082015260006113376060830184612e03565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156101e1576101e1612eef565b60008451612f2a818460208901612c6c565b845190830190612f3e818360208901612c6c565b8451910190612f51818360208801612c6c565b0195945050505050565b60008151808452602080850194506020840160005b83811015612f8c57815187529582019590820190600101612f70565b509495945050505050565b85815260a060208201526000612fb060a0830187612f5b565b8281036040840152612fc28187612e03565b90508460608401528281036080840152612fdc8185612e03565b98975050505050505050565b8481526080602082015260006130016080830186612f5b565b60ff949094166040830152506060015292915050565b60006020828403121561302957600080fd5b5051919050565b60008282518085526020808601955060208260051b8401016020860160005b8481101561307d57601f1986840301895261306b838351612e03565b9884019892509083019060010161304f565b5090979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006130b560c0830185613030565b82810360a08401526130c78185613030565b9998505050505050505050565b85815260a0602082015260006130ed60a0830187612f5b565b60ff8616604084015282810360608401526131088186612e03565b9150508260808301529695505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006113376060830184612e03565b634e487b7160e01b600052602160045260246000fd5b602081526000610dc46020830184613030565b6080815260006131986080830187612f5b565b82810360208401526131aa8187612e03565b905084604084015282810360608401526131c48185612e03565b979650505050505050565b86815260c0602082015260006131e860c0830188612f5b565b82810360408401526131fa8188612e03565b905085606084015282810360808401526132148186612e03565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b828110156132575781518452928401929084019060010161323b565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b818103818111156101e1576101e1612eef565b80820281158282048414176101e1576101e1612eef565b6060815260006132b76060830186612f5b565b65ffffffffffff8516602084015282810360408401526132d78185612e03565b9695505050505050565b8481526080602082015260006132fa6080830186612f5b565b65ffffffffffff8516604084015282810360608401526131c48185612e03565b6000835161332c818460208801612c6c565b835190830190613340818360208801612c6c565b01949350505050565b60608152600061335c6060830186612e03565b6020830194909452506040015291905056fea164736f6c6343000818000a608060405234801561001057600080fd5b5061554d806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e366004612431565b610045565b005b6000601082901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167f6e73000000000000000000000000000000000000000000000000000000000000176040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905290915073ffffffffffffffffffffffffffffffffffffffff84169063b29e408990602401600060405180830381600087803b1580156100f957600080fd5b505af115801561010d573d6000803e3d6000fd5b5050505061012261011d83610255565b61028d565b61013361012e83610309565b61033b565b61014461013f83610397565b6103c9565b61015561015083610425565b610457565b610166610161836104af565b6104e1565b6101776101728361053d565b61056f565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a961019c846105c1565b6040516101a890612424565b604051809103906000f0801580156101c4573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561023857600080fd5b505af115801561024c573d6000803e3d6000fd5b50505050505050565b6000610287613a3160f11b837f4f70657261746f72417070726f76616c0000000000000000000000000000000061060a565b92915050565b610306817e010100010000000000000000000000000000000000000000000000000000007e280200616100000000000000000000000000000000000000000000000000007e010100600000000000000000000000000000000000000000000000000000006102f9610691565b610301610769565b6107e0565b50565b6000610287613a3160f11b837f4f776e657273000000000000000000000000000000000000000000000000000061060a565b610306817e14010014000000000000000000000000000000000000000000000000000000632001001f60d81b7e1401006100000000000000000000000000000000000000000000000000000061038f6108b3565b61030161092a565b6000610287613a3160f11b837f546f6b656e417070726f76616c0000000000000000000000000000000000000061060a565b610306817e14010014000000000000000000000000000000000000000000000000000000632001001f60d81b7e1401006100000000000000000000000000000000000000000000000000000061041d6108b3565b6103016109a1565b6000610287613a3160f11b837f546f6b656e55524900000000000000000000000000000000000000000000000061060a565b610306817c0100000000000000000000000000000000000000000000000000000000632001001f60d81b7c01c50000000000000000000000000000000000000000000000000000006104a76108b3565b610301610a18565b6000610287613a3160f11b837f42616c616e63657300000000000000000000000000000000000000000000000061060a565b610306817e200100200000000000000000000000000000000000000000000000000000007e14010061000000000000000000000000000000000000000000000000000000632001001f60d81b6105356109a1565b610301610a8f565b6000610287613a3160f11b837f4d6574616461746100000000000000000000000000000000000000000000000061060a565b610306817c030000000000000000000000000000000000000000000000000000000060007c03c5c5c5000000000000000000000000000000000000000000000000006105b9610b06565b610301610b39565b60006102877f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d00000000000000000000000000000000000000005b6000610618607060106124be565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060828101909352816020015b60608152602001906001900390816106a75790505090506040518060400160405280600581526020017f6f776e657200000000000000000000000000000000000000000000000000000081525081600081518110610707576107076124d1565b60200260200101819052506040518060400160405280600881526020017f6f70657261746f720000000000000000000000000000000000000000000000008152508160018151811061075b5761075b6124d1565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816107805790505090506040518060400160405280600881526020017f617070726f7665640000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b60006107ea610c59565b90503073ffffffffffffffffffffffffffffffffffffffff82160361081c57610817878787878787610ca5565b61024c565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f4990610878908a908a908a908a908a908a90600401612591565b600060405180830381600087803b15801561089257600080fd5b505af11580156108a6573d6000803e3d6000fd5b5050505050505050505050565b604080516001808252818301909252606091816020015b60608152602001906001900390816108ca5790505090506040518060400160405280600781526020017f746f6b656e4964000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b60608152602001906001900390816109415790505090506040518060400160405280600581526020017f6f776e65720000000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b60608152602001906001900390816109b85790505090506040518060400160405280600781526020017f6163636f756e74000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b6060815260200190600190039081610a2f5790505090506040518060400160405280600881526020017f746f6b656e5552490000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b604080516001808252818301909252606091816020015b6060815260200190600190039081610aa65790505090506040518060400160405280600581526020017f76616c75650000000000000000000000000000000000000000000000000000008152508160008151811061075b5761075b6124d1565b60408051600080825260208201909252606091610b33565b6060815260200190600190039081610b1e5790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610b515790505090506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600081518110610bb157610bb16124d1565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c000000000000000000000000000000000000000000000000000081525081600181518110610c0557610c056124d1565b60200260200101819052506040518060400160405280600781526020017f62617365555249000000000000000000000000000000000000000000000000008152508160028151811061075b5761075b6124d1565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610ca0573391505090565b919050565b613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001614801590610d1e57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b15610d8857613a3160f11b8687604051602001610d3d91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610d7f9392916004016125db565b60405180910390fd5b610d9185611111565b610d9c846001611358565b610da7836000611358565b60e084901c60e885901c0160ff16825114610e075760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60e085901c60e886901c0160ff16815114610e675760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff1614610edf5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b610ee8856114f4565b610ef1846114f4565b14610f4357610eff856114f4565b610f08846114f4565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b610f4c85611526565b610f5584611526565b14610fa757610f6385611526565b610f6c84611526565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b60005b610fb3866114f4565b81101561104e57610fdd610fc78583611543565b60c5811115610fd857610fd861261c565b61156b565b6008601b8390030287901c60ff1614611046576008601b8290030286901c60ff1661100b610fc78684611543565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d7f565b600101610faa565b50611058866115c5565b156110b257858660405160200161107191815260200190565b60408051601f19818403018152908290527fdfaaf9cf000000000000000000000000000000000000000000000000000000008252610d7f9291600401612632565b6110fe86868686866040516020016110ca919061264b565b604051602081830303815290604052866040516020016110ea919061264b565b60405160208183030381529060405261166a565b61110986600161174d565b505050505050565b80611148576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061115382611526565b9050600581111561119a576040517f6793df620000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610d7f565b60006111a5836114f4565b905060006111b383836124be565b9050601c8111156111fa576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610d7f565b6000805b838110156112a55760ff601b82900360080287901c166000819003611252576040517f53b2dd0500000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b6020811115611290576040517f7237f23700000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b61129a81846124be565b9250506001016111fe565b506112af8561180b565b81146112fb576112be8561180b565b6040517feba964de000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610d7f565b825b601c8110156111095760ff601b82900360080287901c16801561134f576040517f1d8d44db00000000000000000000000000000000000000000000000000000000815260048101839052602401610d7f565b506001016112fd565b80158015611364575081155b156113855760405163d498615960e01b815260006004820152602401610d7f565b600061139083611526565b905060058111156113b75760405163d498615960e01b815260048101829052602401610d7f565b60006113c2846114f4565b905060006113d083836124be565b9050601c8111156113f75760405163d498615960e01b815260048101829052602401610d7f565b6000805b83811015611463576000611412610fc78984611543565b90508060000361144e576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61145881846124be565b9250506001016113fb565b5061146d8661180b565b81146114985761147c8661180b565b60405163d498615960e01b8152600401610d7f91815260200190565b825b8281101561024c5760006114b1610fc78984611543565b905080156114eb576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161149a565b6000600860016115066002602061265e565b611510919061265e565b61151a9190612671565b8260ff911c1692915050565b600060086001806115396002602061265e565b611506919061265e565b6000601b8290036008028360ff911c1660c58111156115645761156461261c565b9392505050565b6000808260c58111156115805761158061261c565b60ff169050606181101561159a57601f1660010192915050565b60618360c58111156115ae576115ae61261c565b036115bc5750601492915050565b50600092915050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106115fe576115fe6124d1565b602090810291909101015260006116567f746273746f72650000000000000000005265736f75726365496473000000000083837e0101000100000000000000000000000000000000000000000000000000000061182e565b90506116628160f81c90565b949350505050565b6040805160208101879052808201869052606080820186905282518083039091018152608090910190915260006116a18484611864565b905060006116af8585611881565b604080516001808252818301909252919250600091906020808301908036833701905050905089816000815181106116e9576116e96124d1565b60209081029190910101526117417f746273746f72650000000000000000005461626c657300000000000000000000828686867e600302202020000000000000000000000000000000000000000000000000006118ad565b50505050505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611783576117836124d1565b6020026020010181815250506118067f746273746f72650000000000000000005265736f75726365496473000000000060001b826000856040516020016117d191151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611be6565b505050565b6000600861181b6002602061265e565b6118259190612671565b9190911c919050565b600061185b61183d8686611c02565b60ff858116601b0360080285901c166118568587611c58565b611c91565b95945050505050565b8151815160009181810160389190911b1760609190911b17611564565b60608282604051602001611896929190612688565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361193957857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a98686868660405161192c94939291906126f3565b60405180910390a2611109565b600061194487611ce2565b905060005b8151811015611a1d576000828281518110611966576119666124d1565b602002602001015190506119926001826affffffffffffffffffffff1916611d6b90919063ffffffff16565b15611a14576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906119e1908c908c908c908c908c908c9060040161273d565b600060405180830381600087803b1580156119fb57600080fd5b505af1158015611a0f573d6000803e3d6000fd5b505050505b50600101611949565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611a5494939291906126f3565b60405180910390a26000611a688888611c02565b90506000602087019050611a80826000895184611d89565b6000611a8b85611526565b1115611b0f576000611a9d8a8a611e47565b878155905060208601915060008060005b611ab788611526565b8160ff161015611b0a57611acc8d8d83611e9d565b9250611ae78a8260ff166028026038011c64ffffffffff1690565b9150611af68360008488611d89565b611b0082866124be565b9450600101611aae565b505050505b60005b8351811015611741576000848281518110611b2f57611b2f6124d1565b60200260200101519050611b5b6002826affffffffffffffffffffff1916611d6b90919063ffffffff16565b15611bdd576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611baa908e908e908e908e908e908e9060040161273d565b600060405180830381600087803b158015611bc457600080fd5b505af1158015611bd8573d6000803e3d6000fd5b505050505b50600101611b12565b611bfb8585611bf58487611c58565b85611f1d565b5050505050565b60008282604051602001611c17929190612796565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611c8957611c7f60ff601b83900360080287901c16836124be565b9150600101611c5d565b509392505050565b600060208210611cb757602082048401935060208281611cb357611cb36127d2565b0691505b508254600882021b602082900380841115611c89576001850154600882021c82179150509392505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611d1c57611d1c6124d1565b60209081029190910101526000611d547f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836121b8565b9050611662611d6682600084516121f2565b612280565b60008160ff1682611d7c8560581c90565b1660ff1614905092915050565b8215611e035760208310611db357602083048401935060208381611daf57611daf6127d2565b0692505b8215611e035760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611df4575050611e41565b50600194909401939182900391015b5b60208210611e255780518455600190930192601f1990910190602001611e04565b8115611e415783548151600019600885021c9182169119161784555b50505050565b60008282604051602001611e5c929190612796565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001611eb2929190612796565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff0000000000000000000000000000000000000000000000000000000000001603611fa757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be848484604051611f9a939291906127e8565b60405180910390a2611e41565b6000611fb38585611c02565b90506000611fc086611ce2565b905060005b8151811015612095576000828281518110611fe257611fe26124d1565b6020026020010151905061200e6004826affffffffffffffffffffff1916611d6b90919063ffffffff16565b1561208c576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612059908b908b908b908b90600401612825565b600060405180830381600087803b15801561207357600080fd5b505af1158015612087573d6000803e3d6000fd5b505050505b50600101611fc5565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516120ca939291906127e8565b60405180910390a26120e5828565ffffffffffff1685612291565b60005b815181101561024c576000828281518110612105576121056124d1565b602002602001015190506121316008826affffffffffffffffffffff1916611d6b90919063ffffffff16565b156121af576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061217c908b908b908b908b90600401612825565b600060405180830381600087803b15801561219657600080fd5b505af11580156121aa573d6000803e3d6000fd5b505050505b506001016120e8565b60606116626121c8858585611e9d565b60006121ed856121d889896122a7565b9060ff166028026038011c64ffffffffff1690565b6122ba565b6000818311806122025750835182115b1561223f578383836040517f23230fa3000000000000000000000000000000000000000000000000000000008152600401610d7f9392919061285e565b6020840161224d84826124be565b9050600061225b858561265e565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061156483601560006122dd565b611806838383516122a28560200190565b611d89565b60006115646122b68484611e47565b5490565b60405160208101601f19603f8484010116604052828252611c8985858584612358565b606060006122eb8560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612311576123116127d2565b04905060405193506020840160208202810160405281855260005b8281101561234c578451871c82529387019360209091019060010161232c565b50505050509392505050565b82156123df57602083106123825760208304840193506020838161237e5761237e6127d2565b0692505b82156123df5760208390036000818410156123a55750600019600884021c6123af565b50600019600882021c5b8554600886021b8184511682198216178452508184116123d0575050611e41565b50600194909401939182900391015b5b602082106124015783548152600190930192601f19909101906020016123e0565b8115611e41576000600019600884021c8251865482191691161782525050505050565b612cbd8061288483390190565b6000806040838503121561244457600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461246857600080fd5b915060208301357fffffffffffffffffffffffffffff0000000000000000000000000000000000008116811461249d57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610287576102876124a8565b634e487b7160e01b600052603260045260246000fd5b60005b838110156125025781810151838201526020016124ea565b50506000910152565b600081518084526125238160208601602086016124e7565b601f01601f19169290920160200192915050565b60008282518085526020808601955060208260051b8401016020860160005b8481101561258457601f1986840301895261257283835161250b565b98840198925090830190600101612556565b5090979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006125bc60c0830185612537565b82810360a08401526125ce8185612537565b9998505050505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815282602082015260606040820152600061185b606083018461250b565b634e487b7160e01b600052602160045260246000fd5b828152604060208201526000611662604083018461250b565b6020815260006115646020830184612537565b81810381811115610287576102876124a8565b8082028115828204841417610287576102876124a8565b6000835161269a8184602088016124e7565b8351908301906126ae8183602088016124e7565b01949350505050565b60008151808452602080850194506020840160005b838110156126e8578151875295820195908201906001016126cc565b509495945050505050565b60808152600061270660808301876126b7565b8281036020840152612718818761250b565b90508460408401528281036060840152612732818561250b565b979650505050505050565b86815260c06020820152600061275660c08301886126b7565b8281036040840152612768818861250b565b90508560608401528281036080840152612782818661250b565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b828110156127c5578151845292840192908401906001016127a9565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006127fb60608301866126b7565b65ffffffffffff85166020840152828103604084015261281b818561250b565b9695505050505050565b84815260806020820152600061283e60808301866126b7565b65ffffffffffff851660408401528281036060840152612732818561250b565b606081526000612871606083018661250b565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612c9d806100206000396000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c80636352211e116100cd578063a22cb46511610081578063c87b56dd11610066578063c87b56dd146102d1578063e1af802c146102e4578063e985e9c5146102ec57600080fd5b8063a22cb465146102ab578063b88d4fde146102be57600080fd5b80638832e6e3116100b25780638832e6e31461027d57806395d89b4114610290578063a14481941461029857600080fd5b80636352211e1461025757806370a082311461026a57600080fd5b806323b872dd1161012457806342842e0e1161010957806342842e0e1461021c57806342966c681461022f57806345ec93541461024257600080fd5b806323b872dd146101f657806340c10f191461020957600080fd5b8063081812fc11610155578063081812fc146101ae578063095ea7b3146101d9578063119df25f146101ee57600080fd5b806301ffc9a71461017157806306fdde0314610199575b600080fd5b61018461017f366004612519565b6102ff565b60405190151581526020015b60405180910390f35b6101a1610398565b6040516101909190612586565b6101c16101bc366004612599565b6103b7565b6040516001600160a01b039091168152602001610190565b6101ec6101e73660046125c9565b6103cc565b005b6101c16103e2565b6101ec6102043660046125f3565b6103ec565b6101ec6102173660046125c9565b61049c565b6101ec61022a3660046125f3565b6104ae565b6101ec61023d366004612599565b6104ce565b36601f1901355b604051908152602001610190565b6101c1610265366004612599565b6104e2565b61024961027836600461262f565b6104ed565b6101ec61028b36600461270f565b61054b565b6101a161055e565b6101ec6102a63660046125c9565b610573565b6101ec6102b9366004612766565b610595565b6101ec6102cc3660046127a2565b6105a7565b6101a16102df366004612599565b6105be565b6101c161065a565b6101846102fa36600461280a565b610664565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000148061039257507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606103b26103ad6103a8610687565b6106a5565b6106d7565b905090565b60006103c2826106f5565b5061039282610746565b6103de82826103d96103e2565b610761565b5050565b60006103b261076e565b6001600160a01b03821661041b57604051633250574960e11b8152600060048201526024015b60405180910390fd5b600061042f838361042a6103e2565b6107a0565b9050836001600160a01b0316816001600160a01b031614610496576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610412565b50505050565b6104a4610924565b6103de828261093f565b6104c9838383604051806020016040528060008152506105a7565b505050565b6104d6610924565b6104df816109bd565b50565b6000610392826106f5565b60006001600160a01b038216610532576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b610392610545610540610687565b610a11565b83610a43565b610553610924565b6104c9838383610ac9565b60606103b261056e6103a8610687565b610ae0565b61057b610924565b6103de828260405180602001604052806000815250610ac9565b6103de6105a06103e2565b8383610aff565b6105b28484846103ec565b61049684848484610c23565b60606105c9826106f5565b5060006105d4610d84565b905060006105f16105eb6105e6610687565b610d99565b85610dcb565b9050600081511161061c5760408051602081018690520160405160208183030381529060405261061e565b805b9050600082511161062f5780610652565b818160405160200161064292919061283d565b6040516020818303038152906040525b949350505050565b60006103b2610e22565b6000610680610679610674610687565b610e2c565b8484610e5e565b9392505050565b60008061069330610f1d565b905061069f8160101b90565b91505090565b6000610392613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610fba565b60408051600080825260208201909252606091610652848383611032565b600080610701836110f9565b90506001600160a01b038116610392576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610412565b600061039261075b610756610687565b611109565b8361113b565b6104c983838360016111bb565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061079d5750335b90565b6000806107ae610540610687565b905060006107bb856110f9565b90506001600160a01b038416156107d7576107d781858761134d565b6001600160a01b0381161561080b576107f46000866000806111bb565b61080b828260016108058686610a43565b036113e3565b6001600160a01b03861615610831576108318287610829858a610a43565b6001016113e3565b61084b61084461083f610687565b611480565b86886114b2565b61085361156f565b6001600160a01b03166366c93bdb7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610892846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526108e89291906001600160a01b038c16908b906024810161286c565b600060405180830381600087803b15801561090257600080fd5b505af1158015610916573d6000803e3d6000fd5b509298975050505050505050565b61093d61093030610f1d565b6109386103e2565b61164a565b565b6001600160a01b03821661096957604051633250574960e11b815260006004820152602401610412565b6000610977838360006107a0565b90506001600160a01b038116156104c9576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b60006109cc60008360006107a0565b90506001600160a01b0381166103de576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101839052602401610412565b6000610392613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610fba565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610a8857610a886128a2565b60209081029190910101526000610ac08583837e200100200000000000000000000000000000000000000000000000000000006116eb565b95945050505050565b610ad3838361093f565b6104c96000848484610c23565b6040805160008082526020820190925260609161065284836001611032565b6001600160a01b038216610b4a576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610412565b610b60610b58610674610687565b8484846117a8565b610b6861156f565b6001600160a01b031663c9a34acd7f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31610ba7866001600160a01b031690565b6001600160a01b038616604080518715156020820152016040516020818303038152906040526040518563ffffffff1660e01b8152600401610bec94939291906128b8565b600060405180830381600087803b158015610c0657600080fd5b505af1158015610c1a573d6000803e3d6000fd5b50505050505050565b6001600160a01b0383163b1561049657826001600160a01b031663150b7a02610c4a6103e2565b8685856040518563ffffffff1660e01b8152600401610c6c94939291906128dd565b6020604051808303816000875af1925050508015610ca7575060408051601f3d908101601f19168201909252610ca49181019061290f565b60015b610d10573d808015610cd5576040519150601f19603f3d011682016040523d82523d6000602084013e610cda565b606091505b508051600003610d0857604051633250574960e11b81526001600160a01b0385166004820152602401610412565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014610d7d57604051633250574960e11b81526001600160a01b0385166004820152602401610412565b5050505050565b60606103b2610d946103a8610687565b611875565b6000610392613a3160f11b837f546f6b656e555249000000000000000000000000000000000000000000000000610fba565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110610e0857610e086128a2565b6020026020010181815250506000610ac085836000611032565b60006103b2611894565b6000610392613a3160f11b837f4f70657261746f72417070726f76616c00000000000000000000000000000000610fba565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610ea357610ea36128a2565b602002602001018181525050826001600160a01b031660001b81600181518110610ecf57610ecf6128a2565b60209081029190910101526000610f078683837e010100010000000000000000000000000000000000000000000000000000006116eb565b9050610f138160f81c90565b9695505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610f6257610f626128a2565b602090810291909101015260006106527f7462776f726c6400000000000000000053797374656d5265676973747279000083837e200100200000000000000000000000000000000000000000000000000000006116eb565b6000610fc860706010612942565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b6060600061103e611894565b9050306001600160a01b038216036110635761105b8585856118d3565b915050610680565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e788977906110ac90889088908890600401612991565b600060405180830381865afa1580156110c9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261105b91908101906129bd565b509392505050565b600061039261075b61083f610687565b6000610392613a3160f11b837f546f6b656e417070726f76616c00000000000000000000000000000000000000610fba565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b81600081518110611177576111776128a2565b602090810291909101015260006111af8583837e140100140000000000000000000000000000000000000000000000000000006116eb565b60601c95945050505050565b80806111cf57506001600160a01b03821615155b156113385760006111df846106f5565b90506001600160a01b0383161580159061120b5750826001600160a01b0316816001600160a01b031614155b801561121e575061121c8184610664565b155b15611260576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610412565b81156113365761126e61156f565b6001600160a01b03166366c93bdb7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256112ad846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526113039291906001600160a01b038b16908a906024810161286c565b600060405180830381600087803b15801561131d57600080fd5b505af1158015611331573d6000803e3d6000fd5b505050505b505b610496611346610756610687565b84866114b2565b61135883838361190d565b6104c9576001600160a01b03831661139f576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610412565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610412565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b81600081518110611425576114256128a2565b602002602001018181525050610496848260008560405160200161144b91815260200190565b60408051601f198184030181529190527e20010020000000000000000000000000000000000000000000000000000000611972565b6000610392613a3160f11b837f4f776e6572730000000000000000000000000000000000000000000000000000610fba565b604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106114eb576114eb6128a2565b602002602001018181525050610496848260008560405160200161153a919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e14010014000000000000000000000000000000000000000000000000000000611972565b60008061157b30610f1d565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f507570706574526567697374727900000000000000000000000000000000000060308201529192506000916115ff91016040516020818303038152906040526115f990612a2b565b83611a28565b90506001600160a01b038116610392576040517f9434f7e100000000000000000000000000000000000000000000000000000000815230600482015260248101839052604401610412565b6001600160a01b03811661169f7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611a61565b6001600160a01b0316146103de576116b682611afd565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610412929190612a52565b6000806116f6611894565b9050306001600160a01b0382160361171c5761171486868686611c2b565b915050610652565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611767908990899089908990600401612a7d565b602060405180830381865afa158015611784573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117149190612aac565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b816000815181106117e9576117e96128a2565b602002602001018181525050826001600160a01b031660001b81600181518110611815576118156128a2565b602002602001018181525050610d7d858260008560405160200161184091151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611972565b6040805160008082526020820190925260609161065284836002611032565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806118ce573391505090565b919050565b60606106526118e3858585611c58565b6000611908856118f38989611cd8565b9060ff166028026038011c64ffffffffff1690565b611ceb565b60006001600160a01b038316158015906106525750826001600160a01b0316846001600160a01b0316148061194757506119478484610664565b806106525750826001600160a01b031661196083610746565b6001600160a01b031614949350505050565b600061197c611894565b9050306001600160a01b038216036119a05761199b8686868686611d0e565b611a20565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906119ed9089908990899089908990600401612ac5565b600060405180830381600087803b158015611a0757600080fd5b505af1158015611a1b573d6000803e3d6000fd5b505050505b505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611177576111776128a2565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611a9a57611a9a6128a2565b60209081029190910101526000611af27f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e140100140000000000000000000000000000000000000000000000000000006116eb565b60601c949350505050565b606081601081901b6000611b1083611d23565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615611b6b57611b667fffffffffffffffffffffffffffff0000000000000000000000000000000000008416611d3a565b611ba2565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff19831615611bc957611bc483611d3a565b611c00565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b604051602001611c1293929190612b0c565b6040516020818303038152906040529350505050919050565b6000610ac0611c3a8686611dc0565b60ff858116601b0360080285901c16611c538587611e16565b611e47565b60008383604051602001611c6d929190612b9a565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b6000610680611ce78484611e98565b5490565b60405160208101601f19603f84840101166040528282526110f185858584611eee565b610d7d8585611d1d8487611e16565b85611fba565b6000611d3160706010612942565b9190911b919050565b606060005b6010811015611d90576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615611d9057600101611d3f565b604080516fffffffffffffffffffffffffffffffff19851660208201528151603090910190915281815280610652565b60008282604051602001611dd5929190612b9a565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff168110156110f157611e3d60ff601b83900360080287901c1683612942565b9150600101611e1b565b600060208210611e6d57602082048401935060208281611e6957611e69612bd6565b0691505b508254600882021b6020829003808411156110f1576001850154600882021c82179150509392505050565b60008282604051602001611ead929190612b9a565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b8215611f755760208310611f1857602083048401935060208381611f1457611f14612bd6565b0692505b8215611f75576020839003600081841015611f3b5750600019600884021c611f45565b50600019600882021c5b8554600886021b818451168219821617845250818411611f66575050610496565b50600194909401939182900391015b5b60208210611f975783548152600190930192601f1990910190602001611f76565b8115610496576000600019600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361204457837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161203793929190612bec565b60405180910390a2610496565b60006120508585611dc0565b9050600061205d86612255565b905060005b815181101561213257600082828151811061207f5761207f6128a2565b602002602001015190506120ab6004826affffffffffffffffffffff19166122de90919063ffffffff16565b15612129576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906120f6908b908b908b908b90600401612c1f565b600060405180830381600087803b15801561211057600080fd5b505af1158015612124573d6000803e3d6000fd5b505050505b50600101612062565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161216793929190612bec565b60405180910390a2612182828565ffffffffffff16856122fc565b60005b8151811015610c1a5760008282815181106121a2576121a26128a2565b602002602001015190506121ce6008826affffffffffffffffffffff19166122de90919063ffffffff16565b1561224c576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612219908b908b908b908b90600401612c1f565b600060405180830381600087803b15801561223357600080fd5b505af1158015612247573d6000803e3d6000fd5b505050505b50600101612185565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061228f5761228f6128a2565b602090810291909101015260006122c77f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836118d3565b90506106526122d98260008451612312565b6123a0565b60008160ff16826122ef8560581c90565b1660ff1614905092915050565b6104c98383835161230d8560200190565b6123b1565b6000818311806123225750835182115b1561235f578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161041293929190612c58565b6020840161236d8482612942565b9050600061237b8585612c7d565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006106808360156000612470565b821561242b57602083106123db576020830484019350602083816123d7576123d7612bd6565b0692505b821561242b5760208390036000600019600885021c1990506008850281811c91508351811c905081198754168282161787555081841161241c575050610496565b50600194909401939182900391015b5b6020821061244d5780518455600190930192601f199091019060200161242c565b8115610496576000600019600884021c8554835182191691161785555050505050565b6060600061247e8560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816124a4576124a4612bd6565b04905060405193506020840160208202810160405281855260005b828110156124df578451871c8252938701936020909101906001016124bf565b50505050509392505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146104df57600080fd5b60006020828403121561252b57600080fd5b8135610680816124eb565b60005b83811015612551578181015183820152602001612539565b50506000910152565b60008151808452612572816020860160208601612536565b601f01601f19169290920160200192915050565b602081526000610680602083018461255a565b6000602082840312156125ab57600080fd5b5035919050565b80356001600160a01b03811681146118ce57600080fd5b600080604083850312156125dc57600080fd5b6125e5836125b2565b946020939093013593505050565b60008060006060848603121561260857600080fd5b612611846125b2565b925061261f602085016125b2565b9150604084013590509250925092565b60006020828403121561264157600080fd5b610680826125b2565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff811182821017156126895761268961264a565b604052919050565b600067ffffffffffffffff8211156126ab576126ab61264a565b50601f01601f191660200190565b600082601f8301126126ca57600080fd5b81356126dd6126d882612691565b612660565b8181528460208386010111156126f257600080fd5b816020850160208301376000918101602001919091529392505050565b60008060006060848603121561272457600080fd5b61272d846125b2565b925060208401359150604084013567ffffffffffffffff81111561275057600080fd5b61275c868287016126b9565b9150509250925092565b6000806040838503121561277957600080fd5b612782836125b2565b91506020830135801515811461279757600080fd5b809150509250929050565b600080600080608085870312156127b857600080fd5b6127c1856125b2565b93506127cf602086016125b2565b925060408501359150606085013567ffffffffffffffff8111156127f257600080fd5b6127fe878288016126b9565b91505092959194509250565b6000806040838503121561281d57600080fd5b612826836125b2565b9150612834602084016125b2565b90509250929050565b6000835161284f818460208801612536565b835190830190612863818360208801612536565b01949350505050565b85815284602082015283604082015282606082015260a06080820152600061289760a083018461255a565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b848152836020820152826040820152608060608201526000610f13608083018461255a565b60006001600160a01b03808716835280861660208401525083604083015260806060830152610f13608083018461255a565b60006020828403121561292157600080fd5b8151610680816124eb565b634e487b7160e01b600052601160045260246000fd5b808201808211156103925761039261292c565b60008151808452602080850194506020840160005b838110156129865781518752958201959082019060010161296a565b509495945050505050565b8381526060602082015260006129aa6060830185612955565b905060ff83166040830152949350505050565b6000602082840312156129cf57600080fd5b815167ffffffffffffffff8111156129e657600080fd5b8201601f810184136129f757600080fd5b8051612a056126d882612691565b818152856020838501011115612a1a57600080fd5b610ac0826020830160208601612536565b80516020808301519190811015612a4c576000198160200360031b1b821691505b50919050565b604081526000612a65604083018561255a565b90506001600160a01b03831660208301529392505050565b848152608060208201526000612a966080830186612955565b60ff949094166040830152506060015292915050565b600060208284031215612abe57600080fd5b5051919050565b85815260a060208201526000612ade60a0830187612955565b60ff861660408401528281036060840152612af9818661255a565b9150508260808301529695505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a000000000000000000000000000000000000000000000000000000000000008060028401528451612b6d816003860160208901612536565b808401905081600382015284519150612b8d826004830160208801612536565b0160040195945050505050565b8281526000602080830184516020860160005b82811015612bc957815184529284019290840190600101612bad565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b606081526000612bff6060830186612955565b65ffffffffffff851660208401528281036040840152610f13818561255a565b848152608060208201526000612c386080830186612955565b65ffffffffffff851660408401528281036060840152612897818561255a565b606081526000612c6b606083018661255a565b60208301949094525060400152919050565b818103818111156103925761039261292c56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"1456:1812:148:-:0;;;;;644:4:59;600:49;;1599:37:148;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1551:86:148;;;1456:1812;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b50600436106100725760003560e01c806345ec93541161005057806345ec9354146100d45780637c5b0335146100e7578063e1af802c146100fa57600080fd5b806301ffc9a714610077578063119df25f1461009f57806313861fb5146100bf575b600080fd5b61008a610085366004612b12565b610102565b60405190151581526020015b60405180910390f35b6100a76101e7565b6040516001600160a01b039091168152602001610096565b6100d26100cd366004612bec565b6101f6565b005b604051601f193601358152602001610096565b6100d26100f5366004612bec565b610749565b6100a761077b565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019557507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101e157507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101f1610785565b905090565b6102207f0000000000000000000000000000000000000000000000000000000000000000826107b7565b600080828060200190518101906102379190612ce0565b90925090507f9a8d9cc8cdced28f8a8f8f9a8c0000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff198316016102c6576040517f2ca07d8400000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b60006102d061077b565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316838660405160240161033b9291906001600160a01b0392909216825271ffffffffffffffffffffffffffffffffffff1916602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c2000000000000000000000000000000000000000000000000000000001790525161039e9190612dc3565b600060405180830381855af49150503d80600081146103d9576040519150601f19603f3d011682016040523d82523d6000602084013e6103de565b606091505b5091509150816103f1576103f1816107fc565b6104036103fd86610804565b85610836565b600061040e86610893565b9050600061041c85836108e0565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601089901c16176001600160a01b03861663ef5d6bbb8261047d6101e7565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b1580156104dc57600080fd5b505af11580156104f0573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610572935001905060405160208183030381529060405261056d90612ddf565b610bde565b6106bf576040517f6e7300000000000000000000000000000000000000000000000000000000000060208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201526001600160a01b0387169063b29e4089906030016040516020818303038152906040526105f190612ddf565b6040518263ffffffff1660e01b815260040161060f91815260200190565b600060405180830381600087803b15801561062957600080fd5b505af115801561063d573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f455243373231526567697374727900000000000000000000000000000000000060308201526106bf93500190506040516020818303038152906040526106ba90612ddf565b610c6b565b60408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f4552433732315265676973747279000000000000000000000000000000000000603082015261073e910160405160208183030381529060405261073790612ddf565b8284610ce7565b505050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006101f1610da7565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107b45750335b90565b6107c18282610db1565b156107f8576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b805160208201fd5b60006101e1613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610dcb565b60606000610851836000015184602001518560400151610e51565b9050600061086c846000015185602001518660400151610e7a565b60408051600081526020810190915290915061088b8682868686610ea9565b505050505050565b60006101e17f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000610dcb565b604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f466163746f72790000000000000000000000000000000000000000000000000060308201526000916001600160a01b03851691633ae7af08910160405160208183030381529060405261098390612ddf565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610a20929190600401612e2f565b6000604051808303816000875af1158015610a3f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610a679190810190612e48565b806020019051810190610a7a9190612e91565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610b5d90612ddf565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610ba692919060248101612eba565b600060405180830381600087803b158015610bc057600080fd5b505af1158015610bd4573d6000803e3d6000fd5b5050505092915050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610c1757610c17612ed9565b60209081029190910101526000610c577f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f5e565b9050610c638160f81c90565b949350505050565b610ce4817e140100140000000000000000000000000000000000000000000000000000007e2001005f0000000000000000000000000000000000000000000000000000007e14010061000000000000000000000000000000000000000000000000000000610cd761101b565b610cdf6110a0565b611117565b50565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610d1d57610d1d612ed9565b602002602001018181525050610da18482600085604051602001610d6c919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e140100140000000000000000000000000000000000000000000000000000006111d1565b50505050565b60006101f1611247565b6000610dc4838380519060200120611286565b9392505050565b6000610dd960706010612f05565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b6000610c63845184518451608881901b606083901b603885901b85850184011717179392505050565b6060838383604051602001610e9193929190612f18565b60405160208183030381529060405290509392505050565b6000610eb3611247565b9050306001600160a01b03821603610ed757610ed28686868686611340565b61088b565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90610f249089908990899089908990600401612f97565b600060405180830381600087803b158015610f3e57600080fd5b505af1158015610f52573d6000803e3d6000fd5b50505050505050505050565b600080610f69611247565b9050306001600160a01b03821603610f8f57610f878686868661135d565b915050610c63565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610fda908990899089908990600401612fe8565b602060405180830381865afa158015610ff7573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f879190613017565b604080516001808252818301909252606091816020015b60608152602001906001900390816110325790505090506040518060400160405280600b81526020017f6e616d65737061636549640000000000000000000000000000000000000000008152508160008151811061109257611092612ed9565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816110b75790505090506040518060400160405280600c81526020017f746f6b656e4164647265737300000000000000000000000000000000000000008152508160008151811061109257611092612ed9565b6000611121611247565b9050306001600160a01b038216036111465761114187878787878761138a565b6111c8565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990611195908a908a908a908a908a908a9060040161308a565b600060405180830381600087803b1580156111af57600080fd5b505af11580156111c3573d6000803e3d6000fd5b505050505b50505050505050565b60006111db611247565b9050306001600160a01b038216036111fa57610ed286868686866117e5565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610f2490899089908990899089906004016130d4565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680611281573391505090565b919050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b816000815181106112cb576112cb612ed9565b60200260200101818152505082816001815181106112eb576112eb612ed9565b6020908102919091010152600061132b7f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610f5e565b90506113378160f81c90565b95945050505050565b61135685858585856113518b6117fa565b61187f565b5050505050565b600061133761136c8686611bb8565b60ff858116601b0360080285901c166113858587611c0e565b611c47565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061140357507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561146457613a3160f11b868760405160200161142291815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102bd93929160040161311b565b61146d85611c98565b611478846001611edf565b611483836000611edf565b60e084901c60e885901c0160ff168251146114e35760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b60e085901c60e886901c0160ff168151146115435760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146115bb5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b6115c48561207b565b6115cd8461207b565b1461161f576115db8561207b565b6115e48461207b565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b611628856120ad565b611631846120ad565b146116835761163f856120ad565b611648846120ad565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b60005b61168f8661207b565b81101561172a576116b96116a385836120ca565b60c58111156116b4576116b461315c565b6120eb565b6008601b8390030287901c60ff1614611722576008601b8290030286901c60ff166116e76116a386846120ca565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102bd565b600101611686565b506117348661214b565b1561178e57858660405160200161174d91815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102bd9291600401612e2f565b6117da86868686866040516020016117a69190613172565b604051602081830303815290604052866040516020016117c69190613172565b6040516020818303038152906040526121c4565b61088b86600161227f565b61135685856117f48487611c0e565b85612325565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d00000000000000000000820161184957507e60030220202000000000000000000000000000000000000000000000000000919050565b6101e16118767f746273746f72650000000000000000005461626c657300000000000000000000846125c0565b60206000611c47565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff000000000000000000000000000000000000000000000000000000000000160361190b57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a9868686866040516118fe9493929190613185565b60405180910390a261088b565b6000611916876125dc565b905060005b81518110156119ef57600082828151811061193857611938612ed9565b602002602001015190506119646001826affffffffffffffffffffff191661266590919063ffffffff16565b156119e6576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c906119b3908c908c908c908c908c908c906004016131cf565b600060405180830381600087803b1580156119cd57600080fd5b505af11580156119e1573d6000803e3d6000fd5b505050505b5060010161191b565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611a269493929190613185565b60405180910390a26000611a3a8888611bb8565b90506000602087019050611a52826000895184612683565b6000611a5d856120ad565b1115611ae1576000611a6f8a8a612742565b878155905060208601915060008060005b611a89886120ad565b8160ff161015611adc57611a9e8d8d83612798565b9250611ab98a8260ff166028026038011c64ffffffffff1690565b9150611ac88360008488612683565b611ad28286612f05565b9450600101611a80565b505050505b60005b8351811015610f52576000848281518110611b0157611b01612ed9565b60200260200101519050611b2d6002826affffffffffffffffffffff191661266590919063ffffffff16565b15611baf576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611b7c908e908e908e908e908e908e906004016131cf565b600060405180830381600087803b158015611b9657600080fd5b505af1158015611baa573d6000803e3d6000fd5b505050505b50600101611ae4565b60008282604051602001611bcd929190613228565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611c3f57611c3560ff601b83900360080287901c1683612f05565b9150600101611c13565b509392505050565b600060208210611c6d57602082048401935060208281611c6957611c69613264565b0691505b508254600882021b602082900380841115611c3f576001850154600882021c82179150509392505050565b80611ccf576040517fa019e4da00000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000611cda826120ad565b90506005811115611d21576040517f6793df6200000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016102bd565b6000611d2c8361207b565b90506000611d3a8383612f05565b9050601c811115611d81576040517fecd893b900000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016102bd565b6000805b83811015611e2c5760ff601b82900360080287901c166000819003611dd9576040517f53b2dd05000000000000000000000000000000000000000000000000000000008152600481018390526024016102bd565b6020811115611e17576040517f7237f237000000000000000000000000000000000000000000000000000000008152600481018390526024016102bd565b611e218184612f05565b925050600101611d85565b50611e3685612818565b8114611e8257611e4585612818565b6040517feba964de0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016102bd565b825b601c81101561088b5760ff601b82900360080287901c168015611ed6576040517f1d8d44db000000000000000000000000000000000000000000000000000000008152600481018390526024016102bd565b50600101611e84565b80158015611eeb575081155b15611f0c5760405163d498615960e01b8152600060048201526024016102bd565b6000611f17836120ad565b90506005811115611f3e5760405163d498615960e01b8152600481018290526024016102bd565b6000611f498461207b565b90506000611f578383612f05565b9050601c811115611f7e5760405163d498615960e01b8152600481018290526024016102bd565b6000805b83811015611fea576000611f996116a389846120ca565b905080600003611fd5576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611fdf8184612f05565b925050600101611f82565b50611ff486612818565b811461201f5761200386612818565b60405163d498615960e01b81526004016102bd91815260200190565b825b828110156111c85760006120386116a389846120ca565b90508015612072576040517ff44b422000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101612021565b60006008600161208d6002602061327a565b612097919061327a565b6120a1919061328d565b8260ff911c1692915050565b600060086001806120c06002602061327a565b61208d919061327a565b6000601b8290036008028360ff911c1660c5811115610dc457610dc461315c565b6000808260c58111156121005761210061315c565b60ff169050606181101561211a57601f1660010192915050565b60618360c581111561212e5761212e61315c565b0361213c5750601492915050565b50600092915050565b50919050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061218457612184612ed9565b60209081029190910101526000610c577f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b61135d565b60006121d186868661283b565b905060006121df848461285d565b905060006121ed858561287a565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061222757612227612ed9565b6020908102919091010152610f527f746273746f72650000000000000000005461626c657300000000000000000000828686867e6003022020200000000000000000000000000000000000000000000000000061187f565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106122b5576122b5612ed9565b6020026020010181815250506123207f746273746f72650000000000000000005265736f75726365496473000000000060001b8260008560405160200161230391151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b6117e5565b505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036123af57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516123a2939291906132a4565b60405180910390a2610da1565b60006123bb8585611bb8565b905060006123c8866125dc565b905060005b815181101561249d5760008282815181106123ea576123ea612ed9565b602002602001015190506124166004826affffffffffffffffffffff191661266590919063ffffffff16565b15612494576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612461908b908b908b908b906004016132e1565b600060405180830381600087803b15801561247b57600080fd5b505af115801561248f573d6000803e3d6000fd5b505050505b506001016123cd565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516124d2939291906132a4565b60405180910390a26124ed828565ffffffffffff16856128a6565b60005b81518110156111c857600082828151811061250d5761250d612ed9565b602002602001015190506125396008826affffffffffffffffffffff191661266590919063ffffffff16565b156125b7576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612584908b908b908b908b906004016132e1565b600060405180830381600087803b15801561259e57600080fd5b505af11580156125b2573d6000803e3d6000fd5b505050505b506001016124f0565b6040805160208101849052908101829052600090606001611bcd565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061261657612616612ed9565b6020908102919091010152600061264e7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836128bc565b9050610c6361266082600084516128f6565b612984565b60008160ff16826126768560581c90565b1660ff1614905092915050565b82156126fd57602083106126ad576020830484019350602083816126a9576126a9613264565b0692505b82156126fd5760208390036000600019600885021c1990506008850281811c91508351811c90508119875416828216178755508184116126ee575050610da1565b50600194909401939182900391015b5b6020821061271f5780518455600190930192601f19909101906020016126fe565b8115610da1576000600019600884021c8554835182191691161785555050505050565b60008282604051602001612757929190613228565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b600083836040516020016127ad929190613228565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b600060086128286002602061327a565b612832919061328d565b9190911c919050565b6040805160208101859052908101839052606081810183905290608001610e91565b8151815160009181810160389190911b1760609190911b17610dc4565b6060828260405160200161288f92919061331a565b604051602081830303815290604052905092915050565b612320838383516128b78560200190565b612683565b6060610c636128cc858585612798565b60006128f1856128dc8989612995565b9060ff166028026038011c64ffffffffff1690565b6129a8565b6000818311806129065750835182115b15612943578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102bd93929190613349565b602084016129518482612f05565b9050600061295f858561327a565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610dc483601560006129cb565b6000610dc46129a48484612742565b5490565b60405160208101601f19603f8484010116604052828252611c3f85858584612a46565b606060006129d98560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816129ff576129ff613264565b04905060405193506020840160208202810160405281855260005b82811015612a3a578451871c825293870193602090910190600101612a1a565b50505050509392505050565b8215612acd5760208310612a7057602083048401935060208381612a6c57612a6c613264565b0692505b8215612acd576020839003600081841015612a935750600019600884021c612a9d565b50600019600882021c5b8554600886021b818451168219821617845250818411612abe575050610da1565b50600194909401939182900391015b5b60208210612aef5783548152600190930192601f1990910190602001612ace565b8115610da1576000600019600884021c8251865482191691161782525050505050565b600060208284031215612b2457600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610dc457600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715612b8d57612b8d612b54565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612bbc57612bbc612b54565b604052919050565b600067ffffffffffffffff821115612bde57612bde612b54565b50601f01601f191660200190565b600060208284031215612bfe57600080fd5b813567ffffffffffffffff811115612c1557600080fd5b8201601f81018413612c2657600080fd5b8035612c39612c3482612bc4565b612b93565b818152856020838501011115612c4e57600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b83811015612c87578181015183820152602001612c6f565b50506000910152565b6000612c9e612c3484612bc4565b9050828152838383011115612cb257600080fd5b610dc4836020830184612c6c565b600082601f830112612cd157600080fd5b610dc483835160208501612c90565b60008060408385031215612cf357600080fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612d1657600080fd5b602084015190925067ffffffffffffffff80821115612d3457600080fd5b9084019060608287031215612d4857600080fd5b612d50612b6a565b825182811115612d5f57600080fd5b612d6b88828601612cc0565b825250602083015182811115612d8057600080fd5b612d8c88828601612cc0565b602083015250604083015182811115612da457600080fd5b612db088828601612cc0565b6040830152508093505050509250929050565b60008251612dd5818460208701612c6c565b9190910192915050565b805160208083015191908110156121455760001960209190910360031b1b16919050565b60008151808452612e1b816020860160208601612c6c565b601f01601f19169290920160200192915050565b828152604060208201526000610c636040830184612e03565b600060208284031215612e5a57600080fd5b815167ffffffffffffffff811115612e7157600080fd5b8201601f81018413612e8257600080fd5b610c6384825160208401612c90565b600060208284031215612ea357600080fd5b81516001600160a01b0381168114610dc457600080fd5b8381528260208201526060604082015260006113376060830184612e03565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156101e1576101e1612eef565b60008451612f2a818460208901612c6c565b845190830190612f3e818360208901612c6c565b8451910190612f51818360208801612c6c565b0195945050505050565b60008151808452602080850194506020840160005b83811015612f8c57815187529582019590820190600101612f70565b509495945050505050565b85815260a060208201526000612fb060a0830187612f5b565b8281036040840152612fc28187612e03565b90508460608401528281036080840152612fdc8185612e03565b98975050505050505050565b8481526080602082015260006130016080830186612f5b565b60ff949094166040830152506060015292915050565b60006020828403121561302957600080fd5b5051919050565b60008282518085526020808601955060208260051b8401016020860160005b8481101561307d57601f1986840301895261306b838351612e03565b9884019892509083019060010161304f565b5090979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006130b560c0830185613030565b82810360a08401526130c78185613030565b9998505050505050505050565b85815260a0602082015260006130ed60a0830187612f5b565b60ff8616604084015282810360608401526131088186612e03565b9150508260808301529695505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006113376060830184612e03565b634e487b7160e01b600052602160045260246000fd5b602081526000610dc46020830184613030565b6080815260006131986080830187612f5b565b82810360208401526131aa8187612e03565b905084604084015282810360608401526131c48185612e03565b979650505050505050565b86815260c0602082015260006131e860c0830188612f5b565b82810360408401526131fa8188612e03565b905085606084015282810360808401526132148186612e03565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b828110156132575781518452928401929084019060010161323b565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b818103818111156101e1576101e1612eef565b80820281158282048414176101e1576101e1612eef565b6060815260006132b76060830186612f5b565b65ffffffffffff8516602084015282810360408401526132d78185612e03565b9695505050505050565b8481526080602082015260006132fa6080830186612f5b565b65ffffffffffff8516604084015282810360608401526131c48185612e03565b6000835161332c818460208801612c6c565b835190830190613340818360208801612c6c565b01949350505050565b60608152600061335c6060830186612e03565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"1456:1812:148:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;984:308:59;;;;;;:::i;:::-;;:::i;:::-;;;516:14:214;;509:22;491:41;;479:2;464:18;984:308:59;;;;;;;;1262:113:64;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:214;;;689:74;;677:2;662:18;1262:113:64;543:226:214;1642:1523:148;;;;;;:::i;:::-;;:::i;:::-;;1616:110:64;;;-1:-1:-1;;3800:14:64;3796:25;3783:39;2632:25:214;;2620:2;2605:18;1616:110:64;2486:177:214;3169:97:148;;;;;;:::i;:::-;;:::i;1942:98:64:-;;;:::i;984:308:59:-;1108:4;1133:40;;;1148:25;1133:40;;:104;;-1:-1:-1;1183:54:59;;;1198:39;1183:54;1133:104;:154;;;-1:-1:-1;1247:40:59;;;1262:25;1247:40;1133:154;1120:167;984:308;-1:-1:-1;;984:308:59:o;1262:113:64:-;1305:14;1334:36;:34;:36::i;:::-;1327:43;;1262:113;:::o;1642:1523:148:-;1764:40;1784:6;1792:11;1764:19;:40::i;:::-;1831:17;1850:34;1899:11;1888:54;;;;;;;;;;;;:::i;:::-;1830:112;;-1:-1:-1;1830:112:148;-1:-1:-1;2015:29:148;-1:-1:-1;;2015:29:148;;;2011:97;;2061:40;;;;;-1:-1:-1;;4867:79:214;;2061:40:148;;;4849:98:214;4822:18;;2061:40:148;;;;;;;;2011:97;2159:16;2189:8;:6;:8::i;:::-;2159:39;;2205:12;2219:23;2246:19;-1:-1:-1;;;;;2246:32:148;2344:5;2351:9;2286:76;;;;;;;;-1:-1:-1;;;;;5170:55:214;;;;5152:74;;-1:-1:-1;;5262:79:214;5257:2;5242:18;;5235:107;5140:2;5125:18;;4958:390;2286:76:148;;;;-1:-1:-1;;2286:76:148;;;;;;;;;;;;;;;;;;;;2246:122;;;2286:76;2246:122;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2204:164;;;;2379:7;2374:41;;2388:27;2404:10;2388:15;:27::i;:::-;2453:57;2472:27;2489:9;2472:16;:27::i;:::-;2501:8;2453:18;:57::i;:::-;2563:25;2591:26;2607:9;2591:15;:26::i;:::-;2563:54;;2623:14;2640:35;2653:5;2660:14;2640:12;:35::i;:::-;2623:52;-1:-1:-1;1597:18:65;1620:33;451:5:20;1620:33:65;;;;1589:65;-1:-1:-1;;;;;2815:23:148;;;1589:65:65;2852:12:148;:10;:12::i;:::-;2815:50;;;;;;;;;;;;;5850:25:214;;;;-1:-1:-1;;;;;5911:55:214;5891:18;;;5884:83;5823:18;;2815:50:148;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;912:77:156;;;-1:-1:-1;;;912:77:156;;;6161:92:214;945:16:156;6269:11:214;;;6262:100;963:25:156;6378:12:214;;;6371:101;2925:47:148;;-1:-1:-1;6488:12:214;;-1:-1:-1;912:77:156;;;;;;;;;;;;904:86;;;:::i;:::-;2925:21:148;:47::i;:::-;2920:170;;427:54:156;;444:18;427:54;;;7028:92:214;464:16:156;7136:11:214;;;7129:100;-1:-1:-1;;;;;2982:23:148;;;;;7245:12:214;;427:54:156;;;;;;;;;;;;419:63;;;:::i;:::-;2982:44:148;;;;;;;;;;;;;2632:25:214;;2620:2;2605:18;;2486:177;2982:44:148;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;912:77:156;;;-1:-1:-1;;;912:77:156;;;6161:92:214;945:16:156;6269:11:214;;;6262:100;963:25:156;6378:12:214;;;6371:101;3034:49:148;;-1:-1:-1;6488:12:214;;-1:-1:-1;912:77:156;;;;;;;;;;;;904:86;;;:::i;:::-;3034:23:148;:49::i;:::-;912:77:156;;;-1:-1:-1;;;912:77:156;;;6161:92:214;945:16:156;6269:11:214;;;6262:100;963:25:156;6378:12:214;;;6371:101;3095:65:148;;6488:12:214;912:77:156;;;;;;;;;;;;904:86;;;:::i;:::-;3140:11:148;3153:6;3095:18;:65::i;:::-;1692:1473;;;;;;;;1642:1523;:::o;3169:97::-;3229:32;;;;;;;;;;;;;;1942:98:64;1981:7;2003:32;:30;:32::i;2992:383::-;3278:34;3282:14;3278:34;3265:48;3259:4;3255:59;;3325:45;;-1:-1:-1;3360:10:64;3325:45;2992:383;:::o;1990:194:59:-;2092:39;2104:13;2119:11;2092;:39::i;:::-;2088:92;;;2148:25;;;;;;;;;;;;;;2088:92;1990:194;;:::o;348:217:102:-;551:6;545:13;538:4;530:6;526:17;519:40;709:181:164;768:10;791:96;-1:-1:-1;;;854:9:164;871:13;791:25;:96::i;17581:443:158:-;17664:24;17694:29;17726:57;17740:6;:11;;;17753:6;:13;;;17768:6;:14;;;17726:13;:57::i;:::-;17694:89;;17789:25;17817:57;17831:6;:11;;;17844:6;:13;;;17859:6;:14;;;17817:13;:57::i;:::-;17910:16;;;17881:26;17910:16;;;;;;;;17789:85;;-1:-1:-1;17933:86:158;17955:8;17910:16;17976:11;17989:15;17789:85;17933:21;:86::i;:::-;17658:366;;;;17581:443;;:::o;1649:186:164:-;1707:10;1730:102;1766:15;1794:9;1811:18;1730:25;:102::i;799:322:185:-;740:64:184;;;757:15;740:64;;;6161:92:214;405:17:184;6269:11:214;;;6262:100;785:18:184;6378:12:214;;;6371:101;869:14:185;;-1:-1:-1;;;;;914:10:185;;;;;6488:12:214;740:64:184;;;;;;;;;;;;732:73;;;:::i;:::-;941:60:185;;;;;2632:25:214;;;2605:18;;941:60:185;;;-1:-1:-1;;941:60:185;;;;;;;;;;;;;;;;;;;;914:88;;941:60;914:88;;;;;;;;;941:60;914:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;914:88:185;;;;;;;;;;;;:::i;:::-;898:123;;;;;;;;;;;;:::i;:::-;889:132;-1:-1:-1;;;;;;1025:33:185;;;696:18:105;578:36:65;2955:46;;2954:74;603:67:184;;;620:15;603:67;;;6161:92:214;405:17:184;6269:11:214;;;6262:100;648:21:184;6378:12:214;;;6371:101;6488:12;603:67:184;;;;;;;;;;;;595:76;;;:::i;:::-;1105:12:185;;;1115:1;1105:12;;;;;;;;;1025:93;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;799:322;;;;:::o;2499:315:31:-;2612:16;;;2626:1;2612:16;;;;;;;;;2564:11;;;;2612:16;;;;;;;;;;;;-1:-1:-1;2612:16:31;2583:45;;2667:10;2634:9;2644:1;2634:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;2685:13;2701:64;970:66;2738:9;2685:13;-1:-1:-1;;;2701:26:31;:64::i;:::-;2685:80;;2779:29;2800:5;2787:20;;7164:5;7078:97;2779:29;2771:38;2499:315;-1:-1:-1;;;;2499:315:31:o;2054:166:159:-;2108:107;2134:8;1043:66;1197;1354;2184:13;:11;:13::i;:::-;2199:15;:13;:15::i;:::-;2108:25;:107::i;:::-;2054:166;:::o;4766:301::-;4890:16;;;4904:1;4890:16;;;;;;;;;4861:26;;4890:16;;;;;;;;;;;-1:-1:-1;4890:16:159;4861:45;;4945:11;4912:9;4922:1;4912:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;4964:98;4991:8;5001:9;5012:1;5033:12;5015:32;;;;;;;9692:2:214;9688:15;;;;9705:66;9684:88;9672:101;;9798:2;9789:12;;9543:264;5015:32:159;;;;-1:-1:-1;;5015:32:159;;;;;;;;;1043:66;4964:26;:98::i;:::-;4855:212;4766:301;;;:::o;4048:97:64:-;4089:7;4111:29;:27;:29::i;1579:176:59:-;1672:4;1691:59;1712:13;1737:11;1727:22;;;;;;1691:20;:59::i;:::-;1684:66;1579:176;-1:-1:-1;;;1579:176:59:o;1046:257:65:-;1133:10;1262:26;438:6;451:5:20;1262:26:65;:::i;:::-;1244:13;;;:45;;451:5:20;1208:31:65;;;;;1189:15;;;:51;:101;;-1:-1:-1;1046:257:65;;;;;:::o;20455:384:158:-;20582:29;20742:86;20770:4;20764:18;20790:6;20784:20;20812:7;20806:21;3585:23:19;3570:39;;;3519:23;3504:39;;;967:16;3438:39;;;3403:5;;;:9;;3420:58;3486;3552;3251:425;;;;;;21004:225:158;21131:12;21182:4;21197:6;21214:7;21158:66;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;21151:73;;21004:225;;;;;:::o;6454:479:28:-;6640:21;6664:17;:15;:17::i;:::-;6640:41;-1:-1:-1;6716:4:28;-1:-1:-1;;;;;6691:30:28;;;6687:242;;6731:79;6751:7;6760:8;6770:10;6782:14;6798:11;6731:19;:79::i;:::-;6687:242;;;6831:91;;;;;-1:-1:-1;;;;;6831:31:28;;;;;:91;;6863:7;;6872:8;;6882:10;;6894:14;;6910:11;;6831:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6634:299;6454:479;;;;;:::o;17768:457::-;17925:7;17940:21;17964:17;:15;:17::i;:::-;17940:41;-1:-1:-1;18016:4:28;-1:-1:-1;;;;;17991:30:28;;;17987:234;;18038:68;18063:7;18072:8;18082:10;18094:11;18038:24;:68::i;:::-;18031:75;;;;;17987:234;18134:80;;;;;-1:-1:-1;;;;;18134:36:28;;;;;:80;;18171:7;;18180:8;;18190:10;;18202:11;;18134:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;1556:142:159:-;1645:15;;;1658:1;1645:15;;;;;;;;;1602:24;;1645:15;;;;;;;;;;;;;;;;;;;;1634:26;;1666:27;;;;;;;;;;;;;;;;;:8;1675:1;1666:11;;;;;;;;:::i;:::-;;;;;;:27;;;;1556:142;:::o;1838:151::-;1933:15;;;1946:1;1933:15;;;;;;;;;1886:26;;1933:15;;;;;;;;;;;;;;;;;;;;1920:28;;1954:30;;;;;;;;;;;;;;;;;:10;1965:1;1954:13;;;;;;;;:::i;5640:520:28:-;5843:21;5867:17;:15;:17::i;:::-;5843:41;-1:-1:-1;5919:4:28;-1:-1:-1;;;;;5894:30:28;;;5890:266;;5934:91;5958:7;5967:11;5980:9;5991:11;6004:8;6014:10;5934:23;:91::i;:::-;5890:266;;;6046:103;;;;;-1:-1:-1;;;;;6046:35:28;;;;;:103;;6082:7;;6091:11;;6104:9;;6115:11;;6128:8;;6138:10;;6046:103;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5890:266;5837:323;5640:520;;;;;;:::o;10756:455::-;10928:21;10952:17;:15;:17::i;:::-;10928:41;-1:-1:-1;11004:4:28;-1:-1:-1;;;;;10979:30:28;;;10975:232;;11019:74;11044:7;11053:8;11063:10;11075:4;11081:11;11019:24;:74::i;10975:232::-;11114:86;;;;;-1:-1:-1;;;;;11114:36:28;;;;;:86;;11151:7;;11160:8;;11170:10;;11182:4;;11188:11;;11114:86;;;:::i;1832:227::-;1062:42;1921:22;1882:7;;-1:-1:-1;;;;;1921:22:28;;1949:106;;1997:10;1990:17;;;1832:227;:::o;1949:106::-;2035:13;1832:227;-1:-1:-1;1832:227:28:o;3544:382:78:-;3679:16;;;3693:1;3679:16;;;;;;;;3626;;;;3679;3693:1;3679:16;;;;;;;;;;-1:-1:-1;3679:16:78;3650:45;;3740:13;-1:-1:-1;;;;;3724:31:78;3716:40;;3701:9;3711:1;3701:12;;;;;;;;:::i;:::-;;;;;;:55;;;;;3777:13;3762:9;3772:1;3762:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;3797:13;3813:64;1081:66;3850:9;3797:13;-1:-1:-1;;;3813:26:78;:64::i;:::-;3797:80;;3891:29;3912:5;3899:20;;7164:5:31;7078:97;3891:29:78;3883:38;3544:382;-1:-1:-1;;;;;3544:382:78:o;11746:285:24:-;11932:94;11942:7;11951:8;11961:10;11973:14;11989:11;12002:23;12017:7;12002:14;:23::i;:::-;11932:9;:94::i;:::-;11746:285;;;;;:::o;35844:541::-;36001:7;36138:242;36182:59;36223:7;36232:8;36182:40;:59::i;:::-;36259:31;;;;4322:19:3;:27;579:1:34;4321:44:3;4287:79;;;4274:93;36308:63:24;36347:11;36360:10;36308:38;:63::i;:::-;36138:17;:242::i;6620:2614::-;-1:-1:-1;;;6880:7:24;:35;;;;;;:83;;-1:-1:-1;6940:23:24;6919:7;:44;;;;6880:83;6876:209;;;-1:-1:-1;;;7035:7:24;7068;7051:25;;;;;;15259:19:214;;15303:2;15294:12;;15099:213;7051:25:24;;;;-1:-1:-1;;7051:25:24;;;;;;;;;;6980:98;;;;;;;;;;:::i;6876:209::-;7131:22;:11;:20;:22::i;:::-;7194:40;:9;7227:4;7194:18;:40::i;:::-;7240:43;:11;7275:5;7240:20;:43::i;:::-;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;7371:8:24;:15;:40;7367:148;;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;7492:15:24;;7428:80;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;15932:18;;7428:80:24;15785:248:214;7367:148:24;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;7565:10:24;:17;:44;7561:158;;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;7694:17:24;;7626:86;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;15932:18;;7626:86:24;15785:248:214;7561:158:24;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;7776:50:24;7772:171;;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;1684:38:34;5236:60:21;;;1516:34:34;5159:59:21;;;5153:144;5138:159;;7843:93:24;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;15932:18;;7843:93:24;15785:248:214;7772:171:24;7985:29;:11;:27;:29::i;:::-;7952;:11;:27;:29::i;:::-;:62;7948:225;;8090:29;:11;:27;:29::i;:::-;8129;:11;:27;:29::i;:::-;8031:135;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;15932:18;;8031:135:24;15785:248:214;7948:225:24;8216:30;:11;:28;:30::i;:::-;8182;:11;:28;:30::i;:::-;:64;8178:230;;8323:30;:11;:28;:30::i;:::-;8363;:11;:28;:30::i;:::-;8263:138;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;15932:18;;8263:138:24;15785:248:214;8178:230:24;8505:9;8500:314;8520:29;:11;:27;:29::i;:::-;8516:1;:33;8500:314;;;8594:44;:22;:11;8614:1;8594:19;:22::i;:::-;:42;;;;;;;;:::i;:::-;;:44::i;:::-;579:1:34;4322:19:3;:27;;;4321:44;4287:79;;;4274:93;;8568:70:24;8564:244;;579:1:34;4322:19:3;:27;;;4321:44;4287:79;;;4274:93;;8745:44:24;:22;:11;8765:1;8745:19;:22::i;:44::-;8657:142;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;15932:18;;8657:142:24;15785:248:214;8564:244:24;8551:3;;8500:314;;;;8876:31;8899:7;8876:22;:31::i;:::-;8872:140;;;8962:7;8995;8978:25;;;;;;15259:19:214;;15303:2;15294:12;;15099:213;8978:25:24;;;;-1:-1:-1;;8978:25:24;;;;;;;;;;8924:81;;;;;;;;;:::i;8872:140::-;9053:103;9065:7;9074:11;9087:9;9098:11;9122:8;9111:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;9144:10;9133:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;9053:11;:103::i;:::-;9192:37;9215:7;9224:4;9192:22;:37::i;22785:355::-;22957:178;22991:7;23016:8;23046:63;23085:11;23098:10;23046:38;:63::i;:::-;23124:4;22957:16;:178::i;3998:652::-;4065:11;4301:64;;;4297:111;;-1:-1:-1;1339:66:33;;3998:652:24;-1:-1:-1;3998:652:24:o;4297:111::-;4452:185;4498:85;1210:66:33;4574:7:24;4498:40;:85::i;:::-;4603:2;4625:1;4452:17;:185::i;12891:3164::-;13185:23;13164:7;:44;;;13160:211;;13291:7;13262:88;13300:8;13310:10;13322:14;13338:11;13262:88;;;;;;;;;:::i;:::-;;;;;;;;13358:7;;13160:211;13509:22;13534:24;13550:7;13534:15;:24::i;:::-;13509:49;;13569:9;13564:340;13584:5;:12;13580:1;:16;13564:340;;;13611:9;13633:5;13639:1;13633:8;;;;;;;;:::i;:::-;;;;;;;13611:31;;13654:33;409:6:36;13654:4:24;:14;;;;;:33;;;;:::i;:::-;13650:248;;;13699:190;;;;;3536:35:4;;;;;13699:47:24;;:190;;13758:7;;13777:8;;13797:10;;13819:14;;13845:11;;13868;;13699:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13650:248;-1:-1:-1;13598:3:24;;13564:340;;;;13981:7;13952:88;13990:8;14000:10;14012:14;14028:11;13952:88;;;;;;;;;:::i;:::-;;;;;;;;14104:26;14133:59;14174:7;14183:8;14133:40;:59::i;:::-;14104:88;-1:-1:-1;14198:21:24;894:4:18;884:15;;14198:54:24;;14258:149;14296:18;14330:1;14347:10;:17;14387:13;14258;:149::i;:::-;14507:1;14474:30;:11;:28;:30::i;:::-;:34;14470:1174;;;14593:33;14629:66;14677:7;14686:8;14629:47;:66::i;:::-;695:28:23;;;14593:102:24;-1:-1:-1;894:4:18;884:15;;14869:47:24;;15025:27;15060:25;15098:7;15093:545;15111:30;:11;:28;:30::i;:::-;15107:1;:34;;;15093:545;;;15177:63;15219:7;15228:8;15238:1;15177:41;:63::i;:::-;15155:85;-1:-1:-1;15270:25:24;:14;15293:1;7012:16:19;;1055;7012;967;7001:27;6961:68;6939:92;;;6824:218;15270:25:24;15250:45;;15305:170;15347:19;15386:1;15407:17;15451:13;15305;:170::i;:::-;15485:34;15502:17;15485:34;;:::i;:::-;;-1:-1:-1;15616:3:24;;15093:545;;;;14510:1134;;;14470:1174;15718:9;15713:338;15733:5;:12;15729:1;:16;15713:338;;;15760:9;15782:5;15788:1;15782:8;;;;;;;;:::i;:::-;;;;;;;15760:31;;15803:32;503:6:36;15803:4:24;:14;;;;;:32;;;;:::i;:::-;15799:246;;;15847:189;;;;;3536:35:4;;;;;15847:46:24;;:189;;15905:7;;15924:8;;15944:10;;15966:14;;15992:11;;16015;;15847:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15799:246;-1:-1:-1;15747:3:24;;15713:338;;50476:191;50578:7;50642;50651:8;50625:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;50625:35:24;;;;;;;;;50615:46;;50625:35;50615:46;;;;42033:22;50608:53;;50476:191;-1:-1:-1;;;50476:191:24:o;51493:242::-;51589:7;;;51628:84;51648:10;51644:14;;:1;:14;51628:84;;;51673:32;4274:93:3;4322:19;:27;;;579:1:34;4321:44:3;4287:79;;;4274:93;51673:32:24;;:::i;:::-;;-1:-1:-1;51660:3:24;;51628:84;;;-1:-1:-1;51724:6:24;51493:242;-1:-1:-1;;;51493: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;6617:1665:3:-;6300:45;6680:87;;6722:38;;;;;;;;;;;;;;6680:87;6773:25;6801:30;:11;:28;:30::i;:::-;6773:58;;944:1:34;6841:17:3;:38;6837:156;;;6896:90;;;;;;;;15959:25:214;;;944:1:34;16000:18:214;;;15993:34;15932:18;;6896:90:3;15785:248:214;6837:156:3;6999:24;7026:29;:11;:27;:29::i;:::-;6999:56;-1:-1:-1;7061:23:3;7087:36;7106:17;6999:56;7087:36;:::i;:::-;7061:62;;689:2:34;7133:15:3;:34;7129:141;;;7184:79;;;;;;;;15959:25:214;;;689:2:34;16000:18:214;;;15993:34;15932:18;;7184:79:3;15785:248:214;7129:141:3;7312:25;7348:9;7343:429;7363:16;7359:1;:20;7343:429;;;4274:93;4322:19;:27;;;579:1:34;4321:44:3;4287:79;;;4274:93;7391:24;7452:21;;;7448:234;;7492:52;;;;;;;;2632:25:214;;;2605:18;;7492:52:3;2486:177:214;7448:234:3;376:2:34;7563:16:3;:28;7559:123;;;7610:63;;;;;;;;2632:25:214;;;2605:18;;7610:63:3;2486:177:214;7559:123:3;7689:37;7710:16;7689:37;;:::i;:::-;;-1:-1:-1;;7754:3:3;;7343:429;;;;7839:30;:11;:28;:30::i;:::-;7818:17;:51;7814:184;;7941:30;:11;:28;:30::i;:::-;7886:105;;;;;;;;15959:25:214;;;;16000:18;;;15993:34;;;15932:18;;7886:105:3;15785:248:214;7814:184:3;8054:16;8037:241;689:2:34;8072:1:3;:20;8037:241;;;4274:93;4322:19;:27;;;579:1:34;4321:44:3;4287:79;;;4274:93;8168:21;;8164:108;;8208:55;;;;;;;;2632:25:214;;;2605:18;;8208:55:3;2486:177:214;8164:108:3;-1:-1:-1;8094:3:3;;8037:241;;5760:1635:21;5867:10;5866:11;:31;;;;-1:-1:-1;6300:45:3;;5881:16:21;5862:81;;;5906:37;;-1:-1:-1;;;5906:37:21;;5941:1;5906:37;;;2632:25:214;2605:18;;5906:37:21;2486:177:214;5862:81:21;6006:25;6034;:6;:23;:25::i;:::-;6006:53;;944:1:34;6069:17:21;:38;6065:104;;;6116:53;;-1:-1:-1;;;6116:53:21;;;;;2632:25:214;;;2605:18;;6116:53:21;2486:177: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;;;;;2632:25:214;;;2605:18;;6412:51:21;2486:177: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;;;;;;2632:25:214;;2620:2;2605:18;;2486:177;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;;4978:171:3;5051:7;579:1:34;1533;1517:13;1529:1;376:2;1517:13;:::i;:::-;:17;;;;:::i;:::-;1516:34;;;;:::i;:::-;5087:11:3;5066:78;5079:64;;5066:78;;4978:171;-1:-1:-1;;4978:171:3:o;5376:173::-;5450:7;579:1:34;1705;;1685:13;1697:1;376:2;1685: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;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;3592:121::-;3270:445;3195:520;;;:::o;2855:314:31:-;2969:16;;;2983:1;2969:16;;;;;;;;;2921:11;;;;2969:16;;;;;;;;;;;;-1:-1:-1;2969:16:31;2940:45;;3024:10;2991:9;3001:1;2991:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3042:13;3058:62;970:66;3093:9;3042:13;-1:-1:-1;;;3058:24:31;:62::i;19791:676:33:-;19999:24;20026:49;20039:11;20052:9;20063:11;20026:12;:49::i;:::-;19999:76;;20082:29;20114:55;20128:18;20148:20;20114:13;:55::i;:::-;20082:87;;20175:25;20203:55;20217:18;20237:20;20203:13;:55::i;:::-;20294:16;;;20308:1;20294:16;;;;;;;;;20175:83;;-1:-1:-1;20265:26:33;;20294:16;;;;;;;;;;;;-1:-1:-1;20294:16:33;20265:45;;20349:7;20316:9;20326:1;20316:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;20364:98;1210:66;20394:9;20405:11;20418:15;20435:12;1339:66;20364:19;:98::i;4219:268:31:-;4319:16;;;4333:1;4319:16;;;;;;;;;4290:26;;4319:16;;;;;;;;;;;-1:-1:-1;4319:16:31;4290:45;;4374:10;4341:9;4351:1;4341:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;4392:90;970:66;954:83;;4427:9;4438:1;4459:6;4441:26;;;;;;19911:14:214;19904:22;19899:3;19895:32;19883:45;;19953:1;19944:11;;19760:201;4441:26:31;;;;-1:-1:-1;;4441:26:31;;;;;;;;;-1:-1:-1;;;4392:24:31;:90::i;:::-;4284:203;4219:268;;:::o;16691:1682:24:-;16891:23;16870:7;:44;;;16866:235;;17024:7;16977:103;17043:8;17060:5;17073:4;16977:103;;;;;;;;:::i;:::-;;;;;;;;17088:7;;16866:235;17107:16;17126:59;17167:7;17176:8;17126:40;:59::i;:::-;17107:78;;17331:22;17356:24;17372:7;17356:15;:24::i;:::-;17331:49;;17391:9;17386:328;17406:5;:12;17402:1;:16;17386:328;;;17433:9;17455:5;17461:1;17455:8;;;;;;;;:::i;:::-;;;;;;;17433:31;;17476:41;614:6:36;17476:4:24;:14;;;;;:41;;;;:::i;:::-;17472:236;;;17529:170;;;;;3536:35:4;;;;;17529:54:24;;:170;;17605:7;;17634:8;;17661:5;;17684:4;;17529:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17472:236;-1:-1:-1;17420:3:24;;17386:328;;;;17818:7;17771:103;17837:8;17854:5;17867:4;17771:103;;;;;;;;:::i;:::-;;;;;;;;17924:70;17956:8;17974:5;17924:70;;17987:4;17924:13;:70::i;:::-;18048:9;18043:326;18063:5;:12;18059:1;:16;18043:326;;;18090:9;18112:5;18118:1;18112:8;;;;;;;;:::i;:::-;;;;;;;18090:31;;18133:40;723:6:36;18133:4:24;:14;;;;;:40;;;;:::i;:::-;18129:234;;;18185:169;;;;;3536:35:4;;;;;18185:53:24;;:169;;18260:7;;18289:8;;18316:5;;18339:4;;18185:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18129:234;-1:-1:-1;18077:3:24;;18043:326;;50919:282;51164:30;;;;;;21290:19:214;;;21325:12;;;21318:28;;;51007:7:24;;21362:12:214;;51164:30:24;21102:278:214;3655:342:32;3771:16;;;3785:1;3771:16;;;;;;;;;3712:22;;3742:26;;3771:16;;;;;;;;;;;;-1:-1:-1;3771:16:32;3742:45;;3826:7;3793:9;3803:1;3793:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;3841:18;3862:49;968:66;3898:9;3841:18;3862:25;:49::i;:::-;3841:70;;3925:66;:44;3946:5;3953:1;3956:5;:12;3925:20;:44::i;:::-;:64;:66::i;3035:136:4:-;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;;3473:12;-1:-1:-1;;579:1:34;804:25:35;;782:48;3761:21:23;;3672:20;;3694:9;;3668:36;3757:32;;3617:184;3573:238;;-1:-1:-1;1489:2340:23;;;;:::o;53041:230:24:-;53162:7;53246;53255:8;53229:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;53229:35:24;;;;;;;;;53219:46;;53229:35;53219:46;;;;42196:40;53192:73;;53041:230;-1:-1:-1;;;53041:230:24:o;52412:274::-;52556:7;52661;52670:8;52644:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;52634:46;;;;;;52613:17;52606:25;;52586:45;;;42105:34;52586:45;:94;52578:103;;52571:110;;52412:274;;;;;:::o;4597:171:3:-;4671:7;579:1:34;1355:13;1367:1;376:2;1355:13;:::i;:::-;1354:30;;;;:::i;:::-;4693:70:3;;;;;4597:171;-1:-1:-1;4597:171:3:o;24203:209:33:-;24354:53;;;;;;21656:19:214;;;21691:12;;;21684:28;;;24327:12:33;21728::214;;;21721:28;;;24327:12:33;21765::214;;24354:53:33;21385:398:214;24603:388:33;24911:32;;24945:34;;24729:29;;2643:5:19;;;967:16;2674:39;;;;2656:58;2755:23;2740:39;;;;2722:58;24889:91:33;2502:344:19;25156:234:33;25282:12;25333:18;25362:20;25309:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;25302:83;;25156:234;;;;:::o;966:162:23:-;1055:68;1061:14;1077:6;1085:4;:11;1098:24;1117:4;894::18;884:15;;758:151;1098:24:23;1055:5;:68::i;36853:522:24:-;36989:12;37113:257;37152:79;37194:7;37203:8;37213:17;37152:41;:79::i;:::-;37249:1;37268:93;37343:17;37268:66;37316:7;37325:8;37268:47;:66::i;:::-;:74;7012:16:19;;1055;7012;967;7001:27;6961:68;6939:92;;;6824:218;37268:93:24;37113: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;53609:301:24:-;53730:13;53822:82;53853:48;53883:7;53892:8;53853: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;14:332:214:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;230:66;223:5;219:78;212:5;209:89;199:117;;312:1;309;302:12;774:184;-1:-1:-1;;;823:1:214;816:88;923:4;920:1;913:15;947:4;944:1;937:15;963:253;1035:2;1029:9;1077:4;1065:17;;1112:18;1097:34;;1133:22;;;1094:62;1091:88;;;1159:18;;:::i;:::-;1195:2;1188:22;963:253;:::o;1221:334::-;1292:2;1286:9;1348:2;1338:13;;-1:-1:-1;;1334:86:214;1322:99;;1451:18;1436:34;;1472:22;;;1433:62;1430:88;;;1498:18;;:::i;:::-;1534:2;1527:22;1221:334;;-1:-1:-1;1221:334:214:o;1560:245::-;1608:4;1641:18;1633:6;1630:30;1627:56;;;1663:18;;:::i;:::-;-1:-1:-1;1720:2:214;1708:15;-1:-1:-1;;1704:88:214;1794:4;1700:99;;1560:245::o;1810:671::-;1878:6;1931:2;1919:9;1910:7;1906:23;1902:32;1899:52;;;1947:1;1944;1937:12;1899:52;1987:9;1974:23;2020:18;2012:6;2009:30;2006:50;;;2052:1;2049;2042:12;2006:50;2075:22;;2128:4;2120:13;;2116:27;-1:-1:-1;2106:55:214;;2157:1;2154;2147:12;2106:55;2193:2;2180:16;2218:48;2234:31;2262:2;2234:31;:::i;:::-;2218:48;:::i;:::-;2289:2;2282:5;2275:17;2329:7;2324:2;2319;2315;2311:11;2307:20;2304:33;2301:53;;;2350:1;2347;2340:12;2301:53;2405:2;2400;2396;2392:11;2387:2;2380:5;2376:14;2363:45;2449:1;2428:14;;;2444:2;2424:23;2417:34;;;;2432:5;1810:671;-1:-1:-1;;;;1810:671:214:o;2668:250::-;2753:1;2763:113;2777:6;2774:1;2771:13;2763:113;;;2853:11;;;2847:18;2834:11;;;2827:39;2799:2;2792:10;2763:113;;;-1:-1:-1;;2910:1:214;2892:16;;2885:27;2668:250::o;2923:321::-;2999:5;3028:52;3044:35;3072:6;3044:35;:::i;3028:52::-;3019:61;;3103:6;3096:5;3089:21;3143:3;3134:6;3129:3;3125:16;3122:25;3119:45;;;3160:1;3157;3150:12;3119:45;3173:65;3231:6;3224:4;3217:5;3213:16;3208:3;3173:65;:::i;3249:237::-;3303:5;3356:3;3349:4;3341:6;3337:17;3333:27;3323:55;;3374:1;3371;3364:12;3323:55;3396:84;3476:3;3467:6;3461:13;3454:4;3446:6;3442:17;3396:84;:::i;3491:1207::-;3607:6;3615;3668:2;3656:9;3647:7;3643:23;3639:32;3636:52;;;3684:1;3681;3674:12;3636:52;3716:9;3710:16;-1:-1:-1;;3759:5:214;3755:78;3748:5;3745:89;3735:117;;3848:1;3845;3838:12;3735:117;3920:2;3905:18;;3899:25;3871:5;;-1:-1:-1;3943:18:214;3973:14;;;3970:34;;;4000:1;3997;3990:12;3970:34;4023:22;;;;4079:4;4061:16;;;4057:27;4054:47;;;4097:1;4094;4087:12;4054:47;4125:22;;:::i;:::-;4178:2;4172:9;4206:2;4196:8;4193:16;4190:36;;;4222:1;4219;4212:12;4190:36;4251:56;4299:7;4288:8;4284:2;4280:17;4251:56;:::i;:::-;4242:7;4235:73;;4347:2;4343;4339:11;4333:18;4376:2;4366:8;4363:16;4360:36;;;4392:1;4389;4382:12;4360:36;4430:56;4478:7;4467:8;4463:2;4459:17;4430:56;:::i;:::-;4425:2;4416:7;4412:16;4405:82;;4526:2;4522;4518:11;4512:18;4555:2;4545:8;4542:16;4539:36;;;4571:1;4568;4561:12;4539:36;4609:56;4657:7;4646:8;4642:2;4638:17;4609:56;:::i;:::-;4604:2;4595:7;4591:16;4584:82;;4685:7;4675:17;;;;;3491:1207;;;;;:::o;5353:287::-;5482:3;5520:6;5514:13;5536:66;5595:6;5590:3;5583:4;5575:6;5571:17;5536:66;:::i;:::-;5618:16;;;;;5353:287;-1:-1:-1;;5353:287:214:o;6511:357::-;6629:12;;6676:4;6665:16;;;6659:23;;6629:12;6694:16;;6691:171;;;-1:-1:-1;;6768:4:214;6764:17;;;;6761:1;6757:25;6753:98;6742:110;;6511:357;-1:-1:-1;6511:357:214:o;7481:329::-;7522:3;7560:5;7554:12;7587:6;7582:3;7575:19;7603:76;7672:6;7665:4;7660:3;7656:14;7649:4;7642:5;7638:16;7603:76;:::i;:::-;7724:2;7712:15;-1:-1:-1;;7708:88:214;7699:98;;;;7799:4;7695:109;;7481:329;-1:-1:-1;;7481:329:214:o;7815:319::-;8021:6;8010:9;8003:25;8064:2;8059;8048:9;8044:18;8037:30;7984:4;8084:44;8124:2;8113:9;8109:18;8101:6;8084:44;:::i;8139:458::-;8218:6;8271:2;8259:9;8250:7;8246:23;8242:32;8239:52;;;8287:1;8284;8277:12;8239:52;8320:9;8314:16;8353:18;8345:6;8342:30;8339:50;;;8385:1;8382;8375:12;8339:50;8408:22;;8461:4;8453:13;;8449:27;-1:-1:-1;8439:55:214;;8490:1;8487;8480:12;8439:55;8513:78;8583:7;8578:2;8572:9;8567:2;8563;8559:11;8513:78;:::i;8602:321::-;8680:6;8733:2;8721:9;8712:7;8708:23;8704:32;8701:52;;;8749:1;8746;8739:12;8701:52;8781:9;8775:16;-1:-1:-1;;;;;8824:5:214;8820:54;8813:5;8810:65;8800:93;;8889:1;8886;8879:12;8928:421;9193:6;9182:9;9175:25;9236:6;9231:2;9220:9;9216:18;9209:34;9279:2;9274;9263:9;9259:18;9252:30;9156:4;9299:44;9339:2;9328:9;9324:18;9316:6;9299:44;:::i;9354:184::-;-1:-1:-1;;;9403:1:214;9396:88;9503:4;9500:1;9493:15;9527:4;9524:1;9517:15;9812:184;-1:-1:-1;;;9861:1:214;9854:88;9961:4;9958:1;9951:15;9985:4;9982:1;9975:15;10001:125;10066:9;;;10087:10;;;10084:36;;;10100:18;;:::i;10131:697::-;10352:3;10390:6;10384:13;10406:66;10465:6;10460:3;10453:4;10445:6;10441:17;10406:66;:::i;:::-;10535:13;;10494:16;;;;10557:70;10535:13;10494:16;10604:4;10592:17;;10557:70;:::i;:::-;10694:13;;10649:20;;;10716:70;10694:13;10649:20;10763:4;10751:17;;10716:70;:::i;:::-;10802:20;;10131:697;-1:-1:-1;;;;;10131:697:214:o;10833:439::-;10886:3;10924:5;10918:12;10951:6;10946:3;10939:19;10977:4;11006;11001:3;10997:14;10990:21;;11045:4;11038:5;11034:16;11068:1;11078:169;11092:6;11089:1;11086:13;11078:169;;;11153:13;;11141:26;;11187:12;;;;11222:15;;;;11114:1;11107:9;11078:169;;;-1:-1:-1;11263:3:214;;10833:439;-1:-1:-1;;;;;10833:439:214:o;11277:791::-;11669:6;11658:9;11651:25;11712:3;11707:2;11696:9;11692:18;11685:31;11632:4;11739:57;11791:3;11780:9;11776:19;11768:6;11739:57;:::i;:::-;11844:9;11836:6;11832:22;11827:2;11816:9;11812:18;11805:50;11878:32;11903:6;11895;11878:32;:::i;:::-;11864:46;;11946:6;11941:2;11930:9;11926:18;11919:34;12002:9;11994:6;11990:22;11984:3;11973:9;11969:19;11962:51;12030:32;12055:6;12047;12030:32;:::i;:::-;12022:40;11277:791;-1:-1:-1;;;;;;;;11277:791:214:o;12073:546::-;12395:6;12384:9;12377:25;12438:3;12433:2;12422:9;12418:18;12411:31;12358:4;12459:57;12511:3;12500:9;12496:19;12488:6;12459:57;:::i;:::-;12564:4;12552:17;;;;12547:2;12532:18;;12525:45;-1:-1:-1;12601:2:214;12586:18;12579:34;12451:65;12073:546;-1:-1:-1;;12073:546:214:o;12624:184::-;12694:6;12747:2;12735:9;12726:7;12722:23;12718:32;12715:52;;;12763:1;12760;12753:12;12715:52;-1:-1:-1;12786:16:214;;12624:184;-1:-1:-1;12624:184:214:o;12813:656::-;12865:3;12896;12928:5;12922:12;12955:6;12950:3;12943:19;12981:4;13010;13005:3;13001:14;12994:21;;13068:4;13058:6;13055:1;13051:14;13044:5;13040:26;13036:37;13107:4;13100:5;13096:16;13130:1;13140:303;13154:6;13151:1;13148:13;13140:303;;;-1:-1:-1;;13229:5:214;13223:4;13219:16;13215:89;13210:3;13203:102;13326:37;13358:4;13349:6;13343:13;13326:37;:::i;:::-;13421:12;;;;13318:45;-1:-1:-1;13386:15:214;;;;13176:1;13169:9;13140:303;;;-1:-1:-1;13459:4:214;;12813:656;-1:-1:-1;;;;;;;12813:656:214:o;13474:908::-;14000:6;13989:9;13982:25;14043:6;14038:2;14027:9;14023:18;14016:34;14086:6;14081:2;14070:9;14066:18;14059:34;14129:6;14124:2;14113:9;14109:18;14102:34;14173:3;14167;14156:9;14152:19;14145:32;13963:4;14200:56;14251:3;14240:9;14236:19;14228:6;14200:56;:::i;:::-;14305:9;14297:6;14293:22;14287:3;14276:9;14272:19;14265:51;14333:43;14369:6;14361;14333:43;:::i;:::-;14325:51;13474:908;-1:-1:-1;;;;;;;;;13474:908:214:o;14387:707::-;14755:6;14744:9;14737:25;14798:3;14793:2;14782:9;14778:18;14771:31;14718:4;14825:57;14877:3;14866:9;14862:19;14854:6;14825:57;:::i;:::-;14930:4;14922:6;14918:17;14913:2;14902:9;14898:18;14891:45;14984:9;14976:6;14972:22;14967:2;14956:9;14952:18;14945:50;15012:32;15037:6;15029;15012:32;:::i;:::-;15004:40;;;15081:6;15075:3;15064:9;15060:19;15053:35;14387:707;;;;;;;;:::o;15317:463::-;15563:66;15555:6;15551:79;15540:9;15533:98;15667:6;15662:2;15651:9;15647:18;15640:34;15710:2;15705;15694:9;15690:18;15683:30;15514:4;15730:44;15770:2;15759:9;15755:18;15747:6;15730:44;:::i;16038:184::-;-1:-1:-1;;;16087:1:214;16080:88;16187:4;16184:1;16177:15;16211:4;16208:1;16201:15;16553:280;16752:2;16741:9;16734:21;16715:4;16772:55;16823:2;16812:9;16808:18;16800:6;16772:55;:::i;16838:688::-;17171:3;17160:9;17153:22;17134:4;17198:57;17250:3;17239:9;17235:19;17227:6;17198:57;:::i;:::-;17303:9;17295:6;17291:22;17286:2;17275:9;17271:18;17264:50;17337:32;17362:6;17354;17337:32;:::i;:::-;17323:46;;17405:6;17400:2;17389:9;17385:18;17378:34;17460:9;17452:6;17448:22;17443:2;17432:9;17428:18;17421:50;17488:32;17513:6;17505;17488:32;:::i;:::-;17480:40;16838:688;-1:-1:-1;;;;;;;16838:688:214:o;17531:895::-;17983:6;17972:9;17965:25;18026:3;18021:2;18010:9;18006:18;17999:31;17946:4;18053:57;18105:3;18094:9;18090:19;18082:6;18053:57;:::i;:::-;18158:9;18150:6;18146:22;18141:2;18130:9;18126:18;18119:50;18192:32;18217:6;18209;18192:32;:::i;:::-;18178:46;;18260:6;18255:2;18244:9;18240:18;18233:34;18316:9;18308:6;18304:22;18298:3;18287:9;18283:19;18276:51;18344:32;18369:6;18361;18344:32;:::i;:::-;18336:40;;;18413:6;18407:3;18396:9;18392:19;18385:35;17531:895;;;;;;;;;:::o;18431:639::-;18681:6;18676:3;18669:19;18651:3;18707:2;18740;18735:3;18731:12;18772:6;18766:13;18837:2;18829:6;18825:15;18858:1;18868:175;18882:6;18879:1;18876:13;18868:175;;;18945:13;;18931:28;;18981:14;;;;19018:15;;;;18904:1;18897:9;18868:175;;;-1:-1:-1;19059:5:214;;18431:639;-1:-1:-1;;;;;;;18431:639:214:o;19075:184::-;-1:-1:-1;;;19124:1:214;19117:88;19224:4;19221:1;19214:15;19248:4;19245:1;19238:15;19454:128;19521:9;;;19542:11;;;19539:37;;;19556:18;;:::i;19587:168::-;19660:9;;;19691;;19708:15;;;19702:22;;19688:37;19678:71;;19729:18;;:::i;19966:511::-;20217:2;20206:9;20199:21;20180:4;20243:56;20295:2;20284:9;20280:18;20272:6;20243:56;:::i;:::-;20347:14;20339:6;20335:27;20330:2;20319:9;20315:18;20308:55;20411:9;20403:6;20399:22;20394:2;20383:9;20379:18;20372:50;20439:32;20464:6;20456;20439:32;:::i;:::-;20431:40;19966:511;-1:-1:-1;;;;;;19966:511:214:o;20482:615::-;20792:6;20781:9;20774:25;20835:3;20830:2;20819:9;20815:18;20808:31;20755:4;20862:57;20914:3;20903:9;20899:19;20891:6;20862:57;:::i;:::-;20967:14;20959:6;20955:27;20950:2;20939:9;20935:18;20928:55;21031:9;21023:6;21019:22;21014:2;21003:9;20999:18;20992:50;21059:32;21084:6;21076;21059:32;:::i;21788:492::-;21963:3;22001:6;21995:13;22017:66;22076:6;22071:3;22064:4;22056:6;22052:17;22017:66;:::i;:::-;22146:13;;22105:16;;;;22168:70;22146:13;22105:16;22215:4;22203:17;;22168:70;:::i;:::-;22254:20;;21788:492;-1:-1:-1;;;;21788:492:214:o;22285:359::-;22488:2;22477:9;22470:21;22451:4;22508:44;22548:2;22537:9;22533:18;22525:6;22508:44;:::i;:::-;22583:2;22568:18;;22561:34;;;;-1:-1:-1;22626:2:214;22611:18;22604:34;22500:52;22285:359;-1:-1:-1;22285:359:214:o","linkReferences":{},"immutableReferences":{"23059":[{"start":507,"length":32}],"96467":[{"start":727,"length":32}]}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","install(bytes)":"13861fb5","installRoot(bytes)":"7c5b0335","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.24+commit.e11b9ed9\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"ERC721Module_InvalidNamespace\",\"type\":\"error\"},{\"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\":[],\"name\":\"Module_AlreadyInstalled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"address\",\"name\":\"dependency\",\"type\":\"address\"}],\"name\":\"Module_MissingDependency\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_NonRootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_RootInstallNotSupported\",\"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\":\"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\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"encodedArgs\",\"type\":\"bytes\"}],\"name\":\"install\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"installRoot\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"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.\"}}],\"Module_MissingDependency(address)\":[{\"params\":{\"dependency\":\"The address of the dependency.\"}}],\"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\":{\"_msgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"value\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"install(bytes)\":{\"details\":\"This function is invoked by the World contract during `installModule` process. The module expects to be called via the World contract and thus installs itself on the `msg.sender`. Logic might differ from `installRoot`, for example, this might accept namespace parameters.\",\"params\":{\"encodedArgs\":\"The ABI encoded arguments that may be needed during the installation process.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.\",\"params\":{\"interfaceId\":\"The bytes4 identifier for the interface.\"},\"returns\":{\"_0\":\"true if the interface is supported, false otherwise.\"}}},\"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.\"}],\"Module_AlreadyInstalled()\":[{\"notice\":\"Error raised if the provided module is already installed.\"}],\"Module_MissingDependency(address)\":[{\"notice\":\"Error raised if the provided module is missing a dependency.\"}],\"Module_NonRootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in non-root is not supported.\"}],\"Module_RootInstallNotSupported()\":[{\"notice\":\"Error raised if installing in root is not supported.\"}],\"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\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"install(bytes)\":{\"notice\":\"Installs the module.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if the given interfaceId is supported by this contract.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/modules/erc721-puppet/ERC721Module.sol\":\"ERC721Module\"},\"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/FieldLayout.sol\":{\"keccak256\":\"0xf6881fc6c28fc265369dd73936c79e194dc221f872cd28d3bf007f5012dba9e2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7530258c9641a76d9a128f2c6041546a0d2ace67cf988900f51db7bcf99cd43e\",\"dweb:/ipfs/QmUsb7geQHbySyyDSf2jirwHRym8wp88bQASkYnAMSwCqk\"]},\"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/IFieldLayoutErrors.sol\":{\"keccak256\":\"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817\",\"dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8\"]},\"node_modules/@latticexyz/store/src/IPackedCounterErrors.sol\":{\"keccak256\":\"0xb7fea790ba0b4897d68a6ad1b6272969762acda712f8e465655f0b4ea9d86c03\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4227afe9f8fae6c1e691105afd0cea4a17cfa079f55774547a6ae9bc125b4a37\",\"dweb:/ipfs/QmVA8i35XwNNkS2PCNGTvNSQutwFbVx8qYf5SqsqY9KhaV\"]},\"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\":\"0xcca682e9b4ce25691b535b4263b46fe742378e560458193e0a46f9be6682198d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://35df157436b75d740251f03ddc5a7f8841d519ba59a841d287e50e1dd6e5b699\",\"dweb:/ipfs/QmWwHDr5rDa88ZYeSdxQiQ94E3RoJbsnKsRgTScEN3SCG2\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0xf1af17eb0d23488342f7addadecd166c58b21c8a7c2d942d9d57f0ee489463fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d35fceb7562a14c126b996c497a9bae51edc72a0a79aec1dc3ebe6921ea32021\",\"dweb:/ipfs/QmTRDmwg771nVBdjmd77didbDPaaXBY11hbPGXBumuH1XJ\"]},\"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\":\"0x5e50e8c87b09a34f8b4141adb779ccb25f37e8c102ee28dc85dd77db9993db82\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d0ebfe462012320c7795ddd29ca9fc0ee738327a92507b776379aabd34324cf2\",\"dweb:/ipfs/QmacJ8TwoMekCWvv8LMrDRmBBMKkE6yRvAUBN4twWeLMCa\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x3e9eb573557af7e7cf40281ba7b3ebdffb4e3b13ecc49827b307a5f061028087\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://36391ca958dbb9fac695b28ebc5be2e9c47cbff3bab85ba779b08870ee32ef09\",\"dweb:/ipfs/QmZBhQPg2X4HxHaBUyEL7dn4bnuGoKpiHHTTKSYUGNBLh7\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xabefed80f6691fd3b3362a5434e4c24a38d2ca5c51279b722aa25d897b5427d0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a711569d612187f6738a4bb39d8d8419a03ff3da91c45209b4096e5dcdfca53c\",\"dweb:/ipfs/QmWTGSZyrGmbpwfttR8nLzFYqbjg1L3G9P8xfrtzg8QVpH\"]},\"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\":\"0x3f115843507290fa8b5dabee0a69b03397274fb1291d79ecb51ab80055bea5dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0733e8df7e6e5ca91800c97d4914e9743fbe84a4a16bad01c76c1539d0d8046a\",\"dweb:/ipfs/QmeRqJ1tBBgEMc1z29m4UM46QSjxDvrmV2v86J8bNCb4o5\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0xef6e7000b181c2991aeacbf99a9d886f8c4df88878b857713f851185b63a7811\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b079b4773d140ab2c01bdb04facfa56a78f753aea7122fa445b2bfa133411392\",\"dweb:/ipfs/QmWYWKFpwtsPeGdCSxcANgxXUbwAuMMgR7iMVPDSCZxz2A\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0xc27fe981ae23ca9a894a1e9081dcbec8f88fd12e741445b989ff9a756b29c4a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://88dc94ac9c32ed8ac65f6e3e872953be04ce27d1645ba505031b1cd34a99b72a\",\"dweb:/ipfs/QmV8VPFDwm8cA1HFr4Kebgu3YdbqkAwKdrwkHpRP1DBXfv\"]},\"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\":\"0x506379a8fc67e12c3384faf8db13b88440326973e7da4e8914defbdf974e5721\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6aa992c4137302330a374715c922a15f4afc1909680fe83a22808b738453779a\",\"dweb:/ipfs/QmedBdCc7WnUs1yseY1RAPUHMEFVA9UnwAd8xTDwwcDsSE\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0x868d515c7579d909f73cc5353e7a58fdb361d0c9dde83b11fa1529f0c2dd21fe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fdeb6ca2dc6cae645c13cba6a5b08ff495858e32f16f8b54d19784d4da012d37\",\"dweb:/ipfs/QmPyHrJFDUddguyWcYEwfbTisRkzmwDx169feEZCJq8v9Z\"]},\"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\":\"0x02cc84859c7f2b57f2ca5e0bf27e6cb5c5a911f3891c6b12878fb31d18fd2f66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0724e7df4b0752acab63a6f900e84aaafc2eac62f67ab499e9ee02da9abd73c8\",\"dweb:/ipfs/QmQnvC3yBiCR61PfY2uiDG7JiLdy9Cw1a7YhLUd8bLFzab\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xca6f60a79f25447aeb390156c987e77fef837e1b23db294076425759e9dc60f8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bf6c4c5e25a0ed37abcba6346dc59259bb634634edf8cc86bd14db92a32768c8\",\"dweb:/ipfs/QmbQxGchi71XtGAK5uF1H96Xfhh7fAx9c9LpEwc4q5hUxt\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0x59c633598dae70cb65fd0cd5fda434f2beed4421463340ba5ea99ba07843f9c2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://57738241ca53b9cd7883f7e24e7b1c98ca6cde65bae60c73a65f5a0372aa4912\",\"dweb:/ipfs/Qmac9wp9ScJbS9KCCdzLqQikvNn7br293vzfkqXQcjtmeE\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xe5c0071b598577e12f02a423dc2185403cfa8c5a62926fbda83dc5d846cb612a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0a2af2477805d80280401d3c6ffc57117e52e33492f8d3d57bee7fb37636658e\",\"dweb:/ipfs/QmeonwdLCzZVkDfLaLKcMZwTXfkVYXAgZptHbuKri2rtn3\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x88689af9b661f7eb723123fbe212876c2f342cfdb3a01ea7f4e94e9c8f819877\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f39abf5a2306a4346d9909f98d7808474c85ed46d552a503d2a69f4dccb54289\",\"dweb:/ipfs/QmcBLXR8ckXfoBCntFF8YcoTymKNJv7PkmFpgy4zZtTRUd\"]},\"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\":\"0xfc030c5075377169d4384cf89e8a1037dacab1ee53bcb867d5ace75e4ee5df46\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d1c310ce30a1a39380108e75c5f893f58be159cf4b80706b43b8466f4bc4aa0b\",\"dweb:/ipfs/QmXWTsz6Gk8XQKmNNNLHaRuHxJis1dHmoStWoANAYwfmcz\"]},\"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\":\"0x740924c595b68e61be8a49929ca49a4de7115b96f6f6c79ffb509f3ad60d4ba7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b6d91ca5cd0984996fe1c4a3efc204585c8f8cae7bde65a7cda2900928cc36c6\",\"dweb:/ipfs/QmNYGENCUk3d9xPeuepminJWG5u63uF9yVBYPXnbLdbCXV\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0x80430eb75c567e46d5da44070c6c366bca93204fab4243d47faceed7f8b25a54\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://514940d33af3389e4702b72e250c8ce35fad10d55c2c8c8163f5a578390ce903\",\"dweb:/ipfs/QmWZ7qwGCZZVWCXDK1bryF1iL8WevoMQJVSNnmQknvTUMy\"]},\"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\":\"0x6d2ed705d31dafb682c9e13a6ae895b998b32bcca71ea4cd925f8bb55fcdb86a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://dcb65f32eb25b2582f8dd6eaa83e4aaa348ce06a9f9f45c17e536b0b87ab2b92\",\"dweb:/ipfs/QmNfvtWV8wQEKSAoNAN7W1UVftEuyDA4J48WZcGhDSEm9K\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x08f47dfce2d68f889a929040f0456e2a9c1b0052942fda9e24910362c66e811c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e713e64128ec4de5ac4809a26b8618255153f7139a01b545381b18e6ca77362d\",\"dweb:/ipfs/QmSozw8WXSxgp29yVCwgQiZ2kPCiqJLZVWxuRQZ6yMZhR7\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0x3c01fede84dbf9894a5f077953c6296bb69afdd683300599d8560288ab0b02fa\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d216ae4cb61b2f8b67d037f0b53e8c11cc3863d60a1b4926f318f177308d9c73\",\"dweb:/ipfs/QmdvcY4SvUJwV4j3ALYMVfjFRxzgXyACVTJDuVQcTt2yUt\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x36e956904cd2049d910560725f49cd4b6a203d41c179dafdb44eb58d3912ed91\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://71e5088419d47a1d9ea9db79f08b99aa01a2d781d7c7f03e462c2af0efeb8f62\",\"dweb:/ipfs/QmU1cZxtDW1UAMR6kMtNk4NVFf6aUQdtMPQ9P4bi5Tr6iX\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0xc4d0de173640fcc0ec93b2a7fbdc17ce13964e42f3eaf9ba28ad274c422b4664\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://82eef2fa01d32f953eaeb17665edc6557c5f42f101cf95a452af9266c39b9efd\",\"dweb:/ipfs/QmV7pYCFgvGxAacv1mKK7DUsayP4wPRPBTfsnatAxFJKdH\"]},\"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\":\"0xc7fa2c83835749bbc281a1a271b85932d442931fbddfe8bc293c78b192cf9a2b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://30e4d0778aef1660840249cbcdf4936671c3cbb802015aebec20b6668e36b3f5\",\"dweb:/ipfs/QmNx46CnqLacrjJa88xstonoCJ2y9kNGAGst8uBrUK38kn\"]},\"src/modules/erc721-puppet/tables/ERC721Registry.sol\":{\"keccak256\":\"0x93bb13049bd3be6d5e934b8321addd00046d86b0aa14528f901f437dc6846fb4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f2c122ca96f33ccee316225c9d5e654f38ad40b08dcfae21de659be36a19c896\",\"dweb:/ipfs/QmRnqDgrBnShY3EtMAyUEsAhPTPcrCYAedJqtzpq2Z4TNY\"]},\"src/modules/erc721-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0xc294befc05c9cdb99b697334764a207f23485bb4b8f48d283609952d08490dc5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af407679033f7e71f24f740553b382e945b3f9769acc56d9252396953fd547e9\",\"dweb:/ipfs/QmV6pLXopf24acSSG5jARMvJ6YnzF6DYUFseRgT9KBsoey\"]},\"src/modules/erc721-puppet/tables/Owners.sol\":{\"keccak256\":\"0xe5282f7a7b7cc3ff012e9bd3f2f3dad425e8c3a788a0147f2465fbc26af41de2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://09df00d6996129e15923686b130536abd7c8758ca0ca129c8106fc720dfa0446\",\"dweb:/ipfs/QmednQYu1BkDMS9u3hfXSxuQgvWo6Y5yDZ6p9UjYVfVKWK\"]},\"src/modules/erc721-puppet/tables/TokenApproval.sol\":{\"keccak256\":\"0x0d8a9344cd6d7b594c5598be3b5677368523aec45df7c0bc24c43df380ae4f96\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bb9ad1dc43cc9fbcf199e416396bf98134a22b828518e691982a4dd96913de54\",\"dweb:/ipfs/Qmc8VRKFfk44S6W66WYqSjyQMTyoqtDoRMdySieiR1JFPn\"]},\"src/modules/erc721-puppet/tables/TokenURI.sol\":{\"keccak256\":\"0xda42ea136cb76c1ebec8eeb839c94f3c56db9989a4adc21005baa9e71a1e1504\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f9e52494634432ea363a636c679430fb1aa99a90ff5ac34cfe42aa6c4723e39\",\"dweb:/ipfs/QmTqtYhYagLwwYLSEWwuq1xpZLryEKQhkcn1cCm8PX2ktY\"]},\"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\":\"0x3d45aa09db0bce534c74f05db503a656e7fded6edd6df5bd4b01a2643aba079e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1658767a1024a4c1bf85eb8915f27ccc118406c845b693fdfd1f03202a825f06\",\"dweb:/ipfs/QmehUvN5jUV4HDCujFUDBCBwsNZoaqktmXimTvra2XEayX\"]},\"src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"src/modules/tokens/tables/Balances.sol\":{\"keccak256\":\"0xde83d725a3cf14e27d649e4d281036c4595bc5f922597d2933b62df8f701841c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a0afd2364ce7309d1f8853839d993631e5ded140da73d500e62f459bad392e7\",\"dweb:/ipfs/Qmb59XU6qeQhWmkN1hjaWzSR1EdQ9YuCD31vzqrqeB2yrs\"]},\"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":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"ERC721Module_InvalidNamespace"},{"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":[],"type":"error","name":"Module_AlreadyInstalled"},{"inputs":[{"internalType":"address","name":"dependency","type":"address"}],"type":"error","name":"Module_MissingDependency"},{"inputs":[],"type":"error","name":"Module_NonRootInstallNotSupported"},{"inputs":[],"type":"error","name":"Module_RootInstallNotSupported"},{"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":"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":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"value","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[{"internalType":"bytes","name":"encodedArgs","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"install"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function","name":"installRoot"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"sender":"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"value":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"install(bytes)":{"details":"This function is invoked by the World contract during `installModule` process. The module expects to be called via the World contract and thus installs itself on the `msg.sender`. Logic might differ from `installRoot`, for example, this might accept namespace parameters.","params":{"encodedArgs":"The ABI encoded arguments that may be needed during the installation process."}},"supportsInterface(bytes4)":{"details":"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.","params":{"interfaceId":"The bytes4 identifier for the interface."},"returns":{"_0":"true if the interface is supported, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"install(bytes)":{"notice":"Installs the module."},"supportsInterface(bytes4)":{"notice":"Checks if the given interfaceId is supported by this contract."}},"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":"ERC721Module"},"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/FieldLayout.sol":{"keccak256":"0xf6881fc6c28fc265369dd73936c79e194dc221f872cd28d3bf007f5012dba9e2","urls":["bzz-raw://7530258c9641a76d9a128f2c6041546a0d2ace67cf988900f51db7bcf99cd43e","dweb:/ipfs/QmUsb7geQHbySyyDSf2jirwHRym8wp88bQASkYnAMSwCqk"],"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/IFieldLayoutErrors.sol":{"keccak256":"0xaef70c46e412bded1024ac82c957cea81c1d1ab11878a95635531e2ac9673a53","urls":["bzz-raw://cda2c7dc02ee8f0163b1c8d0f3e1e05d48b2a009e5c7365d2418f17bc3455817","dweb:/ipfs/QmXHDZuCPTxjHaeiEaJhA81koX2NJ3Gj1zt5WVWaz77FL8"],"license":"MIT"},"node_modules/@latticexyz/store/src/IPackedCounterErrors.sol":{"keccak256":"0xb7fea790ba0b4897d68a6ad1b6272969762acda712f8e465655f0b4ea9d86c03","urls":["bzz-raw://4227afe9f8fae6c1e691105afd0cea4a17cfa079f55774547a6ae9bc125b4a37","dweb:/ipfs/QmVA8i35XwNNkS2PCNGTvNSQutwFbVx8qYf5SqsqY9KhaV"],"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":"0xcca682e9b4ce25691b535b4263b46fe742378e560458193e0a46f9be6682198d","urls":["bzz-raw://35df157436b75d740251f03ddc5a7f8841d519ba59a841d287e50e1dd6e5b699","dweb:/ipfs/QmWwHDr5rDa88ZYeSdxQiQ94E3RoJbsnKsRgTScEN3SCG2"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0xf1af17eb0d23488342f7addadecd166c58b21c8a7c2d942d9d57f0ee489463fb","urls":["bzz-raw://d35fceb7562a14c126b996c497a9bae51edc72a0a79aec1dc3ebe6921ea32021","dweb:/ipfs/QmTRDmwg771nVBdjmd77didbDPaaXBY11hbPGXBumuH1XJ"],"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":"0x5e50e8c87b09a34f8b4141adb779ccb25f37e8c102ee28dc85dd77db9993db82","urls":["bzz-raw://d0ebfe462012320c7795ddd29ca9fc0ee738327a92507b776379aabd34324cf2","dweb:/ipfs/QmacJ8TwoMekCWvv8LMrDRmBBMKkE6yRvAUBN4twWeLMCa"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x3e9eb573557af7e7cf40281ba7b3ebdffb4e3b13ecc49827b307a5f061028087","urls":["bzz-raw://36391ca958dbb9fac695b28ebc5be2e9c47cbff3bab85ba779b08870ee32ef09","dweb:/ipfs/QmZBhQPg2X4HxHaBUyEL7dn4bnuGoKpiHHTTKSYUGNBLh7"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xabefed80f6691fd3b3362a5434e4c24a38d2ca5c51279b722aa25d897b5427d0","urls":["bzz-raw://a711569d612187f6738a4bb39d8d8419a03ff3da91c45209b4096e5dcdfca53c","dweb:/ipfs/QmWTGSZyrGmbpwfttR8nLzFYqbjg1L3G9P8xfrtzg8QVpH"],"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":"0x3f115843507290fa8b5dabee0a69b03397274fb1291d79ecb51ab80055bea5dd","urls":["bzz-raw://0733e8df7e6e5ca91800c97d4914e9743fbe84a4a16bad01c76c1539d0d8046a","dweb:/ipfs/QmeRqJ1tBBgEMc1z29m4UM46QSjxDvrmV2v86J8bNCb4o5"],"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/PackedCounter.sol":{"keccak256":"0xc27fe981ae23ca9a894a1e9081dcbec8f88fd12e741445b989ff9a756b29c4a7","urls":["bzz-raw://88dc94ac9c32ed8ac65f6e3e872953be04ce27d1645ba505031b1cd34a99b72a","dweb:/ipfs/QmV8VPFDwm8cA1HFr4Kebgu3YdbqkAwKdrwkHpRP1DBXfv"],"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":"0x506379a8fc67e12c3384faf8db13b88440326973e7da4e8914defbdf974e5721","urls":["bzz-raw://6aa992c4137302330a374715c922a15f4afc1909680fe83a22808b738453779a","dweb:/ipfs/QmedBdCc7WnUs1yseY1RAPUHMEFVA9UnwAd8xTDwwcDsSE"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0x868d515c7579d909f73cc5353e7a58fdb361d0c9dde83b11fa1529f0c2dd21fe","urls":["bzz-raw://fdeb6ca2dc6cae645c13cba6a5b08ff495858e32f16f8b54d19784d4da012d37","dweb:/ipfs/QmPyHrJFDUddguyWcYEwfbTisRkzmwDx169feEZCJq8v9Z"],"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":"0x02cc84859c7f2b57f2ca5e0bf27e6cb5c5a911f3891c6b12878fb31d18fd2f66","urls":["bzz-raw://0724e7df4b0752acab63a6f900e84aaafc2eac62f67ab499e9ee02da9abd73c8","dweb:/ipfs/QmQnvC3yBiCR61PfY2uiDG7JiLdy9Cw1a7YhLUd8bLFzab"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xca6f60a79f25447aeb390156c987e77fef837e1b23db294076425759e9dc60f8","urls":["bzz-raw://bf6c4c5e25a0ed37abcba6346dc59259bb634634edf8cc86bd14db92a32768c8","dweb:/ipfs/QmbQxGchi71XtGAK5uF1H96Xfhh7fAx9c9LpEwc4q5hUxt"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0x59c633598dae70cb65fd0cd5fda434f2beed4421463340ba5ea99ba07843f9c2","urls":["bzz-raw://57738241ca53b9cd7883f7e24e7b1c98ca6cde65bae60c73a65f5a0372aa4912","dweb:/ipfs/Qmac9wp9ScJbS9KCCdzLqQikvNn7br293vzfkqXQcjtmeE"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xe5c0071b598577e12f02a423dc2185403cfa8c5a62926fbda83dc5d846cb612a","urls":["bzz-raw://0a2af2477805d80280401d3c6ffc57117e52e33492f8d3d57bee7fb37636658e","dweb:/ipfs/QmeonwdLCzZVkDfLaLKcMZwTXfkVYXAgZptHbuKri2rtn3"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x88689af9b661f7eb723123fbe212876c2f342cfdb3a01ea7f4e94e9c8f819877","urls":["bzz-raw://f39abf5a2306a4346d9909f98d7808474c85ed46d552a503d2a69f4dccb54289","dweb:/ipfs/QmcBLXR8ckXfoBCntFF8YcoTymKNJv7PkmFpgy4zZtTRUd"],"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":"0xfc030c5075377169d4384cf89e8a1037dacab1ee53bcb867d5ace75e4ee5df46","urls":["bzz-raw://d1c310ce30a1a39380108e75c5f893f58be159cf4b80706b43b8466f4bc4aa0b","dweb:/ipfs/QmXWTsz6Gk8XQKmNNNLHaRuHxJis1dHmoStWoANAYwfmcz"],"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":"0x740924c595b68e61be8a49929ca49a4de7115b96f6f6c79ffb509f3ad60d4ba7","urls":["bzz-raw://b6d91ca5cd0984996fe1c4a3efc204585c8f8cae7bde65a7cda2900928cc36c6","dweb:/ipfs/QmNYGENCUk3d9xPeuepminJWG5u63uF9yVBYPXnbLdbCXV"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0x80430eb75c567e46d5da44070c6c366bca93204fab4243d47faceed7f8b25a54","urls":["bzz-raw://514940d33af3389e4702b72e250c8ce35fad10d55c2c8c8163f5a578390ce903","dweb:/ipfs/QmWZ7qwGCZZVWCXDK1bryF1iL8WevoMQJVSNnmQknvTUMy"],"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":"0x6d2ed705d31dafb682c9e13a6ae895b998b32bcca71ea4cd925f8bb55fcdb86a","urls":["bzz-raw://dcb65f32eb25b2582f8dd6eaa83e4aaa348ce06a9f9f45c17e536b0b87ab2b92","dweb:/ipfs/QmNfvtWV8wQEKSAoNAN7W1UVftEuyDA4J48WZcGhDSEm9K"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x08f47dfce2d68f889a929040f0456e2a9c1b0052942fda9e24910362c66e811c","urls":["bzz-raw://e713e64128ec4de5ac4809a26b8618255153f7139a01b545381b18e6ca77362d","dweb:/ipfs/QmSozw8WXSxgp29yVCwgQiZ2kPCiqJLZVWxuRQZ6yMZhR7"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0x3c01fede84dbf9894a5f077953c6296bb69afdd683300599d8560288ab0b02fa","urls":["bzz-raw://d216ae4cb61b2f8b67d037f0b53e8c11cc3863d60a1b4926f318f177308d9c73","dweb:/ipfs/QmdvcY4SvUJwV4j3ALYMVfjFRxzgXyACVTJDuVQcTt2yUt"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x36e956904cd2049d910560725f49cd4b6a203d41c179dafdb44eb58d3912ed91","urls":["bzz-raw://71e5088419d47a1d9ea9db79f08b99aa01a2d781d7c7f03e462c2af0efeb8f62","dweb:/ipfs/QmU1cZxtDW1UAMR6kMtNk4NVFf6aUQdtMPQ9P4bi5Tr6iX"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0xc4d0de173640fcc0ec93b2a7fbdc17ce13964e42f3eaf9ba28ad274c422b4664","urls":["bzz-raw://82eef2fa01d32f953eaeb17665edc6557c5f42f101cf95a452af9266c39b9efd","dweb:/ipfs/QmV7pYCFgvGxAacv1mKK7DUsayP4wPRPBTfsnatAxFJKdH"],"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":"0xc7fa2c83835749bbc281a1a271b85932d442931fbddfe8bc293c78b192cf9a2b","urls":["bzz-raw://30e4d0778aef1660840249cbcdf4936671c3cbb802015aebec20b6668e36b3f5","dweb:/ipfs/QmNx46CnqLacrjJa88xstonoCJ2y9kNGAGst8uBrUK38kn"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Registry.sol":{"keccak256":"0x93bb13049bd3be6d5e934b8321addd00046d86b0aa14528f901f437dc6846fb4","urls":["bzz-raw://f2c122ca96f33ccee316225c9d5e654f38ad40b08dcfae21de659be36a19c896","dweb:/ipfs/QmRnqDgrBnShY3EtMAyUEsAhPTPcrCYAedJqtzpq2Z4TNY"],"license":"MIT"},"src/modules/erc721-puppet/tables/OperatorApproval.sol":{"keccak256":"0xc294befc05c9cdb99b697334764a207f23485bb4b8f48d283609952d08490dc5","urls":["bzz-raw://af407679033f7e71f24f740553b382e945b3f9769acc56d9252396953fd547e9","dweb:/ipfs/QmV6pLXopf24acSSG5jARMvJ6YnzF6DYUFseRgT9KBsoey"],"license":"MIT"},"src/modules/erc721-puppet/tables/Owners.sol":{"keccak256":"0xe5282f7a7b7cc3ff012e9bd3f2f3dad425e8c3a788a0147f2465fbc26af41de2","urls":["bzz-raw://09df00d6996129e15923686b130536abd7c8758ca0ca129c8106fc720dfa0446","dweb:/ipfs/QmednQYu1BkDMS9u3hfXSxuQgvWo6Y5yDZ6p9UjYVfVKWK"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenApproval.sol":{"keccak256":"0x0d8a9344cd6d7b594c5598be3b5677368523aec45df7c0bc24c43df380ae4f96","urls":["bzz-raw://bb9ad1dc43cc9fbcf199e416396bf98134a22b828518e691982a4dd96913de54","dweb:/ipfs/Qmc8VRKFfk44S6W66WYqSjyQMTyoqtDoRMdySieiR1JFPn"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenURI.sol":{"keccak256":"0xda42ea136cb76c1ebec8eeb839c94f3c56db9989a4adc21005baa9e71a1e1504","urls":["bzz-raw://7f9e52494634432ea363a636c679430fb1aa99a90ff5ac34cfe42aa6c4723e39","dweb:/ipfs/QmTqtYhYagLwwYLSEWwuq1xpZLryEKQhkcn1cCm8PX2ktY"],"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":"0x3d45aa09db0bce534c74f05db503a656e7fded6edd6df5bd4b01a2643aba079e","urls":["bzz-raw://1658767a1024a4c1bf85eb8915f27ccc118406c845b693fdfd1f03202a825f06","dweb:/ipfs/QmehUvN5jUV4HDCujFUDBCBwsNZoaqktmXimTvra2XEayX"],"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":"0xde83d725a3cf14e27d649e4d281036c4595bc5f922597d2933b62df8f701841c","urls":["bzz-raw://9a0afd2364ce7309d1f8853839d993631e5ded140da73d500e62f459bad392e7","dweb:/ipfs/Qmb59XU6qeQhWmkN1hjaWzSR1EdQ9YuCD31vzqrqeB2yrs"],"license":"MIT"},"src/utils/AccessControlLib.sol":{"keccak256":"0x9fb1520ec94ce3396760a235db900192b4990c78fd459c449896a74c32b83542","urls":["bzz-raw://4025b37988ece6915b2c867702a4a381829755dd9e5b0b0b32ade85649b00b2a","dweb:/ipfs/QmUsLyetPdhtSdN3MicE1uphXWscKBPSBif8Sd83RC1E6Z"],"license":"MIT"}},"version":1},"id":148}
1
+ {"abi":[{"type":"function","name":"_msgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"_msgValue","inputs":[],"outputs":[{"name":"value","type":"uint256","internalType":"uint256"}],"stateMutability":"pure"},{"type":"function","name":"_world","inputs":[],"outputs":[{"name":"","type":"address","internalType":"address"}],"stateMutability":"view"},{"type":"function","name":"getName","inputs":[],"outputs":[{"name":"","type":"bytes16","internalType":"bytes16"}],"stateMutability":"pure"},{"type":"function","name":"install","inputs":[{"name":"args","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"nonpayable"},{"type":"function","name":"installRoot","inputs":[{"name":"","type":"bytes","internalType":"bytes"}],"outputs":[],"stateMutability":"pure"},{"type":"function","name":"supportsInterface","inputs":[{"name":"interfaceId","type":"bytes4","internalType":"bytes4"}],"outputs":[{"name":"","type":"bool","internalType":"bool"}],"stateMutability":"pure"},{"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":"ERC721Module_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"FieldLayoutLib_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord","inputs":[]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsZero","inputs":[]},{"type":"error","name":"Module_AlreadyInstalled","inputs":[]},{"type":"error","name":"Module_MissingDependency","inputs":[{"name":"dependency","type":"string","internalType":"string"}]},{"type":"error","name":"Module_NonRootInstallNotSupported","inputs":[]},{"type":"error","name":"Module_RootInstallNotSupported","inputs":[]},{"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_InvalidValueSchemaLength","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":"0x60a0604052604051620000129062000050565b604051809103906000f0801580156200002f573d6000803e3d6000fd5b506001600160a01b03166080523480156200004957600080fd5b506200005e565b6156c3806200353083390190565b6080516134b66200007a600039600061034a01526134b66000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806317d7de7c1161005b57806317d7de7c146100df57806345ec93541461010d5780637c5b033514610120578063e1af802c1461013357600080fd5b806301ffc9a714610082578063119df25f146100aa57806313861fb5146100ca575b600080fd5b610095610090366004612c34565b61013b565b60405190151581526020015b60405180910390f35b6100b26101d4565b6040516001600160a01b0390911681526020016100a1565b6100dd6100d8366004612d0e565b6101e3565b005b6040517f6572633732312d7075707065740000000000000000000000000000000000000081526020016100a1565b604051601f1936013581526020016100a1565b6100dd61012e366004612d0e565b6106a0565b6100b26106d2565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f79f50b5b0000000000000000000000000000000000000000000000000000000014806101ce57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101de6106dc565b905090565b60006001600160a01b031661021f7f6572633732312d70757070657400000000000000000000000000000000000000838051906020012061070e565b6001600160a01b03161461025f576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080828060200190518101906102769190612e02565b90925090507f9a8d9cc8cdced28f8a8f8f9a8c0000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff19831601610305576040517f2ca07d8400000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b61030d610835565b60006103176106d2565b6040516001600160a01b03828116602483015271ffffffffffffffffffffffffffffffffffff19861660448301529192507f00000000000000000000000000000000000000000000000000000000000000009091169060640160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c200000000000000000000000000000000000000000000000000000000179052516103d39190612ee5565b600060405180830381855af49150503d806000811461040e576040519150601f19603f3d011682016040523d82523d6000602084013e610413565b606091505b505050610428610422846108c5565b836108f7565b600061043384610954565b9050600061044183836109a1565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601087901c16176001600160a01b03841663ef5d6bbb826104a26101d4565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b15801561050157600080fd5b505af1158015610515573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610597935001905060405160208183030381529060405261059290612f01565b610c71565b6106185760408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610618910160405160208183030381529060405261061390612f01565b610d55565b60408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610697910160405160208183030381529060405261069090612f01565b8284610da1565b50505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006101de610e61565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061070b5750335b90565b60408051600280825260608201835260009283929190602083019080368337019050509050836fffffffffffffffffffffffffffffffff19168160008151811061075a5761075a612f25565b602002602001018181525050828160018151811061077a5761077a612f25565b60209081029190910181019190915260408051613a3160f11b818401527f776f726c6400000000000000000000000000000000000000000000000000000060228201527f496e7374616c6c65644d6f64756c657300000000000000000000000000000000603082015281518082039093018352810190526000906108299061080190612f01565b8360007e14010014000000000000000000000000000000000000000000000000000000610ea0565b60601c95945050505050565b6040805160008082526020820190925261086090651c1d5c1c195d60d21b908051906020012061070e565b6001600160a01b0316036108c357604051651c1d5c1c195d60d21b602082015260300160408051601f19818403018152908290527f217ef9250000000000000000000000000000000000000000000000000000000082526102fc91600401612f67565b565b60006101ce613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610f5d565b60606000610912836000015184602001518560400151610fe4565b9050600061092d84600001518560200151866040015161100d565b60408051600081526020810190915290915061094c868286868661103c565b505050505050565b60006101ce7f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000610f5d565b604080517f73790000000000000000000000000000000000000000000000000000000000006020820152651c1d5c1c195d60d21b60228201527f466163746f72790000000000000000000000000000000000000000000000000060308201526000916001600160a01b03851691633ae7af089101604051602081830303815290604052610a2d90612f01565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610aca929190600401612f7a565b6000604051808303816000875af1158015610ae9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b119190810190612f93565b806020019051810190610b249190612fdc565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f73790000000000000000000000000000000000000000000000000000000000006020820152651c1d5c1c195d60d21b60228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610bf090612f01565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610c3992919060248101613005565b600060405180830381600087803b158015610c5357600080fd5b505af1158015610c67573d6000803e3d6000fd5b5050505092915050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610caa57610caa612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f7572636549647300000000000000000000000000000000000000000060308201528151808203909301835281019052600090610d4190610d1990612f01565b8360007e01010001000000000000000000000000000000000000000000000000000000610ea0565b9050610d4d8160f81c90565b949350505050565b610d9e817e14010014000000000000000000000000000000000000000000000000000000610d816110f1565b610d89611169565b610d916111a3565b610d99611228565b61129f565b50565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610dd757610dd7612f25565b602002602001018181525050610e5b8482600085604051602001610e26919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e14010014000000000000000000000000000000000000000000000000000000611358565b50505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680610e9b573391505090565b919050565b600080610eab610e61565b9050306001600160a01b03821603610ed157610ec9868686866113ce565b915050610d4d565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610f1c90899089908990899060040161305f565b602060405180830381865afa158015610f39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec9919061308e565b6000610f6b607060106130bd565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790505b9392505050565b6000610d4d845184518451608881901b606083901b603885901b85850184011717179392505050565b6060838383604051602001611024939291906130d0565b60405160208183030381529060405290509392505050565b6000611046610e61565b9050306001600160a01b0382160361106a576110658686868686611404565b61094c565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb906110b79089908990899089908990600401613113565b600060405180830381600087803b1580156110d157600080fd5b505af11580156110e5573d6000803e3d6000fd5b50505050505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050605f8160008151811061112b5761112b612f25565b602002602001019060c581111561114457611144613164565b908160c581111561115757611157613164565b90525061116381611421565b91505090565b6040805160018082528183019092526000918291906020808301908036833701905050905060618160008151811061112b5761112b612f25565b604080516001808252818301909252606091816020015b60608152602001906001900390816111ba5790505090506040518060400160405280600b81526020017f6e616d65737061636549640000000000000000000000000000000000000000008152508160008151811061121a5761121a612f25565b602002602001018190525090565b604080516001808252818301909252606091816020015b606081526020019060019003908161123f5790505090506040518060400160405280600c81526020017f746f6b656e4164647265737300000000000000000000000000000000000000008152508160008151811061121a5761121a612f25565b60006112a9610e61565b9050306001600160a01b038216036112ce576112c98787878787876115dc565b610697565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f499061131d908a908a908a908a908a908a906004016131cf565b600060405180830381600087803b15801561133757600080fd5b505af115801561134b573d6000803e3d6000fd5b5050505050505050505050565b6000611362610e61565b9050306001600160a01b038216036113815761106586868686866118c9565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906110b79089908990899089908990600401613219565b60006113fb6113dd86866118de565b60ff858116601b0360080285901c166113f68587611934565b611977565b95945050505050565b61141a85858585856114158b6119c8565b611ac6565b5050505050565b6000601c8251111561144b578151604051635318beb960e01b81526004016102fc91815260200190565b60008080805b855181101561152657600061148f87838151811061147157611471612f25565b602002602001015160c581111561148a5761148a613164565b611db5565b9050806000036114a4576001909201916114dc565b82156114dc576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106114fd576114fd612f25565b602002602001015160c581111561151657611516613164565b901b949094179350600101611451565b50600581111561154c57604051635318beb960e01b8152600481018290526024016102fc565b8451819003600861155f60026020613260565b6115699190613273565b83901b93909317926008600161158160026020613260565b61158b9190613260565b6115959190613273565b81901b939093179260086001806115ae60026020613260565b6115b89190613260565b6115c29190613260565b6115cc9190613273565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061165557507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b156116b657613a3160f11b868760405160200161167491815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102fc93929160040161328a565b6116c1856000611e15565b6116cc846001611f97565b6116d7836000611f97565b60e084901c60e885901c0160ff168251146117375760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102fc565b60e085901c60e886901c0160ff168151146117975760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102fc565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff161461180f5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102fc565b6118188661213e565b1561187257858660405160200161183191815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102fc9291600401612f7a565b6118be868686868660405160200161188a91906132cb565b604051602081830303815290604052866040516020016118aa91906132cb565b60405160208183030381529060405261220e565b61094c866001612306565b61141a85856118d88487611934565b856123fd565b600082826040516020016118f39291906132de565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561196f5761195b60ff601b83900360080287901c16836130bd565b9150806119678161330c565b915050611939565b509392505050565b60006020821061199d5760208204840193506020828161199957611999613326565b0691505b508254600882021b60208290038084111561196f576001850154600882021c82179150509392505050565b60408051613a3160f11b60208201526473746f726560d81b60228201527f5461626c65730000000000000000000000000000000000000000000000000000603082015260009101604051602081830303815290604052611a2790612f01565b8203611a5357507e60030220202000000000000000000000000000000000000000000000000000919050565b60408051613a3160f11b60208201526473746f726560d81b60228201527f5461626c6573000000000000000000000000000000000000000000000000000060308201526101ce91611abd9101604051602081830303815290604052611ab790612f01565b84612656565b60206000611977565b857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611afc949392919061333c565b60405180910390a2613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000160361094c576000611b3d87612672565b905060005b8151811015611c20576000828281518110611b5f57611b5f612f25565b60200260200101519050611b8b6001826affffffffffffffffffffff191661273a90919063ffffffff16565b15611c0d576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611bda908c908c908c908c908c908c90600401613386565b600060405180830381600087803b158015611bf457600080fd5b505af1158015611c08573d6000803e3d6000fd5b505050505b5080611c188161330c565b915050611b42565b506000611c2d88886118de565b90506000602087019050611c45826000838a51612758565b6000611c5085612818565b1115611cd4576000611c628a8a612855565b878155905060208601915060008060005b611c7c88612818565b8160ff161015611ccf57611c918d8d836128ab565b9250611cac8a8260ff166028026038011c64ffffffffff1690565b9150611cbb8360008785612758565b611cc582866130bd565b9450600101611c73565b505050505b60005b83518110156110e5576000848281518110611cf457611cf4612f25565b60200260200101519050611d206002826affffffffffffffffffffff191661273a90919063ffffffff16565b15611da2576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611d6f908e908e908e908e908e908e90600401613386565b600060405180830381600087803b158015611d8957600080fd5b505af1158015611d9d573d6000803e3d6000fd5b505050505b5080611dad8161330c565b915050611cd7565b6000808260c5811115611dca57611dca613164565b60ff1690506061811015611de457601f1660010192915050565b60618360c5811115611df857611df8613164565b03611e065750601492915050565b50600092915050565b50919050565b80158015611e21575081155b15611e5b576040517f97e36a0a000000000000000000000000000000000000000000000000000000008152600060048201526024016102fc565b6000611e6683612818565b90506005811115611ea6576040517f97e36a0a000000000000000000000000000000000000000000000000000000008152600481018290526024016102fc565b6000611eb18461292b565b90506000611ebf83836130bd565b9050601c811115611eff576040517f97e36a0a000000000000000000000000000000000000000000000000000000008152600481018290526024016102fc565b60005b8281101561094c5760ff601b82900360080287901c166000819003611f53576040517fbf1ac38300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020811115611f8e576040517f2392baa400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101611f02565b80158015611fa3575081155b15611fc457604051635318beb960e01b8152600060048201526024016102fc565b6000611fcf83612818565b90506005811115611ff657604051635318beb960e01b8152600481018290526024016102fc565b60006120018461292b565b9050600061200f83836130bd565b9050601c81111561203657604051635318beb960e01b8152600481018290526024016102fc565b60008060005b838110156120f75760006120646120538a8461293d565b60c581111561148a5761148a613164565b11156120ae578481106120a3576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001909201916120ef565b848110156120e8576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001909101905b60010161203c565b5083821461211b57604051635318beb960e01b8152600481018390526024016102fc565b84811461069757604051635318beb960e01b8152600481018290526024016102fc565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061217757612177612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f7572636549647300000000000000000000000000000000000000000060308201528151808203909301835281019052600090610d41906121e690612f01565b8360007e010100010000000000000000000000000000000000000000000000000000006113ce565b600061221b86868661295e565b905060006122298484612980565b90506000612237858561299d565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061227157612271612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5461626c65730000000000000000000000000000000000000000000000000000603082015281518082039093018352810190526110e5906122dd90612f01565b828686867e60030220202000000000000000000000000000000000000000000000000000611ac6565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233c5761233c612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f75726365496473000000000000000000000000000000000000000000603082015281518082039093018352810190526123f8906123a890612f01565b826000856040516020016123c391151560f81b815260010190565b60408051601f198184030181529190527e010100010000000000000000000000000000000000000000000000000000006118c9565b505050565b600061240985856118de565b9050847f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be85858560405161243f939291906133df565b60405180910390a2613a3160f11b857fffff000000000000000000000000000000000000000000000000000000000000161461247b5750610e5b565b600061248686612672565b905060005b81518110156125655760008282815181106124a8576124a8612f25565b602002602001015190506124d46004826affffffffffffffffffffff191661273a90919063ffffffff16565b15612552576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061251f908b908b908b908b9060040161341c565b600060405180830381600087803b15801561253957600080fd5b505af115801561254d573d6000803e3d6000fd5b505050505b508061255d8161330c565b91505061248b565b50612579828565ffffffffffff16856129c9565b60005b815181101561069757600082828151811061259957612599612f25565b602002602001015190506125c56008826affffffffffffffffffffff191661273a90919063ffffffff16565b15612643576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612610908b908b908b908b9060040161341c565b600060405180830381600087803b15801561262a57600080fd5b505af115801561263e573d6000803e3d6000fd5b505050505b508061264e8161330c565b91505061257c565b60408051602081018490529081018290526000906060016118f3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106126ac576126ac612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f53746f7265486f6f6b7300000000000000000000000000000000000000000000603082015281518082039093018352810190526000906127239061271b90612f01565b8360006129d9565b9050610d4d6127358260008451612a13565b612aa3565b60008160ff168261274b8560581c90565b1660ff1614905092915050565b82156127d257602083106127825760208304840193506020838161277e5761277e613326565b0692505b82156127d25760208390036000600019600884021c1990506008850281811c91508451811c90508119875416828216178755508183116127c3575050610e5b565b50600194909401939182019190035b5b602081106127f45781518455600190930192602090910190601f19016127d3565b8015610e5b576000600019600883021c198554845182169119161785555050505050565b6000600860018061282b60026020613260565b6128359190613260565b61283f9190613260565b6128499190613273565b8260ff911c1692915050565b6000828260405160200161286a9291906132de565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b600083836040516020016128c09291906132de565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b60006008600161283560026020613260565b6000601b8290036008028360ff911c1660c5811115610fdd57610fdd613164565b6040805160208101859052908101839052606081810183905290608001611024565b8151815160009181810160389190911b1760609190911b17610fdd565b606082826040516020016129b2929190613455565b604051602081830303815290604052905092915050565b6123f88383602084018451612758565b6060610d4d6129e98585856128ab565b612a0c846129f78888612ab4565b9060ff166028026038011c64ffffffffff1690565b6000612ac7565b6000818311158015612a26575083518211155b612a62578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102fc93929190613484565b60208401612a7084826130bd565b90506000612a7e8585613260565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610fdd8360156000612aea565b6000610fdd612ac38484612855565b5490565b60405160208101601f19603f858401011660405283825261196f85858584612b65565b60606000612af88560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612b1e57612b1e613326565b04905060405193506020840160208202810160405281855260005b82811015612b59578451871c825293870193602090910190600101612b39565b50505050509392505050565b8115612bee5760208210612b8f57602082048401935060208281612b8b57612b8b613326565b0691505b8115612bee576020829003600081851015612bb35750600019600885021c19612bbe565b50600019600882021c195b8554600885021b811984511682821617845250818511612bdf575050610e5b565b50600194909401939283900392015b5b60208310612c105783548152600190930192601f1990920191602001612bef565b8215610e5b576000600019600885021c198251865482169119161782525050505050565b600060208284031215612c4657600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610fdd57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715612caf57612caf612c76565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612cde57612cde612c76565b604052919050565b600067ffffffffffffffff821115612d0057612d00612c76565b50601f01601f191660200190565b600060208284031215612d2057600080fd5b813567ffffffffffffffff811115612d3757600080fd5b8201601f81018413612d4857600080fd5b8035612d5b612d5682612ce6565b612cb5565b818152856020838501011115612d7057600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b83811015612da9578181015183820152602001612d91565b50506000910152565b6000612dc0612d5684612ce6565b9050828152838383011115612dd457600080fd5b610fdd836020830184612d8e565b600082601f830112612df357600080fd5b610fdd83835160208501612db2565b60008060408385031215612e1557600080fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612e3857600080fd5b602084015190925067ffffffffffffffff80821115612e5657600080fd5b9084019060608287031215612e6a57600080fd5b612e72612c8c565b825182811115612e8157600080fd5b612e8d88828601612de2565b825250602083015182811115612ea257600080fd5b612eae88828601612de2565b602083015250604083015182811115612ec657600080fd5b612ed288828601612de2565b6040830152508093505050509250929050565b60008251612ef7818460208701612d8e565b9190910192915050565b80516020808301519190811015611e0f5760001960209190910360031b1b16919050565b634e487b7160e01b600052603260045260246000fd5b60008151808452612f53816020860160208601612d8e565b601f01601f19169290920160200192915050565b602081526000610fdd6020830184612f3b565b828152604060208201526000610d4d6040830184612f3b565b600060208284031215612fa557600080fd5b815167ffffffffffffffff811115612fbc57600080fd5b8201601f81018413612fcd57600080fd5b610d4d84825160208401612db2565b600060208284031215612fee57600080fd5b81516001600160a01b0381168114610fdd57600080fd5b8381528260208201526060604082015260006113fb6060830184612f3b565b600081518084526020808501945080840160005b8381101561305457815187529582019590820190600101613038565b509495945050505050565b8481526080602082015260006130786080830186613024565b60ff949094166040830152506060015292915050565b6000602082840312156130a057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101ce576101ce6130a7565b600084516130e2818460208901612d8e565b8451908301906130f6818360208901612d8e565b8451910190613109818360208801612d8e565b0195945050505050565b85815260a06020820152600061312c60a0830187613024565b828103604084015261313e8187612f3b565b905084606084015282810360808401526131588185612f3b565b98975050505050505050565b634e487b7160e01b600052602160045260246000fd5b600081518084526020808501808196508360051b8101915082860160005b858110156131c25782840389526131b0848351612f3b565b98850198935090840190600101613198565b5091979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006131fa60c083018561317a565b82810360a084015261320c818561317a565b9998505050505050505050565b85815260a06020820152600061323260a0830187613024565b60ff86166040840152828103606084015261324d8186612f3b565b9150508260808301529695505050505050565b818103818111156101ce576101ce6130a7565b80820281158282048414176101ce576101ce6130a7565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006113fb6060830184612f3b565b602081526000610fdd602083018461317a565b82815260006020808301845182860160005b828110156131c2578151845292840192908401906001016132f0565b6000600019820361331f5761331f6130a7565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60808152600061334f6080830187613024565b82810360208401526133618187612f3b565b9050846040840152828103606084015261337b8185612f3b565b979650505050505050565b86815260c06020820152600061339f60c0830188613024565b82810360408401526133b18188612f3b565b905085606084015282810360808401526133cb8186612f3b565b9150508260a0830152979650505050505050565b6060815260006133f26060830186613024565b65ffffffffffff8516602084015282810360408401526134128185612f3b565b9695505050505050565b8481526080602082015260006134356080830186613024565b65ffffffffffff85166040840152828103606084015261337b8185612f3b565b60008351613467818460208801612d8e565b83519083019061347b818360208801612d8e565b01949350505050565b6060815260006134976060830186612f3b565b6020830194909452506040015291905056fea164736f6c6343000815000a608060405234801561001057600080fd5b506156a3806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e366004612529565b610045565b005b61005661005182610188565b6101c0565b6100676100628261020c565b61023e565b61007861007382610282565b6102b4565b610089610084826102f8565b61032a565b61009a6100958261036c565b61039e565b6100ab6100a6826103e2565b610414565b8173ffffffffffffffffffffffffffffffffffffffff16633350b6a96100d083610456565b6040516100dc9061251c565b604051809103906000f0801580156100f8573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561016c57600080fd5b505af1158015610180573d6000803e3d6000fd5b505050505050565b60006101ba613a3160f11b837f4f70657261746f72417070726f76616c0000000000000000000000000000000061049f565b92915050565b610209817e010100010000000000000000000000000000000000000000000000000000006101ec610526565b6101f46105e3565b6101fc61061d565b6102046106f5565b61076c565b50565b60006101ba613a3160f11b837f4f776e657273000000000000000000000000000000000000000000000000000061049f565b610209817e1401001400000000000000000000000000000000000000000000000000000061026a610840565b61027261087a565b61027a6108b4565b61020461092b565b60006101ba613a3160f11b837f546f6b656e417070726f76616c0000000000000000000000000000000000000061049f565b610209817e140100140000000000000000000000000000000000000000000000000000006102e0610840565b6102e861087a565b6102f06108b4565b6102046109a2565b60006101ba613a3160f11b837f546f6b656e55524900000000000000000000000000000000000000000000000061049f565b610209817c0100000000000000000000000000000000000000000000000000000000610354610840565b61035c610a19565b6103646108b4565b610204610a53565b60006101ba613a3160f11b837f42616c616e63657300000000000000000000000000000000000000000000000061049f565b610209817e200100200000000000000000000000000000000000000000000000000000006103ca61087a565b6103d2610840565b6103da6109a2565b610204610aca565b60006101ba613a3160f11b837f4d6574616461746100000000000000000000000000000000000000000000000061049f565b610209817c030000000000000000000000000000000000000000000000000000000061043e610b41565b610446610b5a565b61044e610c1f565b610204610c52565b60006101ba7f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d00000000000000000000000000000000000000005b60006104ad607060106125b6565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b60408051600280825260608201835260009283929190602083019080368337019050509050606181600081518110610560576105606125c9565b602002602001019060c5811115610579576105796125df565b908160c581111561058c5761058c6125df565b815250506061816001815181106105a5576105a56125c9565b602002602001019060c58111156105be576105be6125df565b908160c58111156105d1576105d16125df565b9052506105dd81610d72565b91505090565b604080516001808252818301909252600091829190602080830190803683370190505090506060816000815181106105a5576105a56125c9565b6040805160028082526060828101909352816020015b60608152602001906001900390816106335790505090506040518060400160405280600581526020017f6f776e657200000000000000000000000000000000000000000000000000000081525081600081518110610693576106936125c9565b60200260200101819052506040518060400160405280600881526020017f6f70657261746f72000000000000000000000000000000000000000000000000815250816001815181106106e7576106e76125c9565b602002602001018190525090565b604080516001808252818301909252606091816020015b606081526020019060019003908161070c5790505090506040518060400160405280600881526020017f617070726f766564000000000000000000000000000000000000000000000000815250816000815181106106e7576106e76125c9565b6000610776610f36565b90503073ffffffffffffffffffffffffffffffffffffffff8216036107a8576107a3878787878787610f82565b610837565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f4990610804908a908a908a908a908a908a9060040161269d565b600060405180830381600087803b15801561081e57600080fd5b505af1158015610832573d6000803e3d6000fd5b505050505b50505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050601f816000815181106105a5576105a56125c9565b604080516001808252818301909252600091829190602080830190803683370190505090506061816000815181106105a5576105a56125c9565b604080516001808252818301909252606091816020015b60608152602001906001900390816108cb5790505090506040518060400160405280600781526020017f746f6b656e496400000000000000000000000000000000000000000000000000815250816000815181106106e7576106e76125c9565b604080516001808252818301909252606091816020015b60608152602001906001900390816109425790505090506040518060400160405280600581526020017f6f776e6572000000000000000000000000000000000000000000000000000000815250816000815181106106e7576106e76125c9565b604080516001808252818301909252606091816020015b60608152602001906001900390816109b95790505090506040518060400160405280600781526020017f6163636f756e7400000000000000000000000000000000000000000000000000815250816000815181106106e7576106e76125c9565b6040805160018082528183019092526000918291906020808301908036833701905050905060c5816000815181106105a5576105a56125c9565b604080516001808252818301909252606091816020015b6060815260200190600190039081610a6a5790505090506040518060400160405280600881526020017f746f6b656e555249000000000000000000000000000000000000000000000000815250816000815181106106e7576106e76125c9565b604080516001808252818301909252606091816020015b6060815260200190600190039081610ae15790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250816000815181106106e7576106e76125c9565b604080516000808252602082019092526105dd81610d72565b604080516003808252608082019092526000918291906020820160608036833701905050905060c581600081518110610b9557610b956125c9565b602002602001019060c5811115610bae57610bae6125df565b908160c5811115610bc157610bc16125df565b8152505060c581600181518110610bda57610bda6125c9565b602002602001019060c5811115610bf357610bf36125df565b908160c5811115610c0657610c066125df565b8152505060c5816002815181106105a5576105a56125c9565b60408051600080825260208201909252606091610c4c565b6060815260200190600190039081610c375790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610c6a5790505090506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600081518110610cca57610cca6125c9565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c000000000000000000000000000000000000000000000000000081525081600181518110610d1e57610d1e6125c9565b60200260200101819052506040518060400160405280600781526020017f6261736555524900000000000000000000000000000000000000000000000000815250816002815181106106e7576106e76125c9565b6000601c82511115610da5578151604051635318beb960e01b8152600401610d9c91815260200190565b60405180910390fd5b60008080805b8551811015610e80576000610de9878381518110610dcb57610dcb6125c9565b602002602001015160c5811115610de457610de46125df565b61126f565b905080600003610dfe57600190920191610e36565b8215610e36576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f030302878381518110610e5757610e576125c9565b602002602001015160c5811115610e7057610e706125df565b901b949094179350600101610dab565b506005811115610ea657604051635318beb960e01b815260048101829052602401610d9c565b84518190036008610eb9600260206126e7565b610ec391906126fa565b83901b939093179260086001610edb600260206126e7565b610ee591906126e7565b610eef91906126fa565b81901b93909317926008600180610f08600260206126e7565b610f1291906126e7565b610f1c91906126e7565b610f2691906126fa565b9190911b92909217949350505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610f7d573391505090565b919050565b613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001614801590610ffb57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561105c57613a3160f11b868760405160200161101a91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610d9c939291600401612711565b6110678560006112cf565b611072846001611451565b61107d836000611451565b60e084901c60e885901c0160ff168251146110dd5760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d9c565b60e085901c60e886901c0160ff1681511461113d5760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d9c565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146111b55760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610d9c565b6111be866115f8565b156112185785866040516020016111d791815260200190565b60408051601f19818403018152908290527fdfaaf9cf000000000000000000000000000000000000000000000000000000008252610d9c9291600401612752565b6112648686868686604051602001611230919061276b565b60405160208183030381529060405286604051602001611250919061276b565b6040516020818303038152906040526116dc565b6101808660016117fc565b6000808260c5811115611284576112846125df565b60ff169050606181101561129e57601f1660010192915050565b60618360c58111156112b2576112b26125df565b036112c05750601492915050565b50600092915050565b50919050565b801580156112db575081155b15611315576040517f97e36a0a00000000000000000000000000000000000000000000000000000000815260006004820152602401610d9c565b6000611320836118f3565b90506005811115611360576040517f97e36a0a00000000000000000000000000000000000000000000000000000000815260048101829052602401610d9c565b600061136b84611930565b9050600061137983836125b6565b9050601c8111156113b9576040517f97e36a0a00000000000000000000000000000000000000000000000000000000815260048101829052602401610d9c565b60005b828110156101805760ff601b82900360080287901c16600081900361140d576040517fbf1ac38300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020811115611448576040517f2392baa400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016113bc565b8015801561145d575081155b1561147e57604051635318beb960e01b815260006004820152602401610d9c565b6000611489836118f3565b905060058111156114b057604051635318beb960e01b815260048101829052602401610d9c565b60006114bb84611930565b905060006114c983836125b6565b9050601c8111156114f057604051635318beb960e01b815260048101829052602401610d9c565b60008060005b838110156115b157600061151e61150d8a84611942565b60c5811115610de457610de46125df565b11156115685784811061155d576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001909201916115a9565b848110156115a2576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001909101905b6001016114f6565b508382146115d557604051635318beb960e01b815260048101839052602401610d9c565b84811461083757604051635318beb960e01b815260048101829052602401610d9c565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611631576116316125c9565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f75726365496473000000000000000000000000000000000000000000603082015281518082039093018352810190526000906116c8906116a09061277e565b8360007e0101000100000000000000000000000000000000000000000000000000000061196a565b90506116d48160f81c90565b949350505050565b60408051602081018790528082018690526060808201869052825180830390910181526080909101909152600061171384846119a0565b9050600061172185856119bd565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061175b5761175b6125c9565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5461626c65730000000000000000000000000000000000000000000000000000603082015281518082039093018352810190526117f0906117c79061277e565b828686867e600302202020000000000000000000000000000000000000000000000000006119e9565b50505050505050505050565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110611832576118326125c9565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f75726365496473000000000000000000000000000000000000000000603082015281518082039093018352810190526118ee9061189e9061277e565b826000856040516020016118b991151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611cd8565b505050565b60006008600180611906600260206126e7565b61191091906126e7565b61191a91906126e7565b61192491906126fa565b8260ff911c1692915050565b600060086001611910600260206126e7565b6000601b8290036008028360ff911c1660c5811115611963576119636125df565b9392505050565b60006119976119798686611cf4565b60ff858116601b0360080285901c166119928587611d4a565b611d8d565b95945050505050565b8151815160009181810160389190911b1760609190911b17611963565b606082826040516020016119d29291906127a2565b604051602081830303815290604052905092915050565b857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611a1f949392919061280c565b60405180910390a2613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001603610180576000611a6087611dde565b905060005b8151811015611b43576000828281518110611a8257611a826125c9565b60200260200101519050611aae6001826affffffffffffffffffffff1916611ea690919063ffffffff16565b15611b30576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611afd908c908c908c908c908c908c90600401612856565b600060405180830381600087803b158015611b1757600080fd5b505af1158015611b2b573d6000803e3d6000fd5b505050505b5080611b3b816128af565b915050611a65565b506000611b508888611cf4565b90506000602087019050611b68826000838a51611ec4565b6000611b73856118f3565b1115611bf7576000611b858a8a611f82565b878155905060208601915060008060005b611b9f886118f3565b8160ff161015611bf257611bb48d8d83611fd8565b9250611bcf8a8260ff166028026038011c64ffffffffff1690565b9150611bde8360008785611ec4565b611be882866125b6565b9450600101611b96565b505050505b60005b83518110156117f0576000848281518110611c1757611c176125c9565b60200260200101519050611c436002826affffffffffffffffffffff1916611ea690919063ffffffff16565b15611cc5576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611c92908e908e908e908e908e908e90600401612856565b600060405180830381600087803b158015611cac57600080fd5b505af1158015611cc0573d6000803e3d6000fd5b505050505b5080611cd0816128af565b915050611bfa565b611ced8585611ce78487611d4a565b85612058565b5050505050565b60008282604051602001611d099291906128c9565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611d8557611d7160ff601b83900360080287901c16836125b6565b915080611d7d816128af565b915050611d4f565b509392505050565b600060208210611db357602082048401935060208281611daf57611daf612904565b0691505b508254600882021b602082900380841115611d85576001850154600882021c82179150509392505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611e1857611e186125c9565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f53746f7265486f6f6b730000000000000000000000000000000000000000000060308201528151808203909301835281019052600090611e8f90611e879061277e565b8360006122b1565b90506116d4611ea182600084516122eb565b61237b565b60008160ff1682611eb78560581c90565b1660ff1614905092915050565b8215611f3e5760208310611eee57602083048401935060208381611eea57611eea612904565b0692505b8215611f3e5760208390036000600019600884021c1990506008850281811c91508451811c9050811987541682821617875550818311611f2f575050611f7c565b50600194909401939182019190035b5b60208110611f605781518455600190930192602090910190601f1901611f3f565b8015611f7c5783548251600019600884021c9182169119161784555b50505050565b60008282604051602001611f979291906128c9565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001611fed9291906128c9565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b60006120648585611cf4565b9050847f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be85858560405161209a9392919061291a565b60405180910390a2613a3160f11b857fffff00000000000000000000000000000000000000000000000000000000000016146120d65750611f7c565b60006120e186611dde565b905060005b81518110156121c0576000828281518110612103576121036125c9565b6020026020010151905061212f6004826affffffffffffffffffffff1916611ea690919063ffffffff16565b156121ad576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061217a908b908b908b908b90600401612957565b600060405180830381600087803b15801561219457600080fd5b505af11580156121a8573d6000803e3d6000fd5b505050505b50806121b8816128af565b9150506120e6565b506121d4828565ffffffffffff168561238c565b60005b81518110156108375760008282815181106121f4576121f46125c9565b602002602001015190506122206008826affffffffffffffffffffff1916611ea690919063ffffffff16565b1561229e576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061226b908b908b908b908b90600401612957565b600060405180830381600087803b15801561228557600080fd5b505af1158015612299573d6000803e3d6000fd5b505050505b50806122a9816128af565b9150506121d7565b60606116d46122c1858585611fd8565b6122e4846122cf888861239c565b9060ff166028026038011c64ffffffffff1690565b60006123af565b60008183111580156122fe575083518211155b61233a578383836040517f23230fa3000000000000000000000000000000000000000000000000000000008152600401610d9c93929190612990565b6020840161234884826125b6565b9050600061235685856126e7565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061196383601560006123d2565b6118ee8383602084018451611ec4565b60006119636123ab8484611f82565b5490565b60405160208101601f19603f8584010116604052838252611d858585858461244d565b606060006123e08560801c90565b90506fffffffffffffffffffffffffffffffff8516600085828161240657612406612904565b04905060405193506020840160208202810160405281855260005b82811015612441578451871c825293870193602090910190600101612421565b50505050509392505050565b81156124d657602082106124775760208204840193506020828161247357612473612904565b0691505b81156124d657602082900360008185101561249b5750600019600885021c196124a6565b50600019600882021c195b8554600885021b8119845116828216178452508185116124c7575050611f7c565b50600194909401939283900392015b5b602083106124f85783548152600190930192601f19909201916020016124d7565b8215611f7c576000600019600885021c198251865482169119161782525050505050565b612ce1806129b683390190565b6000806040838503121561253c57600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461256057600080fd5b915060208301357fffffffffffffffffffffffffffff0000000000000000000000000000000000008116811461259557600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101ba576101ba6125a0565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052602160045260246000fd5b60005b838110156126105781810151838201526020016125f8565b50506000910152565b600081518084526126318160208601602086016125f5565b601f01601f19169290920160200192915050565b600082825180855260208086019550808260051b84010181860160005b8481101561269057601f1986840301895261267e838351612619565b98840198925090830190600101612662565b5090979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006126c860c0830185612645565b82810360a08401526126da8185612645565b9998505050505050505050565b818103818111156101ba576101ba6125a0565b80820281158282048414176101ba576101ba6125a0565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006119976060830184612619565b8281526040602082015260006116d46040830184612619565b6020815260006119636020830184612645565b805160208083015191908110156112c95760001960209190910360031b1b16919050565b600083516127b48184602088016125f5565b8351908301906127c88183602088016125f5565b01949350505050565b600081518084526020808501945080840160005b83811015612801578151875295820195908201906001016127e5565b509495945050505050565b60808152600061281f60808301876127d1565b82810360208401526128318187612619565b9050846040840152828103606084015261284b8185612619565b979650505050505050565b86815260c06020820152600061286f60c08301886127d1565b82810360408401526128818188612619565b9050856060840152828103608084015261289b8186612619565b9150508260a0830152979650505050505050565b600060001982036128c2576128c26125a0565b5060010190565b82815260006020808301845182860160005b828110156128f7578151845292840192908401906001016128db565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b60608152600061292d60608301866127d1565b65ffffffffffff85166020840152828103604084015261294d8185612619565b9695505050505050565b84815260806020820152600061297060808301866127d1565b65ffffffffffff85166040840152828103606084015261284b8185612619565b6060815260006129a36060830186612619565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612cc1806100206000396000f3fe608060405234801561001057600080fd5b506004361061016c5760003560e01c80636352211e116100cd578063a22cb46511610081578063c87b56dd11610066578063c87b56dd146102d1578063e1af802c146102e4578063e985e9c5146102ec57600080fd5b8063a22cb465146102ab578063b88d4fde146102be57600080fd5b80638832e6e3116100b25780638832e6e31461027d57806395d89b4114610290578063a14481941461029857600080fd5b80636352211e1461025757806370a082311461026a57600080fd5b806323b872dd1161012457806342842e0e1161010957806342842e0e1461021c57806342966c681461022f57806345ec93541461024257600080fd5b806323b872dd146101f657806340c10f191461020957600080fd5b8063081812fc11610155578063081812fc146101ae578063095ea7b3146101d9578063119df25f146101ee57600080fd5b806301ffc9a71461017157806306fdde0314610199575b600080fd5b61018461017f3660046125b3565b6102ff565b60405190151581526020015b60405180910390f35b6101a1610398565b6040516101909190612620565b6101c16101bc366004612633565b6103b7565b6040516001600160a01b039091168152602001610190565b6101ec6101e7366004612663565b6103cc565b005b6101c16103e2565b6101ec61020436600461268d565b6103ec565b6101ec610217366004612663565b61049c565b6101ec61022a36600461268d565b6104ae565b6101ec61023d366004612633565b6104ce565b36601f1901355b604051908152602001610190565b6101c1610265366004612633565b6104e2565b6102496102783660046126c9565b6104ed565b6101ec61028b3660046127a9565b61054b565b6101a161055e565b6101ec6102a6366004612663565b610573565b6101ec6102b9366004612800565b610595565b6101ec6102cc36600461283c565b6105a7565b6101a16102df366004612633565b6105be565b6101c161065a565b6101846102fa3660046128a4565b610664565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167fb421288000000000000000000000000000000000000000000000000000000000148061039257507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606103b26103ad6103a8610687565b6106a5565b6106d7565b905090565b60006103c2826106f5565b5061039282610746565b6103de82826103d96103e2565b610761565b5050565b60006103b261076e565b6001600160a01b03821661041b57604051633250574960e11b8152600060048201526024015b60405180910390fd5b600061042f838361042a6103e2565b6107a0565b9050836001600160a01b0316816001600160a01b031614610496576040517f64283d7b0000000000000000000000000000000000000000000000000000000081526001600160a01b0380861660048301526024820184905282166044820152606401610412565b50505050565b6104a4610924565b6103de828261093f565b6104c9838383604051806020016040528060008152506105a7565b505050565b6104d6610924565b6104df816109bd565b50565b6000610392826106f5565b60006001600160a01b038216610532576040517f89c62b6400000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b610392610545610540610687565b610a11565b83610a43565b610553610924565b6104c9838383610ac9565b60606103b261056e6103a8610687565b610ae0565b61057b610924565b6103de828260405180602001604052806000815250610ac9565b6103de6105a06103e2565b8383610aff565b6105b28484846103ec565b61049684848484610c23565b60606105c9826106f5565b5060006105d4610d84565b905060006105f16105eb6105e6610687565b610d99565b85610dcb565b9050600081511161061c5760408051602081018690520160405160208183030381529060405261061e565b805b9050600082511161062f5780610652565b81816040516020016106429291906128d7565b6040516020818303038152906040525b949350505050565b60006103b2610e22565b6000610680610679610674610687565b610e61565b8484610e93565b9392505050565b60008061069330610f52565b905061069f8160101b90565b91505090565b6000610392613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000611046565b604080516000808252602082019092526060916106528483836110cd565b60008061070183611194565b90506001600160a01b038116610392576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101849052602401610412565b600061039261075b610756610687565b6111a4565b836111d6565b6104c98383836001611256565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061079d5750335b90565b6000806107ae610540610687565b905060006107bb85611194565b90506001600160a01b038416156107d7576107d78185876113e8565b6001600160a01b0381161561080b576107f4600086600080611256565b61080b828260016108058686610a43565b0361147e565b6001600160a01b03861615610831576108318287610829858a610a43565b60010161147e565b61084b61084461083f610687565b61151b565b868861154d565b61085361160a565b6001600160a01b03166366c93bdb7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef610892846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b169091526108e89291906001600160a01b038c16908b9060248101612906565b600060405180830381600087803b15801561090257600080fd5b505af1158015610916573d6000803e3d6000fd5b509298975050505050505050565b61093d61093030610f52565b6109386103e2565b6116e5565b565b6001600160a01b03821661096957604051633250574960e11b815260006004820152602401610412565b6000610977838360006107a0565b90506001600160a01b038116156104c9576040517f73c6ac6e00000000000000000000000000000000000000000000000000000000815260006004820152602401610412565b60006109cc60008360006107a0565b90506001600160a01b0381166103de576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101839052602401610412565b6000610392613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000611046565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610a8857610a8861293c565b60209081029190910101526000610ac08583837e20010020000000000000000000000000000000000000000000000000000000611786565b95945050505050565b610ad3838361093f565b6104c96000848484610c23565b60408051600080825260208201909252606091610652848360016110cd565b6001600160a01b038216610b4a576040517f5b08ba180000000000000000000000000000000000000000000000000000000081526001600160a01b0383166004820152602401610412565b610b60610b58610674610687565b848484611843565b610b6861160a565b6001600160a01b031663c9a34acd7f17307eab39ab6107e8899845ad3d59bd9653f200f220920489ca2b5937696c31610ba7866001600160a01b031690565b6001600160a01b038616604080518715156020820152016040516020818303038152906040526040518563ffffffff1660e01b8152600401610bec9493929190612952565b600060405180830381600087803b158015610c0657600080fd5b505af1158015610c1a573d6000803e3d6000fd5b50505050505050565b6001600160a01b0383163b1561049657826001600160a01b031663150b7a02610c4a6103e2565b8685856040518563ffffffff1660e01b8152600401610c6c9493929190612977565b6020604051808303816000875af1925050508015610ca7575060408051601f3d908101601f19168201909252610ca4918101906129a9565b60015b610d10573d808015610cd5576040519150601f19603f3d011682016040523d82523d6000602084013e610cda565b606091505b508051600003610d0857604051633250574960e11b81526001600160a01b0385166004820152602401610412565b805181602001fd5b7fffffffff0000000000000000000000000000000000000000000000000000000081167f150b7a020000000000000000000000000000000000000000000000000000000014610d7d57604051633250574960e11b81526001600160a01b0385166004820152602401610412565b5050505050565b60606103b2610d946103a8610687565b611910565b6000610392613a3160f11b837f546f6b656e555249000000000000000000000000000000000000000000000000611046565b60408051600180825281830190925260609160009190602080830190803683370190505090508260001b81600081518110610e0857610e0861293c565b6020026020010181815250506000610ac0858360006110cd565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680610e5c573391505090565b919050565b6000610392613a3160f11b837f4f70657261746f72417070726f76616c00000000000000000000000000000000611046565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610ed857610ed861293c565b602002602001018181525050826001600160a01b031660001b81600181518110610f0457610f0461293c565b60209081029190910101526000610f3c8683837e01010001000000000000000000000000000000000000000000000000000000611786565b9050610f488160f81c90565b9695505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610f9757610f9761293c565b60209081029190910181019190915260408051613a3160f11b818401527f776f726c6400000000000000000000000000000000000000000000000000000060228201527f53797374656d5265676973747279000000000000000000000000000000000000603082015281518082039093018352810190526000906106529061101e906129c6565b8360007e20010020000000000000000000000000000000000000000000000000000000611786565b600061105460706010612a03565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b606060006110d9610e22565b9050306001600160a01b038216036110fe576110f685858561192f565b915050610680565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e7889779061114790889088908890600401612a51565b600060405180830381865afa158015611164573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110f69190810190612a7d565b509392505050565b600061039261075b61083f610687565b6000610392613a3160f11b837f546f6b656e417070726f76616c00000000000000000000000000000000000000611046565b604080516001808252818301909252600091829190602080830190803683370190505090508260001b816000815181106112125761121261293c565b6020908102919091010152600061124a8583837e14010014000000000000000000000000000000000000000000000000000000611786565b60601c95945050505050565b808061126a57506001600160a01b03821615155b156113d357600061127a846106f5565b90506001600160a01b038316158015906112a65750826001600160a01b0316816001600160a01b031614155b80156112b957506112b78184610664565b155b156112fb576040517fa9fbf51f0000000000000000000000000000000000000000000000000000000081526001600160a01b0384166004820152602401610412565b81156113d15761130961160a565b6001600160a01b03166366c93bdb7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925611348846001600160a01b031690565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b1690915261139e9291906001600160a01b038b16908a9060248101612906565b600060405180830381600087803b1580156113b857600080fd5b505af11580156113cc573d6000803e3d6000fd5b505050505b505b6104966113e1610756610687565b848661154d565b6113f3838383611969565b6104c9576001600160a01b03831661143a576040517f7e27328900000000000000000000000000000000000000000000000000000000815260048101829052602401610412565b6040517f177e802f0000000000000000000000000000000000000000000000000000000081526001600160a01b038316600482015260248101829052604401610412565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b816000815181106114c0576114c061293c565b60200260200101818152505061049684826000856040516020016114e691815260200190565b60408051601f198184030181529190527e200100200000000000000000000000000000000000000000000000000000006119ce565b6000610392613a3160f11b837f4f776e6572730000000000000000000000000000000000000000000000000000611046565b604080516001808252818301909252600091602080830190803683370190505090508260001b816000815181106115865761158661293c565b60200260200101818152505061049684826000856040516020016115d5919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e140100140000000000000000000000000000000000000000000000000000006119ce565b60008061161630610f52565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f5075707065745265676973747279000000000000000000000000000000000000603082015291925060009161169a9101604051602081830303815290604052611694906129c6565b83611a84565b90506001600160a01b038116610392576040517f9434f7e100000000000000000000000000000000000000000000000000000000815230600482015260248101839052604401610412565b6001600160a01b03811661173a7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611abd565b6001600160a01b0316146103de5761175182611bb0565b816040517fd787b737000000000000000000000000000000000000000000000000000000008152600401610412929190612aeb565b600080611791610e22565b9050306001600160a01b038216036117b7576117af86868686611d2c565b915050610652565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611802908990899089908990600401612b16565b602060405180830381865afa15801561181f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117af9190612b45565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b816000815181106118845761188461293c565b602002602001018181525050826001600160a01b031660001b816001815181106118b0576118b061293c565b602002602001018181525050610d7d85826000856040516020016118db91151560f81b815260010190565b60408051601f198184030181529190527e010100010000000000000000000000000000000000000000000000000000006119ce565b60408051600080825260208201909252606091610652848360026110cd565b606061065261193f858585611d59565b6119628461194d8888611dd9565b9060ff166028026038011c64ffffffffff1690565b6000611dec565b60006001600160a01b038316158015906106525750826001600160a01b0316846001600160a01b031614806119a357506119a38484610664565b806106525750826001600160a01b03166119bc83610746565b6001600160a01b031614949350505050565b60006119d8610e22565b9050306001600160a01b038216036119fc576119f78686868686611e0f565b611a7c565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090611a499089908990899089908990600401612b5e565b600060405180830381600087803b158015611a6357600080fd5b505af1158015611a77573d6000803e3d6000fd5b505050505b505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106112125761121261293c565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110611af657611af661293c565b60209081029190910181019190915260408051613a3160f11b818401527f776f726c6400000000000000000000000000000000000000000000000000000060228201527f4e616d6573706163654f776e657200000000000000000000000000000000000060308201528151808203909301835281019052600090611ba590611b7d906129c6565b8360007e14010014000000000000000000000000000000000000000000000000000000611786565b60601c949350505050565b606081601081901b6000611bc383611e24565b9050827fffffffffffffffffffffffffffff000000000000000000000000000000000000831615611c16577fffffffffffffffffffffffffffff0000000000000000000000000000000000008316611c38565b7f524f4f545f4e414d4553504143450000000000000000000000000000000000005b7fffffffffffffffffffffffffffffffff00000000000000000000000000000000831615611c665782611c88565b7f524f4f545f4e414d4500000000000000000000000000000000000000000000005b6040517fffff00000000000000000000000000000000000000000000000000000000000090931660208401527f3a00000000000000000000000000000000000000000000000000000000000000602284018190527fffffffffffffffffffffffffffffffff00000000000000000000000000000000928316602385015260338401521660348201526044016040516020818303038152906040529350505050919050565b6000610ac0611d3b8686611e3b565b60ff858116601b0360080285901c16611d548587611e91565b611ecc565b60008383604051602001611d6e929190612ba5565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b6000610680611de88484611f1d565b5490565b60405160208101601f19603f858401011660405283825261118c85858584611f73565b610d7d8585611e1e8487611e91565b85612042565b6000611e3260706010612a03565b9190911b919050565b60008282604051602001611e50929190612ba5565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561118c57611eb860ff601b83900360080287901c1683612a03565b915080611ec481612be0565b915050611e96565b600060208210611ef257602082048401935060208281611eee57611eee612bfa565b0691505b508254600882021b60208290038084111561118c576001850154600882021c82179150509392505050565b60008282604051602001611f32929190612ba5565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b8115611ffc5760208210611f9d57602082048401935060208281611f9957611f99612bfa565b0691505b8115611ffc576020829003600081851015611fc15750600019600885021c19611fcc565b50600019600882021c195b8554600885021b811984511682821617845250818511611fed575050610496565b50600194909401939283900392015b5b6020831061201e5783548152600190930192601f1990920191602001611ffd565b8215610496576000600019600885021c198251865482169119161782525050505050565b600061204e8585611e3b565b9050847f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be85858560405161208493929190612c10565b60405180910390a2613a3160f11b857fffff00000000000000000000000000000000000000000000000000000000000016146120c05750610496565b60006120cb8661229b565b905060005b81518110156121aa5760008282815181106120ed576120ed61293c565b602002602001015190506121196004826affffffffffffffffffffff191661237b90919063ffffffff16565b15612197576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612164908b908b908b908b90600401612c43565b600060405180830381600087803b15801561217e57600080fd5b505af1158015612192573d6000803e3d6000fd5b505050505b50806121a281612be0565b9150506120d0565b506121be828565ffffffffffff1685612399565b60005b8151811015610c1a5760008282815181106121de576121de61293c565b6020026020010151905061220a6008826affffffffffffffffffffff191661237b90919063ffffffff16565b15612288576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612255908b908b908b908b90600401612c43565b600060405180830381600087803b15801561226f57600080fd5b505af1158015612283573d6000803e3d6000fd5b505050505b508061229381612be0565b9150506121c1565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106122d5576122d561293c565b60209081029190910181019190915260408051613a3160f11b818401527f73746f726500000000000000000000000000000000000000000000000000000060228201527f53746f7265486f6f6b7300000000000000000000000000000000000000000000603082015281518082039093018352810190526000906123649061235c906129c6565b83600061192f565b905061065261237682600084516123a9565b612439565b60008160ff168261238c8560581c90565b1660ff1614905092915050565b6104c9838360208401845161244a565b60008183111580156123bc575083518211155b6123f8578383836040517f23230fa300000000000000000000000000000000000000000000000000000000815260040161041293929190612c7c565b602084016124068482612a03565b905060006124148585612ca1565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610680836015600061250a565b82156124c457602083106124745760208304840193506020838161247057612470612bfa565b0692505b82156124c45760208390036000600019600884021c1990506008850281811c91508451811c90508119875416828216178755508183116124b5575050610496565b50600194909401939182019190035b5b602081106124e65781518455600190930192602090910190601f19016124c5565b8015610496576000600019600883021c198554845182169119161785555050505050565b606060006125188560801c90565b90506fffffffffffffffffffffffffffffffff8516600085828161253e5761253e612bfa565b04905060405193506020840160208202810160405281855260005b82811015612579578451871c825293870193602090910190600101612559565b50505050509392505050565b7fffffffff00000000000000000000000000000000000000000000000000000000811681146104df57600080fd5b6000602082840312156125c557600080fd5b813561068081612585565b60005b838110156125eb5781810151838201526020016125d3565b50506000910152565b6000815180845261260c8160208601602086016125d0565b601f01601f19169290920160200192915050565b60208152600061068060208301846125f4565b60006020828403121561264557600080fd5b5035919050565b80356001600160a01b0381168114610e5c57600080fd5b6000806040838503121561267657600080fd5b61267f8361264c565b946020939093013593505050565b6000806000606084860312156126a257600080fd5b6126ab8461264c565b92506126b96020850161264c565b9150604084013590509250925092565b6000602082840312156126db57600080fd5b6106808261264c565b634e487b7160e01b600052604160045260246000fd5b604051601f8201601f1916810167ffffffffffffffff81118282101715612723576127236126e4565b604052919050565b600067ffffffffffffffff821115612745576127456126e4565b50601f01601f191660200190565b600082601f83011261276457600080fd5b81356127776127728261272b565b6126fa565b81815284602083860101111561278c57600080fd5b816020850160208301376000918101602001919091529392505050565b6000806000606084860312156127be57600080fd5b6127c78461264c565b925060208401359150604084013567ffffffffffffffff8111156127ea57600080fd5b6127f686828701612753565b9150509250925092565b6000806040838503121561281357600080fd5b61281c8361264c565b91506020830135801515811461283157600080fd5b809150509250929050565b6000806000806080858703121561285257600080fd5b61285b8561264c565b93506128696020860161264c565b925060408501359150606085013567ffffffffffffffff81111561288c57600080fd5b61289887828801612753565b91505092959194509250565b600080604083850312156128b757600080fd5b6128c08361264c565b91506128ce6020840161264c565b90509250929050565b600083516128e98184602088016125d0565b8351908301906128fd8183602088016125d0565b01949350505050565b85815284602082015283604082015282606082015260a06080820152600061293160a08301846125f4565b979650505050505050565b634e487b7160e01b600052603260045260246000fd5b848152836020820152826040820152608060608201526000610f4860808301846125f4565b60006001600160a01b03808716835280861660208401525083604083015260806060830152610f4860808301846125f4565b6000602082840312156129bb57600080fd5b815161068081612585565b805160208083015191908110156129e7576000198160200360031b1b821691505b50919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610392576103926129ed565b600081518084526020808501945080840160005b83811015612a4657815187529582019590820190600101612a2a565b509495945050505050565b838152606060208201526000612a6a6060830185612a16565b905060ff83166040830152949350505050565b600060208284031215612a8f57600080fd5b815167ffffffffffffffff811115612aa657600080fd5b8201601f81018413612ab757600080fd5b8051612ac56127728261272b565b818152856020838501011115612ada57600080fd5b610ac08260208301602086016125d0565b604081526000612afe60408301856125f4565b90506001600160a01b03831660208301529392505050565b848152608060208201526000612b2f6080830186612a16565b60ff949094166040830152506060015292915050565b600060208284031215612b5757600080fd5b5051919050565b85815260a060208201526000612b7760a0830187612a16565b60ff861660408401528281036060840152612b9281866125f4565b9150508260808301529695505050505050565b82815260006020808301845182860160005b82811015612bd357815184529284019290840190600101612bb7565b5091979650505050505050565b60006000198203612bf357612bf36129ed565b5060010190565b634e487b7160e01b600052601260045260246000fd5b606081526000612c236060830186612a16565b65ffffffffffff851660208401528281036040840152610f4881856125f4565b848152608060208201526000612c5c6080830186612a16565b65ffffffffffff85166040840152828103606084015261293181856125f4565b606081526000612c8f60608301866125f4565b60208301949094525060400152919050565b81810381811115610392576103926129ed56fea164736f6c6343000815000aa164736f6c6343000815000a","sourceMap":"1469:2142:135:-:0;;;1612:37;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1564:86:135;;;1469:2142;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806317d7de7c1161005b57806317d7de7c146100df57806345ec93541461010d5780637c5b033514610120578063e1af802c1461013357600080fd5b806301ffc9a714610082578063119df25f146100aa57806313861fb5146100ca575b600080fd5b610095610090366004612c34565b61013b565b60405190151581526020015b60405180910390f35b6100b26101d4565b6040516001600160a01b0390911681526020016100a1565b6100dd6100d8366004612d0e565b6101e3565b005b6040517f6572633732312d7075707065740000000000000000000000000000000000000081526020016100a1565b604051601f1936013581526020016100a1565b6100dd61012e366004612d0e565b6106a0565b6100b26106d2565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f79f50b5b0000000000000000000000000000000000000000000000000000000014806101ce57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006101de6106dc565b905090565b60006001600160a01b031661021f7f6572633732312d70757070657400000000000000000000000000000000000000838051906020012061070e565b6001600160a01b03161461025f576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600080828060200190518101906102769190612e02565b90925090507f9a8d9cc8cdced28f8a8f8f9a8c0000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff19831601610305576040517f2ca07d8400000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b61030d610835565b60006103176106d2565b6040516001600160a01b03828116602483015271ffffffffffffffffffffffffffffffffffff19861660448301529192507f00000000000000000000000000000000000000000000000000000000000000009091169060640160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c200000000000000000000000000000000000000000000000000000000179052516103d39190612ee5565b600060405180830381855af49150503d806000811461040e576040519150601f19603f3d011682016040523d82523d6000602084013e610413565b606091505b505050610428610422846108c5565b836108f7565b600061043384610954565b9050600061044183836109a1565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601087901c16176001600160a01b03841663ef5d6bbb826104a26101d4565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b15801561050157600080fd5b505af1158015610515573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610597935001905060405160208183030381529060405261059290612f01565b610c71565b6106185760408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610618910160405160208183030381529060405261061390612f01565b610d55565b60408051613a3160f11b60208201527f6572633732312d7075707065740000000000000000000000000000000000000060228201527f45524337323152656769737472790000000000000000000000000000000000006030820152610697910160405160208183030381529060405261069090612f01565b8284610da1565b50505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006101de610e61565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061070b5750335b90565b60408051600280825260608201835260009283929190602083019080368337019050509050836fffffffffffffffffffffffffffffffff19168160008151811061075a5761075a612f25565b602002602001018181525050828160018151811061077a5761077a612f25565b60209081029190910181019190915260408051613a3160f11b818401527f776f726c6400000000000000000000000000000000000000000000000000000060228201527f496e7374616c6c65644d6f64756c657300000000000000000000000000000000603082015281518082039093018352810190526000906108299061080190612f01565b8360007e14010014000000000000000000000000000000000000000000000000000000610ea0565b60601c95945050505050565b6040805160008082526020820190925261086090651c1d5c1c195d60d21b908051906020012061070e565b6001600160a01b0316036108c357604051651c1d5c1c195d60d21b602082015260300160408051601f19818403018152908290527f217ef9250000000000000000000000000000000000000000000000000000000082526102fc91600401612f67565b565b60006101ce613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610f5d565b60606000610912836000015184602001518560400151610fe4565b9050600061092d84600001518560200151866040015161100d565b60408051600081526020810190915290915061094c868286868661103c565b505050505050565b60006101ce7f7379000000000000000000000000000000000000000000000000000000000000837f45524337323153797374656d0000000000000000000000000000000000000000610f5d565b604080517f73790000000000000000000000000000000000000000000000000000000000006020820152651c1d5c1c195d60d21b60228201527f466163746f72790000000000000000000000000000000000000000000000000060308201526000916001600160a01b03851691633ae7af089101604051602081830303815290604052610a2d90612f01565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610aca929190600401612f7a565b6000604051808303816000875af1158015610ae9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610b119190810190612f93565b806020019051810190610b249190612fdc565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f73790000000000000000000000000000000000000000000000000000000000006020820152651c1d5c1c195d60d21b60228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610bf090612f01565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610c3992919060248101613005565b600060405180830381600087803b158015610c5357600080fd5b505af1158015610c67573d6000803e3d6000fd5b5050505092915050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610caa57610caa612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f7572636549647300000000000000000000000000000000000000000060308201528151808203909301835281019052600090610d4190610d1990612f01565b8360007e01010001000000000000000000000000000000000000000000000000000000610ea0565b9050610d4d8160f81c90565b949350505050565b610d9e817e14010014000000000000000000000000000000000000000000000000000000610d816110f1565b610d89611169565b610d916111a3565b610d99611228565b61129f565b50565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610dd757610dd7612f25565b602002602001018181525050610e5b8482600085604051602001610e26919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e14010014000000000000000000000000000000000000000000000000000000611358565b50505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b031680610e9b573391505090565b919050565b600080610eab610e61565b9050306001600160a01b03821603610ed157610ec9868686866113ce565b915050610d4d565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610f1c90899089908990899060040161305f565b602060405180830381865afa158015610f39573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ec9919061308e565b6000610f6b607060106130bd565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790505b9392505050565b6000610d4d845184518451608881901b606083901b603885901b85850184011717179392505050565b6060838383604051602001611024939291906130d0565b60405160208183030381529060405290509392505050565b6000611046610e61565b9050306001600160a01b0382160361106a576110658686868686611404565b61094c565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb906110b79089908990899089908990600401613113565b600060405180830381600087803b1580156110d157600080fd5b505af11580156110e5573d6000803e3d6000fd5b50505050505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050605f8160008151811061112b5761112b612f25565b602002602001019060c581111561114457611144613164565b908160c581111561115757611157613164565b90525061116381611421565b91505090565b6040805160018082528183019092526000918291906020808301908036833701905050905060618160008151811061112b5761112b612f25565b604080516001808252818301909252606091816020015b60608152602001906001900390816111ba5790505090506040518060400160405280600b81526020017f6e616d65737061636549640000000000000000000000000000000000000000008152508160008151811061121a5761121a612f25565b602002602001018190525090565b604080516001808252818301909252606091816020015b606081526020019060019003908161123f5790505090506040518060400160405280600c81526020017f746f6b656e4164647265737300000000000000000000000000000000000000008152508160008151811061121a5761121a612f25565b60006112a9610e61565b9050306001600160a01b038216036112ce576112c98787878787876115dc565b610697565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f499061131d908a908a908a908a908a908a906004016131cf565b600060405180830381600087803b15801561133757600080fd5b505af115801561134b573d6000803e3d6000fd5b5050505050505050505050565b6000611362610e61565b9050306001600160a01b038216036113815761106586868686866118c9565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906110b79089908990899089908990600401613219565b60006113fb6113dd86866118de565b60ff858116601b0360080285901c166113f68587611934565b611977565b95945050505050565b61141a85858585856114158b6119c8565b611ac6565b5050505050565b6000601c8251111561144b578151604051635318beb960e01b81526004016102fc91815260200190565b60008080805b855181101561152657600061148f87838151811061147157611471612f25565b602002602001015160c581111561148a5761148a613164565b611db5565b9050806000036114a4576001909201916114dc565b82156114dc576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106114fd576114fd612f25565b602002602001015160c581111561151657611516613164565b901b949094179350600101611451565b50600581111561154c57604051635318beb960e01b8152600481018290526024016102fc565b8451819003600861155f60026020613260565b6115699190613273565b83901b93909317926008600161158160026020613260565b61158b9190613260565b6115959190613273565b81901b939093179260086001806115ae60026020613260565b6115b89190613260565b6115c29190613260565b6115cc9190613273565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061165557507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b156116b657613a3160f11b868760405160200161167491815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102fc93929160040161328a565b6116c1856000611e15565b6116cc846001611f97565b6116d7836000611f97565b60e084901c60e885901c0160ff168251146117375760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102fc565b60e085901c60e886901c0160ff168151146117975760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102fc565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff161461180f5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102fc565b6118188661213e565b1561187257858660405160200161183191815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102fc9291600401612f7a565b6118be868686868660405160200161188a91906132cb565b604051602081830303815290604052866040516020016118aa91906132cb565b60405160208183030381529060405261220e565b61094c866001612306565b61141a85856118d88487611934565b856123fd565b600082826040516020016118f39291906132de565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff1681101561196f5761195b60ff601b83900360080287901c16836130bd565b9150806119678161330c565b915050611939565b509392505050565b60006020821061199d5760208204840193506020828161199957611999613326565b0691505b508254600882021b60208290038084111561196f576001850154600882021c82179150509392505050565b60408051613a3160f11b60208201526473746f726560d81b60228201527f5461626c65730000000000000000000000000000000000000000000000000000603082015260009101604051602081830303815290604052611a2790612f01565b8203611a5357507e60030220202000000000000000000000000000000000000000000000000000919050565b60408051613a3160f11b60208201526473746f726560d81b60228201527f5461626c6573000000000000000000000000000000000000000000000000000060308201526101ce91611abd9101604051602081830303815290604052611ab790612f01565b84612656565b60206000611977565b857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611afc949392919061333c565b60405180910390a2613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000160361094c576000611b3d87612672565b905060005b8151811015611c20576000828281518110611b5f57611b5f612f25565b60200260200101519050611b8b6001826affffffffffffffffffffff191661273a90919063ffffffff16565b15611c0d576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611bda908c908c908c908c908c908c90600401613386565b600060405180830381600087803b158015611bf457600080fd5b505af1158015611c08573d6000803e3d6000fd5b505050505b5080611c188161330c565b915050611b42565b506000611c2d88886118de565b90506000602087019050611c45826000838a51612758565b6000611c5085612818565b1115611cd4576000611c628a8a612855565b878155905060208601915060008060005b611c7c88612818565b8160ff161015611ccf57611c918d8d836128ab565b9250611cac8a8260ff166028026038011c64ffffffffff1690565b9150611cbb8360008785612758565b611cc582866130bd565b9450600101611c73565b505050505b60005b83518110156110e5576000848281518110611cf457611cf4612f25565b60200260200101519050611d206002826affffffffffffffffffffff191661273a90919063ffffffff16565b15611da2576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611d6f908e908e908e908e908e908e90600401613386565b600060405180830381600087803b158015611d8957600080fd5b505af1158015611d9d573d6000803e3d6000fd5b505050505b5080611dad8161330c565b915050611cd7565b6000808260c5811115611dca57611dca613164565b60ff1690506061811015611de457601f1660010192915050565b60618360c5811115611df857611df8613164565b03611e065750601492915050565b50600092915050565b50919050565b80158015611e21575081155b15611e5b576040517f97e36a0a000000000000000000000000000000000000000000000000000000008152600060048201526024016102fc565b6000611e6683612818565b90506005811115611ea6576040517f97e36a0a000000000000000000000000000000000000000000000000000000008152600481018290526024016102fc565b6000611eb18461292b565b90506000611ebf83836130bd565b9050601c811115611eff576040517f97e36a0a000000000000000000000000000000000000000000000000000000008152600481018290526024016102fc565b60005b8281101561094c5760ff601b82900360080287901c166000819003611f53576040517fbf1ac38300000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6020811115611f8e576040517f2392baa400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101611f02565b80158015611fa3575081155b15611fc457604051635318beb960e01b8152600060048201526024016102fc565b6000611fcf83612818565b90506005811115611ff657604051635318beb960e01b8152600481018290526024016102fc565b60006120018461292b565b9050600061200f83836130bd565b9050601c81111561203657604051635318beb960e01b8152600481018290526024016102fc565b60008060005b838110156120f75760006120646120538a8461293d565b60c581111561148a5761148a613164565b11156120ae578481106120a3576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001909201916120ef565b848110156120e8576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6001909101905b60010161203c565b5083821461211b57604051635318beb960e01b8152600481018390526024016102fc565b84811461069757604051635318beb960e01b8152600481018290526024016102fc565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061217757612177612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f7572636549647300000000000000000000000000000000000000000060308201528151808203909301835281019052600090610d41906121e690612f01565b8360007e010100010000000000000000000000000000000000000000000000000000006113ce565b600061221b86868661295e565b905060006122298484612980565b90506000612237858561299d565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061227157612271612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5461626c65730000000000000000000000000000000000000000000000000000603082015281518082039093018352810190526110e5906122dd90612f01565b828686867e60030220202000000000000000000000000000000000000000000000000000611ac6565b60408051600180825281830190925260009160208083019080368337019050509050828160008151811061233c5761233c612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f5265736f75726365496473000000000000000000000000000000000000000000603082015281518082039093018352810190526123f8906123a890612f01565b826000856040516020016123c391151560f81b815260010190565b60408051601f198184030181529190527e010100010000000000000000000000000000000000000000000000000000006118c9565b505050565b600061240985856118de565b9050847f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be85858560405161243f939291906133df565b60405180910390a2613a3160f11b857fffff000000000000000000000000000000000000000000000000000000000000161461247b5750610e5b565b600061248686612672565b905060005b81518110156125655760008282815181106124a8576124a8612f25565b602002602001015190506124d46004826affffffffffffffffffffff191661273a90919063ffffffff16565b15612552576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d9061251f908b908b908b908b9060040161341c565b600060405180830381600087803b15801561253957600080fd5b505af115801561254d573d6000803e3d6000fd5b505050505b508061255d8161330c565b91505061248b565b50612579828565ffffffffffff16856129c9565b60005b815181101561069757600082828151811061259957612599612f25565b602002602001015190506125c56008826affffffffffffffffffffff191661273a90919063ffffffff16565b15612643576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612610908b908b908b908b9060040161341c565b600060405180830381600087803b15801561262a57600080fd5b505af115801561263e573d6000803e3d6000fd5b505050505b508061264e8161330c565b91505061257c565b60408051602081018490529081018290526000906060016118f3565b604080516001808252818301909252606091600091906020808301908036833701905050905082816000815181106126ac576126ac612f25565b60209081029190910181019190915260408051613a3160f11b818401526473746f726560d81b60228201527f53746f7265486f6f6b7300000000000000000000000000000000000000000000603082015281518082039093018352810190526000906127239061271b90612f01565b8360006129d9565b9050610d4d6127358260008451612a13565b612aa3565b60008160ff168261274b8560581c90565b1660ff1614905092915050565b82156127d257602083106127825760208304840193506020838161277e5761277e613326565b0692505b82156127d25760208390036000600019600884021c1990506008850281811c91508451811c90508119875416828216178755508183116127c3575050610e5b565b50600194909401939182019190035b5b602081106127f45781518455600190930192602090910190601f19016127d3565b8015610e5b576000600019600883021c198554845182169119161785555050505050565b6000600860018061282b60026020613260565b6128359190613260565b61283f9190613260565b6128499190613273565b8260ff911c1692915050565b6000828260405160200161286a9291906132de565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b600083836040516020016128c09291906132de565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b60006008600161283560026020613260565b6000601b8290036008028360ff911c1660c5811115610fdd57610fdd613164565b6040805160208101859052908101839052606081810183905290608001611024565b8151815160009181810160389190911b1760609190911b17610fdd565b606082826040516020016129b2929190613455565b604051602081830303815290604052905092915050565b6123f88383602084018451612758565b6060610d4d6129e98585856128ab565b612a0c846129f78888612ab4565b9060ff166028026038011c64ffffffffff1690565b6000612ac7565b6000818311158015612a26575083518211155b612a62578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102fc93929190613484565b60208401612a7084826130bd565b90506000612a7e8585613260565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610fdd8360156000612aea565b6000610fdd612ac38484612855565b5490565b60405160208101601f19603f858401011660405283825261196f85858584612b65565b60606000612af88560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612b1e57612b1e613326565b04905060405193506020840160208202810160405281855260005b82811015612b59578451871c825293870193602090910190600101612b39565b50505050509392505050565b8115612bee5760208210612b8f57602082048401935060208281612b8b57612b8b613326565b0691505b8115612bee576020829003600081851015612bb35750600019600885021c19612bbe565b50600019600882021c195b8554600885021b811984511682821617845250818511612bdf575050610e5b565b50600194909401939283900392015b5b60208310612c105783548152600190930192601f1990920191602001612bef565b8215610e5b576000600019600885021c198251865482169119161782525050505050565b600060208284031215612c4657600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610fdd57600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715612caf57612caf612c76565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612cde57612cde612c76565b604052919050565b600067ffffffffffffffff821115612d0057612d00612c76565b50601f01601f191660200190565b600060208284031215612d2057600080fd5b813567ffffffffffffffff811115612d3757600080fd5b8201601f81018413612d4857600080fd5b8035612d5b612d5682612ce6565b612cb5565b818152856020838501011115612d7057600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b83811015612da9578181015183820152602001612d91565b50506000910152565b6000612dc0612d5684612ce6565b9050828152838383011115612dd457600080fd5b610fdd836020830184612d8e565b600082601f830112612df357600080fd5b610fdd83835160208501612db2565b60008060408385031215612e1557600080fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612e3857600080fd5b602084015190925067ffffffffffffffff80821115612e5657600080fd5b9084019060608287031215612e6a57600080fd5b612e72612c8c565b825182811115612e8157600080fd5b612e8d88828601612de2565b825250602083015182811115612ea257600080fd5b612eae88828601612de2565b602083015250604083015182811115612ec657600080fd5b612ed288828601612de2565b6040830152508093505050509250929050565b60008251612ef7818460208701612d8e565b9190910192915050565b80516020808301519190811015611e0f5760001960209190910360031b1b16919050565b634e487b7160e01b600052603260045260246000fd5b60008151808452612f53816020860160208601612d8e565b601f01601f19169290920160200192915050565b602081526000610fdd6020830184612f3b565b828152604060208201526000610d4d6040830184612f3b565b600060208284031215612fa557600080fd5b815167ffffffffffffffff811115612fbc57600080fd5b8201601f81018413612fcd57600080fd5b610d4d84825160208401612db2565b600060208284031215612fee57600080fd5b81516001600160a01b0381168114610fdd57600080fd5b8381528260208201526060604082015260006113fb6060830184612f3b565b600081518084526020808501945080840160005b8381101561305457815187529582019590820190600101613038565b509495945050505050565b8481526080602082015260006130786080830186613024565b60ff949094166040830152506060015292915050565b6000602082840312156130a057600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156101ce576101ce6130a7565b600084516130e2818460208901612d8e565b8451908301906130f6818360208901612d8e565b8451910190613109818360208801612d8e565b0195945050505050565b85815260a06020820152600061312c60a0830187613024565b828103604084015261313e8187612f3b565b905084606084015282810360808401526131588185612f3b565b98975050505050505050565b634e487b7160e01b600052602160045260246000fd5b600081518084526020808501808196508360051b8101915082860160005b858110156131c25782840389526131b0848351612f3b565b98850198935090840190600101613198565b5091979650505050505050565b86815285602082015284604082015283606082015260c0608082015260006131fa60c083018561317a565b82810360a084015261320c818561317a565b9998505050505050505050565b85815260a06020820152600061323260a0830187613024565b60ff86166040840152828103606084015261324d8186612f3b565b9150508260808301529695505050505050565b818103818111156101ce576101ce6130a7565b80820281158282048414176101ce576101ce6130a7565b7fffff000000000000000000000000000000000000000000000000000000000000841681528260208201526060604082015260006113fb6060830184612f3b565b602081526000610fdd602083018461317a565b82815260006020808301845182860160005b828110156131c2578151845292840192908401906001016132f0565b6000600019820361331f5761331f6130a7565b5060010190565b634e487b7160e01b600052601260045260246000fd5b60808152600061334f6080830187613024565b82810360208401526133618187612f3b565b9050846040840152828103606084015261337b8185612f3b565b979650505050505050565b86815260c06020820152600061339f60c0830188613024565b82810360408401526133b18188612f3b565b905085606084015282810360808401526133cb8186612f3b565b9150508260a0830152979650505050505050565b6060815260006133f26060830186613024565b65ffffffffffff8516602084015282810360408401526134128185612f3b565b9695505050505050565b8481526080602082015260006134356080830186613024565b65ffffffffffff85166040840152828103606084015261337b8185612f3b565b60008351613467818460208801612d8e565b83519083019061347b818360208801612d8e565b01949350505050565b6060815260006134976060830186612f3b565b6020830194909452506040015291905056fea164736f6c6343000815000a","sourceMap":"1469:2142:135:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;754:220:52;;;;;;:::i;:::-;;:::i;:::-;;;516:14:201;;509:22;491:41;;479:2;464:18;754:220:52;;;;;;;;1245:113:57;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:201;;;689:74;;677:2;662:18;1245:113:57;543:226:201;2018:1490:135;;;;;;:::i;:::-;;:::i;:::-;;1655:87;;;1726:11;2632:98:201;;2620:2;2605:18;1655:87:135;2486:250:201;1599:110:57;;;-1:-1:-1;;3585:14:57;3581:23;3568:37;2887:25:201;;2875:2;2860:18;1599:110:57;2741:177:201;3512:97:135;;;;;;:::i;:::-;;:::i;1925:95:57:-;;;:::i;754:220:52:-;878:4;897:34;;;360:110:47;897:34:52;;:72;;-1:-1:-1;935:34:52;;;188::46;935::52;897:72;890:79;754:220;-1:-1:-1;;754:220:52:o;1245:113:57:-;1288:14;1317:36;:34;:36::i;:::-;1310:43;;1245:113;:::o;2018:1490:135:-;2199:1;-1:-1:-1;;;;;2137:64:135;:50;2158:11;2181:4;2171:15;;;;;;2137:20;:50::i;:::-;-1:-1:-1;;;;;2137:64:135;;2133:117;;2218:25;;;;;;;;;;;;;;2133:117;2277:17;2296:34;2345:4;2334:47;;;;;;;;;;;;:::i;:::-;2276:105;;-1:-1:-1;2276:105:135;-1:-1:-1;2454:29:135;-1:-1:-1;;2454:29:135;;;2450:97;;2500:40;;;;;-1:-1:-1;;5122:79:201;;2500:40:135;;;5104:98:201;5077:18;;2500:40:135;;;;;;;;2450:97;2581:22;:20;:22::i;:::-;2655:16;2685:8;:6;:8::i;:::-;2733:76;;-1:-1:-1;;;;;5425:55:201;;;2733:76:135;;;5407:74:201;-1:-1:-1;;5517:79:201;;5497:18;;;5490:107;5425:55;;-1:-1:-1;2700:19:135;:32;;;;5380:18:201;;2733:76:135;;;-1:-1:-1;;2733:76:135;;;;;;;;;;;;;;;;;;;;2700:110;;;2733:76;2700:110;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2848:57;2867:27;2884:9;2867:16;:27::i;:::-;2896:8;2848:18;:57::i;:::-;2958:25;2986:26;3002:9;2986:15;:26::i;:::-;2958:54;;3018:14;3035:35;3048:5;3055:14;3035:12;:35::i;:::-;3018:52;-1:-1:-1;1559:18:58;1582:33;336:5:16;1582:33:58;;;;1551:65;-1:-1:-1;;;;;3210:23:135;;;1551:65:58;3247:12:135;:10;:12::i;:::-;3210:50;;;;;;;;;;;;;6105:25:201;;;;-1:-1:-1;;;;;6166:55:201;6146:18;;;6139:83;6078:18;;3210:50:135;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;960:77:143;;;-1:-1:-1;;;960:77:143;;;6416:92:201;993:16:143;6524:11:201;;;6517:100;1011:25:143;6633:12:201;;;6626:101;3320:47:135;;-1:-1:-1;6743:12:201;;-1:-1:-1;960:77:143;;;;;;;;;;;;952:86;;;:::i;:::-;3320:21:135;:47::i;:::-;3315:118;;960:77:143;;;-1:-1:-1;;;960:77:143;;;6416:92:201;993:16:143;6524:11:201;;;6517:100;1011:25:143;6633:12:201;;;6626:101;3377:49:135;;6743:12:201;960:77:143;;;;;;;;;;;;952:86;;;:::i;:::-;3377:23:135;:49::i;:::-;960:77:143;;;-1:-1:-1;;;960:77:143;;;6416:92:201;993:16:143;6524:11:201;;;6517:100;1011:25:143;6633:12:201;;;6626:101;3438:65:135;;6743:12:201;960:77:143;;;;;;;;;;;;952:86;;;:::i;:::-;3483:11:135;3496:6;3438:18;:65::i;:::-;2061:1447;;;;;;2018:1490;:::o;3512:97::-;3572:32;;;;;;;;;;;;;;1925:95:57;1964:7;1986:29;:27;:29::i;2779:381::-;3063:34;3067:14;3063:34;3050:48;3046:2;3042:57;;3110:45;;-1:-1:-1;3145:10:57;3110:45;2779:381;:::o;4272:357:70:-;4409:16;;;4423:1;4409:16;;;;;;;;4351:21;;;;4409:16;4423:1;4409:16;;;;;;;;;;-1:-1:-1;4409:16:70;4380:45;;4454:10;4446:19;;;4431:9;4441:1;4431:12;;;;;;;;:::i;:::-;;;;;;:34;;;;;4486:13;4471:9;4481:1;4471:12;;;;;;;;:::i;:::-;;;;;;;;;;;:28;;;;1164:79;;;-1:-1:-1;;;1164:79:70;;;6416:92:201;1197:16:70;6524:11:201;;;6517:100;1215:27:70;6633:12:201;;;6626:101;1164:79:70;;;;;;;;;;6743:12:201;;1164:79:70;;-1:-1:-1;;4522:64:70;;1156:88;;;:::i;:::-;4559:9;4570:1;1361:66;4522:26;:64::i;:::-;4600:23;;;4272:357;-1:-1:-1;;;;;4272:357:70:o;1746:268:135:-;1892:12;;;1918:1;1892:12;;;;;;;;;1841:65;;-1:-1:-1;;;387:17:171;1882:23:135;;;;;;1841:20;:65::i;:::-;-1:-1:-1;;;;;1841:79:135;;1837:173;;1969:32;;-1:-1:-1;;;1969:32:135;;;7446:92:201;7554:12;;1969:32:135;;;-1:-1:-1;;1969:32:135;;;;;;;;;;1937:66;;;;;;;;:::i;1837:173::-;1746:268::o;709:181:151:-;768:10;791:96;-1:-1:-1;;;854:9:151;871:13;791:25;:96::i;18404:443:145:-;18487:24;18517:29;18549:57;18563:6;:11;;;18576:6;:13;;;18591:6;:14;;;18549:13;:57::i;:::-;18517:89;;18612:25;18640:57;18654:6;:11;;;18667:6;:13;;;18682:6;:14;;;18640:13;:57::i;:::-;18733:16;;;18704:26;18733:16;;;;;;;;18612:85;;-1:-1:-1;18756:86:145;18778:8;18733:16;18799:11;18812:15;18612:85;18756:21;:86::i;:::-;18481:366;;;;18404:443;;:::o;1649:186:151:-;1707:10;1730:102;1766:15;1794:9;1811:18;1730:25;:102::i;799:322:172:-;659:64:171;;;676:15;659:64;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;704:18:171;6633:12:201;;;6626:101;869:14:172;;-1:-1:-1;;;;;914:10:172;;;;;6743:12:201;659:64:171;;;;;;;;;;;;651:73;;;:::i;:::-;941:60:172;;;;;2887:25:201;;;2860:18;;941:60:172;;;-1:-1:-1;;941:60:172;;;;;;;;;;;;;;;;;;;;914:88;;941:60;914:88;;;;;;;;;941:60;914:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;914:88:172;;;;;;;;;;;;:::i;:::-;898:123;;;;;;;;;;;;:::i;:::-;889:132;-1:-1:-1;;;;;;1025:33:172;;;1079:18:93;606:36:58;2848:46;;2847:74;522:67:171;;;539:15;522:67;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;567:21:171;6633:12:201;;;6626:101;6743:12;522:67:171;;;;;;;;;;;;514:76;;;:::i;:::-;1105:12:172;;;1115:1;1105:12;;;;;;;;;1025:93;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;799:322;;;;:::o;3213:315:27:-;3326:16;;;3340:1;3326:16;;;;;;;;;3278:11;;;;3326:16;;;;;;;;;;;;-1:-1:-1;3326:16:27;3297:45;;3381:10;3348:9;3358:1;3348:12;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;1047:74;;;-1:-1:-1;;;1047:74:27;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1098:22:27;6633:12:201;;;6626:101;1047:74:27;;;;;;;;;;6743:12:201;;1047:74:27;;-1:-1:-1;;3415:64:27;;1039:83;;;:::i;:::-;3452:9;3463:1;1234:66;3415:26;:64::i;:::-;3399:80;;3493:29;3514:5;3501:20;;7878:5;7792:97;3493:29;3485:38;3213:315;-1:-1:-1;;;;3213:315:27:o;2828:174:146:-;2882:115;2908:8;1251:66;2932:14;:12;:14::i;:::-;2948:16;:14;:16::i;:::-;2966:13;:11;:13::i;:::-;2981:15;:13;:15::i;:::-;2882:25;:115::i;:::-;2828:174;:::o;5556:301::-;5680:16;;;5694:1;5680:16;;;;;;;;;5651:26;;5680:16;;;;;;;;;;;-1:-1:-1;5680:16:146;5651:45;;5735:11;5702:9;5712:1;5702:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5754:98;5781:8;5791:9;5802:1;5823:12;5805:32;;;;;;;10040:2:201;10036:15;;;;10053:66;10032:88;10020:101;;10146:2;10137:12;;9891:264;5805:32:146;;;;-1:-1:-1;;5805:32:146;;;;;;;;;1251:66;5754:26;:98::i;:::-;5645:212;5556:301;;;:::o;1766:227:24:-;996:42;1855:22;1816:7;;-1:-1:-1;;;;;1855:22:24;;1883:106;;1931:10;1924:17;;;1766:227;:::o;1883:106::-;1969:13;1766:227;-1:-1:-1;1766:227:24:o;17702:457::-;17859:7;17874:21;17898:17;:15;:17::i;:::-;17874:41;-1:-1:-1;17950:4:24;-1:-1:-1;;;;;17925:30:24;;;17921:234;;17972:68;17997:7;18006:8;18016:10;18028:11;17972:24;:68::i;:::-;17965:75;;;;;17921:234;18068:80;;;;;-1:-1:-1;;;;;18068:36:24;;;;;:80;;18105:7;;18114:8;;18124:10;;18136:11;;18068:80;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;:::i;1008:257:58:-;1095:10;1224:26;399:6;336:5:16;1224:26:58;:::i;:::-;1206:13;;;:45;;336:5:16;1170:31:58;;;;;1151:15;;;:51;:101;;-1:-1:-1;1008:257:58;;;;;;:::o;21278:384:145:-;21405:29;21565:86;21593:4;21587:18;21613:6;21607:20;21635:7;21629:21;3321:23:15;3306:39;;;3255:23;3240:39;;;785:5;3174:39;;;3139:5;;;:9;;3156:58;3222;3288;2987:425;;;;;;21827:225:145;21954:12;22005:4;22020:6;22037:7;21981:66;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;21974:73;;21827:225;;;;;:::o;6388:479:24:-;6574:21;6598:17;:15;:17::i;:::-;6574:41;-1:-1:-1;6650:4:24;-1:-1:-1;;;;;6625:30:24;;;6621:242;;6665:79;6685:7;6694:8;6704:10;6716:14;6732:11;6665:19;:79::i;:::-;6621:242;;;6765:91;;;;;-1:-1:-1;;;;;6765:31:24;;;;;:91;;6797:7;;6806:8;;6816:10;;6828:14;;6844:11;;6765:91;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;6568:299;6388:479;;;;;:::o;1671:200:146:-;1765:19;;;1782:1;1765:19;;;;;;;;;1718:6;;;;1765:19;;;;;;;;;;;;-1:-1:-1;1765:19:146;1732:52;;1806:18;1790:10;1801:1;1790:13;;;;;;;;:::i;:::-;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;1838:28:146;1855:10;1838:16;:28::i;:::-;1831:35;;;1671:200;:::o;1988:208::-;2086:19;;;2103:1;2086:19;;;;;;;;;2037:6;;;;2086:19;;;;;;;;;;;;-1:-1:-1;2086:19:146;2051:54;;2129:18;2111:12;2124:1;2111:15;;;;;;;;:::i;2330:142::-;2419:15;;;2432:1;2419:15;;;;;;;;;2376:24;;2419:15;;;;;;;;;;;;;;;;;;;;2408:26;;2440:27;;;;;;;;;;;;;;;;;:8;2449:1;2440:11;;;;;;;;:::i;:::-;;;;;;:27;;;;2330:142;:::o;2612:151::-;2707:15;;;2720:1;2707:15;;;;;;;;;2660:26;;2707:15;;;;;;;;;;;;;;;;;;;;2694:28;;2728:30;;;;;;;;;;;;;;;;;:10;2739:1;2728:13;;;;;;;;:::i;5574:520:24:-;5777:21;5801:17;:15;:17::i;:::-;5777:41;-1:-1:-1;5853:4:24;-1:-1:-1;;;;;5828:30:24;;;5824:266;;5868:91;5892:7;5901:11;5914:9;5925:11;5938:8;5948:10;5868:23;:91::i;:::-;5824:266;;;5980:103;;;;;-1:-1:-1;;;;;5980:35:24;;;;;:103;;6016:7;;6025:11;;6038:9;;6049:11;;6062:8;;6072:10;;5980:103;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5771:323;5574:520;;;;;;:::o;10690:455::-;10862:21;10886:17;:15;:17::i;:::-;10862:41;-1:-1:-1;10938:4:24;-1:-1:-1;;;;;10913:30:24;;;10909:232;;10953:74;10978:7;10987:8;10997:10;11009:4;11015:11;10953:24;:74::i;10909:232::-;11048:86;;;;;-1:-1:-1;;;;;11048:36:24;;;;;:86;;11085:7;;11094:8;;11104:10;;11116:4;;11122:11;;11048:86;;;:::i;35212:541:20:-;35369:7;35506:242;35550:59;35591:7;35600:8;35550:40;:59::i;:::-;35627:31;;;;4044:19:3;:27;537:1:30;4043:44:3;4009:79;;;3996:93;35676:63:20;35715:11;35728:10;35676:38;:63::i;:::-;35506:17;:242::i;:::-;35493:255;35212:541;-1:-1:-1;;;;;35212:541:20:o;11576:285::-;11762:94;11772:7;11781:8;11791:10;11803:14;11819:11;11832:23;11847:7;11832:14;:23::i;:::-;11762:9;:94::i;:::-;11576:285;;;;;:::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;;;;;;2887:25:201;;2875:2;2860:18;;2741:177;1329:85:17;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;;;;;2887:25:201;;;2860:18;;2664:38:17;2741:177:201;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;7479:1764:20:-;-1:-1:-1;;;7739:7:20;:35;;;;;;:83;;-1:-1:-1;7799:23:20;7778:7;:44;;;;7739:83;7735:209;;;-1:-1:-1;;;7894:7:20;7927;7910:25;;;;;;16061:19:201;;16105:2;16096:12;;15901:213;7910:25:20;;;;-1:-1:-1;;7910:25:20;;;;;;;;;;7839:98;;;;;;;;;;:::i;7735:209::-;7990:43;:11;8025:5;7990:20;:43::i;:::-;8074:40;:9;8107:4;8074:18;:40::i;:::-;8120:43;:11;8155:5;8120:20;:43::i;:::-;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;8251:8:20;:15;:40;8247:148;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;8372:15:20;;8308:80;;;;;;;;16762:25:201;;;;16803:18;;;16796:34;16735:18;;8308:80:20;16588:248:201;8247:148:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;8445:10:20;:17;:44;8441:158;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;8574:17:20;;8506:86;;;;;;;;16762:25:201;;;;16803:18;;;16796:34;16735:18;;8506:86:20;16588:248:201;8441: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;;8656:50:20;8652: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;;8723:93:20;;;;;;;;16762:25:201;;;;16803:18;;;16796:34;16735:18;;8723:93:20;16588:248:201;8652:171:20;8885:31;8908:7;8885:22;:31::i;:::-;8881:140;;;8971:7;9004;8987:25;;;;;;16061:19:201;;16105:2;16096:12;;15901:213;8987:25:20;;;;-1:-1:-1;;8987:25:20;;;;;;;;;;8933:81;;;;;;;;;:::i;8881:140::-;9062:103;9074:7;9083:11;9096:9;9107:11;9131:8;9120:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;9153:10;9142:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;9062:11;:103::i;:::-;9201:37;9224:7;9233:4;9201:22;:37::i;22277:355::-;22449:178;22483:7;22508:8;22538:63;22577:11;22590:10;22538:38;:63::i;:::-;22616:4;22449:16;:178::i;49619:191::-;49721:7;49785;49794:8;49768:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;49768:35:20;;;;;;;;;49758:46;;49768:35;49758:46;;;;41226:22;49751:53;;49619:191;-1:-1:-1;;;49619:191:20:o;50636:242::-;50732:7;;;50771:84;50791:10;50787:14;;:1;:14;50771:84;;;50816:32;3996:93:3;4044:19;:27;;;537:1:30;4043:44:3;4009:79;;;3996:93;50816:32:20;;:::i;:::-;;-1:-1:-1;50803:3:20;;;;:::i;:::-;;;;50771:84;;;-1:-1:-1;50867:6:20;50636:242;-1:-1:-1;;;50636:242:20:o;8796:790:19:-;8894:14;8930:2;8920:6;:12;8916:112;;8989:2;8980:6;:11;8962:29;;;;9011:2;9001:12;;;;;;:::i;:::-;;;;8916:112;-1:-1:-1;9208:21:19;;9204:1;9192:14;;9188:42;9356:2;:11;;;9438:22;;;9434:148;;;9563:1;9547:14;9543:22;9537:29;9533:1;9518:13;9514:21;9510:57;9502:6;9499:69;9489:79;;8910:676;8796:790;;;;;:::o;4858:651:20:-;1147:69:29;;;-1:-1:-1;;;1147:69:29;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1198:17:29;6633:12:201;;;6626:101;4925:11:20;;6743:12:201;1147:69:29;;;;;;;;;;;;1139:78;;;:::i;:::-;5179:7:20;5161:62;5157:112;;-1:-1:-1;1324:66:29;;4858:651:20;-1:-1:-1;4858:651:20:o;5157:112::-;1147:69:29;;;-1:-1:-1;;;1147:69:29;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1198:17:29;6633:12:201;;;6626:101;5313:183:20;;5359:83;;6743:12:201;1147:69:29;;;;;;;;;;;;1139:78;;;:::i;:::-;5433:7:20;5359:40;:83::i;:::-;5462:2;5484:1;5313:17;:183::i;12721:3002::-;12994:7;12978:75;13003:8;13013:10;13025:14;13041:11;12978:75;;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;13118:7:20;:35;;;13163:7;13114:62;13314:22;13339:24;13355:7;13339:15;:24::i;:::-;13314:49;;13374:9;13369:340;13389:5;:12;13385:1;:16;13369:340;;;13416:9;13438:5;13444:1;13438:8;;;;;;;;:::i;:::-;;;;;;;13416:31;;13459:33;343:6:32;13459:4:20;:14;;;;;:33;;;;:::i;:::-;13455:248;;;13504:190;;;;;3392:35:4;;;;;13504:47:20;;:190;;13563:7;;13582:8;;13602:10;;13624:14;;13650:11;;13673;;13504:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;13455:248;-1:-1:-1;13403:3:20;;;;:::i;:::-;;;;13369:340;;;;13772:26;13801:59;13842:7;13851:8;13801:40;:59::i;:::-;13772:88;-1:-1:-1;13866:21:20;826:4:14;816:15;;13866:54:20;;13926:149;13964:18;13998:1;14022:13;14051:10;:17;13926:13;:149::i;:::-;14175:1;14142:30;:11;:28;:30::i;:::-;:34;14138:1174;;;14261:33;14297:66;14345:7;14354:8;14297:47;:66::i;:::-;579:28:19;;;14261:102:20;-1:-1:-1;826:4:14;816:15;;14537:47:20;;14693:27;14728:25;14766:7;14761:545;14779:30;:11;:28;:30::i;:::-;14775:1;:34;;;14761:545;;;14845:63;14887:7;14896:8;14906:1;14845:41;:63::i;:::-;14823:85;-1:-1:-1;14938:25:20;:14;14961:1;6743:16:15;;862:5;6743:16;785:5;6732:27;6692:68;6670:92;;;6555:218;14938:25:20;14918:45;;14973:170;15015:19;15054:1;15082:13;15115:17;14973:13;:170::i;:::-;15153:34;15170:17;15153:34;;:::i;:::-;;-1:-1:-1;15284:3:20;;14761:545;;;;14178:1134;;;14138:1174;15386:9;15381:338;15401:5;:12;15397:1;:16;15381:338;;;15428:9;15450:5;15456:1;15450:8;;;;;;;;:::i;:::-;;;;;;;15428:31;;15471:32;437:6:32;15471:4:20;:14;;;;;:32;;;;:::i;:::-;15467:246;;;15515:189;;;;;3392:35:4;;;;;15515:46:20;;:189;;15573:7;;15592:8;;15612:10;;15634:14;;15660:11;;15683;;15515:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15467:246;-1:-1:-1;15415:3:20;;;;:::i;:::-;;;;15381:338;;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;3592:121::-;3270:445;3195:520;;;:::o;6418:1197:3:-;6540:10;6539:11;:36;;;;-1:-1:-1;6022:45:3;;6554:21;6535:95;;;6584:46;;;;;6628:1;6584:46;;;2887:25:201;2860:18;;6584:46:3;2741:177:201;6535:95:3;6698:25;6726:30;:11;:28;:30::i;:::-;6698:58;;902:1:30;6766:17:3;:38;6762:113;;;6813:62;;;;;;;;2887:25:201;;;2860:18;;6813:62:3;2741:177:201;6762:113:3;6882:24;6909:29;:11;:27;:29::i;:::-;6882:56;-1:-1:-1;7013:23:3;7039:36;7058:17;6882:56;7039:36;:::i;:::-;7013:62;;647:2:30;7085:15:3;:34;7081:107;;;7128:60;;;;;;;;2887:25:201;;;2860:18;;7128:60:3;2741:177:201;7081:107:3;7236:9;7231:380;7251:16;7247:1;:20;7231:380;;;3996:93;4044:19;:27;;;537:1:30;4043:44:3;4009:79;;;3996:93;7279:24;7340:21;;;7336:230;;7380:50;;;;;;;;;;;;;;7336:230;334:2:30;7449:16:3;:28;7445:121;;;7496:61;;;;;;;;;;;;;;7445:121;-1:-1:-1;7593:3:3;;7231:380;;5689:1683:17;5796:10;5795:11;:31;;;;-1:-1:-1;6022:45:3;;5810:16:17;5791:80;;;5835:36;;-1:-1:-1;;;5835:36:17;;5869:1;5835:36;;;2887:25:201;2860:18;;5835:36:17;2741:177:201;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;;;;;2887:25:201;;;2860:18;;6044:52:17;2741:177:201;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;;;;;2887:25:201;;;2860:18;;6339:50:17;2741:177:201;6292:97:17;6448:25;6479:26;6516:9;6511:551;6531:15;6527:1;:19;6511:551;;;6604:1;6562:39;:17;:6;6577:1;6562:14;:17::i;:::-;:37;;;;;;;;:::i;:39::-;:43;6558:459;;;6666:16;6661:1;:21;6657:82;;6691:48;;;;;;;;;;;;;;6657:82;6771:19;;;;;6558:459;;;6873:16;6869:1;:20;6865:81;;;6898:48;;;;;;;;;;;;;;6865:81;6978:20;;;;;6558:459;7044:3;;6511:551;;;;7135:16;7114:17;:37;7110:102;;7160:52;;-1:-1:-1;;;7160:52:17;;;;;2887:25:201;;;2860:18;;7160:52:17;2741:177:201;7110:102:17;7288:17;7266:18;:39;7262:105;;7314:53;;-1:-1:-1;;;7314:53:17;;;;;2887:25:201;;;2860:18;;7314:53:17;2741:177:201;3569:314:27;3683:16;;;3697:1;3683:16;;;;;;;;;3635:11;;;;3683:16;;;;;;;;;;;;-1:-1:-1;3683:16:27;3654:45;;3738:10;3705:9;3715:1;3705:12;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;1047:74;;;-1:-1:-1;;;1047:74:27;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1098:22:27;6633:12:201;;;6626:101;1047:74:27;;;;;;;;;;6743:12:201;;1047:74:27;;-1:-1:-1;;3772:62:27;;1039:83;;;:::i;:::-;3807:9;3818:1;1234:66;3772:24;:62::i;20632:676:29:-;20840:24;20867:49;20880:11;20893:9;20904:11;20867:12;:49::i;:::-;20840:76;;20923:29;20955:55;20969:18;20989:20;20955:13;:55::i;:::-;20923:87;;21016:25;21044:55;21058:18;21078:20;21044:13;:55::i;:::-;21135:16;;;21149:1;21135:16;;;;;;;;;21016:83;;-1:-1:-1;21106:26:29;;21135:16;;;;;;;;;;;;-1:-1:-1;21135:16:29;21106:45;;21190:7;21157:9;21167:1;21157:12;;;;;;;;:::i;:::-;;;;;;;;;;;:41;;;;1147:69;;;-1:-1:-1;;;1147:69:29;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1198:17:29;6633:12:201;;;6626:101;1147:69:29;;;;;;;;;;6743:12:201;;1147:69:29;;21205:98;;1139:78;;;:::i;:::-;21235:9;21246:11;21259:15;21276:12;1324:66;21205:19;:98::i;4933:268:27:-;5033:16;;;5047:1;5033:16;;;;;;;;;5004:26;;5033:16;;;;;;;;;;;-1:-1:-1;5033:16:27;5004:45;;5088:10;5055:9;5065:1;5055:12;;;;;;;;:::i;:::-;;;;;;;;;;;:44;;;;1047:74;;;-1:-1:-1;;;1047:74:27;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1098:22:27;6633:12:201;;;6626:101;1047:74:27;;;;;;;;;;6743:12:201;;1047:74:27;;5106:90;;1039:83;;;:::i;:::-;5141:9;5152:1;5173:6;5155:26;;;;;;20424:14:201;20417:22;20412:3;20408:32;20396:45;;20466:1;20457:11;;20273:201;5155:26:27;;;;-1:-1:-1;;5155:26:27;;;;;;;;;1234:66;5106:24;:90::i;:::-;4998:203;4933:268;;:::o;16359:1506:20:-;16480:16;16499:59;16540:7;16549:8;16499:40;:59::i;:::-;16480:78;;16660:7;16616:100;16679:8;16696:5;16709:4;16616:100;;;;;;;;:::i;:::-;;;;;;;;-1:-1:-1;;;16781:7:20;:35;;;16777:62;;16826:7;;;16777:62;16984:22;17009:24;17025:7;17009:15;:24::i;:::-;16984:49;;17044:9;17039:328;17059:5;:12;17055:1;:16;17039:328;;;17086:9;17108:5;17114:1;17108:8;;;;;;;;:::i;:::-;;;;;;;17086:31;;17129:41;548:6:32;17129:4:20;:14;;;;;:41;;;;:::i;:::-;17125:236;;;17182:170;;;;;3392:35:4;;;;;17182:54:20;;:170;;17258:7;;17287:8;;17314:5;;17337:4;;17182:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17125:236;-1:-1:-1;17073:3:20;;;;:::i;:::-;;;;17039:328;;;;17416:70;17448:8;17466:5;17416:70;;17479:4;17416:13;:70::i;:::-;17540:9;17535:326;17555:5;:12;17551:1;:16;17535:326;;;17582:9;17604:5;17610:1;17604:8;;;;;;;;:::i;:::-;;;;;;;17582:31;;17625:40;657:6:32;17625:4:20;:14;;;;;:40;;;;:::i;:::-;17621:234;;;17677:169;;;;;3392:35:4;;;;;17677:53:20;;:169;;17752:7;;17781:8;;17808:5;;17831:4;;17677:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;17621:234;-1:-1:-1;17569:3:20;;;;:::i;:::-;;;;17535:326;;50062:282;50307:30;;;;;;21805:19:201;;;21840:12;;;21833:28;;;50150:7:20;;21877:12:201;;50307:30:20;21617:278:201;4372:342:28;4488:16;;;4502:1;4488:16;;;;;;;;;4429:22;;4459:26;;4488:16;;;;;;;;;;;;-1:-1:-1;4488:16:28;4459:45;;4543:7;4510:9;4520:1;4510:12;;;;;;;;:::i;:::-;;;;;;;;;;;:41;;;;1047:73;;;-1:-1:-1;;;1047:73:28;;;6416:92:201;-1:-1:-1;;;6524:11:201;;;6517:100;1098:21:28;6633:12:201;;;6626:101;1047:73:28;;;;;;;;;;6743:12:201;;1047:73:28;;-1:-1:-1;;4579:49:28;;1039:82;;;:::i;:::-;4615:9;4626:1;4579:25;:49::i;:::-;4558:70;;4642:66;:44;4663:5;4670:1;4673:5;:12;4642:20;:44::i;:::-;:64;:66::i;2891:136:4:-;2961:4;3013:9;2980:42;;2999:9;2981:15;2991:4;3790:26;;;3660:162;2981:15;:27;2980:42;;;2973:49;;2891:136;;;;:::o;1373:2326:19:-;1486:10;;1482:1491;;1639:2;1629:6;:12;1625:122;;1702:2;1693:6;:11;1675:29;;;;1726:2;1716:12;;;;;;:::i;:::-;;;;1625:122;1837:10;;1833:1134;;2045:2;:11;;;1919:21;-1:-1:-1;;1080:1:31;1067:14;;1045:37;1043:40;2077:31:19;;2277:1;2269:6;2265:14;2313:4;2302:9;2298:20;2290:28;;2368:13;2362:20;2351:9;2347:36;2329:54;;2616:4;2612:9;2595:14;2589:21;2585:37;2516:4;2504:10;2500:21;2443:193;2415:14;2395:253;;2707:13;2697:6;:23;2693:36;;2722:7;;;;2693:36;-1:-1:-1;2870:1:19;2852:19;;;;;2883:30;;;;2925:23;;1833:1134;3003:253;3020:2;3010:6;:12;3003:253;;3115:20;;3092:44;;3189:1;3171:19;;;;3217:2;3200:19;;;;-1:-1:-1;;3229:12:19;3003:253;;;3324:10;;3320:375;;3344:12;-1:-1:-1;;1080:1:31;1067:14;;1045:37;1043:40;3626:21:19;;3542:20;;3538:31;;3649:9;;3622:37;3487:184;3443:238;;-1:-1:-1;1373:2326:19;;;;:::o;5098:173:3:-;5172:7;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1576:38;;;;:::i;:::-;5208:11:3;5187:79;5200:65;;5187:79;;5098:173;-1:-1:-1;;5098:173:3:o;52184:230:20:-;52305:7;52389;52398:8;52372:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;52372:35:20;;;;;;;;;52362:46;;52372:35;52362:46;;;;41389:40;52335:73;;52184:230;-1:-1:-1;;;52184:230:20:o;51555:274::-;51699:7;51804;51813:8;51787:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;51777:46;;;;;;51756:17;51749:25;;51729:45;;;41298:34;51729:45;:94;51721:103;;51714:110;;51555:274;;;;;:::o;4700:171:3:-;4773:7;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;3948:206:17:-;4018:10;4108:19;:27;;;4139:1;4107:33;4086:6;4061:82;4078:63;;4061:82;;;;;;;;;:::i;25035:209:29:-;25186:53;;;;;;22171:19:201;;;22206:12;;;22199:28;;;25159:12:29;22243::201;;;22236:28;;;25159:12:29;22280::201;;25186:53:29;21900:398:201;25435:388:29;25743:32;;25777:34;;25561:29;;2377:5:15;;;785;2408:39;;;;2390:58;2489:23;2474:39;;;;2456:58;25721:91:29;2236:344:15;25988:234:29;26114:12;26165:18;26194:20;26141:76;;;;;;;;;:::i;:::-;;;;;;;;;;;;;26134:83;;25988:234;;;;:::o;850:162:19:-;939:68;945:14;961:6;826:4:14;816:15;;995:4:19;:11;939:5;:68::i;36221:522:20:-;36357:12;36481:257;36520:79;36562:7;36571:8;36581:17;36520:41;:79::i;:::-;36617:93;36692:17;36617:66;36665:7;36674:8;36617:47;:66::i;:::-;:74;6743:16:15;;862:5;6743:16;785:5;6732:27;6692:68;6670:92;;;6555:218;36617:93:20;36728:1;36481:12;:257::i;2022:570:18:-;2113:5;2211:3;2202:5;:12;;:34;;;;;2225:4;:11;2218:3;:18;;2202:34;2196:85;;2264:4;2270:5;2277:3;2246:35;;;;;;;;;;;;;:::i;2196:85::-;2349:4;2339:15;;2396:17;2408:5;2339:15;2396:17;:::i;:::-;;-1:-1:-1;2419:12:18;2434:11;2440:5;2434:3;:11;:::i;:::-;643:17;2570:15;2562:3;2550:15;;;;2549:37;;;;;;-1:-1:-1;;;;;2022:570:18:o;40037:220:34:-;40103:24;40135:30;40168:32;40186:6;40194:2;40198:1;40168:17;:32::i;52752:301:20:-;52873:13;52965:82;52996:48;53026:7;53035:8;52996:29;:48::i;:::-;4572:21:19;;4466:137;4903:665;5315:4;5309:11;5356:4;5344:17;;-1:-1:-1;;5234:14:19;5403:26;;;5234:14;5230:28;5375:4;5368:63;5475:6;5467;5460:22;5493:51;5498:14;5514:6;5522;5530:13;5493:4;:51::i;2631:1127:36:-;2751:22;2781:21;2805;:11;2946:3:18;2924:25;;2850:104;2805:21:36;2781:45;-1:-1:-1;643:17:18;3187:38;;2832:20:36;2994:11;3187:38:18;2994:11:36;2979:26;;;;:::i;:::-;;2965:40;;3114:4;3108:11;3099:20;;3157:4;3150:5;3146:16;3217:2;3204:11;3200:20;3186:12;3182:39;3176:4;3169:53;3265:11;3258:5;3251:26;3308:1;3285:463;3324:11;3321:1;3318:18;3285:463;;;3718:20;;3697:42;;3676:64;;3590:31;;;;3503:4;3485:23;;;;3411:1;3404:9;3285:463;;;3289:28;;3066:688;;;2631:1127;;;;;:::o;5933:2374:19:-;6050:10;;6046:1537;;6203:2;6193:6;:12;6189:122;;6266:2;6257:6;:11;6239:29;;;;6290:2;6280:12;;;;;;:::i;:::-;;;;6189:122;6401:10;;6397:1180;;6609:2;:11;;;6483:21;6667:22;;;6663:133;;;-1:-1:-1;;;1080:1:31;1067:14;;1045:37;1043:40;6663:133:19;;;-1:-1:-1;;;1080:1:31;1067:14;;1045:37;1043:40;6663:133:19;6979:14;6973:21;6969:1;6961:6;6957:14;6953:42;7226:4;7222:9;7206:13;7200:20;7196:36;7127:4;7115:10;7111:21;7054:192;7027:13;7007:251;;7317:13;7307:6;:23;7303:36;;7332:7;;;;7303:36;-1:-1:-1;7480:1:19;7462:19;;;;;7535:23;;;;;7493:30;6397:1180;7612:253;7629:2;7619:6;:12;7612:253;;7723:21;;7701:44;;7798:1;7780:19;;;;-1:-1:-1;;7838:12:19;;;;7826:2;7809:19;7612:253;;;7933:10;;7929:374;;7953:12;-1:-1:-1;;1080:1:31;1067:14;;1045:37;1043:40;8235:20:19;;8150:21;;8146:32;;8257:9;;8231:36;8095:184;8052:237;;-1:-1:-1;5933:2374:19;;;;:::o;14:332:201:-;72:6;125:2;113:9;104:7;100:23;96:32;93:52;;;141:1;138;131:12;93:52;180:9;167:23;230:66;223:5;219:78;212:5;209:89;199:117;;312:1;309;302:12;774:184;-1:-1:-1;;;823:1:201;816:88;923:4;920:1;913:15;947:4;944:1;937:15;963:253;1035:2;1029:9;1077:4;1065:17;;1112:18;1097:34;;1133:22;;;1094:62;1091:88;;;1159:18;;:::i;:::-;1195:2;1188:22;963:253;:::o;1221:334::-;1292:2;1286:9;1348:2;1338:13;;-1:-1:-1;;1334:86:201;1322:99;;1451:18;1436:34;;1472:22;;;1433:62;1430:88;;;1498:18;;:::i;:::-;1534:2;1527:22;1221:334;;-1:-1:-1;1221:334:201:o;1560:245::-;1608:4;1641:18;1633:6;1630:30;1627:56;;;1663:18;;:::i;:::-;-1:-1:-1;1720:2:201;1708:15;-1:-1:-1;;1704:88:201;1794:4;1700:99;;1560:245::o;1810:671::-;1878:6;1931:2;1919:9;1910:7;1906:23;1902:32;1899:52;;;1947:1;1944;1937:12;1899:52;1987:9;1974:23;2020:18;2012:6;2009:30;2006:50;;;2052:1;2049;2042:12;2006:50;2075:22;;2128:4;2120:13;;2116:27;-1:-1:-1;2106:55:201;;2157:1;2154;2147:12;2106:55;2193:2;2180:16;2218:48;2234:31;2262:2;2234:31;:::i;:::-;2218:48;:::i;:::-;2289:2;2282:5;2275:17;2329:7;2324:2;2319;2315;2311:11;2307:20;2304:33;2301:53;;;2350:1;2347;2340:12;2301:53;2405:2;2400;2396;2392:11;2387:2;2380:5;2376:14;2363:45;2449:1;2428:14;;;2444:2;2424:23;2417:34;;;;2432:5;1810:671;-1:-1:-1;;;;1810:671:201:o;2923:250::-;3008:1;3018:113;3032:6;3029:1;3026:13;3018:113;;;3108:11;;;3102:18;3089:11;;;3082:39;3054:2;3047:10;3018:113;;;-1:-1:-1;;3165:1:201;3147:16;;3140:27;2923:250::o;3178:321::-;3254:5;3283:52;3299:35;3327:6;3299:35;:::i;3283:52::-;3274:61;;3358:6;3351:5;3344:21;3398:3;3389:6;3384:3;3380:16;3377:25;3374:45;;;3415:1;3412;3405:12;3374:45;3428:65;3486:6;3479:4;3472:5;3468:16;3463:3;3428:65;:::i;3504:237::-;3558:5;3611:3;3604:4;3596:6;3592:17;3588:27;3578:55;;3629:1;3626;3619:12;3578:55;3651:84;3731:3;3722:6;3716:13;3709:4;3701:6;3697:17;3651:84;:::i;3746:1207::-;3862:6;3870;3923:2;3911:9;3902:7;3898:23;3894:32;3891:52;;;3939:1;3936;3929:12;3891:52;3971:9;3965:16;-1:-1:-1;;4014:5:201;4010:78;4003:5;4000:89;3990:117;;4103:1;4100;4093:12;3990:117;4175:2;4160:18;;4154:25;4126:5;;-1:-1:-1;4198:18:201;4228:14;;;4225:34;;;4255:1;4252;4245:12;4225:34;4278:22;;;;4334:4;4316:16;;;4312:27;4309:47;;;4352:1;4349;4342:12;4309:47;4380:22;;:::i;:::-;4433:2;4427:9;4461:2;4451:8;4448:16;4445:36;;;4477:1;4474;4467:12;4445:36;4506:56;4554:7;4543:8;4539:2;4535:17;4506:56;:::i;:::-;4497:7;4490:73;;4602:2;4598;4594:11;4588:18;4631:2;4621:8;4618:16;4615:36;;;4647:1;4644;4637:12;4615:36;4685:56;4733:7;4722:8;4718:2;4714:17;4685:56;:::i;:::-;4680:2;4671:7;4667:16;4660:82;;4781:2;4777;4773:11;4767:18;4810:2;4800:8;4797:16;4794:36;;;4826:1;4823;4816:12;4794:36;4864:56;4912:7;4901:8;4897:2;4893:17;4864:56;:::i;:::-;4859:2;4850:7;4846:16;4839:82;;4940:7;4930:17;;;;;3746:1207;;;;;:::o;5608:287::-;5737:3;5775:6;5769:13;5791:66;5850:6;5845:3;5838:4;5830:6;5826:17;5791:66;:::i;:::-;5873:16;;;;;5608:287;-1:-1:-1;;5608:287:201:o;6766:357::-;6884:12;;6931:4;6920:16;;;6914:23;;6884:12;6949:16;;6946:171;;;-1:-1:-1;;7023:4:201;7019:17;;;;7016:1;7012:25;7008:98;6997:110;;6766:357;-1:-1:-1;6766:357:201:o;7128:184::-;-1:-1:-1;;;7177:1:201;7170:88;7277:4;7274:1;7267:15;7301:4;7298:1;7291:15;7577:330;7619:3;7657:5;7651:12;7684:6;7679:3;7672:19;7700:76;7769:6;7762:4;7757:3;7753:14;7746:4;7739:5;7735:16;7700:76;:::i;:::-;7821:2;7809:15;-1:-1:-1;;7805:88:201;7796:98;;;;7896:4;7792:109;;7577:330;-1:-1:-1;;7577:330:201:o;7912:220::-;8061:2;8050:9;8043:21;8024:4;8081:45;8122:2;8111:9;8107:18;8099:6;8081:45;:::i;8350:320::-;8556:6;8545:9;8538:25;8599:2;8594;8583:9;8579:18;8572:30;8519:4;8619:45;8660:2;8649:9;8645:18;8637:6;8619:45;:::i;8675:458::-;8754:6;8807:2;8795:9;8786:7;8782:23;8778:32;8775:52;;;8823:1;8820;8813:12;8775:52;8856:9;8850:16;8889:18;8881:6;8878:30;8875:50;;;8921:1;8918;8911:12;8875:50;8944:22;;8997:4;8989:13;;8985:27;-1:-1:-1;8975:55:201;;9026:1;9023;9016:12;8975:55;9049:78;9119:7;9114:2;9108:9;9103:2;9099;9095:11;9049:78;:::i;9138:321::-;9216:6;9269:2;9257:9;9248:7;9244:23;9240:32;9237:52;;;9285:1;9282;9275:12;9237:52;9317:9;9311:16;-1:-1:-1;;;;;9360:5:201;9356:54;9349:5;9346:65;9336:93;;9425:1;9422;9415:12;9464:422;9729:6;9718:9;9711:25;9772:6;9767:2;9756:9;9752:18;9745:34;9815:2;9810;9799:9;9795:18;9788:30;9692:4;9835:45;9876:2;9865:9;9861:18;9853:6;9835:45;:::i;10160:435::-;10213:3;10251:5;10245:12;10278:6;10273:3;10266:19;10304:4;10333:2;10328:3;10324:12;10317:19;;10370:2;10363:5;10359:14;10391:1;10401:169;10415:6;10412:1;10409:13;10401:169;;;10476:13;;10464:26;;10510:12;;;;10545:15;;;;10437:1;10430:9;10401:169;;;-1:-1:-1;10586:3:201;;10160:435;-1:-1:-1;;;;;10160:435:201:o;10600:546::-;10922:6;10911:9;10904:25;10965:3;10960:2;10949:9;10945:18;10938:31;10885:4;10986:57;11038:3;11027:9;11023:19;11015:6;10986:57;:::i;:::-;11091:4;11079:17;;;;11074:2;11059:18;;11052:45;-1:-1:-1;11128:2:201;11113:18;11106:34;10978:65;10600:546;-1:-1:-1;;10600:546:201:o;11151:184::-;11221:6;11274:2;11262:9;11253:7;11249:23;11245:32;11242:52;;;11290:1;11287;11280:12;11242:52;-1:-1:-1;11313:16:201;;11151:184;-1:-1:-1;11151:184:201:o;11340:::-;-1:-1:-1;;;11389:1:201;11382:88;11489:4;11486:1;11479:15;11513:4;11510:1;11503:15;11529:125;11594:9;;;11615:10;;;11612:36;;;11628:18;;:::i;11659:697::-;11880:3;11918:6;11912:13;11934:66;11993:6;11988:3;11981:4;11973:6;11969:17;11934:66;:::i;:::-;12063:13;;12022:16;;;;12085:70;12063:13;12022:16;12132:4;12120:17;;12085:70;:::i;:::-;12222:13;;12177:20;;;12244:70;12222:13;12177:20;12291:4;12279:17;;12244:70;:::i;:::-;12330:20;;11659:697;-1:-1:-1;;;;;11659:697:201:o;12361:793::-;12753:6;12742:9;12735:25;12796:3;12791:2;12780:9;12776:18;12769:31;12716:4;12823:57;12875:3;12864:9;12860:19;12852:6;12823:57;:::i;:::-;12928:9;12920:6;12916:22;12911:2;12900:9;12896:18;12889:50;12962:33;12988:6;12980;12962:33;:::i;:::-;12948:47;;13031:6;13026:2;13015:9;13011:18;13004:34;13087:9;13079:6;13075:22;13069:3;13058:9;13054:19;13047:51;13115:33;13141:6;13133;13115:33;:::i;:::-;13107:41;12361:793;-1:-1:-1;;;;;;;;12361:793:201:o;13159:184::-;-1:-1:-1;;;13208:1:201;13201:88;13308:4;13305:1;13298:15;13332:4;13329:1;13322:15;13348:616;13400:3;13438:5;13432:12;13465:6;13460:3;13453:19;13491:4;13532:2;13527:3;13523:12;13557:11;13584;13577:18;;13634:6;13631:1;13627:14;13620:5;13616:26;13604:38;;13676:2;13669:5;13665:14;13697:1;13707:231;13721:6;13718:1;13715:13;13707:231;;;13792:5;13786:4;13782:16;13777:3;13770:29;13820:38;13853:4;13844:6;13838:13;13820:38;:::i;:::-;13916:12;;;;13812:46;-1:-1:-1;13881:15:201;;;;13743:1;13736:9;13707:231;;;-1:-1:-1;13954:4:201;;13348:616;-1:-1:-1;;;;;;;13348:616:201:o;13969:908::-;14495:6;14484:9;14477:25;14538:6;14533:2;14522:9;14518:18;14511:34;14581:6;14576:2;14565:9;14561:18;14554:34;14624:6;14619:2;14608:9;14604:18;14597:34;14668:3;14662;14651:9;14647:19;14640:32;14458:4;14695:56;14746:3;14735:9;14731:19;14723:6;14695:56;:::i;:::-;14800:9;14792:6;14788:22;14782:3;14771:9;14767:19;14760:51;14828:43;14864:6;14856;14828:43;:::i;:::-;14820:51;13969:908;-1:-1:-1;;;;;;;;;13969:908:201:o;14882:708::-;15250:6;15239:9;15232:25;15293:3;15288:2;15277:9;15273:18;15266:31;15213:4;15320:57;15372:3;15361:9;15357:19;15349:6;15320:57;:::i;:::-;15425:4;15417:6;15413:17;15408:2;15397:9;15393:18;15386:45;15479:9;15471:6;15467:22;15462:2;15451:9;15447:18;15440:50;15507:33;15533:6;15525;15507:33;:::i;:::-;15499:41;;;15577:6;15571:3;15560:9;15556:19;15549:35;14882:708;;;;;;;;:::o;15595:128::-;15662:9;;;15683:11;;;15680:37;;;15697:18;;:::i;15728:168::-;15801:9;;;15832;;15849:15;;;15843:22;;15829:37;15819:71;;15870:18;;:::i;16119:464::-;16365:66;16357:6;16353:79;16342:9;16335:98;16469:6;16464:2;16453:9;16449:18;16442:34;16512:2;16507;16496:9;16492:18;16485:30;16316:4;16532:45;16573:2;16562:9;16558:18;16550:6;16532:45;:::i;17168:280::-;17367:2;17356:9;17349:21;17330:4;17387:55;17438:2;17427:9;17423:18;17415:6;17387:55;:::i;17453:639::-;17703:6;17698:3;17691:19;17673:3;17729:2;17762;17757:3;17753:12;17794:6;17788:13;17859:2;17851:6;17847:15;17880:1;17890:175;17904:6;17901:1;17898:13;17890:175;;;17967:13;;17953:28;;18003:14;;;;18040:15;;;;17926:1;17919:9;17890:175;;18097:195;18136:3;-1:-1:-1;;18160:5:201;18157:77;18154:103;;18237:18;;:::i;:::-;-1:-1:-1;18284:1:201;18273:13;;18097:195::o;18297:184::-;-1:-1:-1;;;18346:1:201;18339:88;18446:4;18443:1;18436:15;18470:4;18467:1;18460:15;18486:690;18819:3;18808:9;18801:22;18782:4;18846:57;18898:3;18887:9;18883:19;18875:6;18846:57;:::i;:::-;18951:9;18943:6;18939:22;18934:2;18923:9;18919:18;18912:50;18985:33;19011:6;19003;18985:33;:::i;:::-;18971:47;;19054:6;19049:2;19038:9;19034:18;19027:34;19109:9;19101:6;19097:22;19092:2;19081:9;19077:18;19070:50;19137:33;19163:6;19155;19137:33;:::i;:::-;19129:41;18486:690;-1:-1:-1;;;;;;;18486:690:201:o;19181:897::-;19633:6;19622:9;19615:25;19676:3;19671:2;19660:9;19656:18;19649:31;19596:4;19703:57;19755:3;19744:9;19740:19;19732:6;19703:57;:::i;:::-;19808:9;19800:6;19796:22;19791:2;19780:9;19776:18;19769:50;19842:33;19868:6;19860;19842:33;:::i;:::-;19828:47;;19911:6;19906:2;19895:9;19891:18;19884:34;19967:9;19959:6;19955:22;19949:3;19938:9;19934:19;19927:51;19995:33;20021:6;20013;19995:33;:::i;:::-;19987:41;;;20065:6;20059:3;20048:9;20044:19;20037:35;19181:897;;;;;;;;;:::o;20479:512::-;20730:2;20719:9;20712:21;20693:4;20756:56;20808:2;20797:9;20793:18;20785:6;20756:56;:::i;:::-;20860:14;20852:6;20848:27;20843:2;20832:9;20828:18;20821:55;20924:9;20916:6;20912:22;20907:2;20896:9;20892:18;20885:50;20952:33;20978:6;20970;20952:33;:::i;:::-;20944:41;20479:512;-1:-1:-1;;;;;;20479:512:201:o;20996:616::-;21306:6;21295:9;21288:25;21349:3;21344:2;21333:9;21329:18;21322:31;21269:4;21376:57;21428:3;21417:9;21413:19;21405:6;21376:57;:::i;:::-;21481:14;21473:6;21469:27;21464:2;21453:9;21449:18;21442:55;21545:9;21537:6;21533:22;21528:2;21517:9;21513:18;21506:50;21573:33;21599:6;21591;21573:33;:::i;22303:492::-;22478:3;22516:6;22510:13;22532:66;22591:6;22586:3;22579:4;22571:6;22567:17;22532:66;:::i;:::-;22661:13;;22620:16;;;;22683:70;22661:13;22620:16;22730:4;22718:17;;22683:70;:::i;:::-;22769:20;;22303:492;-1:-1:-1;;;;22303:492:201:o;22800:360::-;23003:2;22992:9;22985:21;22966:4;23023:45;23064:2;23053:9;23049:18;23041:6;23023:45;:::i;:::-;23099:2;23084:18;;23077:34;;;;-1:-1:-1;23142:2:201;23127:18;23120:34;23015:53;22800:360;-1:-1:-1;22800:360:201:o","linkReferences":{},"immutableReferences":{"95772":[{"start":842,"length":32}]}},"methodIdentifiers":{"_msgSender()":"119df25f","_msgValue()":"45ec9354","_world()":"e1af802c","getName()":"17d7de7c","install(bytes)":"13861fb5","installRoot(bytes)":"7c5b0335","supportsInterface(bytes4)":"01ffc9a7"},"rawMetadata":"{\"compiler\":{\"version\":\"0.8.21+commit.d9974bed\"},\"language\":\"Solidity\",\"output\":{\"abi\":[{\"inputs\":[{\"internalType\":\"bytes14\",\"name\":\"namespace\",\"type\":\"bytes14\"}],\"name\":\"ERC721Module_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"length\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FieldLayoutLib_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FieldLayoutLib_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_AlreadyInstalled\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"string\",\"name\":\"dependency\",\"type\":\"string\"}],\"name\":\"Module_MissingDependency\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_NonRootInstallNotSupported\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"Module_RootInstallNotSupported\",\"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_InvalidValueSchemaLength\",\"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\":[],\"name\":\"_msgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_msgValue\",\"outputs\":[{\"internalType\":\"uint256\",\"name\":\"value\",\"type\":\"uint256\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"_world\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"inputs\":[],\"name\":\"getName\",\"outputs\":[{\"internalType\":\"bytes16\",\"name\":\"\",\"type\":\"bytes16\"}],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"args\",\"type\":\"bytes\"}],\"name\":\"install\",\"outputs\":[],\"stateMutability\":\"nonpayable\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"\",\"type\":\"bytes\"}],\"name\":\"installRoot\",\"outputs\":[],\"stateMutability\":\"pure\",\"type\":\"function\"},{\"inputs\":[{\"internalType\":\"bytes4\",\"name\":\"interfaceId\",\"type\":\"bytes4\"}],\"name\":\"supportsInterface\",\"outputs\":[{\"internalType\":\"bool\",\"name\":\"\",\"type\":\"bool\"}],\"stateMutability\":\"pure\",\"type\":\"function\"}],\"devdoc\":{\"errors\":{\"Module_RootInstallNotSupported()\":[{\"details\":\"Errors to represent non-support of specific installation types.\"}],\"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\":{\"_msgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_msgValue()\":{\"returns\":{\"value\":\"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract.\"}},\"_world()\":{\"returns\":{\"_0\":\"The address of the World contract that routed the call to this WorldContextConsumer.\"}},\"getName()\":{\"details\":\"Provides a way to identify the module by a unique name.\",\"returns\":{\"_0\":\"The name of the module as a bytes16.\"}},\"install(bytes)\":{\"details\":\"This function is invoked by the World contract during `installModule` process. The module expects to be called via the World contract and thus installs itself on the `msg.sender`. Logic might differ from `installRoot`, for example, this might accept namespace parameters.\",\"params\":{\"args\":\"Arguments that may be needed during the installation process.\"}},\"supportsInterface(bytes4)\":{\"details\":\"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.\",\"params\":{\"interfaceId\":\"The bytes4 identifier for the interface.\"},\"returns\":{\"_0\":\"true if the interface is supported, false otherwise.\"}}},\"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\":{\"_msgSender()\":{\"notice\":\"Extract the `msg.sender` from the context appended to the calldata.\"},\"_msgValue()\":{\"notice\":\"Extract the `msg.value` from the context appended to the calldata.\"},\"_world()\":{\"notice\":\"Get the address of the World contract that routed the call to this WorldContextConsumer.\"},\"getName()\":{\"notice\":\"Return the name of the module.\"},\"install(bytes)\":{\"notice\":\"Installs the module.\"},\"supportsInterface(bytes4)\":{\"notice\":\"Checks if the given interfaceId is supported by this contract.\"}},\"version\":1}},\"settings\":{\"compilationTarget\":{\"src/modules/erc721-puppet/ERC721Module.sol\":\"ERC721Module\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x770eff7a38b9b7b1613dc11ca09db4f28b42a117c9b39b2a06a650a58a250bdb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://39f544110658a53def52c2a4e33b8b158b95a4f14fccea58d5268b6e728d86d4\",\"dweb:/ipfs/QmTesj6tjSFbfAiKUitXapdNYWPStS8bLkB3r22qfyHwUC\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xab31edce915377852bb5f29f7f2ccfc50cac087d64d2a8aae669715ad862d558\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3187e86e43be1fbdd59df45c695294f1114aa1ac48e6445c0cb26089434be5c4\",\"dweb:/ipfs/Qmck7shMVrcKMVkgN2pC1byPY7hb3V9fTxnUcGgxAUeXYk\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0x2a0536cd6cecc479d0b81d5aad6380231f4d6873beadc54814d801c2036b02c0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e07c041e19146a9ec258cc700a450b4d49440202895eb12f3bb17508427c23ba\",\"dweb:/ipfs/QmXoqrCGDSkuFgNSMURRFdjokjREL78nLDzNaUi6rjefy9\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0x045024523eb55d08ad8d13eca6185bff2988865f4aa12e3f9372029c2ecb8ddd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6621c53b49f8fe0557d1a1db47bfe1561801c09256948dd0652fb41541891a18\",\"dweb:/ipfs/QmZgFVCUH1pKcc9MeFyzMe1VW87SLz6c9szGwrDRUp6BZe\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x2bbc3c43400c15a91a5cb35430a91309cb64a4d13a0a170eacec71dcf334feaf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f44dfc9605067de539de07a76a34bf469faa9e6dad8c192abafc2e05860c7dd2\",\"dweb:/ipfs/QmX8xgG6XWokM7YFwFZvmMhuh1uhkSjxCMD2oTHjUVdapb\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0x9092b65551d0f910e5645cebb5acadb387cdd192d75fa89cd6b293bd65b28827\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://478825a6f7eff9ddab968e71e1d55ebee279d3b318f10976d9334384000059c0\",\"dweb:/ipfs/Qme7NY976woRy3RQjE4tkkiwoXnoVtTmER3PbWCSbjZ2kb\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0xa8eade05c551aeef35c84727d7a44af239516deb2d8a0cfb7ebeb5d88c6995e5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5335910bd8a204abb5f4396fb911a5ee5c221bd7fa63b1cc8ae5e737c6458c6a\",\"dweb:/ipfs/QmckkCAfrNcWo3yDxoD1jCe1k4iDA2GzVDpFjJZs7W79vx\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0xb9070663ded3cad82285bb7610949e422f88abb48c2ddbd792af83d127d64212\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://830490f1c888bec86df1e7ef43773d60ebdbdfdb2b91ab7fe074e2f38d7439dc\",\"dweb:/ipfs/QmS26fpXdZuGgMmjcdQDf9k1Bedn2dhjk9byFZJoNkctPZ\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xdd3104680808f975462a85cbd4fa87783ba5395797419caeeca37e8f8627a16f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://943864b7eb16ad2047ade5a8598e85c8a4b46d1aed6aef02bfb7cee8de732b4d\",\"dweb:/ipfs/QmTEij4caToSNk15PFpubXYDy9QhwmPyP9tMXjUse2cTdv\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0xa6777c7868333996ad9c61a94457dcac702d8d7445a104dfdc86543d25e7470e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6268a16449d7529a94746d0103670dd0e38faf5117bf914fb01da9947ab44c2e\",\"dweb:/ipfs/QmaSfbx1QRA3jw2K8bGkQTw4CTGPUzNqnCJW7LwaFUJCXy\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xd2180d53ecd31069b1166f170ecdcd85917ac50f45fc26fb39b49cee7ba00e37\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1494bb0a3228e2d194bddaed4761fd3ca865979f0e3f3a53acd271143a4aa0ac\",\"dweb:/ipfs/Qmaddnzzmu99iP9dTWK9ZeByh5dZyjY9SpVnRdvyr2fBAo\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf448fbb2bc9c982721a43234463656da5a49cea08543e62148d54f11e1ac3e2f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://64b3579d9b9dcd73dca2beab3d4fcf60237420945ebbb2e9f4ffcc88f4110115\",\"dweb:/ipfs/QmaW5nN3zGEriSYHncye6Nz2TkAw1oo1CyG2JuJTJrJoXg\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x8b6c7af5ee330928aebb58c8872d3944304ee10ed11f8a325b6accc4ec5df81b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b866d158701c7a40834bed735194b804ef219f2bbe574e2307785fff7bcf9da1\",\"dweb:/ipfs/QmXzJfZkXVfyr2RFGwDuazeVnV3UWYmQxjKZ3KzFbbe75U\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x69295976e61a1a108d1b4d6eb497b238730309f3047c4320d48e01a0ce8d4ec7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://559c451b21fb9dd4fec27b41bef42f4362f1e7ebb7992106d548b9d4f733b3e5\",\"dweb:/ipfs/QmeSE7YTW5zUrfZYFVb2pFnDe3XxiT8XNecfwC3wfpxCRv\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x44ddfa9eb8a861462c550f0a9d66c40c68acdb347a61fa765949608407a2c7fb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://47ee957f4b19cab9e20bf5fc569c015eca13852fb3351f2a105a8be9c48204c0\",\"dweb:/ipfs/QmNkyzDobVQLoq9BtQ8HtgsPLiqnmi97EZx1wsu6wp8nKH\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0x40983c580b8958e55db4520095934a535e98544ffe8228327e598973eb6647ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://839d658fa2bb2b1f09a08149d2bf0c26a26c301ad2dda8154fc99458085a695d\",\"dweb:/ipfs/Qmd5jHHYrgqraPqF8bjzT4xyjsoPk8K7pkxXLLfz6MRT6d\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x58aef318ba03f8ff8866ef70f8a30f549b150657ea699734aefe16c298956401\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7dc104690a7e2bcf5ce1afadcd58f8ef4d639b4b92b9ad9293656235d54395f3\",\"dweb:/ipfs/QmYJJvEv5KBJ3kzf9AkgRn7Uu5dp4exGTRddf4cae1btgE\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0xfaf54b1f5acccd4c6ce3f8377050ee84efbb423cb604b4651e8b9ea3b467bf32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acf2ce7ffec21f28ad1dc6da06c342f1212a03a3d16a0be7ee85715a5940718c\",\"dweb:/ipfs/QmTCN3NSdFg87hi7KS2Xtq7PsmRUMG64SxC8PtP3p2GzuT\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x130f0925a5bf4f732ef9758b47eca18c77d1bb34546ea9463321e9df766435a1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://68767e3db6fd6538a4577a1c30fe03e05bf9d316cdd43a66657e93c008b76f45\",\"dweb:/ipfs/QmSZmUBSfhk3v5gNu5GgwcYuWbb1FFDKYpDKvpXVahfyTw\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x95b7d62d84b43777c54dd1c7d941dbb5ba0afc02c444c30cfdb1de671bbbf180\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fe62a2fdb2a73610c3072f31b7f88ed3f9d03c1009fe0f0ef37a7eb814b23534\",\"dweb:/ipfs/QmV85zaV5HAD6eGc5N4RmdtmpR6EwkswVLQTaR2aJqsXrj\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0xf132af10f960a498f49c0534027056e715f4bdcb8fbdb53ac6879c92309ab416\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e85a09aeb7543bcd9d74b7ad319ae61e1f7f15a6a0ad9e79aff750fbd18111c7\",\"dweb:/ipfs/QmY6xgqeeaR1FsCPLmFbVgjm1D2UyrXNABKXWLfFaSmBhR\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0xf337a5abb2d43ef00c1c200e7fbec30fc89c7c701e457ab4277194b700d2aea3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://eccdf6158076b4e8f1b587a0310228f53323705e054a44eaa7733f38805c3ee6\",\"dweb:/ipfs/QmbXEVNTctg54dK9awdCVyAjeuUjR6ckfmmXBP8DrFmjyq\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0xc5c6f807cff6b4dc486525c559ba3f7cbb034ac5895636ee64c9d01defa6a38e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://84d3a3b3fd3afa2ab3231fd7fe981889dfb0600deec34c5d4e9c07d3187af8a5\",\"dweb:/ipfs/Qmanj7WjETqBYQXkxKLjqWs4vMp3en3N69B5MacKme5fpD\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0xf7a9bf3e37b486377005c556cdf5b813ea1a41278b3a0349f81e3c82a2f1c789\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://92cc87add89abcb126bf3cd0b284f25065c2b9c90a49f8dba4629b28a5b87751\",\"dweb:/ipfs/QmNNBDSK5GNujERGiSUhorbmtpdD2UnGz7MqSSDasEGdub\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xa1186b8b6143b4a87cea1624785494398be1613cb7c6f9e57734e1cca1d5dd14\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://488c158082622689d035d7964c6ca063295e53078291c340eb6a23db08e8ff95\",\"dweb:/ipfs/QmWcjo3B5SH7jStXKAuf7qvF2ouz6syw9c7aT86PnTgRqW\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xd47e1921c07fc8608157b5dc343fcef7235e891ea6a21dec1fb118a0bd797fcb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01a6ad068e6991994a0939f22a55245e0c7c82fc5e274da0af616286a8acfc7a\",\"dweb:/ipfs/QmPokA3pSexzZY33MMV6BGx48ZwQegdUN5AijiAfycSDxy\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x9e37c64c119ef07ad914bc589ee3f6d67946ab95877978c1ee3e2c1ffae07076\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3fad47e542025382aa28e8171253e34f93b2f149434b67a26989542d70218793\",\"dweb:/ipfs/QmW6JsKNwPc6oAMrgcikgR2EPwMUtQANiuZSQSGCd29HHC\"]},\"node_modules/@latticexyz/store/src/leftMask.sol\":{\"keccak256\":\"0xd0360567e4d77c6a8e3d8a5f4bf3653ccde4d268674c50988d55695dc6193f6f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://53e6bcb53fcb08ee9426225fdab7c41df91e12cb4f80d92895a6117338627401\",\"dweb:/ipfs/QmeLcaPGeMBpNSTSsPYK3PHpzKuGMjuitCweAWcoXK2mXr\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0x60880298016fa117ed9a43ddfd020f11d98a2d345bdcb08e5884e40df98eddd5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3619dfda1fd514c0fc5fb34c14d5b5aa41dd6ba6045d37d5f4c8199f3a826f81\",\"dweb:/ipfs/QmbzRBYfVa423gNzCitpGN3i2N9oeGYfinVE1jgtqxnNZX\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0xada1867ba72930fc5cf5562dd4e36de849dbac9c833b7969cb1b046a808fabf2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6e4b5fdcaa54f567a3f8561c2c3fbc0d68c8dad892a4a8e5418bbce8efc53d84\",\"dweb:/ipfs/QmTWbYJX1yrCqrEwUKB9rGpHdRvLNU8GCkBbxnLjGD4d2t\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0x1af0fd984640123391ec2df855d00298504b7ce186a56c2caca769cfd9e08e04\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7305a62318890d2cc6420ba7dec13d9f2c1cb67ac689015fc83b9cbccd0696f1\",\"dweb:/ipfs/QmR8jGNLbt64Tv1YZKRVBCVsd71oeUQFzGHHtpsrs4PuRq\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x1c280d24360282e196d9c4833c58c2437108cea2af0ac7596f95be81389e306d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6b4556b6eeae9328fbd9adcce346547e823c397503276a4d63effb67e00b5b49\",\"dweb:/ipfs/QmUsynVsMYzjh8oJR8YB7SRrwFMdXcsQsHBrXxLEEFxsiB\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x5cacd4cb371e0a79bc8d64f62349d568fd8b08093c11ae0c3db4f16480d8808b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://12b64ddf2b5c19cf68ba93a8153ed79cbafe7a91e015d4b2f25eb1d42ab06256\",\"dweb:/ipfs/QmQz5WwztcuTbSGFv2pkhU3w5scUj1gmavoyUpduxk2v3A\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x01029999a48b7c1d85de84cae465dd24ec126c95b8a865cd20c7ed5dfcc0f02c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9750164ce996badb0fd7df2f526780b9cb9558912405fe46f31064bd7c522491\",\"dweb:/ipfs/QmYf8m2ZXFANRc9ysHgNkNtSF327ccxKYjCUJ49UXBKADk\"]},\"node_modules/@latticexyz/world/src/DelegationControl.sol\":{\"keccak256\":\"0xebe8f1d4a86bcd052afe19773cc5b48da49a7742033c2cc6f06c17a20be907b9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://20dd17dc78d0aff086ae0b80823cdc8544cdef4b545ec58303a1a8ef19c5372c\",\"dweb:/ipfs/QmdTBo4xSMEQAQoae5o2L2DB7yGBv9TmzZwR3LmUjynEY9\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0xbf3da1c6ab38b3db62a4f4dd0235280d1fb07d8d465a145d6fd9eaf4bb4c3553\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://30205a69d660ed8de5bf34ee73ec9033737d544bc7572130c439b2467606469d\",\"dweb:/ipfs/QmUWTNdSW1bxXjaQzMUCLqBBoLYYre7CgDko4Qy12DaRNS\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5\",\"dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0x4535542ceb57e77096f24b943285bc158c48ef5291999f9c1e27f5682f8a9581\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ec670524d19c50c659e385bc4dcb4757b065e1b5fe14160244537a7cd7a4b883\",\"dweb:/ipfs/QmT7NSWFSQ6MxYefe665srKMT2GTWomrPRZAHLjrFhQzV6\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xb2114b6b66c0e7d8304d9e1d06aa1d0731f089daa6a0584e6cf744d9c48cf4db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ebbb172970b106dd4ae5a6d5e417ac75cad7529d2b94c1601e10b886d0edf510\",\"dweb:/ipfs/QmPGn4F92hjkFch6Jh2NB37EYLLfstw6JxJKUZjXBFqGCw\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0x22b8cb3ffcc21cb1657d57fc8ac929d2d6fdd199328e6f43ad2cb54f53dcd500\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://47c001f6b7c6d6e453c340618d23b1532078abb7d0fd7283405071e4e8ff8d2d\",\"dweb:/ipfs/QmRW3femBhqQCPwDEj4Jop2Dnd3EU21ufg7GDVwN4joCQu\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83\",\"dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0x9dc133cb55dc23fd6fcbbef8078bb4ea9bf67d698400cf89fc62b905b60cf5eb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7c1a57df7052218483eafe72d873660f39a73e2e06c1b14ad8a579d85b94bc6c\",\"dweb:/ipfs/Qme7dnjvADGZyM2L7nZ51nSjsjXXF9isTVCpWaUCd1cEGs\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0x652a3d6a3721a1c3f36abd7a398b16ae7d9e30ddbf54d8dc4494343dadb9f719\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c33d2bb71a7ae8823233fa399f778fe86e9bb078889a092fcd1ed9e7838873e5\",\"dweb:/ipfs/QmYM6JQ4syoxQLCXC4evHVEwbsTuXgS42HZZ9Fho7J9EXr\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0x7bece0ec86fdc458054e6db0ac4316fc98882fa3ba76b2fa107d3de5382053cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d154183426723bbf133d4dc5f8d051e9521f7b7cabe63925731fa4af99379cdd\",\"dweb:/ipfs/QmZXxPGcqknGLCwTByaZFKhqvKbrfiZkywmnh8buGTC2Mc\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0xa11d93077d94f18683f1098b69c4713a48001ae15054476135ec9569041abb9a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9b1d3384def68b4061c445b55602dd9cbcd4e8c58c13db5e945f284a05c1b518\",\"dweb:/ipfs/Qma5DUZrSKZUxrxiGCpyRPWMJNdHU2wu6qDEsFWEJSnLfN\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb\",\"dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0xc912f14d0f2e2e9e728a9d18e250ebe3eb2f51d0b4d79993c9d997991bbd5593\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://29621425847a1c11205307896b04e2a6c97934dd619f23ce6774ce52520f1255\",\"dweb:/ipfs/QmeuTe3q8U11Dqkp5tahxVWnp9Cd5ezQmRZ5vhEHtv14Eu\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xf04594c29c5c5b3110453ac189a8008735753de864ab4a7dfa97ccd3ae5f4a55\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4a3061f72b969a294dc96c3b2e59277e762ce6571cedcc7e280412431453dde5\",\"dweb:/ipfs/QmWB9aboakrCH9AmzGiZ1mCceh9atF4ks5ndEYFzUVbaHT\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0xf96aee478cc770cd9cd417b7939c38c9b9b075c91f3f47bdf8c6742f5591e9dc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9c59c4c9a6ab3d64e2b0d7c9f3df2d330a36fc93ac2ab5e5f907fa881fbed1f8\",\"dweb:/ipfs/QmTbd82cCtDwc8Ga1UsWAKXmFYrWU1zkbCCk1nMspqWdZu\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0xb4d323470e22b1d3f0168a44196eb09466f602b7564c75e5739c5f53a5036f97\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acad752208d00b731baaa1cfa192ff3981001fd030953bdc604e4f69ec2cd0b8\",\"dweb:/ipfs/QmRFw3RgmX2CHqg7PqsP3rqVKxBVYNq5hHcFiyA2Y7iAaX\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/ICoreSystem.sol\":{\"keccak256\":\"0xf837b53eaa348da3b3650e0b7159de02d3f84897d96e487ece2f932c272dbe57\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fbdc52e9e519c8c6d4a00caf4de08688eb8eb34dbfc6236308f281d7cf05b51b\",\"dweb:/ipfs/QmWnogXiA5KA6JGxCTJR5W1MNFowrH7baSAYhSXjV1xM47\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0x5be1d1ee90a7a03258e8c4fce7542453332c637a51b015e0cc29151ef2792263\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://df6d97356b2ca9d97b7593f4c0772742529fea73f1665e55a879a368b399cae0\",\"dweb:/ipfs/QmXCs5X4Z95isKRzjP4TQjQxwiB7773tHiJWLWkjLv3SLj\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0xd7e31957e7fcf056912fe16e10a0411bdb071c14c45853e7da264dfbfd6bcb62\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c4ce02327ac8971177685fc2655733ed3c07f5dfb72846680544a48953180aad\",\"dweb:/ipfs/QmQMNtkeCXdZfyyvtY8vUrKh5RUbpM7HYMGrzbxZGzTEFh\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0xbe0b03a0379cf2dcbed5302acbcb116b263b68a1c1689b66b6df2c0414033f7c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a7c3913cc938e7e0e3257194703a7cda9b8269b89ed2ccc5250d31eb07254198\",\"dweb:/ipfs/QmctosJsQ6sVhFHG3bEAUdhEdcBVVUKtSjTG1taXome1ff\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0xb0b7c13673a1629118cb0c3c341380fa6d4795c9b7cf6a6c73443750f1a3b34d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b3c8eb44785f61c0470273cac40a228ae458b74f48d2bff8faf8915861fc49ac\",\"dweb:/ipfs/QmUF52hgGCL9TMyTQqrxGVharwfFgKNsCpD3VNqfbhid9X\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0xe2a4e6a75ffda6971c16e9218a0f076d5b89572d37780cd4c2375a2de683fd60\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f04dbdf5295c0ddbda4ba0eb5fdebd84dce2ff3fe86d34681f71522bcb0e6e93\",\"dweb:/ipfs/QmUMkPg1vhSz2zVweN5bqtWbUCj3UQKZPgYfBkQ3QGS7gF\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x8318ead6bf21b8f1e9f231d73634034511d74c1a979246df9f9cda8f349b644d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b705a942046bb24fdbf0a5f4b365e33ab724d26bc158e7458ef5f262f72b5bae\",\"dweb:/ipfs/Qme63b3DKKizKumysUGVFH8Q9h6cHnHBFM2Kdsxh2p6SWN\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0x3bf40b7e71a1953f21b447975ec1a850994a250325fdb88489d24175cf8440d9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7fc1d4ce3096dfbd5510d2558d6fcae01ede446032ae232bd3e8656071e21ef1\",\"dweb:/ipfs/QmNSmK5Mt7tt5isSuo216vVnn6rHBprYjz9Sdodf8YRPAy\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0x07faffa7dc4a2adc4f9bfe93d5a59a7dd89241d360996537608e38f61c2d0588\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b96d4ce331b257a24de2f18503a11b986ed32d218810db9d5e3e7eddc17c2218\",\"dweb:/ipfs/Qme7Cw4RN1eaFWt2j3hk6ZMB7GWUfMY5oyZKYfMvAVxdBc\"]},\"node_modules/@latticexyz/world/src/modules/core/types.sol\":{\"keccak256\":\"0x256b3269e1e7eb6c8b6e26432bbe6799b4d45a88ef1b0e795ea71e604cec3a8a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://99bf6320ce9671ed74e7352b4e6c462d741ca9a894c48b526e7d8513308fa6b3\",\"dweb:/ipfs/QmRFJcWFMDRkg7soJ4r4MrqacKmj16vUEMFEGWJuvFi4vJ\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0x16795bdbfd7956d733df9ada1030ee7a1a714e3b9da5899149a7b07568c4af55\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7a71128b4989e78215d5fc57dae8c2f84c6b5e503c159178c0df6f642b8228df\",\"dweb:/ipfs/QmNYTfBe62SdGESZ32fxME72CbAxEqk4j79jBT7655C4u7\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2\",\"dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9\"]},\"src/modules/erc721-puppet/ERC721Module.sol\":{\"keccak256\":\"0x0a60a350f120f2ee8387410ab890362e09de4dc629f04f542c0f029e93ebedcf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c2f278946b0005962727cebc99f992ac0cba1ae52a47c9832178cb5d7a10211d\",\"dweb:/ipfs/Qme3uYvHqGLdepDziSiaL4SCCWsEeZggV9d2qwHR3YuFDe\"]},\"src/modules/erc721-puppet/ERC721System.sol\":{\"keccak256\":\"0x39cd970252dc3c59df2290b22a8b9f7b335f51bb15f9e24d810bf5e634f50235\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4a357ea36bab59200ccb5dfc9f484e1794c213bede5c220c18250c34de1d4ecf\",\"dweb:/ipfs/Qmf7SLaw7NEtNSAWRPhqTBxR1mKi7MhzxKTtGq73RPS4dh\"]},\"src/modules/erc721-puppet/IERC721.sol\":{\"keccak256\":\"0xece8034b2f4d2fea1adf2fc3bed59fb3db574250f0454f87706a2de3cdc297c5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://628276baff68bbcc9bc8ae577e10399401274e3ab12b8923f8f2aa96089a6250\",\"dweb:/ipfs/QmVdujDhoWHFHYuxZ4btB6nzTBvakpKgkoadBJN3iBkyyJ\"]},\"src/modules/erc721-puppet/IERC721Errors.sol\":{\"keccak256\":\"0x10aa9dfd2bb131b1a7a24eaff4fcac3676b06564b2002fd7fe02f70338d776b2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://726bff91b12f6bfc02a636feee5965ec04bb6eac838ec2d9287e8c2a6a6cd276\",\"dweb:/ipfs/QmX3w6VmRhMRSUrYZCDAqmEkoC4WtNnCeshCBdV2A5jYx6\"]},\"src/modules/erc721-puppet/IERC721Events.sol\":{\"keccak256\":\"0xa7d69b40c86ba641f56d01ed63a633363c74e90c1919781ad67afc93c5d3e8e7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://21e8bf89857c4fa44d4aafb491b5269f76043669b34e63cbb2fe103d3e5df5bb\",\"dweb:/ipfs/QmT55QTWBwM3V7gF2zCx4HVdkY7Tbm9JvsMgP9Zny9Lra5\"]},\"src/modules/erc721-puppet/IERC721Mintable.sol\":{\"keccak256\":\"0x8017469d5a084c996946085ec7d6cf2341be04bc97833df1fab0e6960b8f9d83\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://485836c34d4e2d600709546f3c4542d04b5fed27d975834666e7434f954ab03c\",\"dweb:/ipfs/QmPQ8Mydi7qZarueKkeQ8kt9bcCQcEPTgiRCGzkhwsQiru\"]},\"src/modules/erc721-puppet/IERC721Receiver.sol\":{\"keccak256\":\"0xd9278f007d3408f834303b317a5a54b01f6d5d4c70891953b94b012c2f9b2973\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://acfcf8fedd56229600ce0b522734c41146c5f1e73e92069404d70b2929d8dc74\",\"dweb:/ipfs/QmcutxkWBafrikCorV8avuWTJHFQPZ3N3j4ojN8aLZBCB1\"]},\"src/modules/erc721-puppet/constants.sol\":{\"keccak256\":\"0xd6a6ca3b2446fbcde45f5c3608067bfc4c663b0eb529d39eb8bc61c5087297fc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://68b98113bc18bfce66df4f7c26576dadd950f2c76b1c91de169909d502a0275b\",\"dweb:/ipfs/QmWaxgDwJTSaVjYMSDhLvX2boHg6T3XxiysvoRZwxVhqbg\"]},\"src/modules/erc721-puppet/tables/ERC721Metadata.sol\":{\"keccak256\":\"0xec2e7a95c1f4f0da01dc8b5d48e68a8af19709f5d11b647b6ddcf86ccd9d2bdb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a09475a7bd0948a7425bd0d58196a6a5e348c7400f05faa77ddef68d9965508c\",\"dweb:/ipfs/QmeRzT8ZR2wvvHDFup4a8ikgR6roWWfEsk4zqiPxATLMCE\"]},\"src/modules/erc721-puppet/tables/ERC721Registry.sol\":{\"keccak256\":\"0xe543ec4c2f1ff854a40f9e45ec129ff761cdaeaf75673ec0fd01478768a9a392\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bceeb230ebc5370c2500462832de2577bbd27a5f56e6870b7688738bd21df2fe\",\"dweb:/ipfs/QmVfvxRqt7riykzbUcz7S5rLQYGZyZ5G1bCrqmmbR7Tnbh\"]},\"src/modules/erc721-puppet/tables/OperatorApproval.sol\":{\"keccak256\":\"0xc319e035373d2d0cc0abb10a4afc81f079904fb95bafac106c902b5f872b2b7d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7e3c13884520ac0a06fd0e9b6f50dc270f1e5f533d27c96dc80654349fce5be9\",\"dweb:/ipfs/QmV8H5VESLcAhqz8kD4sUJPt8aoe8hn2HSostQaKX9S3hi\"]},\"src/modules/erc721-puppet/tables/Owners.sol\":{\"keccak256\":\"0x19e5ff2c5dd25fccc4cb99428f8e72841b4356ea1714689ad70ba0a0a6fe91ca\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://757970e385af7799bcbf522ad687212061b9294074dc0d7c46cf155195cf8695\",\"dweb:/ipfs/QmPjTdozvgRQuH7kLWPMnhCP6HVy27BbuDwDoYa6mDEjqV\"]},\"src/modules/erc721-puppet/tables/TokenApproval.sol\":{\"keccak256\":\"0x3bdfa8047556e6acf57cb6b5498698734d48f698166d97de55914cfd46a7addd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b28f1ada7a1aae3445cf3cede5bbc4849e66042f6fedff1579c713e3c7ea15b\",\"dweb:/ipfs/QmXBaBfQ82gsD3sRtwQEY6oXxznLGH7tfgf2ukjKjbs4qf\"]},\"src/modules/erc721-puppet/tables/TokenURI.sol\":{\"keccak256\":\"0x6749197d53e7c8e24287e3986feb29edf258d0c94303f6c48a5fe34f0ad3393c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f9cf7dce9cac2b303f086efd42f564e53c38174f85cb691699ec38b3bd45be17\",\"dweb:/ipfs/QmWJYzEMvXyi6fP6CUW24zErobXAwqhtaXhTg4JMR6maAe\"]},\"src/modules/erc721-puppet/utils.sol\":{\"keccak256\":\"0x98362b9233e8199e9b7219a63076cb515ee361a65950c2aad9967e6ae0eb9b63\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fb4bd453dc5f5ccd41cfb4f3950c0693d1c5092c2881f7f6dae3df57cb77e696\",\"dweb:/ipfs/QmNU7GRhvYeibv7UbMMJ9tUKbFwR8H98jKYuKVX8SiXQDm\"]},\"src/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x8933512836ec527a90f1fd44cf01870b302cd5f080d1dc9f64ea11c41e46d2ab\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://854b7887821c26da985de13e8fb476bd8bd52c411284793789d19d34d9112f3b\",\"dweb:/ipfs/QmcHweSL5z6Mwro4dm4sLnzy7WmzdZud5yW7KQ36mnZTYD\"]},\"src/modules/puppet/PuppetDelegationControl.sol\":{\"keccak256\":\"0x8ba3488fee9e5503fa77b39609cfa2eed78be87636ada50e99094b0edc5a79e0\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://08214be4e0315011bb8c675c955f560865687d9129be342ab420bbb5d123f37b\",\"dweb:/ipfs/QmXFbsptKuD6fxKhhb7FatDBRE4seDnmefNB2WG6MEHHmW\"]},\"src/modules/puppet/PuppetFactorySystem.sol\":{\"keccak256\":\"0x47fc8ab186eba9b965c8cde4ff814eb9973302cbe1de6ee96f4539b62278fd85\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://04eb1f7b3d964cefef88285546dbcbdc4f1c4e03d2364d37cdda5c79f9d9bb5a\",\"dweb:/ipfs/QmddEmBYqWtnd63FCZgnHz2ukk1ZFTwLv2bMkVYwsXTG5t\"]},\"src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0x7f94270573d344a1aea188e3920acab0f6c3befe9e7f27a1759df091f73db9e5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fc35076fb222a6e77a6968ef62856db69c4bb757f83f9849fe6abd8bb983002f\",\"dweb:/ipfs/QmVKRXYS1Xj1ckMZg6i9XPp8LbE4BXR8GL2XBfiFvnPnk9\"]},\"src/modules/puppet/constants.sol\":{\"keccak256\":\"0xb5379ef41cc6ab6a27bc8bee21f73094ecccd7af0b54e61bf7180b04dd828207\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7edb00d3c48110499790cc93573b3d4e7626a7d56c7243a57d0cbe2b1b86d449\",\"dweb:/ipfs/QmU9c1n3vftuRM4WjSmBhodZvSKwfovvzakdre2AYQTrur\"]},\"src/modules/puppet/createPuppet.sol\":{\"keccak256\":\"0x3ec80fa8b953772490089a2ec073109f4e06bdcb12ddc4f6501384340f64232e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://93ecfe683e78efc41c21ed5be647cb4654ccdbf38f8ef4358067f87b39dc997c\",\"dweb:/ipfs/QmTrt6U6BnykBBJqVmHQkgAxEcqZ6X5LHDQZgWVGVPR1X3\"]},\"src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0xe746e9170bee8f229554971e2ebdeda0ac4b4d342f92c711a9c22882c0ebe4f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8e8ba2b16545929f480da8b5d6980fe5f92bb87b7b09178b5236aeede72a7436\",\"dweb:/ipfs/QmUT9HGrXJB1jiyFW14kqGGGb8v86w2UscWuzWWfcmPTuE\"]},\"src/modules/puppet/utils.sol\":{\"keccak256\":\"0x725bf79655d814b0b04e2f64a8eb3a01dbd87cebf6c9674fb656363cc72c6e66\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6efcc323f7cdf8e0d284dafe714f9dd922d63c747e9a34d6e71473943b50805c\",\"dweb:/ipfs/QmcxA7uqyhAV7m3svQstVhsjvLYbcgUq1nQCk7vqACAsQf\"]},\"src/modules/tokens/tables/Balances.sol\":{\"keccak256\":\"0x1a5efec938f8f444e25499f55c11782e2f8425ecb4bb7642b3e4d89ef5c94283\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b8cc1696ae88061b5b469111ee6bd4c25919756d3c85e2830a92dd7a344bda8d\",\"dweb:/ipfs/QmNZKrU7NkRHmvvm98kaLYFusEmH3e7sJdCwciuUWzCCxe\"]},\"src/utils/AccessControlLib.sol\":{\"keccak256\":\"0xb31878bda3f249c941719f6aa743bc739701418ed3effd2b5e6b4f28219e3f88\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a56bea3221f0663c35375beea4803b0d4ebc7e004828b89ef72c0cfec8e009e0\",\"dweb:/ipfs/QmPNZig8c2ou4uZFMjotG1CGT3ZcTU2aCt3C2RTSLkx3w8\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.21+commit.d9974bed"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"ERC721Module_InvalidNamespace"},{"inputs":[{"internalType":"uint256","name":"length","type":"uint256"}],"type":"error","name":"FieldLayoutLib_InvalidLength"},{"inputs":[],"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord"},{"inputs":[],"type":"error","name":"FieldLayoutLib_StaticLengthIsZero"},{"inputs":[],"type":"error","name":"Module_AlreadyInstalled"},{"inputs":[{"internalType":"string","name":"dependency","type":"string"}],"type":"error","name":"Module_MissingDependency"},{"inputs":[],"type":"error","name":"Module_NonRootInstallNotSupported"},{"inputs":[],"type":"error","name":"Module_RootInstallNotSupported"},{"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_InvalidValueSchemaLength"},{"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":[],"stateMutability":"view","type":"function","name":"_msgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"_msgValue","outputs":[{"internalType":"uint256","name":"value","type":"uint256"}]},{"inputs":[],"stateMutability":"view","type":"function","name":"_world","outputs":[{"internalType":"address","name":"","type":"address"}]},{"inputs":[],"stateMutability":"pure","type":"function","name":"getName","outputs":[{"internalType":"bytes16","name":"","type":"bytes16"}]},{"inputs":[{"internalType":"bytes","name":"args","type":"bytes"}],"stateMutability":"nonpayable","type":"function","name":"install"},{"inputs":[{"internalType":"bytes","name":"","type":"bytes"}],"stateMutability":"pure","type":"function","name":"installRoot"},{"inputs":[{"internalType":"bytes4","name":"interfaceId","type":"bytes4"}],"stateMutability":"pure","type":"function","name":"supportsInterface","outputs":[{"internalType":"bool","name":"","type":"bool"}]}],"devdoc":{"kind":"dev","methods":{"_msgSender()":{"returns":{"sender":"The `msg.sender` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_msgValue()":{"returns":{"value":"The `msg.value` in the call to the World contract before the World routed the call to the WorldContextConsumer contract."}},"_world()":{"returns":{"_0":"The address of the World contract that routed the call to this WorldContextConsumer."}},"getName()":{"details":"Provides a way to identify the module by a unique name.","returns":{"_0":"The name of the module as a bytes16."}},"install(bytes)":{"details":"This function is invoked by the World contract during `installModule` process. The module expects to be called via the World contract and thus installs itself on the `msg.sender`. Logic might differ from `installRoot`, for example, this might accept namespace parameters.","params":{"args":"Arguments that may be needed during the installation process."}},"supportsInterface(bytes4)":{"details":"Overrides the functionality from IERC165 and WorldContextConsumer to check for supported interfaces.","params":{"interfaceId":"The bytes4 identifier for the interface."},"returns":{"_0":"true if the interface is supported, false otherwise."}}},"version":1},"userdoc":{"kind":"user","methods":{"_msgSender()":{"notice":"Extract the `msg.sender` from the context appended to the calldata."},"_msgValue()":{"notice":"Extract the `msg.value` from the context appended to the calldata."},"_world()":{"notice":"Get the address of the World contract that routed the call to this WorldContextConsumer."},"getName()":{"notice":"Return the name of the module."},"install(bytes)":{"notice":"Installs the module."},"supportsInterface(bytes4)":{"notice":"Checks if the given interfaceId is supported by this contract."}},"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":"ERC721Module"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x770eff7a38b9b7b1613dc11ca09db4f28b42a117c9b39b2a06a650a58a250bdb","urls":["bzz-raw://39f544110658a53def52c2a4e33b8b158b95a4f14fccea58d5268b6e728d86d4","dweb:/ipfs/QmTesj6tjSFbfAiKUitXapdNYWPStS8bLkB3r22qfyHwUC"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xab31edce915377852bb5f29f7f2ccfc50cac087d64d2a8aae669715ad862d558","urls":["bzz-raw://3187e86e43be1fbdd59df45c695294f1114aa1ac48e6445c0cb26089434be5c4","dweb:/ipfs/Qmck7shMVrcKMVkgN2pC1byPY7hb3V9fTxnUcGgxAUeXYk"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0x2a0536cd6cecc479d0b81d5aad6380231f4d6873beadc54814d801c2036b02c0","urls":["bzz-raw://e07c041e19146a9ec258cc700a450b4d49440202895eb12f3bb17508427c23ba","dweb:/ipfs/QmXoqrCGDSkuFgNSMURRFdjokjREL78nLDzNaUi6rjefy9"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0x045024523eb55d08ad8d13eca6185bff2988865f4aa12e3f9372029c2ecb8ddd","urls":["bzz-raw://6621c53b49f8fe0557d1a1db47bfe1561801c09256948dd0652fb41541891a18","dweb:/ipfs/QmZgFVCUH1pKcc9MeFyzMe1VW87SLz6c9szGwrDRUp6BZe"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x2bbc3c43400c15a91a5cb35430a91309cb64a4d13a0a170eacec71dcf334feaf","urls":["bzz-raw://f44dfc9605067de539de07a76a34bf469faa9e6dad8c192abafc2e05860c7dd2","dweb:/ipfs/QmX8xgG6XWokM7YFwFZvmMhuh1uhkSjxCMD2oTHjUVdapb"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0x9092b65551d0f910e5645cebb5acadb387cdd192d75fa89cd6b293bd65b28827","urls":["bzz-raw://478825a6f7eff9ddab968e71e1d55ebee279d3b318f10976d9334384000059c0","dweb:/ipfs/Qme7NY976woRy3RQjE4tkkiwoXnoVtTmER3PbWCSbjZ2kb"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0xa8eade05c551aeef35c84727d7a44af239516deb2d8a0cfb7ebeb5d88c6995e5","urls":["bzz-raw://5335910bd8a204abb5f4396fb911a5ee5c221bd7fa63b1cc8ae5e737c6458c6a","dweb:/ipfs/QmckkCAfrNcWo3yDxoD1jCe1k4iDA2GzVDpFjJZs7W79vx"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0xb9070663ded3cad82285bb7610949e422f88abb48c2ddbd792af83d127d64212","urls":["bzz-raw://830490f1c888bec86df1e7ef43773d60ebdbdfdb2b91ab7fe074e2f38d7439dc","dweb:/ipfs/QmS26fpXdZuGgMmjcdQDf9k1Bedn2dhjk9byFZJoNkctPZ"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xdd3104680808f975462a85cbd4fa87783ba5395797419caeeca37e8f8627a16f","urls":["bzz-raw://943864b7eb16ad2047ade5a8598e85c8a4b46d1aed6aef02bfb7cee8de732b4d","dweb:/ipfs/QmTEij4caToSNk15PFpubXYDy9QhwmPyP9tMXjUse2cTdv"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0xa6777c7868333996ad9c61a94457dcac702d8d7445a104dfdc86543d25e7470e","urls":["bzz-raw://6268a16449d7529a94746d0103670dd0e38faf5117bf914fb01da9947ab44c2e","dweb:/ipfs/QmaSfbx1QRA3jw2K8bGkQTw4CTGPUzNqnCJW7LwaFUJCXy"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xd2180d53ecd31069b1166f170ecdcd85917ac50f45fc26fb39b49cee7ba00e37","urls":["bzz-raw://1494bb0a3228e2d194bddaed4761fd3ca865979f0e3f3a53acd271143a4aa0ac","dweb:/ipfs/Qmaddnzzmu99iP9dTWK9ZeByh5dZyjY9SpVnRdvyr2fBAo"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0xf448fbb2bc9c982721a43234463656da5a49cea08543e62148d54f11e1ac3e2f","urls":["bzz-raw://64b3579d9b9dcd73dca2beab3d4fcf60237420945ebbb2e9f4ffcc88f4110115","dweb:/ipfs/QmaW5nN3zGEriSYHncye6Nz2TkAw1oo1CyG2JuJTJrJoXg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x8b6c7af5ee330928aebb58c8872d3944304ee10ed11f8a325b6accc4ec5df81b","urls":["bzz-raw://b866d158701c7a40834bed735194b804ef219f2bbe574e2307785fff7bcf9da1","dweb:/ipfs/QmXzJfZkXVfyr2RFGwDuazeVnV3UWYmQxjKZ3KzFbbe75U"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0x69295976e61a1a108d1b4d6eb497b238730309f3047c4320d48e01a0ce8d4ec7","urls":["bzz-raw://559c451b21fb9dd4fec27b41bef42f4362f1e7ebb7992106d548b9d4f733b3e5","dweb:/ipfs/QmeSE7YTW5zUrfZYFVb2pFnDe3XxiT8XNecfwC3wfpxCRv"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x44ddfa9eb8a861462c550f0a9d66c40c68acdb347a61fa765949608407a2c7fb","urls":["bzz-raw://47ee957f4b19cab9e20bf5fc569c015eca13852fb3351f2a105a8be9c48204c0","dweb:/ipfs/QmNkyzDobVQLoq9BtQ8HtgsPLiqnmi97EZx1wsu6wp8nKH"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0x40983c580b8958e55db4520095934a535e98544ffe8228327e598973eb6647ed","urls":["bzz-raw://839d658fa2bb2b1f09a08149d2bf0c26a26c301ad2dda8154fc99458085a695d","dweb:/ipfs/Qmd5jHHYrgqraPqF8bjzT4xyjsoPk8K7pkxXLLfz6MRT6d"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x58aef318ba03f8ff8866ef70f8a30f549b150657ea699734aefe16c298956401","urls":["bzz-raw://7dc104690a7e2bcf5ce1afadcd58f8ef4d639b4b92b9ad9293656235d54395f3","dweb:/ipfs/QmYJJvEv5KBJ3kzf9AkgRn7Uu5dp4exGTRddf4cae1btgE"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0xfaf54b1f5acccd4c6ce3f8377050ee84efbb423cb604b4651e8b9ea3b467bf32","urls":["bzz-raw://acf2ce7ffec21f28ad1dc6da06c342f1212a03a3d16a0be7ee85715a5940718c","dweb:/ipfs/QmTCN3NSdFg87hi7KS2Xtq7PsmRUMG64SxC8PtP3p2GzuT"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x130f0925a5bf4f732ef9758b47eca18c77d1bb34546ea9463321e9df766435a1","urls":["bzz-raw://68767e3db6fd6538a4577a1c30fe03e05bf9d316cdd43a66657e93c008b76f45","dweb:/ipfs/QmSZmUBSfhk3v5gNu5GgwcYuWbb1FFDKYpDKvpXVahfyTw"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x95b7d62d84b43777c54dd1c7d941dbb5ba0afc02c444c30cfdb1de671bbbf180","urls":["bzz-raw://fe62a2fdb2a73610c3072f31b7f88ed3f9d03c1009fe0f0ef37a7eb814b23534","dweb:/ipfs/QmV85zaV5HAD6eGc5N4RmdtmpR6EwkswVLQTaR2aJqsXrj"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0xf132af10f960a498f49c0534027056e715f4bdcb8fbdb53ac6879c92309ab416","urls":["bzz-raw://e85a09aeb7543bcd9d74b7ad319ae61e1f7f15a6a0ad9e79aff750fbd18111c7","dweb:/ipfs/QmY6xgqeeaR1FsCPLmFbVgjm1D2UyrXNABKXWLfFaSmBhR"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0xf337a5abb2d43ef00c1c200e7fbec30fc89c7c701e457ab4277194b700d2aea3","urls":["bzz-raw://eccdf6158076b4e8f1b587a0310228f53323705e054a44eaa7733f38805c3ee6","dweb:/ipfs/QmbXEVNTctg54dK9awdCVyAjeuUjR6ckfmmXBP8DrFmjyq"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0xc5c6f807cff6b4dc486525c559ba3f7cbb034ac5895636ee64c9d01defa6a38e","urls":["bzz-raw://84d3a3b3fd3afa2ab3231fd7fe981889dfb0600deec34c5d4e9c07d3187af8a5","dweb:/ipfs/Qmanj7WjETqBYQXkxKLjqWs4vMp3en3N69B5MacKme5fpD"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0xf7a9bf3e37b486377005c556cdf5b813ea1a41278b3a0349f81e3c82a2f1c789","urls":["bzz-raw://92cc87add89abcb126bf3cd0b284f25065c2b9c90a49f8dba4629b28a5b87751","dweb:/ipfs/QmNNBDSK5GNujERGiSUhorbmtpdD2UnGz7MqSSDasEGdub"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xa1186b8b6143b4a87cea1624785494398be1613cb7c6f9e57734e1cca1d5dd14","urls":["bzz-raw://488c158082622689d035d7964c6ca063295e53078291c340eb6a23db08e8ff95","dweb:/ipfs/QmWcjo3B5SH7jStXKAuf7qvF2ouz6syw9c7aT86PnTgRqW"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xd47e1921c07fc8608157b5dc343fcef7235e891ea6a21dec1fb118a0bd797fcb","urls":["bzz-raw://01a6ad068e6991994a0939f22a55245e0c7c82fc5e274da0af616286a8acfc7a","dweb:/ipfs/QmPokA3pSexzZY33MMV6BGx48ZwQegdUN5AijiAfycSDxy"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x9e37c64c119ef07ad914bc589ee3f6d67946ab95877978c1ee3e2c1ffae07076","urls":["bzz-raw://3fad47e542025382aa28e8171253e34f93b2f149434b67a26989542d70218793","dweb:/ipfs/QmW6JsKNwPc6oAMrgcikgR2EPwMUtQANiuZSQSGCd29HHC"],"license":"MIT"},"node_modules/@latticexyz/store/src/leftMask.sol":{"keccak256":"0xd0360567e4d77c6a8e3d8a5f4bf3653ccde4d268674c50988d55695dc6193f6f","urls":["bzz-raw://53e6bcb53fcb08ee9426225fdab7c41df91e12cb4f80d92895a6117338627401","dweb:/ipfs/QmeLcaPGeMBpNSTSsPYK3PHpzKuGMjuitCweAWcoXK2mXr"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0x60880298016fa117ed9a43ddfd020f11d98a2d345bdcb08e5884e40df98eddd5","urls":["bzz-raw://3619dfda1fd514c0fc5fb34c14d5b5aa41dd6ba6045d37d5f4c8199f3a826f81","dweb:/ipfs/QmbzRBYfVa423gNzCitpGN3i2N9oeGYfinVE1jgtqxnNZX"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0xada1867ba72930fc5cf5562dd4e36de849dbac9c833b7969cb1b046a808fabf2","urls":["bzz-raw://6e4b5fdcaa54f567a3f8561c2c3fbc0d68c8dad892a4a8e5418bbce8efc53d84","dweb:/ipfs/QmTWbYJX1yrCqrEwUKB9rGpHdRvLNU8GCkBbxnLjGD4d2t"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0x1af0fd984640123391ec2df855d00298504b7ce186a56c2caca769cfd9e08e04","urls":["bzz-raw://7305a62318890d2cc6420ba7dec13d9f2c1cb67ac689015fc83b9cbccd0696f1","dweb:/ipfs/QmR8jGNLbt64Tv1YZKRVBCVsd71oeUQFzGHHtpsrs4PuRq"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x1c280d24360282e196d9c4833c58c2437108cea2af0ac7596f95be81389e306d","urls":["bzz-raw://6b4556b6eeae9328fbd9adcce346547e823c397503276a4d63effb67e00b5b49","dweb:/ipfs/QmUsynVsMYzjh8oJR8YB7SRrwFMdXcsQsHBrXxLEEFxsiB"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x5cacd4cb371e0a79bc8d64f62349d568fd8b08093c11ae0c3db4f16480d8808b","urls":["bzz-raw://12b64ddf2b5c19cf68ba93a8153ed79cbafe7a91e015d4b2f25eb1d42ab06256","dweb:/ipfs/QmQz5WwztcuTbSGFv2pkhU3w5scUj1gmavoyUpduxk2v3A"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x01029999a48b7c1d85de84cae465dd24ec126c95b8a865cd20c7ed5dfcc0f02c","urls":["bzz-raw://9750164ce996badb0fd7df2f526780b9cb9558912405fe46f31064bd7c522491","dweb:/ipfs/QmYf8m2ZXFANRc9ysHgNkNtSF327ccxKYjCUJ49UXBKADk"],"license":"MIT"},"node_modules/@latticexyz/world/src/DelegationControl.sol":{"keccak256":"0xebe8f1d4a86bcd052afe19773cc5b48da49a7742033c2cc6f06c17a20be907b9","urls":["bzz-raw://20dd17dc78d0aff086ae0b80823cdc8544cdef4b545ec58303a1a8ef19c5372c","dweb:/ipfs/QmdTBo4xSMEQAQoae5o2L2DB7yGBv9TmzZwR3LmUjynEY9"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0xbf3da1c6ab38b3db62a4f4dd0235280d1fb07d8d465a145d6fd9eaf4bb4c3553","urls":["bzz-raw://30205a69d660ed8de5bf34ee73ec9033737d544bc7572130c439b2467606469d","dweb:/ipfs/QmUWTNdSW1bxXjaQzMUCLqBBoLYYre7CgDko4Qy12DaRNS"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0x7997ebbdee6a2493f28e7032c7a8b906ade40f807d95734e2653c8f1b023ff47","urls":["bzz-raw://c8ca41bb2619bf27e5bf886d1322f0e2dffd096c49f7ae6e716541dd1e1ddce5","dweb:/ipfs/Qmb8zATUWWTtiWaSLjbAe6PGnJPes9ANvEyk7pYoWR3P3Y"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0x4535542ceb57e77096f24b943285bc158c48ef5291999f9c1e27f5682f8a9581","urls":["bzz-raw://ec670524d19c50c659e385bc4dcb4757b065e1b5fe14160244537a7cd7a4b883","dweb:/ipfs/QmT7NSWFSQ6MxYefe665srKMT2GTWomrPRZAHLjrFhQzV6"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xb2114b6b66c0e7d8304d9e1d06aa1d0731f089daa6a0584e6cf744d9c48cf4db","urls":["bzz-raw://ebbb172970b106dd4ae5a6d5e417ac75cad7529d2b94c1601e10b886d0edf510","dweb:/ipfs/QmPGn4F92hjkFch6Jh2NB37EYLLfstw6JxJKUZjXBFqGCw"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0x22b8cb3ffcc21cb1657d57fc8ac929d2d6fdd199328e6f43ad2cb54f53dcd500","urls":["bzz-raw://47c001f6b7c6d6e453c340618d23b1532078abb7d0fd7283405071e4e8ff8d2d","dweb:/ipfs/QmRW3femBhqQCPwDEj4Jop2Dnd3EU21ufg7GDVwN4joCQu"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0xc3e7975e5785574543229eac51e3441f4185863d7f5346c0ae08a27b4541f8a7","urls":["bzz-raw://62cc0dc109e6e5475bb07fb95643a31c74337c23521db0557a36dad6117a1e83","dweb:/ipfs/Qmb8jbE1XQTUdreKFr4Jw3xmjctaLuReRZjPxZKQ2uW9p4"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0x9dc133cb55dc23fd6fcbbef8078bb4ea9bf67d698400cf89fc62b905b60cf5eb","urls":["bzz-raw://7c1a57df7052218483eafe72d873660f39a73e2e06c1b14ad8a579d85b94bc6c","dweb:/ipfs/Qme7dnjvADGZyM2L7nZ51nSjsjXXF9isTVCpWaUCd1cEGs"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0x652a3d6a3721a1c3f36abd7a398b16ae7d9e30ddbf54d8dc4494343dadb9f719","urls":["bzz-raw://c33d2bb71a7ae8823233fa399f778fe86e9bb078889a092fcd1ed9e7838873e5","dweb:/ipfs/QmYM6JQ4syoxQLCXC4evHVEwbsTuXgS42HZZ9Fho7J9EXr"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0x7bece0ec86fdc458054e6db0ac4316fc98882fa3ba76b2fa107d3de5382053cd","urls":["bzz-raw://d154183426723bbf133d4dc5f8d051e9521f7b7cabe63925731fa4af99379cdd","dweb:/ipfs/QmZXxPGcqknGLCwTByaZFKhqvKbrfiZkywmnh8buGTC2Mc"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0xa11d93077d94f18683f1098b69c4713a48001ae15054476135ec9569041abb9a","urls":["bzz-raw://9b1d3384def68b4061c445b55602dd9cbcd4e8c58c13db5e945f284a05c1b518","dweb:/ipfs/Qma5DUZrSKZUxrxiGCpyRPWMJNdHU2wu6qDEsFWEJSnLfN"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xb7bfae2890004001221b3902d185c14cfea0e606d16914f6b7f81cf112aa9417","urls":["bzz-raw://acfd0d09166fc1bf16a8a5c80fbae1bd42426b2fcbab3c492bc836ea5c0375fb","dweb:/ipfs/QmTzZWHVBkx8hipFVpgEwAbZpr4c6hfr7yf7R71JojT3NK"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0xc912f14d0f2e2e9e728a9d18e250ebe3eb2f51d0b4d79993c9d997991bbd5593","urls":["bzz-raw://29621425847a1c11205307896b04e2a6c97934dd619f23ce6774ce52520f1255","dweb:/ipfs/QmeuTe3q8U11Dqkp5tahxVWnp9Cd5ezQmRZ5vhEHtv14Eu"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xf04594c29c5c5b3110453ac189a8008735753de864ab4a7dfa97ccd3ae5f4a55","urls":["bzz-raw://4a3061f72b969a294dc96c3b2e59277e762ce6571cedcc7e280412431453dde5","dweb:/ipfs/QmWB9aboakrCH9AmzGiZ1mCceh9atF4ks5ndEYFzUVbaHT"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0xf96aee478cc770cd9cd417b7939c38c9b9b075c91f3f47bdf8c6742f5591e9dc","urls":["bzz-raw://9c59c4c9a6ab3d64e2b0d7c9f3df2d330a36fc93ac2ab5e5f907fa881fbed1f8","dweb:/ipfs/QmTbd82cCtDwc8Ga1UsWAKXmFYrWU1zkbCCk1nMspqWdZu"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0xb4d323470e22b1d3f0168a44196eb09466f602b7564c75e5739c5f53a5036f97","urls":["bzz-raw://acad752208d00b731baaa1cfa192ff3981001fd030953bdc604e4f69ec2cd0b8","dweb:/ipfs/QmRFw3RgmX2CHqg7PqsP3rqVKxBVYNq5hHcFiyA2Y7iAaX"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/ICoreSystem.sol":{"keccak256":"0xf837b53eaa348da3b3650e0b7159de02d3f84897d96e487ece2f932c272dbe57","urls":["bzz-raw://fbdc52e9e519c8c6d4a00caf4de08688eb8eb34dbfc6236308f281d7cf05b51b","dweb:/ipfs/QmWnogXiA5KA6JGxCTJR5W1MNFowrH7baSAYhSXjV1xM47"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0x5be1d1ee90a7a03258e8c4fce7542453332c637a51b015e0cc29151ef2792263","urls":["bzz-raw://df6d97356b2ca9d97b7593f4c0772742529fea73f1665e55a879a368b399cae0","dweb:/ipfs/QmXCs5X4Z95isKRzjP4TQjQxwiB7773tHiJWLWkjLv3SLj"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0xd7e31957e7fcf056912fe16e10a0411bdb071c14c45853e7da264dfbfd6bcb62","urls":["bzz-raw://c4ce02327ac8971177685fc2655733ed3c07f5dfb72846680544a48953180aad","dweb:/ipfs/QmQMNtkeCXdZfyyvtY8vUrKh5RUbpM7HYMGrzbxZGzTEFh"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0xbe0b03a0379cf2dcbed5302acbcb116b263b68a1c1689b66b6df2c0414033f7c","urls":["bzz-raw://a7c3913cc938e7e0e3257194703a7cda9b8269b89ed2ccc5250d31eb07254198","dweb:/ipfs/QmctosJsQ6sVhFHG3bEAUdhEdcBVVUKtSjTG1taXome1ff"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0xb0b7c13673a1629118cb0c3c341380fa6d4795c9b7cf6a6c73443750f1a3b34d","urls":["bzz-raw://b3c8eb44785f61c0470273cac40a228ae458b74f48d2bff8faf8915861fc49ac","dweb:/ipfs/QmUF52hgGCL9TMyTQqrxGVharwfFgKNsCpD3VNqfbhid9X"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0xe2a4e6a75ffda6971c16e9218a0f076d5b89572d37780cd4c2375a2de683fd60","urls":["bzz-raw://f04dbdf5295c0ddbda4ba0eb5fdebd84dce2ff3fe86d34681f71522bcb0e6e93","dweb:/ipfs/QmUMkPg1vhSz2zVweN5bqtWbUCj3UQKZPgYfBkQ3QGS7gF"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x8318ead6bf21b8f1e9f231d73634034511d74c1a979246df9f9cda8f349b644d","urls":["bzz-raw://b705a942046bb24fdbf0a5f4b365e33ab724d26bc158e7458ef5f262f72b5bae","dweb:/ipfs/Qme63b3DKKizKumysUGVFH8Q9h6cHnHBFM2Kdsxh2p6SWN"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0x3bf40b7e71a1953f21b447975ec1a850994a250325fdb88489d24175cf8440d9","urls":["bzz-raw://7fc1d4ce3096dfbd5510d2558d6fcae01ede446032ae232bd3e8656071e21ef1","dweb:/ipfs/QmNSmK5Mt7tt5isSuo216vVnn6rHBprYjz9Sdodf8YRPAy"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0x07faffa7dc4a2adc4f9bfe93d5a59a7dd89241d360996537608e38f61c2d0588","urls":["bzz-raw://b96d4ce331b257a24de2f18503a11b986ed32d218810db9d5e3e7eddc17c2218","dweb:/ipfs/Qme7Cw4RN1eaFWt2j3hk6ZMB7GWUfMY5oyZKYfMvAVxdBc"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/core/types.sol":{"keccak256":"0x256b3269e1e7eb6c8b6e26432bbe6799b4d45a88ef1b0e795ea71e604cec3a8a","urls":["bzz-raw://99bf6320ce9671ed74e7352b4e6c462d741ca9a894c48b526e7d8513308fa6b3","dweb:/ipfs/QmRFJcWFMDRkg7soJ4r4MrqacKmj16vUEMFEGWJuvFi4vJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0x16795bdbfd7956d733df9ada1030ee7a1a714e3b9da5899149a7b07568c4af55","urls":["bzz-raw://7a71128b4989e78215d5fc57dae8c2f84c6b5e503c159178c0df6f642b8228df","dweb:/ipfs/QmNYTfBe62SdGESZ32fxME72CbAxEqk4j79jBT7655C4u7"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0xe31ee781596541f60ed71ef327c9d26ffc899e7fb3f4991c67406518bfc00746","urls":["bzz-raw://f7b864fea8c77833a322b16c4673f110d5065d0cafcedecd07895699cf4258c2","dweb:/ipfs/QmRkzXVjMLwQFWxjEjgfdXVPAp6SU4zfxPo4NJcmz8HwH9"],"license":"MIT"},"src/modules/erc721-puppet/ERC721Module.sol":{"keccak256":"0x0a60a350f120f2ee8387410ab890362e09de4dc629f04f542c0f029e93ebedcf","urls":["bzz-raw://c2f278946b0005962727cebc99f992ac0cba1ae52a47c9832178cb5d7a10211d","dweb:/ipfs/Qme3uYvHqGLdepDziSiaL4SCCWsEeZggV9d2qwHR3YuFDe"],"license":"MIT"},"src/modules/erc721-puppet/ERC721System.sol":{"keccak256":"0x39cd970252dc3c59df2290b22a8b9f7b335f51bb15f9e24d810bf5e634f50235","urls":["bzz-raw://4a357ea36bab59200ccb5dfc9f484e1794c213bede5c220c18250c34de1d4ecf","dweb:/ipfs/Qmf7SLaw7NEtNSAWRPhqTBxR1mKi7MhzxKTtGq73RPS4dh"],"license":"MIT"},"src/modules/erc721-puppet/IERC721.sol":{"keccak256":"0xece8034b2f4d2fea1adf2fc3bed59fb3db574250f0454f87706a2de3cdc297c5","urls":["bzz-raw://628276baff68bbcc9bc8ae577e10399401274e3ab12b8923f8f2aa96089a6250","dweb:/ipfs/QmVdujDhoWHFHYuxZ4btB6nzTBvakpKgkoadBJN3iBkyyJ"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Errors.sol":{"keccak256":"0x10aa9dfd2bb131b1a7a24eaff4fcac3676b06564b2002fd7fe02f70338d776b2","urls":["bzz-raw://726bff91b12f6bfc02a636feee5965ec04bb6eac838ec2d9287e8c2a6a6cd276","dweb:/ipfs/QmX3w6VmRhMRSUrYZCDAqmEkoC4WtNnCeshCBdV2A5jYx6"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Events.sol":{"keccak256":"0xa7d69b40c86ba641f56d01ed63a633363c74e90c1919781ad67afc93c5d3e8e7","urls":["bzz-raw://21e8bf89857c4fa44d4aafb491b5269f76043669b34e63cbb2fe103d3e5df5bb","dweb:/ipfs/QmT55QTWBwM3V7gF2zCx4HVdkY7Tbm9JvsMgP9Zny9Lra5"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Mintable.sol":{"keccak256":"0x8017469d5a084c996946085ec7d6cf2341be04bc97833df1fab0e6960b8f9d83","urls":["bzz-raw://485836c34d4e2d600709546f3c4542d04b5fed27d975834666e7434f954ab03c","dweb:/ipfs/QmPQ8Mydi7qZarueKkeQ8kt9bcCQcEPTgiRCGzkhwsQiru"],"license":"MIT"},"src/modules/erc721-puppet/IERC721Receiver.sol":{"keccak256":"0xd9278f007d3408f834303b317a5a54b01f6d5d4c70891953b94b012c2f9b2973","urls":["bzz-raw://acfcf8fedd56229600ce0b522734c41146c5f1e73e92069404d70b2929d8dc74","dweb:/ipfs/QmcutxkWBafrikCorV8avuWTJHFQPZ3N3j4ojN8aLZBCB1"],"license":"MIT"},"src/modules/erc721-puppet/constants.sol":{"keccak256":"0xd6a6ca3b2446fbcde45f5c3608067bfc4c663b0eb529d39eb8bc61c5087297fc","urls":["bzz-raw://68b98113bc18bfce66df4f7c26576dadd950f2c76b1c91de169909d502a0275b","dweb:/ipfs/QmWaxgDwJTSaVjYMSDhLvX2boHg6T3XxiysvoRZwxVhqbg"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Metadata.sol":{"keccak256":"0xec2e7a95c1f4f0da01dc8b5d48e68a8af19709f5d11b647b6ddcf86ccd9d2bdb","urls":["bzz-raw://a09475a7bd0948a7425bd0d58196a6a5e348c7400f05faa77ddef68d9965508c","dweb:/ipfs/QmeRzT8ZR2wvvHDFup4a8ikgR6roWWfEsk4zqiPxATLMCE"],"license":"MIT"},"src/modules/erc721-puppet/tables/ERC721Registry.sol":{"keccak256":"0xe543ec4c2f1ff854a40f9e45ec129ff761cdaeaf75673ec0fd01478768a9a392","urls":["bzz-raw://bceeb230ebc5370c2500462832de2577bbd27a5f56e6870b7688738bd21df2fe","dweb:/ipfs/QmVfvxRqt7riykzbUcz7S5rLQYGZyZ5G1bCrqmmbR7Tnbh"],"license":"MIT"},"src/modules/erc721-puppet/tables/OperatorApproval.sol":{"keccak256":"0xc319e035373d2d0cc0abb10a4afc81f079904fb95bafac106c902b5f872b2b7d","urls":["bzz-raw://7e3c13884520ac0a06fd0e9b6f50dc270f1e5f533d27c96dc80654349fce5be9","dweb:/ipfs/QmV8H5VESLcAhqz8kD4sUJPt8aoe8hn2HSostQaKX9S3hi"],"license":"MIT"},"src/modules/erc721-puppet/tables/Owners.sol":{"keccak256":"0x19e5ff2c5dd25fccc4cb99428f8e72841b4356ea1714689ad70ba0a0a6fe91ca","urls":["bzz-raw://757970e385af7799bcbf522ad687212061b9294074dc0d7c46cf155195cf8695","dweb:/ipfs/QmPjTdozvgRQuH7kLWPMnhCP6HVy27BbuDwDoYa6mDEjqV"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenApproval.sol":{"keccak256":"0x3bdfa8047556e6acf57cb6b5498698734d48f698166d97de55914cfd46a7addd","urls":["bzz-raw://7b28f1ada7a1aae3445cf3cede5bbc4849e66042f6fedff1579c713e3c7ea15b","dweb:/ipfs/QmXBaBfQ82gsD3sRtwQEY6oXxznLGH7tfgf2ukjKjbs4qf"],"license":"MIT"},"src/modules/erc721-puppet/tables/TokenURI.sol":{"keccak256":"0x6749197d53e7c8e24287e3986feb29edf258d0c94303f6c48a5fe34f0ad3393c","urls":["bzz-raw://f9cf7dce9cac2b303f086efd42f564e53c38174f85cb691699ec38b3bd45be17","dweb:/ipfs/QmWJYzEMvXyi6fP6CUW24zErobXAwqhtaXhTg4JMR6maAe"],"license":"MIT"},"src/modules/erc721-puppet/utils.sol":{"keccak256":"0x98362b9233e8199e9b7219a63076cb515ee361a65950c2aad9967e6ae0eb9b63","urls":["bzz-raw://fb4bd453dc5f5ccd41cfb4f3950c0693d1c5092c2881f7f6dae3df57cb77e696","dweb:/ipfs/QmNU7GRhvYeibv7UbMMJ9tUKbFwR8H98jKYuKVX8SiXQDm"],"license":"MIT"},"src/modules/puppet/Puppet.sol":{"keccak256":"0x8933512836ec527a90f1fd44cf01870b302cd5f080d1dc9f64ea11c41e46d2ab","urls":["bzz-raw://854b7887821c26da985de13e8fb476bd8bd52c411284793789d19d34d9112f3b","dweb:/ipfs/QmcHweSL5z6Mwro4dm4sLnzy7WmzdZud5yW7KQ36mnZTYD"],"license":"MIT"},"src/modules/puppet/PuppetDelegationControl.sol":{"keccak256":"0x8ba3488fee9e5503fa77b39609cfa2eed78be87636ada50e99094b0edc5a79e0","urls":["bzz-raw://08214be4e0315011bb8c675c955f560865687d9129be342ab420bbb5d123f37b","dweb:/ipfs/QmXFbsptKuD6fxKhhb7FatDBRE4seDnmefNB2WG6MEHHmW"],"license":"MIT"},"src/modules/puppet/PuppetFactorySystem.sol":{"keccak256":"0x47fc8ab186eba9b965c8cde4ff814eb9973302cbe1de6ee96f4539b62278fd85","urls":["bzz-raw://04eb1f7b3d964cefef88285546dbcbdc4f1c4e03d2364d37cdda5c79f9d9bb5a","dweb:/ipfs/QmddEmBYqWtnd63FCZgnHz2ukk1ZFTwLv2bMkVYwsXTG5t"],"license":"MIT"},"src/modules/puppet/PuppetMaster.sol":{"keccak256":"0x7f94270573d344a1aea188e3920acab0f6c3befe9e7f27a1759df091f73db9e5","urls":["bzz-raw://fc35076fb222a6e77a6968ef62856db69c4bb757f83f9849fe6abd8bb983002f","dweb:/ipfs/QmVKRXYS1Xj1ckMZg6i9XPp8LbE4BXR8GL2XBfiFvnPnk9"],"license":"MIT"},"src/modules/puppet/constants.sol":{"keccak256":"0xb5379ef41cc6ab6a27bc8bee21f73094ecccd7af0b54e61bf7180b04dd828207","urls":["bzz-raw://7edb00d3c48110499790cc93573b3d4e7626a7d56c7243a57d0cbe2b1b86d449","dweb:/ipfs/QmU9c1n3vftuRM4WjSmBhodZvSKwfovvzakdre2AYQTrur"],"license":"MIT"},"src/modules/puppet/createPuppet.sol":{"keccak256":"0x3ec80fa8b953772490089a2ec073109f4e06bdcb12ddc4f6501384340f64232e","urls":["bzz-raw://93ecfe683e78efc41c21ed5be647cb4654ccdbf38f8ef4358067f87b39dc997c","dweb:/ipfs/QmTrt6U6BnykBBJqVmHQkgAxEcqZ6X5LHDQZgWVGVPR1X3"],"license":"MIT"},"src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0xe746e9170bee8f229554971e2ebdeda0ac4b4d342f92c711a9c22882c0ebe4f4","urls":["bzz-raw://8e8ba2b16545929f480da8b5d6980fe5f92bb87b7b09178b5236aeede72a7436","dweb:/ipfs/QmUT9HGrXJB1jiyFW14kqGGGb8v86w2UscWuzWWfcmPTuE"],"license":"MIT"},"src/modules/puppet/utils.sol":{"keccak256":"0x725bf79655d814b0b04e2f64a8eb3a01dbd87cebf6c9674fb656363cc72c6e66","urls":["bzz-raw://6efcc323f7cdf8e0d284dafe714f9dd922d63c747e9a34d6e71473943b50805c","dweb:/ipfs/QmcxA7uqyhAV7m3svQstVhsjvLYbcgUq1nQCk7vqACAsQf"],"license":"MIT"},"src/modules/tokens/tables/Balances.sol":{"keccak256":"0x1a5efec938f8f444e25499f55c11782e2f8425ecb4bb7642b3e4d89ef5c94283","urls":["bzz-raw://b8cc1696ae88061b5b469111ee6bd4c25919756d3c85e2830a92dd7a344bda8d","dweb:/ipfs/QmNZKrU7NkRHmvvm98kaLYFusEmH3e7sJdCwciuUWzCCxe"],"license":"MIT"},"src/utils/AccessControlLib.sol":{"keccak256":"0xb31878bda3f249c941719f6aa743bc739701418ed3effd2b5e6b4f28219e3f88","urls":["bzz-raw://a56bea3221f0663c35375beea4803b0d4ebc7e004828b89ef72c0cfec8e009e0","dweb:/ipfs/QmPNZig8c2ou4uZFMjotG1CGT3ZcTU2aCt3C2RTSLkx3w8"],"license":"MIT"}},"version":1},"id":135}