@etherisc/gif-next 0.0.2-e6d2794-419 → 0.0.2-e79d227-681

Sign up to get free protection for your applications and to get access to all the features.
Files changed (505) hide show
  1. package/README.md +58 -9
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  3. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +105 -65
  4. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +4 -0
  5. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.json +24 -0
  6. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +2 -2
  8. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +67 -11
  10. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +60 -32
  13. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +40 -3
  15. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  16. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +19 -0
  17. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.dbg.json +4 -0
  18. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.json +1196 -0
  19. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  20. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +68 -5
  21. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  22. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +188 -369
  23. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  24. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +82 -22
  25. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +141 -314
  27. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +323 -223
  29. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +140 -104
  31. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +132 -115
  33. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +172 -31
  35. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +4 -0
  36. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.json +22 -0
  37. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +4 -0
  38. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +1429 -0
  39. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +4 -0
  40. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +502 -0
  41. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +4 -0
  42. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +1979 -0
  43. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +4 -0
  44. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +470 -0
  45. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +4 -0
  46. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.json +376 -0
  47. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
  48. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1430 -0
  49. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
  50. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1177 -0
  51. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
  52. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1606 -0
  53. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
  54. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +2281 -0
  55. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  56. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +808 -0
  57. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  58. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +104 -36
  59. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  60. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +56 -91
  61. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  62. package/artifacts/contracts/instance/Instance.sol/Instance.json +130 -130
  63. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  64. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +180 -140
  65. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  66. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +59 -86
  67. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  68. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +697 -146
  69. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  70. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +121 -250
  71. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  72. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +99 -87
  73. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  74. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +340 -263
  75. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
  76. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +810 -0
  77. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  78. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  79. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  80. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  81. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  82. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  83. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +46 -5
  84. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  85. package/artifacts/contracts/instance/base/{ObjectManager.sol/ObjectManager.json → ObjectSet.sol/ObjectSet.json} +6 -6
  86. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  87. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  88. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  89. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  90. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  91. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  92. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  93. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  94. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  95. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +138 -332
  96. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  97. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +84 -24
  98. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  99. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  100. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +107 -103
  101. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  102. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +43 -9
  103. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  104. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +114 -300
  105. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  106. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +147 -191
  107. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  108. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +119 -83
  109. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  110. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +160 -383
  111. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  112. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +114 -22
  113. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  114. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +430 -204
  115. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  116. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +160 -92
  117. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  118. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +244 -25
  119. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  120. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +118 -168
  121. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  122. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +422 -215
  123. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  124. package/artifacts/contracts/pool/Pool.sol/Pool.json +126 -366
  125. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  126. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +569 -403
  127. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  128. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +139 -87
  129. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  130. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +124 -181
  131. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  132. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +89 -89
  133. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  134. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +168 -319
  135. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  136. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +82 -22
  137. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  138. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +311 -187
  139. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  140. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +139 -103
  141. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  142. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +68 -7
  143. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  144. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +176 -6
  145. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  146. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +344 -120
  147. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  148. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +114 -85
  149. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  150. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +155 -116
  151. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  152. package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +31 -2
  153. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  154. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +447 -317
  155. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  156. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +138 -94
  157. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  158. package/artifacts/contracts/product/PricingService.sol/PricingService.json +218 -307
  159. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  160. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +117 -117
  161. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  162. package/artifacts/contracts/product/Product.sol/Product.json +166 -317
  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 +346 -22
  171. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  172. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +42 -146
  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 +573 -80
  177. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  178. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +298 -145
  179. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  180. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +94 -284
  181. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  182. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +91 -75
  183. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  184. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +47 -6
  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 +1 -1
  188. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +66 -8
  189. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  190. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  191. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  192. package/artifacts/contracts/shared/Component.sol/Component.json +73 -274
  193. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  194. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +606 -258
  195. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  196. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +168 -106
  197. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  198. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +47 -112
  199. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +4 -0
  200. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +488 -0
  201. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
  202. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
  203. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
  204. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
  205. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  206. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +66 -77
  207. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  208. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +541 -19
  209. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  210. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +96 -103
  211. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  212. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +36 -0
  213. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  214. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +36 -0
  215. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  216. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +16 -0
  217. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  218. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +15 -47
  219. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  220. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +29 -0
  221. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  222. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  223. package/artifacts/contracts/shared/IService.sol/IService.json +29 -0
  224. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
  225. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
  226. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  227. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +106 -303
  228. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  229. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +42 -1
  230. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  231. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +42 -1
  232. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  233. package/artifacts/contracts/shared/{NftIdSetManager.sol/NftIdSetManager.json → NftIdSet.sol/NftIdSet.json} +4 -4
  234. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  235. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +22 -57
  236. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  237. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +19 -141
  238. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  239. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +58 -89
  240. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  241. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
  242. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  243. package/artifacts/contracts/shared/Service.sol/Service.json +47 -112
  244. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  245. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +697 -25
  246. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +4 -0
  247. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +395 -0
  248. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  249. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +172 -0
  250. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  251. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +111 -114
  252. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  253. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +29 -21
  254. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
  255. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +73 -93
  256. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  257. package/artifacts/contracts/staking/Staking.sol/Staking.json +190 -379
  258. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
  259. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +46 -5
  260. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  261. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +118 -99
  262. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  263. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -11
  264. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  265. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +87 -165
  266. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  267. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +95 -79
  268. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  269. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +177 -131
  270. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  271. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +59 -23
  272. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  273. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  274. package/artifacts/contracts/type/Amount.sol/AmountLib.json +61 -8
  275. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  276. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
  277. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  278. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +28 -4
  279. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  280. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  281. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  282. package/artifacts/contracts/type/Fee.sol/FeeLib.json +7 -2
  283. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  284. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  285. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +4 -0
  286. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
  287. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  288. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +23 -4
  289. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  290. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  291. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  292. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  293. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  294. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +19 -19
  295. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  296. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  297. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  298. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  299. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  300. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +99 -5
  301. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  302. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +2 -2
  303. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  304. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +50 -2
  305. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  306. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  307. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  308. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +15 -2
  309. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  310. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  311. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -4
  312. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  313. package/artifacts/contracts/type/UFixed.sol/MathLib.json +9 -3
  314. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  315. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +52 -2
  316. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  317. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  318. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  319. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
  320. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  321. package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
  322. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  323. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +618 -0
  324. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  325. package/artifacts/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +3 -3
  326. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  327. package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
  328. package/contracts/authorization/AccessAdmin.sol +83 -58
  329. package/contracts/authorization/Authorization.sol +111 -40
  330. package/contracts/authorization/IAccess.sol +1 -0
  331. package/contracts/authorization/IAccessAdmin.sol +4 -3
  332. package/contracts/authorization/IAuthorization.sol +13 -7
  333. package/contracts/authorization/IServiceAuthorization.sol +3 -1
  334. package/contracts/authorization/ReleaseAccessManager.sol +38 -0
  335. package/contracts/authorization/ServiceAuthorization.sol +26 -10
  336. package/contracts/distribution/BasicDistribution.sol +8 -18
  337. package/contracts/distribution/BasicDistributionAuthorization.sol +6 -2
  338. package/contracts/distribution/Distribution.sol +33 -32
  339. package/contracts/distribution/DistributionService.sol +142 -90
  340. package/contracts/distribution/DistributionServiceManager.sol +8 -11
  341. package/contracts/distribution/IDistributionComponent.sol +9 -5
  342. package/contracts/distribution/IDistributionService.sol +23 -8
  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/BundleSet.sol +130 -0
  354. package/contracts/instance/IInstance.sol +20 -34
  355. package/contracts/instance/IInstanceService.sol +11 -29
  356. package/contracts/instance/Instance.sol +44 -57
  357. package/contracts/instance/InstanceAdmin.sol +48 -36
  358. package/contracts/instance/InstanceAuthorizationV3.sol +50 -35
  359. package/contracts/instance/InstanceReader.sol +199 -25
  360. package/contracts/instance/InstanceService.sol +96 -115
  361. package/contracts/instance/InstanceServiceManager.sol +8 -13
  362. package/contracts/instance/InstanceStore.sol +12 -1
  363. package/contracts/instance/RiskSet.sol +119 -0
  364. package/contracts/instance/base/ObjectLifecycle.sol +9 -4
  365. package/contracts/instance/base/ObjectSet.sol +78 -0
  366. package/contracts/instance/module/IBundle.sol +1 -1
  367. package/contracts/instance/module/IComponents.sol +11 -13
  368. package/contracts/instance/module/IDistribution.sol +0 -1
  369. package/contracts/instance/module/IPolicy.sol +26 -25
  370. package/contracts/instance/module/IRisk.sol +1 -0
  371. package/contracts/mock/Dip.sol +1 -1
  372. package/contracts/oracle/BasicOracle.sol +0 -1
  373. package/contracts/oracle/IOracleComponent.sol +2 -1
  374. package/contracts/oracle/IOracleService.sol +2 -1
  375. package/contracts/oracle/Oracle.sol +21 -22
  376. package/contracts/oracle/OracleService.sol +112 -81
  377. package/contracts/oracle/OracleServiceManager.sol +8 -11
  378. package/contracts/pool/BasicPool.sol +38 -27
  379. package/contracts/pool/BasicPoolAuthorization.sol +22 -3
  380. package/contracts/pool/BundleService.sol +228 -101
  381. package/contracts/pool/BundleServiceManager.sol +8 -11
  382. package/contracts/pool/IBundleService.sol +33 -17
  383. package/contracts/pool/IPoolComponent.sol +20 -10
  384. package/contracts/pool/IPoolService.sol +53 -50
  385. package/contracts/pool/Pool.sol +150 -116
  386. package/contracts/pool/PoolService.sol +335 -175
  387. package/contracts/pool/PoolServiceManager.sol +6 -9
  388. package/contracts/product/ApplicationService.sol +82 -77
  389. package/contracts/product/ApplicationServiceManager.sol +6 -6
  390. package/contracts/product/BasicProduct.sol +11 -44
  391. package/contracts/product/BasicProductAuthorization.sol +2 -0
  392. package/contracts/product/ClaimService.sol +318 -146
  393. package/contracts/product/ClaimServiceManager.sol +6 -6
  394. package/contracts/product/IApplicationService.sol +6 -2
  395. package/contracts/product/IClaimService.sol +31 -7
  396. package/contracts/product/IPolicyService.sol +46 -34
  397. package/contracts/product/IPricingService.sol +10 -10
  398. package/contracts/product/IProductComponent.sol +24 -4
  399. package/contracts/product/{IProductService.sol → IRiskService.sol} +1 -1
  400. package/contracts/product/PolicyService.sol +515 -257
  401. package/contracts/product/PolicyServiceManager.sol +6 -9
  402. package/contracts/product/PricingService.sol +54 -54
  403. package/contracts/product/PricingServiceManager.sol +5 -8
  404. package/contracts/product/Product.sol +126 -91
  405. package/contracts/product/{ProductService.sol → RiskService.sol} +27 -44
  406. package/contracts/product/RiskServiceManager.sol +39 -0
  407. package/contracts/registry/ChainNft.sol +68 -38
  408. package/contracts/registry/IRegistry.sol +71 -19
  409. package/contracts/registry/IRegistryService.sol +3 -10
  410. package/contracts/registry/ITransferInterceptor.sol +1 -2
  411. package/contracts/registry/Registry.sol +362 -215
  412. package/contracts/registry/RegistryAdmin.sol +161 -75
  413. package/contracts/registry/RegistryService.sol +39 -64
  414. package/contracts/registry/RegistryServiceManager.sol +4 -4
  415. package/contracts/registry/ReleaseLifecycle.sol +6 -3
  416. package/contracts/registry/ReleaseRegistry.sol +485 -0
  417. package/contracts/registry/ServiceAuthorizationV3.sol +22 -47
  418. package/contracts/registry/TokenRegistry.sol +2 -2
  419. package/contracts/shared/Component.sol +54 -118
  420. package/contracts/shared/ComponentService.sol +399 -174
  421. package/contracts/shared/ComponentServiceManager.sol +10 -7
  422. package/contracts/shared/ComponentVerifyingService.sol +28 -17
  423. package/contracts/shared/ContractLib.sol +224 -0
  424. package/contracts/shared/IComponent.sol +10 -13
  425. package/contracts/shared/IComponentService.sol +50 -22
  426. package/contracts/shared/IInstanceLinkedComponent.sol +8 -17
  427. package/contracts/shared/ILifecycle.sol +3 -1
  428. package/contracts/shared/INftOwnable.sol +2 -0
  429. package/contracts/shared/IPolicyHolder.sol +12 -22
  430. package/contracts/shared/IRegisterable.sol +11 -0
  431. package/contracts/shared/IService.sol +1 -1
  432. package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +3 -3
  433. package/contracts/shared/InstanceLinkedComponent.sol +82 -28
  434. package/contracts/shared/KeyValueStore.sol +1 -1
  435. package/contracts/shared/Lifecycle.sol +15 -4
  436. package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
  437. package/contracts/shared/NftOwnable.sol +29 -9
  438. package/contracts/shared/PolicyHolder.sol +17 -57
  439. package/contracts/shared/Registerable.sol +19 -11
  440. package/contracts/shared/RegistryLinked.sol +9 -14
  441. package/contracts/shared/Service.sol +23 -22
  442. package/contracts/shared/TokenHandler.sol +358 -27
  443. package/contracts/shared/TokenHandlerDeployerLib.sol +20 -0
  444. package/contracts/staking/IStaking.sol +12 -7
  445. package/contracts/staking/IStakingService.sol +12 -8
  446. package/contracts/staking/StakeManagerLib.sol +18 -25
  447. package/contracts/staking/Staking.sol +54 -62
  448. package/contracts/staking/StakingManager.sol +10 -12
  449. package/contracts/staking/StakingReader.sol +23 -20
  450. package/contracts/staking/StakingService.sol +65 -36
  451. package/contracts/staking/StakingServiceManager.sol +4 -4
  452. package/contracts/staking/StakingStore.sol +12 -22
  453. package/contracts/staking/TargetManagerLib.sol +7 -3
  454. package/contracts/type/Amount.sol +27 -5
  455. package/contracts/type/Blocknumber.sol +7 -1
  456. package/contracts/type/ClaimId.sol +6 -1
  457. package/contracts/type/Key32.sol +2 -2
  458. package/contracts/type/Key32Set.sol +62 -0
  459. package/contracts/type/NftId.sol +7 -0
  460. package/contracts/type/ObjectType.sol +21 -18
  461. package/contracts/type/PayoutId.sol +10 -10
  462. package/contracts/type/Referral.sol +1 -0
  463. package/contracts/type/RiskId.sol +30 -4
  464. package/contracts/type/RoleId.sol +0 -12
  465. package/contracts/type/Seconds.sol +21 -1
  466. package/contracts/type/StateId.sol +15 -1
  467. package/contracts/type/Timestamp.sol +11 -1
  468. package/contracts/type/UFixed.sol +33 -10
  469. package/contracts/type/Version.sol +3 -1
  470. package/contracts/{shared → upgradeability}/ProxyManager.sol +71 -38
  471. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  472. package/contracts/{shared → upgradeability}/Versionable.sol +2 -2
  473. package/package.json +6 -5
  474. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +0 -4
  475. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +0 -290
  476. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +0 -4
  477. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +0 -390
  478. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  479. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -703
  480. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  481. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
  482. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
  483. package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -708
  484. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  485. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -702
  486. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  487. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1159
  488. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
  489. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
  490. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  491. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +0 -4
  492. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +0 -39
  493. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
  494. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  495. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -617
  496. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  497. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  498. package/contracts/authorization/IModuleAuthorization.sol +0 -21
  499. package/contracts/authorization/ModuleAuthorization.sol +0 -78
  500. package/contracts/instance/BundleManager.sol +0 -126
  501. package/contracts/instance/base/ObjectManager.sol +0 -79
  502. package/contracts/product/ProductServiceManager.sol +0 -42
  503. package/contracts/registry/ReleaseManager.sol +0 -487
  504. package/contracts/shared/InitializableCustom.sol +0 -177
  505. /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
