@etherisc/gif-next 0.0.2-fe88ad7-208 → 0.0.2-ff8087d-237

Sign up to get free protection for your applications and to get access to all the features.
Files changed (378) hide show
  1. package/README.md +8 -13
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +4 -0
  3. package/artifacts/contracts/components/Component.sol/Component.json +873 -0
  4. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +1 -1
  5. package/artifacts/contracts/components/Distribution.sol/Distribution.json +903 -202
  6. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +4 -0
  7. package/artifacts/contracts/components/{BaseComponent.sol/BaseComponent.json → IComponent.sol/IComponent.json} +237 -83
  8. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  9. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +879 -31
  10. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  11. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +879 -59
  12. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  13. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +720 -16
  14. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  15. package/artifacts/contracts/components/Pool.sol/Pool.json +760 -195
  16. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  17. package/artifacts/contracts/components/Product.sol/Product.json +564 -141
  18. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +1 -1
  19. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +15 -15
  20. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  21. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +69 -79
  22. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +1 -1
  23. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +5 -0
  24. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  25. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +1474 -483
  26. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +248 -218
  28. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  29. package/artifacts/contracts/instance/Instance.sol/Instance.json +1152 -794
  30. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +1 -1
  31. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +462 -179
  32. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  33. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +414 -267
  34. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  35. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +482 -346
  36. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  37. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +355 -91
  38. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +1 -1
  39. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +11 -40
  40. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +4 -0
  41. package/artifacts/contracts/instance/base/{ComponentServiceBase.sol/ComponentServiceBase.json → ComponentService.sol/ComponentService.json} +263 -164
  42. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  43. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  44. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  45. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +40 -10
  46. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  47. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +36 -11
  48. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  49. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +58 -75
  50. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  51. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  52. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
  53. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  54. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  55. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  56. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
  57. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
  58. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  59. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +1124 -0
  60. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  61. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +688 -0
  62. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +1 -1
  63. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +641 -303
  64. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  65. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +343 -79
  66. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +4 -0
  67. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +1384 -0
  68. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  69. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +752 -0
  70. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +1 -1
  71. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +1434 -280
  72. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  73. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +469 -73
  74. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  75. package/artifacts/contracts/instance/service/{IComponentOwnerService.sol/IComponentOwnerService.json → IApplicationService.sol/IApplicationService.json} +342 -189
  76. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +1 -1
  77. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +310 -249
  78. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +4 -0
  79. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +743 -0
  80. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  81. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +757 -144
  82. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  83. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +262 -275
  84. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
  85. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +703 -125
  86. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
  87. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +71 -165
  88. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +1 -1
  89. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +632 -344
  90. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  91. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +367 -91
  92. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
  93. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +1119 -224
  94. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  95. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +361 -73
  96. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
  97. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +297 -210
  98. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  99. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +298 -78
  100. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  101. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
  102. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  103. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +117 -5
  104. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  105. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +99 -217
  106. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  107. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
  108. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  109. package/artifacts/contracts/registry/Registry.sol/Registry.json +131 -27
  110. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +1 -1
  111. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +18 -18
  112. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  113. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +205 -250
  114. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  115. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +287 -81
  116. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  117. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +81 -68
  118. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  119. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +138 -50
  120. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +1 -1
  121. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  122. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  123. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  124. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +27 -29
  125. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  126. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +189 -0
  127. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  128. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +8 -34
  129. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  130. package/artifacts/contracts/{experiment/inheritance/IA.sol/ISharedA.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +15 -17
  131. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  132. package/artifacts/contracts/shared/IService.sol/IService.json +71 -165
  133. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  134. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +2 -152
  135. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  136. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +107 -27
  137. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  138. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +302 -0
  139. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  140. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +283 -63
  141. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  142. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +116 -51
  143. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  144. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
  145. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  146. package/artifacts/contracts/shared/Service.sol/Service.json +173 -153
  147. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  148. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +24 -6
  149. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  150. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  151. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  152. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +2 -152
  153. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  154. package/artifacts/contracts/test/TestFee.sol/TestFee.json +2 -2
  155. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  156. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +116 -51
  157. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  158. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +6 -6
  159. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  160. package/artifacts/contracts/test/TestService.sol/TestService.json +191 -203
  161. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  162. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  163. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
  164. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  165. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +8 -190
  166. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
  167. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  168. package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +4 -0
  169. package/artifacts/contracts/types/Amount.sol/AmountLib.json +281 -0
  170. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  171. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -2
  172. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  173. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  174. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +179 -0
  175. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  176. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +2 -2
  177. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  178. package/artifacts/contracts/types/Fee.sol/FeeLib.json +74 -19
  179. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
  180. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +2 -2
  181. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  182. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +17 -4
  183. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  184. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +2 -2
  185. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +1 -1
  186. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  187. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  188. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  189. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +209 -0
  190. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +1 -1
  191. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +23 -4
  192. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +1 -1
  193. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +2 -2
  194. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
  195. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +2 -2
  196. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
  197. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -0
  198. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  199. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  200. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  201. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +38 -7
  202. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +1 -1
  203. package/artifacts/contracts/types/UFixed.sol/MathLib.json +2 -2
  204. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +1 -1
  205. package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +2 -2
  206. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  207. package/artifacts/contracts/types/Version.sol/VersionLib.json +2 -2
  208. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  209. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +2 -2
  210. package/contracts/components/Component.sol +272 -0
  211. package/contracts/components/Distribution.sol +204 -82
  212. package/contracts/components/IComponent.sol +90 -0
  213. package/contracts/components/IDistributionComponent.sol +44 -17
  214. package/contracts/components/IPoolComponent.sol +90 -42
  215. package/contracts/components/IProductComponent.sol +15 -9
  216. package/contracts/components/Pool.sol +217 -186
  217. package/contracts/components/Product.sol +246 -166
  218. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +2 -12
  219. package/contracts/instance/BundleManager.sol +17 -20
  220. package/contracts/instance/Cloneable.sol +7 -2
  221. package/contracts/instance/IInstance.sol +67 -25
  222. package/contracts/instance/IInstanceService.sol +34 -11
  223. package/contracts/instance/Instance.sol +158 -116
  224. package/contracts/instance/InstanceAccessManager.sol +389 -165
  225. package/contracts/instance/InstanceReader.sol +87 -36
  226. package/contracts/instance/InstanceService.sol +295 -161
  227. package/contracts/instance/InstanceServiceManager.sol +1 -1
  228. package/contracts/instance/ObjectManager.sol +10 -29
  229. package/contracts/instance/base/ComponentService.sol +130 -0
  230. package/contracts/instance/base/KeyValueStore.sol +13 -36
  231. package/contracts/instance/base/Lifecycle.sol +26 -6
  232. package/contracts/instance/module/IAccess.sol +22 -16
  233. package/contracts/instance/module/IBundle.sol +8 -5
  234. package/contracts/instance/module/IComponents.sol +41 -0
  235. package/contracts/instance/module/IDistribution.sol +3 -0
  236. package/contracts/instance/module/IPolicy.sol +43 -11
  237. package/contracts/instance/module/ISetup.sol +7 -20
  238. package/contracts/instance/service/ApplicationService.sol +356 -0
  239. package/contracts/instance/service/ApplicationServiceManager.sol +35 -0
  240. package/contracts/instance/service/BundleService.sol +244 -119
  241. package/contracts/instance/service/BundleServiceManager.sol +1 -1
  242. package/contracts/instance/service/ClaimService.sol +443 -0
  243. package/contracts/instance/service/ClaimServiceManager.sol +35 -0
  244. package/contracts/instance/service/DistributionService.sol +360 -41
  245. package/contracts/instance/service/DistributionServiceManager.sol +1 -1
  246. package/contracts/instance/service/IApplicationService.sol +79 -0
  247. package/contracts/instance/service/IBundleService.sol +93 -20
  248. package/contracts/instance/service/IClaimService.sol +90 -0
  249. package/contracts/instance/service/IDistributionService.sol +89 -0
  250. package/contracts/instance/service/IPolicyService.sol +44 -51
  251. package/contracts/instance/service/IPoolService.sol +97 -3
  252. package/contracts/instance/service/PolicyService.sol +233 -364
  253. package/contracts/instance/service/PolicyServiceManager.sol +2 -2
  254. package/contracts/instance/service/PoolService.sol +319 -40
  255. package/contracts/instance/service/PoolServiceManager.sol +1 -1
  256. package/contracts/instance/service/ProductService.sol +90 -50
  257. package/contracts/instance/service/ProductServiceManager.sol +2 -2
  258. package/contracts/registry/ChainNft.sol +8 -0
  259. package/contracts/registry/IRegistry.sol +18 -8
  260. package/contracts/registry/IRegistryService.sol +21 -13
  261. package/contracts/registry/ITransferInterceptor.sol +1 -0
  262. package/contracts/registry/Registry.sol +142 -71
  263. package/contracts/registry/RegistryAccessManager.sol +31 -25
  264. package/contracts/registry/RegistryService.sol +93 -134
  265. package/contracts/registry/RegistryServiceManager.sol +13 -13
  266. package/contracts/registry/ReleaseManager.sol +103 -127
  267. package/contracts/registry/TokenRegistry.sol +19 -13
  268. package/contracts/shared/ERC165.sol +14 -12
  269. package/contracts/shared/INftOwnable.sol +11 -10
  270. package/contracts/shared/IPolicyHolder.sol +40 -0
  271. package/contracts/shared/IRegisterable.sol +4 -6
  272. package/contracts/shared/IRegistryLinked.sol +11 -0
  273. package/contracts/shared/IService.sol +6 -4
  274. package/contracts/shared/IVersionable.sol +4 -47
  275. package/contracts/shared/NftOwnable.sol +64 -80
  276. package/contracts/shared/PolicyHolder.sol +94 -0
  277. package/contracts/shared/ProxyManager.sol +100 -25
  278. package/contracts/shared/Registerable.sol +24 -39
  279. package/contracts/shared/RegistryLinked.sol +43 -0
  280. package/contracts/shared/Service.sol +36 -22
  281. package/contracts/shared/TokenHandler.sol +14 -6
  282. package/contracts/shared/Versionable.sol +4 -92
  283. package/contracts/test/TestRegisterable.sol +1 -1
  284. package/contracts/test/TestService.sol +1 -1
  285. package/contracts/types/Amount.sol +109 -0
  286. package/contracts/types/Blocknumber.sol +1 -0
  287. package/contracts/types/ClaimId.sol +75 -0
  288. package/contracts/types/DistributorType.sol +2 -2
  289. package/contracts/types/Fee.sol +17 -8
  290. package/contracts/types/NftId.sol +8 -0
  291. package/contracts/types/ObjectType.sol +11 -6
  292. package/contracts/types/PayoutId.sol +82 -0
  293. package/contracts/types/Referral.sol +4 -0
  294. package/contracts/types/RoleId.sol +18 -11
  295. package/contracts/types/Seconds.sol +54 -0
  296. package/contracts/types/StateId.sol +7 -2
  297. package/contracts/types/Timestamp.sol +18 -13
  298. package/contracts/types/UFixed.sol +1 -0
  299. package/contracts/types/Version.sol +1 -0
  300. package/package.json +3 -3
  301. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  302. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  303. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +0 -397
  304. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
  305. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
  306. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
  307. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
  308. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
  309. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
  310. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  311. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  312. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  313. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  314. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  315. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  316. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  317. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  318. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  319. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  320. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  321. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  322. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  323. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  324. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  325. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  326. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  327. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  328. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  329. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  330. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  331. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  332. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  333. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  334. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  335. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  336. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  337. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  338. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  339. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  340. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  341. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  342. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  343. package/artifacts/contracts/instance/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  344. package/artifacts/contracts/instance/IInstanceBase.sol/IInstanceBase.json +0 -448
  345. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  346. package/artifacts/contracts/instance/InstanceBase.sol/InstanceBase.json +0 -763
  347. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  348. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  349. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
  350. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  351. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -814
  352. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  353. package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.dbg.json +0 -4
  354. package/artifacts/contracts/shared/RegisterableUpgradable.sol/RegisterableUpgradable.json +0 -442
  355. package/contracts/components/BaseComponent.sol +0 -159
  356. package/contracts/components/IBaseComponent.sol +0 -34
  357. package/contracts/experiment/cloning/Cloner.sol +0 -47
  358. package/contracts/experiment/errors/Require.sol +0 -38
  359. package/contracts/experiment/errors/Revert.sol +0 -44
  360. package/contracts/experiment/inheritance/A.sol +0 -53
  361. package/contracts/experiment/inheritance/B.sol +0 -28
  362. package/contracts/experiment/inheritance/C.sol +0 -34
  363. package/contracts/experiment/inheritance/IA.sol +0 -13
  364. package/contracts/experiment/inheritance/IB.sol +0 -10
  365. package/contracts/experiment/inheritance/IC.sol +0 -12
  366. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  367. package/contracts/experiment/statemachine/ISM.sol +0 -25
  368. package/contracts/experiment/statemachine/SM.sol +0 -57
  369. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  370. package/contracts/experiment/types/TypeA.sol +0 -47
  371. package/contracts/experiment/types/TypeB.sol +0 -29
  372. package/contracts/instance/IInstanceBase.sol +0 -26
  373. package/contracts/instance/InstanceBase.sol +0 -41
  374. package/contracts/instance/base/ComponentServiceBase.sol +0 -82
  375. package/contracts/instance/base/IInstanceBase.sol +0 -23
  376. package/contracts/instance/service/ComponentOwnerService.sol +0 -315
  377. package/contracts/instance/service/IComponentOwnerService.sol +0 -20
  378. package/contracts/shared/RegisterableUpgradable.sol +0 -16
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e3835a250be08f0bfa602231335aca3a.json"
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e3835a250be08f0bfa602231335aca3a.json"
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
4
  }
