@etherisc/gif-next 0.0.2-caf7ec3-284 → 0.0.2-cb65f02-318

Sign up to get free protection for your applications and to get access to all the features.
Files changed (235) hide show
  1. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  2. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  3. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  4. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  5. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  6. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +1 -1
  8. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  11. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  12. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +2 -2
  13. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  14. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +2 -2
  15. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  16. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  17. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +96 -102
  18. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  19. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +46 -46
  20. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  21. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  22. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +1 -12
  23. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  24. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +2 -2
  25. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  26. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  28. package/artifacts/contracts/instance/Instance.sol/Instance.json +2 -2
  29. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  30. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +2 -2
  31. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  32. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +2 -2
  33. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  34. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +2 -2
  35. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  36. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +2 -2
  37. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  38. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +2 -2
  39. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  40. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +2 -2
  41. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  42. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  43. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  44. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  45. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  46. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  47. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  48. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +2 -2
  49. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  50. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  51. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  52. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  53. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  54. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  55. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  56. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  57. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +2 -2
  58. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  59. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +2 -2
  60. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  61. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  62. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  63. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  64. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  65. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +2 -2
  66. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  67. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +2 -2
  68. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  69. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +24 -0
  70. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  71. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +16 -16
  72. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  73. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +210 -44
  74. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  75. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +55 -23
  76. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  77. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +102 -0
  78. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  79. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +24 -0
  80. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  81. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  82. package/artifacts/contracts/pool/Pool.sol/Pool.json +24 -0
  83. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  84. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +2 -2
  85. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  86. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +2 -2
  87. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  88. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +2 -2
  89. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  90. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +2 -2
  91. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  92. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  93. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +2 -2
  94. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  95. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +2 -2
  96. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  97. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +2 -2
  98. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  99. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  100. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  101. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  102. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  103. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
  104. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  105. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +2 -2
  106. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  107. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +2 -2
  108. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  109. package/artifacts/contracts/product/PricingService.sol/PricingService.json +7 -2
  110. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  111. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +2 -2
  112. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  113. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
  114. package/artifacts/contracts/product/ProductService.sol/ProductService.json +2 -2
  115. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  116. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +2 -2
  117. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  118. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  119. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  120. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  121. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  122. package/artifacts/contracts/registry/Registry.sol/Registry.json +2 -2
  123. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  124. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +2 -2
  125. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  126. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +2 -2
  127. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  128. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +2 -2
  129. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  130. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  131. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +2 -2
  132. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  133. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +2 -2
  134. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  135. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
  136. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  137. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  138. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +2 -2
  139. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  140. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +2 -2
  141. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  142. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  143. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  144. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  145. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  146. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  147. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  148. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  149. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  150. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  151. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  152. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  153. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +1 -1
  154. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  155. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  156. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  157. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  158. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  159. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  160. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  161. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  162. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  163. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  164. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  165. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
  166. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  167. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  168. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
  169. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +12 -2
  170. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  171. package/artifacts/contracts/staking/Staking.sol/Staking.json +2 -2
  172. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
  173. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  174. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +2 -2
  175. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  176. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +2 -2
  177. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  178. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +2 -2
  179. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  180. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +2 -2
  181. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  182. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +17 -12
  183. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  184. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +7 -2
  185. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  186. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  187. package/artifacts/contracts/type/Amount.sol/AmountLib.json +37 -8
  188. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  189. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  190. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  191. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  192. package/artifacts/contracts/type/Fee.sol/FeeLib.json +7 -2
  193. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  194. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  195. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  196. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  197. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  198. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  199. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  200. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  201. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  202. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  203. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  204. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  205. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  206. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  207. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  208. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  209. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  210. package/artifacts/contracts/type/UFixed.sol/MathLib.json +9 -3
  211. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  212. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +39 -2
  213. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  214. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  215. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  216. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  217. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  218. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  219. package/contracts/distribution/DistributionService.sol +3 -16
  220. package/contracts/distribution/IDistributionComponent.sol +1 -1
  221. package/contracts/distribution/IDistributionService.sol +2 -3
  222. package/contracts/pool/BasicPoolAuthorization.sol +3 -0
  223. package/contracts/pool/BundleService.sol +59 -2
  224. package/contracts/pool/IBundleService.sol +14 -0
  225. package/contracts/pool/IPoolComponent.sol +7 -0
  226. package/contracts/pool/Pool.sol +17 -0
  227. package/contracts/pool/PoolService.sol +1 -3
  228. package/contracts/product/ClaimService.sol +2 -1
  229. package/contracts/product/PolicyService.sol +1 -0
  230. package/contracts/shared/ComponentService.sol +2 -3
  231. package/contracts/staking/Staking.sol +3 -1
  232. package/contracts/type/Amount.sol +12 -5
  233. package/contracts/type/Referral.sol +1 -0
  234. package/contracts/type/UFixed.sol +29 -10
  235. package/package.json +1 -1
@@ -14,6 +14,11 @@
14
14
  "name": "ErrorAmountLibValueTooBig",
15
15
  "type": "error"
16
16
  },
