@etherisc/gif-next 0.0.2-fd4931b-974 → 0.0.2-fd9539f-062

Sign up to get free protection for your applications and to get access to all the features.
Files changed (432) hide show
  1. package/README.md +20 -3
  2. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  3. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +19 -13
  4. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  5. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +115 -80
  6. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  7. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +86 -59
  8. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  9. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +11 -5
  10. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  11. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +20 -1
  12. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  13. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +32 -101
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +83 -71
  16. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  17. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +121 -12
  18. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  19. package/artifacts/contracts/instance/Instance.sol/Instance.json +105 -85
  20. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  21. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +708 -0
  22. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +1 -1
  23. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +125 -29
  24. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  25. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +195 -64
  26. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +206 -49
  28. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  29. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +79 -36
  30. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  31. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +248 -118
  32. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  33. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  34. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  35. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +0 -53
  36. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  37. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  38. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +1 -1
  39. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +2 -71
  40. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  41. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +8 -116
  42. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  43. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  44. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  45. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  46. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  47. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  48. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  49. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  50. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +10 -0
  51. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  52. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +759 -0
  53. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  54. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
  55. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  56. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +1146 -0
  57. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  58. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1034 -0
  59. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  60. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +730 -0
  61. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  62. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +91 -48
  63. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  64. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +74 -43
  65. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  66. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +20 -1
  67. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  68. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +11 -5
  69. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  70. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +35 -1
  71. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  72. package/artifacts/contracts/pool/Pool.sol/Pool.json +18 -12
  73. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  74. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +84 -42
  75. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  76. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +63 -40
  77. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  78. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +79 -36
  79. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  80. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +68 -37
  81. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  82. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +119 -68
  83. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  84. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +88 -53
  85. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  86. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +20 -1
  87. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  88. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +20 -1
  89. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  90. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +20 -1
  91. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  92. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +20 -1
  93. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  94. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +11 -5
  95. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
  96. package/artifacts/contracts/product/IProductService.sol/IProductService.json +20 -1
  97. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  98. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +97 -46
  99. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  100. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +77 -42
  101. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  102. package/artifacts/contracts/product/PricingService.sol/PricingService.json +105 -62
  103. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  104. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +81 -50
  105. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  106. package/artifacts/contracts/product/Product.sol/Product.json +18 -12
  107. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
  108. package/artifacts/contracts/product/ProductService.sol/ProductService.json +61 -26
  109. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  110. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +59 -32
  111. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  112. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  113. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  114. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +82 -45
  115. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  116. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +31 -1
  117. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  118. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.json +129 -0
  119. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  120. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  121. package/artifacts/contracts/registry/Registry.sol/Registry.json +254 -97
  122. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  123. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1901 -0
  124. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  125. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +69 -15
  126. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  127. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +51 -35
  128. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  129. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +288 -182
  130. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  131. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.json +171 -0
  132. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  133. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +187 -0
  134. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  135. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +46 -177
  136. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  137. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.json +1559 -0
  138. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
  139. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
  140. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
  141. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1747 -0
  142. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
  143. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1760 -0
  144. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
  145. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1838 -0
  146. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
  147. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1856 -0
  148. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  149. package/artifacts/contracts/shared/Component.sol/Component.json +18 -12
  150. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  151. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +119 -69
  152. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  153. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +85 -54
  154. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  155. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +20 -1
  156. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  157. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
  158. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  159. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.json +1189 -0
  160. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
  161. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
  162. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
  163. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1600 -0
  164. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  165. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +11 -5
  166. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  167. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +27 -1
  168. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  169. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +11 -5
  170. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  171. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +0 -10
  172. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  173. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  174. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +7 -1
  175. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  176. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  177. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +7 -1
  178. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  179. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  180. package/artifacts/contracts/shared/IService.sol/IService.json +20 -1
  181. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  182. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
  183. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
  184. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  185. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +18 -12
  186. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  187. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +10 -20
  188. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  189. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +6 -6
  190. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +1 -1
  191. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +27 -35
  192. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  193. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +13 -7
  194. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  195. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +6 -6
  196. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  197. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +35 -16
  198. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  199. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +15 -9
  200. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  201. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  202. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  203. package/artifacts/contracts/shared/Service.sol/Service.json +20 -1
  204. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  205. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +6 -6
  206. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  207. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  208. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  209. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  210. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +247 -579
  211. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  212. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +471 -62
  213. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  214. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +460 -0
  215. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  216. package/artifacts/contracts/staking/Staking.sol/Staking.json +303 -798
  217. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  218. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +81 -164
  219. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  220. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +368 -39
  221. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  222. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +503 -120
  223. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  224. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +67 -43
  225. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  226. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2261 -0
  227. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  228. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +281 -18
  229. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  230. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
  231. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  232. package/artifacts/contracts/type/Amount.sol/AmountLib.json +68 -4
  233. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  234. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +40 -2
  235. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  236. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +4 -4
  237. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  238. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +4 -4
  239. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  240. package/artifacts/contracts/type/Fee.sol/FeeLib.json +12 -12
  241. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  242. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  243. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  244. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +28 -4
  245. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  246. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  247. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  248. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +96 -2
  249. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  250. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +4 -4
  251. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  252. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +4 -4
  253. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  254. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  255. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  256. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +4 -4
  257. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  258. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +114 -4
  259. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  260. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +52 -2
  261. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  262. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  263. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  264. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  265. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  266. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
  267. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  268. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  269. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  270. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +17 -4
  271. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  272. package/artifacts/contracts/type/UFixed.sol/MathLib.json +2 -2
  273. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  274. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +2 -2
  275. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  276. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  277. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  278. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +2 -2
  279. package/contracts/distribution/Distribution.sol +2 -4
  280. package/contracts/distribution/DistributionService.sol +5 -6
  281. package/contracts/distribution/DistributionServiceManager.sol +1 -13
  282. package/contracts/distribution/IDistributionComponent.sol +1 -1
  283. package/contracts/distribution/IDistributionService.sol +1 -1
  284. package/contracts/instance/BundleManager.sol +1 -1
  285. package/contracts/instance/IInstance.sol +22 -12
  286. package/contracts/instance/IInstanceService.sol +27 -13
  287. package/contracts/instance/Instance.sol +85 -50
  288. package/contracts/instance/InstanceAdmin.sol +331 -0
  289. package/contracts/instance/InstanceAuthorizationsLib.sol +193 -152
  290. package/contracts/instance/InstanceReader.sol +33 -7
  291. package/contracts/instance/InstanceService.sol +120 -48
  292. package/contracts/instance/InstanceServiceManager.sol +1 -1
  293. package/contracts/instance/InstanceStore.sol +30 -21
  294. package/contracts/instance/base/BalanceStore.sol +12 -7
  295. package/contracts/instance/base/Cloneable.sol +3 -26
  296. package/contracts/instance/base/ObjectCounter.sol +21 -0
  297. package/contracts/instance/base/ObjectManager.sol +2 -4
  298. package/contracts/instance/module/IAccess.sol +3 -11
  299. package/contracts/instance/module/IBundle.sol +1 -1
  300. package/contracts/instance/module/IComponents.sol +1 -1
  301. package/contracts/instance/module/IDistribution.sol +1 -1
  302. package/contracts/instance/module/IPolicy.sol +1 -1
  303. package/contracts/instance/module/IRisk.sol +1 -1
  304. package/contracts/mock/Dip.sol +1 -1
  305. package/contracts/oracle/IOracle.sol +20 -0
  306. package/contracts/oracle/IOracleComponent.sol +32 -0
  307. package/contracts/oracle/IOracleService.sol +65 -0
  308. package/contracts/oracle/Oracle.sol +145 -0
  309. package/contracts/oracle/OracleService.sol +278 -0
  310. package/contracts/oracle/OracleServiceManager.sol +42 -0
  311. package/contracts/pool/BundleService.sol +20 -20
  312. package/contracts/pool/BundleServiceManager.sol +1 -1
  313. package/contracts/pool/IBundleService.sol +1 -1
  314. package/contracts/pool/IPoolComponent.sol +1 -1
  315. package/contracts/pool/IPoolService.sol +4 -1
  316. package/contracts/pool/Pool.sol +1 -1
  317. package/contracts/pool/PoolService.sol +38 -10
  318. package/contracts/pool/PoolServiceManager.sol +1 -1
  319. package/contracts/product/ApplicationService.sol +6 -6
  320. package/contracts/product/ApplicationServiceManager.sol +1 -1
  321. package/contracts/product/ClaimService.sol +12 -7
  322. package/contracts/product/ClaimServiceManager.sol +1 -1
  323. package/contracts/product/IApplicationService.sol +1 -1
  324. package/contracts/product/IClaimService.sol +7 -1
  325. package/contracts/product/IPolicyService.sol +1 -1
  326. package/contracts/product/IPricingService.sol +1 -1
  327. package/contracts/product/IProductComponent.sol +1 -1
  328. package/contracts/product/IProductService.sol +1 -1
  329. package/contracts/product/PolicyService.sol +9 -7
  330. package/contracts/product/PolicyServiceManager.sol +1 -1
  331. package/contracts/product/PricingService.sol +8 -9
  332. package/contracts/product/PricingServiceManager.sol +1 -1
  333. package/contracts/product/Product.sol +1 -1
  334. package/contracts/product/ProductService.sol +6 -6
  335. package/contracts/product/ProductServiceManager.sol +1 -1
  336. package/contracts/registry/ChainNft.sol +2 -1
  337. package/contracts/registry/IRegistry.sol +21 -15
  338. package/contracts/registry/IRegistryService.sol +2 -1
  339. package/contracts/registry/IServiceAuthorization.sol +35 -0
  340. package/contracts/registry/ITransferInterceptor.sol +1 -1
  341. package/contracts/registry/Registry.sol +86 -67
  342. package/contracts/registry/RegistryAdmin.sol +333 -0
  343. package/contracts/registry/RegistryService.sol +9 -71
  344. package/contracts/registry/RegistryServiceManager.sol +2 -21
  345. package/contracts/registry/ReleaseManager.sol +219 -222
  346. package/contracts/registry/ServiceAuthorization.sol +86 -0
  347. package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
  348. package/contracts/registry/TokenRegistry.sol +57 -61
  349. package/contracts/shared/AccessAdmin.sol +759 -0
  350. package/contracts/shared/AccessManagerCustom.sol +741 -0
  351. package/contracts/shared/AccessManagerExtended.sol +481 -0
  352. package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
  353. package/contracts/shared/AccessManagerExtendedWithDisable.sol +137 -0
  354. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
  355. package/contracts/shared/Component.sol +9 -14
  356. package/contracts/shared/ComponentService.sol +40 -18
  357. package/contracts/shared/ComponentServiceManager.sol +1 -1
  358. package/contracts/shared/ComponentVerifyingService.sol +14 -8
  359. package/contracts/shared/ERC165.sol +1 -1
  360. package/contracts/shared/IAccessAdmin.sol +168 -0
  361. package/contracts/shared/IAccessManagerExtended.sol +74 -0
  362. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +18 -0
  363. package/contracts/shared/IComponent.sol +4 -8
  364. package/contracts/shared/IComponentService.sol +12 -1
  365. package/contracts/shared/IInstanceLinkedComponent.sol +1 -1
  366. package/contracts/shared/IKeyValueStore.sol +2 -2
  367. package/contracts/shared/ILifecycle.sol +1 -1
  368. package/contracts/shared/INftOwnable.sol +2 -2
  369. package/contracts/shared/IPolicyHolder.sol +1 -1
  370. package/contracts/shared/IRegisterable.sol +1 -1
  371. package/contracts/shared/IRegistryLinked.sol +1 -1
  372. package/contracts/shared/IService.sol +8 -1
  373. package/contracts/shared/IVersionable.sol +1 -1
  374. package/contracts/shared/InitializableCustom.sol +177 -0
  375. package/contracts/shared/InstanceLinkedComponent.sol +2 -3
  376. package/contracts/shared/KeyValueStore.sol +2 -5
  377. package/contracts/shared/Lifecycle.sol +12 -3
  378. package/contracts/shared/NftIdSetManager.sol +3 -7
  379. package/contracts/shared/NftOwnable.sol +3 -14
  380. package/contracts/shared/PolicyHolder.sol +3 -2
  381. package/contracts/shared/ProxyManager.sol +7 -3
  382. package/contracts/shared/Registerable.sol +1 -1
  383. package/contracts/shared/RegistryLinked.sol +1 -1
  384. package/contracts/shared/Service.sol +28 -22
  385. package/contracts/shared/TokenHandler.sol +1 -1
  386. package/contracts/shared/UpgradableProxyWithAdmin.sol +1 -1
  387. package/contracts/shared/Versionable.sol +1 -1
  388. package/contracts/staking/IStaking.sol +94 -39
  389. package/contracts/staking/IStakingService.sol +71 -40
  390. package/contracts/staking/StakeManagerLib.sol +231 -0
  391. package/contracts/staking/Staking.sol +303 -138
  392. package/contracts/staking/StakingManager.sol +23 -21
  393. package/contracts/staking/StakingReader.sol +120 -25
  394. package/contracts/staking/StakingService.sol +194 -77
  395. package/contracts/staking/StakingServiceManager.sol +3 -3
  396. package/contracts/staking/StakingStore.sol +613 -0
  397. package/contracts/staking/TargetManagerLib.sol +77 -11
  398. package/contracts/type/AddressSet.sol +1 -1
  399. package/contracts/type/Amount.sol +16 -2
  400. package/contracts/type/Blocknumber.sol +14 -2
  401. package/contracts/type/ClaimId.sol +1 -1
  402. package/contracts/type/DistributorType.sol +1 -1
  403. package/contracts/type/Fee.sol +1 -1
  404. package/contracts/type/Key32.sol +1 -1
  405. package/contracts/type/NftId.sol +9 -9
  406. package/contracts/type/NftIdSet.sol +1 -1
  407. package/contracts/type/ObjectType.sol +140 -68
  408. package/contracts/type/PayoutId.sol +1 -1
  409. package/contracts/type/Referral.sol +1 -1
  410. package/contracts/type/RequestId.sol +75 -0
  411. package/contracts/type/RiskId.sol +1 -1
  412. package/contracts/type/RoleId.sol +79 -21
  413. package/contracts/type/Seconds.sol +19 -1
  414. package/contracts/type/Selector.sol +102 -0
  415. package/contracts/type/StateId.sol +13 -1
  416. package/contracts/type/String.sol +53 -0
  417. package/contracts/type/Timestamp.sol +7 -3
  418. package/contracts/type/UFixed.sol +1 -1
  419. package/contracts/type/Version.sol +1 -1
  420. package/package.json +6 -3
  421. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  422. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1348
  423. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  424. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -298
  425. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +0 -4
  426. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +0 -137
  427. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  428. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  429. package/contracts/instance/InstanceAccessManager.sol +0 -543
  430. package/contracts/registry/RegistryAccessManager.sol +0 -167
  431. package/contracts/registry/ServiceAuthorizationsLib.sol +0 -173
  432. package/contracts/shared/AccessManagerUpgradeableInitializeable.sol +0 -13
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e4a126ce6401cd78d1e8e897900e2e2d.json"
3
+ "buildInfo": "../../../build-info/a908a9a1f830641eab2f9c67c8cf8fce.json"
4
4
  }