@@ -7,7 +7,69 @@
7
7
  "inputs": [
8
8
  {
9
9
  "internalType": "RiskId",
10
- "name": "id",
10
+ "name": "a",
11
+ "type": "bytes8"
12
+ },
13
+ {
14
+ "internalType": "RiskId",
15
+ "name": "b",
16
+ "type": "bytes8"
17
+ }
18
+ ],
19
+ "name": "eq",
20
+ "outputs": [
21
+ {
22
+ "internalType": "bool",
23
+ "name": "isSame",
24
+ "type": "bool"
25
+ }
26
+ ],
27
+ "stateMutability": "pure",
28
+ "type": "function"
29
+ },
30
+ {
31
+ "inputs": [
32
+ {
33
+ "internalType": "RiskId",
34
+ "name": "a",
35
+ "type": "bytes8"
36
+ }
37
+ ],
38
+ "name": "eqz",
39
+ "outputs": [
40
+ {
41
+ "internalType": "bool",
42
+ "name": "isZero",
43
+ "type": "bool"
44
+ }
45
+ ],
46
+ "stateMutability": "pure",
47
+ "type": "function"
48
+ },
49
+ {
50
+ "inputs": [
51
+ {
52
+ "internalType": "RiskId",
53
+ "name": "riskId",
54
+ "type": "bytes8"
55
+ }
56
+ ],
57
+ "name": "toInt",
58
+ "outputs": [
59
+ {
60
+ "internalType": "uint256",
61
+ "name": "",
62
+ "type": "uint256"
63
+ }
64
+ ],
65
+ "stateMutability": "pure",
66
+ "type": "function"
67
+ },
68
+ {
69
+ "inputs": [
70
+ {
71
+ "internalType": "RiskId",
72
+ "name": "riskId",
11
73
  "type": "bytes8"
12
74
  }
13
75
  ],
@@ -41,6 +103,25 @@
41
103
  "stateMutability": "pure",
42
104
  "type": "function"
43
105
  },
106
+ {
107
+ "inputs": [
108
+ {
109
+ "internalType": "KeyId",
110
+ "name": "keyId",
111
+ "type": "bytes31"
112
+ }
113
+ ],
114
+ "name": "toRiskId",
115
+ "outputs": [
116
+ {
117
+ "internalType": "RiskId",
118
+ "name": "riskId",
119
+ "type": "bytes8"
120
+ }
121
+ ],
122
+ "stateMutability": "pure",
123
+ "type": "function"
124
+ },
44
125
  {
45
126
  "inputs": [
46
127
  {
@@ -59,16 +140,29 @@
59
140
  ],
60
141
  "stateMutability": "pure",
61
142
  "type": "function"
143
+ },
144
+ {
145
+ "inputs": [],
146
+ "name": "zero",
147
+ "outputs": [
148
+ {
149
+ "internalType": "RiskId",
150
+ "name": "",
151
+ "type": "bytes8"
152
+ }
153
+ ],
154
+ "stateMutability": "pure",
155
+ "type": "function"
62
156
  }
63
157
  ],
64
- "bytecode": "0x61030b610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061004a575f3560e01c80632cf96bf91461004e5780634a7485ba1461008157806355ee6275146100ad575b5f80fd5b61006961005c366004610194565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009461008f3660046101d6565b6100ce565b6040516001600160c01b03199091168152602001610078565b6100c06100bb366004610194565b6100fd565b604051908152602001610078565b5f816040516020016100e09190610289565b604051602081830303815290604052805190602001209050919050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60186001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561016a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018e91906102be565b92915050565b5f602082840312156101a4575f80fd5b81356001600160c01b0319811681146101bb575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156101e6575f80fd5b813567ffffffffffffffff8111156101fc575f80fd5b8201601f8101841361020c575f80fd5b803567ffffffffffffffff811115610226576102266101c2565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610255576102556101c2565b60405281815282820160200186101561026c575f80fd5b816020840160208301375f91810160200191909152949350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f602082840312156102ce575f80fd5b505191905056fea2646970667358221220d319051755ff18c421a69e008595bedfbb92ff17bdae96bceb167843d9186e3064736f6c634300081a0033",
65
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061004a575f3560e01c80632cf96bf91461004e5780634a7485ba1461008157806355ee6275146100ad575b5f80fd5b61006961005c366004610194565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b61009461008f3660046101d6565b6100ce565b6040516001600160c01b03199091168152602001610078565b6100c06100bb366004610194565b6100fd565b604051908152602001610078565b5f816040516020016100e09190610289565b604051602081830303815290604052805190602001209050919050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60186001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561016a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018e91906102be565b92915050565b5f602082840312156101a4575f80fd5b81356001600160c01b0319811681146101bb575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156101e6575f80fd5b813567ffffffffffffffff8111156101fc575f80fd5b8201601f8101841361020c575f80fd5b803567ffffffffffffffff811115610226576102266101c2565b604051601f8201601f19908116603f0116810167ffffffffffffffff81118282101715610255576102556101c2565b60405281815282820160200186101561026c575f80fd5b816020840160208301375f91810160200191909152949350505050565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f602082840312156102ce575f80fd5b505191905056fea2646970667358221220d319051755ff18c421a69e008595bedfbb92ff17bdae96bceb167843d9186e3064736f6c634300081a0033",
158
+ "bytecode": "0x610469610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c806370a021ec1161006357806370a021ec146101275780637bc32ecf1461014a5780638b0d9ff01461016a578063bc1b392d1461017e575f80fd5b806301809eea146100945780632cf96bf9146100c55780634a7485ba146100f357806355ee627514610106575b5f80fd5b6100a76100a236600461028a565b610184565b6040516001600160c01b031990911681526020015b60405180910390f35b6100e06100d33660046102c2565b6001600160c01b03191690565b60405160ff1990911681526020016100bc565b6100a76101013660046102ef565b6101ab565b6101196101143660046102c2565b6101da565b6040519081526020016100bc565b61013a6101353660046103a2565b610271565b60405190151581526020016100bc565b61013a6101583660046102c2565b5f6001600160c01b031982161561026b565b6101196101783660046102c2565b60c01c90565b5f6100a7565b80680100000000000000006101998260c01c90565b106101a6576101a66103d3565b919050565b5f816040516020016101bd91906103e7565b604051602081830303815290604052805190602001209050919050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60196001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610247573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026b919061041c565b92915050565b5f6001600160c01b0319808416908316145b9392505050565b5f6020828403121561029a575f80fd5b813560ff1981168114610283575f80fd5b80356001600160c01b0319811681146101a6575f80fd5b5f602082840312156102d2575f80fd5b610283826102ab565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156102ff575f80fd5b813567ffffffffffffffff811115610315575f80fd5b8201601f81018413610325575f80fd5b803567ffffffffffffffff81111561033f5761033f6102db565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561036e5761036e6102db565b604052818152828201602001861015610385575f80fd5b816020840160208301375f91810160200191909152949350505050565b5f80604083850312156103b3575f80fd5b6103bc836102ab565b91506103ca602084016102ab565b90509250929050565b634e487b7160e01b5f52600160045260245ffd5b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f6020828403121561042c575f80fd5b505191905056fea2646970667358221220dd6d651a9aa3faf4ed5fc923b73100c85ea29b1616130ed09f5b6be60de5fdba64736f6c634300081a0033",
159
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c806370a021ec1161006357806370a021ec146101275780637bc32ecf1461014a5780638b0d9ff01461016a578063bc1b392d1461017e575f80fd5b806301809eea146100945780632cf96bf9146100c55780634a7485ba146100f357806355ee627514610106575b5f80fd5b6100a76100a236600461028a565b610184565b6040516001600160c01b031990911681526020015b60405180910390f35b6100e06100d33660046102c2565b6001600160c01b03191690565b60405160ff1990911681526020016100bc565b6100a76101013660046102ef565b6101ab565b6101196101143660046102c2565b6101da565b6040519081526020016100bc565b61013a6101353660046103a2565b610271565b60405190151581526020016100bc565b61013a6101583660046102c2565b5f6001600160c01b031982161561026b565b6101196101783660046102c2565b60c01c90565b5f6100a7565b80680100000000000000006101998260c01c90565b106101a6576101a66103d3565b919050565b5f816040516020016101bd91906103e7565b604051602081830303815290604052805190602001209050919050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60196001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610247573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026b919061041c565b92915050565b5f6001600160c01b0319808416908316145b9392505050565b5f6020828403121561029a575f80fd5b813560ff1981168114610283575f80fd5b80356001600160c01b0319811681146101a6575f80fd5b5f602082840312156102d2575f80fd5b610283826102ab565b634e487b7160e01b5f52604160045260245ffd5b5f602082840312156102ff575f80fd5b813567ffffffffffffffff811115610315575f80fd5b8201601f81018413610325575f80fd5b803567ffffffffffffffff81111561033f5761033f6102db565b604051601f8201601f19908116603f0116810167ffffffffffffffff8111828210171561036e5761036e6102db565b604052818152828201602001861015610385575f80fd5b816020840160208301375f91810160200191909152949350505050565b5f80604083850312156103b3575f80fd5b6103bc836102ab565b91506103ca602084016102ab565b90509250929050565b634e487b7160e01b5f52600160045260245ffd5b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b5f6020828403121561042c575f80fd5b505191905056fea2646970667358221220dd6d651a9aa3faf4ed5fc923b73100c85ea29b1616130ed09f5b6be60de5fdba64736f6c634300081a0033",
66
160
  "linkReferences": {
67
161
  "contracts/type/Key32.sol": {
68
162
  "Key32Lib": [
69
163
  {
70
164
  "length": 20,
71
- "start": 308
165
+ "start": 529
72
166
  }
73
167
  ]
74
168
  }
@@ -78,7 +172,7 @@
78
172
  "Key32Lib": [
79
173
  {
80
174
  "length": 20,
81
- "start": 256
175
+ "start": 477
82
176
  }
83
177
  ]
84
178
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -288,8 +288,8 @@
288
288
  "type": "function"
289
289
  }
