@etherisc/gif-next 0.0.2-f9bc4c7-556 → 0.0.2-fbe22f0-239

Sign up to get free protection for your applications and to get access to all the features.
Files changed (419) hide show
  1. package/README.md +314 -2
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +4 -0
  3. package/artifacts/contracts/components/Component.sol/Component.json +858 -0
  4. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +4 -0
  5. package/artifacts/contracts/components/Distribution.sol/Distribution.json +1114 -0
  6. package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +4 -0
  7. package/artifacts/contracts/{registry/IChainNft.sol/IChainNft.json → components/IComponent.sol/IComponent.json} +281 -226
  8. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  9. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +695 -0
  10. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  11. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +601 -76
  12. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  13. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +582 -61
  14. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  15. package/artifacts/contracts/components/Pool.sol/Pool.json +1099 -159
  16. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  17. package/artifacts/contracts/components/Product.sol/Product.json +1030 -84
  18. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +4 -0
  19. package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +66 -0
  20. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +4 -0
  21. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +24 -0
  22. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +4 -0
  23. package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +42 -0
  24. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +1 -1
  25. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +1 -1
  26. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +1 -1
  27. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +1 -1
  28. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +1 -1
  29. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +1 -1
  30. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +1 -1
  31. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +1 -1
  32. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +1 -1
  33. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +1 -1
  34. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +1 -1
  35. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +2 -2
  36. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +1 -1
  37. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +1 -1
  38. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +1 -1
  39. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +2 -2
  40. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +1 -1
  41. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +2 -2
  42. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +1 -1
  43. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +1 -1
  44. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
  45. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +764 -0
  46. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +4 -0
  47. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +185 -0
  48. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  49. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +1150 -1021
  50. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  51. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +591 -0
  52. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  53. package/artifacts/contracts/instance/Instance.sol/Instance.json +2047 -1067
  54. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +4 -0
  55. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +984 -0
  56. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  57. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1386 -0
  58. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  59. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1164 -0
  60. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  61. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +584 -0
  62. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  63. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +261 -0
  64. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +4 -0
  65. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.json +728 -0
  66. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  67. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +45 -127
  68. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  69. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  70. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +55 -245
  71. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  72. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +4 -4
  73. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
  74. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +254 -0
  75. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
  76. package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
  77. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  78. package/artifacts/contracts/instance/module/{access/IAccess.sol/IAccess.json → IDistribution.sol/IDistribution.json} +2 -2
  79. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
  80. package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
  81. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
  82. package/artifacts/contracts/instance/module/{risk/IRisk.sol → IRisk.sol}/IRisk.json +1 -1
  83. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +4 -0
  84. package/artifacts/contracts/instance/{base/ModuleBase.sol/ModuleBase.json → module/ISetup.sol/ISetup.json} +2 -2
  85. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +4 -0
  86. package/artifacts/contracts/instance/module/{treasury/ITreasury.sol → ITreasury.sol}/ITreasury.json +1 -1
  87. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  88. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +1091 -0
  89. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +4 -0
  90. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +1292 -0
  91. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  92. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +560 -0
  93. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +4 -0
  94. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +897 -0
  95. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  96. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +548 -0
  97. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  98. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +625 -0
  99. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +4 -0
  100. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +785 -0
  101. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  102. package/artifacts/contracts/instance/{base/InstanceBase.sol/InstanceBase.json → service/IDistributionService.sol/IDistributionService.json} +205 -85
  103. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  104. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +771 -0
  105. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
  106. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +203 -80
  107. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
  108. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +209 -150
  109. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +4 -0
  110. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +1352 -0
  111. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  112. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +616 -0
  113. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
  114. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +546 -86
  115. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  116. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +548 -0
  117. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
  118. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +521 -213
  119. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  120. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +548 -0
  121. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  122. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +186 -12
  123. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  124. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +466 -34
  125. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
  126. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +986 -0
  127. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
  128. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +34 -0
  129. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  130. package/artifacts/contracts/registry/Registry.sol/Registry.json +470 -103
  131. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +4 -0
  132. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +285 -0
  133. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
  134. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1325 -0
  135. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  136. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +575 -0
  137. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
  138. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +547 -0
  139. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
  140. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +505 -0
  141. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +4 -0
  142. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +107 -0
  143. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  144. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  145. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  146. package/artifacts/contracts/{components/IBaseComponent.sol/IBaseComponent.json → shared/INftOwnable.sol/INftOwnable.json} +56 -79
  147. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  148. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +129 -0
  149. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  150. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +116 -36
  151. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  152. package/artifacts/contracts/{instance/service/IComponentOwnerService.sol/IComponentOwnerService.json → shared/IService.sol/IService.json} +174 -117
  153. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  154. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +55 -14
  155. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  156. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +277 -0
  157. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  158. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +172 -0
  159. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  160. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +473 -0
  161. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  162. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +293 -25
  163. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  164. package/artifacts/contracts/shared/Service.sol/Service.json +601 -0
  165. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  166. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +96 -0
  167. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  168. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  169. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  170. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +78 -14
  171. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  172. package/artifacts/contracts/test/TestFee.sol/TestFee.json +4 -4
  173. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  174. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +309 -26
  175. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  176. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +14 -14
  177. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  178. package/artifacts/contracts/test/TestService.sol/TestService.json +412 -58
  179. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  180. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +91 -53
  181. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  182. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
  183. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  184. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +103 -23
  185. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
  186. package/artifacts/contracts/test/Usdc.sol/USDC.json +91 -53
  187. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  188. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  189. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  190. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  191. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +104 -0
  192. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  193. package/artifacts/contracts/types/Fee.sol/FeeLib.json +52 -13
  194. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
  195. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +31 -17
  196. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  197. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +2 -2
  198. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  199. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +26 -3
  200. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +4 -0
  201. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +100 -0
  202. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  203. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  204. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +4 -0
  205. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +123 -0
  206. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +4 -0
  207. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +86 -0
  208. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
  209. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +134 -8
  210. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  211. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  212. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  213. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +15 -2
  214. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +4 -0
  215. package/artifacts/contracts/types/UFixed.sol/MathLib.json +10 -0
  216. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +4 -0
  217. package/artifacts/contracts/types/UFixed.sol/{UFixedMathLib.json → UFixedLib.json} +3 -3
  218. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  219. package/artifacts/contracts/types/Version.sol/VersionLib.json +40 -2
  220. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  221. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +22 -3
  222. package/contracts/components/Component.sol +230 -0
  223. package/contracts/components/Distribution.sol +156 -0
  224. package/contracts/components/IComponent.sol +50 -0
  225. package/contracts/components/IDistributionComponent.sol +47 -0
  226. package/contracts/components/IPoolComponent.sol +65 -35
  227. package/contracts/components/IProductComponent.sol +29 -9
  228. package/contracts/components/Pool.sol +180 -100
  229. package/contracts/components/Product.sol +203 -42
  230. package/contracts/experiment/cloning/Cloner.sol +47 -0
  231. package/contracts/instance/BundleManager.sol +125 -0
  232. package/contracts/instance/Cloneable.sol +46 -0
  233. package/contracts/instance/IInstance.sol +65 -45
  234. package/contracts/instance/IInstanceService.sol +41 -0
  235. package/contracts/instance/Instance.sol +253 -53
  236. package/contracts/instance/InstanceAccessManager.sol +297 -0
  237. package/contracts/instance/InstanceReader.sol +293 -0
  238. package/contracts/instance/InstanceService.sol +434 -0
  239. package/contracts/instance/InstanceServiceManager.sol +54 -0
  240. package/contracts/instance/ObjectManager.sol +84 -0
  241. package/contracts/instance/base/ComponentService.sol +134 -0
  242. package/contracts/instance/base/IKeyValueStore.sol +13 -13
  243. package/contracts/instance/base/ILifecycle.sol +3 -3
  244. package/contracts/instance/base/KeyValueStore.sol +53 -37
  245. package/contracts/instance/base/Lifecycle.sol +16 -11
  246. package/contracts/instance/module/IAccess.sol +47 -0
  247. package/contracts/instance/module/IBundle.sol +20 -0
  248. package/contracts/instance/module/IDistribution.sol +39 -0
  249. package/contracts/instance/module/IPolicy.sol +45 -0
  250. package/contracts/instance/module/IRisk.sol +11 -0
  251. package/contracts/instance/module/ISetup.sol +47 -0
  252. package/contracts/instance/module/ITreasury.sol +23 -0
  253. package/contracts/instance/service/ApplicationService.sol +268 -0
  254. package/contracts/instance/service/BundleService.sol +298 -0
  255. package/contracts/instance/service/BundleServiceManager.sol +51 -0
  256. package/contracts/instance/service/DistributionService.sol +105 -0
  257. package/contracts/instance/service/DistributionServiceManager.sol +51 -0
  258. package/contracts/instance/service/IApplicationService.sol +82 -0
  259. package/contracts/instance/service/IBundleService.sol +54 -0
  260. package/contracts/instance/service/IDistributionService.sol +12 -0
  261. package/contracts/instance/service/IPolicyService.sol +88 -0
  262. package/contracts/instance/service/IPoolService.sol +8 -18
  263. package/contracts/instance/service/IProductService.sol +21 -39
  264. package/contracts/instance/service/PolicyService.sol +524 -0
  265. package/contracts/instance/service/PolicyServiceManager.sol +54 -0
  266. package/contracts/instance/service/PoolService.sol +78 -92
  267. package/contracts/instance/service/PoolServiceManager.sol +51 -0
  268. package/contracts/instance/service/ProductService.sol +168 -289
  269. package/contracts/instance/service/ProductServiceManager.sol +54 -0
  270. package/contracts/registry/ChainNft.sol +79 -36
  271. package/contracts/registry/IRegistry.sol +66 -24
  272. package/contracts/registry/IRegistryService.sol +65 -0
  273. package/contracts/registry/ITransferInterceptor.sol +6 -0
  274. package/contracts/registry/Registry.sol +364 -283
  275. package/contracts/registry/RegistryAccessManager.sol +216 -0
  276. package/contracts/registry/RegistryService.sol +261 -0
  277. package/contracts/registry/RegistryServiceManager.sol +62 -0
  278. package/contracts/registry/ReleaseManager.sol +332 -0
  279. package/contracts/registry/TokenRegistry.sol +113 -0
  280. package/contracts/shared/ContractDeployerLib.sol +72 -0
  281. package/contracts/shared/ERC165.sol +13 -8
  282. package/contracts/shared/INftOwnable.sol +27 -0
  283. package/contracts/shared/IPolicyHolder.sol +26 -0
  284. package/contracts/shared/IRegisterable.sol +10 -19
  285. package/contracts/shared/IService.sol +16 -0
  286. package/contracts/shared/IVersionable.sol +55 -11
  287. package/contracts/shared/NftOwnable.sol +187 -0
  288. package/contracts/shared/PolicyHolder.sol +52 -0
  289. package/contracts/shared/ProxyManager.sol +95 -0
  290. package/contracts/shared/Registerable.sol +58 -63
  291. package/contracts/shared/Service.sol +60 -0
  292. package/contracts/shared/TokenHandler.sol +27 -0
  293. package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
  294. package/contracts/shared/Versionable.sol +113 -54
  295. package/contracts/test/TestFee.sol +2 -2
  296. package/contracts/test/TestRegisterable.sol +5 -6
  297. package/contracts/test/TestRoleId.sol +1 -1
  298. package/contracts/test/TestService.sol +7 -14
  299. package/contracts/types/DistributorType.sol +55 -0
  300. package/contracts/types/Fee.sol +10 -5
  301. package/contracts/types/Key32.sol +8 -3
  302. package/contracts/types/NftIdSet.sol +26 -24
  303. package/contracts/types/NumberId.sol +52 -0
  304. package/contracts/types/ObjectType.sol +55 -14
  305. package/contracts/types/Referral.sol +85 -0
  306. package/contracts/types/RiskId.sol +43 -0
  307. package/contracts/types/RoleId.sol +62 -10
  308. package/contracts/types/StateId.sol +5 -1
  309. package/contracts/types/Timestamp.sol +7 -3
  310. package/contracts/types/UFixed.sol +128 -12
  311. package/contracts/types/Version.sol +13 -1
  312. package/package.json +6 -5
  313. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  314. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -174
  315. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  316. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
  317. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
  318. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  319. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.json +0 -300
  320. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  321. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -63
  322. package/artifacts/contracts/instance/base/IService.sol/IService.dbg.json +0 -4
  323. package/artifacts/contracts/instance/base/IService.sol/IService.json +0 -300
  324. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  325. package/artifacts/contracts/instance/base/ModuleBase.sol/ModuleBase.dbg.json +0 -4
  326. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +0 -4
  327. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.json +0 -300
  328. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
  329. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
  330. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
  331. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  332. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
  333. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
  334. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -296
  335. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
  336. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
  337. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -296
  338. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.dbg.json +0 -4
  339. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.json +0 -10
  340. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.dbg.json +0 -4
  341. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.json +0 -10
  342. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.dbg.json +0 -4
  343. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.json +0 -10
  344. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  345. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -188
  346. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
  347. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
  348. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  349. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.json +0 -188
  350. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  351. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  352. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -261
  353. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  354. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -261
  355. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  356. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
  357. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  358. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -149
  359. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  360. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -149
  361. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
  362. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
  363. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -10
  364. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
  365. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -10
  366. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
  367. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
  368. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -533
  369. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
  370. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
  371. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
  372. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -533
  373. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  374. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -523
  375. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  376. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  377. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
  378. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.json +0 -24
  379. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
  380. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
  381. package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
  382. package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -387
  383. package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
  384. package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -393
  385. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
  386. package/contracts/components/BaseComponent.sol +0 -88
  387. package/contracts/components/IBaseComponent.sol +0 -19
  388. package/contracts/experiment/statemachine/README.md +0 -112
  389. package/contracts/instance/IInstanceLinked.sol +0 -8
  390. package/contracts/instance/base/ComponentServiceBase.sol +0 -42
  391. package/contracts/instance/base/IInstanceBase.sol +0 -14
  392. package/contracts/instance/base/IService.sol +0 -15
  393. package/contracts/instance/base/InstanceBase.sol +0 -80
  394. package/contracts/instance/base/ModuleBase.sol +0 -52
  395. package/contracts/instance/base/ServiceBase.sol +0 -37
  396. package/contracts/instance/module/access/Access.sol +0 -149
  397. package/contracts/instance/module/access/IAccess.sol +0 -53
  398. package/contracts/instance/module/bundle/BundleModule.sol +0 -136
  399. package/contracts/instance/module/bundle/IBundle.sol +0 -58
  400. package/contracts/instance/module/compensation/CompensationModule.sol +0 -8
  401. package/contracts/instance/module/compensation/ICompensation.sol +0 -10
  402. package/contracts/instance/module/component/ComponentModule.sol +0 -95
  403. package/contracts/instance/module/component/IComponent.sol +0 -53
  404. package/contracts/instance/module/policy/IPolicy.sol +0 -60
  405. package/contracts/instance/module/policy/PolicyModule.sol +0 -76
  406. package/contracts/instance/module/pool/IPoolModule.sol +0 -41
  407. package/contracts/instance/module/pool/PoolModule.sol +0 -87
  408. package/contracts/instance/module/risk/IRisk.sol +0 -10
  409. package/contracts/instance/module/risk/RiskModule.sol +0 -8
  410. package/contracts/instance/module/treasury/ITreasury.sol +0 -103
  411. package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
  412. package/contracts/instance/module/treasury/TreasuryModule.sol +0 -152
  413. package/contracts/instance/service/ComponentOwnerService.sol +0 -170
  414. package/contracts/instance/service/IComponentOwnerService.sol +0 -22
  415. package/contracts/registry/IChainNft.sol +0 -21
  416. package/contracts/registry/IRegistryLinked.sol +0 -8
  417. package/contracts/shared/IOwnable.sol +0 -6
  418. package/contracts/test/TestPool.sol +0 -22
  419. package/contracts/test/TestProduct.sol +0 -44