@@ -161,8 +161,8 @@
161
161
  "type": "function"
162
162
  }
163
163
  ],
164
- "bytecode": "0x608060405234801561001057600080fd5b50610544806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636a3dc0ee1161005b5780636a3dc0ee146100ed57806389818c3c1461011057806389d5976814610135578063e038c6251461014857600080fd5b80630f40f5951461008257806312cf04de146100a357806364d4e5d8146100b6575b600080fd5b61008a61015b565b60405162ffffff90911681526020015b60405180910390f35b61008a6100b13660046103ce565b6101cf565b6100c96100c436600461040e565b61025c565b6040805160ff9485168152928416602084015292169181019190915260600161009a565b6101006100fb36600461042b565b6102e8565b604051901515815260200161009a565b61012361011e366004610464565b6102fd565b60405160ff909116815260200161009a565b61010061014336600461042b565b61037d565b61012361015636600461040e565b61038f565b600073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af41580156101a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ca919061047d565b905090565b604051632efe011360e01b815260048101849052602481018390526044810182905260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af4158015610230573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610254919061047d565b949350505050565b6040516324d3888d60e11b815262ffffff821660048201526000908190819073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__906349a7111a90602401606060405180830381865af41580156102b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102db91906104b0565b9250925092509193909250565b600062ffffff808316908416115b9392505050565b604051632392b61b60e21b815260ff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90638e4ad86c906024015b602060405180830381865af4158015610353573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037791906104f3565b92915050565b600062ffffff808416908316146102f6565b60405163c9e66e2960e01b815262ffffff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401610336565b6000806000606084860312156103e357600080fd5b505081359360208301359350604090920135919050565b62ffffff8116811461040b57600080fd5b50565b60006020828403121561042057600080fd5b81356102f6816103fa565b6000806040838503121561043e57600080fd5b8235610449816103fa565b91506020830135610459816103fa565b809150509250929050565b60006020828403121561047657600080fd5b5035919050565b60006020828403121561048f57600080fd5b81516102f6816103fa565b805160ff811681146104ab57600080fd5b919050565b6000806000606084860312156104c557600080fd5b6104ce8461049a565b92506104dc6020850161049a565b91506104ea6040850161049a565b90509250925092565b60006020828403121561050557600080fd5b6102f68261049a56fea26469706673582212206e529886c2f8439684af8bc60c7d7762a41afcce6ceef512fc94376b5fe8009e64736f6c63430008140033",
165
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80636a3dc0ee1161005b5780636a3dc0ee146100ed57806389818c3c1461011057806389d5976814610135578063e038c6251461014857600080fd5b80630f40f5951461008257806312cf04de146100a357806364d4e5d8146100b6575b600080fd5b61008a61015b565b60405162ffffff90911681526020015b60405180910390f35b61008a6100b13660046103ce565b6101cf565b6100c96100c436600461040e565b61025c565b6040805160ff9485168152928416602084015292169181019190915260600161009a565b6101006100fb36600461042b565b6102e8565b604051901515815260200161009a565b61012361011e366004610464565b6102fd565b60405160ff909116815260200161009a565b61010061014336600461042b565b61037d565b61012361015636600461040e565b61038f565b600073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af41580156101a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ca919061047d565b905090565b604051632efe011360e01b815260048101849052602481018390526044810182905260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af4158015610230573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610254919061047d565b949350505050565b6040516324d3888d60e11b815262ffffff821660048201526000908190819073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__906349a7111a90602401606060405180830381865af41580156102b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102db91906104b0565b9250925092509193909250565b600062ffffff808316908416115b9392505050565b604051632392b61b60e21b815260ff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90638e4ad86c906024015b602060405180830381865af4158015610353573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037791906104f3565b92915050565b600062ffffff808416908316146102f6565b60405163c9e66e2960e01b815262ffffff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401610336565b6000806000606084860312156103e357600080fd5b505081359360208301359350604090920135919050565b62ffffff8116811461040b57600080fd5b50565b60006020828403121561042057600080fd5b81356102f6816103fa565b6000806040838503121561043e57600080fd5b8235610449816103fa565b91506020830135610459816103fa565b809150509250929050565b60006020828403121561047657600080fd5b5035919050565b60006020828403121561048f57600080fd5b81516102f6816103fa565b805160ff811681146104ab57600080fd5b919050565b6000806000606084860312156104c557600080fd5b6104ce8461049a565b92506104dc6020850161049a565b91506104ea6040850161049a565b90509250925092565b60006020828403121561050557600080fd5b6102f68261049a56fea26469706673582212206e529886c2f8439684af8bc60c7d7762a41afcce6ceef512fc94376b5fe8009e64736f6c63430008140033",
164
+ "bytecode": "0x608060405234801561001057600080fd5b50610544806100206000396000f3fe608060405234801561001057600080fd5b506004361061007d5760003560e01c80636a3dc0ee1161005b5780636a3dc0ee146100ed57806389818c3c1461011057806389d5976814610135578063e038c6251461014857600080fd5b80630f40f5951461008257806312cf04de146100a357806364d4e5d8146100b6575b600080fd5b61008a61015b565b60405162ffffff90911681526020015b60405180910390f35b61008a6100b13660046103ce565b6101cf565b6100c96100c436600461040e565b61025c565b6040805160ff9485168152928416602084015292169181019190915260600161009a565b6101006100fb36600461042b565b6102e8565b604051901515815260200161009a565b61012361011e366004610464565b6102fd565b60405160ff909116815260200161009a565b61010061014336600461042b565b61037d565b61012361015636600461040e565b61038f565b600073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af41580156101a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ca919061047d565b905090565b604051632efe011360e01b815260048101849052602481018390526044810182905260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af4158015610230573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610254919061047d565b949350505050565b6040516324d3888d60e11b815262ffffff821660048201526000908190819073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__906349a7111a90602401606060405180830381865af41580156102b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102db91906104b0565b9250925092509193909250565b600062ffffff808316908416115b9392505050565b604051632392b61b60e21b815260ff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90638e4ad86c906024015b602060405180830381865af4158015610353573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037791906104f3565b92915050565b600062ffffff808416908316146102f6565b60405163c9e66e2960e01b815262ffffff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401610336565b6000806000606084860312156103e357600080fd5b505081359360208301359350604090920135919050565b62ffffff8116811461040b57600080fd5b50565b60006020828403121561042057600080fd5b81356102f6816103fa565b6000806040838503121561043e57600080fd5b8235610449816103fa565b91506020830135610459816103fa565b809150509250929050565b60006020828403121561047657600080fd5b5035919050565b60006020828403121561048f57600080fd5b81516102f6816103fa565b805160ff811681146104ab57600080fd5b919050565b6000806000606084860312156104c557600080fd5b6104ce8461049a565b92506104dc6020850161049a565b91506104ea6040850161049a565b90509250925092565b60006020828403121561050557600080fd5b6102f68261049a56fea26469706673582212208286c3481b0874449419d947ca5683c89309e4a9c9e994977c831577dc4dd3a164736f6c63430008140033",
165
+ "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061007d5760003560e01c80636a3dc0ee1161005b5780636a3dc0ee146100ed57806389818c3c1461011057806389d5976814610135578063e038c6251461014857600080fd5b80630f40f5951461008257806312cf04de146100a357806364d4e5d8146100b6575b600080fd5b61008a61015b565b60405162ffffff90911681526020015b60405180910390f35b61008a6100b13660046103ce565b6101cf565b6100c96100c436600461040e565b61025c565b6040805160ff9485168152928416602084015292169181019190915260600161009a565b6101006100fb36600461042b565b6102e8565b604051901515815260200161009a565b61012361011e366004610464565b6102fd565b60405160ff909116815260200161009a565b61010061014336600461042b565b61037d565b61012361015636600461040e565b61038f565b600073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af41580156101a6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101ca919061047d565b905090565b604051632efe011360e01b815260048101849052602481018390526044810182905260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af4158015610230573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610254919061047d565b949350505050565b6040516324d3888d60e11b815262ffffff821660048201526000908190819073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__906349a7111a90602401606060405180830381865af41580156102b7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102db91906104b0565b9250925092509193909250565b600062ffffff808316908416115b9392505050565b604051632392b61b60e21b815260ff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90638e4ad86c906024015b602060405180830381865af4158015610353573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061037791906104f3565b92915050565b600062ffffff808416908316146102f6565b60405163c9e66e2960e01b815262ffffff8216600482015260009073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401610336565b6000806000606084860312156103e357600080fd5b505081359360208301359350604090920135919050565b62ffffff8116811461040b57600080fd5b50565b60006020828403121561042057600080fd5b81356102f6816103fa565b6000806040838503121561043e57600080fd5b8235610449816103fa565b91506020830135610459816103fa565b809150509250929050565b60006020828403121561047657600080fd5b5035919050565b60006020828403121561048f57600080fd5b81516102f6816103fa565b805160ff811681146104ab57600080fd5b919050565b6000806000606084860312156104c557600080fd5b6104ce8461049a565b92506104dc6020850161049a565b91506104ea6040850161049a565b90509250925092565b60006020828403121561050557600080fd5b6102f68261049a56fea26469706673582212208286c3481b0874449419d947ca5683c89309e4a9c9e994977c831577dc4dd3a164736f6c63430008140033",
166
166
  "linkReferences": {
167
167
  "contracts/types/Version.sol": {
168
168
  "VersionLib": [
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e3835a250be08f0bfa602231335aca3a.json"
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
4
  }
@@ -26,44 +26,6 @@
26
26
  "name": "Initialized",
27
27
  "type": "event"
28
28
  },
29
- {
30
- "anonymous": false,
31
- "inputs": [
32
- {
33
- "indexed": false,
34
- "internalType": "Version",
35
- "name": "version",
36
- "type": "uint24"
37
- },
38
- {
39
- "indexed": false,
40
- "internalType": "address",
41
- "name": "implementation",
42
- "type": "address"
43
- },
44
- {
45
- "indexed": false,
46
- "internalType": "address",
47
- "name": "activatedBy",
48
- "type": "address"
49
- }
50
- ],
51
- "name": "LogVersionableInitialized",
52
- "type": "event"
53
- },
54
- {
55
- "inputs": [],
56
- "name": "getInitializedVersion",
57
- "outputs": [
58
- {
59
- "internalType": "uint64",
60
- "name": "",
61
- "type": "uint64"
62
- }
63
- ],
64
- "stateMutability": "view",
65
- "type": "function"
66
- },
67
29
  {
68
30
  "inputs": [],
69
31
  "name": "getVersion",
@@ -79,89 +41,6 @@
79
41
  },
80
42
  {
81
43
  "inputs": [
82
- {
83
- "internalType": "uint256",
84
- "name": "idx",
85
- "type": "uint256"
86
- }
87
- ],
88
- "name": "getVersion",
89
- "outputs": [
90
- {
91
- "internalType": "Version",
92
- "name": "",
93
- "type": "uint24"
94
- }
95
- ],
96
- "stateMutability": "view",
97
- "type": "function"
98
- },
99
- {
100
- "inputs": [],
101
- "name": "getVersionCount",
102
- "outputs": [
103
- {
104
- "internalType": "uint256",
105
- "name": "",
106
- "type": "uint256"
107
- }
108
- ],
109
- "stateMutability": "view",
110
- "type": "function"
111
- },
112
- {
113
- "inputs": [
114
- {
115
- "internalType": "Version",
116
- "name": "_version",
117
- "type": "uint24"
118
- }
119
- ],
120
- "name": "getVersionInfo",
121
- "outputs": [
122
- {
123
- "components": [
124
- {
125
- "internalType": "Version",
126
- "name": "version",
127
- "type": "uint24"
128
- },
129
- {
130
- "internalType": "address",
131
- "name": "implementation",
132
- "type": "address"
133
- },
134
- {
135
- "internalType": "address",
136
- "name": "activatedBy",
137
- "type": "address"
138
- },
139
- {
140
- "internalType": "Timestamp",
141
- "name": "activatedAt",
142
- "type": "uint40"
143
- },
144
- {
145
- "internalType": "Blocknumber",
146
- "name": "activatedIn",
147
- "type": "uint32"
148
- }
149
- ],
150
- "internalType": "struct IVersionable.VersionInfo",
151
- "name": "",
152
- "type": "tuple"
153
- }
154
- ],
155
- "stateMutability": "view",
156
- "type": "function"
157
- },
158
- {
159
- "inputs": [
160
- {
161
- "internalType": "address",
162
- "name": "implementation",
163
- "type": "address"
164
- },
165
44
  {
166
45
  "internalType": "address",
167
46
  "name": "activatedBy",
@@ -173,112 +52,51 @@
173
52
  "type": "bytes"
174
53
  }
175
54
  ],
176
- "name": "initialize",
55
+ "name": "initializeVersionable",
177
56
  "outputs": [],
178
57
  "stateMutability": "nonpayable",
179
58
  "type": "function"
180
59
  },
181
60
  {
182
61
  "inputs": [
183
- {
184
- "internalType": "Version",
185
- "name": "_version",
186
- "type": "uint24"
187
- }
188
- ],
189
- "name": "isInitialized",
190
- "outputs": [
191
- {
192
- "internalType": "bool",
193
- "name": "",
194
- "type": "bool"
195
- }
196
- ],
197
- "stateMutability": "view",
198
- "type": "function"
199
- },
200
- {
201
- "inputs": [
202
- {
203
- "internalType": "address",
204
- "name": "implementation",
205
- "type": "address"
206
- },
207
- {
208
- "internalType": "address",
209
- "name": "activatedBy",
210
- "type": "address"
211
- },
212
62
  {
213
63
  "internalType": "bytes",
214
64
  "name": "data",
215
65
  "type": "bytes"
216
66
  }
217
67
  ],
218
- "name": "upgrade",
68
+ "name": "upgradeVersionable",
219
69
  "outputs": [],
220
70
  "stateMutability": "nonpayable",
221
71
  "type": "function"
222
72
  }
223
73
  ],
