@latticexyz/world-modules 2.0.0-transaction-context-324984c5 → 2.0.0-transaction-context-98ef570f

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 (283) 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 -13
  4. package/out/AccessManagementSystem.sol/AccessManagementSystem.abi.json.d.ts +0 -13
  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 -13
  10. package/out/BalanceTransferSystem.sol/BalanceTransferSystem.abi.json.d.ts +0 -13
  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 -13
  17. package/out/BatchCallSystem.sol/BatchCallSystem.abi.json.d.ts +0 -13
  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.abi.json +0 -13
  22. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.abi.json.d.ts +0 -13
  23. package/out/CallboundDelegationControl.sol/CallboundDelegationControl.json +1 -1
  24. package/out/CallboundDelegations.sol/CallboundDelegations.json +1 -1
  25. package/out/DecodeSlice.sol/DecodeSlice.json +1 -1
  26. package/out/Delegation.sol/Delegation.json +1 -1
  27. package/out/DelegationControl.sol/DelegationControl.abi.json +0 -13
  28. package/out/DelegationControl.sol/DelegationControl.abi.json.d.ts +0 -13
  29. package/out/DelegationControl.sol/DelegationControl.json +1 -1
  30. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json +0 -13
  31. package/out/DelegationControlMock.sol/DelegationControlMock.abi.json.d.ts +0 -13
  32. package/out/DelegationControlMock.sol/DelegationControlMock.json +1 -1
  33. package/out/ERC165Checker.sol/ERC165Checker.json +1 -1
  34. package/out/ERC20.t.sol/ERC20Test.json +1 -1
  35. package/out/ERC20Metadata.sol/ERC20Metadata.json +1 -1
  36. package/out/ERC20Module.sol/ERC20Module.abi.json +0 -13
  37. package/out/ERC20Module.sol/ERC20Module.abi.json.d.ts +0 -13
  38. package/out/ERC20Module.sol/ERC20Module.json +1 -1
  39. package/out/ERC20Module.sol/ERC20ModuleRegistrationLibrary.json +1 -1
  40. package/out/ERC20Registry.sol/ERC20Registry.json +1 -1
  41. package/out/ERC20System.sol/ERC20System.abi.json +0 -13
  42. package/out/ERC20System.sol/ERC20System.abi.json.d.ts +0 -13
  43. package/out/ERC20System.sol/ERC20System.json +1 -1
  44. package/out/ERC721.t.sol/ERC721Recipient.json +1 -1
  45. package/out/ERC721.t.sol/ERC721Test.json +1 -1
  46. package/out/ERC721.t.sol/ERC721TokenReceiver.json +1 -1
  47. package/out/ERC721.t.sol/NonERC721Recipient.json +1 -1
  48. package/out/ERC721.t.sol/RevertingERC721Recipient.json +1 -1
  49. package/out/ERC721.t.sol/WrongReturnDataERC721Recipient.json +1 -1
  50. package/out/ERC721Metadata.sol/ERC721Metadata.json +1 -1
  51. package/out/ERC721Module.sol/ERC721Module.abi.json +0 -13
  52. package/out/ERC721Module.sol/ERC721Module.abi.json.d.ts +0 -13
  53. package/out/ERC721Module.sol/ERC721Module.json +1 -1
  54. package/out/ERC721Module.sol/ERC721ModuleRegistrationLibrary.json +1 -1
  55. package/out/ERC721Registry.sol/ERC721Registry.json +1 -1
  56. package/out/ERC721System.sol/ERC721System.abi.json +0 -13
  57. package/out/ERC721System.sol/ERC721System.abi.json.d.ts +0 -13
  58. package/out/ERC721System.sol/ERC721System.json +1 -1
  59. package/out/EchoSubscriber.sol/EchoSubscriber.json +1 -1
  60. package/out/EncodeArray.sol/EncodeArray.json +1 -1
  61. package/out/FieldLayout.sol/FieldLayoutInstance.json +1 -1
  62. package/out/FieldLayout.sol/FieldLayoutLib.json +1 -1
  63. package/out/FieldLayoutEncodeHelper.sol/FieldLayoutEncodeHelper.json +1 -1
  64. package/out/FunctionSelectors.sol/FunctionSelectors.json +1 -1
  65. package/out/FunctionSignatures.sol/FunctionSignatures.json +1 -1
  66. package/out/GasReporter.sol/GasReporter.json +1 -1
  67. package/out/Hook.sol/HookInstance.json +1 -1
  68. package/out/Hook.sol/HookLib.json +1 -1
  69. package/out/Hooks.sol/Hooks.json +1 -1
  70. package/out/IAccessManagementSystem.sol/IAccessManagementSystem.json +1 -1
  71. package/out/IBalanceTransferSystem.sol/IBalanceTransferSystem.json +1 -1
  72. package/out/IBaseWorld.sol/IBaseWorld.abi.json +13 -0
  73. package/out/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +13 -0
  74. package/out/IBaseWorld.sol/IBaseWorld.json +1 -1
  75. package/out/IBatchCallSystem.sol/IBatchCallSystem.json +1 -1
  76. package/out/IDelegationControl.sol/IDelegationControl.abi.json +0 -13
  77. package/out/IDelegationControl.sol/IDelegationControl.abi.json.d.ts +0 -13
  78. package/out/IDelegationControl.sol/IDelegationControl.json +1 -1
  79. package/out/IERC20.sol/IERC20.json +1 -1
  80. package/out/IERC20Errors.sol/IERC20Errors.json +1 -1
  81. package/out/IERC20Events.sol/IERC20Events.json +1 -1
  82. package/out/IERC20Mintable.sol/IERC20Mintable.json +1 -1
  83. package/out/IERC20System.sol/IERC20System.json +1 -1
  84. package/out/IERC721.sol/IERC721.json +1 -1
  85. package/out/IERC721Errors.sol/IERC721Errors.json +1 -1
  86. package/out/IERC721Events.sol/IERC721Events.json +1 -1
  87. package/out/IERC721Metadata.sol/IERC721Metadata.json +1 -1
  88. package/out/IERC721Mintable.sol/IERC721Mintable.json +1 -1
  89. package/out/IERC721Receiver.sol/IERC721Receiver.json +1 -1
  90. package/out/IModule.sol/IModule.json +1 -1
  91. package/out/IModuleInstallationSystem.sol/IModuleInstallationSystem.json +1 -1
  92. package/out/IMulticall3.sol/IMulticall3.json +1 -1
  93. package/out/IPuppetFactorySystem.sol/IPuppetFactorySystem.json +1 -1
  94. package/out/IRegistrationSystem.sol/IRegistrationSystem.json +1 -1
  95. package/out/IStore.sol/IStore.json +1 -1
  96. package/out/IStoreData.sol/IStoreData.json +1 -1
  97. package/out/IStoreErrors.sol/IStoreErrors.json +1 -1
  98. package/out/IStoreEvents.sol/IStoreEvents.json +1 -1
  99. package/out/IStoreHook.sol/IStoreHook.json +1 -1
  100. package/out/IStoreRead.sol/IStoreRead.json +1 -1
  101. package/out/IStoreRegistration.sol/IStoreRegistration.json +1 -1
  102. package/out/IStoreWrite.sol/IStoreWrite.json +1 -1
  103. package/out/ISystemHook.sol/ISystemHook.json +1 -1
  104. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json +0 -13
  105. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.abi.json.d.ts +0 -13
  106. package/out/IWorldContextConsumer.sol/IWorldContextConsumer.json +1 -1
  107. package/out/IWorldErrors.sol/IWorldErrors.json +1 -1
  108. package/out/IWorldKernel.sol/IWorldCall.json +1 -1
  109. package/out/IWorldKernel.sol/IWorldKernel.abi.json +13 -0
  110. package/out/IWorldKernel.sol/IWorldKernel.abi.json.d.ts +13 -0
  111. package/out/IWorldKernel.sol/IWorldKernel.json +1 -1
  112. package/out/IWorldKernel.sol/IWorldModuleInstallation.json +1 -1
  113. package/out/IWorldRegistrationSystem.sol/IWorldRegistrationSystem.json +1 -1
  114. package/out/InitModule.sol/InitModule.abi.json +0 -13
  115. package/out/InitModule.sol/InitModule.abi.json.d.ts +0 -13
  116. package/out/InitModule.sol/InitModule.json +1 -1
  117. package/out/InitModuleAddress.sol/InitModuleAddress.json +1 -1
  118. package/out/InstalledModules.sol/InstalledModules.json +1 -1
  119. package/out/KeysInTable.sol/KeysInTable.json +1 -1
  120. package/out/KeysInTableHook.sol/KeysInTableHook.json +1 -1
  121. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json +0 -13
  122. package/out/KeysInTableModule.sol/KeysInTableModule.abi.json.d.ts +0 -13
  123. package/out/KeysInTableModule.sol/KeysInTableModule.json +1 -1
  124. package/out/KeysInTableModule.t.sol/KeysInTableModuleTest.json +1 -1
  125. package/out/KeysWithValue.sol/KeysWithValue.json +1 -1
  126. package/out/KeysWithValueHook.sol/KeysWithValueHook.json +1 -1
  127. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json +0 -13
  128. package/out/KeysWithValueModule.sol/KeysWithValueModule.abi.json.d.ts +0 -13
  129. package/out/KeysWithValueModule.sol/KeysWithValueModule.json +1 -1
  130. package/out/KeysWithValueModule.t.sol/KeysWithValueModuleTest.json +1 -1
  131. package/out/LimitedCallContext.sol/LimitedCallContext.json +1 -1
  132. package/out/Memory.sol/Memory.json +1 -1
  133. package/out/Module.sol/Module.abi.json +0 -13
  134. package/out/Module.sol/Module.abi.json.d.ts +0 -13
  135. package/out/Module.sol/Module.json +1 -1
  136. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json +0 -13
  137. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.abi.json.d.ts +0 -13
  138. package/out/ModuleInstallationSystem.sol/ModuleInstallationSystem.json +1 -1
  139. package/out/NamespaceDelegationControl.sol/NamespaceDelegationControl.json +1 -1
  140. package/out/NamespaceOwner.sol/NamespaceOwner.json +1 -1
  141. package/out/OperatorApproval.sol/OperatorApproval.json +1 -1
  142. package/out/Owners.sol/Owners.json +1 -1
  143. package/out/PackedCounter.sol/PackedCounterInstance.json +1 -1
  144. package/out/PackedCounter.sol/PackedCounterLib.json +1 -1
  145. package/out/Puppet.sol/Puppet.json +1 -1
  146. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.abi.json +0 -13
  147. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.abi.json.d.ts +0 -13
  148. package/out/PuppetDelegationControl.sol/PuppetDelegationControl.json +1 -1
  149. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.abi.json +0 -13
  150. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.abi.json.d.ts +0 -13
  151. package/out/PuppetFactorySystem.sol/PuppetFactorySystem.json +1 -1
  152. package/out/PuppetMaster.sol/PuppetMaster.json +1 -1
  153. package/out/PuppetModule.sol/PuppetModule.abi.json +0 -13
  154. package/out/PuppetModule.sol/PuppetModule.abi.json.d.ts +0 -13
  155. package/out/PuppetModule.sol/PuppetModule.json +1 -1
  156. package/out/PuppetModule.t.sol/PuppetModuleTest.json +1 -1
  157. package/out/PuppetModule.t.sol/PuppetTestSystem.abi.json +0 -13
  158. package/out/PuppetModule.t.sol/PuppetTestSystem.abi.json.d.ts +0 -13
  159. package/out/PuppetModule.t.sol/PuppetTestSystem.json +1 -1
  160. package/out/PuppetRegistry.sol/PuppetRegistry.json +1 -1
  161. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json +0 -13
  162. package/out/RegistrationSystem.sol/RegistrationSystem.abi.json.d.ts +0 -13
  163. package/out/RegistrationSystem.sol/RegistrationSystem.json +1 -1
  164. package/out/ResourceAccess.sol/ResourceAccess.json +1 -1
  165. package/out/ResourceId.sol/ResourceIdInstance.json +1 -1
  166. package/out/ResourceId.sol/ResourceIdLib.json +1 -1
  167. package/out/ResourceIds.sol/ResourceIds.json +1 -1
  168. package/out/RevertSubscriber.sol/RevertSubscriber.json +1 -1
  169. package/out/Schema.sol/SchemaInstance.json +1 -1
  170. package/out/Schema.sol/SchemaLib.json +1 -1
  171. package/out/SchemaEncodeHelper.sol/SchemaEncodeHelper.json +1 -1
  172. package/out/Slice.sol/SliceInstance.json +1 -1
  173. package/out/Slice.sol/SliceLib.json +1 -1
  174. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json +0 -13
  175. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.abi.json.d.ts +0 -13
  176. package/out/StandardDelegationsModule.sol/StandardDelegationsModule.json +1 -1
  177. package/out/StandardDelegationsModule.t.sol/StandardDelegationsModuleTest.json +1 -1
  178. package/out/StdAssertions.sol/StdAssertions.json +1 -1
  179. package/out/StdChains.sol/StdChains.json +1 -1
  180. package/out/StdCheats.sol/StdCheats.json +1 -1
  181. package/out/StdCheats.sol/StdCheatsSafe.json +1 -1
  182. package/out/StdError.sol/stdError.json +1 -1
  183. package/out/StdInvariant.sol/StdInvariant.json +1 -1
  184. package/out/StdJson.sol/stdJson.json +1 -1
  185. package/out/StdMath.sol/stdMath.json +1 -1
  186. package/out/StdStorage.sol/stdStorage.json +1 -1
  187. package/out/StdStorage.sol/stdStorageSafe.json +1 -1
  188. package/out/StdStyle.sol/StdStyle.json +1 -1
  189. package/out/StdUtils.sol/StdUtils.json +1 -1
  190. package/out/Storage.sol/Storage.json +1 -1
  191. package/out/StoreCore.sol/StoreCore.json +1 -1
  192. package/out/StoreCore.sol/StoreCoreInternal.json +1 -1
  193. package/out/StoreData.sol/StoreData.json +1 -1
  194. package/out/StoreHook.sol/StoreHook.json +1 -1
  195. package/out/StoreHooks.sol/StoreHooks.json +1 -1
  196. package/out/StoreRead.sol/StoreRead.json +1 -1
  197. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json +0 -13
  198. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.abi.json.d.ts +0 -13
  199. package/out/StoreRegistrationSystem.sol/StoreRegistrationSystem.json +1 -1
  200. package/out/StoreSwitch.sol/StoreSwitch.json +1 -1
  201. package/out/System.sol/System.abi.json +0 -13
  202. package/out/System.sol/System.abi.json.d.ts +0 -13
  203. package/out/System.sol/System.json +1 -1
  204. package/out/SystemCall.sol/SystemCall.json +1 -1
  205. package/out/SystemHook.sol/SystemHook.json +1 -1
  206. package/out/SystemHooks.sol/SystemHooks.json +1 -1
  207. package/out/SystemRegistry.sol/SystemRegistry.json +1 -1
  208. package/out/SystemSwitch.sol/SystemSwitch.json +1 -1
  209. package/out/SystemSwitch.t.sol/EchoSystem.abi.json +0 -13
  210. package/out/SystemSwitch.t.sol/EchoSystem.abi.json.d.ts +0 -13
  211. package/out/SystemSwitch.t.sol/EchoSystem.json +1 -1
  212. package/out/SystemSwitch.t.sol/SystemSwitchTest.json +1 -1
  213. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.abi.json +0 -13
  214. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.abi.json.d.ts +0 -13
  215. package/out/SystemboundDelegationControl.sol/SystemboundDelegationControl.json +1 -1
  216. package/out/SystemboundDelegations.sol/SystemboundDelegations.json +1 -1
  217. package/out/Systems.sol/Systems.json +1 -1
  218. package/out/Tables.sol/Tables.json +1 -1
  219. package/out/Test.sol/Test.json +1 -1
  220. package/out/TightCoder.sol/TightCoder.json +1 -1
  221. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.abi.json +0 -13
  222. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.abi.json.d.ts +0 -13
  223. package/out/TimeboundDelegationControl.sol/TimeboundDelegationControl.json +1 -1
  224. package/out/TimeboundDelegations.sol/TimeboundDelegations.json +1 -1
  225. package/out/TokenApproval.sol/TokenApproval.json +1 -1
  226. package/out/TokenURI.sol/TokenURI.json +1 -1
  227. package/out/TotalSupply.sol/TotalSupply.json +1 -1
  228. package/out/TwoFields.sol/TwoFields.json +1 -1
  229. package/out/UniqueEntity.sol/UniqueEntity.json +1 -1
  230. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json +0 -13
  231. package/out/UniqueEntityModule.sol/UniqueEntityModule.abi.json.d.ts +0 -13
  232. package/out/UniqueEntityModule.sol/UniqueEntityModule.json +1 -1
  233. package/out/UniqueEntityModule.t.sol/UniqueEntityModuleTest.json +1 -1
  234. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json +0 -13
  235. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.abi.json.d.ts +0 -13
  236. package/out/UniqueEntityModule.t.sol/UniqueEntityTestSystem.json +1 -1
  237. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.abi.json +0 -13
  238. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.abi.json.d.ts +0 -13
  239. package/out/UniqueEntitySystem.sol/UniqueEntitySystem.json +1 -1
  240. package/out/UsedKeysIndex.sol/UsedKeysIndex.json +1 -1
  241. package/out/UserDelegationControl.sol/UserDelegationControl.json +1 -1
  242. package/out/Vm.sol/Vm.json +1 -1
  243. package/out/Vm.sol/VmSafe.json +1 -1
  244. package/out/World.sol/World.abi.json +13 -0
  245. package/out/World.sol/World.abi.json.d.ts +13 -0
  246. package/out/World.sol/World.json +1 -1
  247. package/out/World.t.sol/EchoSystemHook.json +1 -1
  248. package/out/World.t.sol/IWorldTestSystem.json +1 -1
  249. package/out/World.t.sol/PayableFallbackSystem.abi.json +0 -13
  250. package/out/World.t.sol/PayableFallbackSystem.abi.json.d.ts +0 -13
  251. package/out/World.t.sol/PayableFallbackSystem.json +1 -1
  252. package/out/World.t.sol/RevertSystemHook.json +1 -1
  253. package/out/World.t.sol/WorldTest.abi.json +7 -0
  254. package/out/World.t.sol/WorldTest.abi.json.d.ts +7 -0
  255. package/out/World.t.sol/WorldTest.json +1 -1
  256. package/out/World.t.sol/WorldTestSystem.abi.json +13 -13
  257. package/out/World.t.sol/WorldTestSystem.abi.json.d.ts +13 -13
  258. package/out/World.t.sol/WorldTestSystem.json +1 -1
  259. package/out/WorldContext.sol/WorldContextConsumer.abi.json +0 -13
  260. package/out/WorldContext.sol/WorldContextConsumer.abi.json.d.ts +0 -13
  261. package/out/WorldContext.sol/WorldContextConsumer.json +1 -1
  262. package/out/WorldContext.sol/WorldContextConsumerLib.json +1 -1
  263. package/out/WorldContext.sol/WorldContextProviderLib.json +1 -1
  264. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json +0 -13
  265. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.abi.json.d.ts +0 -13
  266. package/out/WorldRegistrationSystem.sol/WorldRegistrationSystem.json +1 -1
  267. package/out/WorldResourceId.sol/WorldResourceIdInstance.json +1 -1
  268. package/out/WorldResourceId.sol/WorldResourceIdLib.json +1 -1
  269. package/out/console.sol/console.json +1 -1
  270. package/out/console2.sol/console2.json +1 -1
  271. package/out/constants.sol/LayoutOffsets.json +1 -1
  272. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json +13 -0
  273. package/out/interfaces/IBaseWorld.sol/IBaseWorld.abi.json.d.ts +13 -0
  274. package/out/interfaces/IBaseWorld.sol/IBaseWorld.json +1 -1
  275. package/out/query.t.sol/QueryTest.json +1 -1
  276. package/out/safeconsole.sol/safeconsole.json +1 -1
  277. package/out/src/IERC165.sol/IERC165.json +1 -1
  278. package/out/tables/Balances.sol/Balances.json +1 -1
  279. package/out/test.sol/DSTest.json +1 -1
  280. package/out/world/src/IERC165.sol/IERC165.json +1 -1
  281. package/package.json +8 -8
  282. package/out/TransactionContext.sol/TransactionContext.abi.json +0 -1
  283. package/out/TransactionContext.sol/TransactionContext.json +0 -1
@@ -1 +1 @@
1
- {"abi":[{"type":"function","name":"_initialMsgSender","inputs":[],"outputs":[{"name":"sender","type":"address","internalType":"address"}],"stateMutability":"view"},{"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":"ERC20Module_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"FieldLayoutLib_Empty","inputs":[]},{"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"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":"SchemaLib_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType","inputs":[]},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x60c0604081905230608052620000159062000053565b604051809103906000f08015801562000032573d6000803e3d6000fd5b506001600160a01b031660a0523480156200004c57600080fd5b5062000061565b614d51806200366183390190565b60805160a0516135da6200008760003960006102ea0152600061020e01526135da6000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c806345ec93541161005b57806345ec9354146100df5780637c5b0335146100f25780639081c75814610105578063e1af802c1461010d57600080fd5b806301ffc9a714610082578063119df25f146100aa57806313861fb5146100ca575b600080fd5b610095610090366004612dbf565b610115565b60405190151581526020015b60405180910390f35b6100b26101fa565b6040516001600160a01b0390911681526020016100a1565b6100dd6100d8366004612e99565b610209565b005b604051601f1936013581526020016100a1565b6100dd610100366004612e99565b61075c565b6100b261078e565b6100b2610798565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c800000000000000000000000000000000000000000000000000000000014806101a857507fffffffff0000000000000000000000000000000000000000000000000000000082167f255f267f00000000000000000000000000000000000000000000000000000000145b806101f457507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102046107a2565b905090565b6102337f0000000000000000000000000000000000000000000000000000000000000000826107d4565b6000808280602001905181019061024a9190612f8d565b90925090507f9a8d9ccdcfd28f8a8f8f9a8c000000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff198316016102d9576040517f0f31c63c00000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b60006102e3610798565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316838660405160240161034e9291906001600160a01b0392909216825271ffffffffffffffffffffffffffffffffffff1916602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c200000000000000000000000000000000000000000000000000000000179052516103b19190613065565b600060405180830381855af49150503d80600081146103ec576040519150601f19603f3d011682016040523d82523d6000602084013e6103f1565b606091505b5091509150816104045761040481610819565b61041661041086610821565b85610853565b6000610421866108f5565b9050600061042f8583610942565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601089901c16176001600160a01b03861663ef5d6bbb826104906101fa565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b1580156104ef57600080fd5b505af1158015610503573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f45524332305265676973747279000000000000000000000000000000000000006030820152610585935001905060405160208183030381529060405261058090613081565b610c40565b6106d2576040517f6e7300000000000000000000000000000000000000000000000000000000000060208201527f65726332302d707570706574000000000000000000000000000000000000000060228201526001600160a01b0387169063b29e40899060300160405160208183030381529060405261060490613081565b6040518263ffffffff1660e01b815260040161062291815260200190565b600060405180830381600087803b15801561063c57600080fd5b505af1158015610650573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f455243323052656769737472790000000000000000000000000000000000000060308201526106d293500190506040516020818303038152906040526106cd90613081565b610ccd565b60408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f45524332305265676973747279000000000000000000000000000000000000006030820152610751910160405160208183030381529060405261074a90613081565b8284610d19565b505050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610204610dd9565b6000610204610de3565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107d15750335b90565b6107de8282610ded565b15610815576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b805160208201fd5b60006101f4613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610e07565b60006108a282600001516040805160f89290921b7fff00000000000000000000000000000000000000000000000000000000000000166020830152805160018184030181526021909201905290565b905060006108b883602001518460400151610e8d565b905060006108ce84602001518560400151610eaa565b6040805160008152602081019091529091506108ed8682868686610ed6565b505050505050565b60006101f47f7379000000000000000000000000000000000000000000000000000000000000837f455243323053797374656d000000000000000000000000000000000000000000610e07565b604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f466163746f72790000000000000000000000000000000000000000000000000060308201526000916001600160a01b03851691633ae7af0891016040516020818303038152906040526109e590613081565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610a829291906004016130d1565b6000604051808303816000875af1158015610aa1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ac991908101906130ea565b806020019051810190610adc9190613133565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610bbf90613081565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610c089291906024810161315c565b600060405180830381600087803b158015610c2257600080fd5b505af1158015610c36573d6000803e3d6000fd5b5050505092915050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610c7957610c7961317b565b60209081029190910101526000610cb97f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f8b565b9050610cc58160f81c90565b949350505050565b610d16817e14010014000000000000000000000000000000000000000000000000000000610cf9611048565b610d016110c0565b610d096110fa565b610d1161117f565b6111f6565b50565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610d4f57610d4f61317b565b602002602001018181525050610dd38482600085604051602001610d9e919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e140100140000000000000000000000000000000000000000000000000000006112b0565b50505050565b6000610204611326565b600061020461138d565b6000610e008383805190602001206113cc565b9392505050565b6000610e15607060106131a7565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b8151815160009181810160389190911b1760609190911b17610e00565b60608282604051602001610ebf9291906131ba565b604051602081830303815290604052905092915050565b6000610ee061138d565b9050306001600160a01b03821603610f0457610eff8686868686611486565b6108ed565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90610f519089908990899089908990600401613225565b600060405180830381600087803b158015610f6b57600080fd5b505af1158015610f7f573d6000803e3d6000fd5b50505050505050505050565b600080610f9661138d565b9050306001600160a01b03821603610fbc57610fb4868686866114a3565b915050610cc5565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611007908990899089908990600401613276565b602060405180830381865afa158015611024573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb491906132a5565b60408051600180825281830190925260009182919060208083019080368337019050509050605f816000815181106110825761108261317b565b602002602001019060c581111561109b5761109b6132be565b908160c58111156110ae576110ae6132be565b9052506110ba816114d0565b91505090565b604080516001808252818301909252600091829190602080830190803683370190505090506061816000815181106110825761108261317b565b604080516001808252818301909252606091816020015b60608152602001906001900390816111115790505090506040518060400160405280600b81526020017f6e616d6573706163654964000000000000000000000000000000000000000000815250816000815181106111715761117161317b565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816111965790505090506040518060400160405280600c81526020017f746f6b656e416464726573730000000000000000000000000000000000000000815250816000815181106111715761117161317b565b600061120061138d565b9050306001600160a01b038216036112255761122087878787878761168b565b6112a7565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990611274908a908a908a908a908a908a9060040161332e565b600060405180830381600087803b15801561128e57600080fd5b505af11580156112a2573d6000803e3d6000fd5b505050505b50505050505050565b60006112ba61138d565b9050306001600160a01b038216036112d957610eff8686868686611ae1565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610f519089908990899089908990600401613378565b6040805160008082526020820190925260006113837f7462776f726c640000000000000000005472616e73616374696f6e436f6e746583837e14010014000000000000000000000000000000000000000000000000000000610f8b565b60601c9392505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806113c7573391505090565b919050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b816000815181106114115761141161317b565b60200260200101818152505082816001815181106114315761143161317b565b602090810291909101015260006114717f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610f8b565b905061147d8160f81c90565b95945050505050565b61149c85858585856114978b611af6565b611b7b565b5050505050565b600061147d6114b28686611eb4565b60ff858116601b0360080285901c166114cb8587611f0a565b611f43565b6000601c825111156114fa578151604051635318beb960e01b81526004016102d091815260200190565b60008080805b85518110156115d557600061153e8783815181106115205761152061317b565b602002602001015160c5811115611539576115396132be565b611f94565b9050806000036115535760019092019161158b565b821561158b576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106115ac576115ac61317b565b602002602001015160c58111156115c5576115c56132be565b901b949094179350600101611500565b5060058111156115fb57604051635318beb960e01b8152600481018290526024016102d0565b8451819003600861160e600260206133bf565b61161891906133d2565b83901b939093179260086001611630600260206133bf565b61163a91906133bf565b61164491906133d2565b81901b9390931792600860018061165d600260206133bf565b61166791906133bf565b61167191906133bf565b61167b91906133d2565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061170457507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561176557613a3160f11b868760405160200161172391815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102d09392916004016133e9565b61176e85611ff4565b61177984600161223b565b61178483600061223b565b60e084901c60e885901c0160ff168251146117e45760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b60e085901c60e886901c0160ff168151146118445760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146118bc5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b6118c5856123d7565b6118ce846123d7565b14611920576118dc856123d7565b6118e5846123d7565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b61192985612409565b61193284612409565b146119845761194085612409565b61194984612409565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b60005b611990866123d7565b811015611a26576119b56119a48583612426565b60c5811115611539576115396132be565b6008601b8390030287901c60ff1614611a1e576008601b8290030286901c60ff166119e36119a48684612426565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b600101611987565b50611a3086612447565b15611a8a578586604051602001611a4991815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102d092916004016130d1565b611ad68686868686604051602001611aa2919061342a565b60405160208183030381529060405286604051602001611ac2919061342a565b6040516020818303038152906040526124c0565b6108ed866001612597565b61149c8585611af08487611f0a565b8561263d565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611b4557507e60030220202000000000000000000000000000000000000000000000000000919050565b6101f4611b727f746273746f72650000000000000000005461626c657300000000000000000000846128d8565b60206000611f43565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611c0757857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611bfa949392919061343d565b60405180910390a26108ed565b6000611c12876128f4565b905060005b8151811015611ceb576000828281518110611c3457611c3461317b565b60200260200101519050611c606001826affffffffffffffffffffff191661297d90919063ffffffff16565b15611ce2576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611caf908c908c908c908c908c908c90600401613487565b600060405180830381600087803b158015611cc957600080fd5b505af1158015611cdd573d6000803e3d6000fd5b505050505b50600101611c17565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611d22949392919061343d565b60405180910390a26000611d368888611eb4565b90506000602087019050611d4e82600089518461299b565b6000611d5985612409565b1115611ddd576000611d6b8a8a612a5a565b878155905060208601915060008060005b611d8588612409565b8160ff161015611dd857611d9a8d8d83612ab0565b9250611db58a8260ff166028026038011c64ffffffffff1690565b9150611dc4836000848861299b565b611dce82866131a7565b9450600101611d7c565b505050505b60005b8351811015610f7f576000848281518110611dfd57611dfd61317b565b60200260200101519050611e296002826affffffffffffffffffffff191661297d90919063ffffffff16565b15611eab576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611e78908e908e908e908e908e908e90600401613487565b600060405180830381600087803b158015611e9257600080fd5b505af1158015611ea6573d6000803e3d6000fd5b505050505b50600101611de0565b60008282604051602001611ec99291906134e0565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611f3b57611f3160ff601b83900360080287901c16836131a7565b9150600101611f0f565b509392505050565b600060208210611f6957602082048401935060208281611f6557611f6561351c565b0691505b508254600882021b602082900380841115611f3b576001850154600882021c82179150509392505050565b6000808260c5811115611fa957611fa96132be565b60ff1690506061811015611fc357601f1660010192915050565b60618360c5811115611fd757611fd76132be565b03611fe55750601492915050565b50600092915050565b50919050565b8061202b576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061203682612409565b9050600581111561207d576040517f7f2372c300000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016102d0565b6000612088836123d7565b9050600061209683836131a7565b9050601c8111156120dd576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016102d0565b6000805b838110156121885760ff601b82900360080287901c166000819003612135576040517f01f2a07c000000000000000000000000000000000000000000000000000000008152600481018390526024016102d0565b6020811115612173576040517f24c85d58000000000000000000000000000000000000000000000000000000008152600481018390526024016102d0565b61217d81846131a7565b9250506001016120e1565b5061219285612b30565b81146121de576121a185612b30565b6040517f9365944a0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016102d0565b825b601c8110156108ed5760ff601b82900360080287901c168015612232576040517fbb68821a000000000000000000000000000000000000000000000000000000008152600481018390526024016102d0565b506001016121e0565b80158015612247575081155b1561226857604051635318beb960e01b8152600060048201526024016102d0565b600061227383612409565b9050600581111561229a57604051635318beb960e01b8152600481018290526024016102d0565b60006122a5846123d7565b905060006122b383836131a7565b9050601c8111156122da57604051635318beb960e01b8152600481018290526024016102d0565b6000805b838110156123465760006122f56119a48984612426565b905080600003612331576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61233b81846131a7565b9250506001016122de565b5061235086612b30565b811461237b5761235f86612b30565b604051635318beb960e01b81526004016102d091815260200190565b825b828110156112a75760006123946119a48984612426565b905080156123ce576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161237d565b6000600860016123e9600260206133bf565b6123f391906133bf565b6123fd91906133d2565b8260ff911c1692915050565b6000600860018061241c600260206133bf565b6123e991906133bf565b6000601b8290036008028360ff911c1660c5811115610e0057610e006132be565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106124805761248061317b565b60209081029190910101526000610cb97f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6114a3565b6040805160208101879052808201869052606080820186905282518083039091018152608090910190915260006124f78484610e8d565b905060006125058585610eaa565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061253f5761253f61317b565b6020908102919091010152610f7f7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611b7b565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125cd576125cd61317b565b6020026020010181815250506126387f746273746f72650000000000000000005265736f75726365496473000000000060001b8260008560405160200161261b91151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b611ae1565b505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036126c757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516126ba93929190613532565b60405180910390a2610dd3565b60006126d38585611eb4565b905060006126e0866128f4565b905060005b81518110156127b55760008282815181106127025761270261317b565b6020026020010151905061272e6004826affffffffffffffffffffff191661297d90919063ffffffff16565b156127ac576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612779908b908b908b908b9060040161356f565b600060405180830381600087803b15801561279357600080fd5b505af11580156127a7573d6000803e3d6000fd5b505050505b506001016126e5565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516127ea93929190613532565b60405180910390a2612805828565ffffffffffff1685612b53565b60005b81518110156112a75760008282815181106128255761282561317b565b602002602001015190506128516008826affffffffffffffffffffff191661297d90919063ffffffff16565b156128cf576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061289c908b908b908b908b9060040161356f565b600060405180830381600087803b1580156128b657600080fd5b505af11580156128ca573d6000803e3d6000fd5b505050505b50600101612808565b6040805160208101849052908101829052600090606001611ec9565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061292e5761292e61317b565b602090810291909101015260006129667f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612b69565b9050610cc56129788260008451612ba3565b612c31565b60008160ff168261298e8560581c90565b1660ff1614905092915050565b8215612a1557602083106129c5576020830484019350602083816129c1576129c161351c565b0692505b8215612a155760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411612a06575050610dd3565b50600194909401939182900391015b5b60208210612a375780518455600190930192601f1990910190602001612a16565b8115610dd3576000600019600884021c8554835182191691161785555050505050565b60008282604051602001612a6f9291906134e0565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001612ac59291906134e0565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b60006008612b40600260206133bf565b612b4a91906133d2565b9190911c919050565b61263883838351612b648560200190565b61299b565b6060610cc5612b79858585612ab0565b6000612b9e85612b898989612c42565b9060ff166028026038011c64ffffffffff1690565b612c55565b600081831180612bb35750835182115b15612bf0578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102d0939291906135a8565b60208401612bfe84826131a7565b90506000612c0c85856133bf565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610e008360156000612c78565b6000610e00612c518484612a5a565b5490565b60405160208101601f19603f8484010116604052828252611f3b85858584612cf3565b60606000612c868560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612cac57612cac61351c565b04905060405193506020840160208202810160405281855260005b82811015612ce7578451871c825293870193602090910190600101612cc7565b50505050509392505050565b8215612d7a5760208310612d1d57602083048401935060208381612d1957612d1961351c565b0692505b8215612d7a576020839003600081841015612d405750600019600884021c612d4a565b50600019600882021c5b8554600886021b818451168219821617845250818411612d6b575050610dd3565b50600194909401939182900391015b5b60208210612d9c5783548152600190930192601f1990910190602001612d7b565b8115610dd3576000600019600884021c8251865482191691161782525050505050565b600060208284031215612dd157600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610e0057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715612e3a57612e3a612e01565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612e6957612e69612e01565b604052919050565b600067ffffffffffffffff821115612e8b57612e8b612e01565b50601f01601f191660200190565b600060208284031215612eab57600080fd5b813567ffffffffffffffff811115612ec257600080fd5b8201601f81018413612ed357600080fd5b8035612ee6612ee182612e71565b612e40565b818152856020838501011115612efb57600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b83811015612f34578181015183820152602001612f1c565b50506000910152565b6000612f4b612ee184612e71565b9050828152838383011115612f5f57600080fd5b610e00836020830184612f19565b600082601f830112612f7e57600080fd5b610e0083835160208501612f3d565b60008060408385031215612fa057600080fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612fc357600080fd5b602084015190925067ffffffffffffffff80821115612fe157600080fd5b9084019060608287031215612ff557600080fd5b612ffd612e17565b825160ff8116811461300e57600080fd5b815260208301518281111561302257600080fd5b61302e88828601612f6d565b60208301525060408301518281111561304657600080fd5b61305288828601612f6d565b6040830152508093505050509250929050565b60008251613077818460208701612f19565b9190910192915050565b80516020808301519190811015611fee5760001960209190910360031b1b16919050565b600081518084526130bd816020860160208601612f19565b601f01601f19169290920160200192915050565b828152604060208201526000610cc560408301846130a5565b6000602082840312156130fc57600080fd5b815167ffffffffffffffff81111561311357600080fd5b8201601f8101841361312457600080fd5b610cc584825160208401612f3d565b60006020828403121561314557600080fd5b81516001600160a01b0381168114610e0057600080fd5b83815282602082015260606040820152600061147d60608301846130a5565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156101f4576101f4613191565b600083516131cc818460208801612f19565b8351908301906131e0818360208801612f19565b01949350505050565b60008151808452602080850194506020840160005b8381101561321a578151875295820195908201906001016131fe565b509495945050505050565b85815260a06020820152600061323e60a08301876131e9565b828103604084015261325081876130a5565b9050846060840152828103608084015261326a81856130a5565b98975050505050505050565b84815260806020820152600061328f60808301866131e9565b60ff949094166040830152506060015292915050565b6000602082840312156132b757600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b60008282518085526020808601955060208260051b8401016020860160005b8481101561332157601f1986840301895261330f8383516130a5565b988401989250908301906001016132f3565b5090979650505050505050565b86815285602082015284604082015283606082015260c06080820152600061335960c08301856132d4565b82810360a084015261336b81856132d4565b9998505050505050505050565b85815260a06020820152600061339160a08301876131e9565b60ff8616604084015282810360608401526133ac81866130a5565b9150508260808301529695505050505050565b818103818111156101f4576101f4613191565b80820281158282048414176101f4576101f4613191565b7fffff0000000000000000000000000000000000000000000000000000000000008416815282602082015260606040820152600061147d60608301846130a5565b602081526000610e0060208301846132d4565b60808152600061345060808301876131e9565b828103602084015261346281876130a5565b9050846040840152828103606084015261347c81856130a5565b979650505050505050565b86815260c0602082015260006134a060c08301886131e9565b82810360408401526134b281886130a5565b905085606084015282810360808401526134cc81866130a5565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b8281101561350f578151845292840192908401906001016134f3565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b60608152600061354560608301866131e9565b65ffffffffffff85166020840152828103604084015261356581856130a5565b9695505050505050565b84815260806020820152600061358860808301866131e9565b65ffffffffffff85166040840152828103606084015261347c81856130a5565b6060815260006135bb60608301866130a5565b6020830194909452506040015291905056fea164736f6c6343000818000a608060405234801561001057600080fd5b50614d31806100206000396000f3fe608060405234801561001057600080fd5b506004361061002b5760003560e01c8063472466c214610030575b600080fd5b61004361003e366004612558565b610045565b005b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601083901c16176100958161022b565b61011a576040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff84169063b29e408990602401600060405180830381600087803b15801561010157600080fd5b505af1158015610115573d6000803e3d6000fd5b505050505b61012b610126836102d0565b610308565b61013c61013783610354565b610386565b61014d610148836103c2565b6103f4565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a961017284610438565b60405161017e9061254b565b604051809103906000f08015801561019a573d6000803e3d6000fd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff16602482015260016044820152606401600060405180830381600087803b15801561020e57600080fd5b505af1158015610222573d6000803e3d6000fd5b50505050505050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610264576102646125cf565b602090810291909101015260006102bc7f746273746f72650000000000000000005265736f75726365496473000000000083837e01010001000000000000000000000000000000000000000000000000000000610485565b90506102c88160f81c90565b949350505050565b6000610302613a3160f11b837f416c6c6f77616e6365730000000000000000000000000000000000000000000061055c565b92915050565b610351817e200100200000000000000000000000000000000000000000000000000000006103346105e3565b61033c6106a0565b6103446106da565b61034c6107b2565b610829565b50565b6000610302613a3160f11b837f42616c616e63657300000000000000000000000000000000000000000000000061055c565b610351817e200100200000000000000000000000000000000000000000000000000000006103b26108fc565b6103ba6106a0565b610344610936565b6000610302613a3160f11b837f4d6574616461746100000000000000000000000000000000000000000000000061055c565b610351817e010102010000000000000000000000000000000000000000000000000000006104206109ad565b6104286109c6565b610430610a8b565b61034c610abe565b60006103027f7379000000000000000000000000000000000000000000000000000000000000837f455243323053797374656d00000000000000000000000000000000000000000061055c565b600080610490610bde565b90503073ffffffffffffffffffffffffffffffffffffffff8216036104c3576104bb86868686610c2a565b9150506102c8565b6040517f8c364d5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690638c364d599061051b908990899089908990600401612621565b602060405180830381865afa158015610538573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104bb9190612650565b600061056a6070601061267f565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060820183526000928392919060208301908036833701905050905060618160008151811061061d5761061d6125cf565b602002602001019060c581111561063657610636612692565b908160c581111561064957610649612692565b81525050606181600181518110610662576106626125cf565b602002602001019060c581111561067b5761067b612692565b908160c581111561068e5761068e612692565b90525061069a81610c60565b91505090565b60408051600180825281830190925260009182919060208083019080368337019050509050601f81600081518110610662576106626125cf565b6040805160028082526060828101909352816020015b60608152602001906001900390816106f05790505090506040518060400160405280600781526020017f6163636f756e740000000000000000000000000000000000000000000000000081525081600081518110610750576107506125cf565b60200260200101819052506040518060400160405280600781526020017f7370656e64657200000000000000000000000000000000000000000000000000815250816001815181106107a4576107a46125cf565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816107c95790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250816000815181106107a4576107a46125cf565b6000610833610bde565b90503073ffffffffffffffffffffffffffffffffffffffff82160361086557610860878787878787610e24565b610222565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f49906108c1908a908a908a908a908a908a90600401612752565b600060405180830381600087803b1580156108db57600080fd5b505af11580156108ef573d6000803e3d6000fd5b5050505050505050505050565b60408051600180825281830190925260009182919060208083019080368337019050509050606181600081518110610662576106626125cf565b604080516001808252818301909252606091816020015b606081526020019060019003908161094d5790505090506040518060400160405280600781526020017f6163636f756e7400000000000000000000000000000000000000000000000000815250816000815181106107a4576107a46125cf565b6040805160008082526020820190925261069a81610c60565b6040805160038082526080820190925260009182919060208201606080368337019050509050600081600081518110610a0157610a016125cf565b602002602001019060c5811115610a1a57610a1a612692565b908160c5811115610a2d57610a2d612692565b8152505060c581600181518110610a4657610a466125cf565b602002602001019060c5811115610a5f57610a5f612692565b908160c5811115610a7257610a72612692565b8152505060c581600281518110610662576106626125cf565b60408051600080825260208201909252606091610ab8565b6060815260200190600190039081610aa35790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610ad65790505090506040518060400160405280600881526020017f646563696d616c7300000000000000000000000000000000000000000000000081525081600081518110610b3657610b366125cf565b60200260200101819052506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600181518110610b8a57610b8a6125cf565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c0000000000000000000000000000000000000000000000000000815250816002815181106107a4576107a46125cf565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e1755460009073ffffffffffffffffffffffffffffffffffffffff1680610c25573391505090565b919050565b6000610c57610c398686611282565b60ff858116601b0360080285901c16610c5285876112d8565b611311565b95945050505050565b6000601c82511115610c93578151604051635318beb960e01b8152600401610c8a91815260200190565b60405180910390fd5b60008080805b8551811015610d6e576000610cd7878381518110610cb957610cb96125cf565b602002602001015160c5811115610cd257610cd2612692565b611362565b905080600003610cec57600190920191610d24565b8215610d24576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f030302878381518110610d4557610d456125cf565b602002602001015160c5811115610d5e57610d5e612692565b901b949094179350600101610c99565b506005811115610d9457604051635318beb960e01b815260048101829052602401610c8a565b84518190036008610da76002602061279c565b610db191906127af565b83901b939093179260086001610dc96002602061279c565b610dd3919061279c565b610ddd91906127af565b81901b93909317926008600180610df66002602061279c565b610e00919061279c565b610e0a919061279c565b610e1491906127af565b9190911b92909217949350505050565b613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001614801590610e9d57507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b15610efe57613a3160f11b8687604051602001610ebc91815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610c8a9392916004016127c6565b610f07856113bc565b610f12846001611603565b610f1d836000611603565b60e084901c60e885901c0160ff16825114610f7d5760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c8a565b60e085901c60e886901c0160ff16815114610fdd5760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c8a565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146110555760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c8a565b61105e8561179f565b6110678461179f565b146110b9576110758561179f565b61107e8461179f565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c8a565b6110c2856117d1565b6110cb846117d1565b1461111d576110d9856117d1565b6110e2846117d1565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c8a565b60005b6111298661179f565b8110156111bf5761114e61113d85836117ee565b60c5811115610cd257610cd2612692565b6008601b8390030287901c60ff16146111b7576008601b8290030286901c60ff1661117c61113d86846117ee565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c8a565b600101611120565b506111c986611816565b156112235785866040516020016111e291815260200190565b60408051601f19818403018152908290527fdfaaf9cf000000000000000000000000000000000000000000000000000000008252610c8a9291600401612807565b61126f868686868660405160200161123b9190612820565b6040516020818303038152906040528660405160200161125b9190612820565b6040516020818303038152906040526118a7565b61127a86600161198a565b505050505050565b60008282604051602001611297929190612833565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611309576112ff60ff601b83900360080287901c168361267f565b91506001016112dd565b509392505050565b600060208210611337576020820484019350602082816113335761133361286f565b0691505b508254600882021b602082900380841115611309576001850154600882021c82179150509392505050565b6000808260c581111561137757611377612692565b60ff169050606181101561139157601f1660010192915050565b60618360c58111156113a5576113a5612692565b036113b35750601492915050565b50600092915050565b806113f3576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b60006113fe826117d1565b90506005811115611445576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610c8a565b60006114508361179f565b9050600061145e838361267f565b9050601c8111156114a5576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610c8a565b6000805b838110156115505760ff601b82900360080287901c1660008190036114fd576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401610c8a565b602081111561153b576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401610c8a565b611545818461267f565b9250506001016114a9565b5061155a85611a48565b81146115a65761156985611a48565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610c8a565b825b601c81101561127a5760ff601b82900360080287901c1680156115fa576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401610c8a565b506001016115a8565b8015801561160f575081155b1561163057604051635318beb960e01b815260006004820152602401610c8a565b600061163b836117d1565b9050600581111561166257604051635318beb960e01b815260048101829052602401610c8a565b600061166d8461179f565b9050600061167b838361267f565b9050601c8111156116a257604051635318beb960e01b815260048101829052602401610c8a565b6000805b8381101561170e5760006116bd61113d89846117ee565b9050806000036116f9576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b611703818461267f565b9250506001016116a6565b5061171886611a48565b81146117435761172786611a48565b604051635318beb960e01b8152600401610c8a91815260200190565b825b8281101561022257600061175c61113d89846117ee565b90508015611796576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b50600101611745565b6000600860016117b16002602061279c565b6117bb919061279c565b6117c591906127af565b8260ff911c1692915050565b600060086001806117e46002602061279c565b6117b1919061279c565b6000601b8290036008028360ff911c1660c581111561180f5761180f612692565b9392505050565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061184f5761184f6125cf565b602090810291909101015260006102bc7f746273746f72650000000000000000005265736f75726365496473000000000083837e01010001000000000000000000000000000000000000000000000000000000610c2a565b6040805160208101879052808201869052606080820186905282518083039091018152608090910190915260006118de8484611a6b565b905060006118ec8585611a88565b60408051600180825281830190925291925060009190602080830190803683370190505090508981600081518110611926576119266125cf565b602090810291909101015261197e7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611ab4565b50505050505050505050565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106119c0576119c06125cf565b602002602001018181525050611a437f746273746f72650000000000000000005265736f75726365496473000000000060001b82600085604051602001611a0e91151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611ded565b505050565b60006008611a586002602061279c565b611a6291906127af565b9190911c919050565b8151815160009181810160389190911b1760609190911b1761180f565b60608282604051602001611a9d929190612885565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611b4057857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611b3394939291906128b4565b60405180910390a261127a565b6000611b4b87611e09565b905060005b8151811015611c24576000828281518110611b6d57611b6d6125cf565b60200260200101519050611b996001826affffffffffffffffffffff1916611e9290919063ffffffff16565b15611c1b576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611be8908c908c908c908c908c908c906004016128fe565b600060405180830381600087803b158015611c0257600080fd5b505af1158015611c16573d6000803e3d6000fd5b505050505b50600101611b50565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611c5b94939291906128b4565b60405180910390a26000611c6f8888611282565b90506000602087019050611c87826000895184611eb0565b6000611c92856117d1565b1115611d16576000611ca48a8a611f6e565b878155905060208601915060008060005b611cbe886117d1565b8160ff161015611d1157611cd38d8d83611fc4565b9250611cee8a8260ff166028026038011c64ffffffffff1690565b9150611cfd8360008488611eb0565b611d07828661267f565b9450600101611cb5565b505050505b60005b835181101561197e576000848281518110611d3657611d366125cf565b60200260200101519050611d626002826affffffffffffffffffffff1916611e9290919063ffffffff16565b15611de4576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611db1908e908e908e908e908e908e906004016128fe565b600060405180830381600087803b158015611dcb57600080fd5b505af1158015611ddf573d6000803e3d6000fd5b505050505b50600101611d19565b611e028585611dfc84876112d8565b85612044565b5050505050565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611e4357611e436125cf565b60209081029190910101526000611e7b7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836122df565b90506102c8611e8d8260008451612319565b6123a7565b60008160ff1682611ea38560581c90565b1660ff1614905092915050565b8215611f2a5760208310611eda57602083048401935060208381611ed657611ed661286f565b0692505b8215611f2a5760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611f1b575050611f68565b50600194909401939182900391015b5b60208210611f4c5780518455600190930192601f1990910190602001611f2b565b8115611f685783548151600019600885021c9182169119161784555b50505050565b60008282604051602001611f83929190612833565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001611fd9929190612833565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036120ce57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516120c193929190612957565b60405180910390a2611f68565b60006120da8585611282565b905060006120e786611e09565b905060005b81518110156121bc576000828281518110612109576121096125cf565b602002602001015190506121356004826affffffffffffffffffffff1916611e9290919063ffffffff16565b156121b3576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612180908b908b908b908b90600401612994565b600060405180830381600087803b15801561219a57600080fd5b505af11580156121ae573d6000803e3d6000fd5b505050505b506001016120ec565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516121f193929190612957565b60405180910390a261220c828565ffffffffffff16856123b8565b60005b815181101561022257600082828151811061222c5761222c6125cf565b602002602001015190506122586008826affffffffffffffffffffff1916611e9290919063ffffffff16565b156122d6576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba8721906122a3908b908b908b908b90600401612994565b600060405180830381600087803b1580156122bd57600080fd5b505af11580156122d1573d6000803e3d6000fd5b505050505b5060010161220f565b60606102c86122ef858585611fc4565b6000612314856122ff89896123ce565b9060ff166028026038011c64ffffffffff1690565b6123e1565b6000818311806123295750835182115b15612366578383836040517f23230fa3000000000000000000000000000000000000000000000000000000008152600401610c8a939291906129cd565b60208401612374848261267f565b90506000612382858561279c565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b6060600061180f8360156000612404565b611a43838383516123c98560200190565b611eb0565b600061180f6123dd8484611f6e565b5490565b60405160208101601f19603f84840101166040528282526113098585858461247f565b606060006124128560801c90565b90506fffffffffffffffffffffffffffffffff851660008582816124385761243861286f565b04905060405193506020840160208202810160405281855260005b82811015612473578451871c825293870193602090910190600101612453565b50505050509392505050565b821561250657602083106124a9576020830484019350602083816124a5576124a561286f565b0692505b82156125065760208390036000818410156124cc5750600019600884021c6124d6565b50600019600882021c5b8554600886021b8184511682198216178452508184116124f7575050611f68565b50600194909401939182900391015b5b602082106125285783548152600190930192601f1990910190602001612507565b8115611f68576000600019600884021c8251865482191691161782525050505050565b612332806129f383390190565b6000806040838503121561256b57600080fd5b823573ffffffffffffffffffffffffffffffffffffffff8116811461258f57600080fd5b915060208301357fffffffffffffffffffffffffffff000000000000000000000000000000000000811681146125c457600080fd5b809150509250929050565b634e487b7160e01b600052603260045260246000fd5b60008151808452602080850194506020840160005b83811015612616578151875295820195908201906001016125fa565b509495945050505050565b84815260806020820152600061263a60808301866125e5565b60ff949094166040830152506060015292915050565b60006020828403121561266257600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b8082018082111561030257610302612669565b634e487b7160e01b600052602160045260246000fd5b60005b838110156126c35781810151838201526020016126ab565b50506000910152565b600081518084526126e48160208601602086016126a8565b601f01601f19169290920160200192915050565b60008282518085526020808601955060208260051b8401016020860160005b8481101561274557601f198684030189526127338383516126cc565b98840198925090830190600101612717565b5090979650505050505050565b86815285602082015284604082015283606082015260c06080820152600061277d60c08301856126f8565b82810360a084015261278f81856126f8565b9998505050505050505050565b8181038181111561030257610302612669565b808202811582820484141761030257610302612669565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201526000610c5760608301846126cc565b8281526040602082015260006102c860408301846126cc565b60208152600061180f60208301846126f8565b8281526000602080830184516020860160005b8281101561286257815184529284019290840190600101612846565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b600083516128978184602088016126a8565b8351908301906128ab8183602088016126a8565b01949350505050565b6080815260006128c760808301876125e5565b82810360208401526128d981876126cc565b905084604084015282810360608401526128f381856126cc565b979650505050505050565b86815260c06020820152600061291760c08301886125e5565b828103604084015261292981886126cc565b9050856060840152828103608084015261294381866126cc565b9150508260a0830152979650505050505050565b60608152600061296a60608301866125e5565b65ffffffffffff85166020840152828103604084015261298a81856126cc565b9695505050505050565b8481526080602082015260006129ad60808301866125e5565b65ffffffffffff8516604084015282810360608401526128f381856126cc565b6060815260006129e060608301866126cc565b6020830194909452506040015291905056fe608060405234801561001057600080fd5b50612312806100206000396000f3fe608060405234801561001057600080fd5b50600436106101005760003560e01c806345ec9354116100975780639dc29fac116100665780639dc29fac146101fb578063a9059cbb1461020e578063dd62ed3e14610221578063e1af802c1461023457600080fd5b806345ec9354146101cd57806370a08231146101d85780639081c758146101eb57806395d89b41146101f357600080fd5b806318160ddd116100d357806318160ddd1461017557806323b872dd1461018b578063313ce5671461019e57806340c10f19146101b857600080fd5b806301ffc9a71461010557806306fdde031461012d578063095ea7b314610142578063119df25f14610155575b600080fd5b610118610113366004611da1565b61023c565b60405190151581526020015b60405180910390f35b6101356102d5565b6040516101249190611e33565b610118610150366004611e5d565b6102f4565b61015d610316565b6040516001600160a01b039091168152602001610124565b61017d610320565b604051908152602001610124565b610118610199366004611e87565b61033a565b6101a661036a565b60405160ff9091168152602001610124565b6101cb6101c6366004611e5d565b61037f565b005b36601f19013561017d565b61017d6101e6366004611ec3565b6103df565b61015d6103fa565b610135610404565b6101cb610209366004611e5d565b610419565b61011861021c366004611e5d565b610470565b61017d61022f366004611ede565b610488565b61015d6104a4565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f255f267f0000000000000000000000000000000000000000000000000000000014806102cf57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606102ef6102ea6102e56104ae565b6104cc565b6104fe565b905090565b6000806102ff610316565b905061030c818585610524565b5060019392505050565b60006102ef610682565b60006102ef6103356103306104ae565b6106b4565b6106e6565b600080610345610316565b905061035285828561070b565b61035d858585610793565b60019150505b9392505050565b60006102ef61037a6102e56104ae565b610829565b610387610871565b6001600160a01b0382166103cf576040517fec442f05000000000000000000000000000000000000000000000000000000008152600060048201526024015b60405180910390fd5b6103db6000838361088c565b5050565b60006102cf6103f46103ef6104ae565b610a54565b83610a86565b60006102ef610af4565b60606102ef6104146102e56104ae565b610afe565b610421610871565b6001600160a01b038216610464576040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600060048201526024016103c6565b6103db8260008361088c565b60008061047b610316565b905061030c818585610793565b600061036361049d6104986104ae565b610b1d565b8484610b4f565b60006102ef610bea565b6000806104ba30610bf4565b90506104c68160101b90565b91505090565b60006102cf613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610c79565b6040805160008082526020820190925260609161051c848383610cf1565b949350505050565b6001600160a01b038316610567576040517fe602df05000000000000000000000000000000000000000000000000000000008152600060048201526024016103c6565b6001600160a01b0382166105aa576040517f94280d62000000000000000000000000000000000000000000000000000000008152600060048201526024016103c6565b6105c06105b86104986104ae565b848484610db8565b6105c8610e6f565b6001600160a01b031663c9a34acd7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925610607866001600160a01b031690565b6001600160a01b0386166040805160208101889052016040516020818303038152906040526040518563ffffffff1660e01b815260040161064b9493929190611f27565b600060405180830381600087803b15801561066557600080fd5b505af1158015610679573d6000803e3d6000fd5b50505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806106b15750335b90565b60006102cf613a3160f11b837f546f74616c537570706c79000000000000000000000000000000000000000000610c79565b60408051600080825260208201909252600061051c848383630100080160dd1b610f4a565b600061072261071b6104986104ae565b8585610b4f565b9050600019811461078d5781811015610780576040517ffb8f41b20000000000000000000000000000000000000000000000000000000081526001600160a01b038416600482015260248101829052604481018390526064016103c6565b61078d8484848403610524565b50505050565b6001600160a01b0383166107d6576040517f96c6fd1e000000000000000000000000000000000000000000000000000000008152600060048201526024016103c6565b6001600160a01b038216610819576040517fec442f05000000000000000000000000000000000000000000000000000000008152600060048201526024016103c6565b61082483838361088c565b505050565b6040805160008082526020820190925260006108668483837e01010201000000000000000000000000000000000000000000000000000000610f4a565b60f81c949350505050565b61088a61087d30610bf4565b610885610316565b611007565b565b60006108966104ae565b905060006108a3826106b4565b905060006108b083610a54565b90506001600160a01b0386166108e2576108dd82856108ce856106e6565b6108d89190611f62565b6110a8565b610952565b60006108ee8288610a86565b905084811015610943576040517fe450d38c0000000000000000000000000000000000000000000000000000000081526001600160a01b038816600482015260248101829052604481018690526064016103c6565b61095082888784036110cf565b505b6001600160a01b03851661097957610974828561096e856106e6565b036110a8565b61098f565b61098f818686610989858a610a86565b016110cf565b610997610e6f565b6001600160a01b031663c9a34acd7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6109d6896001600160a01b031690565b6001600160a01b03891660408051602081018b9052016040516020818303038152906040526040518563ffffffff1660e01b8152600401610a1a9493929190611f27565b600060405180830381600087803b158015610a3457600080fd5b505af1158015610a48573d6000803e3d6000fd5b50505050505050505050565b60006102cf613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610c79565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610acb57610acb611f75565b60209081029190910101526000610aeb858383630100080160dd1b610f4a565b95945050505050565b60006102ef611137565b6040805160008082526020820190925260609161051c84836001610cf1565b60006102cf613a3160f11b837f416c6c6f77616e63657300000000000000000000000000000000000000000000610c79565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b81600081518110610b9457610b94611f75565b602002602001018181525050826001600160a01b031660001b81600181518110610bc057610bc0611f75565b60209081029190910101526000610be0868383630100080160dd1b610f4a565b9695505050505050565b60006102ef61119e565b60408051600180825281830190925260009182919060208083019080368337019050509050826001600160a01b031660001b81600081518110610c3957610c39611f75565b6020908102919091010152600061051c7f7462776f726c6400000000000000000053797374656d526567697374727900008383630100080160dd1b610f4a565b6000610c8760706010611f62565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b60606000610cfd61119e565b9050306001600160a01b03821603610d2257610d1a8585856111dd565b915050610363565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790610d6b90889088908890600401611fc7565b600060405180830381865afa158015610d88573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610d1a9190810190611ff3565b509392505050565b604080516002808252606082018352600092602083019080368337019050509050836001600160a01b031660001b81600081518110610df957610df9611f75565b602002602001018181525050826001600160a01b031660001b81600181518110610e2557610e25611f75565b602002602001018181525050610e688582600085604051602001610e4b91815260200190565b60408051601f19818403018152919052630100080160dd1b611217565b5050505050565b600080610e7b30610bf4565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f50757070657452656769737472790000000000000000000000000000000000006030820152919250600091610eff9101604051602081830303815290604052610ef9906120a0565b8361129a565b90506001600160a01b0381166102cf576040517f9434f7e1000000000000000000000000000000000000000000000000000000008152306004820152602481018390526044016103c6565b600080610f5561119e565b9050306001600160a01b03821603610f7b57610f7386868686611317565b91505061051c565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610fc69089908990899089906004016120c7565b602060405180830381865afa158015610fe3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f7391906120f6565b6001600160a01b03811661105c7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611344565b6001600160a01b0316146103db57611073826113e0565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016103c692919061210f565b60408051600080825260208201835291810183905290610824908490839060608201610e4b565b60408051600180825281830190925260009160208083019080368337019050509050826001600160a01b031660001b8160008151811061111157611111611f75565b60200260200101818152505061078d8482600085604051602001610e4b91815260200190565b6040805160008082526020820190925260006111947f7462776f726c640000000000000000005472616e73616374696f6e436f6e746583837e14010014000000000000000000000000000000000000000000000000000000610f4a565b60601c9392505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806111d8573391505090565b919050565b606061051c6111ed85858561150e565b6000611212856111fd898961158e565b9060ff166028026038011c64ffffffffff1690565b6115a1565b600061122161119e565b9050306001600160a01b038216036112455761124086868686866115c4565b611292565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610a1a908990899089908990899060040161213a565b505050505050565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106112d3576112d3611f75565b6020908102919091010152600061130b8583837e14010014000000000000000000000000000000000000000000000000000000610f4a565b60601c95945050505050565b6000610aeb61132686866115d9565b60ff858116601b0360080285901c1661133f858761162f565b611660565b60408051600180825281830190925260009182919060208083019080368337019050509050828160008151811061137d5761137d611f75565b602090810291909101015260006113d57f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e14010014000000000000000000000000000000000000000000000000000000610f4a565b60601c949350505050565b606081601081901b60006113f3836116b1565b9050827fffffffffffffffffffffffffffff00000000000000000000000000000000000083161561144e576114497fffffffffffffffffffffffffffff00000000000000000000000000000000000084166116c8565b611485565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff198316156114ac576114a7836116c8565b6114e3565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016114f593929190612181565b6040516020818303038152906040529350505050919050565b6000838360405160200161152392919061220f565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b600061036361159d848461174e565b5490565b60405160208101601f19603f8484010116604052828252610db0858585846117a4565b610e6885856115d3848761162f565b85611870565b600082826040516020016115ee92919061220f565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015610db05761165660ff601b83900360080287901c1683611f62565b9150600101611634565b600060208210611686576020820484019350602082816116825761168261224b565b0691505b508254600882021b602082900380841115610db0576001850154600882021c82179150509392505050565b60006116bf60706010611f62565b9190911b919050565b606060005b601081101561171e576fffffffffffffffffffffffffffffffff198316600882021b7fff00000000000000000000000000000000000000000000000000000000000000161561171e576001016116cd565b604080516fffffffffffffffffffffffffffffffff1985166020820152815160309091019091528181528061051c565b6000828260405160200161176392919061220f565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b821561182b57602083106117ce576020830484019350602083816117ca576117ca61224b565b0692505b821561182b5760208390036000818410156117f15750600019600884021c6117fb565b50600019600882021c5b8554600886021b81845116821982161784525081841161181c57505061078d565b50600194909401939182900391015b5b6020821061184d5783548152600190930192601f199091019060200161182c565b811561078d576000600019600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036118fa57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516118ed93929190612261565b60405180910390a261078d565b600061190685856115d9565b9050600061191386611b0b565b905060005b81518110156119e857600082828151811061193557611935611f75565b602002602001015190506119616004826affffffffffffffffffffff1916611b9490919063ffffffff16565b156119df576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906119ac908b908b908b908b90600401612294565b600060405180830381600087803b1580156119c657600080fd5b505af11580156119da573d6000803e3d6000fd5b505050505b50600101611918565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be868686604051611a1d93929190612261565b60405180910390a2611a38828565ffffffffffff1685611bb2565b60005b8151811015610679576000828281518110611a5857611a58611f75565b60200260200101519050611a846008826affffffffffffffffffffff1916611b9490919063ffffffff16565b15611b02576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190611acf908b908b908b908b90600401612294565b600060405180830381600087803b158015611ae957600080fd5b505af1158015611afd573d6000803e3d6000fd5b505050505b50600101611a3b565b60408051600180825281830190925260609160009190602080830190803683370190505090508281600081518110611b4557611b45611f75565b60209081029190910101526000611b7d7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836111dd565b905061051c611b8f8260008451611bc8565b611c56565b60008160ff1682611ba58560581c90565b1660ff1614905092915050565b61082483838351611bc38560200190565b611c67565b600081831180611bd85750835182115b15611c15578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103c6939291906122cd565b60208401611c238482611f62565b90506000611c3185856122f2565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b606060006103638360156000611d26565b8215611ce15760208310611c9157602083048401935060208381611c8d57611c8d61224b565b0692505b8215611ce15760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611cd257505061078d565b50600194909401939182900391015b5b60208210611d035780518455600190930192601f1990910190602001611ce2565b811561078d576000600019600884021c8554835182191691161785555050505050565b60606000611d348560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281611d5a57611d5a61224b565b04905060405193506020840160208202810160405281855260005b82811015611d95578451871c825293870193602090910190600101611d75565b50505050509392505050565b600060208284031215611db357600080fd5b81357fffffffff000000000000000000000000000000000000000000000000000000008116811461036357600080fd5b60005b83811015611dfe578181015183820152602001611de6565b50506000910152565b60008151808452611e1f816020860160208601611de3565b601f01601f19169290920160200192915050565b6020815260006103636020830184611e07565b80356001600160a01b03811681146111d857600080fd5b60008060408385031215611e7057600080fd5b611e7983611e46565b946020939093013593505050565b600080600060608486031215611e9c57600080fd5b611ea584611e46565b9250611eb360208501611e46565b9150604084013590509250925092565b600060208284031215611ed557600080fd5b61036382611e46565b60008060408385031215611ef157600080fd5b611efa83611e46565b9150611f0860208401611e46565b90509250929050565b634e487b7160e01b600052604160045260246000fd5b848152836020820152826040820152608060608201526000610be06080830184611e07565b634e487b7160e01b600052601160045260246000fd5b808201808211156102cf576102cf611f4c565b634e487b7160e01b600052603260045260246000fd5b60008151808452602080850194506020840160005b83811015611fbc57815187529582019590820190600101611fa0565b509495945050505050565b838152606060208201526000611fe06060830185611f8b565b905060ff83166040830152949350505050565b60006020828403121561200557600080fd5b815167ffffffffffffffff8082111561201d57600080fd5b818401915084601f83011261203157600080fd5b81518181111561204357612043611f11565b604051601f8201601f19908116603f0116810190838211818310171561206b5761206b611f11565b8160405282815287602084870101111561208457600080fd5b612095836020830160208801611de3565b979650505050505050565b805160208083015191908110156120c1576000198160200360031b1b821691505b50919050565b8481526080602082015260006120e06080830186611f8b565b60ff949094166040830152506060015292915050565b60006020828403121561210857600080fd5b5051919050565b6040815260006121226040830185611e07565b90506001600160a01b03831660208301529392505050565b85815260a06020820152600061215360a0830187611f8b565b60ff86166040840152828103606084015261216e8186611e07565b9150508260808301529695505050505050565b7fffff0000000000000000000000000000000000000000000000000000000000008416815260007f3a0000000000000000000000000000000000000000000000000000000000000080600284015284516121e2816003860160208901611de3565b808401905081600382015284519150612202826004830160208801611de3565b0160040195945050505050565b8281526000602080830184516020860160005b8281101561223e57815184529284019290840190600101612222565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b6060815260006122746060830186611f8b565b65ffffffffffff851660208401528281036040840152610be08185611e07565b8481526080602082015260006122ad6080830186611f8b565b65ffffffffffff8516604084015282810360608401526120958185611e07565b6060815260006122e06060830186611e07565b60208301949094525060400152919050565b818103818111156102cf576102cf611f4c56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"1122:1793:129:-:0;;;;;578:4:53;534:49;;1263:36:129;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1215:85:129;;;1122:1793;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561001057600080fd5b506004361061007d5760003560e01c806345ec93541161005b57806345ec9354146100df5780637c5b0335146100f25780639081c75814610105578063e1af802c1461010d57600080fd5b806301ffc9a714610082578063119df25f146100aa57806313861fb5146100ca575b600080fd5b610095610090366004612dbf565b610115565b60405190151581526020015b60405180910390f35b6100b26101fa565b6040516001600160a01b0390911681526020016100a1565b6100dd6100d8366004612e99565b610209565b005b604051601f1936013581526020016100a1565b6100dd610100366004612e99565b61075c565b6100b261078e565b6100b2610798565b60007fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c800000000000000000000000000000000000000000000000000000000014806101a857507fffffffff0000000000000000000000000000000000000000000000000000000082167f255f267f00000000000000000000000000000000000000000000000000000000145b806101f457507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60006102046107a2565b905090565b6102337f0000000000000000000000000000000000000000000000000000000000000000826107d4565b6000808280602001905181019061024a9190612f8d565b90925090507f9a8d9ccdcfd28f8a8f8f9a8c000000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff198316016102d9576040517f0f31c63c00000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b60006102e3610798565b90506000807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316838660405160240161034e9291906001600160a01b0392909216825271ffffffffffffffffffffffffffffffffffff1916602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c200000000000000000000000000000000000000000000000000000000179052516103b19190613065565b600060405180830381855af49150503d80600081146103ec576040519150601f19603f3d011682016040523d82523d6000602084013e6103f1565b606091505b5091509150816104045761040481610819565b61041661041086610821565b85610853565b6000610421866108f5565b9050600061042f8583610942565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601089901c16176001600160a01b03861663ef5d6bbb826104906101fa565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b03166024820152604401600060405180830381600087803b1580156104ef57600080fd5b505af1158015610503573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f45524332305265676973747279000000000000000000000000000000000000006030820152610585935001905060405160208183030381529060405261058090613081565b610c40565b6106d2576040517f6e7300000000000000000000000000000000000000000000000000000000000060208201527f65726332302d707570706574000000000000000000000000000000000000000060228201526001600160a01b0387169063b29e40899060300160405160208183030381529060405261060490613081565b6040518263ffffffff1660e01b815260040161062291815260200190565b600060405180830381600087803b15801561063c57600080fd5b505af1158015610650573d6000803e3d6000fd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f455243323052656769737472790000000000000000000000000000000000000060308201526106d293500190506040516020818303038152906040526106cd90613081565b610ccd565b60408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f45524332305265676973747279000000000000000000000000000000000000006030820152610751910160405160208183030381529060405261074a90613081565b8284610d19565b505050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6000610204610dd9565b6000610204610de3565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806107d15750335b90565b6107de8282610ded565b15610815576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b805160208201fd5b60006101f4613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610e07565b60006108a282600001516040805160f89290921b7fff00000000000000000000000000000000000000000000000000000000000000166020830152805160018184030181526021909201905290565b905060006108b883602001518460400151610e8d565b905060006108ce84602001518560400151610eaa565b6040805160008152602081019091529091506108ed8682868686610ed6565b505050505050565b60006101f47f7379000000000000000000000000000000000000000000000000000000000000837f455243323053797374656d000000000000000000000000000000000000000000610e07565b604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f466163746f72790000000000000000000000000000000000000000000000000060308201526000916001600160a01b03851691633ae7af0891016040516020818303038152906040526109e590613081565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610a829291906004016130d1565b6000604051808303816000875af1158015610aa1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610ac991908101906130ea565b806020019051810190610adc9190613133565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610bbf90613081565b604080516000815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610c089291906024810161315c565b600060405180830381600087803b158015610c2257600080fd5b505af1158015610c36573d6000803e3d6000fd5b5050505092915050565b604080516001808252818301909252600091829190602080830190803683370190505090508281600081518110610c7957610c7961317b565b60209081029190910101526000610cb97f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f8b565b9050610cc58160f81c90565b949350505050565b610d16817e14010014000000000000000000000000000000000000000000000000000000610cf9611048565b610d016110c0565b610d096110fa565b610d1161117f565b6111f6565b50565b604080516001808252818301909252600091602080830190803683370190505090508281600081518110610d4f57610d4f61317b565b602002602001018181525050610dd38482600085604051602001610d9e919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e140100140000000000000000000000000000000000000000000000000000006112b0565b50505050565b6000610204611326565b600061020461138d565b6000610e008383805190602001206113cc565b9392505050565b6000610e15607060106131a7565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b8151815160009181810160389190911b1760609190911b17610e00565b60608282604051602001610ebf9291906131ba565b604051602081830303815290604052905092915050565b6000610ee061138d565b9050306001600160a01b03821603610f0457610eff8686868686611486565b6108ed565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90610f519089908990899089908990600401613225565b600060405180830381600087803b158015610f6b57600080fd5b505af1158015610f7f573d6000803e3d6000fd5b50505050505050505050565b600080610f9661138d565b9050306001600160a01b03821603610fbc57610fb4868686866114a3565b915050610cc5565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990611007908990899089908990600401613276565b602060405180830381865afa158015611024573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fb491906132a5565b60408051600180825281830190925260009182919060208083019080368337019050509050605f816000815181106110825761108261317b565b602002602001019060c581111561109b5761109b6132be565b908160c58111156110ae576110ae6132be565b9052506110ba816114d0565b91505090565b604080516001808252818301909252600091829190602080830190803683370190505090506061816000815181106110825761108261317b565b604080516001808252818301909252606091816020015b60608152602001906001900390816111115790505090506040518060400160405280600b81526020017f6e616d6573706163654964000000000000000000000000000000000000000000815250816000815181106111715761117161317b565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816111965790505090506040518060400160405280600c81526020017f746f6b656e416464726573730000000000000000000000000000000000000000815250816000815181106111715761117161317b565b600061120061138d565b9050306001600160a01b038216036112255761122087878787878761168b565b6112a7565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990611274908a908a908a908a908a908a9060040161332e565b600060405180830381600087803b15801561128e57600080fd5b505af11580156112a2573d6000803e3d6000fd5b505050505b50505050505050565b60006112ba61138d565b9050306001600160a01b038216036112d957610eff8686868686611ae1565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610f519089908990899089908990600401613378565b6040805160008082526020820190925260006113837f7462776f726c640000000000000000005472616e73616374696f6e436f6e746583837e14010014000000000000000000000000000000000000000000000000000000610f8b565b60601c9392505050565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175546000906001600160a01b0316806113c7573391505090565b919050565b60408051600280825260608201835260009283929190602083019080368337019050509050836001600160a01b031660001b816000815181106114115761141161317b565b60200260200101818152505082816001815181106114315761143161317b565b602090810291909101015260006114717f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610f8b565b905061147d8160f81c90565b95945050505050565b61149c85858585856114978b611af6565b611b7b565b5050505050565b600061147d6114b28686611eb4565b60ff858116601b0360080285901c166114cb8587611f0a565b611f43565b6000601c825111156114fa578151604051635318beb960e01b81526004016102d091815260200190565b60008080805b85518110156115d557600061153e8783815181106115205761152061317b565b602002602001015160c5811115611539576115396132be565b611f94565b9050806000036115535760019092019161158b565b821561158b576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106115ac576115ac61317b565b602002602001015160c58111156115c5576115c56132be565b901b949094179350600101611500565b5060058111156115fb57604051635318beb960e01b8152600481018290526024016102d0565b8451819003600861160e600260206133bf565b61161891906133d2565b83901b939093179260086001611630600260206133bf565b61163a91906133bf565b61164491906133d2565b81901b9390931792600860018061165d600260206133bf565b61166791906133bf565b61167191906133bf565b61167b91906133d2565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061170457507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561176557613a3160f11b868760405160200161172391815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102d09392916004016133e9565b61176e85611ff4565b61177984600161223b565b61178483600061223b565b60e084901c60e885901c0160ff168251146117e45760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b60e085901c60e886901c0160ff168151146118445760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146118bc5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b6118c5856123d7565b6118ce846123d7565b14611920576118dc856123d7565b6118e5846123d7565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b61192985612409565b61193284612409565b146119845761194085612409565b61194984612409565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b60005b611990866123d7565b811015611a26576119b56119a48583612426565b60c5811115611539576115396132be565b6008601b8390030287901c60ff1614611a1e576008601b8290030286901c60ff166119e36119a48684612426565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102d0565b600101611987565b50611a3086612447565b15611a8a578586604051602001611a4991815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102d092916004016130d1565b611ad68686868686604051602001611aa2919061342a565b60405160208183030381529060405286604051602001611ac2919061342a565b6040516020818303038152906040526124c0565b6108ed866001612597565b61149c8585611af08487611f0a565b8561263d565b60007f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611b4557507e60030220202000000000000000000000000000000000000000000000000000919050565b6101f4611b727f746273746f72650000000000000000005461626c657300000000000000000000846128d8565b60206000611f43565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611c0757857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611bfa949392919061343d565b60405180910390a26108ed565b6000611c12876128f4565b905060005b8151811015611ceb576000828281518110611c3457611c3461317b565b60200260200101519050611c606001826affffffffffffffffffffff191661297d90919063ffffffff16565b15611ce2576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611caf908c908c908c908c908c908c90600401613487565b600060405180830381600087803b158015611cc957600080fd5b505af1158015611cdd573d6000803e3d6000fd5b505050505b50600101611c17565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611d22949392919061343d565b60405180910390a26000611d368888611eb4565b90506000602087019050611d4e82600089518461299b565b6000611d5985612409565b1115611ddd576000611d6b8a8a612a5a565b878155905060208601915060008060005b611d8588612409565b8160ff161015611dd857611d9a8d8d83612ab0565b9250611db58a8260ff166028026038011c64ffffffffff1690565b9150611dc4836000848861299b565b611dce82866131a7565b9450600101611d7c565b505050505b60005b8351811015610f7f576000848281518110611dfd57611dfd61317b565b60200260200101519050611e296002826affffffffffffffffffffff191661297d90919063ffffffff16565b15611eab576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611e78908e908e908e908e908e908e90600401613487565b600060405180830381600087803b158015611e9257600080fd5b505af1158015611ea6573d6000803e3d6000fd5b505050505b50600101611de0565b60008282604051602001611ec99291906134e0565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b600080805b8360ff16811015611f3b57611f3160ff601b83900360080287901c16836131a7565b9150600101611f0f565b509392505050565b600060208210611f6957602082048401935060208281611f6557611f6561351c565b0691505b508254600882021b602082900380841115611f3b576001850154600882021c82179150509392505050565b6000808260c5811115611fa957611fa96132be565b60ff1690506061811015611fc357601f1660010192915050565b60618360c5811115611fd757611fd76132be565b03611fe55750601492915050565b50600092915050565b50919050565b8061202b576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b600061203682612409565b9050600581111561207d576040517f7f2372c300000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016102d0565b6000612088836123d7565b9050600061209683836131a7565b9050601c8111156120dd576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016102d0565b6000805b838110156121885760ff601b82900360080287901c166000819003612135576040517f01f2a07c000000000000000000000000000000000000000000000000000000008152600481018390526024016102d0565b6020811115612173576040517f24c85d58000000000000000000000000000000000000000000000000000000008152600481018390526024016102d0565b61217d81846131a7565b9250506001016120e1565b5061219285612b30565b81146121de576121a185612b30565b6040517f9365944a0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016102d0565b825b601c8110156108ed5760ff601b82900360080287901c168015612232576040517fbb68821a000000000000000000000000000000000000000000000000000000008152600481018390526024016102d0565b506001016121e0565b80158015612247575081155b1561226857604051635318beb960e01b8152600060048201526024016102d0565b600061227383612409565b9050600581111561229a57604051635318beb960e01b8152600481018290526024016102d0565b60006122a5846123d7565b905060006122b383836131a7565b9050601c8111156122da57604051635318beb960e01b8152600481018290526024016102d0565b6000805b838110156123465760006122f56119a48984612426565b905080600003612331576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61233b81846131a7565b9250506001016122de565b5061235086612b30565b811461237b5761235f86612b30565b604051635318beb960e01b81526004016102d091815260200190565b825b828110156112a75760006123946119a48984612426565b905080156123ce576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161237d565b6000600860016123e9600260206133bf565b6123f391906133bf565b6123fd91906133d2565b8260ff911c1692915050565b6000600860018061241c600260206133bf565b6123e991906133bf565b6000601b8290036008028360ff911c1660c5811115610e0057610e006132be565b6040805160018082528183019092526000918291906020808301908036833701905050905082816000815181106124805761248061317b565b60209081029190910101526000610cb97f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6114a3565b6040805160208101879052808201869052606080820186905282518083039091018152608090910190915260006124f78484610e8d565b905060006125058585610eaa565b6040805160018082528183019092529192506000919060208083019080368337019050509050898160008151811061253f5761253f61317b565b6020908102919091010152610f7f7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611b7b565b6040805160018082528183019092526000916020808301908036833701905050905082816000815181106125cd576125cd61317b565b6020026020010181815250506126387f746273746f72650000000000000000005265736f75726365496473000000000060001b8260008560405160200161261b91151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b611ae1565b505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036126c757837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516126ba93929190613532565b60405180910390a2610dd3565b60006126d38585611eb4565b905060006126e0866128f4565b905060005b81518110156127b55760008282815181106127025761270261317b565b6020026020010151905061272e6004826affffffffffffffffffffff191661297d90919063ffffffff16565b156127ac576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612779908b908b908b908b9060040161356f565b600060405180830381600087803b15801561279357600080fd5b505af11580156127a7573d6000803e3d6000fd5b505050505b506001016126e5565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516127ea93929190613532565b60405180910390a2612805828565ffffffffffff1685612b53565b60005b81518110156112a75760008282815181106128255761282561317b565b602002602001015190506128516008826affffffffffffffffffffff191661297d90919063ffffffff16565b156128cf576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061289c908b908b908b908b9060040161356f565b600060405180830381600087803b1580156128b657600080fd5b505af11580156128ca573d6000803e3d6000fd5b505050505b50600101612808565b6040805160208101849052908101829052600090606001611ec9565b6040805160018082528183019092526060916000919060208083019080368337019050509050828160008151811061292e5761292e61317b565b602090810291909101015260006129667f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612b69565b9050610cc56129788260008451612ba3565b612c31565b60008160ff168261298e8560581c90565b1660ff1614905092915050565b8215612a1557602083106129c5576020830484019350602083816129c1576129c161351c565b0692505b8215612a155760208390036000600019600885021c1990506008850281811c91508351811c9050811987541682821617875550818411612a06575050610dd3565b50600194909401939182900391015b5b60208210612a375780518455600190930192601f1990910190602001612a16565b8115610dd3576000600019600884021c8554835182191691161785555050505050565b60008282604051602001612a6f9291906134e0565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b60008383604051602001612ac59291906134e0565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f1181860001c90509392505050565b60006008612b40600260206133bf565b612b4a91906133d2565b9190911c919050565b61263883838351612b648560200190565b61299b565b6060610cc5612b79858585612ab0565b6000612b9e85612b898989612c42565b9060ff166028026038011c64ffffffffff1690565b612c55565b600081831180612bb35750835182115b15612bf0578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102d0939291906135a8565b60208401612bfe84826131a7565b90506000612c0c85856133bf565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60606000610e008360156000612c78565b6000610e00612c518484612a5a565b5490565b60405160208101601f19603f8484010116604052828252611f3b85858584612cf3565b60606000612c868560801c90565b90506fffffffffffffffffffffffffffffffff85166000858281612cac57612cac61351c565b04905060405193506020840160208202810160405281855260005b82811015612ce7578451871c825293870193602090910190600101612cc7565b50505050509392505050565b8215612d7a5760208310612d1d57602083048401935060208381612d1957612d1961351c565b0692505b8215612d7a576020839003600081841015612d405750600019600884021c612d4a565b50600019600882021c5b8554600886021b818451168219821617845250818411612d6b575050610dd3565b50600194909401939182900391015b5b60208210612d9c5783548152600190930192601f1990910190602001612d7b565b8115610dd3576000600019600884021c8251865482191691161782525050505050565b600060208284031215612dd157600080fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610e0057600080fd5b634e487b7160e01b600052604160045260246000fd5b6040516060810167ffffffffffffffff81118282101715612e3a57612e3a612e01565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612e6957612e69612e01565b604052919050565b600067ffffffffffffffff821115612e8b57612e8b612e01565b50601f01601f191660200190565b600060208284031215612eab57600080fd5b813567ffffffffffffffff811115612ec257600080fd5b8201601f81018413612ed357600080fd5b8035612ee6612ee182612e71565b612e40565b818152856020838501011115612efb57600080fd5b81602084016020830137600091810160200191909152949350505050565b60005b83811015612f34578181015183820152602001612f1c565b50506000910152565b6000612f4b612ee184612e71565b9050828152838383011115612f5f57600080fd5b610e00836020830184612f19565b600082601f830112612f7e57600080fd5b610e0083835160208501612f3d565b60008060408385031215612fa057600080fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612fc357600080fd5b602084015190925067ffffffffffffffff80821115612fe157600080fd5b9084019060608287031215612ff557600080fd5b612ffd612e17565b825160ff8116811461300e57600080fd5b815260208301518281111561302257600080fd5b61302e88828601612f6d565b60208301525060408301518281111561304657600080fd5b61305288828601612f6d565b6040830152508093505050509250929050565b60008251613077818460208701612f19565b9190910192915050565b80516020808301519190811015611fee5760001960209190910360031b1b16919050565b600081518084526130bd816020860160208601612f19565b601f01601f19169290920160200192915050565b828152604060208201526000610cc560408301846130a5565b6000602082840312156130fc57600080fd5b815167ffffffffffffffff81111561311357600080fd5b8201601f8101841361312457600080fd5b610cc584825160208401612f3d565b60006020828403121561314557600080fd5b81516001600160a01b0381168114610e0057600080fd5b83815282602082015260606040820152600061147d60608301846130a5565b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052601160045260246000fd5b808201808211156101f4576101f4613191565b600083516131cc818460208801612f19565b8351908301906131e0818360208801612f19565b01949350505050565b60008151808452602080850194506020840160005b8381101561321a578151875295820195908201906001016131fe565b509495945050505050565b85815260a06020820152600061323e60a08301876131e9565b828103604084015261325081876130a5565b9050846060840152828103608084015261326a81856130a5565b98975050505050505050565b84815260806020820152600061328f60808301866131e9565b60ff949094166040830152506060015292915050565b6000602082840312156132b757600080fd5b5051919050565b634e487b7160e01b600052602160045260246000fd5b60008282518085526020808601955060208260051b8401016020860160005b8481101561332157601f1986840301895261330f8383516130a5565b988401989250908301906001016132f3565b5090979650505050505050565b86815285602082015284604082015283606082015260c06080820152600061335960c08301856132d4565b82810360a084015261336b81856132d4565b9998505050505050505050565b85815260a06020820152600061339160a08301876131e9565b60ff8616604084015282810360608401526133ac81866130a5565b9150508260808301529695505050505050565b818103818111156101f4576101f4613191565b80820281158282048414176101f4576101f4613191565b7fffff0000000000000000000000000000000000000000000000000000000000008416815282602082015260606040820152600061147d60608301846130a5565b602081526000610e0060208301846132d4565b60808152600061345060808301876131e9565b828103602084015261346281876130a5565b9050846040840152828103606084015261347c81856130a5565b979650505050505050565b86815260c0602082015260006134a060c08301886131e9565b82810360408401526134b281886130a5565b905085606084015282810360808401526134cc81866130a5565b9150508260a0830152979650505050505050565b8281526000602080830184516020860160005b8281101561350f578151845292840192908401906001016134f3565b5091979650505050505050565b634e487b7160e01b600052601260045260246000fd5b60608152600061354560608301866131e9565b65ffffffffffff85166020840152828103604084015261356581856130a5565b9695505050505050565b84815260806020820152600061358860808301866131e9565b65ffffffffffff85166040840152828103606084015261347c81856130a5565b6060815260006135bb60608301866130a5565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"1122:1793:129:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;918:308:53;;;;;;:::i;:::-;;:::i;:::-;;;516:14:208;;509:22;491:41;;479:2;464:18;918:308:53;;;;;;;;1274:113:58;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:208;;;689:74;;677:2;662:18;1274:113:58;543:226:208;1305:1507:129;;;;;;:::i;:::-;;:::i;:::-;;1980:110:58;;;-1:-1:-1;;4330:14:58;4326:25;4313:39;2632:25:208;;2620:2;2605:18;1980:110:58;2486:177:208;2816:97:129;;;;;;:::i;:::-;;:::i;1610:129:58:-;;;:::i;2306:98::-;;;:::i;918:308:53:-;1042:4;1067:40;;;1082:25;1067:40;;:104;;-1:-1:-1;1117:54:53;;;1132:39;1117:54;1067:104;:154;;;-1:-1:-1;1181:40:53;;;1196:25;1181:40;1067:154;1054:167;918:308;-1:-1:-1;;918:308:53:o;1274:113:58:-;1317:14;1346:36;:34;:36::i;:::-;1339:43;;1274:113;:::o;1305:1507:129:-;1427:40;1447:6;1455:11;1427:19;:40::i;:::-;1494:17;1513:33;1561:11;1550:53;;;;;;;;;;;;:::i;:::-;1493:110;;-1:-1:-1;1493:110:129;-1:-1:-1;1676:29:129;-1:-1:-1;;1676:29:129;;;1672:96;;1722:39;;;;;-1:-1:-1;;4839:79:208;;1722:39:129;;;4821:98:208;4794:18;;1722:39:129;;;;;;;;1672:96;1818:16;1848:8;:6;:8::i;:::-;1818:39;;1864:12;1878:23;1905:19;-1:-1:-1;;;;;1905:32:129;2002:5;2009:9;1945:75;;;;;;;;-1:-1:-1;;;;;5142:55:208;;;;5124:74;;-1:-1:-1;;5234:79:208;5229:2;5214:18;;5207:107;5112:2;5097:18;;4930:390;1945:75:129;;;;-1:-1:-1;;1945:75:129;;;;;;;;;;;;;;;;;;;;1905:121;;;1945:75;1905:121;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1863:163;;;;2037:7;2032:41;;2046:27;2062:10;2046:15;:27::i;:::-;2111:56;2129:27;2146:9;2129:16;:27::i;:::-;2158:8;2111:17;:56::i;:::-;2219:24;2246:25;2261:9;2246:14;:25::i;:::-;2219:52;;2277:14;2294:34;2307:5;2314:13;2294:12;:34::i;:::-;2277:51;-1:-1:-1;1531:18:59;1554:33;385:5:16;1554:33:59;;;;1523:65;-1:-1:-1;;;;;2468:23:129;;;1523:65:59;2505:12:129;:10;:12::i;:::-;2468:50;;;;;;;;;;;;;5822:25:208;;;;-1:-1:-1;;;;;5883:55:208;5863:18;;;5856:83;5795:18;;2468:50:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;803:76:135;;;-1:-1:-1;;;803:76:135;;;6133:92:208;836:16:135;6241:11:208;;;6234:100;854:24:135;6350:12:208;;;6343:101;2577:46:129;;-1:-1:-1;6460:12:208;;-1:-1:-1;803:76:135;;;;;;;;;;;;795:85;;;:::i;:::-;2577:21:129;:46::i;:::-;2572:167;;426:54:135;;443:18;426:54;;;7000:92:208;463:16:135;7108:11:208;;;7101:100;-1:-1:-1;;;;;2633:23:129;;;;;7217:12:208;;426:54:135;;;;;;;;;;;;418:63;;;:::i;:::-;2633:44:129;;;;;;;;;;;;;2632:25:208;;2620:2;2605:18;;2486:177;2633:44:129;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;803:76:135;;;-1:-1:-1;;;803:76:135;;;6133:92:208;836:16:135;6241:11:208;;;6234:100;854:24:135;6350:12:208;;;6343:101;2685:47:129;;-1:-1:-1;6460:12:208;;-1:-1:-1;803:76:135;;;;;;;;;;;;795:85;;;:::i;:::-;2685:22:129;:47::i;:::-;803:76:135;;;-1:-1:-1;;;803:76:135;;;6133:92:208;836:16:135;6241:11:208;;;6234:100;854:24:135;6350:12:208;;;6343:101;2744:63:129;;6460:12:208;803:76:135;;;;;;;;;;;;795:85;;;:::i;:::-;2787:11:129;2800:6;2744:17;:63::i;:::-;1355:1457;;;;;;;;1305:1507;:::o;2816:97::-;2876:32;;;;;;;;;;;;;;1610:129:58;1660:14;1691:43;:41;:43::i;2306:98::-;2345:7;2367:32;:30;:32::i;3173:383::-;3459:34;3463:14;3459:34;3446:48;3440:4;3436:59;;3506:45;;-1:-1:-1;3541:10:58;3506:45;3173:383;:::o;1924:194:53:-;2026:39;2038:13;2053:11;2026;:39::i;:::-;2022:92;;;2082:25;;;;;;;;;;;;;;2022:92;1924:194;;:::o;501:217:96:-;704:6;698:13;691:4;683:6;679:17;672:40;1047:181:141;1106:10;1129:96;-1:-1:-1;;;1192:9:141;1209:13;1129:25;:96::i;15003:443:138:-;15085:24;15112:29;15125:6;:15;;;18088:26;;;10248:3:208;10244:16;;;;10262:66;10240:89;18088:26:138;;;10228:102:208;18088:26:138;;;;;;;;;10346:11:208;;;;18088:26:138;;;18000:119;15112:29;15085:56;;15148:29;15180:41;15194:6;:11;;;15207:6;:13;;;15180;:41::i;:::-;15148:73;;15227:25;15255:41;15269:6;:11;;;15282:6;:13;;;15255;:41::i;:::-;15332:16;;;15303:26;15332:16;;;;;;;;15227:69;;-1:-1:-1;15355:86:138;15377:8;15332:16;15398:11;15411:15;15227:69;15355:21;:86::i;:::-;15079:367;;;;15003:443;;:::o;1230:184:141:-;1287:10;1310:101;1346:15;1374:9;1391:17;1310:25;:101::i;799:322:179:-;740:64:178;;;757:15;740:64;;;6133:92:208;405:17:178;6241:11:208;;;6234:100;785:18:178;6350:12:208;;;6343:101;869:14:179;;-1:-1:-1;;;;;914:10:179;;;;;6460:12:208;740:64:178;;;;;;;;;;;;732:73;;;:::i;:::-;941:60:179;;;;;2632:25:208;;;2605:18;;941:60:179;;;-1:-1:-1;;941:60:179;;;;;;;;;;;;;;;;;;;;914:88;;941:60;914:88;;;;;;;;;941:60;914:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;914:88:179;;;;;;;;;;;;:::i;:::-;898:123;;;;;;;;;;;;:::i;:::-;889:132;-1:-1:-1;;;;;;1025:33:179;;;816:18:99;578:36:59;2820:46;;2819:74;603:67:178;;;620:15;603:67;;;6133:92:208;405:17:178;6241:11:208;;;6234:100;648:21:178;6350:12:208;;;6343:101;6460:12;603:67:178;;;;;;;;;;;;595:76;;;:::i;:::-;1105:12:179;;;1115:1;1105:12;;;;;;;;;1025:93;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;799:322;;;;:::o;3232:315:27:-;3345:16;;;3359:1;3345:16;;;;;;;;;3297:11;;;;3345:16;;;;;;;;;;;;-1:-1:-1;3345:16:27;3316:45;;3400:10;3367:9;3377:1;3367:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3418:13;3434:64;1076:66;3471:9;3418:13;-1:-1:-1;;;3434:26:27;:64::i;:::-;3418:80;;3512:29;3533:5;3520:20;;7897:5;7811:97;3512:29;3504:38;3232:315;-1:-1:-1;;;;3232:315:27:o;2723:174:139:-;2777:115;2803:8;1147:66;2827:14;:12;:14::i;:::-;2843:16;:14;:16::i;:::-;2861:13;:11;:13::i;:::-;2876:15;:13;:15::i;:::-;2777:25;:115::i;:::-;2723:174;:::o;5451:301::-;5575:16;;;5589:1;5575:16;;;;;;;;;5546:26;;5575:16;;;;;;;;;;;-1:-1:-1;5575:16:139;5546:45;;5630:11;5597:9;5607:1;5597:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5649:98;5676:8;5686:9;5697:1;5718:12;5700:32;;;;;;;9664:2:208;9660:15;;;;9677:66;9656:88;9644:101;;9770:2;9761:12;;9515:264;5700:32:139;;;;-1:-1:-1;;5700:32:139;;;;;;;;;1147:66;5649:26;:98::i;:::-;5540:212;5451:301;;;:::o;3779:126:58:-;3831:14;3862:38;:36;:38::i;4578:97::-;4619:7;4641:29;:27;:29::i;1513:176:53:-;1606:4;1625:59;1646:13;1671:11;1661:22;;;;;;1625:20;:59::i;:::-;1618:66;1513:176;-1:-1:-1;;;1513:176:53:o;980:257:59:-;1067:10;1196:26;438:6;385:5:16;1196:26:59;:::i;:::-;1178:13;;;:45;;385:5:16;1142:31:59;;;;;1123:15;;;:51;:101;;-1:-1:-1;980:257:59;;;;;:::o;18310:334:138:-;18592:18;;18612:20;;18410:29;;2444:5:15;;;834:16;2475:39;;;;2457:58;2556:23;2541:39;;;;2523:58;18570:63:138;2303:344:15;18809:168:138;18897:12;18948:4;18963:6;18924:48;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18917:55;;18809:168;;;;:::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;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;1566:200:139:-;1660:19;;;1677:1;1660:19;;;;;;;;;1613:6;;;;1660:19;;;;;;;;;;;;-1:-1:-1;1660:19:139;1627:52;;1701:18;1685:10;1696:1;1685:13;;;;;;;;:::i;:::-;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;1733:28:139;1750:10;1733:16;:28::i;:::-;1726:35;;;1566:200;:::o;1883:208::-;1981:19;;;1998:1;1981:19;;;;;;;;;1932:6;;;;1981:19;;;;;;;;;;;;-1:-1:-1;1981:19:139;1946:54;;2024:18;2006:12;2019:1;2006:15;;;;;;;;:::i;2225:142::-;2314:15;;;2327:1;2314:15;;;;;;;;;2271:24;;2314:15;;;;;;;;;;;;;;;;;;;;2303:26;;2335:27;;;;;;;;;;;;;;;;;:8;2344:1;2335:11;;;;;;;;:::i;:::-;;;;;;:27;;;;2225:142;:::o;2507:151::-;2602:15;;;2615:1;2602:15;;;;;;;;;2555:26;;2602:15;;;;;;;;;;;;;;;;;;;;2589:28;;2623:30;;;;;;;;;;;;;;;;;:10;2634:1;2623: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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5824:266;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;3299:257:79:-;3410:16;;;3351:22;3410:16;;;;;;;;;3433:13;3449:64;1182:66;3381:45;3433:13;1366:66;3449:26;:64::i;:::-;3527:23;;;3299:257;-1:-1:-1;;;3299:257:79: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;4313:382:72:-;4448:16;;;4462:1;4448:16;;;;;;;;4395;;;;4448;4462:1;4448:16;;;;;;;;;;-1:-1:-1;4448:16:72;4419:45;;4509:13;-1:-1:-1;;;;;4493:31:72;4485:40;;4470:9;4480:1;4470:12;;;;;;;;:::i;:::-;;;;;;:55;;;;;4546:13;4531:9;4541:1;4531:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;4566:13;4582:64;1182:66;4619:9;4566:13;-1:-1:-1;;;4582:26:72;:64::i;:::-;4566:80;;4660:29;4681:5;4668:20;;7897:5:27;7811:97;4660:29:72;4652:38;4313:382;-1:-1:-1;;;;;4313:382:72:o;13982:285:20:-;14168:94;14178:7;14187:8;14197:10;14209:14;14225:11;14238:23;14253:7;14238:14;:23::i;:::-;14168:9;:94::i;:::-;13982:285;;;;;:::o;38022:541::-;38179:7;38316:242;38360:59;38401:7;38410:8;38360:40;:59::i;:::-;38437:31;;;;4479:19:3;:27;537:1:30;4478:44:3;4444:79;;;4431:93;38486:63:20;38525:11;38538:10;38486:38;:63::i;:::-;38316:17;:242::i;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;;;;;;2632:25:208;;2620:2;2605:18;;2486: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;;;;;2632:25:208;;;2605:18;;2664:38:17;2486:177:208;2617:85:17;2802:14;;:30;;;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;3090:41:17;;;3080:51;;;;;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;3147:47:17;;;3137:57;;;;;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1576:38;;;;:::i;:::-;3210:49:17;;;;3200:59;;;;;1247:2059;-1:-1:-1;;;;1247:2059:17:o;8858:2614:20:-;-1:-1:-1;;;9118:7:20;:35;;;;;;:83;;-1:-1:-1;9178:23:20;9157:7;:44;;;;9118:83;9114:209;;;-1:-1:-1;;;9273:7:20;9306;9289:25;;;;;;15783:19:208;;15827:2;15818:12;;15623:213;9289:25:20;;;;-1:-1:-1;;9289:25:20;;;;;;;;;;9218:98;;;;;;;;;;:::i;9114:209::-;9369:22;:11;:20;:22::i;:::-;9432:40;:9;9465:4;9432:18;:40::i;:::-;9478:43;:11;9513:5;9478:20;:43::i;:::-;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9609:8:20;:15;:40;9605:148;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9730:15:20;;9666:80;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;16456:18;;9666:80:20;16309:248:208;9605:148:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9803:10:20;:17;:44;9799:158;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9932:17:20;;9864:86;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;16456:18;;9864:86:20;16309:248:208;9799:158:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10014:50:20;10010:171;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10081:93:20;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;16456:18;;10081:93:20;16309:248:208;10010:171:20;10223:29;:11;:27;:29::i;:::-;10190;:11;:27;:29::i;:::-;:62;10186:225;;10328:29;:11;:27;:29::i;:::-;10367;:11;:27;:29::i;:::-;10269:135;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;16456:18;;10269:135:20;16309:248:208;10186:225:20;10454:30;:11;:28;:30::i;:::-;10420;:11;:28;:30::i;:::-;:64;10416:230;;10561:30;:11;:28;:30::i;:::-;10601;:11;:28;:30::i;:::-;10501:138;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;16456:18;;10501:138:20;16309:248:208;10416:230:20;10743:9;10738:314;10758:29;:11;:27;:29::i;:::-;10754:1;:33;10738:314;;;10832:44;:22;:11;10852:1;10832:19;:22::i;:::-;:42;;;;;;;;:::i;:44::-;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10806:70:20;10802:244;;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10983:44:20;:22;:11;11003:1;10983:19;:22::i;:44::-;10895:142;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;16456:18;;10895:142:20;16309:248:208;10802:244:20;10789:3;;10738:314;;;;11114:31;11137:7;11114:22;:31::i;:::-;11110:140;;;11200:7;11233;11216:25;;;;;;15783:19:208;;15827:2;15818:12;;15623:213;11216:25:20;;;;-1:-1:-1;;11216:25:20;;;;;;;;;;11162:81;;;;;;;;;:::i;11110:140::-;11291:103;11303:7;11312:11;11325:9;11336:11;11360:8;11349:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;11382:10;11371:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;11291:11;:103::i;:::-;11430:37;11453:7;11462:4;11430:22;:37::i;24989:355::-;25161:178;25195:7;25220:8;25250:63;25289:11;25302:10;25250:38;:63::i;:::-;25328:4;25161:16;:178::i;6237:651::-;6304:11;6540:62;;;6536:112;;-1:-1:-1;1343:66:29;;6237:651:20;-1:-1:-1;6237:651:20:o;6536:112::-;6692:183;6738:83;1171:66:29;6812:7:20;6738:40;:83::i;:::-;6841:2;6863:1;6692:17;:183::i;15127:3138::-;15421:23;15400:7;:44;;;15396:198;;15514:7;15498:75;15523:8;15533:10;15545:14;15561:11;15498:75;;;;;;;;;:::i;:::-;;;;;;;;15581:7;;15396:198;15732:22;15757:24;15773:7;15757:15;:24::i;:::-;15732:49;;15792:9;15787:340;15807:5;:12;15803:1;:16;15787:340;;;15834:9;15856:5;15862:1;15856:8;;;;;;;;:::i;:::-;;;;;;;15834:31;;15877:33;343:6:32;15877:4:20;:14;;;;;:33;;;;:::i;:::-;15873:248;;;15922:190;;;;;3404:35:4;;;;;15922:47:20;;:190;;15981:7;;16000:8;;16020:10;;16042:14;;16068:11;;16091;;15922:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15873:248;-1:-1:-1;15821:3:20;;15787:340;;;;16191:7;16175:75;16200:8;16210:10;16222:14;16238:11;16175:75;;;;;;;;;:::i;:::-;;;;;;;;16314:26;16343:59;16384:7;16393:8;16343:40;:59::i;:::-;16314:88;-1:-1:-1;16408:21:20;828:4:14;818:15;;16408:54:20;;16468:149;16506:18;16540:1;16557:10;:17;16597:13;16468;:149::i;:::-;16717:1;16684:30;:11;:28;:30::i;:::-;:34;16680:1174;;;16803:33;16839:66;16887:7;16896:8;16839:47;:66::i;:::-;629:28:19;;;16803:102:20;-1:-1:-1;828:4:14;818:15;;17079:47:20;;17235:27;17270:25;17308:7;17303:545;17321:30;:11;:28;:30::i;:::-;17317:1;:34;;;17303:545;;;17387:63;17429:7;17438:8;17448:1;17387:41;:63::i;:::-;17365:85;-1:-1:-1;17480:25:20;:14;17503:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;17480:25:20;17460:45;;17515:170;17557:19;17596:1;17617:17;17661:13;17515;:170::i;:::-;17695:34;17712:17;17695:34;;:::i;:::-;;-1:-1:-1;17826:3:20;;17303:545;;;;16720:1134;;;16680:1174;17928:9;17923:338;17943:5;:12;17939:1;:16;17923:338;;;17970:9;17992:5;17998:1;17992:8;;;;;;;;:::i;:::-;;;;;;;17970:31;;18013:32;437:6:32;18013:4:20;:14;;;;;:32;;;;:::i;:::-;18009:246;;;18057:189;;;;;3404:35:4;;;;;18057:46:20;;:189;;18115:7;;18134:8;;18154:10;;18176:14;;18202:11;;18225;;18057:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18009:246;-1:-1:-1;17957:3:20;;17923:338;;52539:191;52641:7;52705;52714:8;52688:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;52688:35:20;;;;;;;;;52678:46;;52688:35;52678:46;;;;44145:22;52671:53;;52539:191;-1:-1:-1;;;52539:191:20:o;53556:242::-;53652:7;;;53691:84;53711:10;53707:14;;:1;:14;53691:84;;;53736:32;4431:93:3;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;53736:32:20;;:::i;:::-;;-1:-1:-1;53723:3:20;;53691:84;;;-1:-1:-1;53787:6:20;53556:242;-1:-1:-1;;;53556:242:20:o;8879:812:19:-;8977:14;9013:2;9003:6;:12;8999:112;;9072:2;9063:6;:11;9045:29;;;;9094:2;9084:12;;;;;;:::i;:::-;;;;8999:112;-1:-1:-1;9302:21:19;;9287:12;9275:25;;9271:53;9450:2;:11;;;9532:22;;;9528:159;;;9668:1;9652:14;9648:22;9642:29;9627:12;9612:13;9608:32;9604:68;9596:6;9593:80;9583:90;;8993:698;8879:812;;;;;:::o;3195:520:1:-;3261:7;3274:13;3296:10;3290:17;;;;;;;;:::i;:::-;3274:33;;;;3324:2;3316:5;:10;3312:401;;;3568:2;3560:10;3574:1;3559:16;;;-1:-1:-1;;3195:520:1:o;3312:401::-;3610:18;3596:10;:32;;;;;;;;:::i;:::-;;3592:121;;-1:-1:-1;3643:2:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;-1:-1:-1;3707:1:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;3270:445;3195:520;;;:::o;6774:1658:3:-;6457:45;6837:86;;6879:37;;;;;;;;;;;;;;6837:86;6929:25;6957:30;:11;:28;:30::i;:::-;6929:58;;902:1:30;6997:17:3;:38;6993:155;;;7052:89;;;;;;;;16483:25:208;;;902:1:30;16524:18:208;;;16517:34;16456:18;;7052:89:3;16309:248:208;6993:155:3;7154:24;7181:29;:11;:27;:29::i;:::-;7154:56;-1:-1:-1;7216:23:3;7242:36;7261:17;7154:56;7242:36;:::i;:::-;7216:62;;647:2:30;7288:15:3;:34;7284:140;;;7339:78;;;;;;;;16483:25:208;;;647:2:30;16524:18:208;;;16517:34;16456:18;;7339:78:3;16309:248:208;7284:140:3;7466:25;7502:9;7497:427;7517:16;7513:1;:20;7497:427;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;7545:24;7606:21;;;7602:232;;7646:51;;;;;;;;2632:25:208;;;2605:18;;7646:51:3;2486:177:208;7602:232:3;334:2:30;7716:16:3;:28;7712:122;;;7763:62;;;;;;;;2632:25:208;;;2605:18;;7763:62:3;2486:177:208;7712:122:3;7841:37;7862:16;7841:37;;:::i;:::-;;-1:-1:-1;;7906:3:3;;7497:427;;;;7991:30;:11;:28;:30::i;:::-;7970:17;:51;7966:183;;8092:30;:11;:28;:30::i;:::-;8038:104;;;;;;;;16483:25:208;;;;16524:18;;;16517:34;;;16456:18;;8038:104:3;16309:248:208;7966:183:3;8205:16;8188:240;647:2:30;8223:1:3;:20;8188:240;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;8319:21;;8315:107;;8359:54;;;;;;;;2632:25:208;;;2605:18;;8359:54:3;2486:177:208;8315:107:3;-1:-1:-1;8245:3:3;;8188:240;;5689:1629:17;5796:10;5795:11;:31;;;;-1:-1:-1;6457:45:3;;5810:16:17;5791:80;;;5835:36;;-1:-1:-1;;;5835:36:17;;5869:1;5835:36;;;2632:25:208;2605:18;;5835:36:17;2486:177:208;5791:80:17;5934:25;5962;:6;:23;:25::i;:::-;5934:53;;902:1:30;5997:17:17;:38;5993:103;;;6044:52;;-1:-1:-1;;;6044:52:17;;;;;2632:25:208;;;2605:18;;6044:52:17;2486:177:208;5993:103:17;6103:24;6130;:6;:22;:24::i;:::-;6103:51;-1:-1:-1;6224:23:17;6250:36;6269:17;6103:51;6250:36;:::i;:::-;6224:62;;647:2:30;6296:15:17;:34;6292:97;;;6339:50;;-1:-1:-1;;;6339:50:17;;;;;2632:25:208;;;2605:18;;6339:50:17;2486:177:208;6292:97:17;6450:25;6486:9;6481:313;6501:16;6497:1;:20;6481:313;;;6529:24;6556:39;:17;:6;6571:1;6556:14;:17::i;:39::-;6529:66;;6607:16;6627:1;6607:21;6603:101;;6647:48;;;;;;;;;;;;;;6603:101;6711:37;6732:16;6711:37;;:::i;:::-;;-1:-1:-1;;6776:3:17;;6481:313;;;;6862:25;:6;:23;:25::i;:::-;6841:17;:46;6837:134;;6938:25;:6;:23;:25::i;:::-;6904:60;;-1:-1:-1;;;6904:60:17;;;;;;2632:25:208;;2620:2;2605:18;;2486:177;6837:134:17;7046:16;7029:285;7068:15;7064:1;:19;7029:285;;;7095:24;7122:39;:17;:6;7137:1;7122:14;:17::i;:39::-;7095:66;-1:-1:-1;7173:20:17;;7169:100;;7212:48;;;;;;;;;;;;;;7169:100;-1:-1:-1;7296:3:17;;7029:285;;5135:171:3;5208:7;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;5244:11:3;5223:78;5236:64;;5223:78;;5135:171;-1:-1:-1;;5135:171:3:o;5533:173::-;5607:7;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;3948:206:17:-;4018:10;4108:19;:27;;;4139:1;4107:33;4086:6;4061:82;4078:63;;4061:82;;;;;;;;;:::i;3588:314:27:-;3702:16;;;3716:1;3702:16;;;;;;;;;3654:11;;;;3702:16;;;;;;;;;;;;-1:-1:-1;3702:16:27;3673:45;;3757:10;3724:9;3734:1;3724:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3775:13;3791:62;1076:66;3826:9;3775:13;-1:-1:-1;;;3791:24:27;:62::i;20651:676:29:-;25205:53;;;;;;21683:19:208;;;21718:12;;;21711:28;;;25178:12:29;21755::208;;;21748:28;;;25205:53:29;;;;;;;;;;21792:12:208;;;;25205:53:29;;;20942:29;20974:55;20988:18;21008:20;20974:13;:55::i;:::-;20942:87;;21035:25;21063:55;21077:18;21097:20;21063:13;:55::i;:::-;21154:16;;;21168:1;21154:16;;;;;;;;;21035:83;;-1:-1:-1;21125:26:29;;21154:16;;;;;;;;;;;;-1:-1:-1;21154:16:29;21125:45;;21209:7;21176:9;21186:1;21176:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;21224:98;1171:66;21254:9;21265:11;21278:15;21295:12;1343:66;21224:19;:98::i;4952:268:27:-;5052:16;;;5066:1;5052:16;;;;;;;;;5023:26;;5052:16;;;;;;;;;;;-1:-1:-1;5052:16:27;5023:45;;5107:10;5074:9;5084:1;5074:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5125:90;1076:66;1060:83;;5160:9;5171:1;5192:6;5174:26;;;;;;19939:14:208;19932:22;19927:3;19923:32;19911:45;;19981:1;19972:11;;19788:201;5174:26:27;;;;-1:-1:-1;;5174:26:27;;;;;;;;;-1:-1:-1;;;5125:24:27;:90::i;:::-;5017:203;4952:268;;:::o;18901:1676:20:-;19101:23;19080:7;:44;;;19076:232;;19231:7;19187:100;19250:8;19267:5;19280:4;19187:100;;;;;;;;:::i;:::-;;;;;;;;19295:7;;19076:232;19314:16;19333:59;19374:7;19383:8;19333:40;:59::i;:::-;19314:78;;19538:22;19563:24;19579:7;19563:15;:24::i;:::-;19538:49;;19598:9;19593:328;19613:5;:12;19609:1;:16;19593:328;;;19640:9;19662:5;19668:1;19662:8;;;;;;;;:::i;:::-;;;;;;;19640:31;;19683:41;548:6:32;19683:4:20;:14;;;;;:41;;;;:::i;:::-;19679:236;;;19736:170;;;;;3404:35:4;;;;;19736:54:20;;:170;;19812:7;;19841:8;;19868:5;;19891:4;;19736:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19679:236;-1:-1:-1;19627:3:20;;19593:328;;;;20022:7;19978:100;20041:8;20058:5;20071:4;19978:100;;;;;;;;:::i;:::-;;;;;;;;20128:70;20160:8;20178:5;20128:70;;20191:4;20128:13;:70::i;:::-;20252:9;20247:326;20267:5;:12;20263:1;:16;20247:326;;;20294:9;20316:5;20322:1;20316:8;;;;;;;;:::i;:::-;;;;;;;20294:31;;20337:40;657:6:32;20337:4:20;:14;;;;;:40;;;;:::i;:::-;20333:234;;;20389:169;;;;;3404:35:4;;;;;20389:53:20;;:169;;20464:7;;20493:8;;20520:5;;20543:4;;20389:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20333:234;-1:-1:-1;20281:3:20;;20247:326;;52982:282;53227:30;;;;;;21318:19:208;;;21353:12;;;21346:28;;;53070:7:20;;21390:12:208;;53227:30:20;21130:278:208;4391:342:28;4507:16;;;4521:1;4507:16;;;;;;;;;4448:22;;4478:26;;4507:16;;;;;;;;;;;;-1:-1:-1;4507:16:28;4478:45;;4562:7;4529:9;4539:1;4529:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4577:18;4598:49;1075:66;4634:9;4577:18;4598:25;:49::i;:::-;4577:70;;4661:66;:44;4682:5;4689:1;4692:5;:12;4661:20;:44::i;:::-;:64;:66::i;2903:136:4:-;2973:4;3025:9;2992:42;;3011:9;2993:15;3003:4;3802:26;;;3672:162;2993:15;:27;2992:42;;;2985:49;;2903:136;;;;:::o;1423:2340:19:-;1536:10;;1532:1504;;1689:2;1679:6;:12;1675:122;;1752:2;1743:6;:11;1725:29;;;;1776:2;1766:12;;;;;;:::i;:::-;;;;1675:122;1887:10;;1883:1147;;2095:2;:11;;;1969:21;-1:-1:-1;;537:1:30;738:25:31;;716:48;2142:18:19;2127:33;;2329:12;2321:6;2317:25;2376:4;2365:9;2361:20;2353:28;;2431:13;2425:20;2414:9;2410:36;2392:54;;2679:4;2675:9;2658:14;2652:21;2648:37;2579:4;2567:10;2563:21;2506:193;2478:14;2458:253;;2770:13;2760:6;:23;2756:36;;2785:7;;;;2756:36;-1:-1:-1;2933:1:19;2915:19;;;;;2988:23;;;;;2946:30;1883:1147;3066:253;3083:2;3073:6;:12;3066:253;;3178:20;;3155:44;;3252:1;3234:19;;;;-1:-1:-1;;3292:12:19;;;;3280:2;3263:19;3066:253;;;3387:10;;3383:376;;3407:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;3695:21:19;;3606:20;;3628:9;;3602:36;3691:32;;3551:184;3507:238;;-1:-1:-1;1423:2340:19;;;;:::o;55104:230:20:-;55225:7;55309;55318:8;55292:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;55292:35:20;;;;;;;;;55282:46;;55292:35;55282:46;;;;44308:40;55255:73;;55104:230;-1:-1:-1;;;55104:230:20:o;54475:274::-;54619:7;54724;54733:8;54707:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;54697:46;;;;;;54676:17;54669:25;;54649:45;;;44217:34;54649:45;:94;54641:103;;54634:110;;54475:274;;;;;:::o;4754:171:3:-;4828:7;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;4850:70:3;;;;;4754:171;-1:-1:-1;4754:171:3:o;900:162:19:-;989:68;995:14;1011:6;1019:4;:11;1032:24;1051:4;828::14;818:15;;692:151;1032:24:19;989:5;:68::i;39031:522:20:-;39167:12;39291:257;39330:79;39372:7;39381:8;39391:17;39330:41;:79::i;:::-;39427:1;39446:93;39521:17;39446:66;39494:7;39503:8;39446:47;:66::i;:::-;:74;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;39446:93:20;39291:12;:257::i;1954:561:18:-;2045:5;2140:3;2132:5;:11;:32;;;;2153:4;:11;2147:3;:17;2132:32;2128:80;;;2191:4;2197:5;2204:3;2173:35;;;;;;;;;;;;;:::i;2128:80::-;2274:4;2264:15;;2321:16;2332:5;2264:15;2321:16;:::i;:::-;;-1:-1:-1;2343:12:18;2358:11;2364:5;2358:3;:11;:::i;:::-;643:17;2493:15;2485:3;2474:14;;;;2473:36;;;;;;-1:-1:-1;;;;;1954:561:18:o;40037:220:34:-;40103:24;40135:30;40168:32;40186:6;40194:2;40198:1;40168:17;:32::i;55672:301:20:-;55793:13;55885:82;55916:48;55946:7;55955:8;55916:29;:48::i;:::-;4645:21:19;;4539:137;4976:669;5392:4;5386:11;5433:4;5421:17;;-1:-1:-1;;5307:16:19;5480:26;;;5307:16;5303:32;5452:4;5445:63;5552:6;5544;5537:22;5570:51;5575:14;5591:6;5599;5607:13;5570:4;:51::i;2615:1129:36:-;2735:22;2765:21;2789;:11;2869:3:18;2847:25;;2773:104;2789:21:36;2765:45;-1:-1:-1;643:17:18;3110:38;;2816:20:36;2978:11;3110:38:18;2978:11:36;2963:26;;;;:::i;:::-;;2949:40;;3098:4;3092:11;3083:20;;3141:4;3134:5;3130:16;3201:4;3188:11;3184:22;3170:12;3166:41;3160:4;3153:55;3251:11;3244:5;3237:26;3294:1;3271:463;3310:11;3307:1;3304:18;3271:463;;;3704:20;;3683:42;;3662:64;;3576:31;;;;3489:4;3471:23;;;;3397:1;3390:9;3271:463;;;3275:28;;3050:690;;;2615:1129;;;;;:::o;6010:2380:19:-;6127:10;;6123:1542;;6280:2;6270:6;:12;6266:122;;6343:2;6334:6;:11;6316:29;;;;6367:2;6357:12;;;;;;:::i;:::-;;;;6266:122;6478:10;;6474:1185;;6686:2;:11;;;6560:21;6744:22;;;6740:135;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;7069:14;7063:21;7048:12;7040:6;7036:25;7032:53;7309:4;7293:13;7287:20;7283:31;7219:4;7215:9;7203:10;7199:26;7144:184;7117:13;7097:243;;7399:13;7389:6;:23;7385:36;;7414:7;;;;7385:36;-1:-1:-1;7562:1:19;7544:19;;;;;7617:23;;;;;7575:30;6474:1185;7694:253;7711:2;7701:6;:12;7694:253;;7805:21;;7783:44;;7880:1;7862:19;;;;-1:-1:-1;;7920:12:19;;;;7908:2;7891:19;7694:253;;;8015:10;;8011:375;;8035:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;8323:20:19;;8233:21;;8256:9;;8229:37;8319:31;;8178:184;8135:237;;-1:-1:-1;6010:2380:19;;;;:::o;14:332:208:-;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:208;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:208;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:208:o;1560:245::-;1608:4;1641:18;1633:6;1630:30;1627:56;;;1663:18;;:::i;:::-;-1:-1:-1;1720:2:208;1708:15;-1:-1:-1;;1704:88:208;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:208;;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:208: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:208;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:1179::-;3606:6;3614;3667:2;3655:9;3646:7;3642:23;3638:32;3635:52;;;3683:1;3680;3673:12;3635:52;3715:9;3709:16;-1:-1:-1;;3758:5:208;3754:78;3747:5;3744:89;3734:117;;3847:1;3844;3837:12;3734:117;3919:2;3904:18;;3898:25;3870:5;;-1:-1:-1;3942:18:208;3972:14;;;3969:34;;;3999:1;3996;3989:12;3969:34;4022:22;;;;4078:4;4060:16;;;4056:27;4053:47;;;4096:1;4093;4086:12;4053:47;4124:22;;:::i;:::-;4176:2;4170:9;4223:4;4214:7;4210:18;4201:7;4198:31;4188:59;;4243:1;4240;4233:12;4188:59;4256:24;;4319:2;4311:11;;4305:18;4335:16;;;4332:36;;;4364:1;4361;4354:12;4332:36;4402:56;4450:7;4439:8;4435:2;4431:17;4402:56;:::i;:::-;4397:2;4388:7;4384:16;4377:82;;4498:2;4494;4490:11;4484:18;4527:2;4517:8;4514:16;4511:36;;;4543:1;4540;4533:12;4511:36;4581:56;4629:7;4618:8;4614:2;4610:17;4581:56;:::i;:::-;4576:2;4567:7;4563:16;4556:82;;4657:7;4647:17;;;;;3491:1179;;;;;:::o;5325:287::-;5454:3;5492:6;5486:13;5508:66;5567:6;5562:3;5555:4;5547:6;5543:17;5508:66;:::i;:::-;5590:16;;;;;5325:287;-1:-1:-1;;5325:287:208:o;6483:357::-;6601:12;;6648:4;6637:16;;;6631:23;;6601:12;6666:16;;6663:171;;;-1:-1:-1;;6740:4:208;6736:17;;;;6733:1;6729:25;6725:98;6714:110;;6483:357;-1:-1:-1;6483:357:208:o;7453:329::-;7494:3;7532:5;7526:12;7559:6;7554:3;7547:19;7575:76;7644:6;7637:4;7632:3;7628:14;7621:4;7614:5;7610:16;7575:76;:::i;:::-;7696:2;7684:15;-1:-1:-1;;7680:88:208;7671:98;;;;7771:4;7667:109;;7453:329;-1:-1:-1;;7453:329:208:o;7787:319::-;7993:6;7982:9;7975:25;8036:2;8031;8020:9;8016:18;8009:30;7956:4;8056:44;8096:2;8085:9;8081:18;8073:6;8056:44;:::i;8111:458::-;8190:6;8243:2;8231:9;8222:7;8218:23;8214:32;8211:52;;;8259:1;8256;8249:12;8211:52;8292:9;8286:16;8325:18;8317:6;8314:30;8311:50;;;8357:1;8354;8347:12;8311:50;8380:22;;8433:4;8425:13;;8421:27;-1:-1:-1;8411:55:208;;8462:1;8459;8452:12;8411:55;8485:78;8555:7;8550:2;8544:9;8539:2;8535;8531:11;8485:78;:::i;8574:321::-;8652:6;8705:2;8693:9;8684:7;8680:23;8676:32;8673:52;;;8721:1;8718;8711:12;8673:52;8753:9;8747:16;-1:-1:-1;;;;;8796:5:208;8792:54;8785:5;8782:65;8772:93;;8861:1;8858;8851:12;8900:421;9165:6;9154:9;9147:25;9208:6;9203:2;9192:9;9188:18;9181:34;9251:2;9246;9235:9;9231:18;9224:30;9128:4;9271:44;9311:2;9300:9;9296:18;9288:6;9271:44;:::i;9326:184::-;-1:-1:-1;;;9375:1:208;9368:88;9475:4;9472:1;9465:15;9499:4;9496:1;9489:15;9784:184;-1:-1:-1;;;9833:1:208;9826:88;9933:4;9930:1;9923:15;9957:4;9954:1;9947:15;9973:125;10038:9;;;10059:10;;;10056:36;;;10072:18;;:::i;10368:492::-;10543:3;10581:6;10575:13;10597:66;10656:6;10651:3;10644:4;10636:6;10632:17;10597:66;:::i;:::-;10726:13;;10685:16;;;;10748:70;10726:13;10685:16;10795:4;10783:17;;10748:70;:::i;:::-;10834:20;;10368:492;-1:-1:-1;;;;10368:492:208:o;10865:439::-;10918:3;10956:5;10950:12;10983:6;10978:3;10971:19;11009:4;11038;11033:3;11029:14;11022:21;;11077:4;11070:5;11066:16;11100:1;11110:169;11124:6;11121:1;11118:13;11110:169;;;11185:13;;11173:26;;11219:12;;;;11254:15;;;;11146:1;11139:9;11110:169;;;-1:-1:-1;11295:3:208;;10865:439;-1:-1:-1;;;;;10865:439:208:o;11309:791::-;11701:6;11690:9;11683:25;11744:3;11739:2;11728:9;11724:18;11717:31;11664:4;11771:57;11823:3;11812:9;11808:19;11800:6;11771:57;:::i;:::-;11876:9;11868:6;11864:22;11859:2;11848:9;11844:18;11837:50;11910:32;11935:6;11927;11910:32;:::i;:::-;11896:46;;11978:6;11973:2;11962:9;11958:18;11951:34;12034:9;12026:6;12022:22;12016:3;12005:9;12001:19;11994:51;12062:32;12087:6;12079;12062:32;:::i;:::-;12054:40;11309:791;-1:-1:-1;;;;;;;;11309:791:208:o;12105:545::-;12426:6;12415:9;12408:25;12469:3;12464:2;12453:9;12449:18;12442:31;12389:4;12490:57;12542:3;12531:9;12527:19;12519:6;12490:57;:::i;:::-;12595:4;12583:17;;;;12578:2;12563:18;;12556:45;-1:-1:-1;12632:2:208;12617:18;12610:34;12482:65;12105:545;-1:-1:-1;;12105:545:208:o;12655:184::-;12725:6;12778:2;12766:9;12757:7;12753:23;12749:32;12746:52;;;12794:1;12791;12784:12;12746:52;-1:-1:-1;12817:16:208;;12655:184;-1:-1:-1;12655:184:208:o;12844:::-;-1:-1:-1;;;12893:1:208;12886:88;12993:4;12990:1;12983:15;13017:4;13014:1;13007:15;13033:656;13085:3;13116;13148:5;13142:12;13175:6;13170:3;13163:19;13201:4;13230;13225:3;13221:14;13214:21;;13288:4;13278:6;13275:1;13271:14;13264:5;13260:26;13256:37;13327:4;13320:5;13316:16;13350:1;13360:303;13374:6;13371:1;13368:13;13360:303;;;-1:-1:-1;;13449:5:208;13443:4;13439:16;13435:89;13430:3;13423:102;13546:37;13578:4;13569:6;13563:13;13546:37;:::i;:::-;13641:12;;;;13538:45;-1:-1:-1;13606:15:208;;;;13396:1;13389:9;13360:303;;;-1:-1:-1;13679:4:208;;13033:656;-1:-1:-1;;;;;;;13033:656:208:o;13694:907::-;14219:6;14208:9;14201:25;14262:6;14257:2;14246:9;14242:18;14235:34;14305:6;14300:2;14289:9;14285:18;14278:34;14348:6;14343:2;14332:9;14328:18;14321:34;14392:3;14386;14375:9;14371:19;14364:32;14182:4;14419:56;14470:3;14459:9;14455:19;14447:6;14419:56;:::i;:::-;14524:9;14516:6;14512:22;14506:3;14495:9;14491:19;14484:51;14552:43;14588:6;14580;14552:43;:::i;:::-;14544:51;13694:907;-1:-1:-1;;;;;;;;;13694:907:208:o;14606:706::-;14973:6;14962:9;14955:25;15016:3;15011:2;15000:9;14996:18;14989:31;14936:4;15043:57;15095:3;15084:9;15080:19;15072:6;15043:57;:::i;:::-;15148:4;15140:6;15136:17;15131:2;15120:9;15116:18;15109:45;15202:9;15194:6;15190:22;15185:2;15174:9;15170:18;15163:50;15230:32;15255:6;15247;15230:32;:::i;:::-;15222:40;;;15299:6;15293:3;15282:9;15278:19;15271:35;14606:706;;;;;;;;:::o;15317:128::-;15384:9;;;15405:11;;;15402:37;;;15419:18;;:::i;15450:168::-;15523:9;;;15554;;15571:15;;;15565:22;;15551:37;15541:71;;15592:18;;:::i;15841:463::-;16087:66;16079:6;16075:79;16064:9;16057:98;16191:6;16186:2;16175:9;16171:18;16164:34;16234:2;16229;16218:9;16214:18;16207:30;16038:4;16254:44;16294:2;16283:9;16279:18;16271:6;16254:44;:::i;16888:280::-;17087:2;17076:9;17069:21;17050:4;17107:55;17158:2;17147:9;17143:18;17135:6;17107:55;:::i;17173:688::-;17506:3;17495:9;17488:22;17469:4;17533:57;17585:3;17574:9;17570:19;17562:6;17533:57;:::i;:::-;17638:9;17630:6;17626:22;17621:2;17610:9;17606:18;17599:50;17672:32;17697:6;17689;17672:32;:::i;:::-;17658:46;;17740:6;17735:2;17724:9;17720:18;17713:34;17795:9;17787:6;17783:22;17778:2;17767:9;17763:18;17756:50;17823:32;17848:6;17840;17823:32;:::i;:::-;17815:40;17173:688;-1:-1:-1;;;;;;;17173:688:208:o;17866:894::-;18317:6;18306:9;18299:25;18360:3;18355:2;18344:9;18340:18;18333:31;18280:4;18387:57;18439:3;18428:9;18424:19;18416:6;18387:57;:::i;:::-;18492:9;18484:6;18480:22;18475:2;18464:9;18460:18;18453:50;18526:32;18551:6;18543;18526:32;:::i;:::-;18512:46;;18594:6;18589:2;18578:9;18574:18;18567:34;18650:9;18642:6;18638:22;18632:3;18621:9;18617:19;18610:51;18678:32;18703:6;18695;18678:32;:::i;:::-;18670:40;;;18747:6;18741:3;18730:9;18726:19;18719:35;17866:894;;;;;;;;;:::o;18765:639::-;19015:6;19010:3;19003:19;18985:3;19041:2;19074;19069:3;19065:12;19106:6;19100:13;19171:2;19163:6;19159:15;19192:1;19202:175;19216:6;19213:1;19210:13;19202:175;;;19279:13;;19265:28;;19315:14;;;;19352:15;;;;19238:1;19231:9;19202:175;;;-1:-1:-1;19393:5:208;;18765:639;-1:-1:-1;;;;;;;18765:639:208:o;19409:184::-;-1:-1:-1;;;19458:1:208;19451:88;19558:4;19555:1;19548:15;19582:4;19579:1;19572:15;19994:511;20245:2;20234:9;20227:21;20208:4;20271:56;20323:2;20312:9;20308:18;20300:6;20271:56;:::i;:::-;20375:14;20367:6;20363:27;20358:2;20347:9;20343:18;20336:55;20439:9;20431:6;20427:22;20422:2;20411:9;20407:18;20400:50;20467:32;20492:6;20484;20467:32;:::i;:::-;20459:40;19994:511;-1:-1:-1;;;;;;19994:511:208:o;20510:615::-;20820:6;20809:9;20802:25;20863:3;20858:2;20847:9;20843:18;20836:31;20783:4;20890:57;20942:3;20931:9;20927:19;20919:6;20890:57;:::i;:::-;20995:14;20987:6;20983:27;20978:2;20967:9;20963:18;20956:55;21059:9;21051:6;21047:22;21042:2;21031:9;21027:18;21020:50;21087:32;21112:6;21104;21087:32;:::i;21815:359::-;22018:2;22007:9;22000:21;21981:4;22038:44;22078:2;22067:9;22063:18;22055:6;22038:44;:::i;:::-;22113:2;22098:18;;22091:34;;;;-1:-1:-1;22156:2:208;22141:18;22134:34;22030:52;21815:359;-1:-1:-1;21815:359:208:o","linkReferences":{},"immutableReferences":{"22659":[{"start":526,"length":32}],"92376":[{"start":746,"length":32}]}},"methodIdentifiers":{"_initialMsgSender()":"9081c758","_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\":\"ERC20Module_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FieldLayoutLib_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyFields\",\"type\":\"error\"},{\"inputs\":[],\"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\":\"SchemaLib_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SchemaLib_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[],\"name\":\"_initialMsgSender\",\"outputs\":[{\"internalType\":\"address\",\"name\":\"sender\",\"type\":\"address\"}],\"stateMutability\":\"view\",\"type\":\"function\"},{\"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\":{\"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\":{\"_initialMsgSender()\":{\"returns\":{\"sender\":\"The `msg.sender` that made the first call to World in this transaction\"}},\"_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\":{\"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\":{\"_initialMsgSender()\":{\"notice\":\"Extract the `msg.sender` from TransactionContext (mutex in World.sol on `call` and `callFrom` 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/erc20-puppet/ERC20Module.sol\":\"ERC20Module\"},\"evmVersion\":\"paris\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55\",\"dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf\",\"dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4\",\"dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b\",\"dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb\",\"dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84\",\"dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1\",\"dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e\",\"dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924\",\"dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67\",\"dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263\",\"dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912\",\"dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6\",\"dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99\",\"dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a\",\"dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d\",\"dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3\",\"dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff\",\"dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787\",\"dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551\",\"dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea\",\"dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4\",\"dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44\",\"dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2\",\"dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38\",\"dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64\",\"dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb\",\"dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4\",\"dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf\",\"dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205\",\"dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed\",\"dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU\"]},\"node_modules/@latticexyz/world/src/DelegationControl.sol\":{\"keccak256\":\"0x8cb98a092891f05e855c9bc4705f0c6ad5d5c82be731afd3591c091ef91530a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://66e589610bcf3a79d5a158a3ce6d4a894b96575826a16fd817bd80721625e3d6\",\"dweb:/ipfs/QmTDFR47F5Cq82LRXMxBt6j8omobm9cZtmBBnWycBnmjPx\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d\",\"dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0x6c11c44fef08d46ca9f291551a42b8576259f65b7e957aef92540ba0acd72909\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ffbc3646ea495350939319f5418ba2dd45b6ec809d6b84ed3264e592a9385bd\",\"dweb:/ipfs/QmPCjuQUMWVUPv7vSVfztnymYA9hUP1xRS62FD6iwzGMuo\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc\",\"dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0x61392feda0588aba0f72be7c44c65d9115604b5f3d61a79a716d2cc78906bb01\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7cd374cc3c8b05140aa54d712cbd541a51fc7cb4065f7bfc172f64169c1a818a\",\"dweb:/ipfs/QmcsHDhXQFUDB5vf8kES61teypHLuMxNdheat9TN8wY9so\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x7d478d15961646ee2889e30169e4e4045ed98c92bfa398abda9299179c234ca6\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6aa9999fb5bed10c89639cbc1caf099971abaa8c481a581038227e6c14210776\",\"dweb:/ipfs/QmdxsLT2cFi9Y7buNBVC1WWeKKjNyNDTrpkuRNwGYSGAFz\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0xf15243b03fdc6e5222aefdaad74fffc909f9058f9d8d6ba06acb797197f74635\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c3f4ecb21499e677697dbe71002a5e96651fb0d8c279c4065e6441f13a9c75b3\",\"dweb:/ipfs/QmZ7oEHWK85aetzt9uJ3bmJJKLZkK5PoaakxiEDq4xEEww\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0xfdfdbdb1373ff83d8529865e21bbe796025861140a0a96c7183bcc6999ba63dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1c1d003f9a28bc9098cc669406f569905a7726fc17cb07a6a6027531aebe5020\",\"dweb:/ipfs/QmPrEP9SRfKRouAQmVn6dq4MgguBPboMdMPg88WqBjsjgn\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9\",\"dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x570da3c73388cb2bcdce4b137968871d89ffe294ba00997029a505060f3a6f0d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://840b4bf9a472574066e6ebe765a8cbbc4ecff41820b5c72b4e92f92fa7c88d55\",\"dweb:/ipfs/QmXX9AUXdVH1xdDZLD1FS3MNoHmunYL1BYt8Ar9iDwVtTU\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74\",\"dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0xea5256f37d5f373dc0d008b30a44f46f85d5aa4826c9c9702e3a62cafe4fc00d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5f34c70731153f300c4d89b4ddcfd0b02834abf208fcd2ec5863fb1dc5bde74f\",\"dweb:/ipfs/QmdmCzFDr6WmSQ23b2T3aaJhJ6Qvzhc9UaE5z33adciAd4\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xd9ead56302e6ce3f7958983f6652c2712df74ce83cd002248b235769bd5f87d4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a925eab29746fdcff87662142f61565d64bfa108ee14a9a5d496413c150533c4\",\"dweb:/ipfs/QmaFXKnfuMbkaZCEz3e2J3Nx49keqvmaGa7QLBvbj1ntYt\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x7451726394ea4c39dcca268895499a7d908bd868092cf9b133772077ad5c6a6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c102f036a0ce081255c1088c75e823e5eb5dfdf36ade55d45a6c3914e2a4a5e5\",\"dweb:/ipfs/QmUWEstc4kRhqvUc5sbPyCvy3kvH3hzmH1GrP8MjyQYy3v\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0xd71d9a5a1ee5969cbfc548ddcd01814293d57b5c7f40df0a8ff926df43ec9d9b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6377994ebe168759b1f8ed17d4621720d66259c3ebff77acc2f7cc7dd9fec45\",\"dweb:/ipfs/QmeNaatg7JTe6tLc2RbC28SLEQTJFddXy5xZHmqi9zQ9Jx\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0xba969b5b252d1eb26f22908e4581456a6791e02e693cb14f48de35feb31b56f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34fcc11f5a70bcb51ea1ca76587e7dea7dfb940f522c820988212573a9ca32b6\",\"dweb:/ipfs/QmQSgQdJiXMVVSU5woFMC1mAGJBicBeoQUZ5UVX94UjJbX\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0x90d05ad5b6ce321f2d15d93cc6d126c0332afd161cebd008ea115a552bb0e772\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a6bd7a337b1a8ca9ce2c853db9003352895697d43bdf8c49da850ee19990aa8\",\"dweb:/ipfs/QmbvpN53672EQZMAfmDEC8bP6MRYUnAqLDRUmkkv6DMrAT\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0xfe79af16bea789b894c322b3796b7a5fd3042d2da0ea808768e1588bff53056c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://15a2c7d26d21773fa41dd3891553ad57520f0c401627da8f79c11751b0fca478\",\"dweb:/ipfs/QmZYpNkSXqqz5tUeqNwppY7Q75ec9gGPv7BkjUJc87AZFE\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0x6d247eea47c3566ea8e71b39e662607509f7a2080eabddf83c9f6b0682d27edc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ab03d2cf026d39902ec68c3665a6779053e82e0f60bccfe2810be4b43f05894e\",\"dweb:/ipfs/Qmdzg8bmkWjN4mw9EfnHFqYHpTJACGm9YoYZDZhX1MMamY\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e\",\"dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c\",\"dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c\",\"dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7\",\"dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR\"]},\"node_modules/@latticexyz/world/src/codegen/tables/TransactionContext.sol\":{\"keccak256\":\"0xbf501d3d05958c923bb4cb8ca11d5d7c0fba898eda1235bbb1bea95e8f77ed9b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ceb206c972ff952de239ace637c9ead2e069035d1676ea18690289572d8663d1\",\"dweb:/ipfs/QmYRENaiEAexz1xEy9YoX2Xj7nAdr29g7dEsbshK3VoXNE\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/types.sol\":{\"keccak256\":\"0x1876630a009a39e1a771e5d05d420731b85523b4fe091ce04a72f6f283f5e9b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1166a3d9f7db80d2e041def918fa54baa0f4d51edb35731a8b2bf6ee76810411\",\"dweb:/ipfs/Qmf5VmgLsWJy3Tea5JM9mzCKJ49NJC1fRcgWGVFruusBgJ\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8\",\"dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d\",\"dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12\"]},\"src/modules/erc20-puppet/ERC20Module.sol\":{\"keccak256\":\"0x17bc29bb233a59422412c52b96caa8b3348122c7fea93ff6a05b5180d8a7f67f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b41b85213db039ec9d60e0e00f93775263905dc794a7daff0d4cd34ea713566a\",\"dweb:/ipfs/QmdAE8KH3mhK7WPTpDCwpE5Yw294m9T9KYFTxMsSNxc6qd\"]},\"src/modules/erc20-puppet/ERC20System.sol\":{\"keccak256\":\"0xf3cd154bdc6d3f7ad3727ee9852a2858c13b9d19a1b67c8ade74b812abc67ad9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4761ee9c4d3e0cf92147950d18e267dbbabf735d7ac5f7b09ae63c86968cf466\",\"dweb:/ipfs/QmSFNphuAUT1VbNegRjsXQaWttWL1UCLUixSXjAapbPn5s\"]},\"src/modules/erc20-puppet/IERC20.sol\":{\"keccak256\":\"0x4da2e95751daa6444c24063c1da6886380a487b958808d888f6f4f4b1da7b60b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://111b988299e13500d38a87e2a6309087f42abd6a871e6e9c5da7bc7d09c71b2c\",\"dweb:/ipfs/QmWyShHQnKFNvZdKyKmsuRCwhYRrz2UMqHP2oLnHvqArdj\"]},\"src/modules/erc20-puppet/IERC20Errors.sol\":{\"keccak256\":\"0x704a9e25590a92a80d153552fbe79a83fe0a80a8f6eaa8d2ccaca70649e40fce\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e6ae9510a9c5023299a1064c945b652336a31f5cd225bbe9a72f9e2fd81ada2\",\"dweb:/ipfs/QmdvTCUs3ZiP5unHGdwJz3MxAR5b7K7bYVTZjBT8xadBVR\"]},\"src/modules/erc20-puppet/IERC20Events.sol\":{\"keccak256\":\"0xee632339ff14c1e5e6994ce3c605799761f24f40093cabf3b091f6dcbd9ef8ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0c7a33110c14cfc32011bda15c4330d8f193d133c1f34448f1566f44a0663bd\",\"dweb:/ipfs/QmadwRXGu4H2H3WxgEchXTyLx5PKSLZd7VHvRPEZ5zAgaZ\"]},\"src/modules/erc20-puppet/IERC20Mintable.sol\":{\"keccak256\":\"0x51e2b57003ef9fd5e87b7dcd451628e361ff26e0f82a089897e43def4cf35163\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b8478ba8a5562432dfcfc02cb35d38b95e0e16d1771c3619d8140a04bbf5208\",\"dweb:/ipfs/QmRBBjFW4dm2qQHdysj3ci9NGpaywbMsN2zjQAUNbXydhL\"]},\"src/modules/erc20-puppet/constants.sol\":{\"keccak256\":\"0xf5bc462ba7a0209d4d13b27f6038d2484c978250d9177d1814813a9fa6c67f0e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://25f1dafb6cabe5bb70021625bd025d7249aed86dfc8567b9e5d8c2c32da847b4\",\"dweb:/ipfs/QmbAAQHU2q6Dm66CqbrwUtWyCbwndKZtrpE3oneFtaYMxX\"]},\"src/modules/erc20-puppet/tables/Allowances.sol\":{\"keccak256\":\"0xd05c08a2fdc4ab06273bceda2618c9aec7cc362f5401dd2a8070a71719d42544\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6fdfc972d7ec013ecd0deb5609ce2f8ce150b61b53d19f9fd3b60f532d04ab9\",\"dweb:/ipfs/QmRNxV9iUqo9rfjVQoJVHxcfwabJiTMt5fnEi8fM4f5D9G\"]},\"src/modules/erc20-puppet/tables/ERC20Metadata.sol\":{\"keccak256\":\"0x04e27880dab60e2f48b5e1057eb24bd5c34026601957db6e81088c656bee306f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b87eb482a34c82ae54a75ec4e70fd0ea09b0765231bdfc26e227b3745994470\",\"dweb:/ipfs/QmbFXEXbvzGxszA4z4KLHMKrMfEyoVhX5xqL7LcyLLJByt\"]},\"src/modules/erc20-puppet/tables/ERC20Registry.sol\":{\"keccak256\":\"0x910ef149f80e14d67751ea8adf324e3dc64aa4d3341cce2f938b07ee146ab427\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3d8ac5b9c0021582fcfe52f89e0a59a55ede7d120356b3326c537161daf324be\",\"dweb:/ipfs/QmNyoj1pQJHbQdreyekJYBkwKLSt5twVmZ3zjVj8WVaqUJ\"]},\"src/modules/erc20-puppet/tables/TotalSupply.sol\":{\"keccak256\":\"0xc4bab0981b493a1885474ce82a9aee3004d7ec76213c738e268aac467ef73a5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e87b36b0632ad8515650004ecc76ac196805b5d8bc3a5975ed80a86801c6e95b\",\"dweb:/ipfs/QmYCGY7zstQhhUwDjmzscvNDgZ6QK9kDR51fXvKYP9tmjf\"]},\"src/modules/erc20-puppet/utils.sol\":{\"keccak256\":\"0x93469cfd699997e1b980433ad416566a87da0cc925a55752c98dc86c76c63b32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00bd06095ef07edea5827d0fde62110f8ce92ed8e20946d04e39a558700e045e\",\"dweb:/ipfs/QmdvVCsFD8ktvJFV56NDkgQ3oBsSb9vLNcwVm6uwTuUuPR\"]},\"src/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"src/modules/puppet/PuppetDelegationControl.sol\":{\"keccak256\":\"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d\",\"dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS\"]},\"src/modules/puppet/PuppetFactorySystem.sol\":{\"keccak256\":\"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9\",\"dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv\"]},\"src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"src/modules/puppet/createPuppet.sol\":{\"keccak256\":\"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398\",\"dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc\"]},\"src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x7599140542e17339a785741ca6057d2b5ca5529a816b4609940e43e154bf179d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b251df5ef3be9a7cca661d861ba8802181fe55607cf119313ad6db0bcd73be9\",\"dweb:/ipfs/QmaVjFTBdqasneWm1EakzBgBU9n7i4vV1YdrGiqYT5pobk\"]},\"src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"src/modules/tokens/tables/Balances.sol\":{\"keccak256\":\"0x323871032273e403a04e1b27c36dda8ec5cc7ae116c96af6843ad9b9585327db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd555e72a6b5c42e27aaeda796e93b50a9e4a0f9253dba806a484ff8559c4fd7\",\"dweb:/ipfs/QmQ3hJxyoWVj4Cx7w2Yb9DW18htPeN2z8drkz2Sq3emEyB\"]},\"src/utils/AccessControlLib.sol\":{\"keccak256\":\"0xc14746b7e25f7d3340b9585c170f2120a46639f3c6ebb8ba88ca81311f475df2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fba240838bc55220b4c9efdcd389df4ec028d43ea9f682cf583d7879280a7bb8\",\"dweb:/ipfs/QmV5fyNXfFgdTxYRYB1NzNQKkypnQH8SJ5C6BZpjhieiUS\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"ERC20Module_InvalidNamespace"},{"inputs":[],"type":"error","name":"FieldLayoutLib_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyFields"},{"inputs":[],"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":"SchemaLib_InvalidLength"},{"inputs":[],"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"stateMutability":"view","type":"function","name":"_initialMsgSender","outputs":[{"internalType":"address","name":"sender","type":"address"}]},{"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":{"_initialMsgSender()":{"returns":{"sender":"The `msg.sender` that made the first call to World in this transaction"}},"_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":{"_initialMsgSender()":{"notice":"Extract the `msg.sender` from TransactionContext (mutex in World.sol on `call` and `callFrom` 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/erc20-puppet/ERC20Module.sol":"ERC20Module"},"evmVersion":"paris","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd","urls":["bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55","dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728","urls":["bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf","dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09","urls":["bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4","dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3","urls":["bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b","dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec","urls":["bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb","dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79","urls":["bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84","dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f","urls":["bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1","dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99","urls":["bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e","dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449","urls":["bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924","dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167","urls":["bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67","dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc","urls":["bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263","dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d","urls":["bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912","dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e","urls":["bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6","dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8","urls":["bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99","dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5","urls":["bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a","dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f","urls":["bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d","dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20","urls":["bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3","dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9","urls":["bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff","dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c","urls":["bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787","dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7","urls":["bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551","dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763","urls":["bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea","dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b","urls":["bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4","dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270","urls":["bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44","dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50","urls":["bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2","dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410","urls":["bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38","dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305","urls":["bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64","dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554","urls":["bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb","dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7","urls":["bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4","dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29","urls":["bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf","dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a","urls":["bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205","dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61","urls":["bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed","dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU"],"license":"MIT"},"node_modules/@latticexyz/world/src/DelegationControl.sol":{"keccak256":"0x8cb98a092891f05e855c9bc4705f0c6ad5d5c82be731afd3591c091ef91530a3","urls":["bzz-raw://66e589610bcf3a79d5a158a3ce6d4a894b96575826a16fd817bd80721625e3d6","dweb:/ipfs/QmTDFR47F5Cq82LRXMxBt6j8omobm9cZtmBBnWycBnmjPx"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e","urls":["bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d","dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0x6c11c44fef08d46ca9f291551a42b8576259f65b7e957aef92540ba0acd72909","urls":["bzz-raw://0ffbc3646ea495350939319f5418ba2dd45b6ec809d6b84ed3264e592a9385bd","dweb:/ipfs/QmPCjuQUMWVUPv7vSVfztnymYA9hUP1xRS62FD6iwzGMuo"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc","urls":["bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc","dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0x61392feda0588aba0f72be7c44c65d9115604b5f3d61a79a716d2cc78906bb01","urls":["bzz-raw://7cd374cc3c8b05140aa54d712cbd541a51fc7cb4065f7bfc172f64169c1a818a","dweb:/ipfs/QmcsHDhXQFUDB5vf8kES61teypHLuMxNdheat9TN8wY9so"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x7d478d15961646ee2889e30169e4e4045ed98c92bfa398abda9299179c234ca6","urls":["bzz-raw://6aa9999fb5bed10c89639cbc1caf099971abaa8c481a581038227e6c14210776","dweb:/ipfs/QmdxsLT2cFi9Y7buNBVC1WWeKKjNyNDTrpkuRNwGYSGAFz"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0xf15243b03fdc6e5222aefdaad74fffc909f9058f9d8d6ba06acb797197f74635","urls":["bzz-raw://c3f4ecb21499e677697dbe71002a5e96651fb0d8c279c4065e6441f13a9c75b3","dweb:/ipfs/QmZ7oEHWK85aetzt9uJ3bmJJKLZkK5PoaakxiEDq4xEEww"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0xfdfdbdb1373ff83d8529865e21bbe796025861140a0a96c7183bcc6999ba63dd","urls":["bzz-raw://1c1d003f9a28bc9098cc669406f569905a7726fc17cb07a6a6027531aebe5020","dweb:/ipfs/QmPrEP9SRfKRouAQmVn6dq4MgguBPboMdMPg88WqBjsjgn"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3","urls":["bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9","dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x570da3c73388cb2bcdce4b137968871d89ffe294ba00997029a505060f3a6f0d","urls":["bzz-raw://840b4bf9a472574066e6ebe765a8cbbc4ecff41820b5c72b4e92f92fa7c88d55","dweb:/ipfs/QmXX9AUXdVH1xdDZLD1FS3MNoHmunYL1BYt8Ar9iDwVtTU"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd","urls":["bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74","dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0xea5256f37d5f373dc0d008b30a44f46f85d5aa4826c9c9702e3a62cafe4fc00d","urls":["bzz-raw://5f34c70731153f300c4d89b4ddcfd0b02834abf208fcd2ec5863fb1dc5bde74f","dweb:/ipfs/QmdmCzFDr6WmSQ23b2T3aaJhJ6Qvzhc9UaE5z33adciAd4"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xd9ead56302e6ce3f7958983f6652c2712df74ce83cd002248b235769bd5f87d4","urls":["bzz-raw://a925eab29746fdcff87662142f61565d64bfa108ee14a9a5d496413c150533c4","dweb:/ipfs/QmaFXKnfuMbkaZCEz3e2J3Nx49keqvmaGa7QLBvbj1ntYt"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0x7451726394ea4c39dcca268895499a7d908bd868092cf9b133772077ad5c6a6a","urls":["bzz-raw://c102f036a0ce081255c1088c75e823e5eb5dfdf36ade55d45a6c3914e2a4a5e5","dweb:/ipfs/QmUWEstc4kRhqvUc5sbPyCvy3kvH3hzmH1GrP8MjyQYy3v"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0xd71d9a5a1ee5969cbfc548ddcd01814293d57b5c7f40df0a8ff926df43ec9d9b","urls":["bzz-raw://c6377994ebe168759b1f8ed17d4621720d66259c3ebff77acc2f7cc7dd9fec45","dweb:/ipfs/QmeNaatg7JTe6tLc2RbC28SLEQTJFddXy5xZHmqi9zQ9Jx"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0xba969b5b252d1eb26f22908e4581456a6791e02e693cb14f48de35feb31b56f4","urls":["bzz-raw://34fcc11f5a70bcb51ea1ca76587e7dea7dfb940f522c820988212573a9ca32b6","dweb:/ipfs/QmQSgQdJiXMVVSU5woFMC1mAGJBicBeoQUZ5UVX94UjJbX"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0x90d05ad5b6ce321f2d15d93cc6d126c0332afd161cebd008ea115a552bb0e772","urls":["bzz-raw://9a6bd7a337b1a8ca9ce2c853db9003352895697d43bdf8c49da850ee19990aa8","dweb:/ipfs/QmbvpN53672EQZMAfmDEC8bP6MRYUnAqLDRUmkkv6DMrAT"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0xfe79af16bea789b894c322b3796b7a5fd3042d2da0ea808768e1588bff53056c","urls":["bzz-raw://15a2c7d26d21773fa41dd3891553ad57520f0c401627da8f79c11751b0fca478","dweb:/ipfs/QmZYpNkSXqqz5tUeqNwppY7Q75ec9gGPv7BkjUJc87AZFE"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0x6d247eea47c3566ea8e71b39e662607509f7a2080eabddf83c9f6b0682d27edc","urls":["bzz-raw://ab03d2cf026d39902ec68c3665a6779053e82e0f60bccfe2810be4b43f05894e","dweb:/ipfs/Qmdzg8bmkWjN4mw9EfnHFqYHpTJACGm9YoYZDZhX1MMamY"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd","urls":["bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e","dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568","urls":["bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c","dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194","urls":["bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c","dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21","urls":["bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7","dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/TransactionContext.sol":{"keccak256":"0xbf501d3d05958c923bb4cb8ca11d5d7c0fba898eda1235bbb1bea95e8f77ed9b","urls":["bzz-raw://ceb206c972ff952de239ace637c9ead2e069035d1676ea18690289572d8663d1","dweb:/ipfs/QmYRENaiEAexz1xEy9YoX2Xj7nAdr29g7dEsbshK3VoXNE"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/types.sol":{"keccak256":"0x1876630a009a39e1a771e5d05d420731b85523b4fe091ce04a72f6f283f5e9b3","urls":["bzz-raw://1166a3d9f7db80d2e041def918fa54baa0f4d51edb35731a8b2bf6ee76810411","dweb:/ipfs/Qmf5VmgLsWJy3Tea5JM9mzCKJ49NJC1fRcgWGVFruusBgJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a","urls":["bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8","dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed","urls":["bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d","dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12"],"license":"MIT"},"src/modules/erc20-puppet/ERC20Module.sol":{"keccak256":"0x17bc29bb233a59422412c52b96caa8b3348122c7fea93ff6a05b5180d8a7f67f","urls":["bzz-raw://b41b85213db039ec9d60e0e00f93775263905dc794a7daff0d4cd34ea713566a","dweb:/ipfs/QmdAE8KH3mhK7WPTpDCwpE5Yw294m9T9KYFTxMsSNxc6qd"],"license":"MIT"},"src/modules/erc20-puppet/ERC20System.sol":{"keccak256":"0xf3cd154bdc6d3f7ad3727ee9852a2858c13b9d19a1b67c8ade74b812abc67ad9","urls":["bzz-raw://4761ee9c4d3e0cf92147950d18e267dbbabf735d7ac5f7b09ae63c86968cf466","dweb:/ipfs/QmSFNphuAUT1VbNegRjsXQaWttWL1UCLUixSXjAapbPn5s"],"license":"MIT"},"src/modules/erc20-puppet/IERC20.sol":{"keccak256":"0x4da2e95751daa6444c24063c1da6886380a487b958808d888f6f4f4b1da7b60b","urls":["bzz-raw://111b988299e13500d38a87e2a6309087f42abd6a871e6e9c5da7bc7d09c71b2c","dweb:/ipfs/QmWyShHQnKFNvZdKyKmsuRCwhYRrz2UMqHP2oLnHvqArdj"],"license":"MIT"},"src/modules/erc20-puppet/IERC20Errors.sol":{"keccak256":"0x704a9e25590a92a80d153552fbe79a83fe0a80a8f6eaa8d2ccaca70649e40fce","urls":["bzz-raw://0e6ae9510a9c5023299a1064c945b652336a31f5cd225bbe9a72f9e2fd81ada2","dweb:/ipfs/QmdvTCUs3ZiP5unHGdwJz3MxAR5b7K7bYVTZjBT8xadBVR"],"license":"MIT"},"src/modules/erc20-puppet/IERC20Events.sol":{"keccak256":"0xee632339ff14c1e5e6994ce3c605799761f24f40093cabf3b091f6dcbd9ef8ff","urls":["bzz-raw://a0c7a33110c14cfc32011bda15c4330d8f193d133c1f34448f1566f44a0663bd","dweb:/ipfs/QmadwRXGu4H2H3WxgEchXTyLx5PKSLZd7VHvRPEZ5zAgaZ"],"license":"MIT"},"src/modules/erc20-puppet/IERC20Mintable.sol":{"keccak256":"0x51e2b57003ef9fd5e87b7dcd451628e361ff26e0f82a089897e43def4cf35163","urls":["bzz-raw://3b8478ba8a5562432dfcfc02cb35d38b95e0e16d1771c3619d8140a04bbf5208","dweb:/ipfs/QmRBBjFW4dm2qQHdysj3ci9NGpaywbMsN2zjQAUNbXydhL"],"license":"MIT"},"src/modules/erc20-puppet/constants.sol":{"keccak256":"0xf5bc462ba7a0209d4d13b27f6038d2484c978250d9177d1814813a9fa6c67f0e","urls":["bzz-raw://25f1dafb6cabe5bb70021625bd025d7249aed86dfc8567b9e5d8c2c32da847b4","dweb:/ipfs/QmbAAQHU2q6Dm66CqbrwUtWyCbwndKZtrpE3oneFtaYMxX"],"license":"MIT"},"src/modules/erc20-puppet/tables/Allowances.sol":{"keccak256":"0xd05c08a2fdc4ab06273bceda2618c9aec7cc362f5401dd2a8070a71719d42544","urls":["bzz-raw://d6fdfc972d7ec013ecd0deb5609ce2f8ce150b61b53d19f9fd3b60f532d04ab9","dweb:/ipfs/QmRNxV9iUqo9rfjVQoJVHxcfwabJiTMt5fnEi8fM4f5D9G"],"license":"MIT"},"src/modules/erc20-puppet/tables/ERC20Metadata.sol":{"keccak256":"0x04e27880dab60e2f48b5e1057eb24bd5c34026601957db6e81088c656bee306f","urls":["bzz-raw://8b87eb482a34c82ae54a75ec4e70fd0ea09b0765231bdfc26e227b3745994470","dweb:/ipfs/QmbFXEXbvzGxszA4z4KLHMKrMfEyoVhX5xqL7LcyLLJByt"],"license":"MIT"},"src/modules/erc20-puppet/tables/ERC20Registry.sol":{"keccak256":"0x910ef149f80e14d67751ea8adf324e3dc64aa4d3341cce2f938b07ee146ab427","urls":["bzz-raw://3d8ac5b9c0021582fcfe52f89e0a59a55ede7d120356b3326c537161daf324be","dweb:/ipfs/QmNyoj1pQJHbQdreyekJYBkwKLSt5twVmZ3zjVj8WVaqUJ"],"license":"MIT"},"src/modules/erc20-puppet/tables/TotalSupply.sol":{"keccak256":"0xc4bab0981b493a1885474ce82a9aee3004d7ec76213c738e268aac467ef73a5a","urls":["bzz-raw://e87b36b0632ad8515650004ecc76ac196805b5d8bc3a5975ed80a86801c6e95b","dweb:/ipfs/QmYCGY7zstQhhUwDjmzscvNDgZ6QK9kDR51fXvKYP9tmjf"],"license":"MIT"},"src/modules/erc20-puppet/utils.sol":{"keccak256":"0x93469cfd699997e1b980433ad416566a87da0cc925a55752c98dc86c76c63b32","urls":["bzz-raw://00bd06095ef07edea5827d0fde62110f8ce92ed8e20946d04e39a558700e045e","dweb:/ipfs/QmdvVCsFD8ktvJFV56NDkgQ3oBsSb9vLNcwVm6uwTuUuPR"],"license":"MIT"},"src/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"src/modules/puppet/PuppetDelegationControl.sol":{"keccak256":"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3","urls":["bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d","dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS"],"license":"MIT"},"src/modules/puppet/PuppetFactorySystem.sol":{"keccak256":"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe","urls":["bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9","dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv"],"license":"MIT"},"src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"src/modules/puppet/createPuppet.sol":{"keccak256":"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1","urls":["bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398","dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc"],"license":"MIT"},"src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x7599140542e17339a785741ca6057d2b5ca5529a816b4609940e43e154bf179d","urls":["bzz-raw://2b251df5ef3be9a7cca661d861ba8802181fe55607cf119313ad6db0bcd73be9","dweb:/ipfs/QmaVjFTBdqasneWm1EakzBgBU9n7i4vV1YdrGiqYT5pobk"],"license":"MIT"},"src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"license":"MIT"},"src/modules/tokens/tables/Balances.sol":{"keccak256":"0x323871032273e403a04e1b27c36dda8ec5cc7ae116c96af6843ad9b9585327db","urls":["bzz-raw://bd555e72a6b5c42e27aaeda796e93b50a9e4a0f9253dba806a484ff8559c4fd7","dweb:/ipfs/QmQ3hJxyoWVj4Cx7w2Yb9DW18htPeN2z8drkz2Sq3emEyB"],"license":"MIT"},"src/utils/AccessControlLib.sol":{"keccak256":"0xc14746b7e25f7d3340b9585c170f2120a46639f3c6ebb8ba88ca81311f475df2","urls":["bzz-raw://fba240838bc55220b4c9efdcd389df4ec028d43ea9f682cf583d7879280a7bb8","dweb:/ipfs/QmV5fyNXfFgdTxYRYB1NzNQKkypnQH8SJ5C6BZpjhieiUS"],"license":"MIT"}},"version":1},"id":129}
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":"ERC20Module_InvalidNamespace","inputs":[{"name":"namespace","type":"bytes14","internalType":"bytes14"}]},{"type":"error","name":"FieldLayoutLib_Empty","inputs":[]},{"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength","inputs":[{"name":"staticDataLength","type":"uint256","internalType":"uint256"},{"name":"computedStaticDataLength","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_StaticLengthIsZero","inputs":[{"name":"index","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyDynamicFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"FieldLayoutLib_TooManyFields","inputs":[{"name":"numFields","type":"uint256","internalType":"uint256"},{"name":"maxFields","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"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":"SchemaLib_InvalidLength","inputs":[{"name":"length","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType","inputs":[]},{"type":"error","name":"Slice_OutOfBounds","inputs":[{"name":"data","type":"bytes","internalType":"bytes"},{"name":"start","type":"uint256","internalType":"uint256"},{"name":"end","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidFieldNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidKeyNamesLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidResourceType","inputs":[{"name":"expected","type":"bytes2","internalType":"bytes2"},{"name":"resourceId","type":"bytes32","internalType":"ResourceId"},{"name":"resourceIdString","type":"string","internalType":"string"}]},{"type":"error","name":"Store_InvalidStaticDataLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaDynamicLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_InvalidValueSchemaStaticLength","inputs":[{"name":"expected","type":"uint256","internalType":"uint256"},{"name":"received","type":"uint256","internalType":"uint256"}]},{"type":"error","name":"Store_TableAlreadyExists","inputs":[{"name":"tableId","type":"bytes32","internalType":"ResourceId"},{"name":"tableIdString","type":"string","internalType":"string"}]}],"bytecode":{"object":"0x60c060408190523060805262000015906200004f565b604051809103905ff0801580156200002f573d5f803e3d5ffd5b506001600160a01b031660a05234801562000048575f80fd5b506200005d565b614b4480620034cc83390190565b60805160a05161344d6200007f5f395f6102ce01525f6101f5015261344d5ff3fe608060405234801561000f575f80fd5b506004361061006f575f3560e01c806345ec93541161004d57806345ec9354146100d05780637c5b0335146100e3578063e1af802c146100f6575f80fd5b806301ffc9a714610073578063119df25f1461009b57806313861fb5146100bb575b5f80fd5b610086610081366004612c74565b6100fe565b60405190151581526020015b60405180910390f35b6100a36101e2565b6040516001600160a01b039091168152602001610092565b6100ce6100c9366004612d48565b6101f0565b005b604051601f193601358152602001610092565b6100ce6100f1366004612d48565b610731565b6100a3610763565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019057507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101dc57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b5f6101eb61076c565b905090565b61021a7f00000000000000000000000000000000000000000000000000000000000000008261079e565b5f80828060200190518101906102309190612e30565b90925090507f9a8d9ccdcfd28f8a8f8f9a8c000000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff198316016102bf576040517f0f31c63c00000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b5f6102c8610763565b90505f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031683866040516024016103329291906001600160a01b0392909216825271ffffffffffffffffffffffffffffffffffff1916602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c200000000000000000000000000000000000000000000000000000000179052516103959190612f00565b5f60405180830381855af49150503d805f81146103cd576040519150601f19603f3d011682016040523d82523d5f602084013e6103d2565b606091505b5091509150816103e5576103e5816107e3565b6103f76103f1866107eb565b8561081c565b5f610401866108b9565b90505f61040e8583610905565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601089901c16176001600160a01b03861663ef5d6bbb8261046f6101e2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b031660248201526044015f604051808303815f87803b1580156104cb575f80fd5b505af11580156104dd573d5f803e3d5ffd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f4552433230526567697374727900000000000000000000000000000000000000603082015261055f935001905060405160208183030381529060405261055a90612f1b565b610bf7565b6106a7576040517f6e7300000000000000000000000000000000000000000000000000000000000060208201527f65726332302d707570706574000000000000000000000000000000000000000060228201526001600160a01b0387169063b29e4089906030016040516020818303038152906040526105de90612f1b565b6040518263ffffffff1660e01b81526004016105fc91815260200190565b5f604051808303815f87803b158015610613575f80fd5b505af1158015610625573d5f803e3d5ffd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f455243323052656769737472790000000000000000000000000000000000000060308201526106a793500190506040516020818303038152906040526106a290612f1b565b610c81565b60408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f45524332305265676973747279000000000000000000000000000000000000006030820152610726910160405160208183030381529060405261071f90612f1b565b8284610ccd565b505050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6101eb610d8a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061079b5750335b90565b6107a88282610d93565b156107df576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b805160208201fd5b5f6101dc613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610dac565b5f610869825f01516040805160f89290921b7fff00000000000000000000000000000000000000000000000000000000000000166020830152805160018184030181526021909201905290565b90505f61087e83602001518460400151610e31565b90505f61089384602001518560400151610e4d565b604080515f8152602081019091529091506108b18682868686610e79565b505050505050565b5f6101dc7f7379000000000000000000000000000000000000000000000000000000000000837f455243323053797374656d000000000000000000000000000000000000000000610dac565b604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f466163746f72790000000000000000000000000000000000000000000000000060308201525f916001600160a01b03851691633ae7af0891016040516020818303038152906040526109a790612f1b565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610a44929190600401612f69565b5f604051808303815f875af1158015610a5f573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610a869190810190612f81565b806020019051810190610a999190612fc6565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610b7c90612f1b565b604080515f815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610bc492919060248101612fec565b5f604051808303815f87803b158015610bdb575f80fd5b505af1158015610bed573d5f803e3d5ffd5b5050505092915050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610c2e57610c2e61300a565b60209081029190910101525f610c6d7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f28565b9050610c798160f81c90565b949350505050565b610cca817e14010014000000000000000000000000000000000000000000000000000000610cad610fe2565b610cb5611058565b610cbd611090565b610cc5611114565b61118a565b50565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110610d0157610d0161300a565b602002602001018181525050610d8484825f85604051602001610d4f919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e1401001400000000000000000000000000000000000000000000000000000061123e565b50505050565b5f6101eb6112b3565b5f610da58383805190602001206112f1565b9392505050565b5f610db960706010613032565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b815181515f9181810160389190911b1760609190911b17610da5565b60608282604051602001610e62929190613045565b604051602081830303815290604052905092915050565b5f610e826112b3565b9050306001600160a01b03821603610ea657610ea186868686866113a7565b6108b1565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90610ef390899089908990899089906004016130ad565b5f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050505050505050565b5f80610f326112b3565b9050306001600160a01b03821603610f5857610f50868686866113c4565b915050610c79565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610fa39089908990899089906004016130fd565b602060405180830381865afa158015610fbe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f50919061312b565b6040805160018082528183019092525f9182919060208083019080368337019050509050605f815f8151811061101a5761101a61300a565b602002602001019060c581111561103357611033613142565b908160c581111561104657611046613142565b905250611052816113f0565b91505090565b6040805160018082528183019092525f91829190602080830190803683370190505090506061815f8151811061101a5761101a61300a565b604080516001808252818301909252606091816020015b60608152602001906001900390816110a75790505090506040518060400160405280600b81526020017f6e616d6573706163654964000000000000000000000000000000000000000000815250815f815181106111065761110661300a565b602002602001018190525090565b604080516001808252818301909252606091816020015b606081526020019060019003908161112b5790505090506040518060400160405280600c81526020017f746f6b656e416464726573730000000000000000000000000000000000000000815250815f815181106111065761110661300a565b5f6111936112b3565b9050306001600160a01b038216036111b8576111b38787878787876115a7565b611235565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990611207908a908a908a908a908a908a906004016131ae565b5f604051808303815f87803b15801561121e575f80fd5b505af1158015611230573d5f803e3d5ffd5b505050505b50505050505050565b5f6112476112b3565b9050306001600160a01b0382160361126657610ea186868686866119fb565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610ef390899089908990899089906004016131f7565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806112ec573391505090565b919050565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f815181106113335761133361300a565b60200260200101818152505082816001815181106113535761135361300a565b60209081029190910101525f6113927f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610f28565b905061139e8160f81c90565b95945050505050565b6113bd85858585856113b88b611a10565b611a93565b5050505050565b5f61139e6113d28686611db5565b60ff858116601b0360080285901c166113eb8587611e0a565b611e42565b5f601c82511115611419578151604051635318beb960e01b81526004016102b691815260200190565b5f8080805b85518110156114f1575f61145b87838151811061143d5761143d61300a565b602002602001015160c581111561145657611456613142565b611e92565b9050805f0361146f576001909201916114a7565b82156114a7576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106114c8576114c861300a565b602002602001015160c58111156114e1576114e1613142565b901b94909417935060010161141e565b50600581111561151757604051635318beb960e01b8152600481018290526024016102b6565b8451819003600861152a6002602061323d565b6115349190613250565b83901b93909317926008600161154c6002602061323d565b611556919061323d565b6115609190613250565b81901b939093179260086001806115796002602061323d565b611583919061323d565b61158d919061323d565b6115979190613250565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061162057507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561168157613a3160f11b868760405160200161163f91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102b6939291600401613267565b61168a85611ef0565b611695846001612132565b61169f835f612132565b60e084901c60e885901c0160ff168251146116ff5760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b60e085901c60e886901c0160ff1681511461175f5760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146117d75760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b6117e0856122c6565b6117e9846122c6565b1461183b576117f7856122c6565b611800846122c6565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b611844856122f7565b61184d846122f7565b1461189f5761185b856122f7565b611864846122f7565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b5f5b6118aa866122c6565b811015611940576118cf6118be8583612313565b60c581111561145657611456613142565b6008601b8390030287901c60ff1614611938576008601b8290030286901c60ff166118fd6118be8684612313565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b6001016118a1565b5061194a86612333565b156119a457858660405160200161196391815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102b69291600401612f69565b6119f086868686866040516020016119bc91906132a7565b604051602081830303815290604052866040516020016119dc91906132a7565b6040516020818303038152906040526123a9565b6108b186600161247c565b6113bd8585611a0a8487611e0a565b8561251e565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611a5e57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101dc611a8b7f746273746f72650000000000000000005461626c657300000000000000000000846127a9565b60205f611e42565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611b1f57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611b1294939291906132b9565b60405180910390a26108b1565b5f611b29876127c4565b90505f5b8151811015611bfb575f828281518110611b4957611b4961300a565b60200260200101519050611b756001826affffffffffffffffffffff191661284990919063ffffffff16565b15611bf2576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611bc4908c908c908c908c908c908c90600401613302565b5f604051808303815f87803b158015611bdb575f80fd5b505af1158015611bed573d5f803e3d5ffd5b505050505b50600101611b2d565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611c3294939291906132b9565b60405180910390a25f611c458888611db5565b90505f602087019050611c5b825f895184612866565b5f611c65856122f7565b1115611ce5575f611c768a8a612921565b87815590506020860191505f805f5b611c8e886122f7565b8160ff161015611ce057611ca38d8d83612976565b9250611cbe8a8260ff166028026038011c64ffffffffff1690565b9150611ccc835f8488612866565b611cd68286613032565b9450600101611c85565b505050505b5f5b8351811015610f1c575f848281518110611d0357611d0361300a565b60200260200101519050611d2f6002826affffffffffffffffffffff191661284990919063ffffffff16565b15611dac576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611d7e908e908e908e908e908e908e90600401613302565b5f604051808303815f87803b158015611d95575f80fd5b505af1158015611da7573d5f803e3d5ffd5b505050505b50600101611ce7565b5f8282604051602001611dc992919061335a565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015611e3a57611e3060ff601b83900360080287901c1683613032565b9150600101611e0e565b509392505050565b5f60208210611e6757602082048401935060208281611e6357611e63613394565b0691505b508254600882021b602082900380841115611e3a576001850154600882021c82179150509392505050565b5f808260c5811115611ea657611ea6613142565b60ff1690506061811015611ec057601f1660010192915050565b60618360c5811115611ed457611ed4613142565b03611ee25750601492915050565b505f92915050565b50919050565b80611f27576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611f31826122f7565b90506005811115611f78576040517f7f2372c300000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016102b6565b5f611f82836122c6565b90505f611f8f8383613032565b9050601c811115611fd6576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016102b6565b5f805b8381101561207f5760ff601b82900360080287901c165f81900361202c576040517f01f2a07c000000000000000000000000000000000000000000000000000000008152600481018390526024016102b6565b602081111561206a576040517f24c85d58000000000000000000000000000000000000000000000000000000008152600481018390526024016102b6565b6120748184613032565b925050600101611fd9565b50612089856129f4565b81146120d557612098856129f4565b6040517f9365944a0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016102b6565b825b601c8110156108b15760ff601b82900360080287901c168015612129576040517fbb68821a000000000000000000000000000000000000000000000000000000008152600481018390526024016102b6565b506001016120d7565b8015801561213e575081155b1561215e57604051635318beb960e01b81525f60048201526024016102b6565b5f612168836122f7565b9050600581111561218f57604051635318beb960e01b8152600481018290526024016102b6565b5f612199846122c6565b90505f6121a68383613032565b9050601c8111156121cd57604051635318beb960e01b8152600481018290526024016102b6565b5f805b83811015612236575f6121e66118be8984612313565b9050805f03612221576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61222b8184613032565b9250506001016121d0565b50612240866129f4565b811461226b5761224f866129f4565b604051635318beb960e01b81526004016102b691815260200190565b825b82811015611235575f6122836118be8984612313565b905080156122bd576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161226d565b5f600860016122d76002602061323d565b6122e1919061323d565b6122eb9190613250565b8260ff911c1692915050565b5f60086001806123096002602061323d565b6122d7919061323d565b5f601b8290036008028360ff911c1660c5811115610da557610da5613142565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061236a5761236a61300a565b60209081029190910101525f610c6d7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6113c4565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f6123df8484610e31565b90505f6123ec8585610e4d565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f815181106124245761242461300a565b6020908102919091010152610f1c7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611a93565b6040805160018082528183019092525f916020808301908036833701905050905082815f815181106124b0576124b061300a565b6020026020010181815250506125197f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f856040516020016124fc91151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b6119fb565b505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036125a857837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161259b939291906133a8565b60405180910390a2610d84565b5f6125b38585611db5565b90505f6125bf866127c4565b90505f5b815181101561268d575f8282815181106125df576125df61300a565b6020026020010151905061260b6004826affffffffffffffffffffff191661284990919063ffffffff16565b15612684576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612656908b908b908b908b906004016133e4565b5f604051808303815f87803b15801561266d575f80fd5b505af115801561267f573d5f803e3d5ffd5b505050505b506001016125c3565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516126c2939291906133a8565b60405180910390a26126dd828565ffffffffffff1685612a16565b5f5b8151811015611235575f8282815181106126fb576126fb61300a565b602002602001015190506127276008826affffffffffffffffffffff191661284990919063ffffffff16565b156127a0576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612772908b908b908b908b906004016133e4565b5f604051808303815f87803b158015612789575f80fd5b505af115801561279b573d5f803e3d5ffd5b505050505b506001016126df565b60408051602081018490529081018290525f90606001611dc9565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f815181106127fc576127fc61300a565b60209081029190910101525f6128337f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612a2c565b9050610c79612844825f8451612a65565b612af1565b5f8160ff16826128598560581c90565b1660ff1614905092915050565b82156128de57602083106128905760208304840193506020838161288c5761288c613394565b0692505b82156128de5760208390035f5f19600885021c1990506008850281811c91508351811c90508119875416828216178755508184116128cf575050610d84565b50600194909401939182900391015b5b602082106129005780518455600190930192601f19909101906020016128df565b8115610d84575f5f19600884021c8554835182191691161785555050505050565b5f828260405160200161293592919061335a565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f838360405160200161298a92919061335a565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b5f6008612a036002602061323d565b612a0d9190613250565b9190911c919050565b61251983838351612a278560200190565b612866565b6060610c79612a3c858585612976565b5f612a6085612a4b8989612b00565b9060ff166028026038011c64ffffffffff1690565b612b12565b5f81831180612a745750835182115b15612ab1578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102b69392919061341c565b60208401612abf8482613032565b90505f612acc858561323d565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610da58360155f612b35565b5f610da5612b0e8484612921565b5490565b60405160208101601f19603f8484010116604052828252611e3a85858584612bad565b60605f612b428560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281612b6757612b67613394565b0490506040519350602084016020820281016040528185525f5b82811015612ba1578451871c825293870193602090910190600101612b81565b50505050509392505050565b8215612c315760208310612bd757602083048401935060208381612bd357612bd3613394565b0692505b8215612c315760208390035f81841015612bf857505f19600884021c612c01565b505f19600882021c5b8554600886021b818451168219821617845250818411612c22575050610d84565b50600194909401939182900391015b5b60208210612c535783548152600190930192601f1990910190602001612c32565b8115610d84575f5f19600884021c8251865482191691161782525050505050565b5f60208284031215612c84575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610da5575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff81118282101715612cea57612cea612cb3565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612d1957612d19612cb3565b604052919050565b5f67ffffffffffffffff821115612d3a57612d3a612cb3565b50601f01601f191660200190565b5f60208284031215612d58575f80fd5b813567ffffffffffffffff811115612d6e575f80fd5b8201601f81018413612d7e575f80fd5b8035612d91612d8c82612d21565b612cf0565b818152856020838501011115612da5575f80fd5b816020840160208301375f91810160200191909152949350505050565b5f5b83811015612ddc578181015183820152602001612dc4565b50505f910152565b5f612df1612d8c84612d21565b9050828152838383011115612e04575f80fd5b610da5836020830184612dc2565b5f82601f830112612e21575f80fd5b610da583835160208501612de4565b5f8060408385031215612e41575f80fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612e63575f80fd5b602084015190925067ffffffffffffffff80821115612e80575f80fd5b9084019060608287031215612e93575f80fd5b612e9b612cc7565b825160ff81168114612eab575f80fd5b8152602083015182811115612ebe575f80fd5b612eca88828601612e12565b602083015250604083015182811115612ee1575f80fd5b612eed88828601612e12565b6040830152508093505050509250929050565b5f8251612f11818460208701612dc2565b9190910192915050565b80516020808301519190811015611eea575f1960209190910360031b1b16919050565b5f8151808452612f55816020860160208601612dc2565b601f01601f19169290920160200192915050565b828152604060208201525f610c796040830184612f3e565b5f60208284031215612f91575f80fd5b815167ffffffffffffffff811115612fa7575f80fd5b8201601f81018413612fb7575f80fd5b610c7984825160208401612de4565b5f60208284031215612fd6575f80fd5b81516001600160a01b0381168114610da5575f80fd5b838152826020820152606060408201525f61139e6060830184612f3e565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b808201808211156101dc576101dc61301e565b5f8351613056818460208801612dc2565b83519083019061306a818360208801612dc2565b01949350505050565b5f815180845260208085019450602084015f5b838110156130a257815187529582019590820190600101613086565b509495945050505050565b85815260a060208201525f6130c560a0830187613073565b82810360408401526130d78187612f3e565b905084606084015282810360808401526130f18185612f3e565b98975050505050505050565b848152608060208201525f6131156080830186613073565b60ff949094166040830152506060015292915050565b5f6020828403121561313b575f80fd5b5051919050565b634e487b7160e01b5f52602160045260245ffd5b5f8282518085526020808601955060208260051b840101602086015f5b848110156131a157601f1986840301895261318f838351612f3e565b98840198925090830190600101613173565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f6131d860c0830185613156565b82810360a08401526131ea8185613156565b9998505050505050505050565b85815260a060208201525f61320f60a0830187613073565b60ff86166040840152828103606084015261322a8186612f3e565b9150508260808301529695505050505050565b818103818111156101dc576101dc61301e565b80820281158282048414176101dc576101dc61301e565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f61139e6060830184612f3e565b602081525f610da56020830184613156565b608081525f6132cb6080830187613073565b82810360208401526132dd8187612f3e565b905084604084015282810360608401526132f78185612f3e565b979650505050505050565b86815260c060208201525f61331a60c0830188613073565b828103604084015261332c8188612f3e565b905085606084015282810360808401526133468186612f3e565b9150508260a0830152979650505050505050565b8281525f60208083018451602086015f5b828110156133875781518452928401929084019060010161336b565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f6133ba6060830186613073565b65ffffffffffff8516602084015282810360408401526133da8185612f3e565b9695505050505050565b848152608060208201525f6133fc6080830186613073565b65ffffffffffff8516604084015282810360608401526132f78185612f3e565b606081525f61342e6060830186612f3e565b6020830194909452506040015291905056fea164736f6c6343000818000a608060405234801561000f575f80fd5b50614b278061001d5f395ff3fe608060405234801561000f575f80fd5b5060043610610029575f3560e01c8063472466c21461002d575b5f80fd5b61004061003b3660046124be565b610042565b005b7f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601083901c16176100928161021b565b610112576040517fb29e40890000000000000000000000000000000000000000000000000000000081526004810182905273ffffffffffffffffffffffffffffffffffffffff84169063b29e4089906024015f604051808303815f87803b1580156100fb575f80fd5b505af115801561010d573d5f803e3d5ffd5b505050505b61012361011e836102bd565b6102f4565b61013461012f83610340565b610371565b610145610140836103ad565b6103de565b8273ffffffffffffffffffffffffffffffffffffffff16633350b6a961016a84610422565b604051610176906124b1565b604051809103905ff08015801561018f573d5f803e3d5ffd5b506040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152600481019290925273ffffffffffffffffffffffffffffffffffffffff166024820152600160448201526064015f604051808303815f87803b158015610200575f80fd5b505af1158015610212573d5f803e3d5ffd5b50505050505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061025257610252612531565b60209081029190910101525f6102a97f746273746f72650000000000000000005265736f75726365496473000000000083837e0101000100000000000000000000000000000000000000000000000000000061046e565b90506102b58160f81c90565b949350505050565b5f6102ee613a3160f11b837f416c6c6f77616e63657300000000000000000000000000000000000000000000610542565b92915050565b61033d817e200100200000000000000000000000000000000000000000000000000000006103206105c8565b610328610683565b6103306106bb565b610338610792565b610808565b50565b5f6102ee613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610542565b61033d817e2001002000000000000000000000000000000000000000000000000000000061039d6108d5565b6103a5610683565b61033061090d565b5f6102ee613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610542565b61033d817e0101020100000000000000000000000000000000000000000000000000000061040a610983565b61041261099b565b61041a610a5d565b610338610a8f565b5f6102ee7f7379000000000000000000000000000000000000000000000000000000000000837f455243323053797374656d000000000000000000000000000000000000000000610542565b5f80610478610bae565b90503073ffffffffffffffffffffffffffffffffffffffff8216036104ab576104a386868686610bf9565b9150506102b5565b6040517f8c364d5900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690638c364d599061050390899089908990899060040161257f565b602060405180830381865afa15801561051e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104a391906125ad565b5f61054f607060106125d8565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16177fffffffffffffffffffffffffffffffff00000000000000000000000000000000841690911c1790509392505050565b6040805160028082526060820183525f92839291906020830190803683370190505090506061815f8151811061060057610600612531565b602002602001019060c5811115610619576106196125eb565b908160c581111561062c5761062c6125eb565b8152505060618160018151811061064557610645612531565b602002602001019060c581111561065e5761065e6125eb565b908160c5811115610671576106716125eb565b90525061067d81610c2e565b91505090565b6040805160018082528183019092525f9182919060208083019080368337019050509050601f815f8151811061064557610645612531565b6040805160028082526060828101909352816020015b60608152602001906001900390816106d15790505090506040518060400160405280600781526020017f6163636f756e7400000000000000000000000000000000000000000000000000815250815f8151811061073057610730612531565b60200260200101819052506040518060400160405280600781526020017f7370656e646572000000000000000000000000000000000000000000000000008152508160018151811061078457610784612531565b602002602001018190525090565b604080516001808252818301909252606091816020015b60608152602001906001900390816107a95790505090506040518060400160405280600581526020017f76616c7565000000000000000000000000000000000000000000000000000000815250815f8151811061078457610784612531565b5f610811610bae565b90503073ffffffffffffffffffffffffffffffffffffffff8216036108435761083e878787878787610dee565b610212565b6040517f0ba51f4900000000000000000000000000000000000000000000000000000000815273ffffffffffffffffffffffffffffffffffffffff821690630ba51f499061089f908a908a908a908a908a908a906004016126a4565b5f604051808303815f87803b1580156108b6575f80fd5b505af11580156108c8573d5f803e3d5ffd5b5050505050505050505050565b6040805160018082528183019092525f91829190602080830190803683370190505090506061815f8151811061064557610645612531565b604080516001808252818301909252606091816020015b60608152602001906001900390816109245790505090506040518060400160405280600781526020017f6163636f756e7400000000000000000000000000000000000000000000000000815250815f8151811061078457610784612531565b604080515f8082526020820190925261067d81610c2e565b604080516003808252608082019092525f91829190602082016060803683370190505090505f815f815181106109d3576109d3612531565b602002602001019060c58111156109ec576109ec6125eb565b908160c58111156109ff576109ff6125eb565b8152505060c581600181518110610a1857610a18612531565b602002602001019060c5811115610a3157610a316125eb565b908160c5811115610a4457610a446125eb565b8152505060c58160028151811061064557610645612531565b604080515f80825260208201909252606091610a89565b6060815260200190600190039081610a745790505b50905090565b60408051600380825260808201909252606091816020015b6060815260200190600190039081610aa75790505090506040518060400160405280600881526020017f646563696d616c73000000000000000000000000000000000000000000000000815250815f81518110610b0657610b06612531565b60200260200101819052506040518060400160405280600481526020017f6e616d650000000000000000000000000000000000000000000000000000000081525081600181518110610b5a57610b5a612531565b60200260200101819052506040518060400160405280600681526020017f73796d626f6c00000000000000000000000000000000000000000000000000008152508160028151811061078457610784612531565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f9073ffffffffffffffffffffffffffffffffffffffff1680610bf4573391505090565b919050565b5f610c25610c07868661124a565b60ff858116601b0360080285901c16610c20858761129f565b6112d7565b95945050505050565b5f601c82511115610c60578151604051635318beb960e01b8152600401610c5791815260200190565b60405180910390fd5b5f8080805b8551811015610d38575f610ca2878381518110610c8457610c84612531565b602002602001015160c5811115610c9d57610c9d6125eb565b611327565b9050805f03610cb657600190920191610cee565b8215610cee576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f030302878381518110610d0f57610d0f612531565b602002602001015160c5811115610d2857610d286125eb565b901b949094179350600101610c65565b506005811115610d5e57604051635318beb960e01b815260048101829052602401610c57565b84518190036008610d71600260206126ed565b610d7b9190612700565b83901b939093179260086001610d93600260206126ed565b610d9d91906126ed565b610da79190612700565b81901b93909317926008600180610dc0600260206126ed565b610dca91906126ed565b610dd491906126ed565b610dde9190612700565b9190911b92909217949350505050565b613a3160f11b867fffff0000000000000000000000000000000000000000000000000000000000001614801590610e6757507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b15610ec857613a3160f11b8687604051602001610e8691815260200190565b60408051601f19818403018152908290527f31b46683000000000000000000000000000000000000000000000000000000008252610c57939291600401612717565b610ed18561137f565b610edc8460016115c1565b610ee6835f6115c1565b60e084901c60e885901c0160ff16825114610f465760e084901c60e885901c0160ff1682516040517f0f72cb9800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c57565b60e085901c60e886901c0160ff16815114610fa65760e085901c60e886901c0160ff1681516040517f7dec4c0000000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c57565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff161461101e5760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d8800000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c57565b61102785611755565b61103084611755565b146110825761103e85611755565b61104784611755565b6040517f65cc0adf00000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c57565b61108b85611786565b61109484611786565b146110e6576110a285611786565b6110ab84611786565b6040517fedea958700000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c57565b5f5b6110f186611755565b8110156111875761111661110585836117a2565b60c5811115610c9d57610c9d6125eb565b6008601b8390030287901c60ff161461117f576008601b8290030286901c60ff1661114461110586846117a2565b6040517f254c7db400000000000000000000000000000000000000000000000000000000815260048101929092526024820152604401610c57565b6001016110e8565b50611191866117c9565b156111eb5785866040516020016111aa91815260200190565b60408051601f19818403018152908290527fdfaaf9cf000000000000000000000000000000000000000000000000000000008252610c579291600401612757565b6112378686868686604051602001611203919061276f565b60405160208183030381529060405286604051602001611223919061276f565b604051602081830303815290604052611857565b611242866001611936565b505050505050565b5f828260405160200161125e929190612781565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff168110156112cf576112c560ff601b83900360080287901c16836125d8565b91506001016112a3565b509392505050565b5f602082106112fc576020820484019350602082816112f8576112f86127bb565b0691505b508254600882021b6020829003808411156112cf576001850154600882021c82179150509392505050565b5f808260c581111561133b5761133b6125eb565b60ff169050606181101561135557601f1660010192915050565b60618360c5811115611369576113696125eb565b036113775750601492915050565b505f92915050565b806113b6576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6113c082611786565b90506005811115611407576040517f7f2372c30000000000000000000000000000000000000000000000000000000081526004810182905260056024820152604401610c57565b5f61141183611755565b90505f61141e83836125d8565b9050601c811115611465576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c6024820152604401610c57565b5f805b8381101561150e5760ff601b82900360080287901c165f8190036114bb576040517f01f2a07c00000000000000000000000000000000000000000000000000000000815260048101839052602401610c57565b60208111156114f9576040517f24c85d5800000000000000000000000000000000000000000000000000000000815260048101839052602401610c57565b61150381846125d8565b925050600101611468565b50611518856119f0565b811461156457611527856119f0565b6040517f9365944a000000000000000000000000000000000000000000000000000000008152600481019190915260248101829052604401610c57565b825b601c8110156112425760ff601b82900360080287901c1680156115b8576040517fbb68821a00000000000000000000000000000000000000000000000000000000815260048101839052602401610c57565b50600101611566565b801580156115cd575081155b156115ed57604051635318beb960e01b81525f6004820152602401610c57565b5f6115f783611786565b9050600581111561161e57604051635318beb960e01b815260048101829052602401610c57565b5f61162884611755565b90505f61163583836125d8565b9050601c81111561165c57604051635318beb960e01b815260048101829052602401610c57565b5f805b838110156116c5575f61167561110589846117a2565b9050805f036116b0576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b6116ba81846125d8565b92505060010161165f565b506116cf866119f0565b81146116fa576116de866119f0565b604051635318beb960e01b8152600401610c5791815260200190565b825b82811015610212575f61171261110589846117a2565b9050801561174c576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b506001016116fc565b5f60086001611766600260206126ed565b61177091906126ed565b61177a9190612700565b8260ff911c1692915050565b5f6008600180611798600260206126ed565b61176691906126ed565b5f601b8290036008028360ff911c1660c58111156117c2576117c26125eb565b9392505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061180057611800612531565b60209081029190910101525f6102a97f746273746f72650000000000000000005265736f75726365496473000000000083837e01010001000000000000000000000000000000000000000000000000000000610bf9565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f61188d8484611a12565b90505f61189a8585611a2e565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f815181106118d2576118d2612531565b602090810291909101015261192a7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611a5a565b50505050505050505050565b6040805160018082528183019092525f916020808301908036833701905050905082815f8151811061196a5761196a612531565b6020026020010181815250506119eb7f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f856040516020016119b691151560f81b815260010190565b60408051601f198184030181529190527e01010001000000000000000000000000000000000000000000000000000000611d7c565b505050565b5f60086119ff600260206126ed565b611a099190612700565b9190911c919050565b815181515f9181810160389190911b1760609190911b176117c2565b60608282604051602001611a439291906127cf565b604051602081830303815290604052905092915050565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611ae657857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611ad994939291906127fd565b60405180910390a2611242565b5f611af087611d98565b90505f5b8151811015611bc2575f828281518110611b1057611b10612531565b60200260200101519050611b3c6001826affffffffffffffffffffff1916611e1d90919063ffffffff16565b15611bb9576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611b8b908c908c908c908c908c908c90600401612846565b5f604051808303815f87803b158015611ba2575f80fd5b505af1158015611bb4573d5f803e3d5ffd5b505050505b50600101611af4565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611bf994939291906127fd565b60405180910390a25f611c0c888861124a565b90505f602087019050611c22825f895184611e3a565b5f611c2c85611786565b1115611cac575f611c3d8a8a611ef5565b87815590506020860191505f805f5b611c5588611786565b8160ff161015611ca757611c6a8d8d83611f4a565b9250611c858a8260ff166028026038011c64ffffffffff1690565b9150611c93835f8488611e3a565b611c9d82866125d8565b9450600101611c4c565b505050505b5f5b835181101561192a575f848281518110611cca57611cca612531565b60200260200101519050611cf66002826affffffffffffffffffffff1916611e1d90919063ffffffff16565b15611d73576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611d45908e908e908e908e908e908e90600401612846565b5f604051808303815f87803b158015611d5c575f80fd5b505af1158015611d6e573d5f803e3d5ffd5b505050505b50600101611cae565b611d918585611d8b848761129f565b85611fc8565b5050505050565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110611dd057611dd0612531565b60209081029190910101525f611e077f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612253565b90506102b5611e18825f845161228c565b612318565b5f8160ff1682611e2d8560581c90565b1660ff1614905092915050565b8215611eb25760208310611e6457602083048401935060208381611e6057611e606127bb565b0692505b8215611eb25760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611ea3575050611eef565b50600194909401939182900391015b5b60208210611ed45780518455600190930192601f1990910190602001611eb3565b8115611eef57835481515f19600885021c9182169119161784555b50505050565b5f8282604051602001611f09929190612781565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f8383604051602001611f5e929190612781565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff000000000000000000000000000000000000000000000000000000000000160361205257837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516120459392919061289e565b60405180910390a2611eef565b5f61205d858561124a565b90505f61206986611d98565b90505f5b8151811015612137575f82828151811061208957612089612531565b602002602001015190506120b56004826affffffffffffffffffffff1916611e1d90919063ffffffff16565b1561212e576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612100908b908b908b908b906004016128da565b5f604051808303815f87803b158015612117575f80fd5b505af1158015612129573d5f803e3d5ffd5b505050505b5060010161206d565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161216c9392919061289e565b60405180910390a2612187828565ffffffffffff1685612327565b5f5b8151811015610212575f8282815181106121a5576121a5612531565b602002602001015190506121d16008826affffffffffffffffffffff1916611e1d90919063ffffffff16565b1561224a576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba87219061221c908b908b908b908b906004016128da565b5f604051808303815f87803b158015612233575f80fd5b505af1158015612245573d5f803e3d5ffd5b505050505b50600101612189565b60606102b5612263858585611f4a565b5f61228785612272898961233d565b9060ff166028026038011c64ffffffffff1690565b61234f565b5f8183118061229b5750835182115b156122d8578383836040517f23230fa3000000000000000000000000000000000000000000000000000000008152600401610c5793929190612912565b602084016122e684826125d8565b90505f6122f385856126ed565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6117c28360155f612372565b6119eb838383516123388560200190565b611e3a565b5f6117c261234b8484611ef5565b5490565b60405160208101601f19603f84840101166040528282526112cf858585846123ea565b60605f61237f8560801c90565b90506fffffffffffffffffffffffffffffffff85165f8582816123a4576123a46127bb565b0490506040519350602084016020820281016040528185525f5b828110156123de578451871c8252938701936020909101906001016123be565b50505050509392505050565b821561246e576020831061241457602083048401935060208381612410576124106127bb565b0692505b821561246e5760208390035f8184101561243557505f19600884021c61243e565b505f19600882021c5b8554600886021b81845116821982161784525081841161245f575050611eef565b50600194909401939182900391015b5b602082106124905783548152600190930192601f199091019060200161246f565b8115611eef575f5f19600884021c8251865482191691161782525050505050565b6121e48061293783390190565b5f80604083850312156124cf575f80fd5b823573ffffffffffffffffffffffffffffffffffffffff811681146124f2575f80fd5b915060208301357fffffffffffffffffffffffffffff00000000000000000000000000000000000081168114612526575f80fd5b809150509250929050565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b8381101561257457815187529582019590820190600101612558565b509495945050505050565b848152608060208201525f6125976080830186612545565b60ff949094166040830152506060015292915050565b5f602082840312156125bd575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b808201808211156102ee576102ee6125c4565b634e487b7160e01b5f52602160045260245ffd5b5f5b83811015612619578181015183820152602001612601565b50505f910152565b5f81518084526126388160208601602086016125ff565b601f01601f19169290920160200192915050565b5f8282518085526020808601955060208260051b840101602086015f5b8481101561269757601f19868403018952612685838351612621565b98840198925090830190600101612669565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f6126ce60c083018561264c565b82810360a08401526126e0818561264c565b9998505050505050505050565b818103818111156102ee576102ee6125c4565b80820281158282048414176102ee576102ee6125c4565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f610c256060830184612621565b828152604060208201525f6102b56040830184612621565b602081525f6117c2602083018461264c565b8281525f60208083018451602086015f5b828110156127ae57815184529284019290840190600101612792565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b5f83516127e08184602088016125ff565b8351908301906127f48183602088016125ff565b01949350505050565b608081525f61280f6080830187612545565b82810360208401526128218187612621565b9050846040840152828103606084015261283b8185612621565b979650505050505050565b86815260c060208201525f61285e60c0830188612545565b82810360408401526128708188612621565b9050856060840152828103608084015261288a8186612621565b9150508260a0830152979650505050505050565b606081525f6128b06060830186612545565b65ffffffffffff8516602084015282810360408401526128d08185612621565b9695505050505050565b848152608060208201525f6128f26080830186612545565b65ffffffffffff85166040840152828103606084015261283b8185612621565b606081525f6129246060830186612621565b6020830194909452506040015291905056fe608060405234801561000f575f80fd5b506121c78061001d5f395ff3fe608060405234801561000f575f80fd5b50600436106100f0575f3560e01c806340c10f19116100935780639dc29fac116100635780639dc29fac146101e2578063a9059cbb146101f5578063dd62ed3e14610208578063e1af802c1461021b575f80fd5b806340c10f19146101a757806345ec9354146101bc57806370a08231146101c757806395d89b41146101da575f80fd5b8063119df25f116100ce578063119df25f1461014457806318160ddd1461016457806323b872dd1461017a578063313ce5671461018d575f80fd5b806301ffc9a7146100f457806306fdde031461011c578063095ea7b314610131575b5f80fd5b610107610102366004611c84565b610223565b60405190151581526020015b60405180910390f35b6101246102bb565b6040516101139190611d10565b61010761013f366004611d38565b6102da565b61014c6102fb565b6040516001600160a01b039091168152602001610113565b61016c610304565b604051908152602001610113565b610107610188366004611d60565b61031d565b61019561034c565b60405160ff9091168152602001610113565b6101ba6101b5366004611d38565b610360565b005b36601f19013561016c565b61016c6101d5366004611d99565b6103be565b6101246103d8565b6101ba6101f0366004611d38565b6103ed565b610107610203366004611d38565b610442565b61016c610216366004611db2565b610459565b61014c610474565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee1270000000000000000000000000000000000000000000000000000000014806102b557507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b60606102d56102d06102cb61047d565b61049a565b6104cb565b905090565b5f806102e46102fb565b90506102f18185856104f0565b5060019392505050565b5f6102d5610647565b5f6102d561031861031361047d565b610679565b6106aa565b5f806103276102fb565b90506103348582856106cd565b61033f858585610753565b60019150505b9392505050565b5f6102d561035b6102cb61047d565b6107e7565b61036861082d565b6001600160a01b0382166103af576040517fec442f050000000000000000000000000000000000000000000000000000000081525f60048201526024015b60405180910390fd5b6103ba5f8383610848565b5050565b5f6102b56103d26103cd61047d565b610a07565b83610a38565b60606102d56103e86102cb61047d565b610aa2565b6103f561082d565b6001600160a01b038216610437576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f60048201526024016103a6565b6103ba825f83610848565b5f8061044c6102fb565b90506102f1818585610753565b5f61034561046d61046861047d565b610ac0565b8484610af1565b5f6102d5610b87565b5f8061048830610b90565b90506104948160101b90565b91505090565b5f6102b5613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610c11565b604080515f808252602082019092526060916104e8848383610c88565b949350505050565b6001600160a01b038316610532576040517fe602df050000000000000000000000000000000000000000000000000000000081525f60048201526024016103a6565b6001600160a01b038216610574576040517f94280d620000000000000000000000000000000000000000000000000000000081525f60048201526024016103a6565b61058a61058261046861047d565b848484610d4a565b610592610dfc565b6001600160a01b031663c9a34acd7f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b9256105d1866001600160a01b031690565b6001600160a01b0386166040805160208101889052016040516020818303038152906040526040518563ffffffff1660e01b81526004016106159493929190611df7565b5f604051808303815f87803b15801561062c575f80fd5b505af115801561063e573d5f803e3d5ffd5b50505050505050565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c806106765750335b90565b5f6102b5613a3160f11b837f546f74616c537570706c79000000000000000000000000000000000000000000610c11565b604080515f808252602082019092525f6104e8848383630100080160dd1b610ed5565b5f6106e36106dc61046861047d565b8585610af1565b90505f19811461074d5781811015610740576040517ffb8f41b20000000000000000000000000000000000000000000000000000000081526001600160a01b038416600482015260248101829052604481018390526064016103a6565b61074d84848484036104f0565b50505050565b6001600160a01b038316610795576040517f96c6fd1e0000000000000000000000000000000000000000000000000000000081525f60048201526024016103a6565b6001600160a01b0382166107d7576040517fec442f050000000000000000000000000000000000000000000000000000000081525f60048201526024016103a6565b6107e2838383610848565b505050565b604080515f808252602082019092525f6108228483837e01010201000000000000000000000000000000000000000000000000000000610ed5565b60f81c949350505050565b61084661083930610b90565b6108416102fb565b610f8f565b565b5f61085161047d565b90505f61085d82610679565b90505f61086983610a07565b90506001600160a01b03861661089b576108968285610887856106aa565b6108919190611e2f565b611030565b61090a565b5f6108a68288610a38565b9050848110156108fb576040517fe450d38c0000000000000000000000000000000000000000000000000000000081526001600160a01b038816600482015260248101829052604481018690526064016103a6565b6109088288878403611056565b505b6001600160a01b0385166109315761092c8285610926856106aa565b03611030565b610947565b610947818686610941858a610a38565b01611056565b61094f610dfc565b6001600160a01b031663c9a34acd7fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef61098e896001600160a01b031690565b6001600160a01b03891660408051602081018b9052016040516020818303038152906040526040518563ffffffff1660e01b81526004016109d29493929190611df7565b5f604051808303815f87803b1580156109e9575f80fd5b505af11580156109fb573d5f803e3d5ffd5b50505050505050505050565b5f6102b5613a3160f11b837f42616c616e636573000000000000000000000000000000000000000000000000610c11565b6040805160018082528183019092525f9182919060208083019080368337019050509050826001600160a01b03165f1b815f81518110610a7a57610a7a611e42565b60209081029190910101525f610a99858383630100080160dd1b610ed5565b95945050505050565b604080515f808252602082019092526060916104e884836001610c88565b5f6102b5613a3160f11b837f416c6c6f77616e63657300000000000000000000000000000000000000000000610c11565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f81518110610b3357610b33611e42565b602002602001018181525050826001600160a01b03165f1b81600181518110610b5e57610b5e611e42565b60209081029190910101525f610b7d868383630100080160dd1b610ed5565b9695505050505050565b5f6102d56110ba565b6040805160018082528183019092525f9182919060208083019080368337019050509050826001600160a01b03165f1b815f81518110610bd257610bd2611e42565b60209081029190910101525f6104e87f7462776f726c6400000000000000000053797374656d526567697374727900008383630100080160dd1b610ed5565b5f610c1e60706010611e2f565b7fffff00000000000000000000000000000000000000000000000000000000000085167dffffffffffffffffffffffffffff00000000000000000000000000000000601086901c16176fffffffffffffffffffffffffffffffff19841690911c1790509392505050565b60605f610c936110ba565b9050306001600160a01b03821603610cb857610cb08585856110f8565b915050610345565b6040517f1e7889770000000000000000000000000000000000000000000000000000000081526001600160a01b03821690631e78897790610d0190889088908890600401611e90565b5f60405180830381865afa158015610d1b573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610cb09190810190611ebb565b509392505050565b6040805160028082526060820183525f92602083019080368337019050509050836001600160a01b03165f1b815f81518110610d8857610d88611e42565b602002602001018181525050826001600160a01b03165f1b81600181518110610db357610db3611e42565b602002602001018181525050610df585825f85604051602001610dd891815260200190565b60408051601f19818403018152919052630100080160dd1b611131565b5050505050565b5f80610e0730610b90565b60408051613a3160f11b60208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f507570706574526567697374727900000000000000000000000000000000000060308201529192505f91610e8a9101604051602081830303815290604052610e8490611f63565b836111b3565b90506001600160a01b0381166102b5576040517f9434f7e1000000000000000000000000000000000000000000000000000000008152306004820152602481018390526044016103a6565b5f80610edf6110ba565b9050306001600160a01b03821603610f0557610efd8686868661122d565b9150506104e8565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610f50908990899089908990600401611f89565b602060405180830381865afa158015610f6b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610efd9190611fb7565b6001600160a01b038116610fe47f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617611259565b6001600160a01b0316146103ba57610ffb826112f2565b816040517fd787b7370000000000000000000000000000000000000000000000000000000081526004016103a6929190611fce565b604080515f808252602082018352918101839052906107e2908490839060608201610dd8565b6040805160018082528183019092525f9160208083019080368337019050509050826001600160a01b03165f1b815f8151811061109557611095611e42565b60200260200101818152505061074d84825f85604051602001610dd891815260200190565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806110f3573391505090565b919050565b60606104e861110885858561141f565b5f61112c85611117898961149d565b9060ff166028026038011c64ffffffffff1690565b6114af565b5f61113a6110ba565b9050306001600160a01b0382160361115e5761115986868686866114d2565b6111ab565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae0906109d29089908990899089908990600401611ff8565b505050505050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f815181106111ea576111ea611e42565b60209081029190910101525f6112218583837e14010014000000000000000000000000000000000000000000000000000000610ed5565b60601c95945050505050565b5f610a9961123b86866114e7565b60ff858116601b0360080285901c16611254858761153c565b61156c565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061129057611290611e42565b60209081029190910101525f6112e77f7462776f726c640000000000000000004e616d6573706163654f776e6572000083837e14010014000000000000000000000000000000000000000000000000000000610ed5565b60601c949350505050565b606081601081901b5f611304836115bc565b9050827fffffffffffffffffffffffffffff00000000000000000000000000000000000083161561135f5761135a7fffffffffffffffffffffffffffff00000000000000000000000000000000000084166115d2565b611396565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6fffffffffffffffffffffffffffffffff198316156113bd576113b8836115d2565b6113f4565b6040518060400160405280600681526020017f3c726f6f743e00000000000000000000000000000000000000000000000000008152505b6040516020016114069392919061203e565b6040516020818303038152906040529350505050919050565b5f83836040516020016114339291906120cb565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b5f6103456114ab8484611657565b5490565b60405160208101601f19603f8484010116604052828252610d42858585846116ac565b610df585856114e1848761153c565b85611773565b5f82826040516020016114fb9291906120cb565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015610d425761156260ff601b83900360080287901c1683611e2f565b9150600101611540565b5f602082106115915760208204840193506020828161158d5761158d612105565b0691505b508254600882021b602082900380841115610d42576001850154600882021c82179150509392505050565b5f6115c960706010611e2f565b9190911b919050565b60605f5b6010811015611627576fffffffffffffffffffffffffffffffff198316600882021b7fff000000000000000000000000000000000000000000000000000000000000001615611627576001016115d6565b604080516fffffffffffffffffffffffffffffffff198516602082015281516030909101909152818152806104e8565b5f828260405160200161166b9291906120cb565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b821561173057602083106116d6576020830484019350602083816116d2576116d2612105565b0692505b82156117305760208390035f818410156116f757505f19600884021c611700565b505f19600882021c5b8554600886021b81845116821982161784525081841161172157505061074d565b50600194909401939182900391015b5b602082106117525783548152600190930192601f1990910190602001611731565b811561074d575f5f19600884021c8251865482191691161782525050505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036117fd57837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8484846040516117f093929190612119565b60405180910390a261074d565b5f61180885856114e7565b90505f611814866119fe565b90505f5b81518110156118e2575f82828151811061183457611834611e42565b602002602001015190506118606004826affffffffffffffffffffff1916611a8390919063ffffffff16565b156118d9576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d906118ab908b908b908b908b9060040161214b565b5f604051808303815f87803b1580156118c2575f80fd5b505af11580156118d4573d5f803e3d5ffd5b505050505b50600101611818565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be86868660405161191793929190612119565b60405180910390a2611932828565ffffffffffff1685611aa0565b5f5b815181101561063e575f82828151811061195057611950611e42565b6020026020010151905061197c6008826affffffffffffffffffffff1916611a8390919063ffffffff16565b156119f5576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba8721906119c7908b908b908b908b9060040161214b565b5f604051808303815f87803b1580156119de575f80fd5b505af11580156119f0573d5f803e3d5ffd5b505050505b50600101611934565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f81518110611a3657611a36611e42565b60209081029190910101525f611a6d7f746273746f726500000000000000000053746f7265486f6f6b7300000000000083836110f8565b90506104e8611a7e825f8451611ab6565b611b42565b5f8160ff1682611a938560581c90565b1660ff1614905092915050565b6107e283838351611ab18560200190565b611b51565b5f81831180611ac55750835182115b15611b02578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016103a693929190612183565b60208401611b108482611e2f565b90505f611b1d85856121a7565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f6103458360155f611c0c565b8215611bc95760208310611b7b57602083048401935060208381611b7757611b77612105565b0692505b8215611bc95760208390035f5f19600885021c1990506008850281811c91508351811c9050811987541682821617875550818411611bba57505061074d565b50600194909401939182900391015b5b60208210611beb5780518455600190930192601f1990910190602001611bca565b811561074d575f5f19600884021c8554835182191691161785555050505050565b60605f611c198560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281611c3e57611c3e612105565b0490506040519350602084016020820281016040528185525f5b82811015611c78578451871c825293870193602090910190600101611c58565b50505050509392505050565b5f60208284031215611c94575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610345575f80fd5b5f5b83811015611cdd578181015183820152602001611cc5565b50505f910152565b5f8151808452611cfc816020860160208601611cc3565b601f01601f19169290920160200192915050565b602081525f6103456020830184611ce5565b80356001600160a01b03811681146110f3575f80fd5b5f8060408385031215611d49575f80fd5b611d5283611d22565b946020939093013593505050565b5f805f60608486031215611d72575f80fd5b611d7b84611d22565b9250611d8960208501611d22565b9150604084013590509250925092565b5f60208284031215611da9575f80fd5b61034582611d22565b5f8060408385031215611dc3575f80fd5b611dcc83611d22565b9150611dda60208401611d22565b90509250929050565b634e487b7160e01b5f52604160045260245ffd5b848152836020820152826040820152608060608201525f610b7d6080830184611ce5565b634e487b7160e01b5f52601160045260245ffd5b808201808211156102b5576102b5611e1b565b634e487b7160e01b5f52603260045260245ffd5b5f815180845260208085019450602084015f5b83811015611e8557815187529582019590820190600101611e69565b509495945050505050565b838152606060208201525f611ea86060830185611e56565b905060ff83166040830152949350505050565b5f60208284031215611ecb575f80fd5b815167ffffffffffffffff80821115611ee2575f80fd5b818401915084601f830112611ef5575f80fd5b815181811115611f0757611f07611de3565b604051601f8201601f19908116603f01168101908382118183101715611f2f57611f2f611de3565b81604052828152876020848701011115611f47575f80fd5b611f58836020830160208801611cc3565b979650505050505050565b80516020808301519190811015611f83575f198160200360031b1b821691505b50919050565b848152608060208201525f611fa16080830186611e56565b60ff949094166040830152506060015292915050565b5f60208284031215611fc7575f80fd5b5051919050565b604081525f611fe06040830185611ce5565b90506001600160a01b03831660208301529392505050565b85815260a060208201525f61201060a0830187611e56565b60ff86166040840152828103606084015261202b8186611ce5565b9150508260808301529695505050505050565b7fffff000000000000000000000000000000000000000000000000000000000000841681525f7f3a00000000000000000000000000000000000000000000000000000000000000806002840152845161209e816003860160208901611cc3565b8084019050816003820152845191506120be826004830160208801611cc3565b0160040195945050505050565b8281525f60208083018451602086015f5b828110156120f8578151845292840192908401906001016120dc565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f61212b6060830186611e56565b65ffffffffffff851660208401528281036040840152610b7d8185611ce5565b848152608060208201525f6121636080830186611e56565b65ffffffffffff851660408401528281036060840152611f588185611ce5565b606081525f6121956060830186611ce5565b60208301949094525060400152919050565b818103818111156102b5576102b5611e1b56fea164736f6c6343000818000aa164736f6c6343000818000a","sourceMap":"1122:1793:128:-:0;;;;;578:4:53;534:49;;1263:36:128;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;;;;;1215:85:128;;;1122:1793;;;;;;;;;;;;;;;;;;;;:::o;:::-;;;;;;;;;;;;;;;;;;;","linkReferences":{}},"deployedBytecode":{"object":"0x608060405234801561000f575f80fd5b506004361061006f575f3560e01c806345ec93541161004d57806345ec9354146100d05780637c5b0335146100e3578063e1af802c146100f6575f80fd5b806301ffc9a714610073578063119df25f1461009b57806313861fb5146100bb575b5f80fd5b610086610081366004612c74565b6100fe565b60405190151581526020015b60405180910390f35b6100a36101e2565b6040516001600160a01b039091168152602001610092565b6100ce6100c9366004612d48565b6101f0565b005b604051601f193601358152602001610092565b6100ce6100f1366004612d48565b610731565b6100a3610763565b5f7fffffffff0000000000000000000000000000000000000000000000000000000082167f6fdd1c8000000000000000000000000000000000000000000000000000000000148061019057507fffffffff0000000000000000000000000000000000000000000000000000000082167fb5dee12700000000000000000000000000000000000000000000000000000000145b806101dc57507fffffffff0000000000000000000000000000000000000000000000000000000082167f01ffc9a700000000000000000000000000000000000000000000000000000000145b92915050565b5f6101eb61076c565b905090565b61021a7f00000000000000000000000000000000000000000000000000000000000000008261079e565b5f80828060200190518101906102309190612e30565b90925090507f9a8d9ccdcfd28f8a8f8f9a8c000000000000000000000000000000000000000071ffffffffffffffffffffffffffffffffffff198316016102bf576040517f0f31c63c00000000000000000000000000000000000000000000000000000000815271ffffffffffffffffffffffffffffffffffff19831660048201526024015b60405180910390fd5b5f6102c8610763565b90505f807f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031683866040516024016103329291906001600160a01b0392909216825271ffffffffffffffffffffffffffffffffffff1916602082015260400190565b60408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167f472466c200000000000000000000000000000000000000000000000000000000179052516103959190612f00565b5f60405180830381855af49150503d805f81146103cd576040519150601f19603f3d011682016040523d82523d5f602084013e6103d2565b606091505b5091509150816103e5576103e5816107e3565b6103f76103f1866107eb565b8561081c565b5f610401866108b9565b90505f61040e8583610905565b90507f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000601089901c16176001600160a01b03861663ef5d6bbb8261046f6101e2565b6040517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b16815260048101929092526001600160a01b031660248201526044015f604051808303815f87803b1580156104cb575f80fd5b505af11580156104dd573d5f803e3d5ffd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f4552433230526567697374727900000000000000000000000000000000000000603082015261055f935001905060405160208183030381529060405261055a90612f1b565b610bf7565b6106a7576040517f6e7300000000000000000000000000000000000000000000000000000000000060208201527f65726332302d707570706574000000000000000000000000000000000000000060228201526001600160a01b0387169063b29e4089906030016040516020818303038152906040526105de90612f1b565b6040518263ffffffff1660e01b81526004016105fc91815260200190565b5f604051808303815f87803b158015610613575f80fd5b505af1158015610625573d5f803e3d5ffd5b505060408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f455243323052656769737472790000000000000000000000000000000000000060308201526106a793500190506040516020818303038152906040526106a290612f1b565b610c81565b60408051613a3160f11b60208201527f65726332302d707570706574000000000000000000000000000000000000000060228201527f45524332305265676973747279000000000000000000000000000000000000006030820152610726910160405160208183030381529060405261071f90612f1b565b8284610ccd565b505050505050505050565b6040517fb6622fc000000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f6101eb610d8a565b7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffcc36013560601c8061079b5750335b90565b6107a88282610d93565b156107df576040517f1401206800000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5050565b805160208201fd5b5f6101dc613a3160f11b837f4d65746164617461000000000000000000000000000000000000000000000000610dac565b5f610869825f01516040805160f89290921b7fff00000000000000000000000000000000000000000000000000000000000000166020830152805160018184030181526021909201905290565b90505f61087e83602001518460400151610e31565b90505f61089384602001518560400151610e4d565b604080515f8152602081019091529091506108b18682868686610e79565b505050505050565b5f6101dc7f7379000000000000000000000000000000000000000000000000000000000000837f455243323053797374656d000000000000000000000000000000000000000000610dac565b604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f466163746f72790000000000000000000000000000000000000000000000000060308201525f916001600160a01b03851691633ae7af0891016040516020818303038152906040526109a790612f1b565b6040516024810186905260440160408051601f198184030181529181526020820180517bffffffffffffffffffffffffffffffffffffffffffffffffffffffff167fb9eb8bfb00000000000000000000000000000000000000000000000000000000179052517fffffffff0000000000000000000000000000000000000000000000000000000060e085901b168152610a44929190600401612f69565b5f604051808303815f875af1158015610a5f573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610a869190810190612f81565b806020019051810190610a999190612fc6565b90506001600160a01b03831663bfdfaff77f6e730000000000000000000000000000000000000000000000000000000000007dffffffffffffffffffffffffffff00000000000000000000000000000000851617604080517f737900000000000000000000000000000000000000000000000000000000000060208201527f707570706574000000000000000000000000000000000000000000000000000060228201527f44656c65676174696f6e00000000000000000000000000000000000000000000603082015201604051602081830303815290604052610b7c90612f1b565b604080515f815260208101918290527fffffffff0000000000000000000000000000000000000000000000000000000060e086901b16909152610bc492919060248101612fec565b5f604051808303815f87803b158015610bdb575f80fd5b505af1158015610bed573d5f803e3d5ffd5b5050505092915050565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f81518110610c2e57610c2e61300a565b60209081029190910101525f610c6d7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b610f28565b9050610c798160f81c90565b949350505050565b610cca817e14010014000000000000000000000000000000000000000000000000000000610cad610fe2565b610cb5611058565b610cbd611090565b610cc5611114565b61118a565b50565b6040805160018082528183019092525f916020808301908036833701905050905082815f81518110610d0157610d0161300a565b602002602001018181525050610d8484825f85604051602001610d4f919060609190911b7fffffffffffffffffffffffffffffffffffffffff00000000000000000000000016815260140190565b60408051601f198184030181529190527e1401001400000000000000000000000000000000000000000000000000000061123e565b50505050565b5f6101eb6112b3565b5f610da58383805190602001206112f1565b9392505050565b5f610db960706010613032565b7fffffffffffffffffffffffffffffffff000000000000000000000000000000008316901c601084901c7dffffffffffffffffffffffffffff00000000000000000000000000000000167fffff0000000000000000000000000000000000000000000000000000000000008616171790509392505050565b815181515f9181810160389190911b1760609190911b17610da5565b60608282604051602001610e62929190613045565b604051602081830303815290604052905092915050565b5f610e826112b3565b9050306001600160a01b03821603610ea657610ea186868686866113a7565b6108b1565b6040517f298314fb0000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063298314fb90610ef390899089908990899089906004016130ad565b5f604051808303815f87803b158015610f0a575f80fd5b505af1158015610f1c573d5f803e3d5ffd5b50505050505050505050565b5f80610f326112b3565b9050306001600160a01b03821603610f5857610f50868686866113c4565b915050610c79565b6040517f8c364d590000000000000000000000000000000000000000000000000000000081526001600160a01b03821690638c364d5990610fa39089908990899089906004016130fd565b602060405180830381865afa158015610fbe573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f50919061312b565b6040805160018082528183019092525f9182919060208083019080368337019050509050605f815f8151811061101a5761101a61300a565b602002602001019060c581111561103357611033613142565b908160c581111561104657611046613142565b905250611052816113f0565b91505090565b6040805160018082528183019092525f91829190602080830190803683370190505090506061815f8151811061101a5761101a61300a565b604080516001808252818301909252606091816020015b60608152602001906001900390816110a75790505090506040518060400160405280600b81526020017f6e616d6573706163654964000000000000000000000000000000000000000000815250815f815181106111065761110661300a565b602002602001018190525090565b604080516001808252818301909252606091816020015b606081526020019060019003908161112b5790505090506040518060400160405280600c81526020017f746f6b656e416464726573730000000000000000000000000000000000000000815250815f815181106111065761110661300a565b5f6111936112b3565b9050306001600160a01b038216036111b8576111b38787878787876115a7565b611235565b6040517f0ba51f490000000000000000000000000000000000000000000000000000000081526001600160a01b03821690630ba51f4990611207908a908a908a908a908a908a906004016131ae565b5f604051808303815f87803b15801561121e575f80fd5b505af1158015611230573d5f803e3d5ffd5b505050505b50505050505050565b5f6112476112b3565b9050306001600160a01b0382160361126657610ea186868686866119fb565b6040517f390baae00000000000000000000000000000000000000000000000000000000081526001600160a01b0382169063390baae090610ef390899089908990899089906004016131f7565b7f629a4c26e296b22a8e0856e9f6ecb2d1008d7e00081111962cd175fa7488e175545f906001600160a01b0316806112ec573391505090565b919050565b6040805160028082526060820183525f9283929190602083019080368337019050509050836001600160a01b03165f1b815f815181106113335761133361300a565b60200260200101818152505082816001815181106113535761135361300a565b60209081029190910101525f6113927f7462776f726c64000000000000000000496e7374616c6c65644d6f64756c65738383630101000160d81b610f28565b905061139e8160f81c90565b95945050505050565b6113bd85858585856113b88b611a10565b611a93565b5050505050565b5f61139e6113d28686611db5565b60ff858116601b0360080285901c166113eb8587611e0a565b611e42565b5f601c82511115611419578151604051635318beb960e01b81526004016102b691815260200190565b5f8080805b85518110156114f1575f61145b87838151811061143d5761143d61300a565b602002602001015160c581111561145657611456613142565b611e92565b9050805f0361146f576001909201916114a7565b82156114a7576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b80840193506008826004601f0303028783815181106114c8576114c861300a565b602002602001015160c58111156114e1576114e1613142565b901b94909417935060010161141e565b50600581111561151757604051635318beb960e01b8152600481018290526024016102b6565b8451819003600861152a6002602061323d565b6115349190613250565b83901b93909317926008600161154c6002602061323d565b611556919061323d565b6115609190613250565b81901b939093179260086001806115796002602061323d565b611583919061323d565b61158d919061323d565b6115979190613250565b9190911b92909217949350505050565b613a3160f11b867fffff000000000000000000000000000000000000000000000000000000000000161480159061162057507f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001614155b1561168157613a3160f11b868760405160200161163f91815260200190565b60408051601f19818403018152908290527f31b466830000000000000000000000000000000000000000000000000000000082526102b6939291600401613267565b61168a85611ef0565b611695846001612132565b61169f835f612132565b60e084901c60e885901c0160ff168251146116ff5760e084901c60e885901c0160ff1682516040517f0f72cb98000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b60e085901c60e886901c0160ff1681511461175f5760e085901c60e886901c0160ff1681516040517f7dec4c00000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b60e085901c60e886901c0160ff1660e084901c60e885901c0160ff16146117d75760e085901c60e886901c0160ff1660e084901c60e885901c0160ff166040517ff29d4d88000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b6117e0856122c6565b6117e9846122c6565b1461183b576117f7856122c6565b611800846122c6565b6040517f65cc0adf000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b611844856122f7565b61184d846122f7565b1461189f5761185b856122f7565b611864846122f7565b6040517fedea9587000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b5f5b6118aa866122c6565b811015611940576118cf6118be8583612313565b60c581111561145657611456613142565b6008601b8390030287901c60ff1614611938576008601b8290030286901c60ff166118fd6118be8684612313565b6040517f254c7db4000000000000000000000000000000000000000000000000000000008152600481019290925260248201526044016102b6565b6001016118a1565b5061194a86612333565b156119a457858660405160200161196391815260200190565b60408051601f19818403018152908290527fdfaaf9cf0000000000000000000000000000000000000000000000000000000082526102b69291600401612f69565b6119f086868686866040516020016119bc91906132a7565b604051602081830303815290604052866040516020016119dc91906132a7565b6040516020818303038152906040526123a9565b6108b186600161247c565b6113bd8585611a0a8487611e0a565b8561251e565b5f7f8b9d8c8b908d9affffffffffffffffffab9e9d939a8d000000000000000000008201611a5e57507e60030220202000000000000000000000000000000000000000000000000000919050565b6101dc611a8b7f746273746f72650000000000000000005461626c657300000000000000000000846127a9565b60205f611e42565b7f6f74000000000000000000000000000000000000000000000000000000000000867fffff0000000000000000000000000000000000000000000000000000000000001603611b1f57857f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a986868686604051611b1294939291906132b9565b60405180910390a26108b1565b5f611b29876127c4565b90505f5b8151811015611bfb575f828281518110611b4957611b4961300a565b60200260200101519050611b756001826affffffffffffffffffffff191661284990919063ffffffff16565b15611bf2576040517f57066c9c000000000000000000000000000000000000000000000000000000008152606082901c906357066c9c90611bc4908c908c908c908c908c908c90600401613302565b5f604051808303815f87803b158015611bdb575f80fd5b505af1158015611bed573d5f803e3d5ffd5b505050505b50600101611b2d565b50867f8dbb3a9672eebfd3773e72dd9c102393436816d832c7ba9e1e1ac8fcadcac7a987878787604051611c3294939291906132b9565b60405180910390a25f611c458888611db5565b90505f602087019050611c5b825f895184612866565b5f611c65856122f7565b1115611ce5575f611c768a8a612921565b87815590506020860191505f805f5b611c8e886122f7565b8160ff161015611ce057611ca38d8d83612976565b9250611cbe8a8260ff166028026038011c64ffffffffff1690565b9150611ccc835f8488612866565b611cd68286613032565b9450600101611c85565b505050505b5f5b8351811015610f1c575f848281518110611d0357611d0361300a565b60200260200101519050611d2f6002826affffffffffffffffffffff191661284990919063ffffffff16565b15611dac576040517f5b28cdaf000000000000000000000000000000000000000000000000000000008152606082901c90635b28cdaf90611d7e908e908e908e908e908e908e90600401613302565b5f604051808303815f87803b158015611d95575f80fd5b505af1158015611da7573d5f803e3d5ffd5b505050505b50600101611ce7565b5f8282604051602001611dc992919061335a565b60408051601f1981840301815291905280516020909101207f86425bff6b57326c7859e89024fe4f238ca327a1ae4a230180dd2f0e88aaa7d9189392505050565b5f80805b8360ff16811015611e3a57611e3060ff601b83900360080287901c1683613032565b9150600101611e0e565b509392505050565b5f60208210611e6757602082048401935060208281611e6357611e63613394565b0691505b508254600882021b602082900380841115611e3a576001850154600882021c82179150509392505050565b5f808260c5811115611ea657611ea6613142565b60ff1690506061811015611ec057601f1660010192915050565b60618360c5811115611ed457611ed4613142565b03611ee25750601492915050565b505f92915050565b50919050565b80611f27576040517f220c0f6500000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5f611f31826122f7565b90506005811115611f78576040517f7f2372c300000000000000000000000000000000000000000000000000000000815260048101829052600560248201526044016102b6565b5f611f82836122c6565b90505f611f8f8383613032565b9050601c811115611fd6576040517f4a8a06ad00000000000000000000000000000000000000000000000000000000815260048101829052601c60248201526044016102b6565b5f805b8381101561207f5760ff601b82900360080287901c165f81900361202c576040517f01f2a07c000000000000000000000000000000000000000000000000000000008152600481018390526024016102b6565b602081111561206a576040517f24c85d58000000000000000000000000000000000000000000000000000000008152600481018390526024016102b6565b6120748184613032565b925050600101611fd9565b50612089856129f4565b81146120d557612098856129f4565b6040517f9365944a0000000000000000000000000000000000000000000000000000000081526004810191909152602481018290526044016102b6565b825b601c8110156108b15760ff601b82900360080287901c168015612129576040517fbb68821a000000000000000000000000000000000000000000000000000000008152600481018390526024016102b6565b506001016120d7565b8015801561213e575081155b1561215e57604051635318beb960e01b81525f60048201526024016102b6565b5f612168836122f7565b9050600581111561218f57604051635318beb960e01b8152600481018290526024016102b6565b5f612199846122c6565b90505f6121a68383613032565b9050601c8111156121cd57604051635318beb960e01b8152600481018290526024016102b6565b5f805b83811015612236575f6121e66118be8984612313565b9050805f03612221576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b61222b8184613032565b9250506001016121d0565b50612240866129f4565b811461226b5761224f866129f4565b604051635318beb960e01b81526004016102b691815260200190565b825b82811015611235575f6122836118be8984612313565b905080156122bd576040517ff1e56be400000000000000000000000000000000000000000000000000000000815260040160405180910390fd5b5060010161226d565b5f600860016122d76002602061323d565b6122e1919061323d565b6122eb9190613250565b8260ff911c1692915050565b5f60086001806123096002602061323d565b6122d7919061323d565b5f601b8290036008028360ff911c1660c5811115610da557610da5613142565b6040805160018082528183019092525f918291906020808301908036833701905050905082815f8151811061236a5761236a61300a565b60209081029190910101525f610c6d7f746273746f72650000000000000000005265736f7572636549647300000000008383630101000160d81b6113c4565b604080516020810187905280820186905260608082018690528251808303909101815260809091019091525f6123df8484610e31565b90505f6123ec8585610e4d565b6040805160018082528183019092529192505f91906020808301908036833701905050905089815f815181106124245761242461300a565b6020908102919091010152610f1c7f746273746f72650000000000000000005461626c657300000000000000000000828686867e60030220202000000000000000000000000000000000000000000000000000611a93565b6040805160018082528183019092525f916020808301908036833701905050905082815f815181106124b0576124b061300a565b6020026020010181815250506125197f746273746f72650000000000000000005265736f7572636549647300000000005f1b825f856040516020016124fc91151560f81b815260010190565b60408051601f19818403018152919052630101000160d81b6119fb565b505050565b7f6f74000000000000000000000000000000000000000000000000000000000000847fffff00000000000000000000000000000000000000000000000000000000000016036125a857837f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be84848460405161259b939291906133a8565b60405180910390a2610d84565b5f6125b38585611db5565b90505f6125bf866127c4565b90505f5b815181101561268d575f8282815181106125df576125df61300a565b6020026020010151905061260b6004826affffffffffffffffffffff191661284990919063ffffffff16565b15612684576040517f964f667d000000000000000000000000000000000000000000000000000000008152606082901c9063964f667d90612656908b908b908b908b906004016133e4565b5f604051808303815f87803b15801561266d575f80fd5b505af115801561267f573d5f803e3d5ffd5b505050505b506001016125c3565b50857f8c0b5119d4cec7b284c6b1b39252a03d1e2f2d7451a5895562524c113bb952be8686866040516126c2939291906133a8565b60405180910390a26126dd828565ffffffffffff1685612a16565b5f5b8151811015611235575f8282815181106126fb576126fb61300a565b602002602001015190506127276008826affffffffffffffffffffff191661284990919063ffffffff16565b156127a0576040517fa8ba8721000000000000000000000000000000000000000000000000000000008152606082901c9063a8ba872190612772908b908b908b908b906004016133e4565b5f604051808303815f87803b158015612789575f80fd5b505af115801561279b573d5f803e3d5ffd5b505050505b506001016126df565b60408051602081018490529081018290525f90606001611dc9565b6040805160018082528183019092526060915f91906020808301908036833701905050905082815f815181106127fc576127fc61300a565b60209081029190910101525f6128337f746273746f726500000000000000000053746f7265486f6f6b730000000000008383612a2c565b9050610c79612844825f8451612a65565b612af1565b5f8160ff16826128598560581c90565b1660ff1614905092915050565b82156128de57602083106128905760208304840193506020838161288c5761288c613394565b0692505b82156128de5760208390035f5f19600885021c1990506008850281811c91508351811c90508119875416828216178755508184116128cf575050610d84565b50600194909401939182900391015b5b602082106129005780518455600190930192601f19909101906020016128df565b8115610d84575f5f19600884021c8554835182191691161785555050505050565b5f828260405160200161293592919061335a565b60408051601f1981840301815291905280516020909101207f14e2fcc58e58e68ec7edc30c8d50dccc3ce2714a623ec81f46b6a63922d76569189392505050565b5f838360405160200161298a92919061335a565b604051602081830303815290604052805190602001208260f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19167f3b4102da22e32d82fc925482184f16c09fd4281692720b87d124aef6da48a0f118185f1c90509392505050565b5f6008612a036002602061323d565b612a0d9190613250565b9190911c919050565b61251983838351612a278560200190565b612866565b6060610c79612a3c858585612976565b5f612a6085612a4b8989612b00565b9060ff166028026038011c64ffffffffff1690565b612b12565b5f81831180612a745750835182115b15612ab1578383836040517f23230fa30000000000000000000000000000000000000000000000000000000081526004016102b69392919061341c565b60208401612abf8482613032565b90505f612acc858561323d565b6fffffffffffffffffffffffffffffffff1660809290921b9190911795945050505050565b60605f610da58360155f612b35565b5f610da5612b0e8484612921565b5490565b60405160208101601f19603f8484010116604052828252611e3a85858584612bad565b60605f612b428560801c90565b90506fffffffffffffffffffffffffffffffff85165f858281612b6757612b67613394565b0490506040519350602084016020820281016040528185525f5b82811015612ba1578451871c825293870193602090910190600101612b81565b50505050509392505050565b8215612c315760208310612bd757602083048401935060208381612bd357612bd3613394565b0692505b8215612c315760208390035f81841015612bf857505f19600884021c612c01565b505f19600882021c5b8554600886021b818451168219821617845250818411612c22575050610d84565b50600194909401939182900391015b5b60208210612c535783548152600190930192601f1990910190602001612c32565b8115610d84575f5f19600884021c8251865482191691161782525050505050565b5f60208284031215612c84575f80fd5b81357fffffffff0000000000000000000000000000000000000000000000000000000081168114610da5575f80fd5b634e487b7160e01b5f52604160045260245ffd5b6040516060810167ffffffffffffffff81118282101715612cea57612cea612cb3565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715612d1957612d19612cb3565b604052919050565b5f67ffffffffffffffff821115612d3a57612d3a612cb3565b50601f01601f191660200190565b5f60208284031215612d58575f80fd5b813567ffffffffffffffff811115612d6e575f80fd5b8201601f81018413612d7e575f80fd5b8035612d91612d8c82612d21565b612cf0565b818152856020838501011115612da5575f80fd5b816020840160208301375f91810160200191909152949350505050565b5f5b83811015612ddc578181015183820152602001612dc4565b50505f910152565b5f612df1612d8c84612d21565b9050828152838383011115612e04575f80fd5b610da5836020830184612dc2565b5f82601f830112612e21575f80fd5b610da583835160208501612de4565b5f8060408385031215612e41575f80fd5b825171ffffffffffffffffffffffffffffffffffff1981168114612e63575f80fd5b602084015190925067ffffffffffffffff80821115612e80575f80fd5b9084019060608287031215612e93575f80fd5b612e9b612cc7565b825160ff81168114612eab575f80fd5b8152602083015182811115612ebe575f80fd5b612eca88828601612e12565b602083015250604083015182811115612ee1575f80fd5b612eed88828601612e12565b6040830152508093505050509250929050565b5f8251612f11818460208701612dc2565b9190910192915050565b80516020808301519190811015611eea575f1960209190910360031b1b16919050565b5f8151808452612f55816020860160208601612dc2565b601f01601f19169290920160200192915050565b828152604060208201525f610c796040830184612f3e565b5f60208284031215612f91575f80fd5b815167ffffffffffffffff811115612fa7575f80fd5b8201601f81018413612fb7575f80fd5b610c7984825160208401612de4565b5f60208284031215612fd6575f80fd5b81516001600160a01b0381168114610da5575f80fd5b838152826020820152606060408201525f61139e6060830184612f3e565b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52601160045260245ffd5b808201808211156101dc576101dc61301e565b5f8351613056818460208801612dc2565b83519083019061306a818360208801612dc2565b01949350505050565b5f815180845260208085019450602084015f5b838110156130a257815187529582019590820190600101613086565b509495945050505050565b85815260a060208201525f6130c560a0830187613073565b82810360408401526130d78187612f3e565b905084606084015282810360808401526130f18185612f3e565b98975050505050505050565b848152608060208201525f6131156080830186613073565b60ff949094166040830152506060015292915050565b5f6020828403121561313b575f80fd5b5051919050565b634e487b7160e01b5f52602160045260245ffd5b5f8282518085526020808601955060208260051b840101602086015f5b848110156131a157601f1986840301895261318f838351612f3e565b98840198925090830190600101613173565b5090979650505050505050565b86815285602082015284604082015283606082015260c060808201525f6131d860c0830185613156565b82810360a08401526131ea8185613156565b9998505050505050505050565b85815260a060208201525f61320f60a0830187613073565b60ff86166040840152828103606084015261322a8186612f3e565b9150508260808301529695505050505050565b818103818111156101dc576101dc61301e565b80820281158282048414176101dc576101dc61301e565b7fffff00000000000000000000000000000000000000000000000000000000000084168152826020820152606060408201525f61139e6060830184612f3e565b602081525f610da56020830184613156565b608081525f6132cb6080830187613073565b82810360208401526132dd8187612f3e565b905084604084015282810360608401526132f78185612f3e565b979650505050505050565b86815260c060208201525f61331a60c0830188613073565b828103604084015261332c8188612f3e565b905085606084015282810360808401526133468186612f3e565b9150508260a0830152979650505050505050565b8281525f60208083018451602086015f5b828110156133875781518452928401929084019060010161336b565b5091979650505050505050565b634e487b7160e01b5f52601260045260245ffd5b606081525f6133ba6060830186613073565b65ffffffffffff8516602084015282810360408401526133da8185612f3e565b9695505050505050565b848152608060208201525f6133fc6080830186613073565b65ffffffffffff8516604084015282810360608401526132f78185612f3e565b606081525f61342e6060830186612f3e565b6020830194909452506040015291905056fea164736f6c6343000818000a","sourceMap":"1122:1793:128:-:0;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;918:308:53;;;;;;:::i;:::-;;:::i;:::-;;;516:14:207;;509:22;491:41;;479:2;464:18;918:308:53;;;;;;;;1196:113:58;;;:::i;:::-;;;-1:-1:-1;;;;;707:55:207;;;689:74;;677:2;662:18;1196:113:58;543:226:207;1305:1507:128;;;;;;:::i;:::-;;:::i;:::-;;1550:110:58;;;-1:-1:-1;;3551:14:58;3547:25;3534:39;2632:25:207;;2620:2;2605:18;1550:110:58;2486:177:207;2816:97:128;;;;;;:::i;:::-;;:::i;1876:98:58:-;;;:::i;918:308:53:-;1042:4;1067:40;;;1082:25;1067:40;;:104;;-1:-1:-1;1117:54:53;;;1132:39;1117:54;1067:104;:154;;;-1:-1:-1;1181:40:53;;;1196:25;1181:40;1067:154;1054:167;918:308;-1:-1:-1;;918:308:53:o;1196:113:58:-;1239:14;1268:36;:34;:36::i;:::-;1261:43;;1196:113;:::o;1305:1507:128:-;1427:40;1447:6;1455:11;1427:19;:40::i;:::-;1494:17;1513:33;1561:11;1550:53;;;;;;;;;;;;:::i;:::-;1493:110;;-1:-1:-1;1493:110:128;-1:-1:-1;1676:29:128;-1:-1:-1;;1676:29:128;;;1672:96;;1722:39;;;;;-1:-1:-1;;4839:79:207;;1722:39:128;;;4821:98:207;4794:18;;1722:39:128;;;;;;;;1672:96;1818:16;1848:8;:6;:8::i;:::-;1818:39;;1864:12;1878:23;1905:19;-1:-1:-1;;;;;1905:32:128;2002:5;2009:9;1945:75;;;;;;;;-1:-1:-1;;;;;5142:55:207;;;;5124:74;;-1:-1:-1;;5234:79:207;5229:2;5214:18;;5207:107;5112:2;5097:18;;4930:390;1945:75:128;;;;-1:-1:-1;;1945:75:128;;;;;;;;;;;;;;;;;;;;1905:121;;;1945:75;1905:121;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;1863:163;;;;2037:7;2032:41;;2046:27;2062:10;2046:15;:27::i;:::-;2111:56;2129:27;2146:9;2129:16;:27::i;:::-;2158:8;2111:17;:56::i;:::-;2219:24;2246:25;2261:9;2246:14;:25::i;:::-;2219:52;;2277:14;2294:34;2307:5;2314:13;2294:12;:34::i;:::-;2277:51;-1:-1:-1;1531:18:59;1554:33;385:5:16;1554:33:59;;;;1523:65;-1:-1:-1;;;;;2468:23:128;;;1523:65:59;2505:12:128;:10;:12::i;:::-;2468:50;;;;;;;;;;;;;5822:25:207;;;;-1:-1:-1;;;;;5883:55:207;5863:18;;;5856:83;5795:18;;2468:50:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;803:76:134;;;-1:-1:-1;;;803:76:134;;;6133:92:207;836:16:134;6241:11:207;;;6234:100;854:24:134;6350:12:207;;;6343:101;2577:46:128;;-1:-1:-1;6460:12:207;;-1:-1:-1;803:76:134;;;;;;;;;;;;795:85;;;:::i;:::-;2577:21:128;:46::i;:::-;2572:167;;426:54:134;;443:18;426:54;;;7000:92:207;463:16:134;7108:11:207;;;7101:100;-1:-1:-1;;;;;2633:23:128;;;;;7217:12:207;;426:54:134;;;;;;;;;;;;418:63;;;:::i;:::-;2633:44:128;;;;;;;;;;;;;2632:25:207;;2620:2;2605:18;;2486:177;2633:44:128;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;803:76:134;;;-1:-1:-1;;;803:76:134;;;6133:92:207;836:16:134;6241:11:207;;;6234:100;854:24:134;6350:12:207;;;6343:101;2685:47:128;;-1:-1:-1;6460:12:207;;-1:-1:-1;803:76:134;;;;;;;;;;;;795:85;;;:::i;:::-;2685:22:128;:47::i;:::-;803:76:134;;;-1:-1:-1;;;803:76:134;;;6133:92:207;836:16:134;6241:11:207;;;6234:100;854:24:134;6350:12:207;;;6343:101;2744:63:128;;6460:12:207;803:76:134;;;;;;;;;;;;795:85;;;:::i;:::-;2787:11:128;2800:6;2744:17;:63::i;:::-;1355:1457;;;;;;;;1305:1507;:::o;2816:97::-;2876:32;;;;;;;;;;;;;;1876:98:58;1915:7;1937:32;:30;:32::i;2743:383::-;3029:34;3033:14;3029:34;3016:48;3010:4;3006:59;;3076:45;;-1:-1:-1;3111:10:58;3076:45;2743:383;:::o;1924:194:53:-;2026:39;2038:13;2053:11;2026;:39::i;:::-;2022:92;;;2082:25;;;;;;;;;;;;;;2022:92;1924:194;;:::o;501:217:95:-;704:6;698:13;691:4;683:6;679:17;672:40;1047:181:140;1106:10;1129:96;-1:-1:-1;;;1192:9:140;1209:13;1129:25;:96::i;15003:443:137:-;15085:24;15112:29;15125:6;:15;;;18088:26;;;10248:3:207;10244:16;;;;10262:66;10240:89;18088:26:137;;;10228:102:207;18088:26:137;;;;;;;;;10346:11:207;;;;18088:26:137;;;18000:119;15112:29;15085:56;;15148:29;15180:41;15194:6;:11;;;15207:6;:13;;;15180;:41::i;:::-;15148:73;;15227:25;15255:41;15269:6;:11;;;15282:6;:13;;;15255;:41::i;:::-;15332:16;;;15303:26;15332:16;;;;;;;;15227:69;;-1:-1:-1;15355:86:137;15377:8;15332:16;15398:11;15411:15;15227:69;15355:21;:86::i;:::-;15079:367;;;;15003:443;;:::o;1230:184:140:-;1287:10;1310:101;1346:15;1374:9;1391:17;1310:25;:101::i;799:322:178:-;740:64:177;;;757:15;740:64;;;6133:92:207;405:17:177;6241:11:207;;;6234:100;785:18:177;6350:12:207;;;6343:101;869:14:178;;-1:-1:-1;;;;;914:10:178;;;;;6460:12:207;740:64:177;;;;;;;;;;;;732:73;;;:::i;:::-;941:60:178;;;;;2632:25:207;;;2605:18;;941:60:178;;;-1:-1:-1;;941:60:178;;;;;;;;;;;;;;;;;;;;914:88;;941:60;914:88;;;;;;;;;941:60;914:88;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;-1:-1:-1;;914:88:178;;;;;;;;;;;;:::i;:::-;898:123;;;;;;;;;;;;:::i;:::-;889:132;-1:-1:-1;;;;;;1025:33:178;;;816:18:98;578:36:59;2820:46;;2819:74;603:67:177;;;620:15;603:67;;;6133:92:207;405:17:177;6241:11:207;;;6234:100;648:21:177;6350:12:207;;;6343:101;6460:12;603:67:177;;;;;;;;;;;;595:76;;;:::i;:::-;1105:12:178;;;1115:1;1105:12;;;;;;;;;1025:93;;;;;;;;;;;;;;;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;799:322;;;;:::o;3232:315:27:-;3345:16;;;3359:1;3345:16;;;;;;;;;3297:11;;;;3345:16;;;;;;;;;;;;-1:-1:-1;3345:16:27;3316:45;;3400:10;3367:9;3377:1;3367:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3418:13;3434:64;1076:66;3471:9;3418:13;-1:-1:-1;;;3434:26:27;:64::i;:::-;3418:80;;3512:29;3533:5;3520:20;;7897:5;7811:97;3512:29;3504:38;3232:315;-1:-1:-1;;;;3232:315:27:o;2723:174:138:-;2777:115;2803:8;1147:66;2827:14;:12;:14::i;:::-;2843:16;:14;:16::i;:::-;2861:13;:11;:13::i;:::-;2876:15;:13;:15::i;:::-;2777:25;:115::i;:::-;2723:174;:::o;5451:301::-;5575:16;;;5589:1;5575:16;;;;;;;;;5546:26;;5575:16;;;;;;;;;;;-1:-1:-1;5575:16:138;5546:45;;5630:11;5597:9;5607:1;5597:12;;;;;;;;:::i;:::-;;;;;;:45;;;;;5649:98;5676:8;5686:9;5697:1;5718:12;5700:32;;;;;;;9664:2:207;9660:15;;;;9677:66;9656:88;9644:101;;9770:2;9761:12;;9515:264;5700:32:138;;;;-1:-1:-1;;5700:32:138;;;;;;;;;1147:66;5649:26;:98::i;:::-;5540:212;5451:301;;;:::o;3799:97:58:-;3840:7;3862:29;:27;:29::i;1513:176:53:-;1606:4;1625:59;1646:13;1671:11;1661:22;;;;;;1625:20;:59::i;:::-;1618:66;1513:176;-1:-1:-1;;;1513:176:53:o;980:257:59:-;1067:10;1196:26;438:6;385:5:16;1196:26:59;:::i;:::-;1178:13;;;:45;;385:5:16;1142:31:59;;;;;1123:15;;;:51;:101;;-1:-1:-1;980:257:59;;;;;:::o;18310:334:137:-;18592:18;;18612:20;;18410:29;;2444:5:15;;;834:16;2475:39;;;;2457:58;2556:23;2541:39;;;;2523:58;18570:63:137;2303:344:15;18809:168:137;18897:12;18948:4;18963:6;18924:48;;;;;;;;;:::i;:::-;;;;;;;;;;;;;18917:55;;18809:168;;;;:::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;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;1566:200:138:-;1660:19;;;1677:1;1660:19;;;;;;;;;1613:6;;;;1660:19;;;;;;;;;;;;-1:-1:-1;1660:19:138;1627:52;;1701:18;1685:10;1696:1;1685:13;;;;;;;;:::i;:::-;;;;;;:34;;;;;;;;;:::i;:::-;;;;;;;;;;;:::i;:::-;;;-1:-1:-1;1733:28:138;1750:10;1733:16;:28::i;:::-;1726:35;;;1566:200;:::o;1883:208::-;1981:19;;;1998:1;1981:19;;;;;;;;;1932:6;;;;1981:19;;;;;;;;;;;;-1:-1:-1;1981:19:138;1946:54;;2024:18;2006:12;2019:1;2006:15;;;;;;;;:::i;2225:142::-;2314:15;;;2327:1;2314:15;;;;;;;;;2271:24;;2314:15;;;;;;;;;;;;;;;;;;;;2303:26;;2335:27;;;;;;;;;;;;;;;;;:8;2344:1;2335:11;;;;;;;;:::i;:::-;;;;;;:27;;;;2225:142;:::o;2507:151::-;2602:15;;;2615:1;2602:15;;;;;;;;;2555:26;;2602:15;;;;;;;;;;;;;;;;;;;;2589:28;;2623:30;;;;;;;;;;;;;;;;;:10;2634:1;2623: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;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;5824:266;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;1766:227::-;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;4313:382:72:-;4448:16;;;4462:1;4448:16;;;;;;;;4395;;;;4448;4462:1;4448:16;;;;;;;;;;-1:-1:-1;4448:16:72;4419:45;;4509:13;-1:-1:-1;;;;;4493:31:72;4485:40;;4470:9;4480:1;4470:12;;;;;;;;:::i;:::-;;;;;;:55;;;;;4546:13;4531:9;4541:1;4531:12;;;;;;;;:::i;:::-;;;;;;;;;;:28;4566:13;4582:64;1182:66;4619:9;4566:13;-1:-1:-1;;;4582:26:72;:64::i;:::-;4566:80;;4660:29;4681:5;4668:20;;7897:5:27;7811:97;4660:29:72;4652:38;4313:382;-1:-1:-1;;;;;4313:382:72:o;13982:285:20:-;14168:94;14178:7;14187:8;14197:10;14209:14;14225:11;14238:23;14253:7;14238:14;:23::i;:::-;14168:9;:94::i;:::-;13982:285;;;;;:::o;38022:541::-;38179:7;38316:242;38360:59;38401:7;38410:8;38360:40;:59::i;:::-;38437:31;;;;4479:19:3;:27;537:1:30;4478:44:3;4444:79;;;4431:93;38486:63:20;38525:11;38538:10;38486:38;:63::i;:::-;38316:17;:242::i;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;;;;;;2632:25:207;;2620:2;2605:18;;2486: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;;;;;2632:25:207;;;2605:18;;2664:38:17;2486:177:207;2617:85:17;2802:14;;:30;;;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;3090:41:17;;;3080:51;;;;;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;3147:47:17;;;3137:57;;;;;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;:::-;:21;;;;:::i;:::-;1576:38;;;;:::i;:::-;3210:49:17;;;;3200:59;;;;;1247:2059;-1:-1:-1;;;;1247:2059:17:o;8858:2614:20:-;-1:-1:-1;;;9118:7:20;:35;;;;;;:83;;-1:-1:-1;9178:23:20;9157:7;:44;;;;9118:83;9114:209;;;-1:-1:-1;;;9273:7:20;9306;9289:25;;;;;;15783:19:207;;15827:2;15818:12;;15623:213;9289:25:20;;;;-1:-1:-1;;9289:25:20;;;;;;;;;;9218:98;;;;;;;;;;:::i;9114:209::-;9369:22;:11;:20;:22::i;:::-;9432:40;:9;9465:4;9432:18;:40::i;:::-;9478:43;:11;9513:5;9478:20;:43::i;:::-;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9609:8:20;:15;:40;9605:148;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9730:15:20;;9666:80;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;16456:18;;9666:80:20;16309:248:207;9605:148:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9803:10:20;:17;:44;9799:158;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;9932:17:20;;9864:86;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;16456:18;;9864:86:20;16309:248:207;9799:158:20;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10014:50:20;10010:171;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;1576:38:30;5165:60:17;;;1408:34:30;5088:59:17;;;5082:144;5067:159;;10081:93:20;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;16456:18;;10081:93:20;16309:248:207;10010:171:20;10223:29;:11;:27;:29::i;:::-;10190;:11;:27;:29::i;:::-;:62;10186:225;;10328:29;:11;:27;:29::i;:::-;10367;:11;:27;:29::i;:::-;10269:135;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;16456:18;;10269:135:20;16309:248:207;10186:225:20;10454:30;:11;:28;:30::i;:::-;10420;:11;:28;:30::i;:::-;:64;10416:230;;10561:30;:11;:28;:30::i;:::-;10601;:11;:28;:30::i;:::-;10501:138;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;16456:18;;10501:138:20;16309:248:207;10416:230:20;10743:9;10738:314;10758:29;:11;:27;:29::i;:::-;10754:1;:33;10738:314;;;10832:44;:22;:11;10852:1;10832:19;:22::i;:::-;:42;;;;;;;;:::i;:44::-;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10806:70:20;10802:244;;537:1:30;4479:19:3;:27;;;4478:44;4444:79;;;4431:93;;10983:44:20;:22;:11;11003:1;10983:19;:22::i;:44::-;10895:142;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;16456:18;;10895:142:20;16309:248:207;10802:244:20;10789:3;;10738:314;;;;11114:31;11137:7;11114:22;:31::i;:::-;11110:140;;;11200:7;11233;11216:25;;;;;;15783:19:207;;15827:2;15818:12;;15623:213;11216:25:20;;;;-1:-1:-1;;11216:25:20;;;;;;;;;;11162:81;;;;;;;;;:::i;11110:140::-;11291:103;11303:7;11312:11;11325:9;11336:11;11360:8;11349:20;;;;;;;;:::i;:::-;;;;;;;;;;;;;11382:10;11371:22;;;;;;;;:::i;:::-;;;;;;;;;;;;;11291:11;:103::i;:::-;11430:37;11453:7;11462:4;11430:22;:37::i;24989:355::-;25161:178;25195:7;25220:8;25250:63;25289:11;25302:10;25250:38;:63::i;:::-;25328:4;25161:16;:178::i;6237:651::-;6304:11;6540:62;;;6536:112;;-1:-1:-1;1343:66:29;;6237:651:20;-1:-1:-1;6237:651:20:o;6536:112::-;6692:183;6738:83;1171:66:29;6812:7:20;6738:40;:83::i;:::-;6841:2;6863:1;6692:17;:183::i;15127:3138::-;15421:23;15400:7;:44;;;15396:198;;15514:7;15498:75;15523:8;15533:10;15545:14;15561:11;15498:75;;;;;;;;;:::i;:::-;;;;;;;;15581:7;;15396:198;15732:22;15757:24;15773:7;15757:15;:24::i;:::-;15732:49;;15792:9;15787:340;15807:5;:12;15803:1;:16;15787:340;;;15834:9;15856:5;15862:1;15856:8;;;;;;;;:::i;:::-;;;;;;;15834:31;;15877:33;343:6:32;15877:4:20;:14;;;;;:33;;;;:::i;:::-;15873:248;;;15922:190;;;;;3404:35:4;;;;;15922:47:20;;:190;;15981:7;;16000:8;;16020:10;;16042:14;;16068:11;;16091;;15922:190;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;15873:248;-1:-1:-1;15821:3:20;;15787:340;;;;16191:7;16175:75;16200:8;16210:10;16222:14;16238:11;16175:75;;;;;;;;;:::i;:::-;;;;;;;;16314:26;16343:59;16384:7;16393:8;16343:40;:59::i;:::-;16314:88;-1:-1:-1;16408:21:20;828:4:14;818:15;;16408:54:20;;16468:149;16506:18;16540:1;16557:10;:17;16597:13;16468;:149::i;:::-;16717:1;16684:30;:11;:28;:30::i;:::-;:34;16680:1174;;;16803:33;16839:66;16887:7;16896:8;16839:47;:66::i;:::-;629:28:19;;;16803:102:20;-1:-1:-1;828:4:14;818:15;;17079:47:20;;17235:27;17270:25;17308:7;17303:545;17321:30;:11;:28;:30::i;:::-;17317:1;:34;;;17303:545;;;17387:63;17429:7;17438:8;17448:1;17387:41;:63::i;:::-;17365:85;-1:-1:-1;17480:25:20;:14;17503:1;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;17480:25:20;17460:45;;17515:170;17557:19;17596:1;17617:17;17661:13;17515;:170::i;:::-;17695:34;17712:17;17695:34;;:::i;:::-;;-1:-1:-1;17826:3:20;;17303:545;;;;16720:1134;;;16680:1174;17928:9;17923:338;17943:5;:12;17939:1;:16;17923:338;;;17970:9;17992:5;17998:1;17992:8;;;;;;;;:::i;:::-;;;;;;;17970:31;;18013:32;437:6:32;18013:4:20;:14;;;;;:32;;;;:::i;:::-;18009:246;;;18057:189;;;;;3404:35:4;;;;;18057:46:20;;:189;;18115:7;;18134:8;;18154:10;;18176:14;;18202:11;;18225;;18057:189;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;18009:246;-1:-1:-1;17957:3:20;;17923:338;;52539:191;52641:7;52705;52714:8;52688:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;52688:35:20;;;;;;;;;52678:46;;52688:35;52678:46;;;;44145:22;52671:53;;52539:191;-1:-1:-1;;;52539:191:20:o;53556:242::-;53652:7;;;53691:84;53711:10;53707:14;;:1;:14;53691:84;;;53736:32;4431:93:3;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;53736:32:20;;:::i;:::-;;-1:-1:-1;53723:3:20;;53691:84;;;-1:-1:-1;53787:6:20;53556:242;-1:-1:-1;;;53556:242:20:o;8879:812:19:-;8977:14;9013:2;9003:6;:12;8999:112;;9072:2;9063:6;:11;9045:29;;;;9094:2;9084:12;;;;;;:::i;:::-;;;;8999:112;-1:-1:-1;9302:21:19;;9287:12;9275:25;;9271:53;9450:2;:11;;;9532:22;;;9528:159;;;9668:1;9652:14;9648:22;9642:29;9627:12;9612:13;9608:32;9604:68;9596:6;9593:80;9583:90;;8993:698;8879:812;;;;;:::o;3195:520:1:-;3261:7;3274:13;3296:10;3290:17;;;;;;;;:::i;:::-;3274:33;;;;3324:2;3316:5;:10;3312:401;;;3568:2;3560:10;3574:1;3559:16;;;-1:-1:-1;;3195:520:1:o;3312:401::-;3610:18;3596:10;:32;;;;;;;;:::i;:::-;;3592:121;;-1:-1:-1;3643:2:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;-1:-1:-1;3707:1:1;;3195:520;-1:-1:-1;;3195:520:1:o;3592:121::-;3270:445;3195:520;;;:::o;6774:1658:3:-;6457:45;6837:86;;6879:37;;;;;;;;;;;;;;6837:86;6929:25;6957:30;:11;:28;:30::i;:::-;6929:58;;902:1:30;6997:17:3;:38;6993:155;;;7052:89;;;;;;;;16483:25:207;;;902:1:30;16524:18:207;;;16517:34;16456:18;;7052:89:3;16309:248:207;6993:155:3;7154:24;7181:29;:11;:27;:29::i;:::-;7154:56;-1:-1:-1;7216:23:3;7242:36;7261:17;7154:56;7242:36;:::i;:::-;7216:62;;647:2:30;7288:15:3;:34;7284:140;;;7339:78;;;;;;;;16483:25:207;;;647:2:30;16524:18:207;;;16517:34;16456:18;;7339:78:3;16309:248:207;7284:140:3;7466:25;7502:9;7497:427;7517:16;7513:1;:20;7497:427;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;7545:24;7606:21;;;7602:232;;7646:51;;;;;;;;2632:25:207;;;2605:18;;7646:51:3;2486:177:207;7602:232:3;334:2:30;7716:16:3;:28;7712:122;;;7763:62;;;;;;;;2632:25:207;;;2605:18;;7763:62:3;2486:177:207;7712:122:3;7841:37;7862:16;7841:37;;:::i;:::-;;-1:-1:-1;;7906:3:3;;7497:427;;;;7991:30;:11;:28;:30::i;:::-;7970:17;:51;7966:183;;8092:30;:11;:28;:30::i;:::-;8038:104;;;;;;;;16483:25:207;;;;16524:18;;;16517:34;;;16456:18;;8038:104:3;16309:248:207;7966:183:3;8205:16;8188:240;647:2:30;8223:1:3;:20;8188:240;;;4431:93;4479:19;:27;;;537:1:30;4478:44:3;4444:79;;;4431:93;8319:21;;8315:107;;8359:54;;;;;;;;2632:25:207;;;2605:18;;8359:54:3;2486:177:207;8315:107:3;-1:-1:-1;8245:3:3;;8188:240;;5689:1629:17;5796:10;5795:11;:31;;;;-1:-1:-1;6457:45:3;;5810:16:17;5791:80;;;5835:36;;-1:-1:-1;;;5835:36:17;;5869:1;5835:36;;;2632:25:207;2605:18;;5835:36:17;2486:177:207;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;;;;;2632:25:207;;;2605:18;;6044:52:17;2486:177:207;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;;;;;2632:25:207;;;2605:18;;6339:50:17;2486:177:207;6292:97:17;6450:25;6486:9;6481:313;6501:16;6497:1;:20;6481:313;;;6529:24;6556:39;:17;:6;6571:1;6556:14;:17::i;:39::-;6529:66;;6607:16;6627:1;6607:21;6603:101;;6647:48;;;;;;;;;;;;;;6603:101;6711:37;6732:16;6711:37;;:::i;:::-;;-1:-1:-1;;6776:3:17;;6481:313;;;;6862:25;:6;:23;:25::i;:::-;6841:17;:46;6837:134;;6938:25;:6;:23;:25::i;:::-;6904:60;;-1:-1:-1;;;6904:60:17;;;;;;2632:25:207;;2620:2;2605:18;;2486:177;6837:134:17;7046:16;7029:285;7068:15;7064:1;:19;7029:285;;;7095:24;7122:39;:17;:6;7137:1;7122:14;:17::i;:39::-;7095:66;-1:-1:-1;7173:20:17;;7169:100;;7212:48;;;;;;;;;;;;;;7169:100;-1:-1:-1;7296:3:17;;7029:285;;5135:171:3;5208:7;537:1:30;1425;1409:13;1421:1;334:2;1409:13;:::i;:::-;:17;;;;:::i;:::-;1408:34;;;;:::i;:::-;5244:11:3;5223:78;5236:64;;5223:78;;5135:171;-1:-1:-1;;5135:171:3:o;5533:173::-;5607:7;537:1:30;1597;;1577:13;1589:1;334:2;1577:13;:::i;:::-;:17;;;;:::i;3948:206:17:-;4018:10;4108:19;:27;;;4139:1;4107:33;4086:6;4061:82;4078:63;;4061:82;;;;;;;;;:::i;3588:314:27:-;3702:16;;;3716:1;3702:16;;;;;;;;;3654:11;;;;3702:16;;;;;;;;;;;;-1:-1:-1;3702:16:27;3673:45;;3757:10;3724:9;3734:1;3724:12;;;;;;;;:::i;:::-;;;;;;;;;;:44;3775:13;3791:62;1076:66;3826:9;3775:13;-1:-1:-1;;;3791:24:27;:62::i;20651:676:29:-;25205:53;;;;;;21683:19:207;;;21718:12;;;21711:28;;;25178:12:29;21755::207;;;21748:28;;;25205:53:29;;;;;;;;;;21792:12:207;;;;25205:53:29;;;20942:29;20974:55;20988:18;21008:20;20974:13;:55::i;:::-;20942:87;;21035:25;21063:55;21077:18;21097:20;21063:13;:55::i;:::-;21154:16;;;21168:1;21154:16;;;;;;;;;21035:83;;-1:-1:-1;21125:26:29;;21154:16;;;;;;;;;;;;-1:-1:-1;21154:16:29;21125:45;;21209:7;21176:9;21186:1;21176:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;21224:98;1171:66;21254:9;21265:11;21278:15;21295:12;1343:66;21224:19;:98::i;4952:268:27:-;5052:16;;;5066:1;5052:16;;;;;;;;;5023:26;;5052:16;;;;;;;;;;;-1:-1:-1;5052:16:27;5023:45;;5107:10;5074:9;5084:1;5074:12;;;;;;;;:::i;:::-;;;;;;:44;;;;;5125:90;1076:66;1060:83;;5160:9;5171:1;5192:6;5174:26;;;;;;19939:14:207;19932:22;19927:3;19923:32;19911:45;;19981:1;19972:11;;19788:201;5174:26:27;;;;-1:-1:-1;;5174:26:27;;;;;;;;;-1:-1:-1;;;5125:24:27;:90::i;:::-;5017:203;4952:268;;:::o;18901:1676:20:-;19101:23;19080:7;:44;;;19076:232;;19231:7;19187:100;19250:8;19267:5;19280:4;19187:100;;;;;;;;:::i;:::-;;;;;;;;19295:7;;19076:232;19314:16;19333:59;19374:7;19383:8;19333:40;:59::i;:::-;19314:78;;19538:22;19563:24;19579:7;19563:15;:24::i;:::-;19538:49;;19598:9;19593:328;19613:5;:12;19609:1;:16;19593:328;;;19640:9;19662:5;19668:1;19662:8;;;;;;;;:::i;:::-;;;;;;;19640:31;;19683:41;548:6:32;19683:4:20;:14;;;;;:41;;;;:::i;:::-;19679:236;;;19736:170;;;;;3404:35:4;;;;;19736:54:20;;:170;;19812:7;;19841:8;;19868:5;;19891:4;;19736:170;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;19679:236;-1:-1:-1;19627:3:20;;19593:328;;;;20022:7;19978:100;20041:8;20058:5;20071:4;19978:100;;;;;;;;:::i;:::-;;;;;;;;20128:70;20160:8;20178:5;20128:70;;20191:4;20128:13;:70::i;:::-;20252:9;20247:326;20267:5;:12;20263:1;:16;20247:326;;;20294:9;20316:5;20322:1;20316:8;;;;;;;;:::i;:::-;;;;;;;20294:31;;20337:40;657:6:32;20337:4:20;:14;;;;;:40;;;;:::i;:::-;20333:234;;;20389:169;;;;;3404:35:4;;;;;20389:53:20;;:169;;20464:7;;20493:8;;20520:5;;20543:4;;20389:169;;;:::i;:::-;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;20333:234;-1:-1:-1;20281:3:20;;20247:326;;52982:282;53227:30;;;;;;21318:19:207;;;21353:12;;;21346:28;;;53070:7:20;;21390:12:207;;53227:30:20;21130:278:207;4391:342:28;4507:16;;;4521:1;4507:16;;;;;;;;;4448:22;;4478:26;;4507:16;;;;;;;;;;;;-1:-1:-1;4507:16:28;4478:45;;4562:7;4529:9;4539:1;4529:12;;;;;;;;:::i;:::-;;;;;;;;;;:41;4577:18;4598:49;1075:66;4634:9;4577:18;4598:25;:49::i;:::-;4577:70;;4661:66;:44;4682:5;4689:1;4692:5;:12;4661:20;:44::i;:::-;:64;:66::i;2903:136:4:-;2973:4;3025:9;2992:42;;3011:9;2993:15;3003:4;3802:26;;;3672:162;2993:15;:27;2992:42;;;2985:49;;2903:136;;;;:::o;1423:2340:19:-;1536:10;;1532:1504;;1689:2;1679:6;:12;1675:122;;1752:2;1743:6;:11;1725:29;;;;1776:2;1766:12;;;;;;:::i;:::-;;;;1675:122;1887:10;;1883:1147;;2095:2;:11;;;1969:21;-1:-1:-1;;537:1:30;738:25:31;;716:48;2142:18:19;2127:33;;2329:12;2321:6;2317:25;2376:4;2365:9;2361:20;2353:28;;2431:13;2425:20;2414:9;2410:36;2392:54;;2679:4;2675:9;2658:14;2652:21;2648:37;2579:4;2567:10;2563:21;2506:193;2478:14;2458:253;;2770:13;2760:6;:23;2756:36;;2785:7;;;;2756:36;-1:-1:-1;2933:1:19;2915:19;;;;;2988:23;;;;;2946:30;1883:1147;3066:253;3083:2;3073:6;:12;3066:253;;3178:20;;3155:44;;3252:1;3234:19;;;;-1:-1:-1;;3292:12:19;;;;3280:2;3263:19;3066:253;;;3387:10;;3383:376;;3407:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;3695:21:19;;3606:20;;3628:9;;3602:36;3691:32;;3551:184;3507:238;;-1:-1:-1;1423:2340:19;;;;:::o;55104:230:20:-;55225:7;55309;55318:8;55292:35;;;;;;;;;:::i;:::-;;;;-1:-1:-1;;55292:35:20;;;;;;;;;55282:46;;55292:35;55282:46;;;;44308:40;55255:73;;55104:230;-1:-1:-1;;;55104:230:20:o;54475:274::-;54619:7;54724;54733:8;54707:35;;;;;;;;;:::i;:::-;;;;;;;;;;;;;54697:46;;;;;;54676:17;54669:25;;54649:45;;;44217:34;54649:45;:94;54641:103;;54634:110;;54475:274;;;;;:::o;4754:171:3:-;4828:7;537:1:30;1247:13;1259:1;334:2;1247:13;:::i;:::-;1246:30;;;;:::i;:::-;4850:70:3;;;;;4754:171;-1:-1:-1;4754:171:3:o;900:162:19:-;989:68;995:14;1011:6;1019:4;:11;1032:24;1051:4;828::14;818:15;;692:151;1032:24:19;989:5;:68::i;39031:522:20:-;39167:12;39291:257;39330:79;39372:7;39381:8;39391:17;39330:41;:79::i;:::-;39427:1;39446:93;39521:17;39446:66;39494:7;39503:8;39446:47;:66::i;:::-;:74;6801:16:15;;922;6801;834;6790:27;6750:68;6728:92;;;6613:218;39446:93:20;39291:12;:257::i;1954:561:18:-;2045:5;2140:3;2132:5;:11;:32;;;;2153:4;:11;2147:3;:17;2132:32;2128:80;;;2191:4;2197:5;2204:3;2173:35;;;;;;;;;;;;;:::i;2128:80::-;2274:4;2264:15;;2321:16;2332:5;2264:15;2321:16;:::i;:::-;;-1:-1:-1;2343:12:18;2358:11;2364:5;2358:3;:11;:::i;:::-;643:17;2493:15;2485:3;2474:14;;;;2473:36;;;;;;-1:-1:-1;;;;;1954:561:18:o;40037:220:34:-;40103:24;40135:30;40168:32;40186:6;40194:2;40198:1;40168:17;:32::i;55672:301:20:-;55793:13;55885:82;55916:48;55946:7;55955:8;55916:29;:48::i;:::-;4645:21:19;;4539:137;4976:669;5392:4;5386:11;5433:4;5421:17;;-1:-1:-1;;5307:16:19;5480:26;;;5307:16;5303:32;5452:4;5445:63;5552:6;5544;5537:22;5570:51;5575:14;5591:6;5599;5607:13;5570:4;:51::i;2615:1129:36:-;2735:22;2765:21;2789;:11;2869:3:18;2847:25;;2773:104;2789:21:36;2765:45;-1:-1:-1;643:17:18;3110:38;;2816:20:36;2978:11;3110:38:18;2978:11:36;2963:26;;;;:::i;:::-;;2949:40;;3098:4;3092:11;3083:20;;3141:4;3134:5;3130:16;3201:4;3188:11;3184:22;3170:12;3166:41;3160:4;3153:55;3251:11;3244:5;3237:26;3294:1;3271:463;3310:11;3307:1;3304:18;3271:463;;;3704:20;;3683:42;;3662:64;;3576:31;;;;3489:4;3471:23;;;;3397:1;3390:9;3271:463;;;3275:28;;3050:690;;;2615:1129;;;;;:::o;6010:2380:19:-;6127:10;;6123:1542;;6280:2;6270:6;:12;6266:122;;6343:2;6334:6;:11;6316:29;;;;6367:2;6357:12;;;;;;:::i;:::-;;;;6266:122;6478:10;;6474:1185;;6686:2;:11;;;6560:21;6744:22;;;6740:135;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;;;-1:-1:-1;;;537:1:30;738:25:31;;716:48;6740:135:19;7069:14;7063:21;7048:12;7040:6;7036:25;7032:53;7309:4;7293:13;7287:20;7283:31;7219:4;7215:9;7203:10;7199:26;7144:184;7117:13;7097:243;;7399:13;7389:6;:23;7385:36;;7414:7;;;;7385:36;-1:-1:-1;7562:1:19;7544:19;;;;;7617:23;;;;;7575:30;6474:1185;7694:253;7711:2;7701:6;:12;7694:253;;7805:21;;7783:44;;7880:1;7862:19;;;;-1:-1:-1;;7920:12:19;;;;7908:2;7891:19;7694:253;;;8015:10;;8011:375;;8035:12;-1:-1:-1;;537:1:30;738:25:31;;716:48;8323:20:19;;8233:21;;8256:9;;8229:37;8319:31;;8178:184;8135:237;;-1:-1:-1;6010:2380:19;;;;:::o;14:332:207:-;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:207;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:207;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:207:o;1560:245::-;1608:4;1641:18;1633:6;1630:30;1627:56;;;1663:18;;:::i;:::-;-1:-1:-1;1720:2:207;1708:15;-1:-1:-1;;1704:88:207;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:207;;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:207: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:207;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:1179::-;3606:6;3614;3667:2;3655:9;3646:7;3642:23;3638:32;3635:52;;;3683:1;3680;3673:12;3635:52;3715:9;3709:16;-1:-1:-1;;3758:5:207;3754:78;3747:5;3744:89;3734:117;;3847:1;3844;3837:12;3734:117;3919:2;3904:18;;3898:25;3870:5;;-1:-1:-1;3942:18:207;3972:14;;;3969:34;;;3999:1;3996;3989:12;3969:34;4022:22;;;;4078:4;4060:16;;;4056:27;4053:47;;;4096:1;4093;4086:12;4053:47;4124:22;;:::i;:::-;4176:2;4170:9;4223:4;4214:7;4210:18;4201:7;4198:31;4188:59;;4243:1;4240;4233:12;4188:59;4256:24;;4319:2;4311:11;;4305:18;4335:16;;;4332:36;;;4364:1;4361;4354:12;4332:36;4402:56;4450:7;4439:8;4435:2;4431:17;4402:56;:::i;:::-;4397:2;4388:7;4384:16;4377:82;;4498:2;4494;4490:11;4484:18;4527:2;4517:8;4514:16;4511:36;;;4543:1;4540;4533:12;4511:36;4581:56;4629:7;4618:8;4614:2;4610:17;4581:56;:::i;:::-;4576:2;4567:7;4563:16;4556:82;;4657:7;4647:17;;;;;3491:1179;;;;;:::o;5325:287::-;5454:3;5492:6;5486:13;5508:66;5567:6;5562:3;5555:4;5547:6;5543:17;5508:66;:::i;:::-;5590:16;;;;;5325:287;-1:-1:-1;;5325:287:207:o;6483:357::-;6601:12;;6648:4;6637:16;;;6631:23;;6601:12;6666:16;;6663:171;;;-1:-1:-1;;6740:4:207;6736:17;;;;6733:1;6729:25;6725:98;6714:110;;6483:357;-1:-1:-1;6483:357:207:o;7453:329::-;7494:3;7532:5;7526:12;7559:6;7554:3;7547:19;7575:76;7644:6;7637:4;7632:3;7628:14;7621:4;7614:5;7610:16;7575:76;:::i;:::-;7696:2;7684:15;-1:-1:-1;;7680:88:207;7671:98;;;;7771:4;7667:109;;7453:329;-1:-1:-1;;7453:329:207:o;7787:319::-;7993:6;7982:9;7975:25;8036:2;8031;8020:9;8016:18;8009:30;7956:4;8056:44;8096:2;8085:9;8081:18;8073:6;8056:44;:::i;8111:458::-;8190:6;8243:2;8231:9;8222:7;8218:23;8214:32;8211:52;;;8259:1;8256;8249:12;8211:52;8292:9;8286:16;8325:18;8317:6;8314:30;8311:50;;;8357:1;8354;8347:12;8311:50;8380:22;;8433:4;8425:13;;8421:27;-1:-1:-1;8411:55:207;;8462:1;8459;8452:12;8411:55;8485:78;8555:7;8550:2;8544:9;8539:2;8535;8531:11;8485:78;:::i;8574:321::-;8652:6;8705:2;8693:9;8684:7;8680:23;8676:32;8673:52;;;8721:1;8718;8711:12;8673:52;8753:9;8747:16;-1:-1:-1;;;;;8796:5:207;8792:54;8785:5;8782:65;8772:93;;8861:1;8858;8851:12;8900:421;9165:6;9154:9;9147:25;9208:6;9203:2;9192:9;9188:18;9181:34;9251:2;9246;9235:9;9231:18;9224:30;9128:4;9271:44;9311:2;9300:9;9296:18;9288:6;9271:44;:::i;9326:184::-;-1:-1:-1;;;9375:1:207;9368:88;9475:4;9472:1;9465:15;9499:4;9496:1;9489:15;9784:184;-1:-1:-1;;;9833:1:207;9826:88;9933:4;9930:1;9923:15;9957:4;9954:1;9947:15;9973:125;10038:9;;;10059:10;;;10056:36;;;10072:18;;:::i;10368:492::-;10543:3;10581:6;10575:13;10597:66;10656:6;10651:3;10644:4;10636:6;10632:17;10597:66;:::i;:::-;10726:13;;10685:16;;;;10748:70;10726:13;10685:16;10795:4;10783:17;;10748:70;:::i;:::-;10834:20;;10368:492;-1:-1:-1;;;;10368:492:207:o;10865:439::-;10918:3;10956:5;10950:12;10983:6;10978:3;10971:19;11009:4;11038;11033:3;11029:14;11022:21;;11077:4;11070:5;11066:16;11100:1;11110:169;11124:6;11121:1;11118:13;11110:169;;;11185:13;;11173:26;;11219:12;;;;11254:15;;;;11146:1;11139:9;11110:169;;;-1:-1:-1;11295:3:207;;10865:439;-1:-1:-1;;;;;10865:439:207:o;11309:791::-;11701:6;11690:9;11683:25;11744:3;11739:2;11728:9;11724:18;11717:31;11664:4;11771:57;11823:3;11812:9;11808:19;11800:6;11771:57;:::i;:::-;11876:9;11868:6;11864:22;11859:2;11848:9;11844:18;11837:50;11910:32;11935:6;11927;11910:32;:::i;:::-;11896:46;;11978:6;11973:2;11962:9;11958:18;11951:34;12034:9;12026:6;12022:22;12016:3;12005:9;12001:19;11994:51;12062:32;12087:6;12079;12062:32;:::i;:::-;12054:40;11309:791;-1:-1:-1;;;;;;;;11309:791:207:o;12105:545::-;12426:6;12415:9;12408:25;12469:3;12464:2;12453:9;12449:18;12442:31;12389:4;12490:57;12542:3;12531:9;12527:19;12519:6;12490:57;:::i;:::-;12595:4;12583:17;;;;12578:2;12563:18;;12556:45;-1:-1:-1;12632:2:207;12617:18;12610:34;12482:65;12105:545;-1:-1:-1;;12105:545:207:o;12655:184::-;12725:6;12778:2;12766:9;12757:7;12753:23;12749:32;12746:52;;;12794:1;12791;12784:12;12746:52;-1:-1:-1;12817:16:207;;12655:184;-1:-1:-1;12655:184:207:o;12844:::-;-1:-1:-1;;;12893:1:207;12886:88;12993:4;12990:1;12983:15;13017:4;13014:1;13007:15;13033:656;13085:3;13116;13148:5;13142:12;13175:6;13170:3;13163:19;13201:4;13230;13225:3;13221:14;13214:21;;13288:4;13278:6;13275:1;13271:14;13264:5;13260:26;13256:37;13327:4;13320:5;13316:16;13350:1;13360:303;13374:6;13371:1;13368:13;13360:303;;;-1:-1:-1;;13449:5:207;13443:4;13439:16;13435:89;13430:3;13423:102;13546:37;13578:4;13569:6;13563:13;13546:37;:::i;:::-;13641:12;;;;13538:45;-1:-1:-1;13606:15:207;;;;13396:1;13389:9;13360:303;;;-1:-1:-1;13679:4:207;;13033:656;-1:-1:-1;;;;;;;13033:656:207:o;13694:907::-;14219:6;14208:9;14201:25;14262:6;14257:2;14246:9;14242:18;14235:34;14305:6;14300:2;14289:9;14285:18;14278:34;14348:6;14343:2;14332:9;14328:18;14321:34;14392:3;14386;14375:9;14371:19;14364:32;14182:4;14419:56;14470:3;14459:9;14455:19;14447:6;14419:56;:::i;:::-;14524:9;14516:6;14512:22;14506:3;14495:9;14491:19;14484:51;14552:43;14588:6;14580;14552:43;:::i;:::-;14544:51;13694:907;-1:-1:-1;;;;;;;;;13694:907:207:o;14606:706::-;14973:6;14962:9;14955:25;15016:3;15011:2;15000:9;14996:18;14989:31;14936:4;15043:57;15095:3;15084:9;15080:19;15072:6;15043:57;:::i;:::-;15148:4;15140:6;15136:17;15131:2;15120:9;15116:18;15109:45;15202:9;15194:6;15190:22;15185:2;15174:9;15170:18;15163:50;15230:32;15255:6;15247;15230:32;:::i;:::-;15222:40;;;15299:6;15293:3;15282:9;15278:19;15271:35;14606:706;;;;;;;;:::o;15317:128::-;15384:9;;;15405:11;;;15402:37;;;15419:18;;:::i;15450:168::-;15523:9;;;15554;;15571:15;;;15565:22;;15551:37;15541:71;;15592:18;;:::i;15841:463::-;16087:66;16079:6;16075:79;16064:9;16057:98;16191:6;16186:2;16175:9;16171:18;16164:34;16234:2;16229;16218:9;16214:18;16207:30;16038:4;16254:44;16294:2;16283:9;16279:18;16271:6;16254:44;:::i;16888:280::-;17087:2;17076:9;17069:21;17050:4;17107:55;17158:2;17147:9;17143:18;17135:6;17107:55;:::i;17173:688::-;17506:3;17495:9;17488:22;17469:4;17533:57;17585:3;17574:9;17570:19;17562:6;17533:57;:::i;:::-;17638:9;17630:6;17626:22;17621:2;17610:9;17606:18;17599:50;17672:32;17697:6;17689;17672:32;:::i;:::-;17658:46;;17740:6;17735:2;17724:9;17720:18;17713:34;17795:9;17787:6;17783:22;17778:2;17767:9;17763:18;17756:50;17823:32;17848:6;17840;17823:32;:::i;:::-;17815:40;17173:688;-1:-1:-1;;;;;;;17173:688:207:o;17866:894::-;18317:6;18306:9;18299:25;18360:3;18355:2;18344:9;18340:18;18333:31;18280:4;18387:57;18439:3;18428:9;18424:19;18416:6;18387:57;:::i;:::-;18492:9;18484:6;18480:22;18475:2;18464:9;18460:18;18453:50;18526:32;18551:6;18543;18526:32;:::i;:::-;18512:46;;18594:6;18589:2;18578:9;18574:18;18567:34;18650:9;18642:6;18638:22;18632:3;18621:9;18617:19;18610:51;18678:32;18703:6;18695;18678:32;:::i;:::-;18670:40;;;18747:6;18741:3;18730:9;18726:19;18719:35;17866:894;;;;;;;;;:::o;18765:639::-;19015:6;19010:3;19003:19;18985:3;19041:2;19074;19069:3;19065:12;19106:6;19100:13;19171:2;19163:6;19159:15;19192:1;19202:175;19216:6;19213:1;19210:13;19202:175;;;19279:13;;19265:28;;19315:14;;;;19352:15;;;;19238:1;19231:9;19202:175;;;-1:-1:-1;19393:5:207;;18765:639;-1:-1:-1;;;;;;;18765:639:207:o;19409:184::-;-1:-1:-1;;;19458:1:207;19451:88;19558:4;19555:1;19548:15;19582:4;19579:1;19572:15;19994:511;20245:2;20234:9;20227:21;20208:4;20271:56;20323:2;20312:9;20308:18;20300:6;20271:56;:::i;:::-;20375:14;20367:6;20363:27;20358:2;20347:9;20343:18;20336:55;20439:9;20431:6;20427:22;20422:2;20411:9;20407:18;20400:50;20467:32;20492:6;20484;20467:32;:::i;:::-;20459:40;19994:511;-1:-1:-1;;;;;;19994:511:207:o;20510:615::-;20820:6;20809:9;20802:25;20863:3;20858:2;20847:9;20843:18;20836:31;20783:4;20890:57;20942:3;20931:9;20927:19;20919:6;20890:57;:::i;:::-;20995:14;20987:6;20983:27;20978:2;20967:9;20963:18;20956:55;21059:9;21051:6;21047:22;21042:2;21031:9;21027:18;21020:50;21087:32;21112:6;21104;21087:32;:::i;21815:359::-;22018:2;22007:9;22000:21;21981:4;22038:44;22078:2;22067:9;22063:18;22055:6;22038:44;:::i;:::-;22113:2;22098:18;;22091:34;;;;-1:-1:-1;22156:2:207;22141:18;22134:34;22030:52;21815:359;-1:-1:-1;21815:359:207:o","linkReferences":{},"immutableReferences":{"22659":[{"start":501,"length":32}],"91868":[{"start":718,"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\":\"ERC20Module_InvalidNamespace\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"FieldLayoutLib_Empty\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"staticDataLength\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"computedStaticDataLength\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthDoesNotFitInAWord\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsNotZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"index\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_StaticLengthIsZero\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyDynamicFields\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"numFields\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"maxFields\",\"type\":\"uint256\"}],\"name\":\"FieldLayoutLib_TooManyFields\",\"type\":\"error\"},{\"inputs\":[],\"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\":\"SchemaLib_InvalidLength\",\"type\":\"error\"},{\"inputs\":[],\"name\":\"SchemaLib_StaticTypeAfterDynamicType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"},{\"internalType\":\"uint256\",\"name\":\"start\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"end\",\"type\":\"uint256\"}],\"name\":\"Slice_OutOfBounds\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidFieldNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidKeyNamesLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"bytes2\",\"name\":\"expected\",\"type\":\"bytes2\"},{\"internalType\":\"ResourceId\",\"name\":\"resourceId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"resourceIdString\",\"type\":\"string\"}],\"name\":\"Store_InvalidResourceType\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidStaticDataLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaDynamicLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"uint256\",\"name\":\"expected\",\"type\":\"uint256\"},{\"internalType\":\"uint256\",\"name\":\"received\",\"type\":\"uint256\"}],\"name\":\"Store_InvalidValueSchemaStaticLength\",\"type\":\"error\"},{\"inputs\":[{\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"internalType\":\"string\",\"name\":\"tableIdString\",\"type\":\"string\"}],\"name\":\"Store_TableAlreadyExists\",\"type\":\"error\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"staticData\",\"type\":\"bytes\"},{\"indexed\":false,\"internalType\":\"PackedCounter\",\"name\":\"encodedLengths\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"dynamicData\",\"type\":\"bytes\"}],\"name\":\"Store_SetRecord\",\"type\":\"event\"},{\"anonymous\":false,\"inputs\":[{\"indexed\":true,\"internalType\":\"ResourceId\",\"name\":\"tableId\",\"type\":\"bytes32\"},{\"indexed\":false,\"internalType\":\"bytes32[]\",\"name\":\"keyTuple\",\"type\":\"bytes32[]\"},{\"indexed\":false,\"internalType\":\"uint48\",\"name\":\"start\",\"type\":\"uint48\"},{\"indexed\":false,\"internalType\":\"bytes\",\"name\":\"data\",\"type\":\"bytes\"}],\"name\":\"Store_SpliceStaticData\",\"type\":\"event\"},{\"inputs\":[],\"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\":{\"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.\"}},\"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\":{\"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/erc20-puppet/ERC20Module.sol\":\"ERC20Module\"},\"evmVersion\":\"cancun\",\"libraries\":{},\"metadata\":{\"bytecodeHash\":\"none\"},\"optimizer\":{\"enabled\":true,\"runs\":3000},\"remappings\":[\":@latticexyz/=node_modules/@latticexyz/\",\":ds-test/=node_modules/ds-test/src/\",\":forge-std/=node_modules/forge-std/src/\"]},\"sources\":{\"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol\":{\"keccak256\":\"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44\",\"dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL\"]},\"node_modules/@latticexyz/store/src/Bytes.sol\":{\"keccak256\":\"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55\",\"dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy\"]},\"node_modules/@latticexyz/store/src/FieldLayout.sol\":{\"keccak256\":\"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf\",\"dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK\"]},\"node_modules/@latticexyz/store/src/Hook.sol\":{\"keccak256\":\"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4\",\"dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2\"]},\"node_modules/@latticexyz/store/src/IERC165.sol\":{\"keccak256\":\"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2\",\"dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg\"]},\"node_modules/@latticexyz/store/src/IStore.sol\":{\"keccak256\":\"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b\",\"dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc\"]},\"node_modules/@latticexyz/store/src/IStoreData.sol\":{\"keccak256\":\"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb\",\"dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g\"]},\"node_modules/@latticexyz/store/src/IStoreErrors.sol\":{\"keccak256\":\"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84\",\"dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6\"]},\"node_modules/@latticexyz/store/src/IStoreEvents.sol\":{\"keccak256\":\"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1\",\"dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9\"]},\"node_modules/@latticexyz/store/src/IStoreHook.sol\":{\"keccak256\":\"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e\",\"dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9\"]},\"node_modules/@latticexyz/store/src/IStoreRead.sol\":{\"keccak256\":\"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924\",\"dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA\"]},\"node_modules/@latticexyz/store/src/IStoreRegistration.sol\":{\"keccak256\":\"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67\",\"dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC\"]},\"node_modules/@latticexyz/store/src/IStoreWrite.sol\":{\"keccak256\":\"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263\",\"dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC\"]},\"node_modules/@latticexyz/store/src/Memory.sol\":{\"keccak256\":\"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912\",\"dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM\"]},\"node_modules/@latticexyz/store/src/PackedCounter.sol\":{\"keccak256\":\"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6\",\"dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX\"]},\"node_modules/@latticexyz/store/src/ResourceId.sol\":{\"keccak256\":\"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2\",\"dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9\"]},\"node_modules/@latticexyz/store/src/Schema.sol\":{\"keccak256\":\"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99\",\"dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5\"]},\"node_modules/@latticexyz/store/src/Slice.sol\":{\"keccak256\":\"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a\",\"dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta\"]},\"node_modules/@latticexyz/store/src/Storage.sol\":{\"keccak256\":\"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d\",\"dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE\"]},\"node_modules/@latticexyz/store/src/StoreCore.sol\":{\"keccak256\":\"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3\",\"dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR\"]},\"node_modules/@latticexyz/store/src/StoreSwitch.sol\":{\"keccak256\":\"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff\",\"dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7\"]},\"node_modules/@latticexyz/store/src/codegen/index.sol\":{\"keccak256\":\"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787\",\"dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol\":{\"keccak256\":\"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551\",\"dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY\"]},\"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol\":{\"keccak256\":\"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea\",\"dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av\"]},\"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol\":{\"keccak256\":\"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4\",\"dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h\"]},\"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol\":{\"keccak256\":\"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44\",\"dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB\"]},\"node_modules/@latticexyz/store/src/constants.sol\":{\"keccak256\":\"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2\",\"dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN\"]},\"node_modules/@latticexyz/store/src/rightMask.sol\":{\"keccak256\":\"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38\",\"dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S\"]},\"node_modules/@latticexyz/store/src/storeHookTypes.sol\":{\"keccak256\":\"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64\",\"dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby\"]},\"node_modules/@latticexyz/store/src/storeResourceTypes.sol\":{\"keccak256\":\"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb\",\"dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX\"]},\"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol\":{\"keccak256\":\"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4\",\"dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT\"]},\"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol\":{\"keccak256\":\"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf\",\"dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY\"]},\"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol\":{\"keccak256\":\"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205\",\"dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT\"]},\"node_modules/@latticexyz/store/src/version.sol\":{\"keccak256\":\"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed\",\"dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU\"]},\"node_modules/@latticexyz/world/src/DelegationControl.sol\":{\"keccak256\":\"0x8cb98a092891f05e855c9bc4705f0c6ad5d5c82be731afd3591c091ef91530a3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://66e589610bcf3a79d5a158a3ce6d4a894b96575826a16fd817bd80721625e3d6\",\"dweb:/ipfs/QmTDFR47F5Cq82LRXMxBt6j8omobm9cZtmBBnWycBnmjPx\"]},\"node_modules/@latticexyz/world/src/IDelegationControl.sol\":{\"keccak256\":\"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d\",\"dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC\"]},\"node_modules/@latticexyz/world/src/IERC165.sol\":{\"keccak256\":\"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3\",\"dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe\"]},\"node_modules/@latticexyz/world/src/IModule.sol\":{\"keccak256\":\"0x6c11c44fef08d46ca9f291551a42b8576259f65b7e957aef92540ba0acd72909\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0ffbc3646ea495350939319f5418ba2dd45b6ec809d6b84ed3264e592a9385bd\",\"dweb:/ipfs/QmPCjuQUMWVUPv7vSVfztnymYA9hUP1xRS62FD6iwzGMuo\"]},\"node_modules/@latticexyz/world/src/ISystemHook.sol\":{\"keccak256\":\"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc\",\"dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3\"]},\"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol\":{\"keccak256\":\"0xd3645ee90c73dd991659a140c0132c5a2aaf27a296c457737b212d87b2f66402\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://519d81e2bc7233b1488339eaf9220f7eb57086dd3ee8e1831708ebc6e87f00db\",\"dweb:/ipfs/Qmf8RjMxuPXbteMeEB3vstjutsCrmveyBFCjVFt7nSYgtc\"]},\"node_modules/@latticexyz/world/src/IWorldErrors.sol\":{\"keccak256\":\"0x5e733399a521c7a051601e1f31835ac1653d310a04194e2d10c54206277586cb\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d2646c3cf530d6768c4479c64477306a38b3358009792dfe82436cf1e6c27f90\",\"dweb:/ipfs/QmdD5Vk7iswuvWVHBsRkw3n7tJ1gaZ9X9y7s2SkurkQ829\"]},\"node_modules/@latticexyz/world/src/IWorldKernel.sol\":{\"keccak256\":\"0x603c73df2d8d210b1970be3e7e49b8659ae45574add5ce3911a4fc59cce88839\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a095f9d317302d15e0e124951fe6b29a3bb0e3452e3d2211ac126b49992af443\",\"dweb:/ipfs/QmRwwuh7w1msqx4vixJDbiBux4wVALiPGzCZJbikZsqwz7\"]},\"node_modules/@latticexyz/world/src/Module.sol\":{\"keccak256\":\"0xfdfdbdb1373ff83d8529865e21bbe796025861140a0a96c7183bcc6999ba63dd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1c1d003f9a28bc9098cc669406f569905a7726fc17cb07a6a6027531aebe5020\",\"dweb:/ipfs/QmPrEP9SRfKRouAQmVn6dq4MgguBPboMdMPg88WqBjsjgn\"]},\"node_modules/@latticexyz/world/src/System.sol\":{\"keccak256\":\"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9\",\"dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91\"]},\"node_modules/@latticexyz/world/src/WorldContext.sol\":{\"keccak256\":\"0x4b83d5791209b8f39773b07e5f162dfd0617f5f9b5b4bd371c087412e5ad01cf\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://033a3777136e6d5c581efc8bf2535403abe44874409c85d17a353fae6dc56006\",\"dweb:/ipfs/QmaXepBDVnmnMdVzuxbGT2qo5vqWnjB75KNCCdxRehrBMX\"]},\"node_modules/@latticexyz/world/src/WorldResourceId.sol\":{\"keccak256\":\"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74\",\"dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol\":{\"keccak256\":\"0xea5256f37d5f373dc0d008b30a44f46f85d5aa4826c9c9702e3a62cafe4fc00d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5f34c70731153f300c4d89b4ddcfd0b02834abf208fcd2ec5863fb1dc5bde74f\",\"dweb:/ipfs/QmdmCzFDr6WmSQ23b2T3aaJhJ6Qvzhc9UaE5z33adciAd4\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol\":{\"keccak256\":\"0xd9ead56302e6ce3f7958983f6652c2712df74ce83cd002248b235769bd5f87d4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a925eab29746fdcff87662142f61565d64bfa108ee14a9a5d496413c150533c4\",\"dweb:/ipfs/QmaFXKnfuMbkaZCEz3e2J3Nx49keqvmaGa7QLBvbj1ntYt\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol\":{\"keccak256\":\"0x7451726394ea4c39dcca268895499a7d908bd868092cf9b133772077ad5c6a6a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c102f036a0ce081255c1088c75e823e5eb5dfdf36ade55d45a6c3914e2a4a5e5\",\"dweb:/ipfs/QmUWEstc4kRhqvUc5sbPyCvy3kvH3hzmH1GrP8MjyQYy3v\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol\":{\"keccak256\":\"0xd71d9a5a1ee5969cbfc548ddcd01814293d57b5c7f40df0a8ff926df43ec9d9b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6377994ebe168759b1f8ed17d4621720d66259c3ebff77acc2f7cc7dd9fec45\",\"dweb:/ipfs/QmeNaatg7JTe6tLc2RbC28SLEQTJFddXy5xZHmqi9zQ9Jx\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol\":{\"keccak256\":\"0xba969b5b252d1eb26f22908e4581456a6791e02e693cb14f48de35feb31b56f4\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://34fcc11f5a70bcb51ea1ca76587e7dea7dfb940f522c820988212573a9ca32b6\",\"dweb:/ipfs/QmQSgQdJiXMVVSU5woFMC1mAGJBicBeoQUZ5UVX94UjJbX\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol\":{\"keccak256\":\"0x90d05ad5b6ce321f2d15d93cc6d126c0332afd161cebd008ea115a552bb0e772\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://9a6bd7a337b1a8ca9ce2c853db9003352895697d43bdf8c49da850ee19990aa8\",\"dweb:/ipfs/QmbvpN53672EQZMAfmDEC8bP6MRYUnAqLDRUmkkv6DMrAT\"]},\"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol\":{\"keccak256\":\"0xfe79af16bea789b894c322b3796b7a5fd3042d2da0ea808768e1588bff53056c\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://15a2c7d26d21773fa41dd3891553ad57520f0c401627da8f79c11751b0fca478\",\"dweb:/ipfs/QmZYpNkSXqqz5tUeqNwppY7Q75ec9gGPv7BkjUJc87AZFE\"]},\"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol\":{\"keccak256\":\"0x6d247eea47c3566ea8e71b39e662607509f7a2080eabddf83c9f6b0682d27edc\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://ab03d2cf026d39902ec68c3665a6779053e82e0f60bccfe2810be4b43f05894e\",\"dweb:/ipfs/Qmdzg8bmkWjN4mw9EfnHFqYHpTJACGm9YoYZDZhX1MMamY\"]},\"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol\":{\"keccak256\":\"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e\",\"dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv\"]},\"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol\":{\"keccak256\":\"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c\",\"dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD\"]},\"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol\":{\"keccak256\":\"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c\",\"dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU\"]},\"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol\":{\"keccak256\":\"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7\",\"dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR\"]},\"node_modules/@latticexyz/world/src/constants.sol\":{\"keccak256\":\"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22\",\"dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV\"]},\"node_modules/@latticexyz/world/src/modules/init/types.sol\":{\"keccak256\":\"0x1876630a009a39e1a771e5d05d420731b85523b4fe091ce04a72f6f283f5e9b3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://1166a3d9f7db80d2e041def918fa54baa0f4d51edb35731a8b2bf6ee76810411\",\"dweb:/ipfs/Qmf5VmgLsWJy3Tea5JM9mzCKJ49NJC1fRcgWGVFruusBgJ\"]},\"node_modules/@latticexyz/world/src/revertWithBytes.sol\":{\"keccak256\":\"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8\",\"dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW\"]},\"node_modules/@latticexyz/world/src/worldResourceTypes.sol\":{\"keccak256\":\"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d\",\"dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12\"]},\"src/modules/erc20-puppet/ERC20Module.sol\":{\"keccak256\":\"0x17bc29bb233a59422412c52b96caa8b3348122c7fea93ff6a05b5180d8a7f67f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b41b85213db039ec9d60e0e00f93775263905dc794a7daff0d4cd34ea713566a\",\"dweb:/ipfs/QmdAE8KH3mhK7WPTpDCwpE5Yw294m9T9KYFTxMsSNxc6qd\"]},\"src/modules/erc20-puppet/ERC20System.sol\":{\"keccak256\":\"0xf3cd154bdc6d3f7ad3727ee9852a2858c13b9d19a1b67c8ade74b812abc67ad9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://4761ee9c4d3e0cf92147950d18e267dbbabf735d7ac5f7b09ae63c86968cf466\",\"dweb:/ipfs/QmSFNphuAUT1VbNegRjsXQaWttWL1UCLUixSXjAapbPn5s\"]},\"src/modules/erc20-puppet/IERC20.sol\":{\"keccak256\":\"0x4da2e95751daa6444c24063c1da6886380a487b958808d888f6f4f4b1da7b60b\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://111b988299e13500d38a87e2a6309087f42abd6a871e6e9c5da7bc7d09c71b2c\",\"dweb:/ipfs/QmWyShHQnKFNvZdKyKmsuRCwhYRrz2UMqHP2oLnHvqArdj\"]},\"src/modules/erc20-puppet/IERC20Errors.sol\":{\"keccak256\":\"0x704a9e25590a92a80d153552fbe79a83fe0a80a8f6eaa8d2ccaca70649e40fce\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://0e6ae9510a9c5023299a1064c945b652336a31f5cd225bbe9a72f9e2fd81ada2\",\"dweb:/ipfs/QmdvTCUs3ZiP5unHGdwJz3MxAR5b7K7bYVTZjBT8xadBVR\"]},\"src/modules/erc20-puppet/IERC20Events.sol\":{\"keccak256\":\"0xee632339ff14c1e5e6994ce3c605799761f24f40093cabf3b091f6dcbd9ef8ff\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://a0c7a33110c14cfc32011bda15c4330d8f193d133c1f34448f1566f44a0663bd\",\"dweb:/ipfs/QmadwRXGu4H2H3WxgEchXTyLx5PKSLZd7VHvRPEZ5zAgaZ\"]},\"src/modules/erc20-puppet/IERC20Mintable.sol\":{\"keccak256\":\"0x51e2b57003ef9fd5e87b7dcd451628e361ff26e0f82a089897e43def4cf35163\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3b8478ba8a5562432dfcfc02cb35d38b95e0e16d1771c3619d8140a04bbf5208\",\"dweb:/ipfs/QmRBBjFW4dm2qQHdysj3ci9NGpaywbMsN2zjQAUNbXydhL\"]},\"src/modules/erc20-puppet/constants.sol\":{\"keccak256\":\"0xf5bc462ba7a0209d4d13b27f6038d2484c978250d9177d1814813a9fa6c67f0e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://25f1dafb6cabe5bb70021625bd025d7249aed86dfc8567b9e5d8c2c32da847b4\",\"dweb:/ipfs/QmbAAQHU2q6Dm66CqbrwUtWyCbwndKZtrpE3oneFtaYMxX\"]},\"src/modules/erc20-puppet/tables/Allowances.sol\":{\"keccak256\":\"0xd05c08a2fdc4ab06273bceda2618c9aec7cc362f5401dd2a8070a71719d42544\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d6fdfc972d7ec013ecd0deb5609ce2f8ce150b61b53d19f9fd3b60f532d04ab9\",\"dweb:/ipfs/QmRNxV9iUqo9rfjVQoJVHxcfwabJiTMt5fnEi8fM4f5D9G\"]},\"src/modules/erc20-puppet/tables/ERC20Metadata.sol\":{\"keccak256\":\"0x04e27880dab60e2f48b5e1057eb24bd5c34026601957db6e81088c656bee306f\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://8b87eb482a34c82ae54a75ec4e70fd0ea09b0765231bdfc26e227b3745994470\",\"dweb:/ipfs/QmbFXEXbvzGxszA4z4KLHMKrMfEyoVhX5xqL7LcyLLJByt\"]},\"src/modules/erc20-puppet/tables/ERC20Registry.sol\":{\"keccak256\":\"0x910ef149f80e14d67751ea8adf324e3dc64aa4d3341cce2f938b07ee146ab427\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://3d8ac5b9c0021582fcfe52f89e0a59a55ede7d120356b3326c537161daf324be\",\"dweb:/ipfs/QmNyoj1pQJHbQdreyekJYBkwKLSt5twVmZ3zjVj8WVaqUJ\"]},\"src/modules/erc20-puppet/tables/TotalSupply.sol\":{\"keccak256\":\"0xc4bab0981b493a1885474ce82a9aee3004d7ec76213c738e268aac467ef73a5a\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://e87b36b0632ad8515650004ecc76ac196805b5d8bc3a5975ed80a86801c6e95b\",\"dweb:/ipfs/QmYCGY7zstQhhUwDjmzscvNDgZ6QK9kDR51fXvKYP9tmjf\"]},\"src/modules/erc20-puppet/utils.sol\":{\"keccak256\":\"0x93469cfd699997e1b980433ad416566a87da0cc925a55752c98dc86c76c63b32\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://00bd06095ef07edea5827d0fde62110f8ce92ed8e20946d04e39a558700e045e\",\"dweb:/ipfs/QmdvVCsFD8ktvJFV56NDkgQ3oBsSb9vLNcwVm6uwTuUuPR\"]},\"src/modules/puppet/Puppet.sol\":{\"keccak256\":\"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6\",\"dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8\"]},\"src/modules/puppet/PuppetDelegationControl.sol\":{\"keccak256\":\"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d\",\"dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS\"]},\"src/modules/puppet/PuppetFactorySystem.sol\":{\"keccak256\":\"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9\",\"dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv\"]},\"src/modules/puppet/PuppetMaster.sol\":{\"keccak256\":\"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c\",\"dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm\"]},\"src/modules/puppet/constants.sol\":{\"keccak256\":\"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d\",\"dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq\"]},\"src/modules/puppet/createPuppet.sol\":{\"keccak256\":\"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398\",\"dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc\"]},\"src/modules/puppet/tables/PuppetRegistry.sol\":{\"keccak256\":\"0x7599140542e17339a785741ca6057d2b5ca5529a816b4609940e43e154bf179d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://2b251df5ef3be9a7cca661d861ba8802181fe55607cf119313ad6db0bcd73be9\",\"dweb:/ipfs/QmaVjFTBdqasneWm1EakzBgBU9n7i4vV1YdrGiqYT5pobk\"]},\"src/modules/puppet/utils.sol\":{\"keccak256\":\"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489\",\"dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4\"]},\"src/modules/tokens/tables/Balances.sol\":{\"keccak256\":\"0x323871032273e403a04e1b27c36dda8ec5cc7ae116c96af6843ad9b9585327db\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://bd555e72a6b5c42e27aaeda796e93b50a9e4a0f9253dba806a484ff8559c4fd7\",\"dweb:/ipfs/QmQ3hJxyoWVj4Cx7w2Yb9DW18htPeN2z8drkz2Sq3emEyB\"]},\"src/utils/AccessControlLib.sol\":{\"keccak256\":\"0xc14746b7e25f7d3340b9585c170f2120a46639f3c6ebb8ba88ca81311f475df2\",\"license\":\"MIT\",\"urls\":[\"bzz-raw://fba240838bc55220b4c9efdcd389df4ec028d43ea9f682cf583d7879280a7bb8\",\"dweb:/ipfs/QmV5fyNXfFgdTxYRYB1NzNQKkypnQH8SJ5C6BZpjhieiUS\"]}},\"version\":1}","metadata":{"compiler":{"version":"0.8.24+commit.e11b9ed9"},"language":"Solidity","output":{"abi":[{"inputs":[{"internalType":"bytes14","name":"namespace","type":"bytes14"}],"type":"error","name":"ERC20Module_InvalidNamespace"},{"inputs":[],"type":"error","name":"FieldLayoutLib_Empty"},{"inputs":[{"internalType":"uint256","name":"staticDataLength","type":"uint256"},{"internalType":"uint256","name":"computedStaticDataLength","type":"uint256"}],"type":"error","name":"FieldLayoutLib_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthDoesNotFitInAWord"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsNotZero"},{"inputs":[{"internalType":"uint256","name":"index","type":"uint256"}],"type":"error","name":"FieldLayoutLib_StaticLengthIsZero"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyDynamicFields"},{"inputs":[{"internalType":"uint256","name":"numFields","type":"uint256"},{"internalType":"uint256","name":"maxFields","type":"uint256"}],"type":"error","name":"FieldLayoutLib_TooManyFields"},{"inputs":[],"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":"SchemaLib_InvalidLength"},{"inputs":[],"type":"error","name":"SchemaLib_StaticTypeAfterDynamicType"},{"inputs":[{"internalType":"bytes","name":"data","type":"bytes"},{"internalType":"uint256","name":"start","type":"uint256"},{"internalType":"uint256","name":"end","type":"uint256"}],"type":"error","name":"Slice_OutOfBounds"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidFieldNamesLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidKeyNamesLength"},{"inputs":[{"internalType":"bytes2","name":"expected","type":"bytes2"},{"internalType":"ResourceId","name":"resourceId","type":"bytes32"},{"internalType":"string","name":"resourceIdString","type":"string"}],"type":"error","name":"Store_InvalidResourceType"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidStaticDataLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaDynamicLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaLength"},{"inputs":[{"internalType":"uint256","name":"expected","type":"uint256"},{"internalType":"uint256","name":"received","type":"uint256"}],"type":"error","name":"Store_InvalidValueSchemaStaticLength"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32"},{"internalType":"string","name":"tableIdString","type":"string"}],"type":"error","name":"Store_TableAlreadyExists"},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"bytes","name":"staticData","type":"bytes","indexed":false},{"internalType":"PackedCounter","name":"encodedLengths","type":"bytes32","indexed":false},{"internalType":"bytes","name":"dynamicData","type":"bytes","indexed":false}],"type":"event","name":"Store_SetRecord","anonymous":false},{"inputs":[{"internalType":"ResourceId","name":"tableId","type":"bytes32","indexed":true},{"internalType":"bytes32[]","name":"keyTuple","type":"bytes32[]","indexed":false},{"internalType":"uint48","name":"start","type":"uint48","indexed":false},{"internalType":"bytes","name":"data","type":"bytes","indexed":false}],"type":"event","name":"Store_SpliceStaticData","anonymous":false},{"inputs":[],"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/erc20-puppet/ERC20Module.sol":"ERC20Module"},"evmVersion":"cancun","libraries":{}},"sources":{"node_modules/@latticexyz/schema-type/src/solidity/SchemaType.sol":{"keccak256":"0x650927696f7518fa216f2d6001835e9fdb419518034c781e86d2a2d33f4ecd2a","urls":["bzz-raw://72e91ac32ed00d36bd22fefeaf4ce1e9420143ddab7080eeb720c668a117bf44","dweb:/ipfs/QmdVqn18WZvx5p84MDJPsB5tfVoXDR86wzm4sLx6WrGYYL"],"license":"MIT"},"node_modules/@latticexyz/store/src/Bytes.sol":{"keccak256":"0xf506b8e9521a2173ae51aca038b86f705ac6c10fc6361c5df32ea37c7218fdbd","urls":["bzz-raw://9ce5626141f377ea6c9477a27205fa23013c321423950a97f75a2685ac401c55","dweb:/ipfs/QmfYjQmUcQUm46dRHbiYkUnoBokHuS58WZUd8oSdGKKohy"],"license":"MIT"},"node_modules/@latticexyz/store/src/FieldLayout.sol":{"keccak256":"0xc6aa930fb9a3df986870e3c77e567cabff12ae5e7b2c2af69669390e018d3728","urls":["bzz-raw://a8d6d40675ddd6575538cfa915f73fc8379f4c154b034220df2cf6b7be6d9baf","dweb:/ipfs/QmS7RNEDNBq6YwVJ1gPfs36CJg9d6h5MaxPRtuL3726uEK"],"license":"MIT"},"node_modules/@latticexyz/store/src/Hook.sol":{"keccak256":"0x6041a89e90293b15acf91378e329815cb857d79f0b384918cd97292378ed5c09","urls":["bzz-raw://0e263d3c8230b4a4852e3b66058e9c36e946cf64471ffd0ac7f54b7a37f329f4","dweb:/ipfs/QmdCnZE1G5PX4ZswUiR6t2DWMRDbVdJYaCzbCF4hbDTKc2"],"license":"MIT"},"node_modules/@latticexyz/store/src/IERC165.sol":{"keccak256":"0x0efbf9afc716c585621482221f75e5bd60bcf0e813c9f7800d7c0309dcc3c927","urls":["bzz-raw://31b6aeb5446a0a0d5bd71be15a68c5bde94b08c961369203b83c8abe36f401d2","dweb:/ipfs/QmXhComne4es9ZMKaGNqHCdJZrFoFssxMYgLaqvCXPL1Mg"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStore.sol":{"keccak256":"0xa95a7b8095a313078abe9b3953fa4512aac88ead4526e37023583cb5dc274cb3","urls":["bzz-raw://8a878403e5133ec5f250d752e7b7495e2b13420cd3a42fb59aa6d5f8ee6d188b","dweb:/ipfs/QmUGxeD5Y7B5goNNgFcgaAakjoSr4YtVaE3CMAypRUZGmc"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreData.sol":{"keccak256":"0x174b2e5a5f80094d752cd2a36f1fbdf50e81b1e203216b9e5a6f33e02d606cec","urls":["bzz-raw://59e6de780b55c1937a7148d3cc07ec137c3e2f243f331ba0b70f3262d919c1cb","dweb:/ipfs/QmTJbh6ybPsZE9pFziTztstWxmh6ogUgMa6E81M6PMTA6g"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreErrors.sol":{"keccak256":"0x4b471eb3b98a51f15992f7e4cfb7a7d8e842410f081ea03ef85d3a7b34c35f79","urls":["bzz-raw://e7e82faaea290036677562d8a3a8502f5f871b1368b58ac38897e0ef67216d84","dweb:/ipfs/QmfCj4CtNZ7LYkWUAYcMoyp3X7PFJkUjXgBwbzXkbkDFL6"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreEvents.sol":{"keccak256":"0xfdeeba7e17c947285610d49d85d402cfe5286c046814f827c1aaa37636c16d8f","urls":["bzz-raw://5fde8b7c7caf4dcdcb524565cb8745d897d4d22d88fa0744f9db4b3d36a1eee1","dweb:/ipfs/QmbUe4pfJeRqiiPz31BKWbYv12cz8Lz3Ky5yKydtTb4FY9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreHook.sol":{"keccak256":"0x677224ab340753edf523ccff8c9d6ede987addbf0d7bc13d0e479306f3866a99","urls":["bzz-raw://6c0285a7684490d6e65d6f91b3631abdafb135d200ea9068e730dd98017a305e","dweb:/ipfs/QmcURHZiMGnSET9P2iSgph22F6iFdoDbN4WmJsHxTAT5G9"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRead.sol":{"keccak256":"0xe246addf70a3fe65f19e2ab0048d48785bc2ef2f75884eeade151aef59ff5449","urls":["bzz-raw://389022221307160febdec33a7fbdd82fcfbdd1fa6f9b1c67ffe3bf0467d2c924","dweb:/ipfs/QmWunXryDsJZJBwdXxKetRH1vB4tkwTXsdzoM4nePGVvaA"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreRegistration.sol":{"keccak256":"0xf6d2871ca67aacadfd5dd4caef45440a571d932e68a04466f2674e481e79e167","urls":["bzz-raw://260067ed037789d073f407db1d416171e33c79e9b584090794d05e990ee88b67","dweb:/ipfs/QmbAA4Ynfy5aQv71JkZrPcdt2iqc3NK8DcAL1mnx7M1WYC"],"license":"MIT"},"node_modules/@latticexyz/store/src/IStoreWrite.sol":{"keccak256":"0x7f6d8a25eea4a9d51de396ff64215e2567b29ce607538f04ec1a4ae2efb591bc","urls":["bzz-raw://8ae6e34ba2e92bd3cb8dd556838f4e3caa6c3feaf9e2d63649afa944cb5e3263","dweb:/ipfs/QmR1oNRLp87pnrnxrujdT7JU1Gzwq22rVukKUkXmwNBVSC"],"license":"MIT"},"node_modules/@latticexyz/store/src/Memory.sol":{"keccak256":"0x79954fa7614943899ad13b27ca0c2bf27c996d7b82a0e347afa48d7a4bbc6e2d","urls":["bzz-raw://34f7d6e209bcc6e379e004ae5a03f909e23e4e87956205610f4e39969b968912","dweb:/ipfs/QmZQeHDwtUBEpTSWn9L7AZ1id6dUbEHmLo6Cj3f9jKRqVM"],"license":"MIT"},"node_modules/@latticexyz/store/src/PackedCounter.sol":{"keccak256":"0x6dc7a614a120b1940ca8de1924e59895a42ef5f0e22d81a9221790fd76687c2e","urls":["bzz-raw://b638521a9590a62c4e976f12be43d0370246836b90227cbf2e306888331986f6","dweb:/ipfs/QmcEpcjHhL9rawjJRuMJvtTv3YwN2ggYsQHXZeoF88VRFX"],"license":"MIT"},"node_modules/@latticexyz/store/src/ResourceId.sol":{"keccak256":"0xdca93829ef7e90c12678d3b7bcafee1d3ec9499abfc76c91edd188a8923f4f18","urls":["bzz-raw://3193518ae917765035c845266de41ccebde7a7a06ee6fd7f000534a530975ab2","dweb:/ipfs/QmYr9dCG2HKUMrXHevyRanqsPRHYpD2dnpgZkvwZYqWHe9"],"license":"MIT"},"node_modules/@latticexyz/store/src/Schema.sol":{"keccak256":"0x21d008da9dd112938ad5381264dce39be7855002076afa01d78dc6421a951fd8","urls":["bzz-raw://1af33c3d662d6ba193987ec62c865e05b53ced4904bff9a5729ab3ada2ca3a99","dweb:/ipfs/QmUSXF3R7LwQWW8P6BZCrt3MAgGN5UwiiaHB3DGCSBZLL5"],"license":"MIT"},"node_modules/@latticexyz/store/src/Slice.sol":{"keccak256":"0x1f04af14e5040f71bd3daa79b90245a275e52f8d0294c17ae5bfe9aa727651a5","urls":["bzz-raw://d76533959ded2f58434ae9f89fe8c3ff66095ec94e829f89914b362751799e3a","dweb:/ipfs/Qmb1e12g6Sku2u1R96qei1GhqSNi1sZhKRCb111SyNk1ta"],"license":"MIT"},"node_modules/@latticexyz/store/src/Storage.sol":{"keccak256":"0x48c9749d33f06406b8033b3df67002836d1b356c6ae8282865e7b437941ed61f","urls":["bzz-raw://931e1275db62ba2f9410ee8a8ab384ece2a7031cdf446c50696078f9da24a04d","dweb:/ipfs/QmTXzyjLNj5KuJUHfe1T3awroK5DLkCU4dm6RR4pSUVrfE"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreCore.sol":{"keccak256":"0x7cafc150d77cb46ecb49b1a1a7d43cc17e21a095596cf544cc8ba6bfe7ed7f20","urls":["bzz-raw://889cadacfbc667e10a7a83ac34e858c76d0472d04cad72c7691a84879e503ce3","dweb:/ipfs/Qmcm6GFFoGFw2nmuz3Z2NRAgqfBPFZixHppmQzZM4Fy3sR"],"license":"MIT"},"node_modules/@latticexyz/store/src/StoreSwitch.sol":{"keccak256":"0xbe5cb815a5d073d1d94fc73a3a02a151ffb4e9ce299f00580c6c2d9cd339d7c9","urls":["bzz-raw://b7416ec2aeef38b06c4e559dc3e76fa8cd51f54c06cc58aeed613f44dfd3c3ff","dweb:/ipfs/QmRp6ZmUckpmGKG31wyZSxtgmUJZS2y85sRP2UU9Foajn7"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/index.sol":{"keccak256":"0xa59c43271d363f2366d6f6732ae586b1a36a3ffa4906b8f5cbbf19d3d314562c","urls":["bzz-raw://2bd7c9f8f9ad579a8dfec566b2bd2e646f8065ce8a07e6732e11a4a3a2be7787","dweb:/ipfs/QmWBwZGnYYxEiRjFKSsu1mFtCWJYw3XSojhn7zmc5YE4vG"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Hooks.sol":{"keccak256":"0x2e81480e081ce6ad4917ecc634e5c9b7a5674068992ae8d9088f0f6296da3bf7","urls":["bzz-raw://2acfdee4dd4c0347ec214273184f267db0e7edc82e586600501d13581dbb5551","dweb:/ipfs/QmcD945zNdGfkwKVvKHA2fpBGictaz4cVMnNm96SmTG5qY"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/ResourceIds.sol":{"keccak256":"0x29ed1bd962e594e00a9b921ddbbb202a47206adbece718721483a69593b88763","urls":["bzz-raw://786df2eca996d18660a4ea7d059dfb8c8476fe5cc8f14e0ce5c8f237e08444ea","dweb:/ipfs/QmQ8dbVA2rMgcb9rznHVjn8DGH9U8bZuHmebukjkYxs2Av"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/StoreHooks.sol":{"keccak256":"0xe9c42e51b6d20496dde8e8013680ec4a4ea1229fd57f0364a2a061c14c1c115b","urls":["bzz-raw://2bcbeeb7b3de32fc68102f7875d71348d5a0171dbb50937d6ebeb28dd10d4ed4","dweb:/ipfs/QmPY91z4D25KGLU2nhnZgb538Mh1mi46RbwHQB8kZvXd4h"],"license":"MIT"},"node_modules/@latticexyz/store/src/codegen/tables/Tables.sol":{"keccak256":"0xf80e355b361d29b0169483074b73e2502b228d539d5b3511239edfa9644ae270","urls":["bzz-raw://067d0b61a94453ed29f985cee8d237b46ef1c95f790848a927951e951ebe5a44","dweb:/ipfs/QmVjF2vEnRXzq1GHXwXd9iHJAfyrZNA2wAuygpZv6dGRTB"],"license":"MIT"},"node_modules/@latticexyz/store/src/constants.sol":{"keccak256":"0x2fe1752ecfb01c2de84cd9ae0c47fef85f9f0a7668ae31dc8b19724570eaad50","urls":["bzz-raw://cb90fb960543d00b37df49274c3b7bda6f2c8fb1b363226610f6de7f5bffc7c2","dweb:/ipfs/Qmc1ZQ6xPm8jXaWbc9Lakq2uZxY3pqtVC8r3WnNDFgLGTN"],"license":"MIT"},"node_modules/@latticexyz/store/src/rightMask.sol":{"keccak256":"0xbde7a13eb04663ffd62c3eac929abde4bf8d4fb4c434e510782af01045b78410","urls":["bzz-raw://3b629c78d8e194824b07bbf66f62d5bb94ce883100f5523cb545d3e980792f38","dweb:/ipfs/QmWCRbCT55mnusK1abavXvwM4uN9QStcML4ZgjUG9L6V8S"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeHookTypes.sol":{"keccak256":"0xcc16f330a9cb5f9f095e2bfc62c67818f2b91a229223c64c87891f1cebfc0305","urls":["bzz-raw://1384e4acac4553089859ff1368f358e5c81ceba986a902e5ec082801de097f64","dweb:/ipfs/QmXcEESML4KRKCfwxvC3tsW9jiA8PE7pxPuZ8L1t1wiNby"],"license":"MIT"},"node_modules/@latticexyz/store/src/storeResourceTypes.sol":{"keccak256":"0x515001322ebb9b58c62be0bd96ba65dc82841cc550533f283813ad24baaf2554","urls":["bzz-raw://b014d298897dfc75189c10f5e3d970d8368db734c545f6c7d4833cec9c7117eb","dweb:/ipfs/Qmcs7rTdh6zVyDHczXW6mEJqVmndZZTDSjNC1jouf43hTX"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/DecodeSlice.sol":{"keccak256":"0xcf8e6e16b76972b6a96ea6b428d7298fc174a840fc8c5c09b6fe2030d31600d7","urls":["bzz-raw://025cf5112618018efd416155c9df257cd28447629bd79c0c37655a8e22c0e4f4","dweb:/ipfs/QmaqeqzGVrAK6rQqQgCzs8UJMWrWmR52jqzN8jqRdaY1kT"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/EncodeArray.sol":{"keccak256":"0x248c35b8efaf6a0b0229fd81cafcb8fac6a54662187b56b49574b10e9c3ebf29","urls":["bzz-raw://63b6c95da7d63346db3b741f836b20e23f8e46a6245efdfa6443b204edecabcf","dweb:/ipfs/QmY79DfLgvMsTSZJzwbYmzGYE2ajCumu3ruQ2GpDyYbVqY"],"license":"MIT"},"node_modules/@latticexyz/store/src/tightcoder/TightCoder.sol":{"keccak256":"0x08f257c62602117fe4943580b0a19f19cf696b22000afd927a2159e24625a13a","urls":["bzz-raw://40ee497f86d4192794a5592264e356dcda27bbe275f6a110dfbc3c3b67798205","dweb:/ipfs/QmW98aRsWSvUzwvX8FkweFDrgGS9YKr8KvfnFrT5HkMtvT"],"license":"MIT"},"node_modules/@latticexyz/store/src/version.sol":{"keccak256":"0x1cf2e205960520ded9a1ac8a6f4e4e25b5153114939adc7acb66122aba88af61","urls":["bzz-raw://7b41a9da0859000750196a14db7352e12fbe0d55e3849a468fe41b23ffa847ed","dweb:/ipfs/QmTjkrru4tcqXx38k49C2ris5ednawtkfdcW5EVRNJYBKU"],"license":"MIT"},"node_modules/@latticexyz/world/src/DelegationControl.sol":{"keccak256":"0x8cb98a092891f05e855c9bc4705f0c6ad5d5c82be731afd3591c091ef91530a3","urls":["bzz-raw://66e589610bcf3a79d5a158a3ce6d4a894b96575826a16fd817bd80721625e3d6","dweb:/ipfs/QmTDFR47F5Cq82LRXMxBt6j8omobm9cZtmBBnWycBnmjPx"],"license":"MIT"},"node_modules/@latticexyz/world/src/IDelegationControl.sol":{"keccak256":"0x9f0dcc1cd281b51a5d3d8f75a55ce8cfb2577c88a9b6644ee144fe260c14e60e","urls":["bzz-raw://85d99d96c33512968e2c3ef68777bdf65305de0b01597e182750ce2c152e089d","dweb:/ipfs/QmZwB163CzPuHJGPW8LPL8pHsEdvkYmBuoEVbu3JqNSTkC"],"license":"MIT"},"node_modules/@latticexyz/world/src/IERC165.sol":{"keccak256":"0xe00be0c676fa14949ecc4324ae3e932834b0550e2fabbc813b5aa49cf0e2b695","urls":["bzz-raw://700a595ee72389add0e9aef8ae6c2cafc5336b0dc2c43e580ce4d9546ca0dee3","dweb:/ipfs/QmPfRtR5591tJPSvu9mz9J26qSwEjFm5FK8D99jA3qHZCe"],"license":"MIT"},"node_modules/@latticexyz/world/src/IModule.sol":{"keccak256":"0x6c11c44fef08d46ca9f291551a42b8576259f65b7e957aef92540ba0acd72909","urls":["bzz-raw://0ffbc3646ea495350939319f5418ba2dd45b6ec809d6b84ed3264e592a9385bd","dweb:/ipfs/QmPCjuQUMWVUPv7vSVfztnymYA9hUP1xRS62FD6iwzGMuo"],"license":"MIT"},"node_modules/@latticexyz/world/src/ISystemHook.sol":{"keccak256":"0xad31c270fe5bf23869fe4a55a9a8d3372871c595f6b0f9a197e810051ab1bfdc","urls":["bzz-raw://af7acd6a86410c6d2586739e370134265521cf522fec0c3091804c0d0f99a0fc","dweb:/ipfs/QmRRbUbw89Z3tva95UTvxKhFwn5ddYNMiHbVs6Nnmpsty3"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldContextConsumer.sol":{"keccak256":"0xd3645ee90c73dd991659a140c0132c5a2aaf27a296c457737b212d87b2f66402","urls":["bzz-raw://519d81e2bc7233b1488339eaf9220f7eb57086dd3ee8e1831708ebc6e87f00db","dweb:/ipfs/Qmf8RjMxuPXbteMeEB3vstjutsCrmveyBFCjVFt7nSYgtc"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldErrors.sol":{"keccak256":"0x5e733399a521c7a051601e1f31835ac1653d310a04194e2d10c54206277586cb","urls":["bzz-raw://d2646c3cf530d6768c4479c64477306a38b3358009792dfe82436cf1e6c27f90","dweb:/ipfs/QmdD5Vk7iswuvWVHBsRkw3n7tJ1gaZ9X9y7s2SkurkQ829"],"license":"MIT"},"node_modules/@latticexyz/world/src/IWorldKernel.sol":{"keccak256":"0x603c73df2d8d210b1970be3e7e49b8659ae45574add5ce3911a4fc59cce88839","urls":["bzz-raw://a095f9d317302d15e0e124951fe6b29a3bb0e3452e3d2211ac126b49992af443","dweb:/ipfs/QmRwwuh7w1msqx4vixJDbiBux4wVALiPGzCZJbikZsqwz7"],"license":"MIT"},"node_modules/@latticexyz/world/src/Module.sol":{"keccak256":"0xfdfdbdb1373ff83d8529865e21bbe796025861140a0a96c7183bcc6999ba63dd","urls":["bzz-raw://1c1d003f9a28bc9098cc669406f569905a7726fc17cb07a6a6027531aebe5020","dweb:/ipfs/QmPrEP9SRfKRouAQmVn6dq4MgguBPboMdMPg88WqBjsjgn"],"license":"MIT"},"node_modules/@latticexyz/world/src/System.sol":{"keccak256":"0x1d380574763b720a8950dc0a14d519c2532f9f27c8115116f0a6f7916c9606b3","urls":["bzz-raw://a395df820ee46be3dcdb36682183811a86cdc848dbd56ecc2a21785a42785cf9","dweb:/ipfs/QmeiuzuHjQuv4GHXXiRkBkxhyN7e9Vy19TYfAccnxWej91"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldContext.sol":{"keccak256":"0x4b83d5791209b8f39773b07e5f162dfd0617f5f9b5b4bd371c087412e5ad01cf","urls":["bzz-raw://033a3777136e6d5c581efc8bf2535403abe44874409c85d17a353fae6dc56006","dweb:/ipfs/QmaXepBDVnmnMdVzuxbGT2qo5vqWnjB75KNCCdxRehrBMX"],"license":"MIT"},"node_modules/@latticexyz/world/src/WorldResourceId.sol":{"keccak256":"0xf668eeaecd294a2b8b9e1a771161373af84abe42b8a9820cf9d3092a9a1e64bd","urls":["bzz-raw://01f2939361e51497304e66bdcd9cb33bfea95737fce41ca731f20d3b5dbd5f74","dweb:/ipfs/QmayLveLBSq8axMgbouD411V5BTiYXKbg9ddEpxjcMU4ez"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IAccessManagementSystem.sol":{"keccak256":"0xea5256f37d5f373dc0d008b30a44f46f85d5aa4826c9c9702e3a62cafe4fc00d","urls":["bzz-raw://5f34c70731153f300c4d89b4ddcfd0b02834abf208fcd2ec5863fb1dc5bde74f","dweb:/ipfs/QmdmCzFDr6WmSQ23b2T3aaJhJ6Qvzhc9UaE5z33adciAd4"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBalanceTransferSystem.sol":{"keccak256":"0xd9ead56302e6ce3f7958983f6652c2712df74ce83cd002248b235769bd5f87d4","urls":["bzz-raw://a925eab29746fdcff87662142f61565d64bfa108ee14a9a5d496413c150533c4","dweb:/ipfs/QmaFXKnfuMbkaZCEz3e2J3Nx49keqvmaGa7QLBvbj1ntYt"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBaseWorld.sol":{"keccak256":"0x7451726394ea4c39dcca268895499a7d908bd868092cf9b133772077ad5c6a6a","urls":["bzz-raw://c102f036a0ce081255c1088c75e823e5eb5dfdf36ade55d45a6c3914e2a4a5e5","dweb:/ipfs/QmUWEstc4kRhqvUc5sbPyCvy3kvH3hzmH1GrP8MjyQYy3v"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IBatchCallSystem.sol":{"keccak256":"0xd71d9a5a1ee5969cbfc548ddcd01814293d57b5c7f40df0a8ff926df43ec9d9b","urls":["bzz-raw://c6377994ebe168759b1f8ed17d4621720d66259c3ebff77acc2f7cc7dd9fec45","dweb:/ipfs/QmeNaatg7JTe6tLc2RbC28SLEQTJFddXy5xZHmqi9zQ9Jx"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IModuleInstallationSystem.sol":{"keccak256":"0xba969b5b252d1eb26f22908e4581456a6791e02e693cb14f48de35feb31b56f4","urls":["bzz-raw://34fcc11f5a70bcb51ea1ca76587e7dea7dfb940f522c820988212573a9ca32b6","dweb:/ipfs/QmQSgQdJiXMVVSU5woFMC1mAGJBicBeoQUZ5UVX94UjJbX"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IRegistrationSystem.sol":{"keccak256":"0x90d05ad5b6ce321f2d15d93cc6d126c0332afd161cebd008ea115a552bb0e772","urls":["bzz-raw://9a6bd7a337b1a8ca9ce2c853db9003352895697d43bdf8c49da850ee19990aa8","dweb:/ipfs/QmbvpN53672EQZMAfmDEC8bP6MRYUnAqLDRUmkkv6DMrAT"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/interfaces/IWorldRegistrationSystem.sol":{"keccak256":"0xfe79af16bea789b894c322b3796b7a5fd3042d2da0ea808768e1588bff53056c","urls":["bzz-raw://15a2c7d26d21773fa41dd3891553ad57520f0c401627da8f79c11751b0fca478","dweb:/ipfs/QmZYpNkSXqqz5tUeqNwppY7Q75ec9gGPv7BkjUJc87AZFE"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/InstalledModules.sol":{"keccak256":"0x6d247eea47c3566ea8e71b39e662607509f7a2080eabddf83c9f6b0682d27edc","urls":["bzz-raw://ab03d2cf026d39902ec68c3665a6779053e82e0f60bccfe2810be4b43f05894e","dweb:/ipfs/Qmdzg8bmkWjN4mw9EfnHFqYHpTJACGm9YoYZDZhX1MMamY"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/NamespaceOwner.sol":{"keccak256":"0x1bf6746d0154dc5464f394e5b3d8d66398a55eaff68f6e2c3f3f964d8daf39cd","urls":["bzz-raw://b902e62ea9758145aaa0677c04b764cf721ba103b8294191cdc4ba6c25f3ba9e","dweb:/ipfs/QmT3m18HiJd8BT1j5pWeXkGMQjqRCfKDiFvoBTBJ8ZKruv"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/ResourceAccess.sol":{"keccak256":"0x57b12c2ff2649db6dd7e2acacece0c5fbdcc0f0bff9b28c685c93d4372688568","urls":["bzz-raw://3a9c39f46cf1e43b13b4a94fad22fde80223f6b5e39c87ca5a8f5d76432d1a3c","dweb:/ipfs/QmNdEEiM7acceMy4ojy9oFKvba7Yjm3MXF1hpnRoWTaAsD"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/SystemRegistry.sol":{"keccak256":"0x98b313c90edc060aed54e1728c5931e104914d485dfb0099099dc469773c6194","urls":["bzz-raw://595d820d40e7faceb413613f24d56e82d13e3e53dd86c69627f1c0f134b5705c","dweb:/ipfs/QmUosi7xfNsg5ehaPNZ7tpU3UxyBMbfQW1ESyqH8Bk73JU"],"license":"MIT"},"node_modules/@latticexyz/world/src/codegen/tables/Systems.sol":{"keccak256":"0xb9b4eada80dfde28cc334d7a8ede2a57b92f3b42f3501af693ba981ba38b8f21","urls":["bzz-raw://c6edf1eb4a0d1730b331eff58f3f26aa037fed7767b6d420a28b905134908bf7","dweb:/ipfs/QmXyZNb5SvwLJ7eG2mrFLDyC6Q2wKPGiHyeQQ21cQLujJR"],"license":"MIT"},"node_modules/@latticexyz/world/src/constants.sol":{"keccak256":"0xb8320f88ed5519a4fe2554ad94815ce328a50fef7719932375d6ce695265c2f5","urls":["bzz-raw://a8f5de30fbcc63e469e46ad4a4d4bcd7d8e4b4f2d31fcf62a04aca48d999af22","dweb:/ipfs/QmXw1jDQM2szfRY3tAGrRy6fEzte6yVFgebJAqCLMDHndV"],"license":"MIT"},"node_modules/@latticexyz/world/src/modules/init/types.sol":{"keccak256":"0x1876630a009a39e1a771e5d05d420731b85523b4fe091ce04a72f6f283f5e9b3","urls":["bzz-raw://1166a3d9f7db80d2e041def918fa54baa0f4d51edb35731a8b2bf6ee76810411","dweb:/ipfs/Qmf5VmgLsWJy3Tea5JM9mzCKJ49NJC1fRcgWGVFruusBgJ"],"license":"MIT"},"node_modules/@latticexyz/world/src/revertWithBytes.sol":{"keccak256":"0x0e18f180961360de71b9374363cf31bf97e489fc895ff900946b515eeb7ecb3a","urls":["bzz-raw://e85a5e2c0e79ef39a6e367b3b653d475f702fb8f4e14f5817ca3091480e21eb8","dweb:/ipfs/QmeoYVTLo3LncJRD3mqc5bMSHY3Rc9N3yveu6pH2uRVCGW"],"license":"MIT"},"node_modules/@latticexyz/world/src/worldResourceTypes.sol":{"keccak256":"0x3478328afa3363bcb25271cdcd4c23355f53be785ae0aab5159490122831b8ed","urls":["bzz-raw://5192c5d7dbe1e5521fc9af4830c991be7209652080c507ee6860cc3746dce96d","dweb:/ipfs/Qmbf6ge8pEwaGhjei7MKFCNk9UbCb55AvUadbbeqyNKJ12"],"license":"MIT"},"src/modules/erc20-puppet/ERC20Module.sol":{"keccak256":"0x17bc29bb233a59422412c52b96caa8b3348122c7fea93ff6a05b5180d8a7f67f","urls":["bzz-raw://b41b85213db039ec9d60e0e00f93775263905dc794a7daff0d4cd34ea713566a","dweb:/ipfs/QmdAE8KH3mhK7WPTpDCwpE5Yw294m9T9KYFTxMsSNxc6qd"],"license":"MIT"},"src/modules/erc20-puppet/ERC20System.sol":{"keccak256":"0xf3cd154bdc6d3f7ad3727ee9852a2858c13b9d19a1b67c8ade74b812abc67ad9","urls":["bzz-raw://4761ee9c4d3e0cf92147950d18e267dbbabf735d7ac5f7b09ae63c86968cf466","dweb:/ipfs/QmSFNphuAUT1VbNegRjsXQaWttWL1UCLUixSXjAapbPn5s"],"license":"MIT"},"src/modules/erc20-puppet/IERC20.sol":{"keccak256":"0x4da2e95751daa6444c24063c1da6886380a487b958808d888f6f4f4b1da7b60b","urls":["bzz-raw://111b988299e13500d38a87e2a6309087f42abd6a871e6e9c5da7bc7d09c71b2c","dweb:/ipfs/QmWyShHQnKFNvZdKyKmsuRCwhYRrz2UMqHP2oLnHvqArdj"],"license":"MIT"},"src/modules/erc20-puppet/IERC20Errors.sol":{"keccak256":"0x704a9e25590a92a80d153552fbe79a83fe0a80a8f6eaa8d2ccaca70649e40fce","urls":["bzz-raw://0e6ae9510a9c5023299a1064c945b652336a31f5cd225bbe9a72f9e2fd81ada2","dweb:/ipfs/QmdvTCUs3ZiP5unHGdwJz3MxAR5b7K7bYVTZjBT8xadBVR"],"license":"MIT"},"src/modules/erc20-puppet/IERC20Events.sol":{"keccak256":"0xee632339ff14c1e5e6994ce3c605799761f24f40093cabf3b091f6dcbd9ef8ff","urls":["bzz-raw://a0c7a33110c14cfc32011bda15c4330d8f193d133c1f34448f1566f44a0663bd","dweb:/ipfs/QmadwRXGu4H2H3WxgEchXTyLx5PKSLZd7VHvRPEZ5zAgaZ"],"license":"MIT"},"src/modules/erc20-puppet/IERC20Mintable.sol":{"keccak256":"0x51e2b57003ef9fd5e87b7dcd451628e361ff26e0f82a089897e43def4cf35163","urls":["bzz-raw://3b8478ba8a5562432dfcfc02cb35d38b95e0e16d1771c3619d8140a04bbf5208","dweb:/ipfs/QmRBBjFW4dm2qQHdysj3ci9NGpaywbMsN2zjQAUNbXydhL"],"license":"MIT"},"src/modules/erc20-puppet/constants.sol":{"keccak256":"0xf5bc462ba7a0209d4d13b27f6038d2484c978250d9177d1814813a9fa6c67f0e","urls":["bzz-raw://25f1dafb6cabe5bb70021625bd025d7249aed86dfc8567b9e5d8c2c32da847b4","dweb:/ipfs/QmbAAQHU2q6Dm66CqbrwUtWyCbwndKZtrpE3oneFtaYMxX"],"license":"MIT"},"src/modules/erc20-puppet/tables/Allowances.sol":{"keccak256":"0xd05c08a2fdc4ab06273bceda2618c9aec7cc362f5401dd2a8070a71719d42544","urls":["bzz-raw://d6fdfc972d7ec013ecd0deb5609ce2f8ce150b61b53d19f9fd3b60f532d04ab9","dweb:/ipfs/QmRNxV9iUqo9rfjVQoJVHxcfwabJiTMt5fnEi8fM4f5D9G"],"license":"MIT"},"src/modules/erc20-puppet/tables/ERC20Metadata.sol":{"keccak256":"0x04e27880dab60e2f48b5e1057eb24bd5c34026601957db6e81088c656bee306f","urls":["bzz-raw://8b87eb482a34c82ae54a75ec4e70fd0ea09b0765231bdfc26e227b3745994470","dweb:/ipfs/QmbFXEXbvzGxszA4z4KLHMKrMfEyoVhX5xqL7LcyLLJByt"],"license":"MIT"},"src/modules/erc20-puppet/tables/ERC20Registry.sol":{"keccak256":"0x910ef149f80e14d67751ea8adf324e3dc64aa4d3341cce2f938b07ee146ab427","urls":["bzz-raw://3d8ac5b9c0021582fcfe52f89e0a59a55ede7d120356b3326c537161daf324be","dweb:/ipfs/QmNyoj1pQJHbQdreyekJYBkwKLSt5twVmZ3zjVj8WVaqUJ"],"license":"MIT"},"src/modules/erc20-puppet/tables/TotalSupply.sol":{"keccak256":"0xc4bab0981b493a1885474ce82a9aee3004d7ec76213c738e268aac467ef73a5a","urls":["bzz-raw://e87b36b0632ad8515650004ecc76ac196805b5d8bc3a5975ed80a86801c6e95b","dweb:/ipfs/QmYCGY7zstQhhUwDjmzscvNDgZ6QK9kDR51fXvKYP9tmjf"],"license":"MIT"},"src/modules/erc20-puppet/utils.sol":{"keccak256":"0x93469cfd699997e1b980433ad416566a87da0cc925a55752c98dc86c76c63b32","urls":["bzz-raw://00bd06095ef07edea5827d0fde62110f8ce92ed8e20946d04e39a558700e045e","dweb:/ipfs/QmdvVCsFD8ktvJFV56NDkgQ3oBsSb9vLNcwVm6uwTuUuPR"],"license":"MIT"},"src/modules/puppet/Puppet.sol":{"keccak256":"0x0793dc274d0e27b9a00369935693952f2b15e85b243ebed5994cc0c5fd806bc9","urls":["bzz-raw://d94877420ab98c06013f327ce43e18a7dd3f9a42a33f76a5291ae8424b2699a6","dweb:/ipfs/QmcpKAzLV2eKSU7Pfbb7wgkidNeWSUyUD5J2Scgio16RS8"],"license":"MIT"},"src/modules/puppet/PuppetDelegationControl.sol":{"keccak256":"0xef771bb0ed12e5fbb010839842bad2f323930d37bf5f2f32cea911730a180fa3","urls":["bzz-raw://94f6a1e408d554cefe37785e0cdf58ac27760ced06be39cc4fa6b45b1484812d","dweb:/ipfs/QmeWhCxsS3ewKciW5FYP2wgZxT9N8xdC95oFpCvnpRyXrS"],"license":"MIT"},"src/modules/puppet/PuppetFactorySystem.sol":{"keccak256":"0xa439fa70dafaf5c491ecc145b594fe3a269f00b8d97036b305ed99d761e2aefe","urls":["bzz-raw://014fd8fd174420aa76cde8c6afb84df019579550c1540e7c4f79f6f24de12ae9","dweb:/ipfs/QmS2Nba81LDzK3sxa7HHkAvSFdxPL5v5Ri5p41k5MCNYAv"],"license":"MIT"},"src/modules/puppet/PuppetMaster.sol":{"keccak256":"0xc83209af82eba3b3452a5c62531d52edb13d69db67c768ec12989cfaf9191c72","urls":["bzz-raw://f1d83a60ed2e3a15cde57d6fc859ee7c76e6d089010f41189151e799eb90525c","dweb:/ipfs/QmfZLVNQ9G3kkMBxu3koZbMVPqhtxGTw2iziZQbob4AFhm"],"license":"MIT"},"src/modules/puppet/constants.sol":{"keccak256":"0x55dc370e83d22bd3ddb79172658731deb725c7609c1966d58cfdc5276bc20a7e","urls":["bzz-raw://6bc27074a755a64d238f32cfd07b4226cfd47fd157f4f0829c13d8d5406d5f9d","dweb:/ipfs/QmZesmQK815TdF6AuZpKZ249NXP2Qqnzmy9k3WpNRc5Cyq"],"license":"MIT"},"src/modules/puppet/createPuppet.sol":{"keccak256":"0x775c337cda5ffb3ea7f6e105d3804eebcf8bb58d4278d2925f43678f772caae1","urls":["bzz-raw://b458c3b5e40fadcde03b9f3aabee02904a5f0ac289eafa92aa7d370416b39398","dweb:/ipfs/QmSBzbevgeyNECE2gej5GWKGyY7CQV2NNtxPxDbamsm2uc"],"license":"MIT"},"src/modules/puppet/tables/PuppetRegistry.sol":{"keccak256":"0x7599140542e17339a785741ca6057d2b5ca5529a816b4609940e43e154bf179d","urls":["bzz-raw://2b251df5ef3be9a7cca661d861ba8802181fe55607cf119313ad6db0bcd73be9","dweb:/ipfs/QmaVjFTBdqasneWm1EakzBgBU9n7i4vV1YdrGiqYT5pobk"],"license":"MIT"},"src/modules/puppet/utils.sol":{"keccak256":"0x0c07e1daf167a9ebcf81d1b176e4aef23d12b0bc01333c572c0482b699fd199d","urls":["bzz-raw://7f2ec0928e530ae3b75aadfe224a5c1654d0c26b8f10e06e490274fff3871489","dweb:/ipfs/QmPLfak2kwefQ5tcNFxuE9TXsQ4PVkvTraHWZU8PK9GkR4"],"license":"MIT"},"src/modules/tokens/tables/Balances.sol":{"keccak256":"0x323871032273e403a04e1b27c36dda8ec5cc7ae116c96af6843ad9b9585327db","urls":["bzz-raw://bd555e72a6b5c42e27aaeda796e93b50a9e4a0f9253dba806a484ff8559c4fd7","dweb:/ipfs/QmQ3hJxyoWVj4Cx7w2Yb9DW18htPeN2z8drkz2Sq3emEyB"],"license":"MIT"},"src/utils/AccessControlLib.sol":{"keccak256":"0xc14746b7e25f7d3340b9585c170f2120a46639f3c6ebb8ba88ca81311f475df2","urls":["bzz-raw://fba240838bc55220b4c9efdcd389df4ec028d43ea9f682cf583d7879280a7bb8","dweb:/ipfs/QmV5fyNXfFgdTxYRYB1NzNQKkypnQH8SJ5C6BZpjhieiUS"],"license":"MIT"}},"version":1},"id":128}