@etherisc/gif-next 0.0.2-e0ff180-567 → 0.0.2-e1d3823-191

Sign up to get free protection for your applications and to get access to all the features.
Files changed (675) hide show
  1. package/README.md +83 -22
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  3. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1293 -0
  4. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
  5. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
  6. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
  7. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +414 -0
  8. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
  9. package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → authorization/IAccess.sol/IAccess.json} +2 -2
  10. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  11. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1060 -0
  12. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
  13. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +295 -0
  14. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  15. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +167 -0
  16. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.dbg.json +4 -0
  17. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.json +1196 -0
  18. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  19. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +253 -0
  20. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
  21. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1324 -0
  22. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
  23. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +470 -0
  24. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  25. package/artifacts/contracts/{components → distribution}/Distribution.sol/Distribution.json +260 -571
  26. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  27. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1494 -0
  28. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  29. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +862 -0
  30. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  31. package/artifacts/contracts/{components → distribution}/IDistributionComponent.sol/IDistributionComponent.json +258 -310
  32. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  33. package/artifacts/contracts/{instance/service → distribution}/IDistributionService.sol/IDistributionService.json +221 -327
  34. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
  35. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
  36. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
  37. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1429 -0
  38. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
  39. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +502 -0
  40. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
  41. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +1979 -0
  42. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
  43. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +470 -0
  44. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
  45. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
  46. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
  47. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1430 -0
  48. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
  49. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1177 -0
  50. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
  51. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1606 -0
  52. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
  53. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2281 -0
  54. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  55. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
  56. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  57. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +313 -2006
  58. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  59. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +180 -111
  60. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  61. package/artifacts/contracts/instance/Instance.sol/Instance.json +353 -2789
  62. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  63. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1653 -0
  64. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
  65. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +561 -0
  66. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  67. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1078 -314
  68. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  69. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +255 -423
  70. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  71. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +156 -151
  72. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  73. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3668 -0
  74. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  75. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  76. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  77. package/artifacts/contracts/instance/{Cloneable.sol → base/Cloneable.sol}/Cloneable.json +1 -54
  78. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  79. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  80. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
  81. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +223 -0
  82. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  83. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
  84. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  85. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +8 -116
  86. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  87. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  88. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  89. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  90. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  91. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +4 -0
  92. package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
  93. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
  94. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +961 -0
  95. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
  96. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +478 -0
  97. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  98. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
  99. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  100. package/artifacts/contracts/{components/IProductComponent.sol/IProductComponent.json → oracle/IOracleComponent.sol/IOracleComponent.json} +233 -287
  101. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  102. package/artifacts/contracts/{instance/service/IBundleService.sol/IBundleService.json → oracle/IOracleService.sol/IOracleService.json} +281 -231
  103. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  104. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +877 -0
  105. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  106. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +982 -0
  107. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  108. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +746 -0
  109. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
  110. package/artifacts/contracts/{components/Pool.sol/Pool.json → pool/BasicPool.sol/BasicPool.json} +325 -447
  111. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
  112. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +502 -0
  113. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  114. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1469 -0
  115. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  116. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +850 -0
  117. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  118. package/artifacts/contracts/{instance/service/IPoolService.sol/IPoolService.json → pool/IBundleService.sol/IBundleService.json} +423 -303
  119. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  120. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +909 -0
  121. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  122. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1285 -0
  123. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  124. package/artifacts/contracts/{components/IPoolComponent.sol/IPoolComponent.json → pool/Pool.sol/Pool.json} +389 -424
  125. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  126. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1635 -0
  127. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  128. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +786 -0
  129. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  130. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +787 -0
  131. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  132. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +734 -0
  133. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
  134. package/artifacts/contracts/{components/Product.sol/Product.json → product/BasicProduct.sol/BasicProduct.json} +416 -435
  135. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
  136. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +470 -0
  137. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  138. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1439 -0
  139. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  140. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +858 -0
  141. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  142. package/artifacts/contracts/{instance/service → product}/IApplicationService.sol/IApplicationService.json +91 -167
  143. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  144. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +942 -0
  145. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  146. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +931 -0
  147. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  148. package/artifacts/contracts/{instance/service/IPolicyService.sol/IPolicyService.json → product/IPricingService.sol/IPricingService.json} +201 -229
  149. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  150. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +1005 -0
  151. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  152. package/artifacts/contracts/{instance/service/IProductService.sol/IProductService.json → product/IRiskService.sol/IRiskService.json} +41 -62
  153. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  154. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1316 -0
  155. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  156. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +802 -0
  157. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  158. package/artifacts/contracts/product/PricingService.sol/PricingService.json +923 -0
  159. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  160. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +786 -0
  161. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  162. package/artifacts/contracts/product/Product.sol/Product.json +1106 -0
  163. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
  164. package/artifacts/contracts/product/RiskService.sol/RiskService.json +638 -0
  165. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
  166. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +718 -0
  167. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  168. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
  169. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  170. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +457 -27
  171. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  172. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +263 -110
  173. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  174. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +5 -18
  175. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  176. package/artifacts/contracts/registry/Registry.sol/Registry.json +949 -128
  177. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  178. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1899 -0
  179. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  180. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +349 -245
  181. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  182. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +161 -94
  183. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
  184. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +205 -0
  185. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  186. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1067 -0
  187. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  188. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +272 -0
  189. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  190. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +316 -153
  191. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  192. package/artifacts/contracts/{instance/base/ComponentService.sol/ComponentService.json → shared/Component.sol/Component.json} +292 -204
  193. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  194. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1843 -0
  195. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  196. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +834 -0
  197. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  198. package/artifacts/contracts/{instance/service/IClaimService.sol/IClaimService.json → shared/ComponentVerifyingService.sol/ComponentVerifyingService.json} +124 -125
  199. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
  200. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +111 -0
  201. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  202. package/artifacts/contracts/{components → shared}/IComponent.sol/IComponent.json +146 -131
  203. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  204. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1402 -0
  205. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  206. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +711 -0
  207. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  208. package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +95 -14
  209. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  210. package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +35 -4
  211. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  212. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +19 -10
  213. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  214. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +59 -13
  215. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  216. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +28 -6
  217. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  218. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.json +0 -13
  219. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  220. package/artifacts/contracts/shared/IService.sol/IService.json +46 -6
  221. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
  222. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
  223. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  224. package/artifacts/contracts/{components/Component.sol/Component.json → shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json} +225 -268
  225. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  226. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +538 -0
  227. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  228. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +174 -0
  229. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  230. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  231. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  232. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +28 -70
  233. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  234. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +35 -85
  235. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  236. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +69 -99
  237. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  238. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -28
  239. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  240. package/artifacts/contracts/shared/Service.sol/Service.json +58 -112
  241. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  242. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +734 -8
  243. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
  244. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +395 -0
  245. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  246. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
  247. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  248. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1435 -0
  249. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  250. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +1043 -0
  251. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  252. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +440 -0
  253. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  254. package/artifacts/contracts/staking/Staking.sol/Staking.json +1816 -0
  255. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  256. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +205 -0
  257. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  258. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +780 -0
  259. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
  260. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +587 -0
  261. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  262. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1265 -0
  263. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  264. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +734 -0
  265. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  266. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2283 -0
  267. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
  268. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +607 -0
  269. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  270. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  271. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  272. package/artifacts/contracts/type/Amount.sol/AmountLib.json +398 -0
  273. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  274. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
  275. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  276. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +203 -0
  277. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  278. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  279. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  280. package/artifacts/contracts/type/Fee.sol/FeeLib.json +317 -0
  281. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  282. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  283. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  284. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
  285. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  286. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  287. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  288. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +239 -0
  289. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  290. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  291. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  292. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  293. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  294. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  295. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  296. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +142 -0
  297. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  298. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +369 -0
  299. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  300. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +246 -0
  301. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  302. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  303. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  304. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  305. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  306. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +105 -0
  307. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  308. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  309. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  310. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +312 -0
  311. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  312. package/artifacts/contracts/type/UFixed.sol/MathLib.json +16 -0
  313. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  314. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +548 -0
  315. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  316. package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
  317. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  318. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +68 -0
  319. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  320. package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
  321. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  322. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +618 -0
  323. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  324. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  325. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  326. package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
  327. package/contracts/authorization/AccessAdmin.sol +596 -0
  328. package/contracts/authorization/AccessManagerCloneable.sol +16 -0
  329. package/contracts/authorization/Authorization.sol +289 -0
  330. package/contracts/authorization/IAccess.sol +49 -0
  331. package/contracts/authorization/IAccessAdmin.sol +137 -0
  332. package/contracts/authorization/IAuthorization.sol +60 -0
  333. package/contracts/authorization/IServiceAuthorization.sol +40 -0
  334. package/contracts/authorization/ReleaseAccessManager.sol +38 -0
  335. package/contracts/authorization/ServiceAuthorization.sol +106 -0
  336. package/contracts/distribution/BasicDistribution.sol +139 -0
  337. package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
  338. package/contracts/{components → distribution}/Distribution.sol +166 -162
  339. package/contracts/distribution/DistributionService.sol +354 -0
  340. package/contracts/distribution/DistributionServiceManager.sol +39 -0
  341. package/contracts/distribution/IDistributionComponent.sol +52 -0
  342. package/contracts/{instance/service → distribution}/IDistributionService.sol +35 -34
  343. package/contracts/examples/fire/DamageLevel.sol +59 -0
  344. package/contracts/examples/fire/FirePool.sol +86 -0
  345. package/contracts/examples/fire/FirePoolAuthorization.sol +34 -0
  346. package/contracts/examples/fire/FireProduct.sol +431 -0
  347. package/contracts/examples/fire/FireProductAuthorization.sol +44 -0
  348. package/contracts/examples/fire/FireUSD.sol +26 -0
  349. package/contracts/examples/unpermissioned/SimpleDistribution.sol +58 -0
  350. package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
  351. package/contracts/examples/unpermissioned/SimplePool.sol +108 -0
  352. package/contracts/examples/unpermissioned/SimpleProduct.sol +345 -0
  353. package/contracts/instance/{BundleManager.sol → BundleSet.sol} +30 -31
  354. package/contracts/instance/IInstance.sol +41 -73
  355. package/contracts/instance/IInstanceService.sol +37 -38
  356. package/contracts/instance/Instance.sol +153 -248
  357. package/contracts/instance/InstanceAdmin.sol +277 -0
  358. package/contracts/instance/InstanceAuthorizationV3.sol +194 -0
  359. package/contracts/instance/InstanceReader.sol +264 -60
  360. package/contracts/instance/InstanceService.sol +263 -344
  361. package/contracts/instance/InstanceServiceManager.sol +14 -29
  362. package/contracts/instance/InstanceStore.sol +287 -0
  363. package/contracts/instance/base/BalanceStore.sol +123 -0
  364. package/contracts/instance/base/Cloneable.sol +28 -0
  365. package/contracts/instance/base/ObjectCounter.sol +21 -0
  366. package/contracts/instance/base/ObjectLifecycle.sol +111 -0
  367. package/contracts/instance/{ObjectManager.sol → base/ObjectSet.sol} +18 -21
  368. package/contracts/instance/module/IAccess.sol +4 -12
  369. package/contracts/instance/module/IBundle.sol +6 -9
  370. package/contracts/instance/module/IComponents.sol +27 -18
  371. package/contracts/instance/module/IDistribution.sol +6 -6
  372. package/contracts/instance/module/IPolicy.sol +48 -35
  373. package/contracts/instance/module/IRisk.sol +1 -1
  374. package/contracts/{test/Usdc.sol → mock/Dip.sol} +6 -6
  375. package/contracts/oracle/BasicOracle.sol +47 -0
  376. package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
  377. package/contracts/oracle/IOracle.sol +36 -0
  378. package/contracts/oracle/IOracleComponent.sol +33 -0
  379. package/contracts/oracle/IOracleService.sol +66 -0
  380. package/contracts/oracle/Oracle.sol +156 -0
  381. package/contracts/oracle/OracleService.sol +292 -0
  382. package/contracts/oracle/OracleServiceManager.sol +39 -0
  383. package/contracts/pool/BasicPool.sol +175 -0
  384. package/contracts/pool/BasicPoolAuthorization.sol +68 -0
  385. package/contracts/pool/BundleService.sol +485 -0
  386. package/contracts/pool/BundleServiceManager.sol +39 -0
  387. package/contracts/pool/IBundleService.sol +140 -0
  388. package/contracts/pool/IPoolComponent.sol +62 -0
  389. package/contracts/pool/IPoolService.sol +172 -0
  390. package/contracts/pool/Pool.sol +345 -0
  391. package/contracts/pool/PoolService.sol +620 -0
  392. package/contracts/pool/PoolServiceManager.sol +39 -0
  393. package/contracts/product/ApplicationService.sol +259 -0
  394. package/contracts/{instance/service → product}/ApplicationServiceManager.sol +12 -9
  395. package/contracts/product/BasicProduct.sol +49 -0
  396. package/contracts/product/BasicProductAuthorization.sol +42 -0
  397. package/contracts/product/ClaimService.sol +614 -0
  398. package/contracts/{instance/service → product}/ClaimServiceManager.sol +12 -9
  399. package/contracts/{instance/service → product}/IApplicationService.sol +16 -35
  400. package/contracts/product/IClaimService.sol +123 -0
  401. package/contracts/product/IPolicyService.sol +82 -0
  402. package/contracts/product/IPricingService.sol +39 -0
  403. package/contracts/product/IProductComponent.sol +59 -0
  404. package/contracts/product/IRiskService.sol +33 -0
  405. package/contracts/product/PolicyService.sol +695 -0
  406. package/contracts/product/PolicyServiceManager.sol +39 -0
  407. package/contracts/product/PricingService.sol +300 -0
  408. package/contracts/product/PricingServiceManager.sol +39 -0
  409. package/contracts/product/Product.sol +432 -0
  410. package/contracts/product/RiskService.sol +96 -0
  411. package/contracts/product/RiskServiceManager.sol +39 -0
  412. package/contracts/registry/ChainNft.sol +75 -38
  413. package/contracts/registry/IRegistry.sol +98 -26
  414. package/contracts/registry/IRegistryService.sol +34 -40
  415. package/contracts/registry/ITransferInterceptor.sol +1 -2
  416. package/contracts/registry/Registry.sol +453 -195
  417. package/contracts/registry/RegistryAdmin.sol +462 -0
  418. package/contracts/registry/RegistryService.sol +87 -128
  419. package/contracts/registry/RegistryServiceManager.sol +23 -32
  420. package/contracts/registry/ReleaseLifecycle.sol +30 -0
  421. package/contracts/registry/ReleaseRegistry.sol +485 -0
  422. package/contracts/registry/ServiceAuthorizationV3.sol +203 -0
  423. package/contracts/registry/TokenRegistry.sol +261 -62
  424. package/contracts/shared/Component.sol +229 -0
  425. package/contracts/shared/ComponentService.sol +779 -0
  426. package/contracts/shared/ComponentServiceManager.sol +38 -0
  427. package/contracts/shared/ComponentVerifyingService.sol +128 -0
  428. package/contracts/shared/ContractLib.sol +54 -0
  429. package/contracts/shared/IComponent.sol +67 -0
  430. package/contracts/shared/IComponentService.sol +130 -0
  431. package/contracts/shared/IInstanceLinkedComponent.sol +41 -0
  432. package/contracts/{instance/base → shared}/IKeyValueStore.sol +16 -11
  433. package/contracts/{instance/base → shared}/ILifecycle.sol +5 -4
  434. package/contracts/shared/INftOwnable.sol +4 -2
  435. package/contracts/shared/IPolicyHolder.sol +23 -14
  436. package/contracts/shared/IRegisterable.sol +11 -0
  437. package/contracts/shared/IRegistryLinked.sol +0 -1
  438. package/contracts/shared/IService.sol +12 -3
  439. package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +4 -4
  440. package/contracts/shared/InstanceLinkedComponent.sol +205 -0
  441. package/contracts/shared/KeyValueStore.sol +131 -0
  442. package/contracts/shared/Lifecycle.sol +88 -0
  443. package/contracts/shared/NftIdSet.sol +65 -0
  444. package/contracts/shared/NftOwnable.sol +32 -25
  445. package/contracts/shared/PolicyHolder.sol +22 -41
  446. package/contracts/shared/Registerable.sol +32 -23
  447. package/contracts/shared/RegistryLinked.sol +9 -19
  448. package/contracts/shared/Service.sol +48 -36
  449. package/contracts/shared/TokenHandler.sol +376 -12
  450. package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
  451. package/contracts/staking/IStaking.sol +173 -0
  452. package/contracts/staking/IStakingService.sol +157 -0
  453. package/contracts/staking/StakeManagerLib.sol +224 -0
  454. package/contracts/staking/Staking.sol +505 -0
  455. package/contracts/staking/StakingLifecycle.sol +23 -0
  456. package/contracts/staking/StakingManager.sol +52 -0
  457. package/contracts/staking/StakingReader.sol +190 -0
  458. package/contracts/staking/StakingService.sol +453 -0
  459. package/contracts/staking/StakingServiceManager.sol +44 -0
  460. package/contracts/staking/StakingStore.sol +605 -0
  461. package/contracts/staking/TargetManagerLib.sol +211 -0
  462. package/contracts/{types → type}/AddressSet.sol +1 -1
  463. package/contracts/type/Amount.sol +150 -0
  464. package/contracts/{types → type}/Blocknumber.sol +26 -3
  465. package/contracts/{types → type}/ClaimId.sol +31 -3
  466. package/contracts/{types → type}/Fee.sol +24 -22
  467. package/contracts/{types → type}/NftId.sol +15 -16
  468. package/contracts/{types → type}/NftIdSet.sol +2 -2
  469. package/contracts/type/ObjectType.sol +276 -0
  470. package/contracts/type/PayoutId.sol +82 -0
  471. package/contracts/{types → type}/Referral.sol +2 -1
  472. package/contracts/type/RequestId.sol +75 -0
  473. package/contracts/{types → type}/RiskId.sol +17 -3
  474. package/contracts/type/RoleId.sol +162 -0
  475. package/contracts/type/Seconds.sol +101 -0
  476. package/contracts/type/Selector.sol +102 -0
  477. package/contracts/{types → type}/StateId.sol +47 -4
  478. package/contracts/type/String.sol +53 -0
  479. package/contracts/{types → type}/Timestamp.sol +21 -2
  480. package/contracts/{types → type}/UFixed.sol +38 -9
  481. package/contracts/{types → type}/Version.sol +4 -2
  482. package/contracts/{shared → upgradeability}/IVersionable.sol +1 -1
  483. package/contracts/{shared → upgradeability}/ProxyManager.sol +93 -30
  484. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  485. package/contracts/{shared → upgradeability}/Versionable.sol +3 -3
  486. package/package.json +11 -7
  487. package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
  488. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
  489. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +0 -4
  490. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
  491. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  492. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  493. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  494. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  495. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  496. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  497. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  498. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -778
  499. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +0 -4
  500. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  501. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1330
  502. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  503. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +0 -256
  504. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +0 -4
  505. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
  506. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
  507. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
  508. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -532
  509. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
  510. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -194
  511. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
  512. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
  513. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.json +0 -10
  514. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +0 -4
  515. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +0 -1039
  516. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +0 -4
  517. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +0 -673
  518. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +0 -4
  519. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +0 -1231
  520. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +0 -4
  521. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +0 -721
  522. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +0 -4
  523. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +0 -817
  524. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +0 -4
  525. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +0 -641
  526. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
  527. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -1798
  528. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +0 -4
  529. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +0 -805
  530. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +0 -4
  531. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +0 -4
  532. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +0 -4
  533. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
  534. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +0 -4
  535. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  536. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  537. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +0 -4
  538. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +0 -1092
  539. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +0 -4
  540. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +0 -697
  541. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  542. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -1237
  543. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +0 -4
  544. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +0 -661
  545. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  546. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -840
  547. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  548. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +0 -653
  549. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  550. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -285
  551. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  552. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -559
  553. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +0 -4
  554. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +0 -107
  555. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
  556. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
  557. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  558. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  559. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -582
  560. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  561. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
  562. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  563. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
  564. package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
  565. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
  566. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -383
  567. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
  568. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
  569. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
  570. package/artifacts/contracts/test/TestService.sol/TestService.json +0 -596
  571. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
  572. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -376
  573. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
  574. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
  575. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
  576. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -104
  577. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
  578. package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -376
  579. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
  580. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.json +0 -10
  581. package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +0 -4
  582. package/artifacts/contracts/types/Amount.sol/AmountLib.json +0 -161
  583. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
  584. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
  585. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  586. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  587. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +0 -4
  588. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +0 -100
  589. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +0 -4
  590. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +0 -104
  591. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
  592. package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -288
  593. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
  594. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -125
  595. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  596. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -166
  597. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
  598. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -33
  599. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +0 -4
  600. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +0 -100
  601. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
  602. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +0 -92
  603. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +0 -4
  604. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +0 -100
  605. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +0 -4
  606. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +0 -142
  607. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
  608. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +0 -86
  609. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
  610. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -156
  611. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +0 -4
  612. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +0 -124
  613. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
  614. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +0 -92
  615. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
  616. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -267
  617. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +0 -4
  618. package/artifacts/contracts/types/UFixed.sol/MathLib.json +0 -10
  619. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +0 -4
  620. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +0 -479
  621. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
  622. package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -177
  623. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
  624. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -49
  625. package/contracts/components/Component.sol +0 -253
  626. package/contracts/components/IComponent.sol +0 -76
  627. package/contracts/components/IDistributionComponent.sol +0 -71
  628. package/contracts/components/IPoolComponent.sol +0 -113
  629. package/contracts/components/IProductComponent.sol +0 -40
  630. package/contracts/components/Pool.sol +0 -303
  631. package/contracts/components/Product.sol +0 -293
  632. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +0 -13
  633. package/contracts/instance/Cloneable.sol +0 -51
  634. package/contracts/instance/InstanceAccessManager.sol +0 -527
  635. package/contracts/instance/base/ComponentService.sol +0 -121
  636. package/contracts/instance/base/KeyValueStore.sol +0 -180
  637. package/contracts/instance/base/Lifecycle.sol +0 -109
  638. package/contracts/instance/module/ISetup.sol +0 -33
  639. package/contracts/instance/module/ITreasury.sol +0 -23
  640. package/contracts/instance/service/ApplicationService.sol +0 -350
  641. package/contracts/instance/service/BundleService.sol +0 -431
  642. package/contracts/instance/service/BundleServiceManager.sol +0 -51
  643. package/contracts/instance/service/ClaimService.sol +0 -151
  644. package/contracts/instance/service/DistributionService.sol +0 -435
  645. package/contracts/instance/service/DistributionServiceManager.sol +0 -51
  646. package/contracts/instance/service/IBundleService.sol +0 -93
  647. package/contracts/instance/service/IClaimService.sol +0 -61
  648. package/contracts/instance/service/IPolicyService.sol +0 -72
  649. package/contracts/instance/service/IPoolService.sol +0 -99
  650. package/contracts/instance/service/IProductService.sol +0 -40
  651. package/contracts/instance/service/PolicyService.sol +0 -362
  652. package/contracts/instance/service/PolicyServiceManager.sol +0 -54
  653. package/contracts/instance/service/PoolService.sol +0 -303
  654. package/contracts/instance/service/PoolServiceManager.sol +0 -51
  655. package/contracts/instance/service/ProductService.sol +0 -210
  656. package/contracts/instance/service/ProductServiceManager.sol +0 -54
  657. package/contracts/registry/RegistryAccessManager.sol +0 -216
  658. package/contracts/registry/ReleaseManager.sol +0 -324
  659. package/contracts/shared/ContractDeployerLib.sol +0 -72
  660. package/contracts/test/TestFee.sol +0 -25
  661. package/contracts/test/TestRegisterable.sol +0 -18
  662. package/contracts/test/TestRoleId.sol +0 -14
  663. package/contracts/test/TestService.sol +0 -25
  664. package/contracts/test/TestToken.sol +0 -26
  665. package/contracts/test/TestVersion.sol +0 -44
  666. package/contracts/test/TestVersionable.sol +0 -17
  667. package/contracts/types/Amount.sol +0 -60
  668. package/contracts/types/ChainId.sol +0 -38
  669. package/contracts/types/NumberId.sol +0 -52
  670. package/contracts/types/ObjectType.sol +0 -157
  671. package/contracts/types/PayoutId.sol +0 -54
  672. package/contracts/types/RoleId.sol +0 -97
  673. package/contracts/types/Seconds.sol +0 -54
  674. /package/contracts/{types → type}/DistributorType.sol +0 -0
  675. /package/contracts/{types → type}/Key32.sol +0 -0