224
- "bytecode": "0x608060405234801561001057600080fd5b5061001961001e565b6100d0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161561006e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100cd5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610bd8806100df6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a745e3df1161005b578063a745e3df1461021a578063b3c650151461022f578063b88da75914610250578063cf7a1d771461026357600080fd5b80630d8e6e2c1461008d5780634d459c90146100ae5780634f421333146101c7578063946dfcfe146101ea575b600080fd5b610095610276565b60405162ffffff90911681526020015b60405180910390f35b61016a6100bc366004610984565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152600080516020610b8383398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a0016100a5565b6101da6101d5366004610984565b610300565b60405190151581526020016100a5565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed901546040519081526020016100a5565b61022d6102283660046109da565b6103b3565b005b610237610510565b60405167ffffffffffffffff90911681526020016100a5565b61009561025e366004610aac565b610532565b61022d6102713660046109da565b610583565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156102d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102fb9190610ac5565b905090565b600080600080516020610b8383398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610388573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ac9190610ae2565b1192915050565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c6103d5610276565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610415573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104399190610afb565b600080516020610b638339815191528054600160401b900460ff168061046d5750805467ffffffffffffffff808416911610155b1561048b5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff191667ffffffffffffffff831617600160401b1781556104b7858561068e565b6104c083610933565b805460ff60401b1916815560405167ffffffffffffffff831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b60006102fb600080516020610b638339815191525467ffffffffffffffff1690565b6000600080516020610b83833981519152600101828154811061055757610557610b25565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b600080516020610b638339815191528054600160401b810460ff16159067ffffffffffffffff166000811580156105b75750825b905060008267ffffffffffffffff1660011480156105d45750303b155b9050811580156105e2575080155b156106005760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561062a57845460ff60401b1916600160401b1785555b610634888861068e565b61063e8787610933565b831561068457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610696610937565b600080516020610b8383398151915260006106c7600080516020610b638339815191525467ffffffffffffffff1690565b905060006106d3610276565b90508167ffffffffffffffff166001036107015760028301805462ffffff191662ffffff8316179055610753565b600283015462ffffff908116908216116107535760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b604482015260640160405180910390fd5b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015610807573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082b9190610b3b565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf68906105019083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6100885b600080516020610b6383398151915254600160401b900460ff1661096e57604051631afcd79f60e31b815260040160405180910390fd5b565b62ffffff8116811461098157600080fd5b50565b60006020828403121561099657600080fd5b81356109a181610970565b9392505050565b80356001600160a01b03811681146109bf57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109ef57600080fd5b6109f8846109a8565b9250610a06602085016109a8565b9150604084013567ffffffffffffffff80821115610a2357600080fd5b818601915086601f830112610a3757600080fd5b813581811115610a4957610a496109c4565b604051601f8201601f19908116603f01168101908382118183101715610a7157610a716109c4565b81604052828152896020848701011115610a8a57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b600060208284031215610abe57600080fd5b5035919050565b600060208284031215610ad757600080fd5b81516109a181610970565b600060208284031215610af457600080fd5b5051919050565b600060208284031215610b0d57600080fd5b815167ffffffffffffffff811681146109a157600080fd5b634e487b7160e01b600052603260045260246000fd5b600060208284031215610b4d57600080fd5b815164ffffffffff811681146109a157600080fdfef0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a264697066735822122036c2436a636388b08a2d568ba9d2982ad1e4c316093f1ecd22f3561fa8794c0264736f6c63430008140033",
225
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a745e3df1161005b578063a745e3df1461021a578063b3c650151461022f578063b88da75914610250578063cf7a1d771461026357600080fd5b80630d8e6e2c1461008d5780634d459c90146100ae5780634f421333146101c7578063946dfcfe146101ea575b600080fd5b610095610276565b60405162ffffff90911681526020015b60405180910390f35b61016a6100bc366004610984565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152600080516020610b8383398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a0016100a5565b6101da6101d5366004610984565b610300565b60405190151581526020016100a5565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed901546040519081526020016100a5565b61022d6102283660046109da565b6103b3565b005b610237610510565b60405167ffffffffffffffff90911681526020016100a5565b61009561025e366004610aac565b610532565b61022d6102713660046109da565b610583565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156102d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102fb9190610ac5565b905090565b600080600080516020610b8383398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610388573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ac9190610ae2565b1192915050565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c6103d5610276565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610415573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104399190610afb565b600080516020610b638339815191528054600160401b900460ff168061046d5750805467ffffffffffffffff808416911610155b1561048b5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff191667ffffffffffffffff831617600160401b1781556104b7858561068e565b6104c083610933565b805460ff60401b1916815560405167ffffffffffffffff831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b60006102fb600080516020610b638339815191525467ffffffffffffffff1690565b6000600080516020610b83833981519152600101828154811061055757610557610b25565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b600080516020610b638339815191528054600160401b810460ff16159067ffffffffffffffff166000811580156105b75750825b905060008267ffffffffffffffff1660011480156105d45750303b155b9050811580156105e2575080155b156106005760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561062a57845460ff60401b1916600160401b1785555b610634888861068e565b61063e8787610933565b831561068457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610696610937565b600080516020610b8383398151915260006106c7600080516020610b638339815191525467ffffffffffffffff1690565b905060006106d3610276565b90508167ffffffffffffffff166001036107015760028301805462ffffff191662ffffff8316179055610753565b600283015462ffffff908116908216116107535760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b604482015260640160405180910390fd5b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015610807573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082b9190610b3b565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf68906105019083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6100885b600080516020610b6383398151915254600160401b900460ff1661096e57604051631afcd79f60e31b815260040160405180910390fd5b565b62ffffff8116811461098157600080fd5b50565b60006020828403121561099657600080fd5b81356109a181610970565b9392505050565b80356001600160a01b03811681146109bf57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109ef57600080fd5b6109f8846109a8565b9250610a06602085016109a8565b9150604084013567ffffffffffffffff80821115610a2357600080fd5b818601915086601f830112610a3757600080fd5b813581811115610a4957610a496109c4565b604051601f8201601f19908116603f01168101908382118183101715610a7157610a716109c4565b81604052828152896020848701011115610a8a57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b600060208284031215610abe57600080fd5b5035919050565b600060208284031215610ad757600080fd5b81516109a181610970565b600060208284031215610af457600080fd5b5051919050565b600060208284031215610b0d57600080fd5b815167ffffffffffffffff811681146109a157600080fd5b634e487b7160e01b600052603260045260246000fd5b600060208284031215610b4d57600080fd5b815164ffffffffff811681146109a157600080fdfef0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a264697066735822122036c2436a636388b08a2d568ba9d2982ad1e4c316093f1ecd22f3561fa8794c0264736f6c63430008140033",
74
+ "bytecode": "0x608060405234801561001057600080fd5b5061001961001e565b6100d0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161561006e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100cd5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6105a3806100df6000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c80630d8e6e2c14610046578063329d6e741461006657806349bb9e4b1461007b575b600080fd5b61004e61008e565b60405162ffffff909116815260200160405180910390f35b61007961007436600461047e565b610118565b005b6100796100893660046104bb565b61027a565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156100ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101139190610517565b905090565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c61013a61008e565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801561017a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019e9190610543565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b900460ff16806101e45750805467ffffffffffffffff808416911610155b156102025760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff191667ffffffffffffffff831617600160401b17815561022d8361038c565b805460ff60401b1916815560405167ffffffffffffffff831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156102c05750825b905060008267ffffffffffffffff1660011480156102dd5750303b155b9050811580156102eb575080155b156103095760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561033357845460ff60401b1916600160401b1785555b61033d878761038c565b831561038357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005461004190600160401b900460ff166103d957604051631afcd79f60e31b815260040160405180910390fd5b565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261040257600080fd5b813567ffffffffffffffff8082111561041d5761041d6103db565b604051601f8301601f19908116603f01168101908282118183101715610445576104456103db565b8160405283815286602085880101111561045e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60006020828403121561049057600080fd5b813567ffffffffffffffff8111156104a757600080fd5b6104b3848285016103f1565b949350505050565b600080604083850312156104ce57600080fd5b82356001600160a01b03811681146104e557600080fd5b9150602083013567ffffffffffffffff81111561050157600080fd5b61050d858286016103f1565b9150509250929050565b60006020828403121561052957600080fd5b815162ffffff8116811461053c57600080fd5b9392505050565b60006020828403121561055557600080fd5b815167ffffffffffffffff8116811461053c57600080fdfea26469706673582212202d9c7665b4615e0c8c31254efc15a85f41535f0273041f41de0ae96c8bd1d58364736f6c63430008140033",
75
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100415760003560e01c80630d8e6e2c14610046578063329d6e741461006657806349bb9e4b1461007b575b600080fd5b61004e61008e565b60405162ffffff909116815260200160405180910390f35b61007961007436600461047e565b610118565b005b6100796100893660046104bb565b61027a565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156100ef573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101139190610517565b905090565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c61013a61008e565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801561017a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061019e9190610543565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b900460ff16806101e45750805467ffffffffffffffff808416911610155b156102025760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff191667ffffffffffffffff831617600160401b17815561022d8361038c565b805460ff60401b1916815560405167ffffffffffffffff831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff166000811580156102c05750825b905060008267ffffffffffffffff1660011480156102dd5750303b155b9050811580156102eb575080155b156103095760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561033357845460ff60401b1916600160401b1785555b61033d878761038c565b831561038357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005461004190600160401b900460ff166103d957604051631afcd79f60e31b815260040160405180910390fd5b565b634e487b7160e01b600052604160045260246000fd5b600082601f83011261040257600080fd5b813567ffffffffffffffff8082111561041d5761041d6103db565b604051601f8301601f19908116603f01168101908282118183101715610445576104456103db565b8160405283815286602085880101111561045e57600080fd5b836020870160208301376000602085830101528094505050505092915050565b60006020828403121561049057600080fd5b813567ffffffffffffffff8111156104a757600080fd5b6104b3848285016103f1565b949350505050565b600080604083850312156104ce57600080fd5b82356001600160a01b03811681146104e557600080fd5b9150602083013567ffffffffffffffff81111561050157600080fd5b61050d858286016103f1565b9150509250929050565b60006020828403121561052957600080fd5b815162ffffff8116811461053c57600080fd5b9392505050565b60006020828403121561055557600080fd5b815167ffffffffffffffff8116811461053c57600080fdfea26469706673582212202d9c7665b4615e0c8c31254efc15a85f41535f0273041f41de0ae96c8bd1d58364736f6c63430008140033",
226
76
  "linkReferences": {
227
- "contracts/types/Blocknumber.sol": {
228
- "BlocknumberLib": [
229
- {
230
- "length": 20,
231
- "start": 1069
232
- }
233
- ]
234
- },
235
- "contracts/types/Timestamp.sol": {
236
- "TimestampLib": [
237
- {
238
- "length": 20,
239
- "start": 2220
240
- }
241
- ]
242
- },
243
77
  "contracts/types/Version.sol": {
244
78
  "VersionLib": [
245
79
  {
246
80
  "length": 20,
247
- "start": 892
81
+ "start": 404
248
82
  },
249
83
  {
250
84
  "length": 20,
251
- "start": 1172
85
+ "start": 505
252
86
  }
253
87
  ]
254
88
  }
255
89
  },