290
290
  ],
291
- "bytecode": "0x610793610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610106575f3560e01c80638ed252d81161009e578063bc1b392d1161006e578063bc1b392d14610210578063ceaaf86b14610216578063dda777d314610220578063f37f38f014610233575f80fd5b80638ed252d8146101d8578063915f1dbb1461013b57806393328fb7146101eb578063a42e52e9146101f3575f80fd5b806367cb8ec1116100d957806367cb8ec1146101805780636d3d2a7e146101b257806376d7ed4e146101c55780637c3940bf1461015c575f80fd5b8063057182b41461010a57806346729cd21461013b578063545ce21c1461015c578063616f31cc1461016d575b5f80fd5b6101266101183660046105c7565b67ffffffffffffffff161590565b60405190151581526020015b60405180910390f35b610143606481565b60405167ffffffffffffffff9091168152602001610132565b61014361016a3660046105c7565b90565b61014361017b3660046105c7565b610254565b61019f61018e3660046105c7565b60081b68ffffffffffffffff001690565b60405160ff199091168152602001610132565b6101436101c03660046105f0565b61026b565b6101436101d33660046105f0565b6102ec565b6101436101e636600461060b565b61037a565b610143606381565b6101266102013660046105c7565b67ffffffffffffffff16151590565b5f610143565b610143620f424081565b61014361022e366004610642565b610412565b6102466102413660046105c7565b61051a565b604051908152602001610132565b5f61026561016a83620f4240610682565b92915050565b604051632b10f60d60e21b815260ff821660048201525f9073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156102bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e191906106a2565b6102659060646106c8565b604051632b10f60d60e21b815260ff821660048201525f9060639073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af4158015610341573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036591906106a2565b6103709060646106f2565b6102659190610714565b604051632b10f60d60e21b815260ff831660048201525f9061040b90839073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156103d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f691906106a2565b6104019060646106c8565b61016a9190610682565b9392505050565b604051632b10f60d60e21b815260ff821660048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af4158015610464573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104889190610733565b604051632b10f60d60e21b815260ff8516600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156104d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fc91906106a2565b6105079060646106f2565b6001600160601b031661040b919061074a565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60088085901b68ffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561058b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102659190610733565b67ffffffffffffffff811681146105c4575f80fd5b50565b5f602082840312156105d7575f80fd5b813561040b816105af565b60ff811681146105c4575f80fd5b5f60208284031215610600575f80fd5b813561040b816105e2565b5f806040838503121561061c575f80fd5b8235610627816105e2565b91506020830135610637816105af565b809150509250929050565b5f8060408385031215610653575f80fd5b823561065e816105e2565b91506020830135610637816105e2565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156102655761026561066e565b5f602082840312156106b2575f80fd5b81516001600160601b038116811461040b575f80fd5b67ffffffffffffffff81811683821602908116908181146106eb576106eb61066e565b5092915050565b6001600160601b0381811683821602908116908181146106eb576106eb61066e565b6001600160601b0381811683821601908111156102655761026561066e565b5f60208284031215610743575f80fd5b5051919050565b808201808211156102655761026561066e56fea2646970667358221220af70860c718be46615402f1a3909caf1fbe3db14f8376a833d91d6f416d1656764736f6c634300081a0033",
292
- "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610106575f3560e01c80638ed252d81161009e578063bc1b392d1161006e578063bc1b392d14610210578063ceaaf86b14610216578063dda777d314610220578063f37f38f014610233575f80fd5b80638ed252d8146101d8578063915f1dbb1461013b57806393328fb7146101eb578063a42e52e9146101f3575f80fd5b806367cb8ec1116100d957806367cb8ec1146101805780636d3d2a7e146101b257806376d7ed4e146101c55780637c3940bf1461015c575f80fd5b8063057182b41461010a57806346729cd21461013b578063545ce21c1461015c578063616f31cc1461016d575b5f80fd5b6101266101183660046105c7565b67ffffffffffffffff161590565b60405190151581526020015b60405180910390f35b610143606481565b60405167ffffffffffffffff9091168152602001610132565b61014361016a3660046105c7565b90565b61014361017b3660046105c7565b610254565b61019f61018e3660046105c7565b60081b68ffffffffffffffff001690565b60405160ff199091168152602001610132565b6101436101c03660046105f0565b61026b565b6101436101d33660046105f0565b6102ec565b6101436101e636600461060b565b61037a565b610143606381565b6101266102013660046105c7565b67ffffffffffffffff16151590565b5f610143565b610143620f424081565b61014361022e366004610642565b610412565b6102466102413660046105c7565b61051a565b604051908152602001610132565b5f61026561016a83620f4240610682565b92915050565b604051632b10f60d60e21b815260ff821660048201525f9073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156102bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e191906106a2565b6102659060646106c8565b604051632b10f60d60e21b815260ff821660048201525f9060639073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af4158015610341573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036591906106a2565b6103709060646106f2565b6102659190610714565b604051632b10f60d60e21b815260ff831660048201525f9061040b90839073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156103d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f691906106a2565b6104019060646106c8565b61016a9190610682565b9392505050565b604051632b10f60d60e21b815260ff821660048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af4158015610464573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104889190610733565b604051632b10f60d60e21b815260ff8516600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156104d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fc91906106a2565b6105079060646106f2565b6001600160601b031661040b919061074a565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce60088085901b68ffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561058b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102659190610733565b67ffffffffffffffff811681146105c4575f80fd5b50565b5f602082840312156105d7575f80fd5b813561040b816105af565b60ff811681146105c4575f80fd5b5f60208284031215610600575f80fd5b813561040b816105e2565b5f806040838503121561061c575f80fd5b8235610627816105e2565b91506020830135610637816105af565b809150509250929050565b5f8060408385031215610653575f80fd5b823561065e816105e2565b91506020830135610637816105e2565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156102655761026561066e565b5f602082840312156106b2575f80fd5b81516001600160601b038116811461040b575f80fd5b67ffffffffffffffff81811683821602908116908181146106eb576106eb61066e565b5092915050565b6001600160601b0381811683821602908116908181146106eb576106eb61066e565b6001600160601b0381811683821601908111156102655761026561066e565b5f60208284031215610743575f80fd5b5051919050565b808201808211156102655761026561066e56fea2646970667358221220af70860c718be46615402f1a3909caf1fbe3db14f8376a833d91d6f416d1656764736f6c634300081a0033",
291
+ "bytecode": "0x610794610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610106575f3560e01c80638ed252d81161009e578063bc1b392d1161006e578063bc1b392d14610210578063ceaaf86b14610216578063dda777d314610220578063f37f38f014610233575f80fd5b80638ed252d8146101d8578063915f1dbb1461013b57806393328fb7146101eb578063a42e52e9146101f3575f80fd5b806367cb8ec1116100d957806367cb8ec1146101805780636d3d2a7e146101b257806376d7ed4e146101c55780637c3940bf1461015c575f80fd5b8063057182b41461010a57806346729cd21461013b578063545ce21c1461015c578063616f31cc1461016d575b5f80fd5b6101266101183660046105c8565b67ffffffffffffffff161590565b60405190151581526020015b60405180910390f35b610143606481565b60405167ffffffffffffffff9091168152602001610132565b61014361016a3660046105c8565b90565b61014361017b3660046105c8565b610254565b61019f61018e3660046105c8565b60081b68ffffffffffffffff001690565b60405160ff199091168152602001610132565b6101436101c03660046105f1565b61026b565b6101436101d33660046105f1565b6102ec565b6101436101e636600461060c565b61037a565b610143606381565b6101266102013660046105c8565b67ffffffffffffffff16151590565b5f610143565b610143620f424081565b61014361022e366004610643565b610412565b6102466102413660046105c8565b61051a565b604051908152602001610132565b5f61026561016a83620f4240610683565b92915050565b604051632b10f60d60e21b815260ff821660048201525f9073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156102bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e191906106a3565b6102659060646106c9565b604051632b10f60d60e21b815260ff821660048201525f9060639073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af4158015610341573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036591906106a3565b6103709060646106f3565b6102659190610715565b604051632b10f60d60e21b815260ff831660048201525f9061040b90839073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156103d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f691906106a3565b6104019060646106c9565b61016a9190610683565b9392505050565b604051632b10f60d60e21b815260ff821660048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af4158015610464573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104889190610734565b604051632b10f60d60e21b815260ff8516600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156104d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fc91906106a3565b6105079060646106f3565b6001600160601b031661040b919061074b565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce6007600885901b68ffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561058c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102659190610734565b67ffffffffffffffff811681146105c5575f80fd5b50565b5f602082840312156105d8575f80fd5b813561040b816105b0565b60ff811681146105c5575f80fd5b5f60208284031215610601575f80fd5b813561040b816105e3565b5f806040838503121561061d575f80fd5b8235610628816105e3565b91506020830135610638816105b0565b809150509250929050565b5f8060408385031215610654575f80fd5b823561065f816105e3565b91506020830135610638816105e3565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156102655761026561066f565b5f602082840312156106b3575f80fd5b81516001600160601b038116811461040b575f80fd5b67ffffffffffffffff81811683821602908116908181146106ec576106ec61066f565b5092915050565b6001600160601b0381811683821602908116908181146106ec576106ec61066f565b6001600160601b0381811683821601908111156102655761026561066f565b5f60208284031215610744575f80fd5b5051919050565b808201808211156102655761026561066f56fea26469706673582212200f8409af3dc9f57d9bfc768495fd761c4d7045ce6d33669bb537b5cec3dca1a364736f6c634300081a0033",
292
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610106575f3560e01c80638ed252d81161009e578063bc1b392d1161006e578063bc1b392d14610210578063ceaaf86b14610216578063dda777d314610220578063f37f38f014610233575f80fd5b80638ed252d8146101d8578063915f1dbb1461013b57806393328fb7146101eb578063a42e52e9146101f3575f80fd5b806367cb8ec1116100d957806367cb8ec1146101805780636d3d2a7e146101b257806376d7ed4e146101c55780637c3940bf1461015c575f80fd5b8063057182b41461010a57806346729cd21461013b578063545ce21c1461015c578063616f31cc1461016d575b5f80fd5b6101266101183660046105c8565b67ffffffffffffffff161590565b60405190151581526020015b60405180910390f35b610143606481565b60405167ffffffffffffffff9091168152602001610132565b61014361016a3660046105c8565b90565b61014361017b3660046105c8565b610254565b61019f61018e3660046105c8565b60081b68ffffffffffffffff001690565b60405160ff199091168152602001610132565b6101436101c03660046105f1565b61026b565b6101436101d33660046105f1565b6102ec565b6101436101e636600461060c565b61037a565b610143606381565b6101266102013660046105c8565b67ffffffffffffffff16151590565b5f610143565b610143620f424081565b61014361022e366004610643565b610412565b6102466102413660046105c8565b61051a565b604051908152602001610132565b5f61026561016a83620f4240610683565b92915050565b604051632b10f60d60e21b815260ff821660048201525f9073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156102bd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e191906106a3565b6102659060646106c9565b604051632b10f60d60e21b815260ff821660048201525f9060639073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af4158015610341573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036591906106a3565b6103709060646106f3565b6102659190610715565b604051632b10f60d60e21b815260ff831660048201525f9061040b90839073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156103d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103f691906106a3565b6104019060646106c9565b61016a9190610683565b9392505050565b604051632b10f60d60e21b815260ff821660048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af4158015610464573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104889190610734565b604051632b10f60d60e21b815260ff8516600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063ac43d83490602401602060405180830381865af41580156104d8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104fc91906106a3565b6105079060646106f3565b6001600160601b031661040b919061074b565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce6007600885901b68ffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af415801561058c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102659190610734565b67ffffffffffffffff811681146105c5575f80fd5b50565b5f602082840312156105d8575f80fd5b813561040b816105b0565b60ff811681146105c5575f80fd5b5f60208284031215610601575f80fd5b813561040b816105e3565b5f806040838503121561061d575f80fd5b8235610628816105e3565b91506020830135610638816105b0565b809150509250929050565b5f8060408385031215610654575f80fd5b823561065f816105e3565b91506020830135610638816105e3565b634e487b7160e01b5f52601160045260245ffd5b67ffffffffffffffff81811683821601908111156102655761026561066f565b5f602082840312156106b3575f80fd5b81516001600160601b038116811461040b575f80fd5b67ffffffffffffffff81811683821602908116908181146106ec576106ec61066f565b5092915050565b6001600160601b0381811683821602908116908181146106ec576106ec61066f565b6001600160601b0381811683821601908111156102655761026561066f565b5f60208284031215610744575f80fd5b5051919050565b808201808211156102655761026561066f56fea26469706673582212200f8409af3dc9f57d9bfc768495fd761c4d7045ce6d33669bb537b5cec3dca1a364736f6c634300081a0033",
293
293
  "linkReferences": {
294
294
  "contracts/type/Key32.sol": {
295
295
  "Key32Lib": [
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -14,6 +14,30 @@
14
14
  "name": "ErrorSecondsLibDurationTooBig",
15
15
  "type": "error"
16
16
  },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "Seconds",
21
+ "name": "duration1",
22
+ "type": "uint40"
23
+ },
24
+ {
25
+ "internalType": "Seconds",
26
+ "name": "duration2",
27
+ "type": "uint40"
28
+ }
29
+ ],
30
+ "name": "add",
31
+ "outputs": [
32
+ {
33
+ "internalType": "Seconds",
34
+ "name": "",
35
+ "type": "uint40"
36
+ }
37
+ ],
38
+ "stateMutability": "pure",
39
+ "type": "function"
40
+ },
17
41
  {
18
42
  "inputs": [
19
43
  {
@@ -100,6 +124,30 @@
100
124
  "stateMutability": "pure",
101
125
  "type": "function"
102
126
  },
127
+ {
128
+ "inputs": [
129
+ {
130
+ "internalType": "Seconds",
131
+ "name": "duration1",
132
+ "type": "uint40"
133
+ },
134
+ {
135
+ "internalType": "Seconds",
136
+ "name": "duration2",
137
+ "type": "uint40"
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
+ },
103
151
  {
104
152
  "inputs": [],
105
153
  "name": "max",
@@ -191,8 +239,8 @@
191
239
  "type": "function"
192
240
  }
193
241
  ],
194
- "bytecode": "0x610288610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100a6575f3560e01c80638d38cd4b1161006e5780638d38cd4b146101325780639df876391461014c578063bc1b392d14610169578063da09d4841461016f578063f27c3bf614610195575f80fd5b80630c67422c146100aa5780634bd9351b146100d85780636ac5db19146100e1578063790a38ad146100ec57806383ffcdef14610115575b5f80fd5b6100bd6100b83660046101d1565b61019f565b60405164ffffffffff90911681526020015b60405180910390f35b620151806100bd565b64ffffffffff6100bd565b6101056100fa366004610201565b64ffffffffff161590565b60405190151581526020016100cf565b610105610123366004610221565b64ffffffffff90811691161190565b610105610140366004610201565b64ffffffffff16151590565b61010561015a366004610221565b64ffffffffff90811691161490565b5f6100bd565b61018761017d366004610201565b64ffffffffff1690565b6040519081526020016100cf565b6301e133806100bd565b5f64ffffffffff8211156101cd576040516385cb094d60e01b81526004810183905260240160405180910390fd5b5090565b5f602082840312156101e1575f80fd5b5035919050565b803564ffffffffff811681146101fc575f80fd5b919050565b5f60208284031215610211575f80fd5b61021a826101e8565b9392505050565b5f8060408385031215610232575f80fd5b61023b836101e8565b9150610249602084016101e8565b9050925092905056fea2646970667358221220af860ac37e7f950f0b00ff996884014bb6a63951c43b119e3093fd80dc1ea32e64736f6c634300081a0033",
195
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100a6575f3560e01c80638d38cd4b1161006e5780638d38cd4b146101325780639df876391461014c578063bc1b392d14610169578063da09d4841461016f578063f27c3bf614610195575f80fd5b80630c67422c146100aa5780634bd9351b146100d85780636ac5db19146100e1578063790a38ad146100ec57806383ffcdef14610115575b5f80fd5b6100bd6100b83660046101d1565b61019f565b60405164ffffffffff90911681526020015b60405180910390f35b620151806100bd565b64ffffffffff6100bd565b6101056100fa366004610201565b64ffffffffff161590565b60405190151581526020016100cf565b610105610123366004610221565b64ffffffffff90811691161190565b610105610140366004610201565b64ffffffffff16151590565b61010561015a366004610221565b64ffffffffff90811691161490565b5f6100bd565b61018761017d366004610201565b64ffffffffff1690565b6040519081526020016100cf565b6301e133806100bd565b5f64ffffffffff8211156101cd576040516385cb094d60e01b81526004810183905260240160405180910390fd5b5090565b5f602082840312156101e1575f80fd5b5035919050565b803564ffffffffff811681146101fc575f80fd5b919050565b5f60208284031215610211575f80fd5b61021a826101e8565b9392505050565b5f8060408385031215610232575f80fd5b61023b836101e8565b9150610249602084016101e8565b9050925092905056fea2646970667358221220af860ac37e7f950f0b00ff996884014bb6a63951c43b119e3093fd80dc1ea32e64736f6c634300081a0033",
242
+ "bytecode": "0x61030c610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100bc575f3560e01c806398f647b11161007957806398f647b1146101585780639df876391461016b578063add9ce9914610188578063bc1b392d146101a5578063da09d484146101ab578063f27c3bf6146101d1575f80fd5b80630c67422c146100c05780634bd9351b146100ee5780636ac5db19146100f7578063790a38ad1461010257806383ffcdef1461012b5780638d38cd4b1461013e575b5f80fd5b6100d36100ce366004610233565b6101db565b60405164ffffffffff90911681526020015b60405180910390f35b620151806100d3565b64ffffffffff6100d3565b61011b610110366004610263565b64ffffffffff161590565b60405190151581526020016100e5565b61011b61013936600461027c565b61020d565b61011b61014c366004610263565b64ffffffffff16151590565b6100d361016636600461027c565b610221565b61011b61017936600461027c565b64ffffffffff90811691161490565b61011b61019636600461027c565b64ffffffffff90811691161090565b5f6100d3565b6101c36101b9366004610263565b64ffffffffff1690565b6040519081526020016100e5565b6301e133806100d3565b5f64ffffffffff821115610209576040516385cb094d60e01b81526004810183905260240160405180910390fd5b5090565b64ffffffffff808216908316115b92915050565b5f61022c82846102ad565b9392505050565b5f60208284031215610243575f80fd5b5035919050565b803564ffffffffff8116811461025e575f80fd5b919050565b5f60208284031215610273575f80fd5b61022c8261024a565b5f806040838503121561028d575f80fd5b6102968361024a565b91506102a46020840161024a565b90509250929050565b64ffffffffff818116838216019081111561021b57634e487b7160e01b5f52601160045260245ffdfea2646970667358221220e689048f990175fceb299fa6c3c40a51da59d53a90b40ebf651ff1814520cd2164736f6c634300081a0033",
243
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100bc575f3560e01c806398f647b11161007957806398f647b1146101585780639df876391461016b578063add9ce9914610188578063bc1b392d146101a5578063da09d484146101ab578063f27c3bf6146101d1575f80fd5b80630c67422c146100c05780634bd9351b146100ee5780636ac5db19146100f7578063790a38ad1461010257806383ffcdef1461012b5780638d38cd4b1461013e575b5f80fd5b6100d36100ce366004610233565b6101db565b60405164ffffffffff90911681526020015b60405180910390f35b620151806100d3565b64ffffffffff6100d3565b61011b610110366004610263565b64ffffffffff161590565b60405190151581526020016100e5565b61011b61013936600461027c565b61020d565b61011b61014c366004610263565b64ffffffffff16151590565b6100d361016636600461027c565b610221565b61011b61017936600461027c565b64ffffffffff90811691161490565b61011b61019636600461027c565b64ffffffffff90811691161090565b5f6100d3565b6101c36101b9366004610263565b64ffffffffff1690565b6040519081526020016100e5565b6301e133806100d3565b5f64ffffffffff821115610209576040516385cb094d60e01b81526004810183905260240160405180910390fd5b5090565b64ffffffffff808216908316115b92915050565b5f61022c82846102ad565b9392505050565b5f60208284031215610243575f80fd5b5035919050565b803564ffffffffff8116811461025e575f80fd5b919050565b5f60208284031215610273575f80fd5b61022c8261024a565b5f806040838503121561028d575f80fd5b6102968361024a565b91506102a46020840161024a565b90509250929050565b64ffffffffff818116838216019081111561021b57634e487b7160e01b5f52601160045260245ffdfea2646970667358221220e689048f990175fceb299fa6c3c40a51da59d53a90b40ebf651ff1814520cd2164736f6c634300081a0033",
196
244
  "linkReferences": {},
197
245
  "deployedLinkReferences": {}
198
246
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -83,10 +83,23 @@
83
83
  ],
84
84
  "stateMutability": "pure",
85
85
  "type": "function"
86
+ },
87
+ {
88
+ "inputs": [],
89
+ "name": "zero",
90
+ "outputs": [
91
+ {
92
+ "internalType": "StateId",
93
+ "name": "",
94
+ "type": "uint8"
95
+ }
96
+ ],
97
+ "stateMutability": "pure",
98
+ "type": "function"
86
99
  }
87
100
  ],