@@ -120,6 +120,133 @@
120
120
  "name": "ErrorStakingTargetUnexpectedObjectType",
121
121
  "type": "error"
122
122
  },
123
+ {
124
+ "inputs": [
125
+ {
126
+ "internalType": "Amount",
127
+ "name": "tokenAmount",
128
+ "type": "uint96"
129
+ },
130
+ {
131
+ "internalType": "UFixed",
132
+ "name": "stakingRate",
133
+ "type": "uint256"
134
+ }
135
+ ],
136
+ "name": "calculateRequiredDipAmount",
137
+ "outputs": [
138
+ {
139
+ "internalType": "Amount",
140
+ "name": "dipAmount",
141
+ "type": "uint96"
142
+ }
143
+ ],
144
+ "stateMutability": "view",
145
+ "type": "function"
146
+ },
147
+ {
148
+ "inputs": [
149
+ {
150
+ "internalType": "contract IERC20Metadata",
151
+ "name": "dipToken",
152
+ "type": "IERC20Metadata"
153
+ },
154
+ {
155
+ "internalType": "contract IERC20Metadata",
156
+ "name": "token",
157
+ "type": "IERC20Metadata"
158
+ },
159
+ {
160
+ "internalType": "UFixed",
161
+ "name": "requiredDipPerToken",
162
+ "type": "uint256"
163
+ }
164
+ ],
165
+ "name": "calculateStakingRate",
166
+ "outputs": [
167
+ {
168
+ "internalType": "UFixed",
169
+ "name": "stakingRate",
170
+ "type": "uint256"
171
+ }
172
+ ],
173
+ "stateMutability": "view",
174
+ "type": "function"
175
+ },
176
+ {
177
+ "inputs": [
178
+ {
179
+ "internalType": "NftId",
180
+ "name": "targetNftId",
181
+ "type": "uint96"
182
+ },
183
+ {
184
+ "internalType": "Seconds",
185
+ "name": "lockingPeriod",
186
+ "type": "uint40"
187
+ }
188
+ ],
189
+ "name": "checkLockingPeriod",
190
+ "outputs": [],
191
+ "stateMutability": "pure",
192
+ "type": "function"
193
+ },
194
+ {
195
+ "inputs": [
196
+ {
197
+ "internalType": "NftId",
198
+ "name": "targetNftId",
199
+ "type": "uint96"
200
+ },
201
+ {
202
+ "internalType": "UFixed",
203
+ "name": "rewardRate",
204
+ "type": "uint256"
205
+ }
206
+ ],
207
+ "name": "checkRewardRate",
208
+ "outputs": [],
209
+ "stateMutability": "pure",
210
+ "type": "function"
211
+ },
212
+ {
213
+ "inputs": [
214
+ {
215
+ "internalType": "contract IRegistry",
216
+ "name": "registry",
217
+ "type": "IRegistry"
218
+ },
219
+ {
220
+ "internalType": "contract StakingReader",
221
+ "name": "stakingReader",
222
+ "type": "StakingReader"
223
+ },
224
+ {
225
+ "internalType": "NftId",
226
+ "name": "targetNftId",
227
+ "type": "uint96"
228
+ },
229
+ {
230
+ "internalType": "ObjectType",
231
+ "name": "expectedObjectType",
232
+ "type": "uint8"
233
+ },
234
+ {
235
+ "internalType": "Seconds",
236
+ "name": "initialLockingPeriod",
237
+ "type": "uint40"
238
+ },
239
+ {
240
+ "internalType": "UFixed",
241
+ "name": "initialRewardRate",
242
+ "type": "uint256"
243
+ }
244
+ ],
245
+ "name": "checkTargetParameters",
246
+ "outputs": [],
247
+ "stateMutability": "view",
248
+ "type": "function"
249
+ },
123
250
  {
124
251
  "inputs": [],
125
252
  "name": "getDefaultLockingPeriod",
@@ -209,20 +336,140 @@
209
336
  ],