@@ -8,6 +8,92 @@
8
8
  "stateMutability": "nonpayable",
9
9
  "type": "constructor"
10
10
  },
11
+ {
12
+ "inputs": [
13
+ {
14
+ "internalType": "address",
15
+ "name": "spender",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "uint256",
20
+ "name": "allowance",
21
+ "type": "uint256"
22
+ },
23
+ {
24
+ "internalType": "uint256",
25
+ "name": "needed",
26
+ "type": "uint256"
27
+ }
28
+ ],
29
+ "name": "ERC20InsufficientAllowance",
30
+ "type": "error"
31
+ },
32
+ {
33
+ "inputs": [
34
+ {
35
+ "internalType": "address",
36
+ "name": "sender",
37
+ "type": "address"
38
+ },
39
+ {
40
+ "internalType": "uint256",
41
+ "name": "balance",
42
+ "type": "uint256"
43
+ },
44
+ {
45
+ "internalType": "uint256",
46
+ "name": "needed",
47
+ "type": "uint256"
48
+ }
49
+ ],
50
+ "name": "ERC20InsufficientBalance",
51
+ "type": "error"
52
+ },
53
+ {
54
+ "inputs": [
55
+ {
56
+ "internalType": "address",
57
+ "name": "approver",
58
+ "type": "address"
59
+ }
60
+ ],
61
+ "name": "ERC20InvalidApprover",
62
+ "type": "error"
63
+ },
64
+ {
65
+ "inputs": [
66
+ {
67
+ "internalType": "address",
68
+ "name": "receiver",
69
+ "type": "address"
70
+ }
71
+ ],
72
+ "name": "ERC20InvalidReceiver",
73
+ "type": "error"
74
+ },
75
+ {
76
+ "inputs": [
77
+ {
78
+ "internalType": "address",
79
+ "name": "sender",
80
+ "type": "address"
81
+ }
82
+ ],
83
+ "name": "ERC20InvalidSender",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [
88
+ {
89
+ "internalType": "address",
90
+ "name": "spender",
91
+ "type": "address"
92
+ }
93
+ ],
94
+ "name": "ERC20InvalidSpender",
95
+ "type": "error"
96
+ },
11
97
  {
12
98
  "anonymous": false,
13
99
  "inputs": [
@@ -143,7 +229,7 @@
143
229
  },
144
230
  {
145
231
  "internalType": "uint256",
146
- "name": "amount",
232
+ "name": "value",
147
233
  "type": "uint256"
148
234
  }
149
235
  ],