88
- "bytecode": "0x610184610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632c2f8a67146100595780636f91962014610081578063ac43d83414610096578063b2466acf146100c7575b5f80fd5b61006c610067366004610104565b6100dd565b60405190151581526020015b60405180910390f35b61006c61008f366004610135565b60ff161590565b6100aa6100a4366004610135565b60ff1690565b6040516bffffffffffffffffffffffff9091168152602001610078565b61006c6100d5366004610135565b60ff16151590565b5f60ff808416908316145b9392505050565b803560ff811681146100ff575f80fd5b919050565b5f8060408385031215610115575f80fd5b61011e836100ef565b915061012c602084016100ef565b90509250929050565b5f60208284031215610145575f80fd5b6100e8826100ef56fea264697066735822122006b46b33ddb2f4701fd0151c656584e781bb09d86522fc52637fd83aab71fb0464736f6c634300081a0033",
89
- "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610055575f3560e01c80632c2f8a67146100595780636f91962014610081578063ac43d83414610096578063b2466acf146100c7575b5f80fd5b61006c610067366004610104565b6100dd565b60405190151581526020015b60405180910390f35b61006c61008f366004610135565b60ff161590565b6100aa6100a4366004610135565b60ff1690565b6040516bffffffffffffffffffffffff9091168152602001610078565b61006c6100d5366004610135565b60ff16151590565b5f60ff808416908316145b9392505050565b803560ff811681146100ff575f80fd5b919050565b5f8060408385031215610115575f80fd5b61011e836100ef565b915061012c602084016100ef565b90509250929050565b5f60208284031215610145575f80fd5b6100e8826100ef56fea264697066735822122006b46b33ddb2f4701fd0151c656584e781bb09d86522fc52637fd83aab71fb0464736f6c634300081a0033",
101
+ "bytecode": "0x61019d610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610060575f3560e01c80632c2f8a67146100645780636f9196201461008c578063ac43d834146100a1578063b2466acf146100d2578063bc1b392d146100e8575b5f80fd5b61007761007236600461011d565b6100f6565b60405190151581526020015b60405180910390f35b61007761009a36600461014e565b60ff161590565b6100b56100af36600461014e565b60ff1690565b6040516bffffffffffffffffffffffff9091168152602001610083565b6100776100e036600461014e565b60ff16151590565b6040515f8152602001610083565b5f60ff808416908316145b9392505050565b803560ff81168114610118575f80fd5b919050565b5f806040838503121561012e575f80fd5b61013783610108565b915061014560208401610108565b90509250929050565b5f6020828403121561015e575f80fd5b6101018261010856fea2646970667358221220211c23dcbdad234946892312c2da9de3ea1288517cda6fcb025045d54b9f259c64736f6c634300081a0033",
102
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610060575f3560e01c80632c2f8a67146100645780636f9196201461008c578063ac43d834146100a1578063b2466acf146100d2578063bc1b392d146100e8575b5f80fd5b61007761007236600461011d565b6100f6565b60405190151581526020015b60405180910390f35b61007761009a36600461014e565b60ff161590565b6100b56100af36600461014e565b60ff1690565b6040516bffffffffffffffffffffffff9091168152602001610083565b6100776100e036600461014e565b60ff16151590565b6040515f8152602001610083565b5f60ff808416908316145b9392505050565b803560ff81168114610118575f80fd5b919050565b5f806040838503121561012e575f80fd5b61013783610108565b915061014560208401610108565b90509250929050565b5f6020828403121561015e575f80fd5b6101018261010856fea2646970667358221220211c23dcbdad234946892312c2da9de3ea1288517cda6fcb025045d54b9f259c64736f6c634300081a0033",
90
103
  "linkReferences": {},