@@ -5,15 +5,68 @@
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "registry",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "component",
16
+ "type": "address"
17
+ },
8
18
  {
9
19
  "internalType": "address",
10
20
  "name": "token",
11
21
  "type": "address"
22
+ },
23
+ {
24
+ "internalType": "address",
25
+ "name": "authority",
26
+ "type": "address"
12
27
  }
13
28
  ],
14
29
  "stateMutability": "nonpayable",
15
30
  "type": "constructor"
16
31
  },
32
+ {
33
+ "inputs": [
34
+ {
35
+ "internalType": "address",
36
+ "name": "authority",
37
+ "type": "address"
38
+ }
39
+ ],
40
+ "name": "AccessManagedInvalidAuthority",
41
+ "type": "error"
42
+ },
43
+ {
44
+ "inputs": [
45
+ {
46
+ "internalType": "address",
47
+ "name": "caller",
48
+ "type": "address"
49
+ },
50
+ {
51
+ "internalType": "uint32",
52
+ "name": "delay",
53
+ "type": "uint32"
54
+ }
55
+ ],
56
+ "name": "AccessManagedRequiredDelay",
57
+ "type": "error"
58
+ },
59
+ {
60
+ "inputs": [
61
+ {
62
+ "internalType": "address",
63
+ "name": "caller",
64
+ "type": "address"
65
+ }
66
+ ],
67
+ "name": "AccessManagedUnauthorized",
68
+ "type": "error"
69
+ },
17
70
  {
18
71
  "inputs": [
19
72
  {
@@ -36,6 +89,195 @@
36
89
  "name": "AddressInsufficientBalance",
37
90
  "type": "error"
38
91
  },
92
+ {
93
+ "inputs": [],
94
+ "name": "ErrorTokenHandlerAddressIsSameAsCurrent",
95
+ "type": "error"
96
+ },
97
+ {
98
+ "inputs": [
99
+ {
100
+ "internalType": "address",
101
+ "name": "token",
102
+ "type": "address"
103
+ },
104
+ {
105
+ "internalType": "address",
106
+ "name": "from",
107
+ "type": "address"
108
+ },
109
+ {
110
+ "internalType": "address",
111
+ "name": "spender",
112
+ "type": "address"
113
+ },
114
+ {
115
+ "internalType": "uint256",
116
+ "name": "allowance",
117
+ "type": "uint256"
118
+ },
119
+ {
120
+ "internalType": "uint256",
121
+ "name": "expectedAllowance",
122
+ "type": "uint256"
123
+ }
124
+ ],
125
+ "name": "ErrorTokenHandlerAllowanceTooSmall",
126
+ "type": "error"
127
+ },
128
+ {
129
+ "inputs": [],
130
+ "name": "ErrorTokenHandlerAmountIsZero",
131
+ "type": "error"
132
+ },
133
+ {
134
+ "inputs": [
135
+ {
136
+ "internalType": "address",
137
+ "name": "token",
138
+ "type": "address"
139
+ },
140
+ {
141
+ "internalType": "address",
142
+ "name": "from",
143
+ "type": "address"
144
+ },
145
+ {
146
+ "internalType": "uint256",
147
+ "name": "balance",
148
+ "type": "uint256"
149
+ },
150
+ {
151
+ "internalType": "uint256",
152
+ "name": "expectedBalance",
153
+ "type": "uint256"
154
+ }
155
+ ],
156
+ "name": "ErrorTokenHandlerBalanceTooLow",
157
+ "type": "error"
158
+ },
159
+ {
160
+ "inputs": [
161
+ {
162
+ "internalType": "address",
163
+ "name": "component",
164
+ "type": "address"
165
+ }
166
+ ],
167
+ "name": "ErrorTokenHandlerComponentNotRegistered",
168
+ "type": "error"
169
+ },
170
+ {
171
+ "inputs": [],
172
+ "name": "ErrorTokenHandlerNewWalletAddressZero",
173
+ "type": "error"
174
+ },
175
+ {
176
+ "inputs": [
177
+ {
178
+ "internalType": "address",
179
+ "name": "registry",
180
+ "type": "address"
181
+ }
182
+ ],
183
+ "name": "ErrorTokenHandlerNotRegistry",
184
+ "type": "error"
185
+ },
186
+ {
187
+ "inputs": [
188
+ {
189
+ "internalType": "address",
190
+ "name": "service",
191
+ "type": "address"
192
+ }
193
+ ],
194
+ "name": "ErrorTokenHandlerNotService",
195
+ "type": "error"
196
+ },
197
+ {
198
+ "inputs": [
199
+ {
200
+ "internalType": "NftId",
201
+ "name": "nftId",
202
+ "type": "uint96"
203
+ },
204
+ {
205
+ "internalType": "address",
206
+ "name": "tokenHandler",
207
+ "type": "address"
208
+ },
209
+ {
210
+ "internalType": "address",
211
+ "name": "wallet",
212
+ "type": "address"
213
+ }
214
+ ],
215
+ "name": "ErrorTokenHandlerNotWallet",
216
+ "type": "error"
217
+ },
218
+ {
219
+ "inputs": [
220
+ {
221
+ "internalType": "Amount",
222
+ "name": "pushAmount",
223
+ "type": "uint96"
224
+ },
225
+ {
226
+ "internalType": "Amount",
227
+ "name": "pullAmount",
228
+ "type": "uint96"
229
+ }
230
+ ],
231
+ "name": "ErrorTokenHandlerPushAmountsTooLarge",
232
+ "type": "error"
233
+ },
234
+ {
235
+ "inputs": [
236
+ {
237
+ "internalType": "address",
238
+ "name": "to",
239
+ "type": "address"
240
+ },
241
+ {
242
+ "internalType": "address",
243
+ "name": "to2",
244
+ "type": "address"
245
+ },
246
+ {
247
+ "internalType": "address",
248
+ "name": "to3",
249
+ "type": "address"
250
+ }
251
+ ],
252
+ "name": "ErrorTokenHandlerRecipientWalletsMustBeDistinct",
253
+ "type": "error"
254
+ },
255
+ {
256
+ "inputs": [],
257
+ "name": "ErrorTokenHandlerTokenAddressZero",
258
+ "type": "error"
259
+ },
260
+ {
261
+ "inputs": [
262
+ {
263
+ "internalType": "address",
264
+ "name": "from",
265
+ "type": "address"
266
+ },
267
+ {
268
+ "internalType": "address",
269
+ "name": "to1",
270
+ "type": "address"
271
+ },
272
+ {
273
+ "internalType": "address",
274
+ "name": "to2",
275
+ "type": "address"
276
+ }
277
+ ],
278
+ "name": "ErrorTokenHandlerWalletsNotDistinct",
279
+ "type": "error"
280
+ },
39
281
  {
40
282
  "inputs": [],
41
283
  "name": "FailedInnerCall",
@@ -52,12 +294,219 @@
52
294
  "name": "SafeERC20FailedOperation",
53
295
  "type": "error"
54
296
  },
297
+ {
298
+ "anonymous": false,
299
+ "inputs": [
300
+ {
301
+ "indexed": false,
302
+ "internalType": "address",
303
+ "name": "authority",
304
+ "type": "address"
305
+ }
306
+ ],
307
+ "name": "AuthorityUpdated",
308
+ "type": "event"
309
+ },
310
+ {
311
+ "anonymous": false,
312
+ "inputs": [
313
+ {
314
+ "indexed": false,
315
+ "internalType": "NftId",
316
+ "name": "nftId",
317
+ "type": "uint96"
318
+ },
319
+ {
320
+ "indexed": false,
321
+ "internalType": "address",
322
+ "name": "tokenHandler",
323
+ "type": "address"
324
+ },
325
+ {
326
+ "indexed": false,
327
+ "internalType": "address",
328
+ "name": "token",
329
+ "type": "address"
330
+ },
331
+ {
332
+ "indexed": false,
333
+ "internalType": "Amount",
334
+ "name": "amount",
335
+ "type": "uint96"
336
+ },
337
+ {
338
+ "indexed": false,
339
+ "internalType": "bool",
340
+ "name": "isMaxAmount",
341
+ "type": "bool"
342
+ }
343
+ ],
344
+ "name": "LogTokenHandlerTokenApproved",
345
+ "type": "event"
346
+ },
347
+ {
348
+ "anonymous": false,
349
+ "inputs": [
350
+ {
351
+ "indexed": false,
352
+ "internalType": "address",
353
+ "name": "token",
354
+ "type": "address"
355
+ },
356
+ {
357
+ "indexed": false,
358
+ "internalType": "address",
359
+ "name": "from",
360
+ "type": "address"
361
+ },
362
+ {
363
+ "indexed": false,
364
+ "internalType": "address",
365
+ "name": "to",
366
+ "type": "address"
367
+ },
368
+ {
369
+ "indexed": false,
370
+ "internalType": "Amount",
371
+ "name": "amount",
372
+ "type": "uint96"
373
+ }
374
+ ],
375
+ "name": "LogTokenHandlerTokenTransfer",
376
+ "type": "event"
377
+ },
378
+ {
379
+ "anonymous": false,
380
+ "inputs": [
381
+ {
382
+ "indexed": false,
383
+ "internalType": "NftId",
384
+ "name": "componentNftId",
385
+ "type": "uint96"
386
+ },
387
+ {
388
+ "indexed": false,
389
+ "internalType": "address",
390
+ "name": "oldWallet",
391
+ "type": "address"
392
+ },
393
+ {
394
+ "indexed": false,
395
+ "internalType": "address",
396
+ "name": "newWallet",
397
+ "type": "address"
398
+ }
399
+ ],
400
+ "name": "LogTokenHandlerWalletAddressChanged",
401
+ "type": "event"
402
+ },
403
+ {
404
+ "anonymous": false,
405
+ "inputs": [
406
+ {
407
+ "indexed": false,
408
+ "internalType": "NftId",
409
+ "name": "componentNftId",
410
+ "type": "uint96"
411
+ },
412
+ {
413
+ "indexed": false,
414
+ "internalType": "address",
415
+ "name": "oldWallet",
416
+ "type": "address"
417
+ },
418
+ {
419
+ "indexed": false,
420
+ "internalType": "address",
421
+ "name": "newWallet",
422
+ "type": "address"
423
+ },
424
+ {
425
+ "indexed": false,
426
+ "internalType": "Amount",
427
+ "name": "amount",
428
+ "type": "uint96"
429
+ }
430
+ ],
431
+ "name": "LogTokenHandlerWalletTokensTransferred",
432
+ "type": "event"
433
+ },
434
+ {
435
+ "inputs": [],
436
+ "name": "COMPONENT",
437
+ "outputs": [
438
+ {
439
+ "internalType": "address",
440
+ "name": "",
441
+ "type": "address"
442
+ }
443
+ ],
444
+ "stateMutability": "view",
445
+ "type": "function"
446
+ },
55
447
  {
56
448
  "inputs": [],
57
- "name": "getToken",
449
+ "name": "NFT_ID",
58
450
  "outputs": [
451
+ {
452
+ "internalType": "NftId",
453
+ "name": "",
454
+ "type": "uint96"
455
+ }
456
+ ],
457
+ "stateMutability": "view",
458
+ "type": "function"
459
+ },
460
+ {
461
+ "inputs": [],
462
+ "name": "REGISTRY",
463
+ "outputs": [
464
+ {
465
+ "internalType": "contract IRegistry",
466
+ "name": "",
467
+ "type": "address"
468
+ }
469
+ ],
470
+ "stateMutability": "view",
471
+ "type": "function"
472
+ },
473
+ {
474
+ "inputs": [],
475
+ "name": "TOKEN",
476
+ "outputs": [
477
+ {
478
+ "internalType": "contract IERC20Metadata",
479
+ "name": "",
480
+ "type": "address"
481
+ }
482
+ ],
483
+ "stateMutability": "view",
484
+ "type": "function"
485
+ },
486
+ {
487
+ "inputs": [
59
488
  {
60
489
  "internalType": "contract IERC20Metadata",
490
+ "name": "token",
491
+ "type": "address"
492
+ },
493
+ {
494
+ "internalType": "Amount",
495
+ "name": "amount",
496
+ "type": "uint96"
497
+ }
498
+ ],
499
+ "name": "approve",
500
+ "outputs": [],
501
+ "stateMutability": "nonpayable",
502
+ "type": "function"
503
+ },
504
+ {
505
+ "inputs": [],
506
+ "name": "authority",
507
+ "outputs": [
508
+ {
509
+ "internalType": "address",
61
510
  "name": "",
62
511
  "type": "address"
63
512
  }
@@ -65,6 +514,24 @@
65
514
  "stateMutability": "view",
66
515
  "type": "function"
67
516
  },
517
+ {
518
+ "inputs": [
519
+ {
520
+ "internalType": "address",
521
+ "name": "from",
522
+ "type": "address"
523
+ },
524
+ {
525
+ "internalType": "Amount",
526
+ "name": "amount",
527
+ "type": "uint96"
528
+ }
529
+ ],
530
+ "name": "collectTokens",
531
+ "outputs": [],
532
+ "stateMutability": "nonpayable",
533
+ "type": "function"
534
+ },
68
535
  {
69
536
  "inputs": [
70
537
  {
@@ -78,19 +545,278 @@
78
545
  "type": "address"
79
546
  },
80
547
  {
81
- "internalType": "uint256",
548
+ "internalType": "Amount",
82
549
  "name": "amount",
83
- "type": "uint256"
550
+ "type": "uint96"
551
+ },
552
+ {
553
+ "internalType": "address",
554
+ "name": "to2",
555
+ "type": "address"
556
+ },
557
+ {
558
+ "internalType": "Amount",
559
+ "name": "amount2",
560
+ "type": "uint96"
561
+ },
562
+ {
563
+ "internalType": "address",
564
+ "name": "to3",
565
+ "type": "address"
566
+ },
567
+ {
568
+ "internalType": "Amount",
569
+ "name": "amount3",
570
+ "type": "uint96"
84
571
  }
85
572
  ],
86
- "name": "transfer",
573
+ "name": "collectTokensToThreeRecipients",
574
+ "outputs": [],
575
+ "stateMutability": "nonpayable",
576
+ "type": "function"
577
+ },
578
+ {
579
+ "inputs": [
580
+ {
581
+ "internalType": "address",
582
+ "name": "from",
583
+ "type": "address"
584
+ },
585
+ {
586
+ "internalType": "address",
587
+ "name": "to",
588
+ "type": "address"
589
+ },
590
+ {
591
+ "internalType": "Amount",
592
+ "name": "amount",
593
+ "type": "uint96"
594
+ }
595
+ ],
596
+ "name": "distributeTokens",
597
+ "outputs": [],
598
+ "stateMutability": "nonpayable",
599
+ "type": "function"
600
+ },
601
+ {
602
+ "inputs": [],
603
+ "name": "getWallet",
604
+ "outputs": [
605
+ {
606
+ "internalType": "address",
607
+ "name": "wallet",
608
+ "type": "address"
609
+ }
610
+ ],
611
+ "stateMutability": "view",
612
+ "type": "function"
613
+ },
614
+ {
615
+ "inputs": [],
616
+ "name": "isConsumingScheduledOp",
617
+ "outputs": [
618
+ {
619
+ "internalType": "bytes4",
620
+ "name": "",
621
+ "type": "bytes4"
622
+ }
623
+ ],
624
+ "stateMutability": "view",
625
+ "type": "function"
626
+ },
627
+ {
628
+ "inputs": [
629
+ {
630
+ "internalType": "address",
631
+ "name": "from",
632
+ "type": "address"
633
+ },
634
+ {
635
+ "internalType": "Amount",
636
+ "name": "amount",
637
+ "type": "uint96"
638
+ }
639
+ ],
640
+ "name": "pushToken",
641
+ "outputs": [],
642
+ "stateMutability": "nonpayable",
643
+ "type": "function"
644
+ },
645
+ {
646
+ "inputs": [
647
+ {
648
+ "internalType": "address",
649
+ "name": "newAuthority",
650
+ "type": "address"
651
+ }
652
+ ],
653
+ "name": "setAuthority",
654
+ "outputs": [],
655
+ "stateMutability": "nonpayable",
656
+ "type": "function"
657
+ },
658
+ {
659
+ "inputs": [
660
+ {
661
+ "internalType": "address",
662
+ "name": "newWallet",
663
+ "type": "address"
664
+ }
665
+ ],
666
+ "name": "setWallet",
87
667
  "outputs": [],
88
668
  "stateMutability": "nonpayable",
89
669
  "type": "function"
90
670
  }
91
671
  ],
92
- "bytecode": "0x608060405234801561001057600080fd5b506040516103fd3803806103fd83398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b61036a806100936000396000f3fe608060405234801561001057600080fd5b50600436106100365760003560e01c806321df0da71461003b578063beabacc81461005a575b600080fd5b600054604080516001600160a01b039092168252519081900360200190f35b61006d6100683660046102a7565b61006f565b005b600054610087906001600160a01b031684848461008c565b505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526100e69085906100ec565b50505050565b60006101016001600160a01b03841683610154565b9050805160001415801561012657508080602001905181019061012491906102e3565b155b1561008757604051635274afe760e01b81526001600160a01b03841660048201526024015b60405180910390fd5b606061016283836000610169565b9392505050565b60608147101561018e5760405163cd78605960e01b815230600482015260240161014b565b600080856001600160a01b031684866040516101aa9190610305565b60006040518083038185875af1925050503d80600081146101e7576040519150601f19603f3d011682016040523d82523d6000602084013e6101ec565b606091505b50915091506101fc868383610206565b9695505050505050565b60608261021b5761021682610262565b610162565b815115801561023257506001600160a01b0384163b155b1561025b57604051639996b31560e01b81526001600160a01b038516600482015260240161014b565b5080610162565b8051156102725780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146102a257600080fd5b919050565b6000806000606084860312156102bc57600080fd5b6102c58461028b565b92506102d36020850161028b565b9150604084013590509250925092565b6000602082840312156102f557600080fd5b8151801515811461016257600080fd5b6000825160005b81811015610326576020818601810151858301520161030c565b50600092019182525091905056fea2646970667358221220f3141585df36c5ff1a5cbb09bfe8edba43afb8f272b7a3dabda004da27f24fc464736f6c63430008140033",
93
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100365760003560e01c806321df0da71461003b578063beabacc81461005a575b600080fd5b600054604080516001600160a01b039092168252519081900360200190f35b61006d6100683660046102a7565b61006f565b005b600054610087906001600160a01b031684848461008c565b505050565b604080516001600160a01b0385811660248301528416604482015260648082018490528251808303909101815260849091019091526020810180516001600160e01b03166323b872dd60e01b1790526100e69085906100ec565b50505050565b60006101016001600160a01b03841683610154565b9050805160001415801561012657508080602001905181019061012491906102e3565b155b1561008757604051635274afe760e01b81526001600160a01b03841660048201526024015b60405180910390fd5b606061016283836000610169565b9392505050565b60608147101561018e5760405163cd78605960e01b815230600482015260240161014b565b600080856001600160a01b031684866040516101aa9190610305565b60006040518083038185875af1925050503d80600081146101e7576040519150601f19603f3d011682016040523d82523d6000602084013e6101ec565b606091505b50915091506101fc868383610206565b9695505050505050565b60608261021b5761021682610262565b610162565b815115801561023257506001600160a01b0384163b155b1561025b57604051639996b31560e01b81526001600160a01b038516600482015260240161014b565b5080610162565b8051156102725780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b03811681146102a257600080fd5b919050565b6000806000606084860312156102bc57600080fd5b6102c58461028b565b92506102d36020850161028b565b9150604084013590509250925092565b6000602082840312156102f557600080fd5b8151801515811461016257600080fd5b6000825160005b81811015610326576020818601810151858301520161030c565b50600092019182525091905056fea2646970667358221220f3141585df36c5ff1a5cbb09bfe8edba43afb8f272b7a3dabda004da27f24fc464736f6c63430008140033",
94
- "linkReferences": {},
95
- "deployedLinkReferences": {}
672
+ "bytecode": "0x610100604052348015610010575f80fd5b5060405161220338038061220383398101604081905261002f916102b0565b8383838361003c81610242565b50604051633334d16b60e01b81526001600160a01b038416600482015273__$fb599632d08395912d9d70eb2f0f93b5e2$__90633334d16b90602401602060405180830381865af4158015610093573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100b79190610301565b6100e457604051633c165c4d60e01b81526001600160a01b03841660048201526024015b60405180910390fd5b6001600160a01b03811661010b57604051630d0482ff60e31b815260040160405180910390fd5b6001600160a01b03838116608081905290831660c0819052604051632f2a35f760e11b81526004810191909152635e546bee90602401602060405180830381865afa15801561015c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101809190610327565b6001600160601b031660e0819052604051630a4d29dd60e31b8152600481019190915273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af41580156101dd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102019190610301565b1561022a57604051634fd16de160e11b81526001600160a01b03831660048201526024016100db565b6001600160a01b031660a0525061034d945050505050565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b80516001600160a01b03811681146102ab575f80fd5b919050565b5f805f80608085870312156102c3575f80fd5b6102cc85610295565b93506102da60208601610295565b92506102e860408601610295565b91506102f660608601610295565b905092959194509250565b5f60208284031215610311575f80fd5b81518015158114610320575f80fd5b9392505050565b5f60208284031215610337575f80fd5b81516001600160601b0381168114610320575f80fd5b60805160a05160c05160e051611e0d6103f65f395f818161016201528181611200015281816113ea015281816114d2015261161b01525f61023201525f81816101c701528181610ca301528181610db001528181610e9801528181610fa50152818161107b01528181611112015261129a01525f818160ee015281816102bc0152818161037d015281816104ac0152818161056c0152818161088701526109400152611e0d5ff3fe608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806382bfefc811610088578063bf7e214f11610063578063bf7e214f1461021d578063ce0f75de1461022d578063deaa59df14610254578063ea0b3c7314610267575f80fd5b806382bfefc8146101c257806385c46d5c146101e95780638fb36037146101fc575f80fd5b806367ed5f36116100c357806367ed5f361461014a578063707ddfae1461015d5780637a9e5e4b1461019c578063819b400e146101af575f80fd5b806306433b1b146100e9578063132996041461012d57806354f0d84c14610135575b5f80fd5b6101107f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61011061027a565b610148610143366004611b4b565b6102a1565b005b610148610158366004611b93565b61036e565b6101847f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160601b039091168152602001610124565b6101486101aa366004611bca565b610429565b6101486101bd366004611b93565b61049d565b6101107f000000000000000000000000000000000000000000000000000000000000000081565b6101486101f7366004611be5565b610554565b610204610856565b6040516001600160e01b03199091168152602001610124565b5f546001600160a01b0316610110565b6101107f000000000000000000000000000000000000000000000000000000000000000081565b610148610262366004611bca565b610878565b610148610275366004611b93565b610931565b6001545f906001600160a01b031661029157503090565b506001546001600160a01b031690565b6102ad335b5f366109e8565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906102fc903390600890600401611c76565b602060405180830381865afa158015610317573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033b9190611ca6565b61035f57604051630542d5c160e01b81523360048201526024015b60405180910390fd5b6103698282610ade565b505050565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906103bd903390600890600401611c76565b602060405180830381865afa1580156103d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103fc9190611ca6565b61041b57604051630542d5c160e01b8152336004820152602401610356565b6104258282610ade565b5050565b5f5433906001600160a01b0316811461045f5760405162d1953b60e31b81526001600160a01b0382166004820152602401610356565b816001600160a01b03163b5f03610494576040516361798f2f60e11b81526001600160a01b0383166004820152602401610356565b61042582610af2565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906104ec903390600890600401611c76565b602060405180830381865afa158015610507573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052b9190611ca6565b61054a57604051630542d5c160e01b8152336004820152602401610356565b6104258282610b45565b61055d336102a6565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906105ac903390600890600401611c76565b602060405180830381865afa1580156105c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105eb9190611ca6565b61060a57604051630542d5c160e01b8152336004820152602401610356565b836001600160a01b0316866001600160a01b0316148061063b5750816001600160a01b0316866001600160a01b0316145b806106575750816001600160a01b0316846001600160a01b0316145b156106905760405163307bccad60e11b81526001600160a01b038088166004830152808616602483015283166044820152606401610356565b6106ac876106a76106a18887610b59565b84610b59565b610be4565b6040516330b8415f60e01b81526001600160601b038616600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af4158015610702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107269190611ca6565b15610737576107378787875f611065565b6040516330b8415f60e01b81526001600160601b038416600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af415801561078d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b19190611ca6565b156107c2576107c28785855f611065565b6040516330b8415f60e01b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af4158015610818573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061083c9190611ca6565b1561084d5761084d8783835f611065565b50505050505050565b5f8054600160a01b900460ff1661086c57505f90565b50638fb3603760e01b90565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906108c7903390600890600401611c76565b602060405180830381865afa1580156108e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109069190611ca6565b61092557604051630542d5c160e01b8152336004820152602401610356565b61092e81611199565b50565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e626490610980903390600890600401611c76565b602060405180830381865afa15801561099b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109bf9190611ca6565b6109de57604051630542d5c160e01b8152336004820152602401610356565b61042582826114a7565b5f80610a1b6109fe5f546001600160a01b031690565b8630610a0d60045f898b611cbf565b610a1691611ce6565b6116a1565b9150915081610ad75763ffffffff811615610ab4575f805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee90610a7590889088908890600401611d1e565b5f604051808303815f87803b158015610a8c575f80fd5b505af1158015610a9e573d5f803e3d5ffd5b50505f805460ff60a01b1916905550610ad79050565b60405162d1953b60e31b81526001600160a01b0386166004820152602401610356565b5050505050565b610425610ae961027a565b83836001611065565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b61042582610b5161027a565b836001611065565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb3590604401602060405180830381865af4158015610bb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bdd9190611d5d565b9392505050565b604051630a4d29dd60e31b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015610c3a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c5e9190611ca6565b15610c7c5760405163ba9cf25b60e01b815260040160405180910390fd5b604051636eb1769f60e11b81526001600160a01b0383811660048301523060248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063dd62ed3e90604401602060405180830381865afa158015610cea573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d0e9190611d78565b60405163046e44af60e11b81526001600160601b038416600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015610d67573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8b9190611d78565b811015610e775760405163046e44af60e11b81526001600160601b03831660048201527f00000000000000000000000000000000000000000000000000000000000000009084903090849073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015610e10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e349190611d78565b6040516319d2916b60e21b81526001600160a01b03958616600482015293851660248501529390911660448301526064820152608481019190915260a401610356565b6040516370a0823160e01b81526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610edf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f039190611d78565b60405163046e44af60e11b81526001600160601b038516600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015610f5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f809190611d78565b81101561105f5760405163046e44af60e11b81526001600160601b03841660048201527f0000000000000000000000000000000000000000000000000000000000000000908590839073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015611003573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110279190611d78565b604051631288e44360e21b81526001600160a01b03948516600482015293909216602484015260448301526064820152608401610356565b50505050565b8015611075576110758483610be4565b604080517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116825286811660208301528516818301526001600160601b038416606082015290517fd8dad5de52bc07319fbcdbf42f954f497c3a267ce0cc264584726fa7a3b322079181900360800190a160405163046e44af60e11b81526001600160601b038316600482015261105f907f0000000000000000000000000000000000000000000000000000000000000000908690869073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015611170573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111949190611d78565b6117a9565b6001546001600160a01b039081169082168190036111ca5760405163b779402d60e01b815260040160405180910390fd5b5f6111d361027a565b600180546001600160a01b0319166001600160a01b03868116918217909255604080516001600160601b037f000000000000000000000000000000000000000000000000000000000000000016815292861660208401528201529091507fe17b63a940799420dfdbb7bc7d4f264ef924329d7a5135cb82b1162c86ea02f59060600160405180910390a16040516370a0823160e01b81526001600160a01b0382811660048301525f9173__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156112e1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113059190611d78565b6040518263ffffffff1660e01b815260040161132391815260200190565b602060405180830381865af415801561133e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113629190611d5d565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af41580156113bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113df9190611ca6565b1561105f57604080517f00000000000000000000000000000000000000000000000000000000000000006001600160601b0390811682526001600160a01b0386811660208401528716828401528316606082015290517f85bc564e97c299d12e3a61734d4f9ca9aff69b15059d1b177825a456c8a317d99181900360800190a16001600160a01b03831661147f5761147a3085836001611065565b61105f565b6001600160a01b03841661149a5761147a8330836001611065565b61105f8385836001611065565b6001546001600160a01b0316156115155760015460405163266a456b60e11b81526001600160601b037f00000000000000000000000000000000000000000000000000000000000000001660048201523060248201526001600160a01b039091166044820152606401610356565b60405163046e44af60e11b81526001600160601b03821660048201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af415801561156d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115919190611d78565b90505f6116088373__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af41580156115df573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116039190611d5d565b611810565b1561161557505f19905060015b604080517f00000000000000000000000000000000000000000000000000000000000000006001600160601b0390811682523060208301526001600160a01b0387168284015285166060820152821515608082015290517f87afdceff4fac7ed560df07efe2dbb4585adc663dd5fab969376f20d70cb7a449181900360a00190a161105f843084611894565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b1790525161170f9190611d8f565b5f60405180830381855afa9150503d805f8114611747576040519150601f19603f3d011682016040523d82523d5f602084013e61174c565b606091505b5091509150811561179e57604081511061177e57808060200190518101906117749190611da5565b909450925061179e565b602081511061179e578080602001905181019061179b9190611ca6565b93505b505094509492505050565b6040516001600160a01b03848116602483015283811660448301526064820183905261105f9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b03838183161783525050505061191f565b60405163c4cade9d60e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c4cade9d90604401602060405180830381865af4158015611870573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bdd9190611ca6565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b1790526118e58482611980565b61105f576040516001600160a01b0384811660248301525f604483015261191991869182169063095ea7b3906064016117de565b61105f84825b5f6119336001600160a01b03841683611a21565b905080515f141580156119575750808060200190518101906119559190611ca6565b155b1561036957604051635274afe760e01b81526001600160a01b0384166004820152602401610356565b5f805f846001600160a01b03168460405161199b9190611d8f565b5f604051808303815f865af19150503d805f81146119d4576040519150601f19603f3d011682016040523d82523d5f602084013e6119d9565b606091505b5091509150818015611a03575080511580611a03575080806020019051810190611a039190611ca6565b8015611a1857505f856001600160a01b03163b115b95945050505050565b6060610bdd83835f845f80856001600160a01b03168486604051611a459190611d8f565b5f6040518083038185875af1925050503d805f8114611a7f576040519150601f19603f3d011682016040523d82523d5f602084013e611a84565b606091505b5091509150611a94868383611a9e565b9695505050505050565b606082611ab357611aae82611afa565b610bdd565b8151158015611aca57506001600160a01b0384163b155b15611af357604051639996b31560e01b81526001600160a01b0385166004820152602401610356565b5080610bdd565b805115611b0a5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160a01b038116811461092e575f80fd5b6001600160601b038116811461092e575f80fd5b5f805f60608486031215611b5d575f80fd5b8335611b6881611b23565b92506020840135611b7881611b23565b91506040840135611b8881611b37565b809150509250925092565b5f8060408385031215611ba4575f80fd5b8235611baf81611b23565b91506020830135611bbf81611b37565b809150509250929050565b5f60208284031215611bda575f80fd5b8135610bdd81611b23565b5f805f805f805f60e0888a031215611bfb575f80fd5b8735611c0681611b23565b96506020880135611c1681611b23565b95506040880135611c2681611b37565b94506060880135611c3681611b23565b93506080880135611c4681611b37565b925060a0880135611c5681611b23565b915060c0880135611c6681611b37565b8091505092959891949750929550565b6001600160a01b0392909216825260ff16602082015260400190565b80518015158114611ca1575f80fd5b919050565b5f60208284031215611cb6575f80fd5b610bdd82611c92565b5f8085851115611ccd575f80fd5b83861115611cd9575f80fd5b5050820193919092039150565b80356001600160e01b03198116906004841015611d17576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f60208284031215611d6d575f80fd5b8151610bdd81611b37565b5f60208284031215611d88575f80fd5b5051919050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215611db6575f80fd5b611dbf83611c92565b9150602083015163ffffffff81168114611bbf575f80fdfea264697066735822122046de27d49edda3d40a5e3ca40dd889a7b79578248f2691a1835db774e183c89064736f6c634300081a0033",
673
+ "deployedBytecode": "0x608060405234801561000f575f80fd5b50600436106100e5575f3560e01c806382bfefc811610088578063bf7e214f11610063578063bf7e214f1461021d578063ce0f75de1461022d578063deaa59df14610254578063ea0b3c7314610267575f80fd5b806382bfefc8146101c257806385c46d5c146101e95780638fb36037146101fc575f80fd5b806367ed5f36116100c357806367ed5f361461014a578063707ddfae1461015d5780637a9e5e4b1461019c578063819b400e146101af575f80fd5b806306433b1b146100e9578063132996041461012d57806354f0d84c14610135575b5f80fd5b6101107f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b61011061027a565b610148610143366004611b4b565b6102a1565b005b610148610158366004611b93565b61036e565b6101847f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160601b039091168152602001610124565b6101486101aa366004611bca565b610429565b6101486101bd366004611b93565b61049d565b6101107f000000000000000000000000000000000000000000000000000000000000000081565b6101486101f7366004611be5565b610554565b610204610856565b6040516001600160e01b03199091168152602001610124565b5f546001600160a01b0316610110565b6101107f000000000000000000000000000000000000000000000000000000000000000081565b610148610262366004611bca565b610878565b610148610275366004611b93565b610931565b6001545f906001600160a01b031661029157503090565b506001546001600160a01b031690565b6102ad335b5f366109e8565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906102fc903390600890600401611c76565b602060405180830381865afa158015610317573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061033b9190611ca6565b61035f57604051630542d5c160e01b81523360048201526024015b60405180910390fd5b6103698282610ade565b505050565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906103bd903390600890600401611c76565b602060405180830381865afa1580156103d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103fc9190611ca6565b61041b57604051630542d5c160e01b8152336004820152602401610356565b6104258282610ade565b5050565b5f5433906001600160a01b0316811461045f5760405162d1953b60e31b81526001600160a01b0382166004820152602401610356565b816001600160a01b03163b5f03610494576040516361798f2f60e11b81526001600160a01b0383166004820152602401610356565b61042582610af2565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906104ec903390600890600401611c76565b602060405180830381865afa158015610507573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061052b9190611ca6565b61054a57604051630542d5c160e01b8152336004820152602401610356565b6104258282610b45565b61055d336102a6565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906105ac903390600890600401611c76565b602060405180830381865afa1580156105c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105eb9190611ca6565b61060a57604051630542d5c160e01b8152336004820152602401610356565b836001600160a01b0316866001600160a01b0316148061063b5750816001600160a01b0316866001600160a01b0316145b806106575750816001600160a01b0316846001600160a01b0316145b156106905760405163307bccad60e11b81526001600160a01b038088166004830152808616602483015283166044820152606401610356565b6106ac876106a76106a18887610b59565b84610b59565b610be4565b6040516330b8415f60e01b81526001600160601b038616600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af4158015610702573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107269190611ca6565b15610737576107378787875f611065565b6040516330b8415f60e01b81526001600160601b038416600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af415801561078d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b19190611ca6565b156107c2576107c28785855f611065565b6040516330b8415f60e01b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af4158015610818573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061083c9190611ca6565b1561084d5761084d8783835f611065565b50505050505050565b5f8054600160a01b900460ff1661086c57505f90565b50638fb3603760e01b90565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e6264906108c7903390600890600401611c76565b602060405180830381865afa1580156108e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109069190611ca6565b61092557604051630542d5c160e01b8152336004820152602401610356565b61092e81611199565b50565b604051631703989960e21b81527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690635c0e626490610980903390600890600401611c76565b602060405180830381865afa15801561099b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109bf9190611ca6565b6109de57604051630542d5c160e01b8152336004820152602401610356565b61042582826114a7565b5f80610a1b6109fe5f546001600160a01b031690565b8630610a0d60045f898b611cbf565b610a1691611ce6565b6116a1565b9150915081610ad75763ffffffff811615610ab4575f805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee90610a7590889088908890600401611d1e565b5f604051808303815f87803b158015610a8c575f80fd5b505af1158015610a9e573d5f803e3d5ffd5b50505f805460ff60a01b1916905550610ad79050565b60405162d1953b60e31b81526001600160a01b0386166004820152602401610356565b5050505050565b610425610ae961027a565b83836001611065565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b61042582610b5161027a565b836001611065565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb3590604401602060405180830381865af4158015610bb9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bdd9190611d5d565b9392505050565b604051630a4d29dd60e31b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015610c3a573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c5e9190611ca6565b15610c7c5760405163ba9cf25b60e01b815260040160405180910390fd5b604051636eb1769f60e11b81526001600160a01b0383811660048301523060248301525f917f00000000000000000000000000000000000000000000000000000000000000009091169063dd62ed3e90604401602060405180830381865afa158015610cea573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d0e9190611d78565b60405163046e44af60e11b81526001600160601b038416600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015610d67573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8b9190611d78565b811015610e775760405163046e44af60e11b81526001600160601b03831660048201527f00000000000000000000000000000000000000000000000000000000000000009084903090849073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015610e10573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e349190611d78565b6040516319d2916b60e21b81526001600160a01b03958616600482015293851660248501529390911660448301526064820152608481019190915260a401610356565b6040516370a0823160e01b81526001600160a01b0384811660048301525f917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa158015610edf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f039190611d78565b60405163046e44af60e11b81526001600160601b038516600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015610f5c573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f809190611d78565b81101561105f5760405163046e44af60e11b81526001600160601b03841660048201527f0000000000000000000000000000000000000000000000000000000000000000908590839073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015611003573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110279190611d78565b604051631288e44360e21b81526001600160a01b03948516600482015293909216602484015260448301526064820152608401610356565b50505050565b8015611075576110758483610be4565b604080517f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03908116825286811660208301528516818301526001600160601b038416606082015290517fd8dad5de52bc07319fbcdbf42f954f497c3a267ce0cc264584726fa7a3b322079181900360800190a160405163046e44af60e11b81526001600160601b038316600482015261105f907f0000000000000000000000000000000000000000000000000000000000000000908690869073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015611170573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111949190611d78565b6117a9565b6001546001600160a01b039081169082168190036111ca5760405163b779402d60e01b815260040160405180910390fd5b5f6111d361027a565b600180546001600160a01b0319166001600160a01b03868116918217909255604080516001600160601b037f000000000000000000000000000000000000000000000000000000000000000016815292861660208401528201529091507fe17b63a940799420dfdbb7bc7d4f264ef924329d7a5135cb82b1162c86ea02f59060600160405180910390a16040516370a0823160e01b81526001600160a01b0382811660048301525f9173__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96917f0000000000000000000000000000000000000000000000000000000000000000909116906370a0823190602401602060405180830381865afa1580156112e1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113059190611d78565b6040518263ffffffff1660e01b815260040161132391815260200190565b602060405180830381865af415801561133e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113629190611d5d565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af41580156113bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113df9190611ca6565b1561105f57604080517f00000000000000000000000000000000000000000000000000000000000000006001600160601b0390811682526001600160a01b0386811660208401528716828401528316606082015290517f85bc564e97c299d12e3a61734d4f9ca9aff69b15059d1b177825a456c8a317d99181900360800190a16001600160a01b03831661147f5761147a3085836001611065565b61105f565b6001600160a01b03841661149a5761147a8330836001611065565b61105f8385836001611065565b6001546001600160a01b0316156115155760015460405163266a456b60e11b81526001600160601b037f00000000000000000000000000000000000000000000000000000000000000001660048201523060248201526001600160a01b039091166044820152606401610356565b60405163046e44af60e11b81526001600160601b03821660048201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af415801561156d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115919190611d78565b90505f6116088373__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af41580156115df573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116039190611d5d565b611810565b1561161557505f19905060015b604080517f00000000000000000000000000000000000000000000000000000000000000006001600160601b0390811682523060208301526001600160a01b0387168284015285166060820152821515608082015290517f87afdceff4fac7ed560df07efe2dbb4585adc663dd5fab969376f20d70cb7a449181900360a00190a161105f843084611894565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b1790525161170f9190611d8f565b5f60405180830381855afa9150503d805f8114611747576040519150601f19603f3d011682016040523d82523d5f602084013e61174c565b606091505b5091509150811561179e57604081511061177e57808060200190518101906117749190611da5565b909450925061179e565b602081511061179e578080602001905181019061179b9190611ca6565b93505b505094509492505050565b6040516001600160a01b03848116602483015283811660448301526064820183905261105f9186918216906323b872dd906084015b604051602081830303815290604052915060e01b6020820180516001600160e01b03838183161783525050505061191f565b60405163c4cade9d60e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c4cade9d90604401602060405180830381865af4158015611870573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bdd9190611ca6565b604080516001600160a01b038416602482015260448082018490528251808303909101815260649091019091526020810180516001600160e01b031663095ea7b360e01b1790526118e58482611980565b61105f576040516001600160a01b0384811660248301525f604483015261191991869182169063095ea7b3906064016117de565b61105f84825b5f6119336001600160a01b03841683611a21565b905080515f141580156119575750808060200190518101906119559190611ca6565b155b1561036957604051635274afe760e01b81526001600160a01b0384166004820152602401610356565b5f805f846001600160a01b03168460405161199b9190611d8f565b5f604051808303815f865af19150503d805f81146119d4576040519150601f19603f3d011682016040523d82523d5f602084013e6119d9565b606091505b5091509150818015611a03575080511580611a03575080806020019051810190611a039190611ca6565b8015611a1857505f856001600160a01b03163b115b95945050505050565b6060610bdd83835f845f80856001600160a01b03168486604051611a459190611d8f565b5f6040518083038185875af1925050503d805f8114611a7f576040519150601f19603f3d011682016040523d82523d5f602084013e611a84565b606091505b5091509150611a94868383611a9e565b9695505050505050565b606082611ab357611aae82611afa565b610bdd565b8151158015611aca57506001600160a01b0384163b155b15611af357604051639996b31560e01b81526001600160a01b0385166004820152602401610356565b5080610bdd565b805115611b0a5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160a01b038116811461092e575f80fd5b6001600160601b038116811461092e575f80fd5b5f805f60608486031215611b5d575f80fd5b8335611b6881611b23565b92506020840135611b7881611b23565b91506040840135611b8881611b37565b809150509250925092565b5f8060408385031215611ba4575f80fd5b8235611baf81611b23565b91506020830135611bbf81611b37565b809150509250929050565b5f60208284031215611bda575f80fd5b8135610bdd81611b23565b5f805f805f805f60e0888a031215611bfb575f80fd5b8735611c0681611b23565b96506020880135611c1681611b23565b95506040880135611c2681611b37565b94506060880135611c3681611b23565b93506080880135611c4681611b37565b925060a0880135611c5681611b23565b915060c0880135611c6681611b37565b8091505092959891949750929550565b6001600160a01b0392909216825260ff16602082015260400190565b80518015158114611ca1575f80fd5b919050565b5f60208284031215611cb6575f80fd5b610bdd82611c92565b5f8085851115611ccd575f80fd5b83861115611cd9575f80fd5b5050820193919092039150565b80356001600160e01b03198116906004841015611d17576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f60208284031215611d6d575f80fd5b8151610bdd81611b37565b5f60208284031215611d88575f80fd5b5051919050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215611db6575f80fd5b611dbf83611c92565b9150602083015163ffffffff81168114611bbf575f80fdfea264697066735822122046de27d49edda3d40a5e3ca40dd889a7b79578248f2691a1835db774e183c89064736f6c634300081a0033",
674
+ "linkReferences": {
675
+ "contracts/shared/ContractLib.sol": {
676
+ "ContractLib": [
677
+ {
678
+ "length": 20,
679
+ "start": 91
680
+ }
681
+ ]
682
+ },
683
+ "contracts/type/Amount.sol": {
684
+ "AmountLib": [
685
+ {
686
+ "length": 20,
687
+ "start": 2752
688
+ },
689
+ {
690
+ "length": 20,
691
+ "start": 2891
692
+ },
693
+ {
694
+ "length": 20,
695
+ "start": 3030
696
+ },
697
+ {
698
+ "length": 20,
699
+ "start": 3959
700
+ },
701
+ {
702
+ "length": 20,
703
+ "start": 4088
704
+ },
705
+ {
706
+ "length": 20,
707
+ "start": 4389
708
+ },
709
+ {
710
+ "length": 20,
711
+ "start": 4558
712
+ },
713
+ {
714
+ "length": 20,
715
+ "start": 4890
716
+ },
717
+ {
718
+ "length": 20,
719
+ "start": 5057
720
+ },
721
+ {
722
+ "length": 20,
723
+ "start": 5422
724
+ },
725
+ {
726
+ "length": 20,
727
+ "start": 5748
728
+ },
729
+ {
730
+ "length": 20,
731
+ "start": 6009
732
+ },
733
+ {
734
+ "length": 20,
735
+ "start": 6443
736
+ },
737
+ {
738
+ "length": 20,
739
+ "start": 6544
740
+ },
741
+ {
742
+ "length": 20,
743
+ "start": 7214
744
+ }
745
+ ]
746
+ },
747
+ "contracts/type/NftId.sol": {
748
+ "NftIdLib": [
749
+ {
750
+ "length": 20,
751
+ "start": 421
752
+ }
753
+ ]
754
+ }
755
+ },
756
+ "deployedLinkReferences": {
757
+ "contracts/type/Amount.sol": {
758
+ "AmountLib": [
759
+ {
760
+ "length": 20,
761
+ "start": 1738
762
+ },
763
+ {
764
+ "length": 20,
765
+ "start": 1877
766
+ },
767
+ {
768
+ "length": 20,
769
+ "start": 2016
770
+ },
771
+ {
772
+ "length": 20,
773
+ "start": 2945
774
+ },
775
+ {
776
+ "length": 20,
777
+ "start": 3074
778
+ },
779
+ {
780
+ "length": 20,
781
+ "start": 3375
782
+ },
783
+ {
784
+ "length": 20,
785
+ "start": 3544
786
+ },
787
+ {
788
+ "length": 20,
789
+ "start": 3876
790
+ },
791
+ {
792
+ "length": 20,
793
+ "start": 4043
794
+ },
795
+ {
796
+ "length": 20,
797
+ "start": 4408
798
+ },
799
+ {
800
+ "length": 20,
801
+ "start": 4734
802
+ },
803
+ {
804
+ "length": 20,
805
+ "start": 4995
806
+ },
807
+ {
808
+ "length": 20,
809
+ "start": 5429
810
+ },
811
+ {
812
+ "length": 20,
813
+ "start": 5530
814
+ },
815
+ {
816
+ "length": 20,
817
+ "start": 6200
818
+ }
819
+ ]
820
+ }
821
+ }
96
822
  }