17
+ {
18
+ "inputs": [],
19
+ "name": "MathLigMulDivOverflow",
20
+ "type": "error"
21
+ },
17
22
  {
18
23
  "inputs": [
19
24
  {
@@ -105,6 +110,30 @@
105
110
  "stateMutability": "pure",
106
111
  "type": "function"
107
112
  },
113
+ {
114
+ "inputs": [
115
+ {
116
+ "internalType": "Amount",
117
+ "name": "a1",
118
+ "type": "uint96"
119
+ },
120
+ {
121
+ "internalType": "Amount",
122
+ "name": "a2",
123
+ "type": "uint96"
124
+ }
125
+ ],
126
+ "name": "gte",
127
+ "outputs": [
128
+ {
129
+ "internalType": "bool",
130
+ "name": "",
131
+ "type": "bool"
132
+ }
133
+ ],
134
+ "stateMutability": "pure",
135
+ "type": "function"
136
+ },
108
137
  {
109
138
  "inputs": [
110
139
  {
@@ -304,22 +333,22 @@
304
333
  "type": "function"
305
334
  }
306
335
  ],
307
- "bytecode": "0x6106aa610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c80635869dfca1161009357806398058c4c1161006e57806398058c4c146101ff578063bc1b392d1461021e578063c4cade9d14610224578063c79eaa2214610243575f80fd5b80635869dfca146101cc5780636ac5db19146101df5780637931c811146101ec575f80fd5b806330b8415f116100ce57806330b8415f1461016f5780634c41dd961461018b57806352694ee81461019e57806355205f0f146101b9575f80fd5b806308dc895e146100f457806309a81d6214610121578063274acb3514610144575b5f80fd5b61010e61010236600461056e565b6001600160601b031690565b6040519081526020015b60405180910390f35b61013461012f366004610587565b610256565b6040519015158152602001610118565b610157610152366004610587565b61026c565b6040516001600160601b039091168152602001610118565b61013461017d36600461056e565b6001600160601b0316151590565b6101576101993660046105b8565b61027e565b6101346101ac36600461056e565b6001600160601b03161590565b61010e6101c736600461056e565b6102b3565b6101576101da3660046105cf565b61032f565b6001600160601b03610157565b6101576101fa366004610587565b61042d565b61013461020d366004610587565b6001600160601b0390811691161190565b5f610157565b610134610232366004610587565b6001600160601b0390811691161490565b610157610251366004610587565b610455565b6001600160601b03808216908316105b92915050565b5f610277828461060b565b9392505050565b5f6001600160601b038211156102af57604051635a1bd76760e01b8152600481018390526024015b60405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af415801561030b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610266919061062a565b6040516322f5db0f60e11b81526001600160601b03831660048201525f90610277906103ba90849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610391573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b5919061062a565b610460565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015610409573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610199919061062a565b5f816001600160601b0316836001600160601b0316101561044f575081610266565b50919050565b5f6102778284610641565b5f6102778383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104a65783828161049c5761049c610660565b0492505050610277565b8084116104ed5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b60448201526064016102a6565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b0381168114610569575f80fd5b919050565b5f6020828403121561057e575f80fd5b61027782610553565b5f8060408385031215610598575f80fd5b6105a183610553565b91506105af60208401610553565b90509250929050565b5f602082840312156105c8575f80fd5b5035919050565b5f80604083850312156105e0575f80fd5b6105e983610553565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b038181168382160190811115610266576102666105f7565b5f6020828403121561063a575f80fd5b5051919050565b6001600160601b038281168282160390811115610266576102666105f7565b634e487b7160e01b5f52601260045260245ffdfea264697066735822122045802a900f537d85ea52eadd4b561287f03f1d4b38c88f0c2c4e3034f2f0bd9564736f6c634300081a0033",
308
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100f0575f3560e01c80635869dfca1161009357806398058c4c1161006e57806398058c4c146101ff578063bc1b392d1461021e578063c4cade9d14610224578063c79eaa2214610243575f80fd5b80635869dfca146101cc5780636ac5db19146101df5780637931c811146101ec575f80fd5b806330b8415f116100ce57806330b8415f1461016f5780634c41dd961461018b57806352694ee81461019e57806355205f0f146101b9575f80fd5b806308dc895e146100f457806309a81d6214610121578063274acb3514610144575b5f80fd5b61010e61010236600461056e565b6001600160601b031690565b6040519081526020015b60405180910390f35b61013461012f366004610587565b610256565b6040519015158152602001610118565b610157610152366004610587565b61026c565b6040516001600160601b039091168152602001610118565b61013461017d36600461056e565b6001600160601b0316151590565b6101576101993660046105b8565b61027e565b6101346101ac36600461056e565b6001600160601b03161590565b61010e6101c736600461056e565b6102b3565b6101576101da3660046105cf565b61032f565b6001600160601b03610157565b6101576101fa366004610587565b61042d565b61013461020d366004610587565b6001600160601b0390811691161190565b5f610157565b610134610232366004610587565b6001600160601b0390811691161490565b610157610251366004610587565b610455565b6001600160601b03808216908316105b92915050565b5f610277828461060b565b9392505050565b5f6001600160601b038211156102af57604051635a1bd76760e01b8152600481018390526024015b60405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af415801561030b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610266919061062a565b6040516322f5db0f60e11b81526001600160601b03831660048201525f90610277906103ba90849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610391573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103b5919061062a565b610460565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015610409573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610199919061062a565b5f816001600160601b0316836001600160601b0316101561044f575081610266565b50919050565b5f6102778284610641565b5f6102778383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104a65783828161049c5761049c610660565b0492505050610277565b8084116104ed5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b60448201526064016102a6565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b0381168114610569575f80fd5b919050565b5f6020828403121561057e575f80fd5b61027782610553565b5f8060408385031215610598575f80fd5b6105a183610553565b91506105af60208401610553565b90509250929050565b5f602082840312156105c8575f80fd5b5035919050565b5f80604083850312156105e0575f80fd5b6105e983610553565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b038181168382160190811115610266576102666105f7565b5f6020828403121561063a575f80fd5b5051919050565b6001600160601b038281168282160390811115610266576102666105f7565b634e487b7160e01b5f52601260045260245ffdfea264697066735822122045802a900f537d85ea52eadd4b561287f03f1d4b38c88f0c2c4e3034f2f0bd9564736f6c634300081a0033",
336
+ "bytecode": "0x6106ac610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100fb575f3560e01c806355205f0f1161009e57806398058c4c1161006e57806398058c4c1461022a578063bc1b392d14610249578063c4cade9d1461024f578063c79eaa221461026e575f80fd5b806355205f0f146101e45780635869dfca146101f75780636ac5db191461020a5780637931c81114610217575f80fd5b8063274acb35116100d9578063274acb351461016f57806330b8415f1461019a5780634c41dd96146101b657806352694ee8146101c9575f80fd5b806308dc895e146100ff57806309a81d621461012c578063262b32d21461014f575b5f80fd5b61011961010d366004610570565b6001600160601b031690565b6040519081526020015b60405180910390f35b61013f61013a366004610589565b610281565b6040519015158152602001610123565b61013f61015d366004610589565b6001600160601b039081169116101590565b61018261017d366004610589565b610297565b6040516001600160601b039091168152602001610123565b61013f6101a8366004610570565b6001600160601b0316151590565b6101826101c43660046105ba565b6102a9565b61013f6101d7366004610570565b6001600160601b03161590565b6101196101f2366004610570565b6102dd565b6101826102053660046105d1565b610359565b6001600160601b03610182565b610182610225366004610589565b610457565b61013f610238366004610589565b6001600160601b0390811691161190565b5f610182565b61013f61025d366004610589565b6001600160601b0390811691161490565b61018261027c366004610589565b61047f565b6001600160601b03808216908316105b92915050565b5f6102a2828461060d565b9392505050565b5f6001600160601b038211156102d957604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610335573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610291919061062c565b6040516322f5db0f60e11b81526001600160601b03831660048201525f906102a2906103e490849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af41580156103bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103df919061062c565b61048a565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015610433573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c4919061062c565b5f816001600160601b0316836001600160601b03161015610479575081610291565b50919050565b5f6102a28284610643565b5f6102a28383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104d0578382816104c6576104c6610662565b04925050506102a2565b8084116104ef57604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b038116811461056b575f80fd5b919050565b5f60208284031215610580575f80fd5b6102a282610555565b5f806040838503121561059a575f80fd5b6105a383610555565b91506105b160208401610555565b90509250929050565b5f602082840312156105ca575f80fd5b5035919050565b5f80604083850312156105e2575f80fd5b6105eb83610555565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b038181168382160190811115610291576102916105f9565b5f6020828403121561063c575f80fd5b5051919050565b6001600160601b038281168282160390811115610291576102916105f9565b634e487b7160e01b5f52601260045260245ffdfea264697066735822122013765204b0b341e5f899c19c579dc5f273e4df7c20bc624cd8e865431bddce3764736f6c634300081a0033",
337
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100fb575f3560e01c806355205f0f1161009e57806398058c4c1161006e57806398058c4c1461022a578063bc1b392d14610249578063c4cade9d1461024f578063c79eaa221461026e575f80fd5b806355205f0f146101e45780635869dfca146101f75780636ac5db191461020a5780637931c81114610217575f80fd5b8063274acb35116100d9578063274acb351461016f57806330b8415f1461019a5780634c41dd96146101b657806352694ee8146101c9575f80fd5b806308dc895e146100ff57806309a81d621461012c578063262b32d21461014f575b5f80fd5b61011961010d366004610570565b6001600160601b031690565b6040519081526020015b60405180910390f35b61013f61013a366004610589565b610281565b6040519015158152602001610123565b61013f61015d366004610589565b6001600160601b039081169116101590565b61018261017d366004610589565b610297565b6040516001600160601b039091168152602001610123565b61013f6101a8366004610570565b6001600160601b0316151590565b6101826101c43660046105ba565b6102a9565b61013f6101d7366004610570565b6001600160601b03161590565b6101196101f2366004610570565b6102dd565b6101826102053660046105d1565b610359565b6001600160601b03610182565b610182610225366004610589565b610457565b61013f610238366004610589565b6001600160601b0390811691161190565b5f610182565b61013f61025d366004610589565b6001600160601b0390811691161490565b61018261027c366004610589565b61047f565b6001600160601b03808216908316105b92915050565b5f6102a2828461060d565b9392505050565b5f6001600160601b038211156102d957604051635a1bd76760e01b81526004810183905260240160405180910390fd5b5090565b6040516322f5db0f60e11b81526001600160601b03821660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af4158015610335573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610291919061062c565b6040516322f5db0f60e11b81526001600160601b03831660048201525f906102a2906103e490849073__$bf7bc340cbb9229ef1de2c568356e67902$__906345ebb61e90602401602060405180830381865af41580156103bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103df919061062c565b61048a565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015610433573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c4919061062c565b5f816001600160601b0316836001600160601b03161015610479575081610291565b50919050565b5f6102a28284610643565b5f6102a28383670de0b6b3a76400005f80805f19858709858702925082811083820303915050805f036104d0578382816104c6576104c6610662565b04925050506102a2565b8084116104ef57604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b80356001600160601b038116811461056b575f80fd5b919050565b5f60208284031215610580575f80fd5b6102a282610555565b5f806040838503121561059a575f80fd5b6105a383610555565b91506105b160208401610555565b90509250929050565b5f602082840312156105ca575f80fd5b5035919050565b5f80604083850312156105e2575f80fd5b6105eb83610555565b946020939093013593505050565b634e487b7160e01b5f52601160045260245ffd5b6001600160601b038181168382160190811115610291576102916105f9565b5f6020828403121561063c575f80fd5b5051919050565b6001600160601b038281168282160390811115610291576102916105f9565b634e487b7160e01b5f52601260045260245ffdfea264697066735822122013765204b0b341e5f899c19c579dc5f273e4df7c20bc624cd8e865431bddce3764736f6c634300081a0033",
309
338
  "linkReferences": {
310
339
  "contracts/type/UFixed.sol": {
311
340
  "UFixedLib": [
312
341
  {
313
342
  "length": 20,
314
- "start": 775
343
+ "start": 817
315
344
  },
316
345
  {
317
346
  "length": 20,
318
- "start": 909
347
+ "start": 951
319
348
  },
320
349
  {
321
350
  "length": 20,
322
- "start": 1029
351
+ "start": 1071
323
352
  }
324
353
  ]
325
354
  }
@@ -329,15 +358,15 @@
329
358
  "UFixedLib": [
330
359
  {
331
360
  "length": 20,
332
- "start": 723
361
+ "start": 765
333
362
  },
334
363
  {
335
364
  "length": 20,
336
- "start": 857
365
+ "start": 899
337
366
  },
338
367
  {
339
368
  "length": 20,
340
- "start": 977
369
+ "start": 1019
341
370
  }
342
371
  ]
343
372
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -3,6 +3,11 @@
3
3
  "contractName": "FeeLib",
4
4
  "sourceName": "contracts/type/Fee.sol",
5
5
  "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "MathLigMulDivOverflow",
9
+ "type": "error"
10
+ },
6
11
  {
7
12
  "inputs": [
8
13
  {
@@ -247,8 +252,8 @@
247
252
  "type": "function"
248
253
  }
249
254
  ],
250
- "bytecode": "0x610782610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639ed246ea116100635780639ed246ea146100f2578063bc1b392d14610125578063c7010dfa1461014e578063d0e149f714610181575f80fd5b806305deb8b7146100895780632b324dc0146100b15780635faa955b146100c4575b5f80fd5b61009c61009736600461060d565b610194565b60405190151581526020015b60405180910390f35b61009c6100bf366004610627565b6101ae565b6100d76100d236600461065a565b6101ce565b604080518251815260209283015192810192909252016100a8565b610105610100366004610691565b610273565b604080516001600160601b039384168152929091166020830152016100a8565b6040805180820182525f80825260209182018190528251808401909352808352908201526100d7565b6100d761015c3660046106c7565b6040805180820182525f80825260209182015281518083019092529281529182015290565b61009c61018f36600461060d565b61041f565b80515f901515806101a857505f8260200151115b92915050565b5f816020015183602001511480156101c7575082518251145b9392505050565b6040805180820182525f8082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c84560848301602060405180830381865af4158015610240573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026491906106e7565b81525f60209091015292915050565b5f8161027e84610194565b15610418576040516355205f0f60e01b81526001600160601b03841660048201525f9061030a9073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af41580156102df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906106e7565b8651610434565b6020860151604051632255341b60e11b81526004810183905291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96919073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561037d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a191906106e7565b6103ab91906106fe565b6040518263ffffffff1660e01b81526004016103c991815260200190565b602060405180830381865af41580156103e4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610408919061071d565b92506104148284610448565b9150505b9250929050565b5f81602001515f1480156101a8575050511590565b5f6101c78383670de0b6b3a76400006104cc565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401602060405180830381865af41580156104a8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c7919061071d565b5f80805f19858709858702925082811083820303915050805f03610503578382816104f9576104f9610738565b04925050506101c7565b80841161054e5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f604082840312156105c4575f80fd5b6040516040810181811067ffffffffffffffff821117156105f357634e487b7160e01b5f52604160045260245ffd5b604052823581526020928301359281019290925250919050565b5f6040828403121561061d575f80fd5b6101c783836105b4565b5f8060808385031215610638575f80fd5b61064284846105b4565b915061065184604085016105b4565b90509250929050565b5f6020828403121561066a575f80fd5b813560ff811681146101c7575f80fd5b6001600160601b038116811461068e575f80fd5b50565b5f80606083850312156106a2575f80fd5b6106ac84846105b4565b915060408301356106bc8161067a565b809150509250929050565b5f80604083850312156106d8575f80fd5b50508035926020909101359150565b5f602082840312156106f7575f80fd5b5051919050565b808201808211156101a857634e487b7160e01b5f52601160045260245ffd5b5f6020828403121561072d575f80fd5b81516101c78161067a565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212209160b6ffcb1c6e6248675ac594249940167722e0193b67f6692961052f6ec2a664736f6c634300081a0033",
251
- "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639ed246ea116100635780639ed246ea146100f2578063bc1b392d14610125578063c7010dfa1461014e578063d0e149f714610181575f80fd5b806305deb8b7146100895780632b324dc0146100b15780635faa955b146100c4575b5f80fd5b61009c61009736600461060d565b610194565b60405190151581526020015b60405180910390f35b61009c6100bf366004610627565b6101ae565b6100d76100d236600461065a565b6101ce565b604080518251815260209283015192810192909252016100a8565b610105610100366004610691565b610273565b604080516001600160601b039384168152929091166020830152016100a8565b6040805180820182525f80825260209182018190528251808401909352808352908201526100d7565b6100d761015c3660046106c7565b6040805180820182525f80825260209182015281518083019092529281529182015290565b61009c61018f36600461060d565b61041f565b80515f901515806101a857505f8260200151115b92915050565b5f816020015183602001511480156101c7575082518251145b9392505050565b6040805180820182525f8082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c84560848301602060405180830381865af4158015610240573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026491906106e7565b81525f60209091015292915050565b5f8161027e84610194565b15610418576040516355205f0f60e01b81526001600160601b03841660048201525f9061030a9073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af41580156102df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906106e7565b8651610434565b6020860151604051632255341b60e11b81526004810183905291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96919073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561037d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a191906106e7565b6103ab91906106fe565b6040518263ffffffff1660e01b81526004016103c991815260200190565b602060405180830381865af41580156103e4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610408919061071d565b92506104148284610448565b9150505b9250929050565b5f81602001515f1480156101a8575050511590565b5f6101c78383670de0b6b3a76400006104cc565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401602060405180830381865af41580156104a8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c7919061071d565b5f80805f19858709858702925082811083820303915050805f03610503578382816104f9576104f9610738565b04925050506101c7565b80841161054e5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f604082840312156105c4575f80fd5b6040516040810181811067ffffffffffffffff821117156105f357634e487b7160e01b5f52604160045260245ffd5b604052823581526020928301359281019290925250919050565b5f6040828403121561061d575f80fd5b6101c783836105b4565b5f8060808385031215610638575f80fd5b61064284846105b4565b915061065184604085016105b4565b90509250929050565b5f6020828403121561066a575f80fd5b813560ff811681146101c7575f80fd5b6001600160601b038116811461068e575f80fd5b50565b5f80606083850312156106a2575f80fd5b6106ac84846105b4565b915060408301356106bc8161067a565b809150509250929050565b5f80604083850312156106d8575f80fd5b50508035926020909101359150565b5f602082840312156106f7575f80fd5b5051919050565b808201808211156101a857634e487b7160e01b5f52601160045260245ffd5b5f6020828403121561072d575f80fd5b81516101c78161067a565b634e487b7160e01b5f52601260045260245ffdfea26469706673582212209160b6ffcb1c6e6248675ac594249940167722e0193b67f6692961052f6ec2a664736f6c634300081a0033",
255
+ "bytecode": "0x610756610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639ed246ea116100635780639ed246ea146100f2578063bc1b392d14610125578063c7010dfa1461014e578063d0e149f714610181575f80fd5b806305deb8b7146100895780632b324dc0146100b15780635faa955b146100c4575b5f80fd5b61009c6100973660046105e1565b610194565b60405190151581526020015b60405180910390f35b61009c6100bf3660046105fb565b6101ae565b6100d76100d236600461062e565b6101ce565b604080518251815260209283015192810192909252016100a8565b610105610100366004610665565b610273565b604080516001600160601b039384168152929091166020830152016100a8565b6040805180820182525f80825260209182018190528251808401909352808352908201526100d7565b6100d761015c36600461069b565b6040805180820182525f80825260209182015281518083019092529281529182015290565b61009c61018f3660046105e1565b61041f565b80515f901515806101a857505f8260200151115b92915050565b5f816020015183602001511480156101c7575082518251145b9392505050565b6040805180820182525f8082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c84560848301602060405180830381865af4158015610240573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026491906106bb565b81525f60209091015292915050565b5f8161027e84610194565b15610418576040516355205f0f60e01b81526001600160601b03841660048201525f9061030a9073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af41580156102df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906106bb565b8651610434565b6020860151604051632255341b60e11b81526004810183905291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96919073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561037d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a191906106bb565b6103ab91906106d2565b6040518263ffffffff1660e01b81526004016103c991815260200190565b602060405180830381865af41580156103e4573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061040891906106f1565b92506104148284610448565b9150505b9250929050565b5f81602001515f1480156101a8575050511590565b5f6101c78383670de0b6b3a76400006104cc565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401602060405180830381865af41580156104a8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c791906106f1565b5f80805f19858709858702925082811083820303915050805f03610503578382816104f9576104f961070c565b04925050506101c7565b80841161052257604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f60408284031215610598575f80fd5b6040516040810181811067ffffffffffffffff821117156105c757634e487b7160e01b5f52604160045260245ffd5b604052823581526020928301359281019290925250919050565b5f604082840312156105f1575f80fd5b6101c78383610588565b5f806080838503121561060c575f80fd5b6106168484610588565b91506106258460408501610588565b90509250929050565b5f6020828403121561063e575f80fd5b813560ff811681146101c7575f80fd5b6001600160601b0381168114610662575f80fd5b50565b5f8060608385031215610676575f80fd5b6106808484610588565b915060408301356106908161064e565b809150509250929050565b5f80604083850312156106ac575f80fd5b50508035926020909101359150565b5f602082840312156106cb575f80fd5b5051919050565b808201808211156101a857634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610701575f80fd5b81516101c78161064e565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220b92eab848363bc2ea2900ce95ee90acb94d6435185724a8959997a93ef654cbd64736f6c634300081a0033",
256
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610085575f3560e01c80639ed246ea116100635780639ed246ea146100f2578063bc1b392d14610125578063c7010dfa1461014e578063d0e149f714610181575f80fd5b806305deb8b7146100895780632b324dc0146100b15780635faa955b146100c4575b5f80fd5b61009c6100973660046105e1565b610194565b60405190151581526020015b60405180910390f35b61009c6100bf3660046105fb565b6101ae565b6100d76100d236600461062e565b6101ce565b604080518251815260209283015192810192909252016100a8565b610105610100366004610665565b610273565b604080516001600160601b039384168152929091166020830152016100a8565b6040805180820182525f80825260209182018190528251808401909352808352908201526100d7565b6100d761015c36600461069b565b6040805180820182525f80825260209182015281518083019092529281529182015290565b61009c61018f3660046105e1565b61041f565b80515f901515806101a857505f8260200151115b92915050565b5f816020015183602001511480156101c7575082518251145b9392505050565b6040805180820182525f8082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$bf7bc340cbb9229ef1de2c568356e67902$__631488c84560848301602060405180830381865af4158015610240573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026491906106bb565b81525f60209091015292915050565b5f8161027e84610194565b15610418576040516355205f0f60e01b81526001600160601b03841660048201525f9061030a9073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af41580156102df573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061030391906106bb565b8651610434565b6020860151604051632255341b60e11b81526004810183905291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd96919073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af415801561037d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103a191906106bb565b6103ab91906106d2565b6040518263ffffffff1660e01b81526004016103c991815260200190565b602060405180830381865af41580156103e4573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061040891906106f1565b92506104148284610448565b9150505b9250929050565b5f81602001515f1480156101a8575050511590565b5f6101c78383670de0b6b3a76400006104cc565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401602060405180830381865af41580156104a8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101c791906106f1565b5f80805f19858709858702925082811083820303915050805f03610503578382816104f9576104f961070c565b04925050506101c7565b80841161052257604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f60408284031215610598575f80fd5b6040516040810181811067ffffffffffffffff821117156105c757634e487b7160e01b5f52604160045260245ffd5b604052823581526020928301359281019290925250919050565b5f604082840312156105f1575f80fd5b6101c78383610588565b5f806080838503121561060c575f80fd5b6106168484610588565b91506106258460408501610588565b90509250929050565b5f6020828403121561063e575f80fd5b813560ff811681146101c7575f80fd5b6001600160601b0381168114610662575f80fd5b50565b5f8060608385031215610676575f80fd5b6106808484610588565b915060408301356106908161064e565b809150509250929050565b5f80604083850312156106ac575f80fd5b50508035926020909101359150565b5f602082840312156106cb575f80fd5b5051919050565b808201808211156101a857634e487b7160e01b5f52601160045260245ffd5b5f60208284031215610701575f80fd5b81516101c78161064e565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220b92eab848363bc2ea2900ce95ee90acb94d6435185724a8959997a93ef654cbd64736f6c634300081a0033",
252
257
  "linkReferences": {
253
258
  "contracts/type/Amount.sol": {
254
259
  "AmountLib": [
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -117,8 +117,8 @@
117
117
  "type": "function"
118
118
  }
119
119
  ],
120
- "bytecode": "0x6103e0610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632cf96bf91461006f5780633f093cd6146100a257806355ee6275146100ce5780637bc32ecf146100ef578063a420c7871461011f578063bc1b392d14610142575b5f80fd5b61008a61007d366004610211565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100b56100b0366004610253565b610148565b6040516001600160c01b03199091168152602001610099565b6100e16100dc366004610211565b61017a565b604051908152602001610099565b61010f6100fd366004610211565b5f6001600160c01b031982161561020b565b6040519015158152602001610099565b61013061012d366004610329565b90565b60405160ff9091168152602001610099565b5f6100b5565b5f828260405160200161015c929190610349565b60405160208183030381529060405280519060200120905092915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601d6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020b9190610393565b92915050565b5f60208284031215610221575f80fd5b81356001600160c01b031981168114610238575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610264575f80fd5b82356bffffffffffffffffffffffff8116811461027f575f80fd5b9150602083013567ffffffffffffffff81111561029a575f80fd5b8301601f810185136102aa575f80fd5b803567ffffffffffffffff8111156102c4576102c461023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102f3576102f361023f565b60405281815282820160200187101561030a575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215610339575f80fd5b813560ff81168114610238575f80fd5b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f8301168401019150509392505050565b5f602082840312156103a3575f80fd5b505191905056fea264697066735822122059e869486cfecc0ce829d52fbb7b30b0e7ffa2f2bfa9bc239fdea30631be6faf64736f6c634300081a0033",
121
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632cf96bf91461006f5780633f093cd6146100a257806355ee6275146100ce5780637bc32ecf146100ef578063a420c7871461011f578063bc1b392d14610142575b5f80fd5b61008a61007d366004610211565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100b56100b0366004610253565b610148565b6040516001600160c01b03199091168152602001610099565b6100e16100dc366004610211565b61017a565b604051908152602001610099565b61010f6100fd366004610211565b5f6001600160c01b031982161561020b565b6040519015158152602001610099565b61013061012d366004610329565b90565b60405160ff9091168152602001610099565b5f6100b5565b5f828260405160200161015c929190610349565b60405160208183030381529060405280519060200120905092915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601d6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020b9190610393565b92915050565b5f60208284031215610221575f80fd5b81356001600160c01b031981168114610238575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610264575f80fd5b82356bffffffffffffffffffffffff8116811461027f575f80fd5b9150602083013567ffffffffffffffff81111561029a575f80fd5b8301601f810185136102aa575f80fd5b803567ffffffffffffffff8111156102c4576102c461023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102f3576102f361023f565b60405281815282820160200187101561030a575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215610339575f80fd5b813560ff81168114610238575f80fd5b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f8301168401019150509392505050565b5f602082840312156103a3575f80fd5b505191905056fea264697066735822122059e869486cfecc0ce829d52fbb7b30b0e7ffa2f2bfa9bc239fdea30631be6faf64736f6c634300081a0033",
120
+ "bytecode": "0x6103e0610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632cf96bf91461006f5780633f093cd6146100a257806355ee6275146100ce5780637bc32ecf146100ef578063a420c7871461011f578063bc1b392d14610142575b5f80fd5b61008a61007d366004610211565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100b56100b0366004610253565b610148565b6040516001600160c01b03199091168152602001610099565b6100e16100dc366004610211565b61017a565b604051908152602001610099565b61010f6100fd366004610211565b5f6001600160c01b031982161561020b565b6040519015158152602001610099565b61013061012d366004610329565b90565b60405160ff9091168152602001610099565b5f6100b5565b5f828260405160200161015c929190610349565b60405160208183030381529060405280519060200120905092915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601d6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020b9190610393565b92915050565b5f60208284031215610221575f80fd5b81356001600160c01b031981168114610238575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610264575f80fd5b82356bffffffffffffffffffffffff8116811461027f575f80fd5b9150602083013567ffffffffffffffff81111561029a575f80fd5b8301601f810185136102aa575f80fd5b803567ffffffffffffffff8111156102c4576102c461023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102f3576102f361023f565b60405281815282820160200187101561030a575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215610339575f80fd5b813560ff81168114610238575f80fd5b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f8301168401019150509392505050565b5f602082840312156103a3575f80fd5b505191905056fea2646970667358221220c767affb37b06ea14a0869186bef6fe1272ab4fabc3aa4455b51b267c2edd7cb64736f6c634300081a0033",
121
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006b575f3560e01c80632cf96bf91461006f5780633f093cd6146100a257806355ee6275146100ce5780637bc32ecf146100ef578063a420c7871461011f578063bc1b392d14610142575b5f80fd5b61008a61007d366004610211565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100b56100b0366004610253565b610148565b6040516001600160c01b03199091168152602001610099565b6100e16100dc366004610211565b61017a565b604051908152602001610099565b61010f6100fd366004610211565b5f6001600160c01b031982161561020b565b6040519015158152602001610099565b61013061012d366004610329565b90565b60405160ff9091168152602001610099565b5f6100b5565b5f828260405160200161015c929190610349565b60405160208183030381529060405280519060200120905092915050565b5f73__$4b9aaffa8d044614668dad578b824b8eee$__63f48016ce601d6001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061020b9190610393565b92915050565b5f60208284031215610221575f80fd5b81356001600160c01b031981168114610238575f80fd5b9392505050565b634e487b7160e01b5f52604160045260245ffd5b5f8060408385031215610264575f80fd5b82356bffffffffffffffffffffffff8116811461027f575f80fd5b9150602083013567ffffffffffffffff81111561029a575f80fd5b8301601f810185136102aa575f80fd5b803567ffffffffffffffff8111156102c4576102c461023f565b604051601f8201601f19908116603f0116810167ffffffffffffffff811182821017156102f3576102f361023f565b60405281815282820160200187101561030a575f80fd5b816020840160208301375f602083830101528093505050509250929050565b5f60208284031215610339575f80fd5b813560ff81168114610238575f80fd5b6bffffffffffffffffffffffff83168152604060208201525f82518060408401528060208501606085015e5f606082850101526060601f19601f8301168401019150509392505050565b5f602082840312156103a3575f80fd5b505191905056fea2646970667358221220c767affb37b06ea14a0869186bef6fe1272ab4fabc3aa4455b51b267c2edd7cb64736f6c634300081a0033",
122
122
  "linkReferences": {
123
123
  "contracts/type/Key32.sol": {
124
124
  "Key32Lib": [
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -2,9 +2,15 @@
2
2
  "_format": "hh-sol-artifact-1",
3
3
  "contractName": "MathLib",
4
4
  "sourceName": "contracts/type/UFixed.sol",
5
- "abi": [],
6
- "bytecode": "0x60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea26469706673582212202cc980bf0a430ee2301014388bd392a4e0ea428e49d43fae39937ef0e86afdc464736f6c634300081a0033",
7
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea26469706673582212202cc980bf0a430ee2301014388bd392a4e0ea428e49d43fae39937ef0e86afdc464736f6c634300081a0033",
5
+ "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "MathLigMulDivOverflow",
9
+ "type": "error"
10
+ }
11
+ ],
12
+ "bytecode": "0x60556032600b8282823980515f1a607314602657634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe730000000000000000000000000000000000000000301460806040525f80fdfea2646970667358221220629048970b23464bc18bc1ab0a62b29b959e39ba69dbe3ba01a199f7c6ff738a64736f6c634300081a0033",
13
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040525f80fdfea2646970667358221220629048970b23464bc18bc1ab0a62b29b959e39ba69dbe3ba01a199f7c6ff738a64736f6c634300081a0033",
8
14
  "linkReferences": {},
9
15
  "deployedLinkReferences": {}
10
16
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -3,6 +3,43 @@
3
3
  "contractName": "UFixedLib",
4
4
  "sourceName": "contracts/type/UFixed.sol",
5
5
  "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "MathLigMulDivOverflow",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "UFixedLibDivisionByZero",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "inputs": [
18
+ {
19
+ "internalType": "int8",
20
+ "name": "exp",
21
+ "type": "int8"
22
+ }
23
+ ],
24
+ "name": "UFixedLibExponentTooLarge",
25
+ "type": "error"
26
+ },
27
+ {
28
+ "inputs": [
29
+ {
30
+ "internalType": "int8",
31
+ "name": "exp",
32
+ "type": "int8"
33
+ }
34
+ ],
35
+ "name": "UFixedLibExponentTooSmall",
36
+ "type": "error"
37
+ },
38
+ {
39
+ "inputs": [],
40
+ "name": "UFixedLibNegativeResult",
41
+ "type": "error"
42
+ },
6
43
  {
7
44
  "inputs": [],
8
45
  "name": "EXP",
@@ -491,8 +528,8 @@
491
528
  "type": "function"
492
529
  }
493
530
  ],
494
- "bytecode": "0x610a38610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046107bc565b61034a565b6101bd6101b83660046107ef565b6103d0565b604051901515815260200161018e565b6101846101db36600461080f565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd6102083660046107ef565b6104bb565b6012610184565b6101bd6102223660046107ef565b6104c4565b610184610235366004610837565b6104cd565b610184610248366004610837565b6104d9565b6101bd61025b366004610837565b6104f0565b61018461026e3660046107ef565b6104f8565b6101bd610281366004610837565b610503565b60025b60405160ff909116815260200161018e565b6101846102a9366004610837565b61050c565b5f610289565b6101846102c23660046107ef565b61052b565b6101bd6102d53660046107ef565b610536565b6101846102e83660046107ef565b610540565b5f610184565b6001610289565b6101846103083660046107ef565b61054b565b61018461031b3660046107ef565b610556565b6101bd61032e3660046107ef565b610561565b61018461056b565b6103476012600a610945565b81565b5f60011960ff8316016103975761039060026103686012600a610945565b6103729190610964565b61037c9085610983565b600161038a6012600a610945565b5f610583565b90506103ca565b60ff82166103b15761039083600161038a6012600a610945565b6103908360016103c36012600a610945565b6001610583565b92915050565b5f8282115b9392505050565b5f806103e9836012610996565b5f0b121561043e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031303a4558504f4e454e545f544f4f5f534d414c4c0060448201526064015b60405180910390fd5b604061044b836012610996565b5f0b131561049b5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031313a4558504f4e454e545f544f4f5f4c41524745006044820152606401610435565b6104a6826012610996565b6104b190600a6109b6565b6103d590846109c4565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104e66012600a610945565b6103ca90836109c4565b5f81156103ca565b5f6103d583836105de565b5f8115156103ca565b5f6103ca61052461051e6103e86104d9565b846105e9565b600261034a565b5f6103d583836105fd565b5f828211156103d5565b5f6103d58383610660565b5f6103d583836105e9565b5f6103d583836106bb565b5f828210156103d5565b60026105796012600a610945565b6103479190610964565b5f806105908686866106d8565b905060018360028111156105a6576105a66109db565b1480156105c257505f84806105bd576105bd610950565b868809115b156105d5576105d2600182610983565b90505b95945050505050565b5f6103d58284610983565b5f6103d58383670de0b6b3a76400006106d8565b5f80821161064d5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a55464d2d3032303a44495649534f525f5a45524f0000000000006044820152606401610435565b6103d583670de0b6b3a7640000846106d8565b5f828211156106b15760405162461bcd60e51b815260206004820152601d60248201527f4552524f523a55464d2d3031303a4e454741544956455f524553554c540000006044820152606401610435565b6103d582846109ef565b5f828210156106ce576103908383610660565b6103d58284610660565b5f80805f19858709858702925082811083820303915050805f0361070f5783828161070557610705610950565b04925050506103d5565b8084116107565760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610435565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156107cd575f80fd5b82359150602083013560ff811681146107e4575f80fd5b809150509250929050565b5f8060408385031215610800575f80fd5b50508035926020909101359150565b5f8060408385031215610820575f80fd5b8235915060208301355f81900b81146107e4575f80fd5b5f60208284031215610847575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561089d578085048111156108815761088161084e565b600184161561088f57908102905b60019390931c928002610866565b935093915050565b5f826108b3575060016103ca565b816108bf57505f6103ca565b81600181146108d557600281146108df576108fb565b60019150506103ca565b60ff8411156108f0576108f061084e565b50506001821b6103ca565b5060208310610133831016604e8410600b841016171561091e575081810a6103ca565b61092a5f198484610862565b805f190482111561093d5761093d61084e565b029392505050565b5f6103d583836108a5565b634e487b7160e01b5f52601260045260245ffd5b5f8261097e57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca61084e565b5f81810b9083900b01607f8113607f19821217156103ca576103ca61084e565b5f6103d560ff8416836108a5565b80820281158282048414176103ca576103ca61084e565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61084e56fea264697066735822122095b47e326ba6c85a518c73b4494484fdcea7709161e78c343656c1cc40ea3cb764736f6c634300081a0033",
495
- "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046107bc565b61034a565b6101bd6101b83660046107ef565b6103d0565b604051901515815260200161018e565b6101846101db36600461080f565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd6102083660046107ef565b6104bb565b6012610184565b6101bd6102223660046107ef565b6104c4565b610184610235366004610837565b6104cd565b610184610248366004610837565b6104d9565b6101bd61025b366004610837565b6104f0565b61018461026e3660046107ef565b6104f8565b6101bd610281366004610837565b610503565b60025b60405160ff909116815260200161018e565b6101846102a9366004610837565b61050c565b5f610289565b6101846102c23660046107ef565b61052b565b6101bd6102d53660046107ef565b610536565b6101846102e83660046107ef565b610540565b5f610184565b6001610289565b6101846103083660046107ef565b61054b565b61018461031b3660046107ef565b610556565b6101bd61032e3660046107ef565b610561565b61018461056b565b6103476012600a610945565b81565b5f60011960ff8316016103975761039060026103686012600a610945565b6103729190610964565b61037c9085610983565b600161038a6012600a610945565b5f610583565b90506103ca565b60ff82166103b15761039083600161038a6012600a610945565b6103908360016103c36012600a610945565b6001610583565b92915050565b5f8282115b9392505050565b5f806103e9836012610996565b5f0b121561043e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031303a4558504f4e454e545f544f4f5f534d414c4c0060448201526064015b60405180910390fd5b604061044b836012610996565b5f0b131561049b5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a464d2d3031313a4558504f4e454e545f544f4f5f4c41524745006044820152606401610435565b6104a6826012610996565b6104b190600a6109b6565b6103d590846109c4565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104e66012600a610945565b6103ca90836109c4565b5f81156103ca565b5f6103d583836105de565b5f8115156103ca565b5f6103ca61052461051e6103e86104d9565b846105e9565b600261034a565b5f6103d583836105fd565b5f828211156103d5565b5f6103d58383610660565b5f6103d583836105e9565b5f6103d583836106bb565b5f828210156103d5565b60026105796012600a610945565b6103479190610964565b5f806105908686866106d8565b905060018360028111156105a6576105a66109db565b1480156105c257505f84806105bd576105bd610950565b868809115b156105d5576105d2600182610983565b90505b95945050505050565b5f6103d58284610983565b5f6103d58383670de0b6b3a76400006106d8565b5f80821161064d5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a55464d2d3032303a44495649534f525f5a45524f0000000000006044820152606401610435565b6103d583670de0b6b3a7640000846106d8565b5f828211156106b15760405162461bcd60e51b815260206004820152601d60248201527f4552524f523a55464d2d3031303a4e454741544956455f524553554c540000006044820152606401610435565b6103d582846109ef565b5f828210156106ce576103908383610660565b6103d58284610660565b5f80805f19858709858702925082811083820303915050805f0361070f5783828161070557610705610950565b04925050506103d5565b8084116107565760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610435565b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156107cd575f80fd5b82359150602083013560ff811681146107e4575f80fd5b809150509250929050565b5f8060408385031215610800575f80fd5b50508035926020909101359150565b5f8060408385031215610820575f80fd5b8235915060208301355f81900b81146107e4575f80fd5b5f60208284031215610847575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b600184111561089d578085048111156108815761088161084e565b600184161561088f57908102905b60019390931c928002610866565b935093915050565b5f826108b3575060016103ca565b816108bf57505f6103ca565b81600181146108d557600281146108df576108fb565b60019150506103ca565b60ff8411156108f0576108f061084e565b50506001821b6103ca565b5060208310610133831016604e8410600b841016171561091e575081810a6103ca565b61092a5f198484610862565b805f190482111561093d5761093d61084e565b029392505050565b5f6103d583836108a5565b634e487b7160e01b5f52601260045260245ffd5b5f8261097e57634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca61084e565b5f81810b9083900b01607f8113607f19821217156103ca576103ca61084e565b5f6103d560ff8416836108a5565b80820281158282048414176103ca576103ca61084e565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61084e56fea264697066735822122095b47e326ba6c85a518c73b4494484fdcea7709161e78c343656c1cc40ea3cb764736f6c634300081a0033",
531
+ "bytecode": "0x61095e610034600b8282823980515f1a607314602857634e487b7160e01b5f525f60045260245ffd5b305f52607381538281f3fe7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046106e2565b61034a565b6101bd6101b8366004610715565b6103d0565b604051901515815260200161018e565b6101846101db366004610735565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd610208366004610715565b610467565b6012610184565b6101bd610222366004610715565b610470565b61018461023536600461075d565b610479565b61018461024836600461075d565b610485565b6101bd61025b36600461075d565b61049c565b61018461026e366004610715565b6104a4565b6101bd61028136600461075d565b6104af565b60025b60405160ff909116815260200161018e565b6101846102a936600461075d565b6104b8565b5f610289565b6101846102c2366004610715565b6104d7565b6101bd6102d5366004610715565b6104e2565b6101846102e8366004610715565b6104ec565b5f610184565b6001610289565b610184610308366004610715565b6104f7565b61018461031b366004610715565b610502565b6101bd61032e366004610715565b61050d565b610184610517565b6103476012600a61086b565b81565b5f60011960ff8316016103975761039060026103686012600a61086b565b610372919061088a565b61037c90856108a9565b600161038a6012600a61086b565b5f61052f565b90506103ca565b60ff82166103b15761039083600161038a6012600a61086b565b6103908360016103c36012600a61086b565b600161052f565b92915050565b5f8282115b9392505050565b5f806103e98360126108bc565b5f0b121561041457604051633e49665b60e21b81525f83900b60048201526024015b60405180910390fd5b60406104218360126108bc565b5f0b13156104475760405163e39f5db560e01b81525f83900b600482015260240161040b565b6104528260126108bc565b61045d90600a6108dc565b6103d590846108ea565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104926012600a61086b565b6103ca90836108ea565b5f81156103ca565b5f6103d5838361058a565b5f8115156103ca565b5f6103ca6104d06104ca6103e8610485565b84610595565b600261034a565b5f6103d583836105a9565b5f828211156103d5565b5f6103d583836105dd565b5f6103d58383610595565b5f6103d58383610609565b5f828210156103d5565b60026105256012600a61086b565b610347919061088a565b5f8061053c868686610626565b9050600183600281111561055257610552610901565b14801561056e57505f848061056957610569610876565b868809115b156105815761057e6001826108a9565b90505b95945050505050565b5f6103d582846108a9565b5f6103d58383670de0b6b3a7640000610626565b5f815f036105ca57604051630f6c8fc360e21b815260040160405180910390fd5b6103d583670de0b6b3a764000084610626565b5f828211156105ff5760405163117efe6d60e31b815260040160405180910390fd5b6103d58284610915565b5f8282101561061c5761039083836105dd565b6103d582846105dd565b5f80805f19858709858702925082811083820303915050805f0361065d5783828161065357610653610876565b04925050506103d5565b80841161067c57604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156106f3575f80fd5b82359150602083013560ff8116811461070a575f80fd5b809150509250929050565b5f8060408385031215610726575f80fd5b50508035926020909101359150565b5f8060408385031215610746575f80fd5b8235915060208301355f81900b811461070a575f80fd5b5f6020828403121561076d575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156107c3578085048111156107a7576107a7610774565b60018416156107b557908102905b60019390931c92800261078c565b935093915050565b5f826107d9575060016103ca565b816107e557505f6103ca565b81600181146107fb576002811461080557610821565b60019150506103ca565b60ff84111561081657610816610774565b50506001821b6103ca565b5060208310610133831016604e8410600b8410161715610844575081810a6103ca565b6108505f198484610788565b805f190482111561086357610863610774565b029392505050565b5f6103d583836107cb565b634e487b7160e01b5f52601260045260245ffd5b5f826108a457634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca610774565b5f81810b9083900b01607f8113607f19821217156103ca576103ca610774565b5f6103d560ff8416836107cb565b80820281158282048414176103ca576103ca610774565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61077456fea26469706673582212203e4e2503f40cb4f921285a9376599632e104ff38976d428bdba7a78c8a4f296f64736f6c634300081a0033",
532
+ "deployedBytecode": "0x7300000000000000000000000000000000000000003014608060405260043610610178575f3560e01c80637a858b97116100e4578063b67d77c51161009e578063c8a4ac9c11610079578063c8a4ac9c146102fa578063cc8b7b731461030d578063ea6515c414610320578063eb646d7114610333575f80fd5b8063b67d77c5146102da578063bc1b392d146102ed578063bdbb4630146102f3575f80fd5b80637a858b971461027357806389fa8ed714610286578063916c5c571461029b57806393aa8725146102ae578063a391c15b146102b4578063b4773329146102c7575f80fd5b8063313ce56711610135578063313ce5671461020d57806332148d731461021457806344aa68361461022757806345ebb61e1461023a578063753b14a51461024d578063771602f714610260575f80fd5b8063059f8b161461017c57806308c76ec414610197578063118fc88c146101aa5780631488c845146101cd5780631a12cd47146101e057806321e5749b146101fa575b5f80fd5b61018461033b565b6040519081526020015b60405180910390f35b6101846101a53660046106e2565b61034a565b6101bd6101b8366004610715565b6103d0565b604051901515815260200161018e565b6101846101db366004610735565b6103dc565b6101e8601281565b6040515f9190910b815260200161018e565b6101bd610208366004610715565b610467565b6012610184565b6101bd610222366004610715565b610470565b61018461023536600461075d565b610479565b61018461024836600461075d565b610485565b6101bd61025b36600461075d565b61049c565b61018461026e366004610715565b6104a4565b6101bd61028136600461075d565b6104af565b60025b60405160ff909116815260200161018e565b6101846102a936600461075d565b6104b8565b5f610289565b6101846102c2366004610715565b6104d7565b6101bd6102d5366004610715565b6104e2565b6101846102e8366004610715565b6104ec565b5f610184565b6001610289565b610184610308366004610715565b6104f7565b61018461031b366004610715565b610502565b6101bd61032e366004610715565b61050d565b610184610517565b6103476012600a61086b565b81565b5f60011960ff8316016103975761039060026103686012600a61086b565b610372919061088a565b61037c90856108a9565b600161038a6012600a61086b565b5f61052f565b90506103ca565b60ff82166103b15761039083600161038a6012600a61086b565b6103908360016103c36012600a61086b565b600161052f565b92915050565b5f8282115b9392505050565b5f806103e98360126108bc565b5f0b121561041457604051633e49665b60e21b81525f83900b60048201526024015b60405180910390fd5b60406104218360126108bc565b5f0b13156104475760405163e39f5db560e01b81525f83900b600482015260240161040b565b6104528260126108bc565b61045d90600a6108dc565b6103d590846108ea565b5f8282106103d5565b5f8183146103d5565b5f6103ca82600261034a565b5f6104926012600a61086b565b6103ca90836108ea565b5f81156103ca565b5f6103d5838361058a565b5f8115156103ca565b5f6103ca6104d06104ca6103e8610485565b84610595565b600261034a565b5f6103d583836105a9565b5f828211156103d5565b5f6103d583836105dd565b5f6103d58383610595565b5f6103d58383610609565b5f828210156103d5565b60026105256012600a61086b565b610347919061088a565b5f8061053c868686610626565b9050600183600281111561055257610552610901565b14801561056e57505f848061056957610569610876565b868809115b156105815761057e6001826108a9565b90505b95945050505050565b5f6103d582846108a9565b5f6103d58383670de0b6b3a7640000610626565b5f815f036105ca57604051630f6c8fc360e21b815260040160405180910390fd5b6103d583670de0b6b3a764000084610626565b5f828211156105ff5760405163117efe6d60e31b815260040160405180910390fd5b6103d58284610915565b5f8282101561061c5761039083836105dd565b6103d582846105dd565b5f80805f19858709858702925082811083820303915050805f0361065d5783828161065357610653610876565b04925050506103d5565b80841161067c57604051629540d960e61b815260040160405180910390fd5b5f84868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f80604083850312156106f3575f80fd5b82359150602083013560ff8116811461070a575f80fd5b809150509250929050565b5f8060408385031215610726575f80fd5b50508035926020909101359150565b5f8060408385031215610746575f80fd5b8235915060208301355f81900b811461070a575f80fd5b5f6020828403121561076d575f80fd5b5035919050565b634e487b7160e01b5f52601160045260245ffd5b6001815b60018411156107c3578085048111156107a7576107a7610774565b60018416156107b557908102905b60019390931c92800261078c565b935093915050565b5f826107d9575060016103ca565b816107e557505f6103ca565b81600181146107fb576002811461080557610821565b60019150506103ca565b60ff84111561081657610816610774565b50506001821b6103ca565b5060208310610133831016604e8410600b8410161715610844575081810a6103ca565b6108505f198484610788565b805f190482111561086357610863610774565b029392505050565b5f6103d583836107cb565b634e487b7160e01b5f52601260045260245ffd5b5f826108a457634e487b7160e01b5f52601260045260245ffd5b500490565b808201808211156103ca576103ca610774565b5f81810b9083900b01607f8113607f19821217156103ca576103ca610774565b5f6103d560ff8416836107cb565b80820281158282048414176103ca576103ca610774565b634e487b7160e01b5f52602160045260245ffd5b818103818111156103ca576103ca61077456fea26469706673582212203e4e2503f40cb4f921285a9376599632e104ff38976d428bdba7a78c8a4f296f64736f6c634300081a0033",
496
533
  "linkReferences": {},
497
534
  "deployedLinkReferences": {}
498
535
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/e90d260d136f1141b593b63f31d8f134.json"
3
+ "buildInfo": "../../../build-info/3c10613745564125e3c124117bb76811.json"
4
4
  }
@@ -32,13 +32,6 @@ contract DistributionService is
32
32
  ComponentVerifyingService,
33
33
  IDistributionService
34
34
  {
35
- using AmountLib for Amount;
36
- using NftIdLib for NftId;
37
- using TimestampLib for Timestamp;
38
- using UFixedLib for UFixed;
39
- using FeeLib for Fee;
40
- using ReferralLib for ReferralId;
41
-
42
35
  IComponentService private _componentService;
43
36
  IInstanceService private _instanceService;
44
37
  IRegistryService private _registryService;
@@ -259,10 +252,7 @@ contract DistributionService is
259
252
  }
260
253
  }
261
254
 
262
- /// @dev Withdraw commission for the distributor
263
- /// @param distributorNftId the distributor Nft Id
264
- /// @param amount the amount to withdraw. If set to UINT256_MAX, the full commission available is withdrawn
265
- /// @return withdrawnAmount the effective withdrawn amount
255
+ /// @inheritdoc IDistributionService
266
256
  function withdrawCommission(NftId distributorNftId, Amount amount)
267
257
  public
268
258
  virtual
@@ -276,14 +266,10 @@ contract DistributionService is
276
266
  address distributionWallet = distributionInfo.wallet;
277
267
 
278
268
  IDistribution.DistributorInfo memory distributorInfo = reader.getDistributorInfo(distributorNftId);
279
-
280
- if (!distributorInfo.active) {
281
- revert ErrorDistributionServiceDistributorNotActive(distributorNftId);
282
- }
283
269
 
284
270
  // determine withdrawn amount
285
271
  withdrawnAmount = amount;
286
- if (withdrawnAmount.eq(AmountLib.max())) {
272
+ if (withdrawnAmount.gte(AmountLib.max())) {
287
273
  withdrawnAmount = distributorInfo.commissionAmount;
288
274
  } else {
289
275
  if (withdrawnAmount.gt(distributorInfo.commissionAmount)) {
@@ -314,6 +300,7 @@ contract DistributionService is
314
300
  // transfer amount to distributor
315
301
  {
316
302
  address distributor = getRegistry().ownerOf(distributorNftId);
303
+ // TODO: centralize token handling (issue #471)
317
304
  distributionInfo.tokenHandler.transfer(distributionWallet, distributor, withdrawnAmount);
318
305
 
319
306
  emit LogDistributionServiceCommissionWithdrawn(distributorNftId, distributor, address(token), withdrawnAmount);
@@ -46,7 +46,7 @@ interface IDistributionComponent is IInstanceLinkedComponent {
46
46
 
47
47
  /// @dev Withdraw commission for the distributor
48
48
  /// @param distributorNftId the distributor Nft Id
49
- /// @param amount the amount to withdraw. If set to UINT256_MAX, the full commission available is withdrawn
49
+ /// @param amount the amount to withdraw. If set to AMOUNT_MAX, the full commission available is withdrawn
50
50
  /// @return withdrawnAmount the effective withdrawn amount
51
51
  function withdrawCommission(NftId distributorNftId, Amount amount) external returns (Amount withdrawnAmount);
52
52
  }
@@ -27,7 +27,6 @@ interface IDistributionService is IService {
27
27
  error ErrorIDistributionServiceCommissionTooHigh(uint256 commissionPercentage, uint256 maxCommissionPercentage);
28
28
  error ErrorIDistributionServiceMinFeeTooHigh(uint256 minFee, uint256 limit);
29
29
 
30
- error ErrorDistributionServiceDistributorNotActive(NftId distributorNftId);
31
30
  error ErrorDistributionServiceCommissionWithdrawAmountExceedsLimit(Amount amount, Amount limit);
32
31
  error ErrorDistributionServiceCommissionWithdrawAmountIsZero();
33
32
  error ErrorDistributionServiceWalletAllowanceTooSmall(address wallet, address tokenHandler, uint256 allowance, uint256 amount);
@@ -38,7 +37,7 @@ interface IDistributionService is IService {
38
37
  error ErrorIDistributionServiceReferralInvalid(NftId distributionNftId, ReferralId referralId);
39
38
  error ErrorDistributionServiceInvalidFeeTransferred(Amount transferredDistributionFeeAmount, Amount expectedDistributionFeeAmount);
40
39
 
41
- event LogDistributionServiceCommissionWithdrawn(NftId distributorNftId, address distributorAddress, address tokenAddress, Amount amount);
40
+ event LogDistributionServiceCommissionWithdrawn(NftId distributorNftId, address recipient, address tokenAddress, Amount amount);
42
41
 
43
42
  function createDistributorType(
44
43
  string memory name,
@@ -92,7 +91,7 @@ interface IDistributionService is IService {
92
91
 
93
92
  /// @dev Withdraw commission for the distributor
94
93
  /// @param distributorNftId the distributor Nft Id
95
- /// @param amount the amount to withdraw. If set to UINT256_MAX, the full commission available is withdrawn
94
+ /// @param amount the amount to withdraw. If set to AMOUNT_MAX, the full commission available is withdrawn
96
95
  /// @return withdrawnAmount the effective withdrawn amount
97
96
  function withdrawCommission(NftId distributorNftId, Amount amount) external returns (Amount withdrawnAmount);
98
97
  }