91
104
  "deployedLinkReferences": {}
92
105
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -254,6 +254,25 @@
254
254
  "stateMutability": "pure",
255
255
  "type": "function"
256
256
  },
257
+ {
258
+ "inputs": [
259
+ {
260
+ "internalType": "uint256",
261
+ "name": "timestamp",
262
+ "type": "uint256"
263
+ }
264
+ ],
265
+ "name": "toTimestamp",
266
+ "outputs": [
267
+ {
268
+ "internalType": "Timestamp",
269
+ "name": "",
270
+ "type": "uint40"
271
+ }
272
+ ],
273
+ "stateMutability": "pure",
274
+ "type": "function"
275
+ },
257
276
  {
258
277
  "inputs": [],
259
278
  "name": "zero",
@@ -268,14 +287,14 @@
268
287
  "type": "function"
269
288
  }
270
289
  ],
271
- "bytecode": "0x6103dc610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063a5798b4e11610093578063bc1b392d1161006e578063bc1b392d146101a4578063c24922ce146101aa578063da09d484146101bd578063ddf3d631146101e3575f80fd5b8063a5798b4e14610178578063adb618321461018b578063add9ce9914610191575f80fd5b80636ac5db19146100da578063790a38ad146100fc57806383ffcdef146101255780638d38cd4b1461013857806394335b1a146101525780639df8763914610165575b5f80fd5b64ffffffffff5b60405164ffffffffff90911681526020015b60405180910390f35b61011561010a366004610317565b64ffffffffff161590565b60405190151581526020016100f3565b610115610133366004610339565b6101f6565b610115610146366004610317565b64ffffffffff16151590565b610115610160366004610339565b61020e565b610115610173366004610339565b610222565b6100e1610186366004610339565b610235565b426100e1565b61011561019f366004610339565b6102c7565b5f6100e1565b6101156101b8366004610339565b6102da565b6101d56101cb366004610317565b64ffffffffff1690565b6040519081526020016100f3565b6101156101f1366004610339565b6102ee565b5f64ffffffffff808316908416115b90505b92915050565b5f64ffffffffff8083169084161115610205565b5f64ffffffffff80841690831614610205565b604051633682752160e21b815264ffffffffff821660048201525f906102059073__$71e292c09eace9601b3e21e68a1278917a$__9063da09d48490602401602060405180830381865af415801561028f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b39190610370565b6102c49064ffffffffff8616610387565b90565b5f64ffffffffff80831690841610610205565b5f64ffffffffff8083169084161015610205565b5f64ffffffffff8084169083161415610205565b64ffffffffff81168114610314575f80fd5b50565b5f60208284031215610327575f80fd5b813561033281610302565b9392505050565b5f806040838503121561034a575f80fd5b823561035581610302565b9150602083013561036581610302565b809150509250929050565b5f60208284031215610380575f80fd5b5051919050565b8082018082111561020857634e487b7160e01b5f52601160045260245ffdfea2646970667358221220178c0d987f4f1d3fdb44d3a94a6db5ec1f1270fc65fc8ea13f2e5ad50a0303d164736f6c634300081a0033",
272
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063a5798b4e11610093578063bc1b392d1161006e578063bc1b392d146101a4578063c24922ce146101aa578063da09d484146101bd578063ddf3d631146101e3575f80fd5b8063a5798b4e14610178578063adb618321461018b578063add9ce9914610191575f80fd5b80636ac5db19146100da578063790a38ad146100fc57806383ffcdef146101255780638d38cd4b1461013857806394335b1a146101525780639df8763914610165575b5f80fd5b64ffffffffff5b60405164ffffffffff90911681526020015b60405180910390f35b61011561010a366004610317565b64ffffffffff161590565b60405190151581526020016100f3565b610115610133366004610339565b6101f6565b610115610146366004610317565b64ffffffffff16151590565b610115610160366004610339565b61020e565b610115610173366004610339565b610222565b6100e1610186366004610339565b610235565b426100e1565b61011561019f366004610339565b6102c7565b5f6100e1565b6101156101b8366004610339565b6102da565b6101d56101cb366004610317565b64ffffffffff1690565b6040519081526020016100f3565b6101156101f1366004610339565b6102ee565b5f64ffffffffff808316908416115b90505b92915050565b5f64ffffffffff8083169084161115610205565b5f64ffffffffff80841690831614610205565b604051633682752160e21b815264ffffffffff821660048201525f906102059073__$71e292c09eace9601b3e21e68a1278917a$__9063da09d48490602401602060405180830381865af415801561028f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102b39190610370565b6102c49064ffffffffff8616610387565b90565b5f64ffffffffff80831690841610610205565b5f64ffffffffff8083169084161015610205565b5f64ffffffffff8084169083161415610205565b64ffffffffff81168114610314575f80fd5b50565b5f60208284031215610327575f80fd5b813561033281610302565b9392505050565b5f806040838503121561034a575f80fd5b823561035581610302565b9150602083013561036581610302565b809150509250929050565b5f60208284031215610380575f80fd5b5051919050565b8082018082111561020857634e487b7160e01b5f52601160045260245ffdfea2646970667358221220178c0d987f4f1d3fdb44d3a94a6db5ec1f1270fc65fc8ea13f2e5ad50a0303d164736f6c634300081a0033",
290
+ "bytecode": "0x61041b610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c8063a5798b4e11610093578063bc1b392d1161006e578063bc1b392d146101cf578063c24922ce146101d5578063da09d484146101e8578063ddf3d6311461020e575f80fd5b8063a5798b4e146101a3578063adb61832146101b6578063add9ce99146101bc575f80fd5b806385523ac7116100ce57806385523ac7146101525780638d38cd4b1461016357806394335b1a1461017d5780639df8763914610190575f80fd5b80636ac5db19146100f4578063790a38ad1461011657806383ffcdef1461013f575b5f80fd5b64ffffffffff5b60405164ffffffffff90911681526020015b60405180910390f35b61012f61012436600461033f565b64ffffffffff161590565b604051901515815260200161010d565b61012f61014d366004610361565b610221565b6100fb610160366004610398565b90565b61012f61017136600461033f565b64ffffffffff16151590565b61012f61018b366004610361565b610239565b61012f61019e366004610361565b61024d565b6100fb6101b1366004610361565b610260565b426100fb565b61012f6101ca366004610361565b6102ef565b5f6100fb565b61012f6101e3366004610361565b610302565b6102006101f636600461033f565b64ffffffffff1690565b60405190815260200161010d565b61012f61021c366004610361565b610316565b5f64ffffffffff808316908416115b90505b92915050565b5f64ffffffffff8083169084161115610230565b5f64ffffffffff80841690831614610230565b604051633682752160e21b815264ffffffffff821660048201525f906102309073__$71e292c09eace9601b3e21e68a1278917a$__9063da09d48490602401602060405180830381865af41580156102ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102de91906103af565b6101609064ffffffffff86166103c6565b5f64ffffffffff80831690841610610230565b5f64ffffffffff8083169084161015610230565b5f64ffffffffff8084169083161415610230565b64ffffffffff8116811461033c575f80fd5b50565b5f6020828403121561034f575f80fd5b813561035a8161032a565b9392505050565b5f8060408385031215610372575f80fd5b823561037d8161032a565b9150602083013561038d8161032a565b809150509250929050565b5f602082840312156103a8575f80fd5b5035919050565b5f602082840312156103bf575f80fd5b5051919050565b8082018082111561023357634e487b7160e01b5f52601160045260245ffdfea26469706673582212207de3fc84b4b883e05f28dc9f431edbf85091e7691ba2096e74df34effa83cf2964736f6c634300081a0033",
291
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c8063a5798b4e11610093578063bc1b392d1161006e578063bc1b392d146101cf578063c24922ce146101d5578063da09d484146101e8578063ddf3d6311461020e575f80fd5b8063a5798b4e146101a3578063adb61832146101b6578063add9ce99146101bc575f80fd5b806385523ac7116100ce57806385523ac7146101525780638d38cd4b1461016357806394335b1a1461017d5780639df8763914610190575f80fd5b80636ac5db19146100f4578063790a38ad1461011657806383ffcdef1461013f575b5f80fd5b64ffffffffff5b60405164ffffffffff90911681526020015b60405180910390f35b61012f61012436600461033f565b64ffffffffff161590565b604051901515815260200161010d565b61012f61014d366004610361565b610221565b6100fb610160366004610398565b90565b61012f61017136600461033f565b64ffffffffff16151590565b61012f61018b366004610361565b610239565b61012f61019e366004610361565b61024d565b6100fb6101b1366004610361565b610260565b426100fb565b61012f6101ca366004610361565b6102ef565b5f6100fb565b61012f6101e3366004610361565b610302565b6102006101f636600461033f565b64ffffffffff1690565b60405190815260200161010d565b61012f61021c366004610361565b610316565b5f64ffffffffff808316908416115b90505b92915050565b5f64ffffffffff8083169084161115610230565b5f64ffffffffff80841690831614610230565b604051633682752160e21b815264ffffffffff821660048201525f906102309073__$71e292c09eace9601b3e21e68a1278917a$__9063da09d48490602401602060405180830381865af41580156102ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102de91906103af565b6101609064ffffffffff86166103c6565b5f64ffffffffff80831690841610610230565b5f64ffffffffff8083169084161015610230565b5f64ffffffffff8084169083161415610230565b64ffffffffff8116811461033c575f80fd5b50565b5f6020828403121561034f575f80fd5b813561035a8161032a565b9392505050565b5f8060408385031215610372575f80fd5b823561037d8161032a565b9150602083013561038d8161032a565b809150509250929050565b5f602082840312156103a8575f80fd5b5035919050565b5f602082840312156103bf575f80fd5b5051919050565b8082018082111561023357634e487b7160e01b5f52601160045260245ffdfea26469706673582212207de3fc84b4b883e05f28dc9f431edbf85091e7691ba2096e74df34effa83cf2964736f6c634300081a0033",
273
292
  "linkReferences": {
274
293
  "contracts/type/Seconds.sol": {
275
294
  "SecondsLib": [
276
295
  {
277
296
  "length": 20,
278
- "start": 651
297
+ "start": 694
279
298
  }
280
299
  ]
281
300
  }
@@ -285,7 +304,7 @@
285
304
  "SecondsLib": [
286
305
  {
287
306
  "length": 20,
288
- "start": 599
307
+ "start": 642
289
308
  }
290
309
  ]
291
310
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -2,9 +2,15 @@
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "MathLib",
4
4
  "sourceName": "contracts/type/UFixed.sol",
5
- "abi": [],
6
- "bytecode": "0x60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea26469706673582212202cc980bf0a430ee2301014388bd392a4e0ea428e49d43fae39937ef0e86afdc464736f6c634300081a0033",
7
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea26469706673582212202cc980bf0a430ee2301014388bd392a4e0ea428e49d43fae39937ef0e86afdc464736f6c634300081a0033",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "MathLigMulDivOverflow",
9
+ "type": "error"
10
+ }
11
+ ],
12
+ "bytecode": "0x60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea264697066735822122041a87c5fff5c3a69ede34cc3e88c78f804023ed51b6a8a62c0d2afed246830b164736f6c634300081a0033",
13
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea264697066735822122041a87c5fff5c3a69ede34cc3e88c78f804023ed51b6a8a62c0d2afed246830b164736f6c634300081a0033",
8
14
  "linkReferences": {},