256
90
  "deployedLinkReferences": {
257
- "contracts/types/Blocknumber.sol": {
258
- "BlocknumberLib": [
259
- {
260
- "length": 20,
261
- "start": 846
262
- }
263
- ]
264
- },
265
- "contracts/types/Timestamp.sol": {
266
- "TimestampLib": [
267
- {
268
- "length": 20,
269
- "start": 1997
270
- }
271
- ]
272
- },
273
91
  "contracts/types/Version.sol": {
274
92
  "VersionLib": [
275
93
  {
276
94
  "length": 20,
277
- "start": 669
95
+ "start": 181
278
96
  },
279
97
  {
280
98
  "length": 20,
281
- "start": 949
99
+ "start": 282
282
100
  }
283
101
  ]
284
102
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e3835a250be08f0bfa602231335aca3a.json"
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e3835a250be08f0bfa602231335aca3a.json"
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
4
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
+ }
@@ -0,0 +1,281 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "AmountLib",
4
+ "sourceName": "contracts/types/Amount.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "uint256",
10
+ "name": "amount",
11
+ "type": "uint256"
12
+ }
13
+ ],
14
+ "name": "ErrorAmountLibValueTooBig",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "Amount",
21
+ "name": "a1",
22
+ "type": "uint96"
23
+ },
24
+ {
25
+ "internalType": "Amount",
26
+ "name": "a2",
27
+ "type": "uint96"
28
+ }
29
+ ],
30
+ "name": "add",
31
+ "outputs": [
32
+ {
33
+ "internalType": "Amount",
34
+ "name": "",
35
+ "type": "uint96"
36
+ }
37
+ ],
38
+ "stateMutability": "pure",
39
+ "type": "function"
40
+ },
41
+ {
42
+ "inputs": [
43
+ {
44
+ "internalType": "Amount",
45
+ "name": "amount1",
46
+ "type": "uint96"
47
+ },
48
+ {
49
+ "internalType": "Amount",
50
+ "name": "amount2",
51
+ "type": "uint96"
52
+ }
53
+ ],
54
+ "name": "eq",
55
+ "outputs": [
56
+ {
57
+ "internalType": "bool",
58
+ "name": "",
59
+ "type": "bool"
60
+ }
61
+ ],
62
+ "stateMutability": "pure",
63
+ "type": "function"
64
+ },
65
+ {
66
+ "inputs": [
67
+ {
68
+ "internalType": "Amount",
69
+ "name": "amount",
70
+ "type": "uint96"
71
+ }
72
+ ],
73
+ "name": "eqz",
74
+ "outputs": [
75
+ {
76
+ "internalType": "bool",
77
+ "name": "",
78
+ "type": "bool"
79
+ }
80
+ ],
81
+ "stateMutability": "pure",
82
+ "type": "function"
83
+ },
84
+ {
85
+ "inputs": [
86
+ {
87
+ "internalType": "Amount",
88
+ "name": "a1",
89
+ "type": "uint96"
90
+ },
91
+ {
92
+ "internalType": "Amount",
93
+ "name": "a2",
94
+ "type": "uint96"
95
+ }
96
+ ],
97
+ "name": "gt",
98
+ "outputs": [
99
+ {
100
+ "internalType": "bool",
101
+ "name": "",
102
+ "type": "bool"
103
+ }
104
+ ],
105
+ "stateMutability": "pure",
106
+ "type": "function"
107
+ },
108
+ {
109
+ "inputs": [
110
+ {
111
+ "internalType": "Amount",
112
+ "name": "amount",
113
+ "type": "uint96"
114
+ }
115
+ ],
116
+ "name": "gtz",
117
+ "outputs": [
118
+ {
119
+ "internalType": "bool",
120
+ "name": "",
121
+ "type": "bool"
122
+ }
123
+ ],
124
+ "stateMutability": "pure",
125
+ "type": "function"
126
+ },
127
+ {
128
+ "inputs": [
129
+ {
130
+ "internalType": "Amount",
131
+ "name": "a1",
132
+ "type": "uint96"
133
+ },
134
+ {
135
+ "internalType": "Amount",
136
+ "name": "a2",
137
+ "type": "uint96"
138
+ }
139
+ ],
140
+ "name": "lt",
141
+ "outputs": [
142
+ {
143
+ "internalType": "bool",
144
+ "name": "",
145
+ "type": "bool"
146
+ }
147
+ ],
148
+ "stateMutability": "pure",
149
+ "type": "function"
150
+ },
151
+ {
152
+ "inputs": [],
153
+ "name": "max",
154
+ "outputs": [
155
+ {
156
+ "internalType": "Amount",
157
+ "name": "",
158
+ "type": "uint96"
159
+ }
160
+ ],
161
+ "stateMutability": "pure",
162
+ "type": "function"
163
+ },
164
+ {
165
+ "inputs": [
166
+ {
167
+ "internalType": "Amount",
168
+ "name": "a1",
169
+ "type": "uint96"
170
+ },
171
+ {
172
+ "internalType": "Amount",
173
+ "name": "a2",
174
+ "type": "uint96"
175
+ }
176
+ ],
177
+ "name": "sub",
178
+ "outputs": [
179
+ {
180
+ "internalType": "Amount",
181
+ "name": "",
182
+ "type": "uint96"
183
+ }
184
+ ],
185
+ "stateMutability": "pure",
186
+ "type": "function"
187
+ },
188
+ {
189
+ "inputs": [
190
+ {
191
+ "internalType": "uint256",
192
+ "name": "amount",
193
+ "type": "uint256"
194
+ }
195
+ ],
196
+ "name": "toAmount",
197
+ "outputs": [
198
+ {
199
+ "internalType": "Amount",
200
+ "name": "",
201
+ "type": "uint96"
202
+ }
203
+ ],
204
+ "stateMutability": "pure",
205
+ "type": "function"
206
+ },
207
+ {
208
+ "inputs": [
209
+ {
210
+ "internalType": "Amount",
211
+ "name": "amount",
212
+ "type": "uint96"
213
+ }
214
+ ],
215
+ "name": "toInt",
216
+ "outputs": [
217
+ {
218
+ "internalType": "uint256",
219
+ "name": "",
220
+ "type": "uint256"
221
+ }
222
+ ],
223
+ "stateMutability": "pure",
224
+ "type": "function"
225
+ },
226
+ {
227
+ "inputs": [
228
+ {
229
+ "internalType": "Amount",
230
+ "name": "amount",
231
+ "type": "uint96"
232
+ }
233
+ ],
234
+ "name": "toUFixed",
235
+ "outputs": [
236
+ {
237
+ "internalType": "UFixed",
238
+ "name": "",
239
+ "type": "uint256"
240
+ }
241
+ ],
242
+ "stateMutability": "pure",
243
+ "type": "function"
244
+ },
245
+ {
246
+ "inputs": [],
247
+ "name": "zero",
248
+ "outputs": [
249
+ {
250
+ "internalType": "Amount",
251
+ "name": "",
252
+ "type": "uint96"
253
+ }
254
+ ],
255
+ "stateMutability": "pure",
256
+ "type": "function"
257
+ }
258
+ ],
259
+ "bytecode": "0x61041461003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100be5760003560e01c806355205f0f1161007b57806355205f0f146101945780636ac5db19146101a757806398058c4c146101b4578063bc1b392d146101d3578063c4cade9d146101da578063c79eaa22146101f957600080fd5b806308dc895e146100c357806309a81d62146100f0578063274acb351461011f57806330b8415f1461014a5780634c41dd961461016657806352694ee814610179575b600080fd5b6100dd6100d1366004610301565b6001600160601b031690565b6040519081526020015b60405180910390f35b61010f6100fe36600461031c565b6001600160601b0390811691161090565b60405190151581526020016100e7565b61013261012d36600461031c565b61020c565b6040516001600160601b0390911681526020016100e7565b61010f610158366004610301565b6001600160601b0316151590565b61013261017436600461034f565b61021f565b61010f610187366004610301565b6001600160601b03161590565b6100dd6101a2366004610301565b610254565b6001600160601b03610132565b61010f6101c236600461031c565b6001600160601b0390811691161190565b6000610132565b61010f6101e836600461031c565b6001600160601b0390811691161490565b61013261020736600461031c565b6102d9565b6000610218828461037e565b9392505050565b60006001600160601b0382111561025057604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b038216600482015260009073__$5ac3274b8cf1e01ea223bf093142af05b0$__906345ebb61e90602401602060405180830381865af41580156102af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d391906103a5565b92915050565b600061021882846103be565b80356001600160601b03811681146102fc57600080fd5b919050565b60006020828403121561031357600080fd5b610218826102e5565b6000806040838503121561032f57600080fd5b610338836102e5565b9150610346602084016102e5565b90509250929050565b60006020828403121561036157600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b6001600160601b0381811683821601908082111561039e5761039e610368565b5092915050565b6000602082840312156103b757600080fd5b5051919050565b6001600160601b0382811682821603908082111561039e5761039e61036856fea264697066735822122014ebe00565e941bfc67da35901d0bc01bc1c29fb466dbc573b9b8ec0f1c3390964736f6c63430008140033",
260
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100be5760003560e01c806355205f0f1161007b57806355205f0f146101945780636ac5db19146101a757806398058c4c146101b4578063bc1b392d146101d3578063c4cade9d146101da578063c79eaa22146101f957600080fd5b806308dc895e146100c357806309a81d62146100f0578063274acb351461011f57806330b8415f1461014a5780634c41dd961461016657806352694ee814610179575b600080fd5b6100dd6100d1366004610301565b6001600160601b031690565b6040519081526020015b60405180910390f35b61010f6100fe36600461031c565b6001600160601b0390811691161090565b60405190151581526020016100e7565b61013261012d36600461031c565b61020c565b6040516001600160601b0390911681526020016100e7565b61010f610158366004610301565b6001600160601b0316151590565b61013261017436600461034f565b61021f565b61010f610187366004610301565b6001600160601b03161590565b6100dd6101a2366004610301565b610254565b6001600160601b03610132565b61010f6101c236600461031c565b6001600160601b0390811691161190565b6000610132565b61010f6101e836600461031c565b6001600160601b0390811691161490565b61013261020736600461031c565b6102d9565b6000610218828461037e565b9392505050565b60006001600160601b0382111561025057604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b038216600482015260009073__$5ac3274b8cf1e01ea223bf093142af05b0$__906345ebb61e90602401602060405180830381865af41580156102af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d391906103a5565b92915050565b600061021882846103be565b80356001600160601b03811681146102fc57600080fd5b919050565b60006020828403121561031357600080fd5b610218826102e5565b6000806040838503121561032f57600080fd5b610338836102e5565b9150610346602084016102e5565b90509250929050565b60006020828403121561036157600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b6001600160601b0381811683821601908082111561039e5761039e610368565b5092915050565b6000602082840312156103b757600080fd5b5051919050565b6001600160601b0382811682821603908082111561039e5761039e61036856fea264697066735822122014ebe00565e941bfc67da35901d0bc01bc1c29fb466dbc573b9b8ec0f1c3390964736f6c63430008140033",
261
+ "linkReferences": {
262
+ "contracts/types/UFixed.sol": {
263
+ "UFixedLib": [
264
+ {
265
+ "length": 20,
266
+ "start": 687
267
+ }
268
+ ]
269
+ }
270
+ },
271
+ "deployedLinkReferences": {
272
+ "contracts/types/UFixed.sol": {
273
+ "UFixedLib": [
274
+ {
275
+ "length": 20,
276
+ "start": 629
277
+ }
278
+ ]
279
+ }
280
+ }
281
+ }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e3835a250be08f0bfa602231335aca3a.json"
3
+ "buildInfo": "../../../build-info/e28d745f6ca3cff1f09ff773f5e44053.json"
4
4
  }