210
337
  "stateMutability": "pure",
211
338
  "type": "function"
339
+ },
340
+ {
341
+ "inputs": [
342
+ {
343
+ "internalType": "contract IStaking",
344
+ "name": "staking",
345
+ "type": "IStaking"
346
+ },
347
+ {
348
+ "internalType": "NftId",
349
+ "name": "targetNftId",
350
+ "type": "uint96"
351
+ },
352
+ {
353
+ "internalType": "Seconds",
354
+ "name": "lockingPeriod",
355
+ "type": "uint40"
356
+ }
357
+ ],
358
+ "name": "updateLockingPeriod",
359
+ "outputs": [
360
+ {
361
+ "internalType": "Seconds",
362
+ "name": "oldLockingPeriod",
363
+ "type": "uint40"
364
+ },
365
+ {
366
+ "components": [
367
+ {
368
+ "internalType": "ObjectType",
369
+ "name": "objectType",
370
+ "type": "uint8"
371
+ },
372
+ {
373
+ "internalType": "uint256",
374
+ "name": "chainId",
375
+ "type": "uint256"
376
+ },
377
+ {
378
+ "internalType": "Seconds",
379
+ "name": "lockingPeriod",
380
+ "type": "uint40"
381
+ },
382
+ {
383
+ "internalType": "UFixed",
384
+ "name": "rewardRate",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "internalType": "struct IStaking.TargetInfo",
389
+ "name": "targetInfo",
390
+ "type": "tuple"
391
+ }
392
+ ],
393
+ "stateMutability": "view",
394
+ "type": "function"
395
+ },
396
+ {
397
+ "inputs": [
398
+ {
399
+ "internalType": "contract IStaking",
400
+ "name": "staking",
401
+ "type": "IStaking"
402
+ },
403
+ {
404
+ "internalType": "NftId",
405
+ "name": "targetNftId",
406
+ "type": "uint96"
407
+ },
408
+ {
409
+ "internalType": "UFixed",
410
+ "name": "rewardRate",
411
+ "type": "uint256"
412
+ }
413
+ ],
414
+ "name": "updateRewardRate",
415
+ "outputs": [
416
+ {
417
+ "internalType": "UFixed",
418
+ "name": "oldRewardRate",
419
+ "type": "uint256"
420
+ },
421
+ {
422
+ "components": [
423
+ {
424
+ "internalType": "ObjectType",
425
+ "name": "objectType",
426
+ "type": "uint8"
427
+ },
428
+ {
429
+ "internalType": "uint256",
430
+ "name": "chainId",
431
+ "type": "uint256"
432
+ },
433
+ {
434
+ "internalType": "Seconds",
435
+ "name": "lockingPeriod",
436
+ "type": "uint40"
437
+ },
438
+ {
439
+ "internalType": "UFixed",
440
+ "name": "rewardRate",
441
+ "type": "uint256"
442
+ }
443
+ ],
444
+ "internalType": "struct IStaking.TargetInfo",
445
+ "name": "targetInfo",
446
+ "type": "tuple"
447
+ }
448
+ ],
449
+ "stateMutability": "view",
450
+ "type": "function"
212
451
  }
213
452
  ],
214
- "bytecode": "0x610f3e61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100925760003560e01c80639ed616cd116100655780639ed616cd14610106578063bf381be614610128578063c6edc3dd14610156578063f87bf3731461015e57600080fd5b80633e7964a114610097578063504a473d146100ba5780635bcf927a146100db578063658501a6146100fe575b600080fd5b61009f610166565b60405164ffffffffff90911681526020015b60405180910390f35b6100cd6100c8366004610ab1565b6101e6565b6040519081526020016100b1565b6100ee6100e9366004610add565b610284565b60405190151581526020016100b1565b6100cd6102c5565b81801561011257600080fd5b50610126610121366004610b22565b610345565b005b81801561013457600080fd5b50610148610143366004610b9b565b61062e565b6040516100b1929190610c0a565b61009f61083e565b6100cd61087b565b604051630319d08b60e21b81526309660180600482015260009073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af41580156101bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e19190610c44565b905090565b600073__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b038416601e6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af415801561025a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027e9190610c61565b92915050565b600061029882600a5b60ff90811691161490565b156102a557506001919050565b6102b082604661028d565b156102bd57506001919050565b506000919050565b604051631488c84560e01b815260216004820152600119602482015260009073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af4158015610321573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e19190610c61565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af415801561039d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c19190610c8f565b156103df5760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa15801561042c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104509190610c8f565b1561047e57604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b61048783610284565b6104b857604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610475565b6104c284836108be565b6104cc84826109be565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa158015610519573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053d9190610c8f565b6105655760405163686c563560e11b81526001600160601b0385166004820152602401610475565b6040516305247a1760e51b81526001600160601b03851660048201526000906001600160a01b0388169063a48f42e090602401600060405180830381865afa1580156105b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105dd9190810190610d92565b60400151905060ff808216908516146106255760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610475565b50505050505050565b600060606000856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610672573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106969190610e65565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa1580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a9190610c8f565b6107325760405163686c563560e11b81526001600160601b0386166004820152602401610475565b61073c85856108be565b60405163153d412560e31b81526001600160601b03861660048201526000906001600160a01b0383169063a9ea09289060240160a060405180830381865afa15801561078c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b09190610e82565b64ffffffffff8616604082015290506107c8866101e6565b9350806040516020016108239190600060a08201905060ff83511682526020830151602083015264ffffffffff6040840151166040830152606083015160608301526001600160601b03608084015116608083015292915050565b60405160208183030381529060405292505050935093915050565b604051630319d08b60e21b815262f099c0600482015260009073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024016101a0565b604051631488c84560e01b815260056004820152600119602482015260009073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610304565b60405163790a38ad60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015610914573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109389190610c8f565b156109615760405163b7c4528f60e01b81526001600160601b0383166004820152602401610475565b6109728161096d610166565b610a0d565b156109ba5781610980610166565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610475565b5050565b6109ce816109ca6102c5565b1090565b156109ba57816109dc6102c5565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610475565b6040516383ffcdef60e01b815264ffffffffff80841660048301528216602482015260009073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610a6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a929190610c8f565b9392505050565b6001600160601b0381168114610aae57600080fd5b50565b600060208284031215610ac357600080fd5b8135610a9281610a99565b60ff81168114610aae57600080fd5b600060208284031215610aef57600080fd5b8135610a9281610ace565b6001600160a01b0381168114610aae57600080fd5b64ffffffffff81168114610aae57600080fd5b60008060008060008060c08789031215610b3b57600080fd5b8635610b4681610afa565b95506020870135610b5681610afa565b94506040870135610b6681610a99565b93506060870135610b7681610ace565b92506080870135610b8681610b0f565b8092505060a087013590509295509295509295565b600080600060608486031215610bb057600080fd5b8335610bbb81610afa565b92506020840135610bcb81610a99565b91506040840135610bdb81610b0f565b809150509250925092565b60005b83811015610c01578181015183820152602001610be9565b50506000910152565b8281526040602082015260008251806040840152610c2f816060850160208701610be6565b601f01601f1916919091016060019392505050565b600060208284031215610c5657600080fd5b8151610a9281610b0f565b600060208284031215610c7357600080fd5b5051919050565b80518015158114610c8a57600080fd5b919050565b600060208284031215610ca157600080fd5b610a9282610c7a565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715610ce357610ce3610caa565b60405290565b8051610c8a81610a99565b8051610c8a81610ace565b8051610c8a81610afa565b600082601f830112610d1b57600080fd5b815167ffffffffffffffff80821115610d3657610d36610caa565b604051601f8301601f19908116603f01168101908282118183101715610d5e57610d5e610caa565b81604052838152866020858801011115610d7757600080fd5b610d88846020830160208901610be6565b9695505050505050565b600060208284031215610da457600080fd5b815167ffffffffffffffff80821115610dbc57600080fd5b9083019060e08286031215610dd057600080fd5b610dd8610cc0565b610de183610ce9565b8152610def60208401610ce9565b6020820152610e0060408401610cf4565b6040820152610e1160608401610c7a565b6060820152610e2260808401610cff565b6080820152610e3360a08401610cff565b60a082015260c083015182811115610e4a57600080fd5b610e5687828601610d0a565b60c08301525095945050505050565b600060208284031215610e7757600080fd5b8151610a9281610afa565b600060a08284031215610e9457600080fd5b60405160a0810181811067ffffffffffffffff82111715610eb757610eb7610caa565b6040528251610ec581610ace565b8152602083810151908201526040830151610edf81610b0f565b6040820152606083810151908201526080830151610efc81610a99565b6080820152939250505056fea26469706673582212200303f1a597854e7e1c111b687c6f177c0d379feb8048f1dc8214000e412c12cc64736f6c63430008140033",
215
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100925760003560e01c80639ed616cd116100655780639ed616cd14610106578063bf381be614610128578063c6edc3dd14610156578063f87bf3731461015e57600080fd5b80633e7964a114610097578063504a473d146100ba5780635bcf927a146100db578063658501a6146100fe575b600080fd5b61009f610166565b60405164ffffffffff90911681526020015b60405180910390f35b6100cd6100c8366004610ab1565b6101e6565b6040519081526020016100b1565b6100ee6100e9366004610add565b610284565b60405190151581526020016100b1565b6100cd6102c5565b81801561011257600080fd5b50610126610121366004610b22565b610345565b005b81801561013457600080fd5b50610148610143366004610b9b565b61062e565b6040516100b1929190610c0a565b61009f61083e565b6100cd61087b565b604051630319d08b60e21b81526309660180600482015260009073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af41580156101bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e19190610c44565b905090565b600073__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b038416601e6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af415801561025a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061027e9190610c61565b92915050565b600061029882600a5b60ff90811691161490565b156102a557506001919050565b6102b082604661028d565b156102bd57506001919050565b506000919050565b604051631488c84560e01b815260216004820152600119602482015260009073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af4158015610321573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101e19190610c61565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af415801561039d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103c19190610c8f565b156103df5760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa15801561042c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104509190610c8f565b1561047e57604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b61048783610284565b6104b857604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610475565b6104c284836108be565b6104cc84826109be565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa158015610519573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061053d9190610c8f565b6105655760405163686c563560e11b81526001600160601b0385166004820152602401610475565b6040516305247a1760e51b81526001600160601b03851660048201526000906001600160a01b0388169063a48f42e090602401600060405180830381865afa1580156105b5573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526105dd9190810190610d92565b60400151905060ff808216908516146106255760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610475565b50505050505050565b600060606000856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610672573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106969190610e65565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa1580156106e6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061070a9190610c8f565b6107325760405163686c563560e11b81526001600160601b0386166004820152602401610475565b61073c85856108be565b60405163153d412560e31b81526001600160601b03861660048201526000906001600160a01b0383169063a9ea09289060240160a060405180830381865afa15801561078c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107b09190610e82565b64ffffffffff8616604082015290506107c8866101e6565b9350806040516020016108239190600060a08201905060ff83511682526020830151602083015264ffffffffff6040840151166040830152606083015160608301526001600160601b03608084015116608083015292915050565b60405160208183030381529060405292505050935093915050565b604051630319d08b60e21b815262f099c0600482015260009073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024016101a0565b604051631488c84560e01b815260056004820152600119602482015260009073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610304565b60405163790a38ad60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015610914573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109389190610c8f565b156109615760405163b7c4528f60e01b81526001600160601b0383166004820152602401610475565b6109728161096d610166565b610a0d565b156109ba5781610980610166565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610475565b5050565b6109ce816109ca6102c5565b1090565b156109ba57816109dc6102c5565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610475565b6040516383ffcdef60e01b815264ffffffffff80841660048301528216602482015260009073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610a6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a929190610c8f565b9392505050565b6001600160601b0381168114610aae57600080fd5b50565b600060208284031215610ac357600080fd5b8135610a9281610a99565b60ff81168114610aae57600080fd5b600060208284031215610aef57600080fd5b8135610a9281610ace565b6001600160a01b0381168114610aae57600080fd5b64ffffffffff81168114610aae57600080fd5b60008060008060008060c08789031215610b3b57600080fd5b8635610b4681610afa565b95506020870135610b5681610afa565b94506040870135610b6681610a99565b93506060870135610b7681610ace565b92506080870135610b8681610b0f565b8092505060a087013590509295509295509295565b600080600060608486031215610bb057600080fd5b8335610bbb81610afa565b92506020840135610bcb81610a99565b91506040840135610bdb81610b0f565b809150509250925092565b60005b83811015610c01578181015183820152602001610be9565b50506000910152565b8281526040602082015260008251806040840152610c2f816060850160208701610be6565b601f01601f1916919091016060019392505050565b600060208284031215610c5657600080fd5b8151610a9281610b0f565b600060208284031215610c7357600080fd5b5051919050565b80518015158114610c8a57600080fd5b919050565b600060208284031215610ca157600080fd5b610a9282610c7a565b634e487b7160e01b600052604160045260246000fd5b60405160e0810167ffffffffffffffff81118282101715610ce357610ce3610caa565b60405290565b8051610c8a81610a99565b8051610c8a81610ace565b8051610c8a81610afa565b600082601f830112610d1b57600080fd5b815167ffffffffffffffff80821115610d3657610d36610caa565b604051601f8301601f19908116603f01168101908282118183101715610d5e57610d5e610caa565b81604052838152866020858801011115610d7757600080fd5b610d88846020830160208901610be6565b9695505050505050565b600060208284031215610da457600080fd5b815167ffffffffffffffff80821115610dbc57600080fd5b9083019060e08286031215610dd057600080fd5b610dd8610cc0565b610de183610ce9565b8152610def60208401610ce9565b6020820152610e0060408401610cf4565b6040820152610e1160608401610c7a565b6060820152610e2260808401610cff565b6080820152610e3360a08401610cff565b60a082015260c083015182811115610e4a57600080fd5b610e5687828601610d0a565b60c08301525095945050505050565b600060208284031215610e7757600080fd5b8151610a9281610afa565b600060a08284031215610e9457600080fd5b60405160a0810181811067ffffffffffffffff82111715610eb757610eb7610caa565b6040528251610ec581610ace565b8152602083810151908201526040830151610edf81610b0f565b6040820152606083810151908201526080830151610efc81610a99565b6080820152939250505056fea26469706673582212200303f1a597854e7e1c111b687c6f177c0d379feb8048f1dc8214000e412c12cc64736f6c63430008140033",
453
+ "bytecode": "0x611544610035600b8282823980515f1a60731461002957634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063b7f3e12c11610093578063da86eb801161006e578063da86eb80146101ad578063e8e7a2b4146101c0578063f2bbb0a8146101e1578063f87bf3731461020c575f80fd5b8063b7f3e12c14610171578063bf381be614610184578063c6edc3dd146101a5575f80fd5b80633e7964a1146100da578063504a473d146100fd5780635bcf927a1461011e578063658501a6146101415780639ed616cd14610149578063aea958cf1461015e575b5f80fd5b6100e2610214565b60405164ffffffffff90911681526020015b60405180910390f35b61011061010b366004610f5d565b610291565b6040519081526020016100f4565b61013161012c366004610f86565b61032c565b60405190151581526020016100f4565b61011061035a565b61015c610157366004610fc7565b6103d7565b005b61015c61016c36600461103c565b6106b5565b61011061017f366004611066565b610708565b6101976101923660046110a4565b61086a565b6040516100f49291906110ec565b6100e2610a1e565b61015c6101bb366004611132565b610a5a565b6101d36101ce366004611169565b610b54565b6040516100f4929190611196565b6101f46101ef36600461103c565b610d00565b6040516001600160601b0390911681526020016100f4565b610110610d8a565b604051630319d08b60e21b8152630966018060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af4158015610268573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111d5565b905090565b5f73__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b038416601f6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af4158015610302573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032691906111f0565b92915050565b5f60ff821660010361034057506001919050565b60ff8216600a0361035357506001919050565b505f919050565b604051631488c84560e01b81526021600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af41580156103b3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111f0565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af415801561042d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610451919061121b565b1561046f5760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa1580156104ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104de919061121b565b1561050c57604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b6105158361032c565b61054657604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610503565b6105508483610a5a565b61055a84826106b5565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa1580156105a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c9919061121b565b6105f15760405163686c563560e11b81526001600160601b0385166004820152602401610503565b6040516305247a1760e51b81526001600160601b03851660048201525f906001600160a01b0388169063a48f42e0906024015f60405180830381865afa15801561063d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106649190810190611343565b60400151905060ff808216908516146106ac5760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610503565b50505050505050565b6106c5816106c161035a565b1090565b1561070457816106d361035a565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610503565b5050565b5f8073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c8456001866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610762573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107869190611411565b886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e69190611411565b6107f0919061142c565b6040516001600160e01b031960e085901b16815260048101929092525f0b6024820152604401602060405180830381865af4158015610831573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085591906111f0565b90506108618382610dcc565b95945050505050565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ed9190611451565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa15801561093b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095f919061121b565b6109875760405163686c563560e11b81526001600160601b0386166004820152602401610503565b6109918585610a5a565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa1580156109dc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a00919061146c565b60408101805164ffffffffff90961690529396939550929350505050565b604051630319d08b60e21b815262f099c060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161024d565b60405163790a38ad60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015610aae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ad2919061121b565b15610afb5760405163b7c4528f60e01b81526001600160601b0383166004820152602401610503565b610b0c81610b07610214565b610de0565b156107045781610b1a610214565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610503565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd79190611451565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610c25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c49919061121b565b610c715760405163686c563560e11b81526001600160601b0386166004820152602401610503565b610c7b85856106b5565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa158015610cc6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cea919061146c565b6060810180519590529396939550929350505050565b604051632c34efe560e11b81526001600160601b0383166004820152602481018290525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015610d5f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8391906114df565b9392505050565b604051631488c84560e01b81526005600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610398565b5f610d838383670de0b6b3a7640000610e62565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610e3e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d83919061121b565b5f80805f19858709858702925082811083820303915050805f03610e9957838281610e8f57610e8f6114fa565b0492505050610d83565b808411610ee05760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610503565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b6001600160601b0381168114610f5a575f80fd5b50565b5f60208284031215610f6d575f80fd5b8135610d8381610f46565b60ff81168114610f5a575f80fd5b5f60208284031215610f96575f80fd5b8135610d8381610f78565b6001600160a01b0381168114610f5a575f80fd5b64ffffffffff81168114610f5a575f80fd5b5f805f805f8060c08789031215610fdc575f80fd5b8635610fe781610fa1565b95506020870135610ff781610fa1565b9450604087013561100781610f46565b9350606087013561101781610f78565b9250608087013561102781610fb5565b8092505060a087013590509295509295509295565b5f806040838503121561104d575f80fd5b823561105881610f46565b946020939093013593505050565b5f805f60608486031215611078575f80fd5b833561108381610fa1565b9250602084013561109381610fa1565b929592945050506040919091013590565b5f805f606084860312156110b6575f80fd5b83356110c181610fa1565b925060208401356110d181610f46565b915060408401356110e181610fb5565b809150509250925092565b64ffffffffff8316815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f8060408385031215611143575f80fd5b823561114e81610f46565b9150602083013561115e81610fb5565b809150509250929050565b5f805f6060848603121561117b575f80fd5b833561118681610fa1565b9250602084013561109381610f46565b82815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f602082840312156111e5575f80fd5b8151610d8381610fb5565b5f60208284031215611200575f80fd5b5051919050565b80518015158114611216575f80fd5b919050565b5f6020828403121561122b575f80fd5b610d8382611207565b634e487b7160e01b5f52604160045260245ffd5b60405160e0810167ffffffffffffffff8111828210171561126b5761126b611234565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561129a5761129a611234565b604052919050565b805161121681610f46565b805161121681610f78565b805161121681610fa1565b5f82601f8301126112d2575f80fd5b815167ffffffffffffffff8111156112ec576112ec611234565b6020611300601f8301601f19168201611271565b8281528582848701011115611313575f80fd5b5f5b83811015611330578581018301518282018401528201611315565b505f928101909101919091529392505050565b5f60208284031215611353575f80fd5b815167ffffffffffffffff8082111561136a575f80fd5b9083019060e0828603121561137d575f80fd5b611385611248565b61138e836112a2565b815261139c602084016112a2565b60208201526113ad604084016112ad565b60408201526113be60608401611207565b60608201526113cf608084016112b8565b60808201526113e060a084016112b8565b60a082015260c0830151828111156113f6575f80fd5b611402878286016112c3565b60c08301525095945050505050565b5f60208284031215611421575f80fd5b8151610d8381610f78565b60ff828116828216039081111561032657634e487b7160e01b5f52601160045260245ffd5b5f60208284031215611461575f80fd5b8151610d8381610fa1565b5f6080828403121561147c575f80fd5b6040516080810181811067ffffffffffffffff8211171561149f5761149f611234565b60405282516114ad81610f78565b81526020838101519082015260408301516114c781610fb5565b60408201526060928301519281019290925250919050565b5f602082840312156114ef575f80fd5b8151610d8381610f46565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212206ddc34593b2f1255aeab9d63ae9ab6d7df1730fb7fd408546c6c1e3fe173cc1864736f6c63430008180033",
454
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100d6575f3560e01c8063b7f3e12c11610093578063da86eb801161006e578063da86eb80146101ad578063e8e7a2b4146101c0578063f2bbb0a8146101e1578063f87bf3731461020c575f80fd5b8063b7f3e12c14610171578063bf381be614610184578063c6edc3dd146101a5575f80fd5b80633e7964a1146100da578063504a473d146100fd5780635bcf927a1461011e578063658501a6146101415780639ed616cd14610149578063aea958cf1461015e575b5f80fd5b6100e2610214565b60405164ffffffffff90911681526020015b60405180910390f35b61011061010b366004610f5d565b610291565b6040519081526020016100f4565b61013161012c366004610f86565b61032c565b60405190151581526020016100f4565b61011061035a565b61015c610157366004610fc7565b6103d7565b005b61015c61016c36600461103c565b6106b5565b61011061017f366004611066565b610708565b6101976101923660046110a4565b61086a565b6040516100f49291906110ec565b6100e2610a1e565b61015c6101bb366004611132565b610a5a565b6101d36101ce366004611169565b610b54565b6040516100f4929190611196565b6101f46101ef36600461103c565b610d00565b6040516001600160601b0390911681526020016100f4565b610110610d8a565b604051630319d08b60e21b8152630966018060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c906024015b602060405180830381865af4158015610268573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111d5565b905090565b5f73__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b038416601f6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af4158015610302573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032691906111f0565b92915050565b5f60ff821660010361034057506001919050565b60ff8216600a0361035357506001919050565b505f919050565b604051631488c84560e01b81526021600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af41580156103b3573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061028c91906111f0565b604051630a4d29dd60e31b81526001600160601b038516600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af415801561042d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610451919061121b565b1561046f5760405163019dbc4d60e31b815260040160405180910390fd5b60405163134fc55b60e11b81526001600160601b03851660048201526001600160a01b0386169063269f8ab690602401602060405180830381865afa1580156104ba573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104de919061121b565b1561050c57604051638bf515e960e01b81526001600160601b03851660048201526024015b60405180910390fd5b6105158361032c565b61054657604051632778739960e11b81526001600160601b038516600482015260ff84166024820152604401610503565b6105508483610a5a565b61055a84826106b5565b60405163e74d052f60e01b81526001600160601b03851660048201526001600160a01b0387169063e74d052f90602401602060405180830381865afa1580156105a5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c9919061121b565b6105f15760405163686c563560e11b81526001600160601b0385166004820152602401610503565b6040516305247a1760e51b81526001600160601b03851660048201525f906001600160a01b0388169063a48f42e0906024015f60405180830381865afa15801561063d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106649190810190611343565b60400151905060ff808216908516146106ac5760405163e3c5e85760e01b81526001600160601b038616600482015260ff808616602483015282166044820152606401610503565b50505050505050565b6106c5816106c161035a565b1090565b1561070457816106d361035a565b604051637eed2aab60e01b81526001600160601b039092166004830152602482015260448101829052606401610503565b5050565b5f8073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c8456001866001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa158015610762573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107869190611411565b886001600160a01b031663313ce5676040518163ffffffff1660e01b8152600401602060405180830381865afa1580156107c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107e69190611411565b6107f0919061142c565b6040516001600160e01b031960e085901b16815260048101929092525f0b6024820152604401602060405180830381865af4158015610831573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061085591906111f0565b90506108618382610dcc565b95945050505050565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156108c9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108ed9190611451565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa15801561093b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095f919061121b565b6109875760405163686c563560e11b81526001600160601b0386166004820152602401610503565b6109918585610a5a565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa1580156109dc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a00919061146c565b60408101805164ffffffffff90961690529396939550929350505050565b604051630319d08b60e21b815262f099c060048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9060240161024d565b60405163790a38ad60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015610aae573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ad2919061121b565b15610afb5760405163b7c4528f60e01b81526001600160601b0383166004820152602401610503565b610b0c81610b07610214565b610de0565b156107045781610b1a610214565b6040516316eec12960e31b81526001600160601b03909216600483015264ffffffffff908116602483015282166044820152606401610503565b604080516080810182525f80825260208201819052918101829052606081018290525f856001600160a01b0316636291423a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bb3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bd79190611451565b60405163134fc55b60e11b81526001600160601b03871660048201529091506001600160a01b0382169063269f8ab690602401602060405180830381865afa158015610c25573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c49919061121b565b610c715760405163686c563560e11b81526001600160601b0386166004820152602401610503565b610c7b85856106b5565b60405163153d412560e31b81526001600160601b03861660048201526001600160a01b0382169063a9ea092890602401608060405180830381865afa158015610cc6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cea919061146c565b6060810180519590529396939550929350505050565b604051632c34efe560e11b81526001600160601b0383166004820152602481018290525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015610d5f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d8391906114df565b9392505050565b604051631488c84560e01b81526005600482015260011960248201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610398565b5f610d838383670de0b6b3a7640000610e62565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401602060405180830381865af4158015610e3e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d83919061121b565b5f80805f19858709858702925082811083820303915050805f03610e9957838281610e8f57610e8f6114fa565b0492505050610d83565b808411610ee05760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610503565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b6001600160601b0381168114610f5a575f80fd5b50565b5f60208284031215610f6d575f80fd5b8135610d8381610f46565b60ff81168114610f5a575f80fd5b5f60208284031215610f96575f80fd5b8135610d8381610f78565b6001600160a01b0381168114610f5a575f80fd5b64ffffffffff81168114610f5a575f80fd5b5f805f805f8060c08789031215610fdc575f80fd5b8635610fe781610fa1565b95506020870135610ff781610fa1565b9450604087013561100781610f46565b9350606087013561101781610f78565b9250608087013561102781610fb5565b8092505060a087013590509295509295509295565b5f806040838503121561104d575f80fd5b823561105881610f46565b946020939093013593505050565b5f805f60608486031215611078575f80fd5b833561108381610fa1565b9250602084013561109381610fa1565b929592945050506040919091013590565b5f805f606084860312156110b6575f80fd5b83356110c181610fa1565b925060208401356110d181610f46565b915060408401356110e181610fb5565b809150509250925092565b64ffffffffff8316815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f8060408385031215611143575f80fd5b823561114e81610f46565b9150602083013561115e81610fb5565b809150509250929050565b5f805f6060848603121561117b575f80fd5b833561118681610fa1565b9250602084013561109381610f46565b82815260a08101610d83602083018460ff81511682526020810151602083015264ffffffffff6040820151166040830152606081015160608301525050565b5f602082840312156111e5575f80fd5b8151610d8381610fb5565b5f60208284031215611200575f80fd5b5051919050565b80518015158114611216575f80fd5b919050565b5f6020828403121561122b575f80fd5b610d8382611207565b634e487b7160e01b5f52604160045260245ffd5b60405160e0810167ffffffffffffffff8111828210171561126b5761126b611234565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561129a5761129a611234565b604052919050565b805161121681610f46565b805161121681610f78565b805161121681610fa1565b5f82601f8301126112d2575f80fd5b815167ffffffffffffffff8111156112ec576112ec611234565b6020611300601f8301601f19168201611271565b8281528582848701011115611313575f80fd5b5f5b83811015611330578581018301518282018401528201611315565b505f928101909101919091529392505050565b5f60208284031215611353575f80fd5b815167ffffffffffffffff8082111561136a575f80fd5b9083019060e0828603121561137d575f80fd5b611385611248565b61138e836112a2565b815261139c602084016112a2565b60208201526113ad604084016112ad565b60408201526113be60608401611207565b60608201526113cf608084016112b8565b60808201526113e060a084016112b8565b60a082015260c0830151828111156113f6575f80fd5b611402878286016112c3565b60c08301525095945050505050565b5f60208284031215611421575f80fd5b8151610d8381610f78565b60ff828116828216039081111561032657634e487b7160e01b5f52601160045260245ffd5b5f60208284031215611461575f80fd5b8151610d8381610fa1565b5f6080828403121561147c575f80fd5b6040516080810181811067ffffffffffffffff8211171561149f5761149f611234565b60405282516114ad81610f78565b81526020838101519082015260408301516114c781610fb5565b60408201526060928301519281019290925250919050565b5f602082840312156114ef575f80fd5b8151610d8381610f46565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212206ddc34593b2f1255aeab9d63ae9ab6d7df1730fb7fd408546c6c1e3fe173cc1864736f6c63430008180033",
216
455
  "linkReferences": {
456
+ "contracts/type/Amount.sol": {
457
+ "AmountLib": [
458
+ {
459
+ "length": 20,
460
+ "start": 3420
461
+ }
462
+ ]
463
+ },
217
464
  "contracts/type/NftId.sol": {
218
465
  "NftIdLib": [
219
466
  {
220
467
  "length": 20,
221
- "start": 548
468
+ "start": 713
222
469
  },
223
470
  {
224
471
  "length": 20,
225
- "start": 925
472
+ "start": 1066
226
473
  }
227
474
  ]
228
475
  },
@@ -230,19 +477,19 @@
230
477
  "SecondsLib": [
231
478
  {
232
479
  "length": 20,
233
- "start": 444
480
+ "start": 612
234
481
  },
235
482
  {
236
483
  "length": 20,
237
- "start": 2195
484
+ "start": 2669
238
485
  },
239
486
  {
240
487
  "length": 20,
241
- "start": 2324
488
+ "start": 2731
242
489
  },
243
490
  {
244
491
  "length": 20,
245
- "start": 2670
492
+ "start": 3643
246
493
  }
247
494
  ]
248
495
  },
@@ -250,25 +497,37 @@
250
497
  "UFixedLib": [
251
498
  {
252
499
  "length": 20,
253
- "start": 800
500
+ "start": 943
501
+ },
502
+ {
503
+ "length": 20,
504
+ "start": 1857
254
505
  },
255
506
  {
256
507
  "length": 20,
257
- "start": 2262
508
+ "start": 3551
258
509
  }
259
510
  ]
260
511
  }