@@ -190,54 +276,6 @@
190
276
  "stateMutability": "pure",
191
277
  "type": "function"
192
278
  },
193
- {
194
- "inputs": [
195
- {
196
- "internalType": "address",
197
- "name": "spender",
198
- "type": "address"
199
- },
200
- {
201
- "internalType": "uint256",
202
- "name": "subtractedValue",
203
- "type": "uint256"
204
- }
205
- ],
206
- "name": "decreaseAllowance",
207
- "outputs": [
208
- {
209
- "internalType": "bool",
210
- "name": "",
211
- "type": "bool"
212
- }
213
- ],
214
- "stateMutability": "nonpayable",
215
- "type": "function"
216
- },
217
- {
218
- "inputs": [
219
- {
220
- "internalType": "address",
221
- "name": "spender",
222
- "type": "address"
223
- },
224
- {
225
- "internalType": "uint256",
226
- "name": "addedValue",
227
- "type": "uint256"
228
- }
229
- ],
230
- "name": "increaseAllowance",
231
- "outputs": [
232
- {
233
- "internalType": "bool",
234
- "name": "",
235
- "type": "bool"
236
- }
237
- ],
238
- "stateMutability": "nonpayable",
239
- "type": "function"
240
- },
241
279
  {
242
280
  "inputs": [],
243
281
  "name": "name",
@@ -286,7 +324,7 @@
286
324
  },
287
325
  {
288
326
  "internalType": "uint256",
289
- "name": "amount",
327
+ "name": "value",
290
328
  "type": "uint256"
291
329
  }
292
330
  ],
@@ -315,7 +353,7 @@
315
353
  },
316
354
  {
317
355
  "internalType": "uint256",
318
- "name": "amount",
356
+ "name": "value",
319
357
  "type": "uint256"
320
358
  }
321
359
  ],
@@ -331,8 +369,8 @@
331
369
  "type": "function"
332
370
  }
333
371
  ],