9
15
  "deployedLinkReferences": {}
10
16
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -3,6 +3,43 @@
3
3
  "contractName": "UFixedLib",
4
4
  "sourceName": "contracts/type/UFixed.sol",
5
5
  "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "MathLigMulDivOverflow",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "UFixedLibDivisionByZero",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "inputs": [
18
+ {
19
+ "internalType": "int8",
20
+ "name": "exp",
21
+ "type": "int8"
22
+ }
23
+ ],
24
+ "name": "UFixedLibExponentTooLarge",
25
+ "type": "error"
26
+ },
27
+ {
28
+ "inputs": [
29
+ {
30
+ "internalType": "int8",
31
+ "name": "exp",
32
+ "type": "int8"
33
+ }
34
+ ],
35
+ "name": "UFixedLibExponentTooSmall",
36
+ "type": "error"
37
+ },
38
+ {
39
+ "inputs": [],
40
+ "name": "UFixedLibNegativeResult",
41
+ "type": "error"
42
+ },
6
43
  {
7
44
  "inputs": [],
8
45
  "name": "EXP",
@@ -348,6 +385,19 @@
348
385
  "stateMutability": "pure",
349
386
  "type": "function"
350
387
  },
388
+ {
389
+ "inputs": [],
390
+ "name": "one",
391
+ "outputs": [
392
+ {
393
+ "internalType": "UFixed",
394
+ "name": "",
395
+ "type": "uint256"
396
+ }
397
+ ],
398
+ "stateMutability": "pure",
399
+ "type": "function"
400
+ },
351
401
  {
352
402
  "inputs": [
353
403
  {
@@ -491,8 +541,8 @@
491
541
  "type": "function"
492
542
  }
493
543
  ],
494
- "bytecode": "0x610a38610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046107bc565b61034a565b6101bd6101b83660046107ef565b6103d0565b604051901515815260200161018e565b6101846101db36600461080f565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd6102083660046107ef565b6104bb565b6012610184565b6101bd6102223660046107ef565b6104c4565b610184610235366004610837565b6104cd565b610184610248366004610837565b6104d9565b6101bd61025b366004610837565b6104f0565b61018461026e3660046107ef565b6104f8565b6101bd610281366004610837565b610503565b60025b60405160ff909116815260200161018e565b6101846102a9366004610837565b61050c565b5f610289565b6101846102c23660046107ef565b61052b565b6101bd6102d53660046107ef565b610536565b6101846102e83660046107ef565b610540565b5f610184565b6001610289565b6101846103083660046107ef565b61054b565b61018461031b3660046107ef565b610556565b6101bd61032e3660046107ef565b610561565b61018461056b565b6103476012600a610945565b81565b5f60011960ff8316016103975761039060026103686012600a610945565b6103729190610964565b61037c9085610983565b600161038a6012600a610945565b5f610583565b90506103ca565b60ff82166103b15761039083600161038a6012600a610945565b6103908360016103c36012600a610945565b6001610583565b92915050565b5f8282115b9392505050565b5f806103e9836012610996565b5f0b121561043e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031303a4558504f4e454e545f544f4f5f534d414c4c0060448201526064015b60405180910390fd5b604061044b836012610996565b5f0b131561049b5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031313a4558504f4e454e545f544f4f5f4c41524745006044820152606401610435565b6104a6826012610996565b6104b190600a6109b6565b6103d590846109c4565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104e66012600a610945565b6103ca90836109c4565b5f81156103ca565b5f6103d583836105de565b5f8115156103ca565b5f6103ca61052461051e6103e86104d9565b846105e9565b600261034a565b5f6103d583836105fd565b5f828211156103d5565b5f6103d58383610660565b5f6103d583836105e9565b5f6103d583836106bb565b5f828210156103d5565b60026105796012600a610945565b6103479190610964565b5f806105908686866106d8565b905060018360028111156105a6576105a66109db565b1480156105c257505f84806105bd576105bd610950565b868809115b156105d5576105d2600182610983565b90505b95945050505050565b5f6103d58284610983565b5f6103d58383670de0b6b3a76400006106d8565b5f80821161064d5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a55464d2d3032303a44495649534f525f5a45524f0000000000006044820152606401610435565b6103d583670de0b6b3a7640000846106d8565b5f828211156106b15760405162461bcd60e51b815260206004820152601d60248201527f4552524f523a55464d2d3031303a4e454741544956455f524553554c540000006044820152606401610435565b6103d582846109ef565b5f828210156106ce576103908383610660565b6103d58284610660565b5f80805f19858709858702925082811083820303915050805f0361070f5783828161070557610705610950565b04925050506103d5565b8084116107565760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610435565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156107cd575f80fd5b82359150602083013560ff811681146107e4575f80fd5b809150509250929050565b5f8060408385031215610800575f80fd5b50508035926020909101359150565b5f8060408385031215610820575f80fd5b8235915060208301355f81900b81146107e4575f80fd5b5f60208284031215610847575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561089d578085048111156108815761088161084e565b600184161561088f57908102905b60019390931c928002610866565b935093915050565b5f826108b3575060016103ca565b816108bf57505f6103ca565b81600181146108d557600281146108df576108fb565b60019150506103ca565b60ff8411156108f0576108f061084e565b50506001821b6103ca565b5060208310610133831016604e8410600b841016171561091e575081810a6103ca565b61092a5f198484610862565b805f190482111561093d5761093d61084e565b029392505050565b5f6103d583836108a5565b634e487b7160e01b5f52601260045260245ffd5b5f8261097e57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca61084e565b5f81810b9083900b01607f8113607f19821217156103ca576103ca61084e565b5f6103d560ff8416836108a5565b80820281158282048414176103ca576103ca61084e565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61084e56fea264697066735822122095b47e326ba6c85a518c73b4494484fdcea7709161e78c343656c1cc40ea3cb764736f6c634300081a0033",
495
- "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046107bc565b61034a565b6101bd6101b83660046107ef565b6103d0565b604051901515815260200161018e565b6101846101db36600461080f565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd6102083660046107ef565b6104bb565b6012610184565b6101bd6102223660046107ef565b6104c4565b610184610235366004610837565b6104cd565b610184610248366004610837565b6104d9565b6101bd61025b366004610837565b6104f0565b61018461026e3660046107ef565b6104f8565b6101bd610281366004610837565b610503565b60025b60405160ff909116815260200161018e565b6101846102a9366004610837565b61050c565b5f610289565b6101846102c23660046107ef565b61052b565b6101bd6102d53660046107ef565b610536565b6101846102e83660046107ef565b610540565b5f610184565b6001610289565b6101846103083660046107ef565b61054b565b61018461031b3660046107ef565b610556565b6101bd61032e3660046107ef565b610561565b61018461056b565b6103476012600a610945565b81565b5f60011960ff8316016103975761039060026103686012600a610945565b6103729190610964565b61037c9085610983565b600161038a6012600a610945565b5f610583565b90506103ca565b60ff82166103b15761039083600161038a6012600a610945565b6103908360016103c36012600a610945565b6001610583565b92915050565b5f8282115b9392505050565b5f806103e9836012610996565b5f0b121561043e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031303a4558504f4e454e545f544f4f5f534d414c4c0060448201526064015b60405180910390fd5b604061044b836012610996565b5f0b131561049b5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031313a4558504f4e454e545f544f4f5f4c41524745006044820152606401610435565b6104a6826012610996565b6104b190600a6109b6565b6103d590846109c4565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104e66012600a610945565b6103ca90836109c4565b5f81156103ca565b5f6103d583836105de565b5f8115156103ca565b5f6103ca61052461051e6103e86104d9565b846105e9565b600261034a565b5f6103d583836105fd565b5f828211156103d5565b5f6103d58383610660565b5f6103d583836105e9565b5f6103d583836106bb565b5f828210156103d5565b60026105796012600a610945565b6103479190610964565b5f806105908686866106d8565b905060018360028111156105a6576105a66109db565b1480156105c257505f84806105bd576105bd610950565b868809115b156105d5576105d2600182610983565b90505b95945050505050565b5f6103d58284610983565b5f6103d58383670de0b6b3a76400006106d8565b5f80821161064d5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a55464d2d3032303a44495649534f525f5a45524f0000000000006044820152606401610435565b6103d583670de0b6b3a7640000846106d8565b5f828211156106b15760405162461bcd60e51b815260206004820152601d60248201527f4552524f523a55464d2d3031303a4e454741544956455f524553554c540000006044820152606401610435565b6103d582846109ef565b5f828210156106ce576103908383610660565b6103d58284610660565b5f80805f19858709858702925082811083820303915050805f0361070f5783828161070557610705610950565b04925050506103d5565b8084116107565760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610435565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156107cd575f80fd5b82359150602083013560ff811681146107e4575f80fd5b809150509250929050565b5f8060408385031215610800575f80fd5b50508035926020909101359150565b5f8060408385031215610820575f80fd5b8235915060208301355f81900b81146107e4575f80fd5b5f60208284031215610847575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561089d578085048111156108815761088161084e565b600184161561088f57908102905b60019390931c928002610866565b935093915050565b5f826108b3575060016103ca565b816108bf57505f6103ca565b81600181146108d557600281146108df576108fb565b60019150506103ca565b60ff8411156108f0576108f061084e565b50506001821b6103ca565b5060208310610133831016604e8410600b841016171561091e575081810a6103ca565b61092a5f198484610862565b805f190482111561093d5761093d61084e565b029392505050565b5f6103d583836108a5565b634e487b7160e01b5f52601260045260245ffd5b5f8261097e57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca61084e565b5f81810b9083900b01607f8113607f19821217156103ca576103ca61084e565b5f6103d560ff8416836108a5565b80820281158282048414176103ca576103ca61084e565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61084e56fea264697066735822122095b47e326ba6c85a518c73b4494484fdcea7709161e78c343656c1cc40ea3cb764736f6c634300081a0033",
544
+ "bytecode": "0x610992610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610192575f3560e01c806389fa8ed7116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c1461031c578063cc8b7b731461032f578063ea6515c414610342578063eb646d7114610355575f80fd5b8063b67d77c5146102fc578063bc1b392d1461030f578063bdbb463014610315575f80fd5b806389fa8ed7146102a0578063901717d1146102b5578063916c5c57146102bd57806393aa8725146102d0578063a391c15b146102d6578063b4773329146102e9575f80fd5b8063313ce5671161014f57806345ebb61e1161012a57806345ebb61e14610254578063753b14a514610267578063771602f71461027a5780637a858b971461028d575f80fd5b8063313ce5671461022757806332148d731461022e57806344aa683614610241575f80fd5b8063059f8b161461019657806308c76ec4146101b1578063118fc88c146101c45780631488c845146101e75780631a12cd47146101fa57806321e5749b14610214575b5f80fd5b61019e61035d565b6040519081526020015b60405180910390f35b61019e6101bf366004610716565b61036c565b6101d76101d2366004610749565b6103f2565b60405190151581526020016101a8565b61019e6101f5366004610769565b6103fe565b610202601281565b6040515f9190910b81526020016101a8565b6101d7610222366004610749565b610489565b601261019e565b6101d761023c366004610749565b610492565b61019e61024f366004610791565b61049b565b61019e610262366004610791565b6104a7565b6101d7610275366004610791565b6104be565b61019e610288366004610749565b6104c6565b6101d761029b366004610791565b6104d1565b60025b60405160ff90911681526020016101a8565b61019e6104da565b61019e6102cb366004610791565b6104ec565b5f6102a3565b61019e6102e4366004610749565b61050b565b6101d76102f7366004610749565b610516565b61019e61030a366004610749565b610520565b5f61019e565b60016102a3565b61019e61032a366004610749565b61052b565b61019e61033d366004610749565b610536565b6101d7610350366004610749565b610541565b61019e61054b565b6103696012600a61089f565b81565b5f60011960ff8316016103b9576103b2600261038a6012600a61089f565b61039491906108be565b61039e90856108dd565b60016103ac6012600a61089f565b5f610563565b90506103ec565b60ff82166103d3576103b28360016103ac6012600a61089f565b6103b28360016103e56012600a61089f565b6001610563565b92915050565b5f8282115b9392505050565b5f8061040b8360126108f0565b5f0b121561043657604051633e49665b60e21b81525f83900b60048201526024015b60405180910390fd5b60406104438360126108f0565b5f0b13156104695760405163e39f5db560e01b81525f83900b600482015260240161042d565b6104748260126108f0565b61047f90600a610910565b6103f7908461091e565b5f8282106103f7565b5f8183146103f7565b5f6103ec82600261036c565b5f6104b46012600a61089f565b6103ec908361091e565b5f81156103ec565b5f6103f783836105be565b5f8115156103ec565b5f6104e76012600a61089f565b905090565b5f6103ec6105046104fe6103e86104a7565b846105c9565b600261036c565b5f6103f783836105dd565b5f828211156103f7565b5f6103f78383610611565b5f6103f783836105c9565b5f6103f7838361063d565b5f828210156103f7565b60026105596012600a61089f565b61036991906108be565b5f8061057086868661065a565b9050600183600281111561058657610586610935565b1480156105a257505f848061059d5761059d6108aa565b868809115b156105b5576105b26001826108dd565b90505b95945050505050565b5f6103f782846108dd565b5f6103f78383670de0b6b3a764000061065a565b5f815f036105fe57604051630f6c8fc360e21b815260040160405180910390fd5b6103f783670de0b6b3a76400008461065a565b5f828211156106335760405163117efe6d60e31b815260040160405180910390fd5b6103f78284610949565b5f82821015610650576103b28383610611565b6103f78284610611565b5f80805f19858709858702925082811083820303915050805f0361069157838281610687576106876108aa565b04925050506103f7565b8084116106b057604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f8060408385031215610727575f80fd5b82359150602083013560ff8116811461073e575f80fd5b809150509250929050565b5f806040838503121561075a575f80fd5b50508035926020909101359150565b5f806040838503121561077a575f80fd5b8235915060208301355f81900b811461073e575f80fd5b5f602082840312156107a1575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156107f7578085048111156107db576107db6107a8565b60018416156107e957908102905b60019390931c9280026107c0565b935093915050565b5f8261080d575060016103ec565b8161081957505f6103ec565b816001811461082f576002811461083957610855565b60019150506103ec565b60ff84111561084a5761084a6107a8565b50506001821b6103ec565b5060208310610133831016604e8410600b8410161715610878575081810a6103ec565b6108845f1984846107bc565b805f1904821115610897576108976107a8565b029392505050565b5f6103f783836107ff565b634e487b7160e01b5f52601260045260245ffd5b5f826108d857634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ec576103ec6107a8565b5f81810b9083900b01607f8113607f19821217156103ec576103ec6107a8565b5f6103f760ff8416836107ff565b80820281158282048414176103ec576103ec6107a8565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ec576103ec6107a856fea264697066735822122009a1585f31bb1d890ae7134d65a6178c1dfffd05c161d8b82901a87bfeddbd9264736f6c634300081a0033",
545
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610192575f3560e01c806389fa8ed7116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c1461031c578063cc8b7b731461032f578063ea6515c414610342578063eb646d7114610355575f80fd5b8063b67d77c5146102fc578063bc1b392d1461030f578063bdbb463014610315575f80fd5b806389fa8ed7146102a0578063901717d1146102b5578063916c5c57146102bd57806393aa8725146102d0578063a391c15b146102d6578063b4773329146102e9575f80fd5b8063313ce5671161014f57806345ebb61e1161012a57806345ebb61e14610254578063753b14a514610267578063771602f71461027a5780637a858b971461028d575f80fd5b8063313ce5671461022757806332148d731461022e57806344aa683614610241575f80fd5b8063059f8b161461019657806308c76ec4146101b1578063118fc88c146101c45780631488c845146101e75780631a12cd47146101fa57806321e5749b14610214575b5f80fd5b61019e61035d565b6040519081526020015b60405180910390f35b61019e6101bf366004610716565b61036c565b6101d76101d2366004610749565b6103f2565b60405190151581526020016101a8565b61019e6101f5366004610769565b6103fe565b610202601281565b6040515f9190910b81526020016101a8565b6101d7610222366004610749565b610489565b601261019e565b6101d761023c366004610749565b610492565b61019e61024f366004610791565b61049b565b61019e610262366004610791565b6104a7565b6101d7610275366004610791565b6104be565b61019e610288366004610749565b6104c6565b6101d761029b366004610791565b6104d1565b60025b60405160ff90911681526020016101a8565b61019e6104da565b61019e6102cb366004610791565b6104ec565b5f6102a3565b61019e6102e4366004610749565b61050b565b6101d76102f7366004610749565b610516565b61019e61030a366004610749565b610520565b5f61019e565b60016102a3565b61019e61032a366004610749565b61052b565b61019e61033d366004610749565b610536565b6101d7610350366004610749565b610541565b61019e61054b565b6103696012600a61089f565b81565b5f60011960ff8316016103b9576103b2600261038a6012600a61089f565b61039491906108be565b61039e90856108dd565b60016103ac6012600a61089f565b5f610563565b90506103ec565b60ff82166103d3576103b28360016103ac6012600a61089f565b6103b28360016103e56012600a61089f565b6001610563565b92915050565b5f8282115b9392505050565b5f8061040b8360126108f0565b5f0b121561043657604051633e49665b60e21b81525f83900b60048201526024015b60405180910390fd5b60406104438360126108f0565b5f0b13156104695760405163e39f5db560e01b81525f83900b600482015260240161042d565b6104748260126108f0565b61047f90600a610910565b6103f7908461091e565b5f8282106103f7565b5f8183146103f7565b5f6103ec82600261036c565b5f6104b46012600a61089f565b6103ec908361091e565b5f81156103ec565b5f6103f783836105be565b5f8115156103ec565b5f6104e76012600a61089f565b905090565b5f6103ec6105046104fe6103e86104a7565b846105c9565b600261036c565b5f6103f783836105dd565b5f828211156103f7565b5f6103f78383610611565b5f6103f783836105c9565b5f6103f7838361063d565b5f828210156103f7565b60026105596012600a61089f565b61036991906108be565b5f8061057086868661065a565b9050600183600281111561058657610586610935565b1480156105a257505f848061059d5761059d6108aa565b868809115b156105b5576105b26001826108dd565b90505b95945050505050565b5f6103f782846108dd565b5f6103f78383670de0b6b3a764000061065a565b5f815f036105fe57604051630f6c8fc360e21b815260040160405180910390fd5b6103f783670de0b6b3a76400008461065a565b5f828211156106335760405163117efe6d60e31b815260040160405180910390fd5b6103f78284610949565b5f82821015610650576103b28383610611565b6103f78284610611565b5f80805f19858709858702925082811083820303915050805f0361069157838281610687576106876108aa565b04925050506103f7565b8084116106b057604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f8060408385031215610727575f80fd5b82359150602083013560ff8116811461073e575f80fd5b809150509250929050565b5f806040838503121561075a575f80fd5b50508035926020909101359150565b5f806040838503121561077a575f80fd5b8235915060208301355f81900b811461073e575f80fd5b5f602082840312156107a1575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156107f7578085048111156107db576107db6107a8565b60018416156107e957908102905b60019390931c9280026107c0565b935093915050565b5f8261080d575060016103ec565b8161081957505f6103ec565b816001811461082f576002811461083957610855565b60019150506103ec565b60ff84111561084a5761084a6107a8565b50506001821b6103ec565b5060208310610133831016604e8410600b8410161715610878575081810a6103ec565b6108845f1984846107bc565b805f1904821115610897576108976107a8565b029392505050565b5f6103f783836107ff565b634e487b7160e01b5f52601260045260245ffd5b5f826108d857634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ec576103ec6107a8565b5f81810b9083900b01607f8113607f19821217156103ec576103ec6107a8565b5f6103f760ff8416836107ff565b80820281158282048414176103ec576103ec6107a8565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ec576103ec6107a856fea264697066735822122009a1585f31bb1d890ae7134d65a6178c1dfffd05c161d8b82901a87bfeddbd9264736f6c634300081a0033",
496
546
  "linkReferences": {},
497
547
  "deployedLinkReferences": {}
498
548
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }
@@ -170,8 +170,8 @@
170
170
  "type": "function"