261
512
  },
262
513
  "deployedLinkReferences": {
514
+ "contracts/type/Amount.sol": {
515
+ "AmountLib": [
516
+ {
517
+ "length": 20,
518
+ "start": 3367
519
+ }
520
+ ]
521
+ },
263
522
  "contracts/type/NftId.sol": {
264
523
  "NftIdLib": [
265
524
  {
266
525
  "length": 20,
267
- "start": 490
526
+ "start": 660
268
527
  },
269
528
  {
270
529
  "length": 20,
271
- "start": 867
530
+ "start": 1013
272
531
  }
273
532
  ]
274
533
  },
@@ -276,19 +535,19 @@
276
535
  "SecondsLib": [
277
536
  {
278
537
  "length": 20,
279
- "start": 386
538
+ "start": 559
280
539
  },
281
540
  {
282
541
  "length": 20,
283
- "start": 2137
542
+ "start": 2616
284
543
  },
285
544
  {
286
545
  "length": 20,
287
- "start": 2266
546
+ "start": 2678
288
547
  },
289
548
  {
290
549
  "length": 20,
291
- "start": 2612
550
+ "start": 3590
292
551
  }
293
552
  ]
294
553
  },
@@ -296,11 +555,15 @@
296
555
  "UFixedLib": [
297
556
  {
298
557
  "length": 20,
299
- "start": 742
558
+ "start": 890
559
+ },
560
+ {
561
+ "length": 20,
562
+ "start": 1804
300
563
  },
301
564
  {
302
565
  "length": 20,
303
- "start": 2204
566
+ "start": 3498
304
567
  }
305
568
  ]