334
- "bytecode": "0x60806040523480156200001157600080fd5b506040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b815250604051806040016040528060048152602001635553444360e01b815250816003908162000065919062000228565b50600462000074828262000228565b505050620000af6200008b620000b560201b60201c565b620000996006600a62000409565b620000a990633b9aca0062000421565b620000b9565b62000451565b3390565b6001600160a01b038216620001145760405162461bcd60e51b815260206004820152601f60248201527f45524332303a206d696e7420746f20746865207a65726f206164647265737300604482015260640160405180910390fd5b80600260008282546200012891906200043b565b90915550506001600160a01b038216600081815260208181526040808320805486019055518481527fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a35050565b505050565b634e487b7160e01b600052604160045260246000fd5b600181811c90821680620001af57607f821691505b602082108103620001d057634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200017f57600081815260208120601f850160051c81016020861015620001ff5750805b601f850160051c820191505b8181101562000220578281556001016200020b565b505050505050565b81516001600160401b0381111562000244576200024462000184565b6200025c816200025584546200019a565b84620001d6565b602080601f8311600181146200029457600084156200027b5750858301515b600019600386901b1c1916600185901b17855562000220565b600085815260208120601f198616915b82811015620002c557888601518255948401946001909101908401620002a4565b5085821015620002e45787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156200034b5781600019048211156200032f576200032f620002f4565b808516156200033d57918102915b93841c93908002906200030f565b509250929050565b600082620003645750600162000403565b81620003735750600062000403565b81600181146200038c57600281146200039757620003b7565b600191505062000403565b60ff841115620003ab57620003ab620002f4565b50506001821b62000403565b5060208310610133831016604e8410600b8410161715620003dc575081810a62000403565b620003e883836200030a565b8060001904821115620003ff57620003ff620002f4565b0290505b92915050565b60006200041a60ff84168362000353565b9392505050565b8082028115828204841417620004035762000403620002f4565b80820180821115620004035762000403620002f4565b610a3580620004616000396000f3fe608060405234801561001057600080fd5b50600436106100f55760003560e01c80633950935111610097578063a457c2d711610066578063a457c2d7146101f8578063a9059cbb1461020b578063dd62ed3e1461021e578063f76f8d781461023157600080fd5b8063395093511461018957806370a082311461019c57806395d89b41146101c5578063a3f4df7e146101cd57600080fd5b806323b872dd116100d357806323b872dd1461014d5780632e0f2625146101605780632ff2e9dc1461017a578063313ce5671461018257600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b610102610254565b60405161010f919061076d565b60405180910390f35b61012b6101263660046107d7565b6102e6565b604051901515815260200161010f565b6002545b60405190815260200161010f565b61012b61015b366004610801565b610300565b610168600681565b60405160ff909116815260200161010f565b61013f610324565b6006610168565b61012b6101973660046107d7565b610341565b61013f6101aa36600461083d565b6001600160a01b031660009081526020819052604090205490565b610102610363565b6101026040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b81525081565b61012b6102063660046107d7565b610372565b61012b6102193660046107d7565b6103f2565b61013f61022c36600461085f565b610400565b610102604051806040016040528060048152602001635553444360e01b81525081565b60606003805461026390610892565b80601f016020809104026020016040519081016040528092919081815260200182805461028f90610892565b80156102dc5780601f106102b1576101008083540402835291602001916102dc565b820191906000526020600020905b8154815290600101906020018083116102bf57829003601f168201915b5050505050905090565b6000336102f481858561042b565b60019150505b92915050565b60003361030e85828561054f565b6103198585856105c9565b506001949350505050565b6103306006600a6109c6565b61033e90633b9aca006109d5565b81565b6000336102f48185856103548383610400565b61035e91906109ec565b61042b565b60606004805461026390610892565b600033816103808286610400565b9050838110156103e55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610319828686840361042b565b6000336102f48185856105c9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661048d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103dc565b6001600160a01b0382166104ee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061055b8484610400565b905060001981146105c357818110156105b65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103dc565b6105c3848484840361042b565b50505050565b6001600160a01b03831661062d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661068f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6001600160a01b038316600090815260208190526040902054818110156107075760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103dc565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36105c3565b600060208083528351808285015260005b8181101561079a5785810183015185820160400152820161077e565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d257600080fd5b919050565b600080604083850312156107ea57600080fd5b6107f3836107bb565b946020939093013593505050565b60008060006060848603121561081657600080fd5b61081f846107bb565b925061082d602085016107bb565b9150604084013590509250925092565b60006020828403121561084f57600080fd5b610858826107bb565b9392505050565b6000806040838503121561087257600080fd5b61087b836107bb565b9150610889602084016107bb565b90509250929050565b600181811c908216806108a657607f821691505b6020821081036108c657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561091d578160001904821115610903576109036108cc565b8085161561091057918102915b93841c93908002906108e7565b509250929050565b600082610934575060016102fa565b81610941575060006102fa565b816001811461095757600281146109615761097d565b60019150506102fa565b60ff841115610972576109726108cc565b50506001821b6102fa565b5060208310610133831016604e8410600b84101617156109a0575081810a6102fa565b6109aa83836108e2565b80600019048211156109be576109be6108cc565b029392505050565b600061085860ff841683610925565b80820281158282048414176102fa576102fa6108cc565b808201808211156102fa576102fa6108cc56fea2646970667358221220284c71a8da7090e32de9a1e56c783803f2b86c58b8a5fafed2a0ff82721a1b4564736f6c63430008140033",
335
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100f55760003560e01c80633950935111610097578063a457c2d711610066578063a457c2d7146101f8578063a9059cbb1461020b578063dd62ed3e1461021e578063f76f8d781461023157600080fd5b8063395093511461018957806370a082311461019c57806395d89b41146101c5578063a3f4df7e146101cd57600080fd5b806323b872dd116100d357806323b872dd1461014d5780632e0f2625146101605780632ff2e9dc1461017a578063313ce5671461018257600080fd5b806306fdde03146100fa578063095ea7b31461011857806318160ddd1461013b575b600080fd5b610102610254565b60405161010f919061076d565b60405180910390f35b61012b6101263660046107d7565b6102e6565b604051901515815260200161010f565b6002545b60405190815260200161010f565b61012b61015b366004610801565b610300565b610168600681565b60405160ff909116815260200161010f565b61013f610324565b6006610168565b61012b6101973660046107d7565b610341565b61013f6101aa36600461083d565b6001600160a01b031660009081526020819052604090205490565b610102610363565b6101026040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b81525081565b61012b6102063660046107d7565b610372565b61012b6102193660046107d7565b6103f2565b61013f61022c36600461085f565b610400565b610102604051806040016040528060048152602001635553444360e01b81525081565b60606003805461026390610892565b80601f016020809104026020016040519081016040528092919081815260200182805461028f90610892565b80156102dc5780601f106102b1576101008083540402835291602001916102dc565b820191906000526020600020905b8154815290600101906020018083116102bf57829003601f168201915b5050505050905090565b6000336102f481858561042b565b60019150505b92915050565b60003361030e85828561054f565b6103198585856105c9565b506001949350505050565b6103306006600a6109c6565b61033e90633b9aca006109d5565b81565b6000336102f48185856103548383610400565b61035e91906109ec565b61042b565b60606004805461026390610892565b600033816103808286610400565b9050838110156103e55760405162461bcd60e51b815260206004820152602560248201527f45524332303a2064656372656173656420616c6c6f77616e63652062656c6f77604482015264207a65726f60d81b60648201526084015b60405180910390fd5b610319828686840361042b565b6000336102f48185856105c9565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6001600160a01b03831661048d5760405162461bcd60e51b8152602060048201526024808201527f45524332303a20617070726f76652066726f6d20746865207a65726f206164646044820152637265737360e01b60648201526084016103dc565b6001600160a01b0382166104ee5760405162461bcd60e51b815260206004820152602260248201527f45524332303a20617070726f766520746f20746865207a65726f206164647265604482015261737360f01b60648201526084016103dc565b6001600160a01b0383811660008181526001602090815260408083209487168084529482529182902085905590518481527f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925910160405180910390a3505050565b600061055b8484610400565b905060001981146105c357818110156105b65760405162461bcd60e51b815260206004820152601d60248201527f45524332303a20696e73756666696369656e7420616c6c6f77616e636500000060448201526064016103dc565b6105c3848484840361042b565b50505050565b6001600160a01b03831661062d5760405162461bcd60e51b815260206004820152602560248201527f45524332303a207472616e736665722066726f6d20746865207a65726f206164604482015264647265737360d81b60648201526084016103dc565b6001600160a01b03821661068f5760405162461bcd60e51b815260206004820152602360248201527f45524332303a207472616e7366657220746f20746865207a65726f206164647260448201526265737360e81b60648201526084016103dc565b6001600160a01b038316600090815260208190526040902054818110156107075760405162461bcd60e51b815260206004820152602660248201527f45524332303a207472616e7366657220616d6f756e7420657863656564732062604482015265616c616e636560d01b60648201526084016103dc565b6001600160a01b03848116600081815260208181526040808320878703905593871680835291849020805487019055925185815290927fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef910160405180910390a36105c3565b600060208083528351808285015260005b8181101561079a5785810183015185820160400152820161077e565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b03811681146107d257600080fd5b919050565b600080604083850312156107ea57600080fd5b6107f3836107bb565b946020939093013593505050565b60008060006060848603121561081657600080fd5b61081f846107bb565b925061082d602085016107bb565b9150604084013590509250925092565b60006020828403121561084f57600080fd5b610858826107bb565b9392505050565b6000806040838503121561087257600080fd5b61087b836107bb565b9150610889602084016107bb565b90509250929050565b600181811c908216806108a657607f821691505b6020821081036108c657634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b8085111561091d578160001904821115610903576109036108cc565b8085161561091057918102915b93841c93908002906108e7565b509250929050565b600082610934575060016102fa565b81610941575060006102fa565b816001811461095757600281146109615761097d565b60019150506102fa565b60ff841115610972576109726108cc565b50506001821b6102fa565b5060208310610133831016604e8410600b84101617156109a0575081810a6102fa565b6109aa83836108e2565b80600019048211156109be576109be6108cc565b029392505050565b600061085860ff841683610925565b80820281158282048414176102fa576102fa6108cc565b808201808211156102fa576102fa6108cc56fea2646970667358221220284c71a8da7090e32de9a1e56c783803f2b86c58b8a5fafed2a0ff82721a1b4564736f6c63430008140033",
372
+ "bytecode": "0x60806040523480156200001157600080fd5b506040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b815250604051806040016040528060048152602001635553444360e01b8152508160039081620000659190620002d3565b506004620000748282620002d3565b505050620000af6200008b620000b560201b60201c565b620000996006600a620004b4565b620000a990633b9aca00620004cc565b620000b9565b620004fc565b3390565b6001600160a01b038216620000e95760405163ec442f0560e01b8152600060048201526024015b60405180910390fd5b620000f760008383620000fb565b5050565b6001600160a01b0383166200012a5780600260008282546200011e9190620004e6565b909155506200019e9050565b6001600160a01b038316600090815260208190526040902054818110156200017f5760405163391434e360e21b81526001600160a01b03851660048201526024810182905260448101839052606401620000e0565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b038216620001bc57600280548290039055620001db565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef836040516200022191815260200190565b60405180910390a3505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200025957607f821691505b6020821081036200027a57634e487b7160e01b600052602260045260246000fd5b50919050565b601f821115620002ce57600081815260208120601f850160051c81016020861015620002a95750805b601f850160051c820191505b81811015620002ca57828155600101620002b5565b5050505b505050565b81516001600160401b03811115620002ef57620002ef6200022e565b620003078162000300845462000244565b8462000280565b602080601f8311600181146200033f5760008415620003265750858301515b600019600386901b1c1916600185901b178555620002ca565b600085815260208120601f198616915b8281101562000370578886015182559484019460019091019084016200034f565b50858210156200038f5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b634e487b7160e01b600052601160045260246000fd5b600181815b80851115620003f6578160001904821115620003da57620003da6200039f565b80851615620003e857918102915b93841c9390800290620003ba565b509250929050565b6000826200040f57506001620004ae565b816200041e57506000620004ae565b8160018114620004375760028114620004425762000462565b6001915050620004ae565b60ff8411156200045657620004566200039f565b50506001821b620004ae565b5060208310610133831016604e8410600b841016171562000487575081810a620004ae565b620004938383620003b5565b8060001904821115620004aa57620004aa6200039f565b0290505b92915050565b6000620004c560ff841683620003fe565b9392505050565b8082028115828204841417620004ae57620004ae6200039f565b80820180821115620004ae57620004ae6200039f565b6108f3806200050c6000396000f3fe608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063313ce5671161008c578063a3f4df7e11610066578063a3f4df7e14610194578063a9059cbb146101bf578063dd62ed3e146101d2578063f76f8d781461020b57600080fd5b8063313ce5671461015c57806370a082311461016357806395d89b411461018c57600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd146101275780632e0f26251461013a5780632ff2e9dc14610154575b600080fd5b6100dc61022e565b6040516100e9919061062b565b60405180910390f35b610105610100366004610695565b6102c0565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b6101056101353660046106bf565b6102da565b610142600681565b60405160ff90911681526020016100e9565b6101196102fe565b6006610142565b6101196101713660046106fb565b6001600160a01b031660009081526020819052604090205490565b6100dc61031b565b6100dc6040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b81525081565b6101056101cd366004610695565b61032a565b6101196101e036600461071d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6100dc604051806040016040528060048152602001635553444360e01b81525081565b60606003805461023d90610750565b80601f016020809104026020016040519081016040528092919081815260200182805461026990610750565b80156102b65780601f1061028b576101008083540402835291602001916102b6565b820191906000526020600020905b81548152906001019060200180831161029957829003601f168201915b5050505050905090565b6000336102ce818585610338565b60019150505b92915050565b6000336102e885828561034a565b6102f38585856103cd565b506001949350505050565b61030a6006600a610884565b61031890633b9aca00610893565b81565b60606004805461023d90610750565b6000336102ce8185856103cd565b610345838383600161042c565b505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146103c757818110156103b857604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b6103c78484848403600061042c565b50505050565b6001600160a01b0383166103f757604051634b637e8f60e11b8152600060048201526024016103af565b6001600160a01b0382166104215760405163ec442f0560e01b8152600060048201526024016103af565b610345838383610501565b6001600160a01b0384166104565760405163e602df0560e01b8152600060048201526024016103af565b6001600160a01b03831661048057604051634a1406b160e11b8152600060048201526024016103af565b6001600160a01b03808516600090815260016020908152604080832093871683529290522082905580156103c757826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516104f391815260200190565b60405180910390a350505050565b6001600160a01b03831661052c57806002600082825461052191906108aa565b9091555061059e9050565b6001600160a01b0383166000908152602081905260409020548181101561057f5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016103af565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166105ba576002805482900390556105d9565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161061e91815260200190565b60405180910390a3505050565b600060208083528351808285015260005b818110156106585785810183015185820160400152820161063c565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461069057600080fd5b919050565b600080604083850312156106a857600080fd5b6106b183610679565b946020939093013593505050565b6000806000606084860312156106d457600080fd5b6106dd84610679565b92506106eb60208501610679565b9150604084013590509250925092565b60006020828403121561070d57600080fd5b61071682610679565b9392505050565b6000806040838503121561073057600080fd5b61073983610679565b915061074760208401610679565b90509250929050565b600181811c9082168061076457607f821691505b60208210810361078457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156107db5781600019048211156107c1576107c161078a565b808516156107ce57918102915b93841c93908002906107a5565b509250929050565b6000826107f2575060016102d4565b816107ff575060006102d4565b8160018114610815576002811461081f5761083b565b60019150506102d4565b60ff8411156108305761083061078a565b50506001821b6102d4565b5060208310610133831016604e8410600b841016171561085e575081810a6102d4565b61086883836107a0565b806000190482111561087c5761087c61078a565b029392505050565b600061071660ff8416836107e3565b80820281158282048414176102d4576102d461078a565b808201808211156102d4576102d461078a56fea2646970667358221220c7cd5b3f809ed9ea6a1f9af7bfa7d7bdd7eb9d8295877f2b981db597faede29d64736f6c63430008140033",
373
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100cf5760003560e01c8063313ce5671161008c578063a3f4df7e11610066578063a3f4df7e14610194578063a9059cbb146101bf578063dd62ed3e146101d2578063f76f8d781461020b57600080fd5b8063313ce5671461015c57806370a082311461016357806395d89b411461018c57600080fd5b806306fdde03146100d4578063095ea7b3146100f257806318160ddd1461011557806323b872dd146101275780632e0f26251461013a5780632ff2e9dc14610154575b600080fd5b6100dc61022e565b6040516100e9919061062b565b60405180910390f35b610105610100366004610695565b6102c0565b60405190151581526020016100e9565b6002545b6040519081526020016100e9565b6101056101353660046106bf565b6102da565b610142600681565b60405160ff90911681526020016100e9565b6101196102fe565b6006610142565b6101196101713660046106fb565b6001600160a01b031660009081526020819052604090205490565b6100dc61031b565b6100dc6040518060400160405280600c81526020016b55534443202d2044554d4d5960a01b81525081565b6101056101cd366004610695565b61032a565b6101196101e036600461071d565b6001600160a01b03918216600090815260016020908152604080832093909416825291909152205490565b6100dc604051806040016040528060048152602001635553444360e01b81525081565b60606003805461023d90610750565b80601f016020809104026020016040519081016040528092919081815260200182805461026990610750565b80156102b65780601f1061028b576101008083540402835291602001916102b6565b820191906000526020600020905b81548152906001019060200180831161029957829003601f168201915b5050505050905090565b6000336102ce818585610338565b60019150505b92915050565b6000336102e885828561034a565b6102f38585856103cd565b506001949350505050565b61030a6006600a610884565b61031890633b9aca00610893565b81565b60606004805461023d90610750565b6000336102ce8185856103cd565b610345838383600161042c565b505050565b6001600160a01b0383811660009081526001602090815260408083209386168352929052205460001981146103c757818110156103b857604051637dc7a0d960e11b81526001600160a01b038416600482015260248101829052604481018390526064015b60405180910390fd5b6103c78484848403600061042c565b50505050565b6001600160a01b0383166103f757604051634b637e8f60e11b8152600060048201526024016103af565b6001600160a01b0382166104215760405163ec442f0560e01b8152600060048201526024016103af565b610345838383610501565b6001600160a01b0384166104565760405163e602df0560e01b8152600060048201526024016103af565b6001600160a01b03831661048057604051634a1406b160e11b8152600060048201526024016103af565b6001600160a01b03808516600090815260016020908152604080832093871683529290522082905580156103c757826001600160a01b0316846001600160a01b03167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040516104f391815260200190565b60405180910390a350505050565b6001600160a01b03831661052c57806002600082825461052191906108aa565b9091555061059e9050565b6001600160a01b0383166000908152602081905260409020548181101561057f5760405163391434e360e21b81526001600160a01b038516600482015260248101829052604481018390526064016103af565b6001600160a01b03841660009081526020819052604090209082900390555b6001600160a01b0382166105ba576002805482900390556105d9565b6001600160a01b03821660009081526020819052604090208054820190555b816001600160a01b0316836001600160a01b03167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef8360405161061e91815260200190565b60405180910390a3505050565b600060208083528351808285015260005b818110156106585785810183015185820160400152820161063c565b506000604082860101526040601f19601f8301168501019250505092915050565b80356001600160a01b038116811461069057600080fd5b919050565b600080604083850312156106a857600080fd5b6106b183610679565b946020939093013593505050565b6000806000606084860312156106d457600080fd5b6106dd84610679565b92506106eb60208501610679565b9150604084013590509250925092565b60006020828403121561070d57600080fd5b61071682610679565b9392505050565b6000806040838503121561073057600080fd5b61073983610679565b915061074760208401610679565b90509250929050565b600181811c9082168061076457607f821691505b60208210810361078457634e487b7160e01b600052602260045260246000fd5b50919050565b634e487b7160e01b600052601160045260246000fd5b600181815b808511156107db5781600019048211156107c1576107c161078a565b808516156107ce57918102915b93841c93908002906107a5565b509250929050565b6000826107f2575060016102d4565b816107ff575060006102d4565b8160018114610815576002811461081f5761083b565b60019150506102d4565b60ff8411156108305761083061078a565b50506001821b6102d4565b5060208310610133831016604e8410600b841016171561085e575081810a6102d4565b61086883836107a0565b806000190482111561087c5761087c61078a565b029392505050565b600061071660ff8416836107e3565b80820281158282048414176102d4576102d461078a565b808201808211156102d4576102d461078a56fea2646970667358221220c7cd5b3f809ed9ea6a1f9af7bfa7d7bdd7eb9d8295877f2b981db597faede29d64736f6c63430008140033",
336
374
  "linkReferences": {},
