@etherisc/gif-next 0.0.2-c576a00-897 → 0.0.2-c5c9395-682

Sign up to get free protection for your applications and to get access to all the features.
Files changed (503) hide show
  1. package/README.md +262 -20
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +4 -0
  3. package/artifacts/contracts/components/Component.sol/Component.json +842 -0
  4. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +4 -0
  5. package/artifacts/contracts/components/Distribution.sol/Distribution.json +1329 -0
  6. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +4 -0
  7. package/artifacts/contracts/components/IComponent.sol/IComponent.json +605 -0
  8. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  9. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +969 -0
  10. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  11. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +823 -115
  12. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  13. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +608 -57
  14. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  15. package/artifacts/contracts/components/Pool.sol/Pool.json +1132 -143
  16. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  17. package/artifacts/contracts/components/Product.sol/Product.json +967 -105
  18. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
  19. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
  20. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
  21. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +778 -0
  22. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +4 -0
  23. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +190 -0
  24. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  25. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +1501 -1151
  26. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  27. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +633 -0
  28. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  29. package/artifacts/contracts/instance/Instance.sol/Instance.json +2094 -1242
  30. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +1330 -0
  32. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  33. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1289 -0
  34. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  35. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1179 -0
  36. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  37. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +741 -0
  38. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  39. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +256 -0
  40. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +4 -0
  41. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.json +607 -0
  42. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  43. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +429 -0
  44. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  45. package/artifacts/contracts/instance/{module/lifecycle/ILifecycle.sol/ILifecycleModule.json → base/ILifecycle.sol/ILifecycle.json} +10 -77
  46. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  47. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +532 -0
  48. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  49. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +194 -0
  50. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
  51. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +237 -0
  52. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
  53. package/artifacts/contracts/{experiment/kvstore → instance/module}/IBundle.sol/IBundle.json +1 -1
  54. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  55. package/artifacts/contracts/instance/module/{access/IAccess.sol/IAccess.json → IComponents.sol/IComponents.json} +2 -2
  56. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  57. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.json +10 -0
  58. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
  59. package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
  60. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
  61. package/artifacts/contracts/instance/module/{risk/IRisk.sol → IRisk.sol}/IRisk.json +1 -1
  62. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +4 -0
  63. package/artifacts/contracts/instance/module/{bundle/IBundle.sol/IBundle.json → ISetup.sol/ISetup.json} +2 -2
  64. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +4 -0
  65. package/artifacts/contracts/instance/module/{treasury/ITreasury.sol → ITreasury.sol}/ITreasury.json +1 -1
  66. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  67. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +1039 -0
  68. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  69. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +673 -0
  70. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +4 -0
  71. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +1231 -0
  72. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  73. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +721 -0
  74. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +4 -0
  75. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +817 -0
  76. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  77. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +641 -0
  78. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +4 -0
  79. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +1798 -0
  80. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  81. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +805 -0
  82. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  83. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +622 -0
  84. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +4 -0
  85. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +659 -0
  86. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +4 -0
  87. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +475 -0
  88. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  89. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +1090 -0
  90. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  91. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +606 -0
  92. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
  93. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +577 -109
  94. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
  95. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +186 -213
  96. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +4 -0
  97. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +1092 -0
  98. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  99. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +697 -0
  100. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
  101. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +965 -199
  102. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  103. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +661 -0
  104. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
  105. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +460 -293
  106. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  107. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +653 -0
  108. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  109. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +199 -12
  110. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  111. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +485 -34
  112. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
  113. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +866 -0
  114. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
  115. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +52 -0
  116. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  117. package/artifacts/contracts/registry/Registry.sol/Registry.json +487 -101
  118. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +4 -0
  119. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +285 -0
  120. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
  121. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1158 -0
  122. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  123. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +670 -0
  124. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
  125. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +559 -0
  126. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
  127. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +498 -0
  128. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +4 -0
  129. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +107 -0
  130. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  131. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  132. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  133. package/artifacts/contracts/{components/IBaseComponent.sol/IBaseComponent.json → shared/INftOwnable.sol/INftOwnable.json} +38 -74
  134. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  135. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +129 -0
  136. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  137. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +100 -33
  138. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  139. package/artifacts/contracts/{experiment/inheritance/IB.sol/IB.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +18 -20
  140. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  141. package/artifacts/contracts/{instance/InstanceBase.sol/InstanceBase.json → shared/IService.sol/IService.json} +164 -142
  142. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  143. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +16 -125
  144. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  145. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +251 -0
  146. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  147. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +248 -0
  148. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  149. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +582 -0
  150. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  151. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +256 -25
  152. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  153. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +84 -0
  154. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  155. package/artifacts/contracts/{registry/IChainNft.sol/IChainNft.json → shared/Service.sol/Service.json} +261 -217
  156. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  157. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +96 -0
  158. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  159. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  160. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  161. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +29 -115
  162. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  163. package/artifacts/contracts/test/TestFee.sol/TestFee.json +10 -10
  164. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  165. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +272 -26
  166. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  167. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +44 -10
  168. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  169. package/artifacts/contracts/test/TestService.sol/TestService.json +347 -130
  170. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  171. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +91 -53
  172. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  173. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +12 -12
  174. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  175. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +38 -140
  176. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +4 -0
  177. package/artifacts/contracts/test/Usdc.sol/USDC.json +376 -0
  178. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  179. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +2 -2
  180. package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +4 -0
  181. package/artifacts/contracts/types/Amount.sol/AmountLib.json +161 -0
  182. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  183. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -40
  184. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  185. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +2 -2
  186. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  187. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +100 -0
  188. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  189. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +104 -0
  190. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  191. package/artifacts/contracts/types/Fee.sol/FeeLib.json +84 -14
  192. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +4 -0
  193. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +125 -0
  194. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  195. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +78 -4
  196. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  197. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +26 -3
  198. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +4 -0
  199. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +100 -0
  200. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  201. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  202. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  203. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +100 -0
  204. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +4 -0
  205. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +142 -0
  206. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +4 -0
  207. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +86 -0
  208. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +4 -0
  209. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +156 -0
  210. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
  211. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -0
  212. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  213. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  214. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  215. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +38 -7
  216. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +4 -0
  217. package/artifacts/contracts/types/UFixed.sol/MathLib.json +10 -0
  218. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +4 -0
  219. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +479 -0
  220. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  221. package/artifacts/contracts/types/Version.sol/VersionLib.json +40 -2
  222. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  223. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +22 -3
  224. package/contracts/components/Component.sol +253 -0
  225. package/contracts/components/Distribution.sol +280 -0
  226. package/contracts/components/IComponent.sol +76 -0
  227. package/contracts/components/IDistributionComponent.sol +71 -0
  228. package/contracts/components/IPoolComponent.sol +98 -42
  229. package/contracts/components/IProductComponent.sol +30 -9
  230. package/contracts/components/Pool.sol +238 -109
  231. package/contracts/components/Product.sol +218 -42
  232. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +13 -0
  233. package/contracts/instance/BundleManager.sol +127 -0
  234. package/contracts/instance/Cloneable.sol +51 -0
  235. package/contracts/instance/IInstance.sol +87 -42
  236. package/contracts/instance/IInstanceService.sol +72 -0
  237. package/contracts/instance/Instance.sol +311 -50
  238. package/contracts/instance/InstanceAccessManager.sol +527 -0
  239. package/contracts/instance/InstanceReader.sol +291 -0
  240. package/contracts/instance/InstanceService.sol +495 -0
  241. package/contracts/instance/InstanceServiceManager.sol +54 -0
  242. package/contracts/instance/ObjectManager.sol +82 -0
  243. package/contracts/instance/base/ComponentService.sol +121 -0
  244. package/contracts/instance/base/IKeyValueStore.sol +49 -0
  245. package/contracts/instance/base/ILifecycle.sol +30 -0
  246. package/contracts/instance/base/KeyValueStore.sol +180 -0
  247. package/contracts/instance/base/Lifecycle.sol +109 -0
  248. package/contracts/instance/module/IAccess.sol +54 -0
  249. package/contracts/instance/module/IBundle.sol +23 -0
  250. package/contracts/instance/module/IComponents.sol +41 -0
  251. package/contracts/instance/module/IDistribution.sol +41 -0
  252. package/contracts/instance/module/IPolicy.sol +72 -0
  253. package/contracts/instance/module/IRisk.sol +11 -0
  254. package/contracts/instance/module/ISetup.sol +33 -0
  255. package/contracts/instance/module/ITreasury.sol +23 -0
  256. package/contracts/instance/service/ApplicationService.sol +350 -0
  257. package/contracts/instance/service/ApplicationServiceManager.sol +35 -0
  258. package/contracts/instance/service/BundleService.sol +431 -0
  259. package/contracts/instance/service/BundleServiceManager.sol +51 -0
  260. package/contracts/instance/service/ClaimService.sol +151 -0
  261. package/contracts/instance/service/ClaimServiceManager.sol +35 -0
  262. package/contracts/instance/service/DistributionService.sol +435 -0
  263. package/contracts/instance/service/DistributionServiceManager.sol +51 -0
  264. package/contracts/instance/service/IApplicationService.sol +82 -0
  265. package/contracts/instance/service/IBundleService.sol +93 -0
  266. package/contracts/instance/service/IClaimService.sol +61 -0
  267. package/contracts/instance/service/IDistributionService.sol +99 -0
  268. package/contracts/instance/service/IPolicyService.sol +72 -0
  269. package/contracts/instance/service/IPoolService.sol +81 -12
  270. package/contracts/instance/service/IProductService.sol +21 -39
  271. package/contracts/instance/service/PolicyService.sol +362 -0
  272. package/contracts/instance/service/PolicyServiceManager.sol +54 -0
  273. package/contracts/instance/service/PoolService.sol +249 -69
  274. package/contracts/instance/service/PoolServiceManager.sol +51 -0
  275. package/contracts/instance/service/ProductService.sol +147 -292
  276. package/contracts/instance/service/ProductServiceManager.sol +54 -0
  277. package/contracts/registry/ChainNft.sol +87 -36
  278. package/contracts/registry/IRegistry.sol +68 -24
  279. package/contracts/registry/IRegistryService.sol +68 -0
  280. package/contracts/registry/ITransferInterceptor.sol +7 -0
  281. package/contracts/registry/Registry.sol +372 -286
  282. package/contracts/registry/RegistryAccessManager.sol +216 -0
  283. package/contracts/registry/RegistryService.sol +282 -0
  284. package/contracts/registry/RegistryServiceManager.sol +62 -0
  285. package/contracts/registry/ReleaseManager.sol +324 -0
  286. package/contracts/registry/TokenRegistry.sol +116 -0
  287. package/contracts/shared/ContractDeployerLib.sol +72 -0
  288. package/contracts/shared/ERC165.sol +14 -8
  289. package/contracts/shared/INftOwnable.sol +23 -0
  290. package/contracts/shared/IPolicyHolder.sol +26 -0
  291. package/contracts/shared/IRegisterable.sol +10 -19
  292. package/contracts/shared/IRegistryLinked.sol +12 -0
  293. package/contracts/shared/IService.sol +16 -0
  294. package/contracts/shared/IVersionable.sol +38 -37
  295. package/contracts/shared/NftOwnable.sol +120 -0
  296. package/contracts/shared/PolicyHolder.sol +81 -0
  297. package/contracts/shared/ProxyManager.sol +169 -0
  298. package/contracts/shared/Registerable.sol +54 -66
  299. package/contracts/shared/RegistryLinked.sol +48 -0
  300. package/contracts/shared/Service.sol +72 -0
  301. package/contracts/shared/TokenHandler.sol +33 -0
  302. package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
  303. package/contracts/shared/Versionable.sol +38 -68
  304. package/contracts/test/TestFee.sol +2 -2
  305. package/contracts/test/TestRegisterable.sol +5 -6
  306. package/contracts/test/TestRoleId.sol +2 -2
  307. package/contracts/test/TestService.sol +7 -14
  308. package/contracts/test/Usdc.sol +26 -0
  309. package/contracts/types/Amount.sol +60 -0
  310. package/contracts/types/Blocknumber.sol +1 -16
  311. package/contracts/types/ClaimId.sol +52 -0
  312. package/contracts/types/DistributorType.sol +55 -0
  313. package/contracts/types/Fee.sol +22 -9
  314. package/contracts/types/Key32.sol +50 -0
  315. package/contracts/types/NftId.sol +24 -1
  316. package/contracts/types/NftIdSet.sol +26 -24
  317. package/contracts/types/NumberId.sol +52 -0
  318. package/contracts/types/ObjectType.sol +53 -15
  319. package/contracts/types/PayoutId.sol +54 -0
  320. package/contracts/types/Referral.sol +89 -0
  321. package/contracts/types/RiskId.sol +24 -7
  322. package/contracts/types/RoleId.sol +72 -11
  323. package/contracts/types/Seconds.sol +54 -0
  324. package/contracts/types/StateId.sol +13 -2
  325. package/contracts/types/Timestamp.sol +17 -13
  326. package/contracts/types/UFixed.sol +145 -25
  327. package/contracts/types/Version.sol +14 -1
  328. package/package.json +9 -5
  329. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  330. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -174
  331. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  332. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  333. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  334. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  335. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  336. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  337. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  338. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  339. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  340. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  341. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  342. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  343. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  344. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  345. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  346. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  347. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
  348. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  349. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  350. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  351. package/artifacts/contracts/experiment/kvstore/BundleModuleStore.sol/BundleModuleStore.dbg.json +0 -4
  352. package/artifacts/contracts/experiment/kvstore/BundleModuleStore.sol/BundleModuleStore.json +0 -543
  353. package/artifacts/contracts/experiment/kvstore/IBundle.sol/IBundle.dbg.json +0 -4
  354. package/artifacts/contracts/experiment/kvstore/KeyMapper.sol/KeyMapper.dbg.json +0 -4
  355. package/artifacts/contracts/experiment/kvstore/KeyMapper.sol/KeyMapper.json +0 -185
  356. package/artifacts/contracts/experiment/kvstore/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  357. package/artifacts/contracts/experiment/kvstore/KeyValueStore.sol/KeyValueStore.json +0 -383
  358. package/artifacts/contracts/experiment/kvstore/KvStore.sol/KvStore.dbg.json +0 -4
  359. package/artifacts/contracts/experiment/kvstore/KvStore.sol/KvStore.json +0 -1064
  360. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  361. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  362. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  363. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  364. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  365. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  366. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  367. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  368. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  369. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  370. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  371. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  372. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  373. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  374. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
  375. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
  376. package/artifacts/contracts/instance/IServiceLinked.sol/IServiceLinked.dbg.json +0 -4
  377. package/artifacts/contracts/instance/IServiceLinked.sol/IServiceLinked.json +0 -50
  378. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  379. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
  380. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
  381. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
  382. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  383. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
  384. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
  385. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -276
  386. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
  387. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
  388. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -276
  389. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.dbg.json +0 -4
  390. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.json +0 -10
  391. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.dbg.json +0 -4
  392. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.json +0 -10
  393. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.dbg.json +0 -4
  394. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.json +0 -10
  395. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  396. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -188
  397. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
  398. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
  399. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  400. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.json +0 -188
  401. package/artifacts/contracts/instance/module/lifecycle/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  402. package/artifacts/contracts/instance/module/lifecycle/ILifecycle.sol/ILifecycle.json +0 -134
  403. package/artifacts/contracts/instance/module/lifecycle/ILifecycle.sol/ILifecycleModule.dbg.json +0 -4
  404. package/artifacts/contracts/instance/module/lifecycle/LifecycleModule.sol/LifecycleModule.dbg.json +0 -4
  405. package/artifacts/contracts/instance/module/lifecycle/LifecycleModule.sol/LifecycleModule.json +0 -221
  406. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  407. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  408. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -261
  409. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  410. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -261
  411. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  412. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
  413. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  414. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -149
  415. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  416. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -149
  417. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
  418. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
  419. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -167
  420. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
  421. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -185
  422. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
  423. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
  424. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -533
  425. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
  426. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
  427. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
  428. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -533
  429. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  430. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -491
  431. package/artifacts/contracts/instance/service/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  432. package/artifacts/contracts/instance/service/ComponentServiceBase.sol/ComponentServiceBase.json +0 -300
  433. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  434. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.json +0 -364
  435. package/artifacts/contracts/instance/service/IService.sol/IService.dbg.json +0 -4
  436. package/artifacts/contracts/instance/service/IService.sol/IService.json +0 -300
  437. package/artifacts/contracts/instance/service/ServiceBase.sol/ServiceBase.dbg.json +0 -4
  438. package/artifacts/contracts/instance/service/ServiceBase.sol/ServiceBase.json +0 -300
  439. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  440. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
  441. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.json +0 -24
  442. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
  443. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
  444. package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
  445. package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -387
  446. package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
  447. package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -393
  448. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
  449. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.json +0 -453
  450. package/contracts/components/BaseComponent.sol +0 -89
  451. package/contracts/components/IBaseComponent.sol +0 -19
  452. package/contracts/experiment/errors/Require.sol +0 -38
  453. package/contracts/experiment/errors/Revert.sol +0 -44
  454. package/contracts/experiment/inheritance/A.sol +0 -53
  455. package/contracts/experiment/inheritance/B.sol +0 -28
  456. package/contracts/experiment/inheritance/C.sol +0 -34
  457. package/contracts/experiment/inheritance/IA.sol +0 -13
  458. package/contracts/experiment/inheritance/IB.sol +0 -10
  459. package/contracts/experiment/inheritance/IC.sol +0 -12
  460. package/contracts/experiment/kvstore/BundleModuleStore.sol +0 -93
  461. package/contracts/experiment/kvstore/IBundle.sol +0 -22
  462. package/contracts/experiment/kvstore/KeyMapper.sol +0 -40
  463. package/contracts/experiment/kvstore/KeyValueStore.sol +0 -156
  464. package/contracts/experiment/kvstore/KvStore.sol +0 -195
  465. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  466. package/contracts/experiment/statemachine/ISM.sol +0 -25
  467. package/contracts/experiment/statemachine/README.md +0 -112
  468. package/contracts/experiment/statemachine/SM.sol +0 -57
  469. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  470. package/contracts/experiment/types/TypeA.sol +0 -47
  471. package/contracts/experiment/types/TypeB.sol +0 -29
  472. package/contracts/instance/IInstanceLinked.sol +0 -8
  473. package/contracts/instance/IServiceLinked.sol +0 -12
  474. package/contracts/instance/InstanceBase.sol +0 -71
  475. package/contracts/instance/module/access/Access.sol +0 -149
  476. package/contracts/instance/module/access/IAccess.sol +0 -53
  477. package/contracts/instance/module/bundle/BundleModule.sol +0 -228
  478. package/contracts/instance/module/bundle/IBundle.sol +0 -53
  479. package/contracts/instance/module/compensation/CompensationModule.sol +0 -8
  480. package/contracts/instance/module/compensation/ICompensation.sol +0 -10
  481. package/contracts/instance/module/component/ComponentModule.sol +0 -103
  482. package/contracts/instance/module/component/IComponent.sol +0 -53
  483. package/contracts/instance/module/lifecycle/ILifecycle.sol +0 -47
  484. package/contracts/instance/module/lifecycle/LifecycleModule.sol +0 -89
  485. package/contracts/instance/module/policy/IPolicy.sol +0 -60
  486. package/contracts/instance/module/policy/PolicyModule.sol +0 -84
  487. package/contracts/instance/module/pool/IPoolModule.sol +0 -41
  488. package/contracts/instance/module/pool/PoolModule.sol +0 -87
  489. package/contracts/instance/module/risk/IRisk.sol +0 -39
  490. package/contracts/instance/module/risk/RiskModule.sol +0 -55
  491. package/contracts/instance/module/treasury/ITreasury.sol +0 -103
  492. package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
  493. package/contracts/instance/module/treasury/TreasuryModule.sol +0 -152
  494. package/contracts/instance/service/ComponentOwnerService.sol +0 -171
  495. package/contracts/instance/service/ComponentServiceBase.sol +0 -41
  496. package/contracts/instance/service/IComponentOwnerService.sol +0 -22
  497. package/contracts/instance/service/IService.sol +0 -15
  498. package/contracts/instance/service/ServiceBase.sol +0 -39
  499. package/contracts/registry/IChainNft.sol +0 -21
  500. package/contracts/registry/IRegistryLinked.sol +0 -8
  501. package/contracts/shared/IOwnable.sol +0 -6
  502. package/contracts/test/TestPool.sol +0 -22
  503. package/contracts/test/TestProduct.sol +0 -44
@@ -1,543 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "BundleModuleStore",
4
- "sourceName": "contracts/experiment/kvstore/BundleModuleStore.sol",
5
- "abi": [
6
- {
7
- "inputs": [],
8
- "stateMutability": "nonpayable",
9
- "type": "constructor"
10
- },
11
- {
12
- "inputs": [],
13
- "name": "ID_MASK",
14
- "outputs": [
15
- {
16
- "internalType": "bytes32",
17
- "name": "",
18
- "type": "bytes32"
19
- }
20
- ],
21
- "stateMutability": "view",
22
- "type": "function"
23
- },
24
- {
25
- "inputs": [],
26
- "name": "ID_SHIFT",
27
- "outputs": [
28
- {
29
- "internalType": "uint8",
30
- "name": "",
31
- "type": "uint8"
32
- }
33
- ],
34
- "stateMutability": "view",
35
- "type": "function"
36
- },
37
- {
38
- "inputs": [],
39
- "name": "TYPE_MASK",
40
- "outputs": [
41
- {
42
- "internalType": "bytes32",
43
- "name": "",
44
- "type": "bytes32"
45
- }
46
- ],
47
- "stateMutability": "view",
48
- "type": "function"
49
- },
50
- {
51
- "inputs": [],
52
- "name": "TYPE_SHIFT",
53
- "outputs": [
54
- {
55
- "internalType": "uint8",
56
- "name": "",
57
- "type": "uint8"
58
- }
59
- ],
60
- "stateMutability": "view",
61
- "type": "function"
62
- },
63
- {
64
- "inputs": [
65
- {
66
- "components": [
67
- {
68
- "internalType": "NftId",
69
- "name": "nftId",
70
- "type": "uint96"
71
- },
72
- {
73
- "internalType": "NftId",
74
- "name": "poolNftId",
75
- "type": "uint96"
76
- },
77
- {
78
- "internalType": "StateId",
79
- "name": "state",
80
- "type": "uint8"
81
- },
82
- {
83
- "internalType": "bytes",
84
- "name": "filter",
85
- "type": "bytes"
86
- },
87
- {
88
- "internalType": "uint256",
89
- "name": "capitalAmount",
90
- "type": "uint256"
91
- },
92
- {
93
- "internalType": "uint256",
94
- "name": "lockedAmount",
95
- "type": "uint256"
96
- },
97
- {
98
- "internalType": "uint256",
99
- "name": "balanceAmount",
100
- "type": "uint256"
101
- },
102
- {
103
- "internalType": "Timestamp",
104
- "name": "expiredAt",
105
- "type": "uint40"
106
- },
107
- {
108
- "internalType": "Timestamp",
109
- "name": "closedAt",
110
- "type": "uint40"
111
- }
112
- ],
113
- "internalType": "struct IBundle.BundleInfo",
114
- "name": "info",
115
- "type": "tuple"
116
- }
117
- ],
118
- "name": "createBundleInfo",
119
- "outputs": [
120
- {
121
- "internalType": "bytes32",
122
- "name": "key",
123
- "type": "bytes32"
124
- }
125
- ],
126
- "stateMutability": "nonpayable",
127
- "type": "function"
128
- },
129
- {
130
- "inputs": [
131
- {
132
- "internalType": "uint256",
133
- "name": "bundleId",
134
- "type": "uint256"
135
- },
136
- {
137
- "internalType": "uint256",
138
- "name": "amount",
139
- "type": "uint256"
140
- },
141
- {
142
- "internalType": "bytes",
143
- "name": "filter",
144
- "type": "bytes"
145
- }
146
- ],
147
- "name": "createBundleInfo",
148
- "outputs": [
149
- {
150
- "components": [
151
- {
152
- "internalType": "NftId",
153
- "name": "nftId",
154
- "type": "uint96"
155
- },
156
- {
157
- "internalType": "NftId",
158
- "name": "poolNftId",
159
- "type": "uint96"
160
- },
161
- {
162
- "internalType": "StateId",
163
- "name": "state",
164
- "type": "uint8"
165
- },
166
- {
167
- "internalType": "bytes",
168
- "name": "filter",
169
- "type": "bytes"
170
- },
171
- {
172
- "internalType": "uint256",
173
- "name": "capitalAmount",
174
- "type": "uint256"
175
- },
176
- {
177
- "internalType": "uint256",
178
- "name": "lockedAmount",
179
- "type": "uint256"
180
- },
181
- {
182
- "internalType": "uint256",
183
- "name": "balanceAmount",
184
- "type": "uint256"
185
- },
186
- {
187
- "internalType": "Timestamp",
188
- "name": "expiredAt",
189
- "type": "uint40"
190
- },
191
- {
192
- "internalType": "Timestamp",
193
- "name": "closedAt",
194
- "type": "uint40"
195
- }
196
- ],
197
- "internalType": "struct IBundle.BundleInfo",
198
- "name": "info",
199
- "type": "tuple"
200
- }
201
- ],
202
- "stateMutability": "view",
203
- "type": "function"
204
- },
205
- {
206
- "inputs": [
207
- {
208
- "internalType": "bytes32",
209
- "name": "key",
210
- "type": "bytes32"
211
- }
212
- ],
213
- "name": "getBundleInfo",
214
- "outputs": [
215
- {
216
- "components": [
217
- {
218
- "internalType": "NftId",
219
- "name": "nftId",
220
- "type": "uint96"
221
- },
222
- {
223
- "internalType": "NftId",
224
- "name": "poolNftId",
225
- "type": "uint96"
226
- },
227
- {
228
- "internalType": "StateId",
229
- "name": "state",
230
- "type": "uint8"
231
- },
232
- {
233
- "internalType": "bytes",
234
- "name": "filter",
235
- "type": "bytes"
236
- },
237
- {
238
- "internalType": "uint256",
239
- "name": "capitalAmount",
240
- "type": "uint256"
241
- },
242
- {
243
- "internalType": "uint256",
244
- "name": "lockedAmount",
245
- "type": "uint256"
246
- },
247
- {
248
- "internalType": "uint256",
249
- "name": "balanceAmount",
250
- "type": "uint256"
251
- },
252
- {
253
- "internalType": "Timestamp",
254
- "name": "expiredAt",
255
- "type": "uint40"
256
- },
257
- {
258
- "internalType": "Timestamp",
259
- "name": "closedAt",
260
- "type": "uint40"
261
- }
262
- ],
263
- "internalType": "struct IBundle.BundleInfo",
264
- "name": "",
265
- "type": "tuple"
266
- }
267
- ],
268
- "stateMutability": "view",
269
- "type": "function"
270
- },
271
- {
272
- "inputs": [],
273
- "name": "getStore",
274
- "outputs": [
275
- {
276
- "internalType": "contract KeyValueStore",
277
- "name": "",
278
- "type": "address"
279
- }
280
- ],
281
- "stateMutability": "view",
282
- "type": "function"
283
- },
284
- {
285
- "inputs": [
286
- {
287
- "internalType": "NftId",
288
- "name": "bundleNftId",
289
- "type": "uint96"
290
- }
291
- ],
292
- "name": "toBundleKey32",
293
- "outputs": [
294
- {
295
- "internalType": "bytes32",
296
- "name": "key",
297
- "type": "bytes32"
298
- }
299
- ],
300
- "stateMutability": "pure",
301
- "type": "function"
302
- },
303
- {
304
- "inputs": [
305
- {
306
- "internalType": "ObjectType",
307
- "name": "objectType",
308
- "type": "uint8"
309
- },
310
- {
311
- "internalType": "KeyId",
312
- "name": "id",
313
- "type": "bytes31"
314
- }
315
- ],
316
- "name": "toKey",
317
- "outputs": [
318
- {
319
- "components": [
320
- {
321
- "internalType": "ObjectType",
322
- "name": "objectType",
323
- "type": "uint8"
324
- },
325
- {
326
- "internalType": "KeyId",
327
- "name": "id",
328
- "type": "bytes31"
329
- }
330
- ],
331
- "internalType": "struct KeyMapper.Key",
332
- "name": "",
333
- "type": "tuple"
334
- }
335
- ],
336
- "stateMutability": "pure",
337
- "type": "function"
338
- },
339
- {
340
- "inputs": [
341
- {
342
- "internalType": "bytes32",
343
- "name": "key",
344
- "type": "bytes32"
345
- }
346
- ],
347
- "name": "toKey",
348
- "outputs": [
349
- {
350
- "components": [
351
- {
352
- "internalType": "ObjectType",
353
- "name": "objectType",
354
- "type": "uint8"
355
- },
356
- {
357
- "internalType": "KeyId",
358
- "name": "id",
359
- "type": "bytes31"
360
- }
361
- ],
362
- "internalType": "struct KeyMapper.Key",
363
- "name": "",
364
- "type": "tuple"
365
- }
366
- ],
367
- "stateMutability": "pure",
368
- "type": "function"
369
- },
370
- {
371
- "inputs": [
372
- {
373
- "components": [
374
- {
375
- "internalType": "ObjectType",
376
- "name": "objectType",
377
- "type": "uint8"
378
- },
379
- {
380
- "internalType": "KeyId",
381
- "name": "id",
382
- "type": "bytes31"
383
- }
384
- ],
385
- "internalType": "struct KeyMapper.Key",
386
- "name": "key",
387
- "type": "tuple"
388
- }
389
- ],
390
- "name": "toKey32",
391
- "outputs": [
392
- {
393
- "internalType": "bytes32",
394
- "name": "",
395
- "type": "bytes32"
396
- }
397
- ],
398
- "stateMutability": "pure",
399
- "type": "function"
400
- },
401
- {
402
- "inputs": [
403
- {
404
- "internalType": "ObjectType",
405
- "name": "objectType",
406
- "type": "uint8"
407
- },
408
- {
409
- "internalType": "KeyId",
410
- "name": "id",
411
- "type": "bytes31"
412
- }
413
- ],
414
- "name": "toKey32",
415
- "outputs": [
416
- {
417
- "internalType": "bytes32",
418
- "name": "",
419
- "type": "bytes32"
420
- }
421
- ],
422
- "stateMutability": "pure",
423
- "type": "function"
424
- },
425
- {
426
- "inputs": [
427
- {
428
- "internalType": "NftId",
429
- "name": "nftId",
430
- "type": "uint96"
431
- }
432
- ],
433
- "name": "toKeyId",
434
- "outputs": [
435
- {
436
- "internalType": "KeyId",
437
- "name": "keyId",
438
- "type": "bytes31"
439
- }
440
- ],
441
- "stateMutability": "pure",
442
- "type": "function"
443
- },
444
- {
445
- "inputs": [
446
- {
447
- "components": [
448
- {
449
- "internalType": "NftId",
450
- "name": "nftId",
451
- "type": "uint96"
452
- },
453
- {
454
- "internalType": "NftId",
455
- "name": "poolNftId",
456
- "type": "uint96"
457
- },
458
- {
459
- "internalType": "StateId",
460
- "name": "state",
461
- "type": "uint8"
462
- },
463
- {
464
- "internalType": "bytes",
465
- "name": "filter",
466
- "type": "bytes"
467
- },
468
- {
469
- "internalType": "uint256",
470
- "name": "capitalAmount",
471
- "type": "uint256"
472
- },
473
- {
474
- "internalType": "uint256",
475
- "name": "lockedAmount",
476
- "type": "uint256"
477
- },
478
- {
479
- "internalType": "uint256",
480
- "name": "balanceAmount",
481
- "type": "uint256"
482
- },
483
- {
484
- "internalType": "Timestamp",
485
- "name": "expiredAt",
486
- "type": "uint40"
487
- },
488
- {
489
- "internalType": "Timestamp",
490
- "name": "closedAt",
491
- "type": "uint40"
492
- }
493
- ],
494
- "internalType": "struct IBundle.BundleInfo",
495
- "name": "info",
496
- "type": "tuple"
497
- }
498
- ],
499
- "name": "updateBundleInfo",
500
- "outputs": [],
501
- "stateMutability": "nonpayable",
502
- "type": "function"
503
- }
504
- ],
505
- "bytecode": "0x608060405234801561001057600080fd5b5060405161001d9061007e565b604051809103906000f080158015610039573d6000803e3d6000fd5b506000806101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555061008b565b611b1980611a3483390190565b61199a8061009a6000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c8063837dd0cb11610097578063c2722ecc11610066578063c2722ecc146102d2578063d92bb60d146102f0578063da3fe4121461030e578063f48016ce1461032c576100f5565b8063837dd0cb14610212578063a13df2ab14610242578063a4dc7d8614610272578063bc12c099146102a2576100f5565b806329e9b226116100d357806329e9b2261461017857806340a8cd9e146101965780635651ed82146101c657806360fa775b146101e2576100f5565b80630f94cc50146100fa578063198e89ee14610118578063229660f014610148575b600080fd5b61010261035c565b60405161010f9190610aee565b60405180910390f35b610132600480360381019061012d9190610e59565b610386565b60405161013f9190610aee565b60405180910390f35b610162600480360381019061015d9190610f76565b610451565b60405161016f9190610aee565b60405180910390f35b61018061046c565b60405161018d9190610fb2565b60405180910390f35b6101b060048036038101906101ab9190610fcd565b610471565b6040516101bd919061101b565b60405180910390f35b6101e060048036038101906101db9190610e59565b610518565b005b6101fc60048036038101906101f79190611062565b6105d9565b604051610209919061127f565b60405180910390f35b61022c600480360381019061022791906112a1565b6106a1565b604051610239919061132e565b60405180910390f35b61025c60048036038101906102579190610fcd565b6106cd565b6040516102699190610aee565b60405180910390f35b61028c60048036038101906102879190611062565b6106ef565b604051610299919061132e565b60405180910390f35b6102bc60048036038101906102b791906113a9565b610798565b6040516102c9919061127f565b60405180910390f35b6102da61090f565b6040516102e79190611492565b60405180910390f35b6102f8610938565b6040516103059190610aee565b60405180910390f35b610316610963565b6040516103239190610fb2565b60405180910390f35b610346600480360381019061034191906112a1565b610978565b6040516103539190610aee565b60405180910390f35b60ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681565b600061039582600001516106cd565b905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635dee4788826103dc6109d0565b856040516020016103ed919061127f565b6040516020818303038152906040526040518463ffffffff1660e01b815260040161041a93929190611506565b600060405180830381600087803b15801561043457600080fd5b505af1158015610448573d6000803e3d6000fd5b50505050919050565b600061046582600001518360200151610978565b9050919050565b60f881565b600080826bffffffffffffffffffffffff1673__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__6308dc895e90916040518263ffffffff1660e01b81526004016104bb9190611553565b602060405180830381865af41580156104d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fc919061159a565b6bffffffffffffffffffffffff1690508060081b915050919050565b600061052782600001516106cd565b905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663212788f98284604051602001610577919061127f565b6040516020818303038152906040526040518363ffffffff1660e01b81526004016105a39291906115c7565b600060405180830381600087803b1580156105bd57600080fd5b505af11580156105d1573d6000803e3d6000fd5b505050505050565b6105e1610a3b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166354f6127f846040518263ffffffff1660e01b815260040161063d9190610aee565b600060405180830381865afa15801561065a573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106839190611667565b9050808060200190518101906106999190611800565b915050919050565b6106a9610ab4565b60405180604001604052808460ff1681526020018360ff1916815250905092915050565b60006106e86106da6109d0565b6106e384610471565b610978565b9050919050565b6106f7610ab4565b600060f860ff1660ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916841660001c901c9050600060f860ff166101006107429190611886565b60ff1660ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916198516901b905060405180604001604052808360ff1681526020018260ff191681525092505050919050565b6107a0610a3b565b600062278d0090506040518061012001604052806107bd886109e1565b6bffffffffffffffffffffffff1681526020016107dc6201e2406109e1565b6bffffffffffffffffffffffff1681526020016107f76109eb565b60ff16815260200185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152602001868152602001600081526020018681526020016108646109fc565b64ffffffffff1673__$d53880c81dc91c20799140d711e5ab8718$__63ef6c0d789091856040518363ffffffff1660e01b81526004016108a59291906118da565b602060405180830381865af41580156108c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e69190611903565b64ffffffffff1681526020016108fa610a0c565b64ffffffffff16815250915050949350505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161981565b60f860ff166101006109759190611886565b81565b6000808360ff16905060008360081c7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905060008160f860ff1684901b6109bf9190611930565b90508060001b935050505092915050565b60006109dc60d2610a1d565b905090565b6000819050919050565b60006109f76064610a27565b905090565b6000610a0742610a31565b905090565b6000610a186000610a31565b905090565b6000819050919050565b6000819050919050565b6000819050919050565b60405180610120016040528060006bffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600060ff16815260200160608152602001600081526020016000815260200160008152602001600064ffffffffff168152602001600064ffffffffff1681525090565b6040518060400160405280600060ff168152602001600060ff191681525090565b6000819050919050565b610ae881610ad5565b82525050565b6000602082019050610b036000830184610adf565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610b6b82610b22565b810181811067ffffffffffffffff82111715610b8a57610b89610b33565b5b80604052505050565b6000610b9d610b09565b9050610ba98282610b62565b919050565b600080fd5b60006bffffffffffffffffffffffff82169050919050565b610bd481610bb3565b8114610bdf57600080fd5b50565b600081359050610bf181610bcb565b92915050565b600060ff82169050919050565b610c0d81610bf7565b8114610c1857600080fd5b50565b600081359050610c2a81610c04565b92915050565b600080fd5b600080fd5b600067ffffffffffffffff821115610c5557610c54610b33565b5b610c5e82610b22565b9050602081019050919050565b82818337600083830152505050565b6000610c8d610c8884610c3a565b610b93565b905082815260208101848484011115610ca957610ca8610c35565b5b610cb4848285610c6b565b509392505050565b600082601f830112610cd157610cd0610c30565b5b8135610ce1848260208601610c7a565b91505092915050565b6000819050919050565b610cfd81610cea565b8114610d0857600080fd5b50565b600081359050610d1a81610cf4565b92915050565b600064ffffffffff82169050919050565b610d3a81610d20565b8114610d4557600080fd5b50565b600081359050610d5781610d31565b92915050565b60006101208284031215610d7457610d73610b1d565b5b610d7f610120610b93565b90506000610d8f84828501610be2565b6000830152506020610da384828501610be2565b6020830152506040610db784828501610c1b565b604083015250606082013567ffffffffffffffff811115610ddb57610dda610bae565b5b610de784828501610cbc565b6060830152506080610dfb84828501610d0b565b60808301525060a0610e0f84828501610d0b565b60a08301525060c0610e2384828501610d0b565b60c08301525060e0610e3784828501610d48565b60e083015250610100610e4c84828501610d48565b6101008301525092915050565b600060208284031215610e6f57610e6e610b13565b5b600082013567ffffffffffffffff811115610e8d57610e8c610b18565b5b610e9984828501610d5d565b91505092915050565b610eab81610bf7565b8114610eb657600080fd5b50565b600081359050610ec881610ea2565b92915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082169050919050565b610f0381610ece565b8114610f0e57600080fd5b50565b600081359050610f2081610efa565b92915050565b600060408284031215610f3c57610f3b610b1d565b5b610f466040610b93565b90506000610f5684828501610eb9565b6000830152506020610f6a84828501610f11565b60208301525092915050565b600060408284031215610f8c57610f8b610b13565b5b6000610f9a84828501610f26565b91505092915050565b610fac81610bf7565b82525050565b6000602082019050610fc76000830184610fa3565b92915050565b600060208284031215610fe357610fe2610b13565b5b6000610ff184828501610be2565b91505092915050565b600061100582610ece565b9050919050565b61101581610ffa565b82525050565b6000602082019050611030600083018461100c565b92915050565b61103f81610ad5565b811461104a57600080fd5b50565b60008135905061105c81611036565b92915050565b60006020828403121561107857611077610b13565b5b60006110868482850161104d565b91505092915050565b6000819050919050565b60006110b46110af6110aa84610bb3565b61108f565b610bb3565b9050919050565b6110c481611099565b82525050565b60006110e56110e06110db84610bf7565b61108f565b610bf7565b9050919050565b6110f5816110ca565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561113557808201518184015260208101905061111a565b60008484015250505050565b600061114c826110fb565b6111568185611106565b9350611166818560208601611117565b61116f81610b22565b840191505092915050565b61118381610cea565b82525050565b60006111a461119f61119a84610d20565b61108f565b610d20565b9050919050565b6111b481611189565b82525050565b6000610120830160008301516111d360008601826110bb565b5060208301516111e660208601826110bb565b5060408301516111f960408601826110ec565b50606083015184820360608601526112118282611141565b9150506080830151611226608086018261117a565b5060a083015161123960a086018261117a565b5060c083015161124c60c086018261117a565b5060e083015161125f60e08601826111ab565b506101008301516112746101008601826111ab565b508091505092915050565b6000602082019050818103600083015261129981846111ba565b905092915050565b600080604083850312156112b8576112b7610b13565b5b60006112c685828601610eb9565b92505060206112d785828601610f11565b9150509250929050565b6112ea816110ca565b82525050565b6112f981610ffa565b82525050565b60408201600082015161131560008501826112e1565b50602082015161132860208501826112f0565b50505050565b600060408201905061134360008301846112ff565b92915050565b600080fd5b600080fd5b60008083601f84011261136957611368610c30565b5b8235905067ffffffffffffffff81111561138657611385611349565b5b6020830191508360018202830111156113a2576113a161134e565b5b9250929050565b600080600080606085870312156113c3576113c2610b13565b5b60006113d187828801610d0b565b94505060206113e287828801610d0b565b935050604085013567ffffffffffffffff81111561140357611402610b18565b5b61140f87828801611353565b925092505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061145861145361144e8461141d565b61108f565b61141d565b9050919050565b600061146a8261143d565b9050919050565b600061147c8261145f565b9050919050565b61148c81611471565b82525050565b60006020820190506114a76000830184611483565b92915050565b6114b6816110ca565b82525050565b600082825260208201905092915050565b60006114d8826110fb565b6114e281856114bc565b93506114f2818560208601611117565b6114fb81610b22565b840191505092915050565b600060608201905061151b6000830186610adf565b61152860208301856114ad565b818103604083015261153a81846114cd565b9050949350505050565b61154d81611099565b82525050565b60006020820190506115686000830184611544565b92915050565b61157781610bb3565b811461158257600080fd5b50565b6000815190506115948161156e565b92915050565b6000602082840312156115b0576115af610b13565b5b60006115be84828501611585565b91505092915050565b60006040820190506115dc6000830185610adf565b81810360208301526115ee81846114cd565b90509392505050565b600061160a61160584610c3a565b610b93565b90508281526020810184848401111561162657611625610c35565b5b611631848285611117565b509392505050565b600082601f83011261164e5761164d610c30565b5b815161165e8482602086016115f7565b91505092915050565b60006020828403121561167d5761167c610b13565b5b600082015167ffffffffffffffff81111561169b5761169a610b18565b5b6116a784828501611639565b91505092915050565b6000815190506116bf81610bcb565b92915050565b6000815190506116d481610c04565b92915050565b6000815190506116e981610cf4565b92915050565b6000815190506116fe81610d31565b92915050565b6000610120828403121561171b5761171a610b1d565b5b611726610120610b93565b90506000611736848285016116b0565b600083015250602061174a848285016116b0565b602083015250604061175e848285016116c5565b604083015250606082015167ffffffffffffffff81111561178257611781610bae565b5b61178e84828501611639565b60608301525060806117a2848285016116da565b60808301525060a06117b6848285016116da565b60a08301525060c06117ca848285016116da565b60c08301525060e06117de848285016116ef565b60e0830152506101006117f3848285016116ef565b6101008301525092915050565b60006020828403121561181657611815610b13565b5b600082015167ffffffffffffffff81111561183457611833610b18565b5b61184084828501611704565b91505092915050565b600061ffff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061189182611849565b915061189c83611849565b9250828203905061ffff8111156118b6576118b5611857565b5b92915050565b6118c581611189565b82525050565b6118d481610cea565b82525050565b60006040820190506118ef60008301856118bc565b6118fc60208301846118cb565b9392505050565b60006020828403121561191957611918610b13565b5b6000611927848285016116ef565b91505092915050565b600061193b82610cea565b915061194683610cea565b925082820190508082111561195e5761195d611857565b5b9291505056fea26469706673582212200fce5b8fd6e72939af465a8629ed2a123c6740ce0f8e244569033768bfe1b81e64736f6c63430008140033608060405234801561001057600080fd5b50611af9806100206000396000f3fe608060405234801561001057600080fd5b50600436106100ea5760003560e01c80638eaa6ac01161008c578063bb5b27e111610066578063bb5b27e114610283578063ecc86d00146102b3578063ee1ce841146102cf578063eea457c8146102ed576100ea565b80638eaa6ac0146101f3578063a5961b4c14610223578063b028ee1314610253576100ea565b8063426a0c88116100c8578063426a0c881461015957806345414df11461017757806354f6127f146101a75780635dee4788146101d7576100ea565b80630505c8c9146100ef578063212788f91461010d57806338a699a414610129575b600080fd5b6100f761031d565b6040516101049190610c8d565b60405180910390f35b61012760048036038101906101229190610e38565b61032c565b005b610143600480360381019061013e9190610e94565b61033d565b6040516101509190610edc565b60405180910390f35b6101616103ae565b60405161016e9190610c8d565b60405180910390f35b610191600480360381019061018c9190610ef7565b6103bd565b60405161019e9190610fbf565b60405180910390f35b6101c160048036038101906101bc9190610e94565b6103da565b6040516101ce9190611036565b60405180910390f35b6101f160048036038101906101ec9190611084565b610481565b005b61020d60048036038101906102089190610e94565b610673565b60405161021a9190611260565b60405180910390f35b61023d60048036038101906102389190610e94565b610804565b60405161024a91906112d7565b60405180910390f35b61026d60048036038101906102689190611393565b6108f2565b60405161027a9190611036565b60405180910390f35b61029d60048036038101906102989190611412565b61091b565b6040516102aa919061144e565b60405180910390f35b6102cd60048036038101906102c89190611495565b610943565b005b6102d7610b55565b6040516102e49190611527565b60405180910390f35b61030760048036038101906103029190611393565b610b62565b604051610314919061144e565b60405180910390f35b6000610327610b92565b905090565b6103398282600180610943565b5050565b60008073ffffffffffffffffffffffffffffffffffffffff1660008084815260200190815260200160002060000160000160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1614159050919050565b60006103b8610ba3565b905090565b6060818060200190518101906103d391906115b2565b9050919050565b606060008083815260200190815260200160002060010180546103fc9061162a565b80601f01602080910402602001604051908101604052809291908181526020018280546104289061162a565b80156104755780601f1061044a57610100808354040283529160200191610475565b820191906000526020600020905b81548152906001019060200180831161045857829003601f168201915b50505050509050919050565b60008060008581526020019081526020016000206000019050600073ffffffffffffffffffffffffffffffffffffffff168160000160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff161461052d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610524906116a7565b60405180910390fd5b6000339050600061053c610bb4565b9050848360000160006101000a81548160ff021916908360ff160217905550818360000160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550808360000160156101000a81548163ffffffff021916908363ffffffff160217905550808360000160196101000a81548163ffffffff021916908363ffffffff1602179055508360008088815260200190815260200160002060010190816106069190611869565b5060018690806001815401808255809150506001900390600052602060002001600090919091909150557fc83c5f6b50f8ff37501f857e58e080a5842f6e8775ccfba956f2047ab6a9a35e8686846040516106639392919061194a565b60405180910390a1505050505050565b61067b610bd8565b600080838152602001908152602001600020604051806040016040529081600082016040518060800160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016000820160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160159054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160199054906101000a900463ffffffff1663ffffffff1663ffffffff1681525050815260200160018201805461077b9061162a565b80601f01602080910402602001604051908101604052809291908181526020018280546107a79061162a565b80156107f45780601f106107c9576101008083540402835291602001916107f4565b820191906000526020600020905b8154815290600101906020018083116107d757829003601f168201915b5050505050815250509050919050565b61080c610bf8565b6000808381526020019081526020016000206000016040518060800160405290816000820160009054906101000a900460ff1660ff1660ff1681526020016000820160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020016000820160159054906101000a900463ffffffff1663ffffffff1663ffffffff1681526020016000820160199054906101000a900463ffffffff1663ffffffff1663ffffffff16815250509050919050565b6060816040516020016109059190610fbf565b6040516020818303038152906040529050919050565b60006001828154811061093157610930611981565b5b90600052602060002001549050919050565b8260008086815260200190815260200160002060010190816109659190611869565b506000610970610bb4565b905082801561097c5750815b15610b025760008060008781526020019081526020016000206000019050600073ffffffffffffffffffffffffffffffffffffffff168160000160019054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1603610a2d576040517f08c379a0000000000000000000000000000000000000000000000000000000008152600401610a24906119fc565b60405180910390fd5b8215610a96577f01e2a32423aae515ef6611a2ca406f2478536c74f7c875f9d6129997ee76ef68868260000160009054906101000a900460ff16338460000160159054906101000a900463ffffffff16604051610a8d9493929190611a2b565b60405180910390a15b338160000160016101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff160217905550818160000160156101000a81548163ffffffff021916908363ffffffff16021790555050610b4e565b8115610b4d577f01e2a32423aae515ef6611a2ca406f2478536c74f7c875f9d6129997ee76ef6885610b32610b92565b3384604051610b449493929190611a2b565b60405180910390a15b5b5050505050565b6000600180549050905090565b600081604051602001610b759190611aac565b604051602081830303815290604052805190602001209050919050565b6000610b9e60c8610bc4565b905090565b6000610baf6065610bc4565b905090565b6000610bbf43610bce565b905090565b6000819050919050565b6000819050919050565b6040518060400160405280610beb610bf8565b8152602001606081525090565b6040518060800160405280600060ff168152602001600073ffffffffffffffffffffffffffffffffffffffff168152602001600063ffffffff168152602001600063ffffffff1681525090565b600060ff82169050919050565b6000819050919050565b6000610c77610c72610c6d84610c45565b610c52565b610c45565b9050919050565b610c8781610c5c565b82525050565b6000602082019050610ca26000830184610c7e565b92915050565b6000604051905090565b600080fd5b600080fd5b6000819050919050565b610ccf81610cbc565b8114610cda57600080fd5b50565b600081359050610cec81610cc6565b92915050565b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610d4582610cfc565b810181811067ffffffffffffffff82111715610d6457610d63610d0d565b5b80604052505050565b6000610d77610ca8565b9050610d838282610d3c565b919050565b600067ffffffffffffffff821115610da357610da2610d0d565b5b610dac82610cfc565b9050602081019050919050565b82818337600083830152505050565b6000610ddb610dd684610d88565b610d6d565b905082815260208101848484011115610df757610df6610cf7565b5b610e02848285610db9565b509392505050565b600082601f830112610e1f57610e1e610cf2565b5b8135610e2f848260208601610dc8565b91505092915050565b60008060408385031215610e4f57610e4e610cb2565b5b6000610e5d85828601610cdd565b925050602083013567ffffffffffffffff811115610e7e57610e7d610cb7565b5b610e8a85828601610e0a565b9150509250929050565b600060208284031215610eaa57610ea9610cb2565b5b6000610eb884828501610cdd565b91505092915050565b60008115159050919050565b610ed681610ec1565b82525050565b6000602082019050610ef16000830184610ecd565b92915050565b600060208284031215610f0d57610f0c610cb2565b5b600082013567ffffffffffffffff811115610f2b57610f2a610cb7565b5b610f3784828501610e0a565b91505092915050565b600081519050919050565b600082825260208201905092915050565b60005b83811015610f7a578082015181840152602081019050610f5f565b60008484015250505050565b6000610f9182610f40565b610f9b8185610f4b565b9350610fab818560208601610f5c565b610fb481610cfc565b840191505092915050565b60006020820190508181036000830152610fd98184610f86565b905092915050565b600081519050919050565b600082825260208201905092915050565b600061100882610fe1565b6110128185610fec565b9350611022818560208601610f5c565b61102b81610cfc565b840191505092915050565b600060208201905081810360008301526110508184610ffd565b905092915050565b61106181610c45565b811461106c57600080fd5b50565b60008135905061107e81611058565b92915050565b60008060006060848603121561109d5761109c610cb2565b5b60006110ab86828701610cdd565b93505060206110bc8682870161106f565b925050604084013567ffffffffffffffff8111156110dd576110dc610cb7565b5b6110e986828701610e0a565b9150509250925092565b6110fc81610c5c565b82525050565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061112d82611102565b9050919050565b61113d81611122565b82525050565b600063ffffffff82169050919050565b600061116e61116961116484611143565b610c52565b611143565b9050919050565b61117e81611153565b82525050565b60808201600082015161119a60008501826110f3565b5060208201516111ad6020850182611134565b5060408201516111c06040850182611175565b5060608201516111d36060850182611175565b50505050565b600082825260208201905092915050565b60006111f582610fe1565b6111ff81856111d9565b935061120f818560208601610f5c565b61121881610cfc565b840191505092915050565b600060a08301600083015161123b6000860182611184565b506020830151848203608086015261125382826111ea565b9150508091505092915050565b6000602082019050818103600083015261127a8184611223565b905092915050565b60808201600082015161129860008501826110f3565b5060208201516112ab6020850182611134565b5060408201516112be6040850182611175565b5060608201516112d16060850182611175565b50505050565b60006080820190506112ec6000830184611282565b92915050565b600067ffffffffffffffff82111561130d5761130c610d0d565b5b61131682610cfc565b9050602081019050919050565b6000611336611331846112f2565b610d6d565b90508281526020810184848401111561135257611351610cf7565b5b61135d848285610db9565b509392505050565b600082601f83011261137a57611379610cf2565b5b813561138a848260208601611323565b91505092915050565b6000602082840312156113a9576113a8610cb2565b5b600082013567ffffffffffffffff8111156113c7576113c6610cb7565b5b6113d384828501611365565b91505092915050565b6000819050919050565b6113ef816113dc565b81146113fa57600080fd5b50565b60008135905061140c816113e6565b92915050565b60006020828403121561142857611427610cb2565b5b6000611436848285016113fd565b91505092915050565b61144881610cbc565b82525050565b6000602082019050611463600083018461143f565b92915050565b61147281610ec1565b811461147d57600080fd5b50565b60008135905061148f81611469565b92915050565b600080600080608085870312156114af576114ae610cb2565b5b60006114bd87828801610cdd565b945050602085013567ffffffffffffffff8111156114de576114dd610cb7565b5b6114ea87828801610e0a565b93505060406114fb87828801611480565b925050606061150c87828801611480565b91505092959194509250565b611521816113dc565b82525050565b600060208201905061153c6000830184611518565b92915050565b6000611555611550846112f2565b610d6d565b90508281526020810184848401111561157157611570610cf7565b5b61157c848285610f5c565b509392505050565b600082601f83011261159957611598610cf2565b5b81516115a9848260208601611542565b91505092915050565b6000602082840312156115c8576115c7610cb2565b5b600082015167ffffffffffffffff8111156115e6576115e5610cb7565b5b6115f284828501611584565b91505092915050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052602260045260246000fd5b6000600282049050600182168061164257607f821691505b602082108103611655576116546115fb565b5b50919050565b7f4552524f525f414c52454144595f435245415445440000000000000000000000600082015250565b6000611691601583610f4b565b915061169c8261165b565b602082019050919050565b600060208201905081810360008301526116c081611684565b9050919050565b60008190508160005260206000209050919050565b60006020601f8301049050919050565b600082821b905092915050565b6000600883026117297fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff826116ec565b61173386836116ec565b95508019841693508086168417925050509392505050565b600061176661176161175c846113dc565b610c52565b6113dc565b9050919050565b6000819050919050565b6117808361174b565b61179461178c8261176d565b8484546116f9565b825550505050565b600090565b6117a961179c565b6117b4818484611777565b505050565b5b818110156117d8576117cd6000826117a1565b6001810190506117ba565b5050565b601f82111561181d576117ee816116c7565b6117f7846116dc565b81016020851015611806578190505b61181a611812856116dc565b8301826117b9565b50505b505050565b600082821c905092915050565b600061184060001984600802611822565b1980831691505092915050565b6000611859838361182f565b9150826002028217905092915050565b61187282610fe1565b67ffffffffffffffff81111561188b5761188a610d0d565b5b611895825461162a565b6118a08282856117dc565b600060209050601f8311600181146118d357600084156118c1578287015190505b6118cb858261184d565b865550611933565b601f1984166118e1866116c7565b60005b82811015611909578489015182556001820191506020850194506020810190506118e4565b868310156119265784890151611922601f89168261182f565b8355505b6001600288020188555050505b505050505050565b61194481611122565b82525050565b600060608201905061195f600083018661143f565b61196c6020830185610c7e565b611979604083018461193b565b949350505050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052603260045260246000fd5b7f4552524f525f4e4f545f4558495354494e470000000000000000000000000000600082015250565b60006119e6601283610f4b565b91506119f1826119b0565b602082019050919050565b60006020820190508181036000830152611a15816119d9565b9050919050565b611a2581611153565b82525050565b6000608082019050611a40600083018761143f565b611a4d6020830186610c7e565b611a5a604083018561193b565b611a676060830184611a1c565b95945050505050565b600081905092915050565b6000611a8682610f40565b611a908185611a70565b9350611aa0818560208601610f5c565b80840191505092915050565b6000611ab88284611a7b565b91508190509291505056fea2646970667358221220d11cbdec198c6f8b80ab39c446016619955d7d5088ac05bbc15f3272e07ec4ed64736f6c63430008140033",
506
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c8063837dd0cb11610097578063c2722ecc11610066578063c2722ecc146102d2578063d92bb60d146102f0578063da3fe4121461030e578063f48016ce1461032c576100f5565b8063837dd0cb14610212578063a13df2ab14610242578063a4dc7d8614610272578063bc12c099146102a2576100f5565b806329e9b226116100d357806329e9b2261461017857806340a8cd9e146101965780635651ed82146101c657806360fa775b146101e2576100f5565b80630f94cc50146100fa578063198e89ee14610118578063229660f014610148575b600080fd5b61010261035c565b60405161010f9190610aee565b60405180910390f35b610132600480360381019061012d9190610e59565b610386565b60405161013f9190610aee565b60405180910390f35b610162600480360381019061015d9190610f76565b610451565b60405161016f9190610aee565b60405180910390f35b61018061046c565b60405161018d9190610fb2565b60405180910390f35b6101b060048036038101906101ab9190610fcd565b610471565b6040516101bd919061101b565b60405180910390f35b6101e060048036038101906101db9190610e59565b610518565b005b6101fc60048036038101906101f79190611062565b6105d9565b604051610209919061127f565b60405180910390f35b61022c600480360381019061022791906112a1565b6106a1565b604051610239919061132e565b60405180910390f35b61025c60048036038101906102579190610fcd565b6106cd565b6040516102699190610aee565b60405180910390f35b61028c60048036038101906102879190611062565b6106ef565b604051610299919061132e565b60405180910390f35b6102bc60048036038101906102b791906113a9565b610798565b6040516102c9919061127f565b60405180910390f35b6102da61090f565b6040516102e79190611492565b60405180910390f35b6102f8610938565b6040516103059190610aee565b60405180910390f35b610316610963565b6040516103239190610fb2565b60405180910390f35b610346600480360381019061034191906112a1565b610978565b6040516103539190610aee565b60405180910390f35b60ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff191681565b600061039582600001516106cd565b905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16635dee4788826103dc6109d0565b856040516020016103ed919061127f565b6040516020818303038152906040526040518463ffffffff1660e01b815260040161041a93929190611506565b600060405180830381600087803b15801561043457600080fd5b505af1158015610448573d6000803e3d6000fd5b50505050919050565b600061046582600001518360200151610978565b9050919050565b60f881565b600080826bffffffffffffffffffffffff1673__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__6308dc895e90916040518263ffffffff1660e01b81526004016104bb9190611553565b602060405180830381865af41580156104d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104fc919061159a565b6bffffffffffffffffffffffff1690508060081b915050919050565b600061052782600001516106cd565b905060008054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1663212788f98284604051602001610577919061127f565b6040516020818303038152906040526040518363ffffffff1660e01b81526004016105a39291906115c7565b600060405180830381600087803b1580156105bd57600080fd5b505af11580156105d1573d6000803e3d6000fd5b505050505050565b6105e1610a3b565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166354f6127f846040518263ffffffff1660e01b815260040161063d9190610aee565b600060405180830381865afa15801561065a573d6000803e3d6000fd5b505050506040513d6000823e3d601f19601f820116820180604052508101906106839190611667565b9050808060200190518101906106999190611800565b915050919050565b6106a9610ab4565b60405180604001604052808460ff1681526020018360ff1916815250905092915050565b60006106e86106da6109d0565b6106e384610471565b610978565b9050919050565b6106f7610ab4565b600060f860ff1660ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916841660001c901c9050600060f860ff166101006107429190611886565b60ff1660ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff1916198516901b905060405180604001604052808360ff1681526020018260ff191681525092505050919050565b6107a0610a3b565b600062278d0090506040518061012001604052806107bd886109e1565b6bffffffffffffffffffffffff1681526020016107dc6201e2406109e1565b6bffffffffffffffffffffffff1681526020016107f76109eb565b60ff16815260200185858080601f016020809104026020016040519081016040528093929190818152602001838380828437600081840152601f19601f820116905080830192505050505050508152602001868152602001600081526020018681526020016108646109fc565b64ffffffffff1673__$d53880c81dc91c20799140d711e5ab8718$__63ef6c0d789091856040518363ffffffff1660e01b81526004016108a59291906118da565b602060405180830381865af41580156108c2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108e69190611903565b64ffffffffff1681526020016108fa610a0c565b64ffffffffff16815250915050949350505050565b60008060009054906101000a900473ffffffffffffffffffffffffffffffffffffffff16905090565b60ff60f81b7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff19161981565b60f860ff166101006109759190611886565b81565b6000808360ff16905060008360081c7effffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff16905060008160f860ff1684901b6109bf9190611930565b90508060001b935050505092915050565b60006109dc60d2610a1d565b905090565b6000819050919050565b60006109f76064610a27565b905090565b6000610a0742610a31565b905090565b6000610a186000610a31565b905090565b6000819050919050565b6000819050919050565b6000819050919050565b60405180610120016040528060006bffffffffffffffffffffffff16815260200160006bffffffffffffffffffffffff168152602001600060ff16815260200160608152602001600081526020016000815260200160008152602001600064ffffffffff168152602001600064ffffffffff1681525090565b6040518060400160405280600060ff168152602001600060ff191681525090565b6000819050919050565b610ae881610ad5565b82525050565b6000602082019050610b036000830184610adf565b92915050565b6000604051905090565b600080fd5b600080fd5b600080fd5b6000601f19601f8301169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052604160045260246000fd5b610b6b82610b22565b810181811067ffffffffffffffff82111715610b8a57610b89610b33565b5b80604052505050565b6000610b9d610b09565b9050610ba98282610b62565b919050565b600080fd5b60006bffffffffffffffffffffffff82169050919050565b610bd481610bb3565b8114610bdf57600080fd5b50565b600081359050610bf181610bcb565b92915050565b600060ff82169050919050565b610c0d81610bf7565b8114610c1857600080fd5b50565b600081359050610c2a81610c04565b92915050565b600080fd5b600080fd5b600067ffffffffffffffff821115610c5557610c54610b33565b5b610c5e82610b22565b9050602081019050919050565b82818337600083830152505050565b6000610c8d610c8884610c3a565b610b93565b905082815260208101848484011115610ca957610ca8610c35565b5b610cb4848285610c6b565b509392505050565b600082601f830112610cd157610cd0610c30565b5b8135610ce1848260208601610c7a565b91505092915050565b6000819050919050565b610cfd81610cea565b8114610d0857600080fd5b50565b600081359050610d1a81610cf4565b92915050565b600064ffffffffff82169050919050565b610d3a81610d20565b8114610d4557600080fd5b50565b600081359050610d5781610d31565b92915050565b60006101208284031215610d7457610d73610b1d565b5b610d7f610120610b93565b90506000610d8f84828501610be2565b6000830152506020610da384828501610be2565b6020830152506040610db784828501610c1b565b604083015250606082013567ffffffffffffffff811115610ddb57610dda610bae565b5b610de784828501610cbc565b6060830152506080610dfb84828501610d0b565b60808301525060a0610e0f84828501610d0b565b60a08301525060c0610e2384828501610d0b565b60c08301525060e0610e3784828501610d48565b60e083015250610100610e4c84828501610d48565b6101008301525092915050565b600060208284031215610e6f57610e6e610b13565b5b600082013567ffffffffffffffff811115610e8d57610e8c610b18565b5b610e9984828501610d5d565b91505092915050565b610eab81610bf7565b8114610eb657600080fd5b50565b600081359050610ec881610ea2565b92915050565b60007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff0082169050919050565b610f0381610ece565b8114610f0e57600080fd5b50565b600081359050610f2081610efa565b92915050565b600060408284031215610f3c57610f3b610b1d565b5b610f466040610b93565b90506000610f5684828501610eb9565b6000830152506020610f6a84828501610f11565b60208301525092915050565b600060408284031215610f8c57610f8b610b13565b5b6000610f9a84828501610f26565b91505092915050565b610fac81610bf7565b82525050565b6000602082019050610fc76000830184610fa3565b92915050565b600060208284031215610fe357610fe2610b13565b5b6000610ff184828501610be2565b91505092915050565b600061100582610ece565b9050919050565b61101581610ffa565b82525050565b6000602082019050611030600083018461100c565b92915050565b61103f81610ad5565b811461104a57600080fd5b50565b60008135905061105c81611036565b92915050565b60006020828403121561107857611077610b13565b5b60006110868482850161104d565b91505092915050565b6000819050919050565b60006110b46110af6110aa84610bb3565b61108f565b610bb3565b9050919050565b6110c481611099565b82525050565b60006110e56110e06110db84610bf7565b61108f565b610bf7565b9050919050565b6110f5816110ca565b82525050565b600081519050919050565b600082825260208201905092915050565b60005b8381101561113557808201518184015260208101905061111a565b60008484015250505050565b600061114c826110fb565b6111568185611106565b9350611166818560208601611117565b61116f81610b22565b840191505092915050565b61118381610cea565b82525050565b60006111a461119f61119a84610d20565b61108f565b610d20565b9050919050565b6111b481611189565b82525050565b6000610120830160008301516111d360008601826110bb565b5060208301516111e660208601826110bb565b5060408301516111f960408601826110ec565b50606083015184820360608601526112118282611141565b9150506080830151611226608086018261117a565b5060a083015161123960a086018261117a565b5060c083015161124c60c086018261117a565b5060e083015161125f60e08601826111ab565b506101008301516112746101008601826111ab565b508091505092915050565b6000602082019050818103600083015261129981846111ba565b905092915050565b600080604083850312156112b8576112b7610b13565b5b60006112c685828601610eb9565b92505060206112d785828601610f11565b9150509250929050565b6112ea816110ca565b82525050565b6112f981610ffa565b82525050565b60408201600082015161131560008501826112e1565b50602082015161132860208501826112f0565b50505050565b600060408201905061134360008301846112ff565b92915050565b600080fd5b600080fd5b60008083601f84011261136957611368610c30565b5b8235905067ffffffffffffffff81111561138657611385611349565b5b6020830191508360018202830111156113a2576113a161134e565b5b9250929050565b600080600080606085870312156113c3576113c2610b13565b5b60006113d187828801610d0b565b94505060206113e287828801610d0b565b935050604085013567ffffffffffffffff81111561140357611402610b18565b5b61140f87828801611353565b925092505092959194509250565b600073ffffffffffffffffffffffffffffffffffffffff82169050919050565b600061145861145361144e8461141d565b61108f565b61141d565b9050919050565b600061146a8261143d565b9050919050565b600061147c8261145f565b9050919050565b61148c81611471565b82525050565b60006020820190506114a76000830184611483565b92915050565b6114b6816110ca565b82525050565b600082825260208201905092915050565b60006114d8826110fb565b6114e281856114bc565b93506114f2818560208601611117565b6114fb81610b22565b840191505092915050565b600060608201905061151b6000830186610adf565b61152860208301856114ad565b818103604083015261153a81846114cd565b9050949350505050565b61154d81611099565b82525050565b60006020820190506115686000830184611544565b92915050565b61157781610bb3565b811461158257600080fd5b50565b6000815190506115948161156e565b92915050565b6000602082840312156115b0576115af610b13565b5b60006115be84828501611585565b91505092915050565b60006040820190506115dc6000830185610adf565b81810360208301526115ee81846114cd565b90509392505050565b600061160a61160584610c3a565b610b93565b90508281526020810184848401111561162657611625610c35565b5b611631848285611117565b509392505050565b600082601f83011261164e5761164d610c30565b5b815161165e8482602086016115f7565b91505092915050565b60006020828403121561167d5761167c610b13565b5b600082015167ffffffffffffffff81111561169b5761169a610b18565b5b6116a784828501611639565b91505092915050565b6000815190506116bf81610bcb565b92915050565b6000815190506116d481610c04565b92915050565b6000815190506116e981610cf4565b92915050565b6000815190506116fe81610d31565b92915050565b6000610120828403121561171b5761171a610b1d565b5b611726610120610b93565b90506000611736848285016116b0565b600083015250602061174a848285016116b0565b602083015250604061175e848285016116c5565b604083015250606082015167ffffffffffffffff81111561178257611781610bae565b5b61178e84828501611639565b60608301525060806117a2848285016116da565b60808301525060a06117b6848285016116da565b60a08301525060c06117ca848285016116da565b60c08301525060e06117de848285016116ef565b60e0830152506101006117f3848285016116ef565b6101008301525092915050565b60006020828403121561181657611815610b13565b5b600082015167ffffffffffffffff81111561183457611833610b18565b5b61184084828501611704565b91505092915050565b600061ffff82169050919050565b7f4e487b7100000000000000000000000000000000000000000000000000000000600052601160045260246000fd5b600061189182611849565b915061189c83611849565b9250828203905061ffff8111156118b6576118b5611857565b5b92915050565b6118c581611189565b82525050565b6118d481610cea565b82525050565b60006040820190506118ef60008301856118bc565b6118fc60208301846118cb565b9392505050565b60006020828403121561191957611918610b13565b5b6000611927848285016116ef565b91505092915050565b600061193b82610cea565b915061194683610cea565b925082820190508082111561195e5761195d611857565b5b9291505056fea26469706673582212200fce5b8fd6e72939af465a8629ed2a123c6740ce0f8e244569033768bfe1b81e64736f6c63430008140033",
507
- "linkReferences": {
508
- "contracts/types/NftId.sol": {
509
- "NftIdLib": [
510
- {
511
- "length": 20,
512
- "start": 1311
513
- }
514
- ]
515
- },
516
- "contracts/types/Timestamp.sol": {
517
- "TimestampLib": [
518
- {
519
- "length": 20,
520
- "start": 2311
521
- }
522
- ]
523
- }
524
- },
525
- "deployedLinkReferences": {
526
- "contracts/types/NftId.sol": {
527
- "NftIdLib": [
528
- {
529
- "length": 20,
530
- "start": 1157
531
- }
532
- ]
533
- },
534
- "contracts/types/Timestamp.sol": {
535
- "TimestampLib": [
536
- {
537
- "length": 20,
538
- "start": 2157
539
- }
540
- ]
541
- }
542
- }
543
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/098ac466bcde21143ae166eab05b431d.json"
4
- }
@@ -1,4 +0,0 @@
1
- {
2
- "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/098ac466bcde21143ae166eab05b431d.json"
4
- }