306
569
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e4a126ce6401cd78d1e8e897900e2e2d.json"
3
+ "buildInfo": "../../../build-info/a908a9a1f830641eab2f9c67c8cf8fce.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "LibAddressSet",
4
4
  "sourceName": "contracts/type/AddressSet.sol",
5
5
  "abi": [],
6
- "bytecode": "0x61042c61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806360a174941461007157806361f54352146100a65780638f78eb28146100d55780639fc5d958146100f5578063b06b9b8c14610115578063c01a867914610128575b600080fd5b81801561007d57600080fd5b5061009161008c366004610332565b610153565b60405190151581526020015b60405180910390f35b6100916100b4366004610332565b6001600160a01b031660009081526001919091016020526040902054151590565b6100e76100e336600461036e565b5490565b60405190815260200161009d565b81801561010157600080fd5b50610091610110366004610332565b61028b565b61009161012336600461036e565b541590565b61013b610136366004610387565b6102ff565b6040516001600160a01b03909116815260200161009d565b6001600160a01b0381166000908152600183016020526040812054801561027f5760006101816001836103a9565b8554909150600090610195906001906103a9565b90508181146102215760008660000182815481106101b5576101b56103ca565b60009182526020909120015487546001600160a01b03909116915081908890859081106101e4576101e46103ca565b600091825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260018801909152604090208390555b8554869080610232576102326103e0565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b038716825260018881019091526040822091909155935061028592505050565b60009150505b92915050565b6001600160a01b038116600090815260018301602052604081205481036102f757508154600180820184556000848152602080822090930180546001600160a01b0319166001600160a01b03861690811790915585549082528286019093526040902091909155610285565b506000610285565b6000826000018281548110610316576103166103ca565b6000918252602090912001546001600160a01b03169392505050565b6000806040838503121561034557600080fd5b8235915060208301356001600160a01b038116811461036357600080fd5b809150509250929050565b60006020828403121561038057600080fd5b5035919050565b6000806040838503121561039a57600080fd5b50508035926020909101359150565b8181038181111561028557634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea26469706673582212203bc8da38d0d370b4b340f201ae7d654fecc8ae75a4001a87929542d68f8039cf64736f6c63430008140033",
7
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806360a174941461007157806361f54352146100a65780638f78eb28146100d55780639fc5d958146100f5578063b06b9b8c14610115578063c01a867914610128575b600080fd5b81801561007d57600080fd5b5061009161008c366004610332565b610153565b60405190151581526020015b60405180910390f35b6100916100b4366004610332565b6001600160a01b031660009081526001919091016020526040902054151590565b6100e76100e336600461036e565b5490565b60405190815260200161009d565b81801561010157600080fd5b50610091610110366004610332565b61028b565b61009161012336600461036e565b541590565b61013b610136366004610387565b6102ff565b6040516001600160a01b03909116815260200161009d565b6001600160a01b0381166000908152600183016020526040812054801561027f5760006101816001836103a9565b8554909150600090610195906001906103a9565b90508181146102215760008660000182815481106101b5576101b56103ca565b60009182526020909120015487546001600160a01b03909116915081908890859081106101e4576101e46103ca565b600091825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260018801909152604090208390555b8554869080610232576102326103e0565b60008281526020808220830160001990810180546001600160a01b03191690559092019092556001600160a01b038716825260018881019091526040822091909155935061028592505050565b60009150505b92915050565b6001600160a01b038116600090815260018301602052604081205481036102f757508154600180820184556000848152602080822090930180546001600160a01b0319166001600160a01b03861690811790915585549082528286019093526040902091909155610285565b506000610285565b6000826000018281548110610316576103166103ca565b6000918252602090912001546001600160a01b03169392505050565b6000806040838503121561034557600080fd5b8235915060208301356001600160a01b038116811461036357600080fd5b809150509250929050565b60006020828403121561038057600080fd5b5035919050565b6000806040838503121561039a57600080fd5b50508035926020909101359150565b8181038181111561028557634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b634e487b7160e01b600052603160045260246000fdfea26469706673582212203bc8da38d0d370b4b340f201ae7d654fecc8ae75a4001a87929542d68f8039cf64736f6c63430008140033",
6
+ "bytecode": "0x61040a610035600b8282823980515f1a60731461002957634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c806360a174941461006f57806361f54352146100a35780638f78eb28146100d15780639fc5d958146100f1578063b06b9b8c14610110578063c01a867914610123575b5f80fd5b81801561007a575f80fd5b5061008e61008936600461031d565b61014e565b60405190151581526020015b60405180910390f35b61008e6100b136600461031d565b6001600160a01b03165f9081526001919091016020526040902054151590565b6100e36100df366004610356565b5490565b60405190815260200161009a565b8180156100fc575f80fd5b5061008e61010b36600461031d565b61027c565b61008e61011e366004610356565b541590565b61013661013136600461036d565b6102ed565b6040516001600160a01b03909116815260200161009a565b6001600160a01b0381165f9081526001830160205260408120548015610271575f61017a60018361038d565b85549091505f9061018d9060019061038d565b9050818114610215575f865f0182815481106101ab576101ab6103ac565b5f9182526020909120015487546001600160a01b03909116915081908890859081106101d9576101d96103ac565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260018801909152604090208390555b8554869080610226576102266103c0565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b038716825260018881019091526040822091909155935061027692505050565b5f9150505b92915050565b6001600160a01b0381165f90815260018301602052604081205481036102e657508154600180820184555f848152602080822090930180546001600160a01b0319166001600160a01b03861690811790915585549082528286019093526040902091909155610276565b505f610276565b5f825f018281548110610302576103026103ac565b5f918252602090912001546001600160a01b03169392505050565b5f806040838503121561032e575f80fd5b8235915060208301356001600160a01b038116811461034b575f80fd5b809150509250929050565b5f60208284031215610366575f80fd5b5035919050565b5f806040838503121561037e575f80fd5b50508035926020909101359150565b8181038181111561027657634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52603160045260245ffdfea26469706673582212208e2d1c65ea0dc4f61b3b58973963f89050c66fdb6af103012e3873ee15f14ef364736f6c63430008180033",
7
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c806360a174941461006f57806361f54352146100a35780638f78eb28146100d15780639fc5d958146100f1578063b06b9b8c14610110578063c01a867914610123575b5f80fd5b81801561007a575f80fd5b5061008e61008936600461031d565b61014e565b60405190151581526020015b60405180910390f35b61008e6100b136600461031d565b6001600160a01b03165f9081526001919091016020526040902054151590565b6100e36100df366004610356565b5490565b60405190815260200161009a565b8180156100fc575f80fd5b5061008e61010b36600461031d565b61027c565b61008e61011e366004610356565b541590565b61013661013136600461036d565b6102ed565b6040516001600160a01b03909116815260200161009a565b6001600160a01b0381165f9081526001830160205260408120548015610271575f61017a60018361038d565b85549091505f9061018d9060019061038d565b9050818114610215575f865f0182815481106101ab576101ab6103ac565b5f9182526020909120015487546001600160a01b03909116915081908890859081106101d9576101d96103ac565b5f91825260208083209190910180546001600160a01b0319166001600160a01b0394851617905592909116815260018801909152604090208390555b8554869080610226576102266103c0565b5f828152602080822083015f1990810180546001600160a01b03191690559092019092556001600160a01b038716825260018881019091526040822091909155935061027692505050565b5f9150505b92915050565b6001600160a01b0381165f90815260018301602052604081205481036102e657508154600180820184555f848152602080822090930180546001600160a01b0319166001600160a01b03861690811790915585549082528286019093526040902091909155610276565b505f610276565b5f825f018281548110610302576103026103ac565b5f918252602090912001546001600160a01b03169392505050565b5f806040838503121561032e575f80fd5b8235915060208301356001600160a01b038116811461034b575f80fd5b809150509250929050565b5f60208284031215610366575f80fd5b5035919050565b5f806040838503121561037e575f80fd5b50508035926020909101359150565b8181038181111561027657634e487b7160e01b5f52601160045260245ffd5b634e487b7160e01b5f52603260045260245ffd5b634e487b7160e01b5f52603160045260245ffdfea26469706673582212208e2d1c65ea0dc4f61b3b58973963f89050c66fdb6af103012e3873ee15f14ef364736f6c63430008180033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e4a126ce6401cd78d1e8e897900e2e2d.json"
3
+ "buildInfo": "../../../build-info/a908a9a1f830641eab2f9c67c8cf8fce.json"
4
4
  }