337
375
  "deployedLinkReferences": {}
338
376
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
+ }
@@ -0,0 +1,104 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "DistributorTypeLib",
4
+ "sourceName": "contracts/types/DistributorType.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "NftId",
10
+ "name": "distributionNftId",
11
+ "type": "uint96"
12
+ },
13
+ {
14
+ "internalType": "string",
15
+ "name": "name",
16
+ "type": "string"
17
+ }
18
+ ],
19
+ "name": "toDistributorType",
20
+ "outputs": [
21
+ {
22
+ "internalType": "DistributorType",
23
+ "name": "",
24
+ "type": "bytes8"
25
+ }
26
+ ],
27
+ "stateMutability": "pure",
28
+ "type": "function"
29
+ },
30
+ {
31
+ "inputs": [
32
+ {
33
+ "internalType": "DistributorType",
34
+ "name": "id",
35
+ "type": "bytes8"
36
+ }
37
+ ],
38
+ "name": "toKey32",
39
+ "outputs": [
40
+ {
41
+ "internalType": "Key32",
42
+ "name": "key",
43
+ "type": "bytes32"
44
+ }
45
+ ],
46
+ "stateMutability": "pure",
47
+ "type": "function"
48
+ },
49
+ {
50
+ "inputs": [
51
+ {
52
+ "internalType": "DistributorType",
53
+ "name": "id",
54
+ "type": "bytes8"
55
+ }
56
+ ],
57
+ "name": "toKeyId",
58
+ "outputs": [
59
+ {
60
+ "internalType": "KeyId",
61
+ "name": "keyId",
62
+ "type": "bytes31"
63
+ }
64
+ ],
65
+ "stateMutability": "pure",
66
+ "type": "function"
67
+ },
68
+ {
69
+ "inputs": [],
70
+ "name": "zero",
71
+ "outputs": [
72
+ {
73
+ "internalType": "DistributorType",
74
+ "name": "",
75
+ "type": "bytes8"
76
+ }
77
+ ],
78
+ "stateMutability": "pure",
79
+ "type": "function"
80
+ }
81
+ ],
82
+ "bytecode": "0x61037e61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100565760003560e01c80632cf96bf91461005b57806355ee62751461008e578063578c3039146100af578063bc1b392d146100db575b600080fd5b6100766100693660046101af565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100a161009c3660046101af565b6100e2565b604051908152602001610085565b6100c26100bd3660046101f6565b61017c565b6040516001600160c01b03199091168152602001610085565b60006100c2565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce60796001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610152573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017691906102cb565b92915050565b600082826040516020016101919291906102e4565b60405160208183030381529060405280519060200120905092915050565b6000602082840312156101c157600080fd5b81356001600160c01b0319811681146101d957600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561020957600080fd5b82356bffffffffffffffffffffffff8116811461022557600080fd5b9150602083013567ffffffffffffffff8082111561024257600080fd5b818501915085601f83011261025657600080fd5b813581811115610268576102686101e0565b604051601f8201601f19908116603f01168101908382118183101715610290576102906101e0565b816040528281528860208487010111156102a957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000602082840312156102dd57600080fd5b5051919050565b6bffffffffffffffffffffffff8316815260006020604081840152835180604085015260005b818110156103265785810183015185820160600152820161030a565b506000606082860101526060601f19601f83011685010192505050939250505056fea2646970667358221220c288d77e4370bf353a931a6fe258fc3fc6271c66646b0bacf2bea2466060822864736f6c63430008140033",
83
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100565760003560e01c80632cf96bf91461005b57806355ee62751461008e578063578c3039146100af578063bc1b392d146100db575b600080fd5b6100766100693660046101af565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100a161009c3660046101af565b6100e2565b604051908152602001610085565b6100c26100bd3660046101f6565b61017c565b6040516001600160c01b03199091168152602001610085565b60006100c2565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce60796001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610152573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017691906102cb565b92915050565b600082826040516020016101919291906102e4565b60405160208183030381529060405280519060200120905092915050565b6000602082840312156101c157600080fd5b81356001600160c01b0319811681146101d957600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561020957600080fd5b82356bffffffffffffffffffffffff8116811461022557600080fd5b9150602083013567ffffffffffffffff8082111561024257600080fd5b818501915085601f83011261025657600080fd5b813581811115610268576102686101e0565b604051601f8201601f19908116603f01168101908382118183101715610290576102906101e0565b816040528281528860208487010111156102a957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000602082840312156102dd57600080fd5b5051919050565b6bffffffffffffffffffffffff8316815260006020604081840152835180604085015260005b818110156103265785810183015185820160600152820161030a565b506000606082860101526060601f19601f83011685010192505050939250505056fea2646970667358221220c288d77e4370bf353a931a6fe258fc3fc6271c66646b0bacf2bea2466060822864736f6c63430008140033",
84
+ "linkReferences": {
85
+ "contracts/types/Key32.sol": {
86
+ "Key32Lib": [
87
+ {
88
+ "length": 20,
89
+ "start": 288
90
+ }
91
+ ]
92
+ }
93
+ },
94
+ "deployedLinkReferences": {
95
+ "contracts/types/Key32.sol": {
96
+ "Key32Lib": [
97
+ {
98
+ "length": 20,
99
+ "start": 230
100
+ }
101
+ ]
102
+ }
103
+ }
104
+ }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }
@@ -5,11 +5,6 @@
5
5
  "abi": [
6
6
  {
7
7
  "inputs": [
8
- {
9
- "internalType": "uint256",
10
- "name": "amount",
11
- "type": "uint256"
12
- },
13
8
  {
14
9
  "components": [
15
10
  {
@@ -26,6 +21,11 @@
26
21
  "internalType": "struct Fee",
27
22
  "name": "fee",
28
23
  "type": "tuple"
24
+ },
25
+ {
26
+ "internalType": "uint256",
27
+ "name": "amount",
28
+ "type": "uint256"
29
29
  }
30
30
  ],
31
31
  "name": "calculateFee",
@@ -123,6 +123,37 @@
123
123
  "stateMutability": "pure",
124
124
  "type": "function"
125
125
  },
126
+ {
127
+ "inputs": [
128
+ {
129
+ "internalType": "uint8",
130
+ "name": "percent",
131
+ "type": "uint8"
132
+ }
133
+ ],
134
+ "name": "percentageFee",
135
+ "outputs": [
136
+ {
137
+ "components": [
138
+ {
139
+ "internalType": "UFixed",
140
+ "name": "fractionalFee",
141
+ "type": "uint256"
142
+ },
143
+ {
144
+ "internalType": "uint256",
145
+ "name": "fixedFee",
146
+ "type": "uint256"
147
+ }
148
+ ],
149
+ "internalType": "struct Fee",
150
+ "name": "fee",
151
+ "type": "tuple"
152
+ }
153
+ ],
154
+ "stateMutability": "pure",
155
+ "type": "function"
156
+ },
126
157
  {
127
158
  "inputs": [
128
159
  {
@@ -185,32 +216,40 @@
185
216
  "type": "function"
186
217
  }
187
218
  ],
188
- "bytecode": "0x61053261003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100615760003560e01c80632bd182d3146100665780638de0a4c2146100ac57806395248868146100cf578063c66fb3ae146100e2578063c7010dfa1461010a575b600080fd5b604080518082018252600080825260209182018190528251808401909352808352908201525b604080518251815260209283015192810192909252015b60405180910390f35b6100bf6100ba3660046103fa565b61013e565b60405190151581526020016100a3565b6100bf6100dd366004610416565b610159565b6100f56100f036600461044b565b61017a565b604080519283526020830191909152016100a3565b61008c61011836600461046f565b604080518082018252600080825260209182015281518083019092529281529182015290565b60008160200151600014801561015357508151155b92915050565b600081602001518360200151148015610173575082518251145b9392505050565b600080600061020373__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__6345ebb61e876040518263ffffffff1660e01b81526004016101bb91815260200190565b602060405180830381865af41580156101d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fc9190610491565b85516102a0565b6020850151604051632255341b60e11b8152600481018390529192509073__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__906344aa683690602401602060405180830381865af415801561025c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102809190610491565b61028a91906104c0565b925061029683866104d3565b9150509250929050565b60006101738383670de0b6b3a764000060008080600019858709858702925082811083820303915050806000036102ea578382816102e0576102e06104e6565b0492505050610173565b8084116103355760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b6000604082840312156103af57600080fd5b6040516040810181811067ffffffffffffffff821117156103e057634e487b7160e01b600052604160045260246000fd5b604052823581526020928301359281019290925250919050565b60006040828403121561040c57600080fd5b610173838361039d565b6000806080838503121561042957600080fd5b610433848461039d565b9150610442846040850161039d565b90509250929050565b6000806060838503121561045e57600080fd5b82359150610442846020850161039d565b6000806040838503121561048257600080fd5b50508035926020909101359150565b6000602082840312156104a357600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610153576101536104aa565b81810381811115610153576101536104aa565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220ce43dac16f65baa3a831022a10e378d17dafa927733d7a7e1c52c57f847ba20664736f6c63430008140033",
189
- "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100615760003560e01c80632bd182d3146100665780638de0a4c2146100ac57806395248868146100cf578063c66fb3ae146100e2578063c7010dfa1461010a575b600080fd5b604080518082018252600080825260209182018190528251808401909352808352908201525b604080518251815260209283015192810192909252015b60405180910390f35b6100bf6100ba3660046103fa565b61013e565b60405190151581526020016100a3565b6100bf6100dd366004610416565b610159565b6100f56100f036600461044b565b61017a565b604080519283526020830191909152016100a3565b61008c61011836600461046f565b604080518082018252600080825260209182015281518083019092529281529182015290565b60008160200151600014801561015357508151155b92915050565b600081602001518360200151148015610173575082518251145b9392505050565b600080600061020373__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__6345ebb61e876040518263ffffffff1660e01b81526004016101bb91815260200190565b602060405180830381865af41580156101d8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fc9190610491565b85516102a0565b6020850151604051632255341b60e11b8152600481018390529192509073__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__906344aa683690602401602060405180830381865af415801561025c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102809190610491565b61028a91906104c0565b925061029683866104d3565b9150509250929050565b60006101738383670de0b6b3a764000060008080600019858709858702925082811083820303915050806000036102ea578382816102e0576102e06104e6565b0492505050610173565b8084116103355760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b6000604082840312156103af57600080fd5b6040516040810181811067ffffffffffffffff821117156103e057634e487b7160e01b600052604160045260246000fd5b604052823581526020928301359281019290925250919050565b60006040828403121561040c57600080fd5b610173838361039d565b6000806080838503121561042957600080fd5b610433848461039d565b9150610442846040850161039d565b90509250929050565b6000806060838503121561045e57600080fd5b82359150610442846020850161039d565b6000806040838503121561048257600080fd5b50508035926020909101359150565b6000602082840312156104a357600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b80820180821115610153576101536104aa565b81810381811115610153576101536104aa565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220ce43dac16f65baa3a831022a10e378d17dafa927733d7a7e1c52c57f847ba20664736f6c63430008140033",
219
+ "bytecode": "0x61062361003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806304baf60c146100715780632bd182d31461009e5780635faa955b146100df5780638de0a4c2146100f25780639524886814610115578063c7010dfa14610128575b600080fd5b61008461007f3660046104c1565b61015c565b604080519283526020830191909152015b60405180910390f35b604080518082018252600080825260209182018190528251808401909352808352908201525b60408051825181526020928301519281019290925201610095565b6100c46100ed3660046104ec565b610282565b61010561010036600461050f565b61032b565b6040519015158152602001610095565b61010561012336600461052b565b610346565b6100c4610136366004610560565b604080518082018252600080825260209182015281518083019092529281529182015290565b60008060006101e573__$5ac3274b8cf1e01ea223bf093142af05b0$__6345ebb61e866040518263ffffffff1660e01b815260040161019d91815260200190565b602060405180830381865af41580156101ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101de9190610582565b8651610367565b6020860151604051632255341b60e11b8152600481018390529192509073__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af415801561023e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102629190610582565b61026c91906105b1565b925061027883856105c4565b9150509250929050565b60408051808201825260008082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$5ac3274b8cf1e01ea223bf093142af05b0$__631488c84560848301602060405180830381865af41580156102f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031b9190610582565b8152600060209091015292915050565b60008160200151600014801561034057508151155b92915050565b600081602001518360200151148015610360575082518251145b9392505050565b60006103608383670de0b6b3a764000060008080600019858709858702925082811083820303915050806000036103b1578382816103a7576103a76105d7565b0492505050610360565b8084116103fc5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b60006040828403121561047657600080fd5b6040516040810181811067ffffffffffffffff821117156104a757634e487b7160e01b600052604160045260246000fd5b604052823581526020928301359281019290925250919050565b600080606083850312156104d457600080fd5b6104de8484610464565b946040939093013593505050565b6000602082840312156104fe57600080fd5b813560ff8116811461036057600080fd5b60006040828403121561052157600080fd5b6103608383610464565b6000806080838503121561053e57600080fd5b6105488484610464565b91506105578460408501610464565b90509250929050565b6000806040838503121561057357600080fd5b50508035926020909101359150565b60006020828403121561059457600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156103405761034061059b565b818103818111156103405761034061059b565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220c77a95dee494b2abcf575cdf95fd67f95e3ba1946af0cc3c46d0e454b9587ac064736f6c63430008140033",
220
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806304baf60c146100715780632bd182d31461009e5780635faa955b146100df5780638de0a4c2146100f25780639524886814610115578063c7010dfa14610128575b600080fd5b61008461007f3660046104c1565b61015c565b604080519283526020830191909152015b60405180910390f35b604080518082018252600080825260209182018190528251808401909352808352908201525b60408051825181526020928301519281019290925201610095565b6100c46100ed3660046104ec565b610282565b61010561010036600461050f565b61032b565b6040519015158152602001610095565b61010561012336600461052b565b610346565b6100c4610136366004610560565b604080518082018252600080825260209182015281518083019092529281529182015290565b60008060006101e573__$5ac3274b8cf1e01ea223bf093142af05b0$__6345ebb61e866040518263ffffffff1660e01b815260040161019d91815260200190565b602060405180830381865af41580156101ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101de9190610582565b8651610367565b6020860151604051632255341b60e11b8152600481018390529192509073__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af415801561023e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102629190610582565b61026c91906105b1565b925061027883856105c4565b9150509250929050565b60408051808201825260008082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$5ac3274b8cf1e01ea223bf093142af05b0$__631488c84560848301602060405180830381865af41580156102f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031b9190610582565b8152600060209091015292915050565b60008160200151600014801561034057508151155b92915050565b600081602001518360200151148015610360575082518251145b9392505050565b60006103608383670de0b6b3a764000060008080600019858709858702925082811083820303915050806000036103b1578382816103a7576103a76105d7565b0492505050610360565b8084116103fc5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b60006040828403121561047657600080fd5b6040516040810181811067ffffffffffffffff821117156104a757634e487b7160e01b600052604160045260246000fd5b604052823581526020928301359281019290925250919050565b600080606083850312156104d457600080fd5b6104de8484610464565b946040939093013593505050565b6000602082840312156104fe57600080fd5b813560ff8116811461036057600080fd5b60006040828403121561052157600080fd5b6103608383610464565b6000806080838503121561053e57600080fd5b6105488484610464565b91506105578460408501610464565b90509250929050565b6000806040838503121561057357600080fd5b50508035926020909101359150565b60006020828403121561059457600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156103405761034061059b565b818103818111156103405761034061059b565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220c77a95dee494b2abcf575cdf95fd67f95e3ba1946af0cc3c46d0e454b9587ac064736f6c63430008140033",
190
221
  "linkReferences": {
191
222
  "contracts/types/UFixed.sol": {
192
- "UFixedMathLib": [
223
+ "UFixedLib": [
224
+ {
225
+ "length": 20,
226
+ "start": 416
227
+ },
193
228
  {
194
229
  "length": 20,
195
- "start": 446
230
+ "start": 574
196
231
  },
197
232
  {
198
233
  "length": 20,
199
- "start": 604
234
+ "start": 760
200
235
  }
201
236
  ]
202
237
  }
203
238
  },
204
239
  "deployedLinkReferences": {
205
240
  "contracts/types/UFixed.sol": {
206
- "UFixedMathLib": [
241
+ "UFixedLib": [
242
+ {
243
+ "length": 20,
244
+ "start": 358
245
+ },
207
246
  {
208
247
  "length": 20,
209
- "start": 388
248
+ "start": 516
210
249
  },
211
250
  {
212
251
  "length": 20,
213
- "start": 546
252
+ "start": 702
214
253
  }
215
254
  ]
216
255
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }
@@ -57,14 +57,6 @@
57
57
  },
58
58
  {
59
59
  "inputs": [
60
- {
61
- "internalType": "Key32",
62
- "name": "key",
63
- "type": "bytes32"
64
- }
65
- ],
66
- "name": "toKey",
67
- "outputs": [
68
60
  {
69
61
  "internalType": "ObjectType",
70
62
  "name": "objectType",
@@ -76,36 +68,58 @@
76
68
  "type": "bytes31"
77
69
  }
78
70
  ],
71
+ "name": "toKey32",
72
+ "outputs": [
73
+ {
74
+ "internalType": "Key32",
75
+ "name": "",
76
+ "type": "bytes32"
77
+ }
78
+ ],
79
79
  "stateMutability": "pure",
80
80
  "type": "function"
81
81
  },
82
82
  {
83
83
  "inputs": [
84
84
  {
85
- "internalType": "ObjectType",
86
- "name": "objectType",
87
- "type": "uint8"
88
- },
85
+ "internalType": "Key32",
86
+ "name": "key",
87
+ "type": "bytes32"
88
+ }
89
+ ],
90
+ "name": "toKeyId",
91
+ "outputs": [
89
92
  {
90
93
  "internalType": "KeyId",
91
94
  "name": "id",
92
95
  "type": "bytes31"
93
96
  }
94
97
  ],
95
- "name": "toKey32",
96
- "outputs": [
98
+ "stateMutability": "pure",
99
+ "type": "function"
100
+ },
101
+ {
102
+ "inputs": [
97
103
  {
98
104
  "internalType": "Key32",
99
- "name": "",
105
+ "name": "key",
100
106
  "type": "bytes32"
101
107
  }
102
108
  ],
109
+ "name": "toObjectType",
110
+ "outputs": [
111
+ {
112
+ "internalType": "ObjectType",
113
+ "name": "objectType",
114
+ "type": "uint8"
115
+ }
116
+ ],
103
117
  "stateMutability": "pure",
104
118
  "type": "function"
105
119
  }
106
120
  ],
107
- "bytecode": "0x61025b61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630f94cc501461007157806329e9b22614610093578063a4dc7d86146100ad578063d92bb60d146100dc578063da3fe412146100ea578063f48016ce146100f2575b600080fd5b6100806001600160f81b031981565b6040519081526020015b60405180910390f35b61009b60f881565b60405160ff909116815260200161008a565b6100c06100bb36600461017b565b610105565b6040805160ff909316835260ff1990911660208301520161008a565b6100806001600160f81b0381565b61009b61013b565b610080610100366004610194565b61014b565b60f881811c90600090839061011c906101006101f0565b60ff1660ff60f81b6001600160f81b031916198216901b915050915091565b61014860f86101006101f0565b81565b600060ff8316600883901c8261016f826001600160f81b031960f889901b16610212565b93505050505b92915050565b60006020828403121561018d57600080fd5b5035919050565b600080604083850312156101a757600080fd5b823560ff811681146101b857600080fd5b9150602083013560ff19811681146101cf57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561020b5761020b6101da565b5092915050565b80820180821115610175576101756101da56fea26469706673582212209f9359b88be2a0a160c8af25961ee9cdf5c01de76ffe18524c389bd9cbd8f6ec64736f6c63430008140033",
108
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630f94cc501461007157806329e9b22614610093578063a4dc7d86146100ad578063d92bb60d146100dc578063da3fe412146100ea578063f48016ce146100f2575b600080fd5b6100806001600160f81b031981565b6040519081526020015b60405180910390f35b61009b60f881565b60405160ff909116815260200161008a565b6100c06100bb36600461017b565b610105565b6040805160ff909316835260ff1990911660208301520161008a565b6100806001600160f81b0381565b61009b61013b565b610080610100366004610194565b61014b565b60f881811c90600090839061011c906101006101f0565b60ff1660ff60f81b6001600160f81b031916198216901b915050915091565b61014860f86101006101f0565b81565b600060ff8316600883901c8261016f826001600160f81b031960f889901b16610212565b93505050505b92915050565b60006020828403121561018d57600080fd5b5035919050565b600080604083850312156101a757600080fd5b823560ff811681146101b857600080fd5b9150602083013560ff19811681146101cf57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561020b5761020b6101da565b5092915050565b80820180821115610175576101756101da56fea26469706673582212209f9359b88be2a0a160c8af25961ee9cdf5c01de76ffe18524c389bd9cbd8f6ec64736f6c63430008140033",
121
+ "bytecode": "0x61027361003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100875760003560e01c80639601d31e116100655780639601d31e146100ee578063d92bb60d14610102578063da3fe41214610110578063f48016ce1461011857600080fd5b80630f94cc501461008c57806329e9b226146100ae578063389e7d68146100c8575b600080fd5b61009b6001600160f81b031981565b6040519081526020015b60405180910390f35b6100b660f881565b60405160ff90911681526020016100a5565b6100db6100d6366004610193565b61012b565b60405160ff1990911681526020016100a5565b6100b66100fc366004610193565b60f81c90565b61009b6001600160f81b0381565b6100b6610153565b61009b6101263660046101ac565b610163565b60008161013b60f8610100610208565b6001600160f81b039190911660ff9091161b92915050565b61016060f8610100610208565b81565b600060ff8316600883901c82610187826001600160f81b031960f889901b1661022a565b93505050505b92915050565b6000602082840312156101a557600080fd5b5035919050565b600080604083850312156101bf57600080fd5b823560ff811681146101d057600080fd5b9150602083013560ff19811681146101e757600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff828116828216039080821115610223576102236101f2565b5092915050565b8082018082111561018d5761018d6101f256fea2646970667358221220588d306f4696abb188738beb0b4134683fc431352475bc5e19a067a98c0b854564736f6c63430008140033",
122
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100875760003560e01c80639601d31e116100655780639601d31e146100ee578063d92bb60d14610102578063da3fe41214610110578063f48016ce1461011857600080fd5b80630f94cc501461008c57806329e9b226146100ae578063389e7d68146100c8575b600080fd5b61009b6001600160f81b031981565b6040519081526020015b60405180910390f35b6100b660f881565b60405160ff90911681526020016100a5565b6100db6100d6366004610193565b61012b565b60405160ff1990911681526020016100a5565b6100b66100fc366004610193565b60f81c90565b61009b6001600160f81b0381565b6100b6610153565b61009b6101263660046101ac565b610163565b60008161013b60f8610100610208565b6001600160f81b039190911660ff9091161b92915050565b61016060f8610100610208565b81565b600060ff8316600883901c82610187826001600160f81b031960f889901b1661022a565b93505050505b92915050565b6000602082840312156101a557600080fd5b5035919050565b600080604083850312156101bf57600080fd5b823560ff811681146101d057600080fd5b9150602083013560ff19811681146101e757600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff828116828216039080821115610223576102236101f2565b5092915050565b8082018082111561018d5761018d6101f256fea2646970667358221220588d306f4696abb188738beb0b4134683fc431352475bc5e19a067a98c0b854564736f6c63430008140033",
109
123
  "linkReferences": {},
110
124
  "deployedLinkReferences": {}
111
125
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }
@@ -128,8 +128,8 @@
128
128
  "type": "function"
129
129
  }
130
130
  ],
131
- "bytecode": "0x6102fa61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220df26126a07b6b22c5aa899d018fa4432b5bd97173c5abb9e0c874c0310162a6864736f6c63430008140033",
132
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220df26126a07b6b22c5aa899d018fa4432b5bd97173c5abb9e0c874c0310162a6864736f6c63430008140033",
131
+ "bytecode": "0x6102fa61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220c87ccb00be5aaeeddea3b08023149b5c9ef9f6898c60fdc2f27c7cba04e318d264736f6c63430008140033",
132
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220c87ccb00be5aaeeddea3b08023149b5c9ef9f6898c60fdc2f27c7cba04e318d264736f6c63430008140033",
133
133
  "linkReferences": {
134
134
  "contracts/types/Key32.sol": {
135
135
  "Key32Lib": [
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/ac8b1a0ba35c3a8a508882d70043ad3f.json"
3
+ "buildInfo": "../../../build-info/ff7d6f99450632e8472f8e5ac690f339.json"
4
4
  }