171
171
  }
172
172
  ],
173
- "bytecode": "0x610375610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c80638e4ad86c116100635780638e4ad86c1461011d57806394aa449c14610140578063a123b37c1461014e578063c9e66e2914610175575f80fd5b806304b8f6c5146100945780632efe0113146100af57806349a7111a146100c257806355601007146100f9575b5f80fd5b5f5b60405162ffffff90911681526020015b60405180910390f35b6100966100bd366004610267565b61018c565b6100d56100d0366004610290565b61022c565b6040805160ff948516815292841660208401529216918101919091526060016100a6565b61010f610107366004610290565b62ffffff1690565b6040519081526020016100a6565b61012e61012b3660046102b9565b90565b60405160ff90911681526020016100a6565b61009661012b3660046102d0565b61015c610107366004610290565b60405167ffffffffffffffff90911681526020016100a6565b61012e610183366004610290565b60101c60ff1690565b5f6101008410801561019f575061010083105b80156101ac575061010082105b6102075760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5652532d3031303a56455253494f4e5f504152545f544f4f5f42604482015261494760f01b606482015260840160405180910390fd5b8161021a600885901b601087901b61030b565b610224919061030b565b949350505050565b5f80808360ff601082901c166102428383610324565b915061ffff600883901c165f6102588185610324565b92989197509195509350505050565b5f805f60608486031215610279575f80fd5b505081359360208301359350604090920135919050565b5f602082840312156102a0575f80fd5b813562ffffff811681146102b2575f80fd5b9392505050565b5f602082840312156102c9575f80fd5b5035919050565b5f602082840312156102e0575f80fd5b813567ffffffffffffffff811681146102b2575f80fd5b634e487b7160e01b5f52601160045260245ffd5b8082018082111561031e5761031e6102f7565b92915050565b62ffffff828116828216039081111561031e5761031e6102f756fea2646970667358221220374a4a729de468f3940ff47331d0d3d12edb8d24fd5e103ec67f0f30abb0121f64736f6c634300081a0033",
174
- "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c80638e4ad86c116100635780638e4ad86c1461011d57806394aa449c14610140578063a123b37c1461014e578063c9e66e2914610175575f80fd5b806304b8f6c5146100945780632efe0113146100af57806349a7111a146100c257806355601007146100f9575b5f80fd5b5f5b60405162ffffff90911681526020015b60405180910390f35b6100966100bd366004610267565b61018c565b6100d56100d0366004610290565b61022c565b6040805160ff948516815292841660208401529216918101919091526060016100a6565b61010f610107366004610290565b62ffffff1690565b6040519081526020016100a6565b61012e61012b3660046102b9565b90565b60405160ff90911681526020016100a6565b61009661012b3660046102d0565b61015c610107366004610290565b60405167ffffffffffffffff90911681526020016100a6565b61012e610183366004610290565b60101c60ff1690565b5f6101008410801561019f575061010083105b80156101ac575061010082105b6102075760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5652532d3031303a56455253494f4e5f504152545f544f4f5f42604482015261494760f01b606482015260840160405180910390fd5b8161021a600885901b601087901b61030b565b610224919061030b565b949350505050565b5f80808360ff601082901c166102428383610324565b915061ffff600883901c165f6102588185610324565b92989197509195509350505050565b5f805f60608486031215610279575f80fd5b505081359360208301359350604090920135919050565b5f602082840312156102a0575f80fd5b813562ffffff811681146102b2575f80fd5b9392505050565b5f602082840312156102c9575f80fd5b5035919050565b5f602082840312156102e0575f80fd5b813567ffffffffffffffff811681146102b2575f80fd5b634e487b7160e01b5f52601160045260245ffd5b8082018082111561031e5761031e6102f7565b92915050565b62ffffff828116828216039081111561031e5761031e6102f756fea2646970667358221220374a4a729de468f3940ff47331d0d3d12edb8d24fd5e103ec67f0f30abb0121f64736f6c634300081a0033",
173
+ "bytecode": "0x610375610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c80638e4ad86c116100635780638e4ad86c1461011d57806394aa449c14610140578063a123b37c1461014e578063c9e66e2914610175575f80fd5b806304b8f6c5146100945780632efe0113146100af57806349a7111a146100c257806355601007146100f9575b5f80fd5b5f5b60405162ffffff90911681526020015b60405180910390f35b6100966100bd366004610267565b61018c565b6100d56100d0366004610290565b61022c565b6040805160ff948516815292841660208401529216918101919091526060016100a6565b61010f610107366004610290565b62ffffff1690565b6040519081526020016100a6565b61012e61012b3660046102b9565b90565b60405160ff90911681526020016100a6565b61009661012b3660046102d0565b61015c610107366004610290565b60405167ffffffffffffffff90911681526020016100a6565b61012e610183366004610290565b60101c60ff1690565b5f6101008410801561019f575061010083105b80156101ac575061010082105b6102075760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5652532d3031303a56455253494f4e5f504152545f544f4f5f42604482015261494760f01b606482015260840160405180910390fd5b8161021a600885901b601087901b61030b565b610224919061030b565b949350505050565b5f80808360ff601082901c166102428383610324565b915061ffff600883901c165f6102588185610324565b92989197509195509350505050565b5f805f60608486031215610279575f80fd5b505081359360208301359350604090920135919050565b5f602082840312156102a0575f80fd5b813562ffffff811681146102b2575f80fd5b9392505050565b5f602082840312156102c9575f80fd5b5035919050565b5f602082840312156102e0575f80fd5b813567ffffffffffffffff811681146102b2575f80fd5b634e487b7160e01b5f52601160045260245ffd5b8082018082111561031e5761031e6102f7565b92915050565b62ffffff828116828216039081111561031e5761031e6102f756fea2646970667358221220b7b280d4d79eb682a642e02ab59edfb5583f4fd4184dbddb14f1f65201cf09d264736f6c634300081a0033",
174
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610090575f3560e01c80638e4ad86c116100635780638e4ad86c1461011d57806394aa449c14610140578063a123b37c1461014e578063c9e66e2914610175575f80fd5b806304b8f6c5146100945780632efe0113146100af57806349a7111a146100c257806355601007146100f9575b5f80fd5b5f5b60405162ffffff90911681526020015b60405180910390f35b6100966100bd366004610267565b61018c565b6100d56100d0366004610290565b61022c565b6040805160ff948516815292841660208401529216918101919091526060016100a6565b61010f610107366004610290565b62ffffff1690565b6040519081526020016100a6565b61012e61012b3660046102b9565b90565b60405160ff90911681526020016100a6565b61009661012b3660046102d0565b61015c610107366004610290565b60405167ffffffffffffffff90911681526020016100a6565b61012e610183366004610290565b60101c60ff1690565b5f6101008410801561019f575061010083105b80156101ac575061010082105b6102075760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5652532d3031303a56455253494f4e5f504152545f544f4f5f42604482015261494760f01b606482015260840160405180910390fd5b8161021a600885901b601087901b61030b565b610224919061030b565b949350505050565b5f80808360ff601082901c166102428383610324565b915061ffff600883901c165f6102588185610324565b92989197509195509350505050565b5f805f60608486031215610279575f80fd5b505081359360208301359350604090920135919050565b5f602082840312156102a0575f80fd5b813562ffffff811681146102b2575f80fd5b9392505050565b5f602082840312156102c9575f80fd5b5035919050565b5f602082840312156102e0575f80fd5b813567ffffffffffffffff811681146102b2575f80fd5b634e487b7160e01b5f52601160045260245ffd5b8082018082111561031e5761031e6102f7565b92915050565b62ffffff828116828216039081111561031e5761031e6102f756fea2646970667358221220b7b280d4d79eb682a642e02ab59edfb5583f4fd4184dbddb14f1f65201cf09d264736f6c634300081a0033",
175
175
  "linkReferences": {},
176
176
  "deployedLinkReferences": {}
177
177
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/da371cdc279ff13acc58db2cd14c11ee.json"
3
+ "buildInfo": "../../../build-info/7182881c5e5b7bfa90a1f80c8fc1056d.json"
4
4
  }