@@ -161,6 +161,54 @@
161
161
  "stateMutability": "pure",
162
162
  "type": "function"
163
163
  },
164
+ {
165
+ "inputs": [
166
+ {
167
+ "internalType": "Amount",
168
+ "name": "a1",
169
+ "type": "uint96"
170
+ },
171
+ {
172
+ "internalType": "Amount",
173
+ "name": "a2",
174
+ "type": "uint96"
175
+ }
176
+ ],
177
+ "name": "min",
178
+ "outputs": [
179
+ {
180
+ "internalType": "Amount",
181
+ "name": "",
182
+ "type": "uint96"
183
+ }
184
+ ],
185
+ "stateMutability": "pure",
186
+ "type": "function"
187
+ },
188
+ {
189
+ "inputs": [
190
+ {
191
+ "internalType": "Amount",
192
+ "name": "amount",
193
+ "type": "uint96"
194
+ },
195
+ {
196
+ "internalType": "UFixed",
197
+ "name": "factor",
198
+ "type": "uint256"
199
+ }
200
+ ],
201
+ "name": "multiplyWith",
202
+ "outputs": [
203
+ {
204
+ "internalType": "Amount",
205
+ "name": "",
206
+ "type": "uint96"
207
+ }
208
+ ],
209
+ "stateMutability": "pure",
210
+ "type": "function"
211
+ },
164
212
  {
165
213
  "inputs": [
166
214
  {
@@ -256,14 +304,22 @@
256
304
  "type": "function"
257
305
  }
258
306
  ],
259
- "bytecode": "0x61041461003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100be5760003560e01c806355205f0f1161007b57806355205f0f146101945780636ac5db19146101a757806398058c4c146101b4578063bc1b392d146101d3578063c4cade9d146101da578063c79eaa22146101f957600080fd5b806308dc895e146100c357806309a81d62146100f0578063274acb351461011f57806330b8415f1461014a5780634c41dd961461016657806352694ee814610179575b600080fd5b6100dd6100d1366004610301565b6001600160601b031690565b6040519081526020015b60405180910390f35b61010f6100fe36600461031c565b6001600160601b0390811691161090565b60405190151581526020016100e7565b61013261012d36600461031c565b61020c565b6040516001600160601b0390911681526020016100e7565b61010f610158366004610301565b6001600160601b0316151590565b61013261017436600461034f565b61021f565b61010f610187366004610301565b6001600160601b03161590565b6100dd6101a2366004610301565b610254565b6001600160601b03610132565b61010f6101c236600461031c565b6001600160601b0390811691161190565b6000610132565b61010f6101e836600461031c565b6001600160601b0390811691161490565b61013261020736600461031c565b6102d9565b6000610218828461037e565b9392505050565b60006001600160601b0382111561025057604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b038216600482015260009073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af41580156102af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d391906103a5565b92915050565b600061021882846103be565b80356001600160601b03811681146102fc57600080fd5b919050565b60006020828403121561031357600080fd5b610218826102e5565b6000806040838503121561032f57600080fd5b610338836102e5565b9150610346602084016102e5565b90509250929050565b60006020828403121561036157600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b6001600160601b0381811683821601908082111561039e5761039e610368565b5092915050565b6000602082840312156103b757600080fd5b5051919050565b6001600160601b0382811682821603908082111561039e5761039e61036856fea2646970667358221220ec77626414aa805945092be2df21e5d4ef115bb82db0a638523075e2c98ad3aa64736f6c63430008140033",
260
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100be5760003560e01c806355205f0f1161007b57806355205f0f146101945780636ac5db19146101a757806398058c4c146101b4578063bc1b392d146101d3578063c4cade9d146101da578063c79eaa22146101f957600080fd5b806308dc895e146100c357806309a81d62146100f0578063274acb351461011f57806330b8415f1461014a5780634c41dd961461016657806352694ee814610179575b600080fd5b6100dd6100d1366004610301565b6001600160601b031690565b6040519081526020015b60405180910390f35b61010f6100fe36600461031c565b6001600160601b0390811691161090565b60405190151581526020016100e7565b61013261012d36600461031c565b61020c565b6040516001600160601b0390911681526020016100e7565b61010f610158366004610301565b6001600160601b0316151590565b61013261017436600461034f565b61021f565b61010f610187366004610301565b6001600160601b03161590565b6100dd6101a2366004610301565b610254565b6001600160601b03610132565b61010f6101c236600461031c565b6001600160601b0390811691161190565b6000610132565b61010f6101e836600461031c565b6001600160601b0390811691161490565b61013261020736600461031c565b6102d9565b6000610218828461037e565b9392505050565b60006001600160601b0382111561025057604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b038216600482015260009073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af41580156102af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102d391906103a5565b92915050565b600061021882846103be565b80356001600160601b03811681146102fc57600080fd5b919050565b60006020828403121561031357600080fd5b610218826102e5565b6000806040838503121561032f57600080fd5b610338836102e5565b9150610346602084016102e5565b90509250929050565b60006020828403121561036157600080fd5b5035919050565b634e487b7160e01b600052601160045260246000fd5b6001600160601b0381811683821601908082111561039e5761039e610368565b5092915050565b6000602082840312156103b757600080fd5b5051919050565b6001600160601b0382811682821603908082111561039e5761039e61036856fea2646970667358221220ec77626414aa805945092be2df21e5d4ef115bb82db0a638523075e2c98ad3aa64736f6c63430008140033",
307
+ "bytecode": "0x6106b3610035600b8282823980515f1a60731461002957634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c80635869dfca1161009357806398058c4c1161006e57806398058c4c146101ff578063bc1b392d1461021e578063c4cade9d14610224578063c79eaa2214610243575f80fd5b80635869dfca146101cc5780636ac5db19146101df5780637931c811146101ec575f80fd5b806330b8415f116100ce57806330b8415f1461016f5780634c41dd961461018b57806352694ee81461019e57806355205f0f146101b9575f80fd5b806308dc895e146100f457806309a81d6214610121578063274acb3514610144575b5f80fd5b61010e61010236600461056e565b6001600160601b031690565b6040519081526020015b60405180910390f35b61013461012f366004610587565b610256565b6040519015158152602001610118565b610157610152366004610587565b61026c565b6040516001600160601b039091168152602001610118565b61013461017d36600461056e565b6001600160601b0316151590565b6101576101993660046105b8565b61027e565b6101346101ac36600461056e565b6001600160601b03161590565b61010e6101c736600461056e565b6102b3565b6101576101da3660046105cf565b61032f565b6001600160601b03610157565b6101576101fa366004610587565b61042d565b61013461020d366004610587565b6001600160601b0390811691161190565b5f610157565b610134610232366004610587565b6001600160601b0390811691161490565b610157610251366004610587565b610455565b6001600160601b03808216908316105b92915050565b5f610277828461060b565b9392505050565b5f6001600160601b038211156102af57604051635a1bd76760e01b8152600481018390526024015b60405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af415801561030b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102669190610632565b6040516322f5db0f60e11b81526001600160601b03831660048201525f90610277906103ba90849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610391573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b59190610632565b610460565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015610409573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101999190610632565b5f816001600160601b0316836001600160601b0316101561044f575081610266565b50919050565b5f6102778284610649565b5f6102778383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104a65783828161049c5761049c610669565b0492505050610277565b8084116104ed5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b60448201526064016102a6565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b0381168114610569575f80fd5b919050565b5f6020828403121561057e575f80fd5b61027782610553565b5f8060408385031215610598575f80fd5b6105a183610553565b91506105af60208401610553565b90509250929050565b5f602082840312156105c8575f80fd5b5035919050565b5f80604083850312156105e0575f80fd5b6105e983610553565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b0381811683821601908082111561062b5761062b6105f7565b5092915050565b5f60208284031215610642575f80fd5b5051919050565b6001600160601b0382811682821603908082111561062b5761062b6105f7565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220accb5b74618a1a0d37477c176c6487542b49e327c0dadec3cc40ab377d7544fd64736f6c63430008180033",
308
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c80635869dfca1161009357806398058c4c1161006e57806398058c4c146101ff578063bc1b392d1461021e578063c4cade9d14610224578063c79eaa2214610243575f80fd5b80635869dfca146101cc5780636ac5db19146101df5780637931c811146101ec575f80fd5b806330b8415f116100ce57806330b8415f1461016f5780634c41dd961461018b57806352694ee81461019e57806355205f0f146101b9575f80fd5b806308dc895e146100f457806309a81d6214610121578063274acb3514610144575b5f80fd5b61010e61010236600461056e565b6001600160601b031690565b6040519081526020015b60405180910390f35b61013461012f366004610587565b610256565b6040519015158152602001610118565b610157610152366004610587565b61026c565b6040516001600160601b039091168152602001610118565b61013461017d36600461056e565b6001600160601b0316151590565b6101576101993660046105b8565b61027e565b6101346101ac36600461056e565b6001600160601b03161590565b61010e6101c736600461056e565b6102b3565b6101576101da3660046105cf565b61032f565b6001600160601b03610157565b6101576101fa366004610587565b61042d565b61013461020d366004610587565b6001600160601b0390811691161190565b5f610157565b610134610232366004610587565b6001600160601b0390811691161490565b610157610251366004610587565b610455565b6001600160601b03808216908316105b92915050565b5f610277828461060b565b9392505050565b5f6001600160601b038211156102af57604051635a1bd76760e01b8152600481018390526024015b60405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af415801561030b573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102669190610632565b6040516322f5db0f60e11b81526001600160601b03831660048201525f90610277906103ba90849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610391573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b59190610632565b610460565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015610409573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101999190610632565b5f816001600160601b0316836001600160601b0316101561044f575081610266565b50919050565b5f6102778284610649565b5f6102778383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104a65783828161049c5761049c610669565b0492505050610277565b8084116104ed5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b60448201526064016102a6565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b0381168114610569575f80fd5b919050565b5f6020828403121561057e575f80fd5b61027782610553565b5f8060408385031215610598575f80fd5b6105a183610553565b91506105af60208401610553565b90509250929050565b5f602082840312156105c8575f80fd5b5035919050565b5f80604083850312156105e0575f80fd5b6105e983610553565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b0381811683821601908082111561062b5761062b6105f7565b5092915050565b5f60208284031215610642575f80fd5b5051919050565b6001600160601b0382811682821603908082111561062b5761062b6105f7565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220accb5b74618a1a0d37477c176c6487542b49e327c0dadec3cc40ab377d7544fd64736f6c63430008180033",
261
309
  "linkReferences": {
262
310
  "contracts/type/UFixed.sol": {
263
311
  "UFixedLib": [
264
312
  {
265
313
  "length": 20,
266
- "start": 687
314
+ "start": 776
315
+ },
316
+ {
317
+ "length": 20,
318
+ "start": 910
319
+ },
320
+ {
321
+ "length": 20,
322
+ "start": 1030
267
323
  }
268
324
  ]
269
325
  }
@@ -273,7 +329,15 @@
273
329
  "UFixedLib": [
274
330
  {
275
331
  "length": 20,
276
- "start": 629
332
+ "start": 723
333
+ },
334
+ {
335
+ "length": 20,
336
+ "start": 857
337
+ },
338
+ {
339
+ "length": 20,
340
+ "start": 977
277
341
  }
278
342
  ]
279
343
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e4a126ce6401cd78d1e8e897900e2e2d.json"
3
+ "buildInfo": "../../../build-info/a908a9a1f830641eab2f9c67c8cf8fce.json"
4
4
  }