@etherisc/gif-next 0.0.2-ce2fc91-485 → 0.0.2-ce8407f-016

Sign up to get free protection for your applications and to get access to all the features.
Files changed (325) hide show
  1. package/README.md +71 -25
  2. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +1 -1
  3. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +115 -48
  4. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +1 -1
  5. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +1 -1
  6. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +1 -1
  7. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +1 -1
  8. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +1 -1
  9. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +1 -1
  10. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +1 -1
  11. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +1 -1
  12. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +1 -1
  13. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +1 -1
  14. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +1 -1
  15. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +2 -2
  16. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +1 -1
  17. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +1 -1
  18. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +1 -1
  19. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +2 -2
  20. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +1 -1
  21. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +2 -2
  22. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +1 -1
  23. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +1 -1
  24. package/artifacts/contracts/instance/AccessManagedSimple.sol/AccessManagedSimple.dbg.json +4 -0
  25. package/artifacts/contracts/instance/AccessManagedSimple.sol/AccessManagedSimple.json +101 -0
  26. package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.dbg.json +4 -0
  27. package/artifacts/contracts/instance/AccessManagerSimple.sol/AccessManagerSimple.json +1119 -0
  28. package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.dbg.json +4 -0
  29. package/artifacts/contracts/instance/IAccessManagerSimple.sol/IAccessManagerSimple.json +1082 -0
  30. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  31. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +1 -1907
  32. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  33. package/artifacts/contracts/instance/Instance.sol/Instance.json +2428 -1138
  34. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +4 -0
  35. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +917 -0
  36. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  37. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +878 -0
  38. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  39. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +117 -0
  40. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  41. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +50 -55
  42. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  43. package/artifacts/contracts/instance/base/IService.sol/IService.dbg.json +1 -1
  44. package/artifacts/contracts/instance/base/IService.sol/IService.json +174 -53
  45. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  46. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +156 -112
  47. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  48. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +4 -4
  49. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +1 -1
  50. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.json +220 -52
  51. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
  52. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +211 -0
  53. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
  54. package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
  55. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  56. package/artifacts/contracts/instance/module/{access/IAccess.sol/IAccess.json → IDistribution.sol/IDistribution.json} +2 -2
  57. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
  58. package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
  59. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
  60. package/artifacts/contracts/instance/module/{risk/IRisk.sol → IRisk.sol}/IRisk.json +1 -1
  61. package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +4 -0
  62. package/artifacts/contracts/instance/{base/ModuleBase.sol/ModuleBase.json → module/ISetup.sol/ISetup.json} +2 -2
  63. package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +4 -0
  64. package/artifacts/contracts/instance/module/{treasury/ITreasury.sol → ITreasury.sol}/ITreasury.json +1 -1
  65. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  66. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +141 -12
  67. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +1 -1
  68. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.json +5 -0
  69. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  70. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +298 -39
  71. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
  72. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +745 -0
  73. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
  74. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +34 -0
  75. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  76. package/artifacts/contracts/registry/Registry.sol/Registry.json +489 -120
  77. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
  78. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1013 -0
  79. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  80. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +476 -0
  81. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +4 -0
  82. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +107 -0
  83. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  84. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
  85. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  86. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +127 -0
  87. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  88. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +117 -37
  89. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  90. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +55 -14
  91. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  92. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +158 -0
  93. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  94. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +349 -0
  95. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  96. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +190 -37
  97. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  98. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +96 -0
  99. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  100. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  101. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  102. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +78 -14
  103. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  104. package/artifacts/contracts/test/TestFee.sol/TestFee.json +2 -2
  105. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  106. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +204 -36
  107. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  108. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +5 -111
  109. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  110. package/artifacts/contracts/test/TestService.sol/TestService.json +283 -62
  111. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  112. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  113. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
  114. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  115. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +103 -23
  116. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
  117. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  118. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  119. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  120. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  121. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +104 -0
  122. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  123. package/artifacts/contracts/types/Fee.sol/FeeLib.json +50 -11
  124. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
  125. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +31 -17
  126. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  127. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +2 -2
  128. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  129. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +2 -2
  130. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +4 -0
  131. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +100 -0
  132. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  133. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  134. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +4 -0
  135. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +123 -0
  136. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +4 -0
  137. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +86 -0
  138. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
  139. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +134 -8
  140. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  141. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  142. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  143. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +15 -2
  144. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +1 -1
  145. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  146. package/artifacts/contracts/types/Version.sol/VersionLib.json +40 -2
  147. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  148. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +2 -2
  149. package/contracts/components/IBaseComponent.sol +4 -4
  150. package/contracts/instance/AccessManagedSimple.sol +114 -0
  151. package/contracts/instance/AccessManagerSimple.sol +682 -0
  152. package/contracts/instance/IAccessManagerSimple.sol +391 -0
  153. package/contracts/instance/IInstance.sol +3 -49
  154. package/contracts/instance/Instance.sol +378 -54
  155. package/contracts/instance/InstanceAccessManager.sol +288 -0
  156. package/contracts/instance/InstanceReader.sol +235 -0
  157. package/contracts/instance/InstanceService.sol +45 -0
  158. package/contracts/instance/base/IKeyValueStore.sol +10 -11
  159. package/contracts/instance/base/ILifecycle.sol +3 -3
  160. package/contracts/instance/base/KeyValueStore.sol +50 -18
  161. package/contracts/instance/base/Lifecycle.sol +16 -11
  162. package/contracts/instance/base/ServiceBase.sol +20 -13
  163. package/contracts/instance/module/IAccess.sol +38 -0
  164. package/contracts/instance/module/IBundle.sol +19 -0
  165. package/contracts/instance/module/IDistribution.sol +39 -0
  166. package/contracts/instance/module/IPolicy.sol +45 -0
  167. package/contracts/instance/module/IRisk.sol +11 -0
  168. package/contracts/instance/module/ISetup.sol +41 -0
  169. package/contracts/instance/module/ITreasury.sol +23 -0
  170. package/contracts/registry/ChainNft.sol +43 -15
  171. package/contracts/registry/IChainNft.sol +3 -2
  172. package/contracts/registry/IRegistry.sol +42 -26
  173. package/contracts/registry/IRegistryService.sol +29 -0
  174. package/contracts/registry/ITransferInterceptor.sol +6 -0
  175. package/contracts/registry/Registry.sol +384 -274
  176. package/contracts/registry/RegistryService.sol +369 -0
  177. package/contracts/registry/RegistryServiceManager.sol +43 -0
  178. package/contracts/shared/ContractDeployerLib.sol +72 -0
  179. package/contracts/shared/ERC165.sol +1 -1
  180. package/contracts/shared/INftOwnable.sol +22 -0
  181. package/contracts/shared/IRegisterable.sol +9 -16
  182. package/contracts/shared/IVersionable.sol +55 -11
  183. package/contracts/shared/NftOwnable.sol +136 -0
  184. package/contracts/shared/ProxyManager.sol +94 -0
  185. package/contracts/shared/Registerable.sol +62 -59
  186. package/contracts/shared/TokenHandler.sol +27 -0
  187. package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
  188. package/contracts/shared/Versionable.sol +113 -55
  189. package/contracts/test/TestRegisterable.sol +5 -6
  190. package/contracts/test/TestRoleId.sol +6 -6
  191. package/contracts/test/TestService.sol +5 -11
  192. package/contracts/types/DistributorType.sol +55 -0
  193. package/contracts/types/Fee.sol +8 -3
  194. package/contracts/types/Key32.sol +8 -3
  195. package/contracts/types/NumberId.sol +52 -0
  196. package/contracts/types/ObjectType.sol +44 -11
  197. package/contracts/types/Referral.sol +85 -0
  198. package/contracts/types/RiskId.sol +43 -0
  199. package/contracts/types/RoleId.sol +47 -10
  200. package/contracts/types/StateId.sol +1 -1
  201. package/contracts/types/Timestamp.sol +7 -3
  202. package/contracts/types/Version.sol +9 -0
  203. package/package.json +1 -1
  204. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  205. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -174
  206. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
  207. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +0 -356
  208. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
  209. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +0 -279
  210. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  211. package/artifacts/contracts/components/Pool.sol/Pool.json +0 -387
  212. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  213. package/artifacts/contracts/components/Product.sol/Product.json +0 -305
  214. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
  215. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
  216. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  217. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.json +0 -300
  218. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  219. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -63
  220. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  221. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.json +0 -326
  222. package/artifacts/contracts/instance/base/ModuleBase.sol/ModuleBase.dbg.json +0 -4
  223. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
  224. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
  225. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
  226. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  227. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
  228. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
  229. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -296
  230. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
  231. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
  232. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -296
  233. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.dbg.json +0 -4
  234. package/artifacts/contracts/instance/module/compensation/CompensationModule.sol/CompensationModule.json +0 -10
  235. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.dbg.json +0 -4
  236. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensation.json +0 -10
  237. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.dbg.json +0 -4
  238. package/artifacts/contracts/instance/module/compensation/ICompensation.sol/ICompensationModule.json +0 -10
  239. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  240. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -241
  241. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
  242. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
  243. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  244. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.json +0 -241
  245. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  246. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  247. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -271
  248. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  249. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -271
  250. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  251. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
  252. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  253. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -149
  254. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  255. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -149
  256. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
  257. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
  258. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -10
  259. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
  260. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -10
  261. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
  262. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
  263. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -533
  264. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
  265. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
  266. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
  267. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -533
  268. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  269. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -507
  270. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  271. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.json +0 -364
  272. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
  273. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -376
  274. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
  275. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +0 -477
  276. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
  277. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -471
  278. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
  279. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -673
  280. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
  281. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.json +0 -24
  282. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
  283. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
  284. package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
  285. package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -387
  286. package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
  287. package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -393
  288. package/contracts/components/BaseComponent.sol +0 -88
  289. package/contracts/components/IPoolComponent.sol +0 -57
  290. package/contracts/components/IProductComponent.sol +0 -19
  291. package/contracts/components/Pool.sol +0 -174
  292. package/contracts/components/Product.sol +0 -117
  293. package/contracts/experiment/statemachine/README.md +0 -112
  294. package/contracts/instance/IInstanceLinked.sol +0 -8
  295. package/contracts/instance/base/ComponentServiceBase.sol +0 -42
  296. package/contracts/instance/base/IInstanceBase.sol +0 -14
  297. package/contracts/instance/base/InstanceBase.sol +0 -80
  298. package/contracts/instance/base/ModuleBase.sol +0 -52
  299. package/contracts/instance/module/access/Access.sol +0 -149
  300. package/contracts/instance/module/access/IAccess.sol +0 -53
  301. package/contracts/instance/module/bundle/BundleModule.sol +0 -136
  302. package/contracts/instance/module/bundle/IBundle.sol +0 -58
  303. package/contracts/instance/module/compensation/CompensationModule.sol +0 -8
  304. package/contracts/instance/module/compensation/ICompensation.sol +0 -10
  305. package/contracts/instance/module/component/ComponentModule.sol +0 -104
  306. package/contracts/instance/module/component/IComponent.sol +0 -63
  307. package/contracts/instance/module/policy/IPolicy.sol +0 -61
  308. package/contracts/instance/module/policy/PolicyModule.sol +0 -77
  309. package/contracts/instance/module/pool/IPoolModule.sol +0 -41
  310. package/contracts/instance/module/pool/PoolModule.sol +0 -87
  311. package/contracts/instance/module/risk/IRisk.sol +0 -10
  312. package/contracts/instance/module/risk/RiskModule.sol +0 -8
  313. package/contracts/instance/module/treasury/ITreasury.sol +0 -103
  314. package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
  315. package/contracts/instance/module/treasury/TreasuryModule.sol +0 -152
  316. package/contracts/instance/service/ComponentOwnerService.sol +0 -176
  317. package/contracts/instance/service/IComponentOwnerService.sol +0 -22
  318. package/contracts/instance/service/IPoolService.sol +0 -30
  319. package/contracts/instance/service/IProductService.sol +0 -58
  320. package/contracts/instance/service/PoolService.sol +0 -123
  321. package/contracts/instance/service/ProductService.sol +0 -354
  322. package/contracts/registry/IRegistryLinked.sol +0 -8
  323. package/contracts/shared/IOwnable.sol +0 -6
  324. package/contracts/test/TestPool.sol +0 -22
  325. package/contracts/test/TestProduct.sol +0 -44
@@ -3,6 +3,29 @@
3
3
  "contractName": "TestVersionable",
4
4
  "sourceName": "contracts/test/TestVersionable.sol",
5
5
  "abi": [
6
+ {
7
+ "inputs": [],
8
+ "name": "InvalidInitialization",
9
+ "type": "error"
10
+ },
11
+ {
12
+ "inputs": [],
13
+ "name": "NotInitializing",
14
+ "type": "error"
15
+ },
16
+ {
17
+ "anonymous": false,
18
+ "inputs": [
19
+ {
20
+ "indexed": false,
21
+ "internalType": "uint64",
22
+ "name": "version",
23
+ "type": "uint64"
24
+ }
25
+ ],
26
+ "name": "Initialized",
27
+ "type": "event"
28
+ },
6
29
  {
7
30
  "anonymous": false,
8
31
  "inputs": [
@@ -25,25 +48,20 @@
25
48
  "type": "address"
26
49
  }
27
50
  ],
28
- "name": "LogVersionableActivated",
51
+ "name": "LogVersionableInitialized",
29
52
  "type": "event"
30
53
  },
31
54
  {
32
- "inputs": [
33
- {
34
- "internalType": "address",
35
- "name": "implementation",
36
- "type": "address"
37
- },
55
+ "inputs": [],
56
+ "name": "getInitializedVersion",
57
+ "outputs": [
38
58
  {
39
- "internalType": "address",
40
- "name": "activatedBy",
41
- "type": "address"
59
+ "internalType": "uint64",
60
+ "name": "",
61
+ "type": "uint64"
42
62
  }
43
63
  ],
44
- "name": "activate",
45
- "outputs": [],
46
- "stateMutability": "nonpayable",
64
+ "stateMutability": "view",
47
65
  "type": "function"
48
66
  },
49
67
  {
@@ -137,6 +155,29 @@
137
155
  "stateMutability": "view",
138
156
  "type": "function"
139
157
  },
158
+ {
159
+ "inputs": [
160
+ {
161
+ "internalType": "address",
162
+ "name": "implementation",
163
+ "type": "address"
164
+ },
165
+ {
166
+ "internalType": "address",
167
+ "name": "activatedBy",
168
+ "type": "address"
169
+ },
170
+ {
171
+ "internalType": "bytes",
172
+ "name": "data",
173
+ "type": "bytes"
174
+ }
175
+ ],
176
+ "name": "initialize",
177
+ "outputs": [],
178
+ "stateMutability": "nonpayable",
179
+ "type": "function"
180
+ },
140
181
  {
141
182
  "inputs": [
142
183
  {
@@ -145,7 +186,7 @@
145
186
  "type": "uint24"
146
187
  }
147
188
  ],
148
- "name": "isActivated",
189
+ "name": "isInitialized",
149
190
  "outputs": [
150
191
  {
151
192
  "internalType": "bool",
@@ -155,20 +196,47 @@
155
196
  ],
156
197
  "stateMutability": "view",
157
198
  "type": "function"
199
+ },
200
+ {
201
+ "inputs": [
202
+ {
203
+ "internalType": "address",
204
+ "name": "implementation",
205
+ "type": "address"
206
+ },
207
+ {
208
+ "internalType": "address",
209
+ "name": "activatedBy",
210
+ "type": "address"
211
+ },
212
+ {
213
+ "internalType": "bytes",
214
+ "name": "data",
215
+ "type": "bytes"
216
+ }
217
+ ],
218
+ "name": "upgrade",
219
+ "outputs": [],
220
+ "stateMutability": "nonpayable",
221
+ "type": "function"
158
222
  }
159
223
  ],
160
- "bytecode": "0x608060405234801561001057600080fd5b5061001c600033610021565b6104a4565b600061002b6102eb565b905061003681610375565b156100985760405162461bcd60e51b815260206004820152602760248201527f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f41436044820152661512559055115160ca1b60648201526084015b60405180910390fd5b6001541561014e5760018054600091906100b3908290610428565b815481106100c3576100c3610449565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff1690506100f48282610416565b61014c5760405162461bcd60e51b8152602060048201526024808201527f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160448201526353494e4760e01b606482015260840161008f565b505b600180548082018255600091909152600a8082047fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805462ffffff808616600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b038086166020840152841690820152606081016101d64290565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602081815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d4419906102de9083908690869062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af415801561034c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610370919061045f565b905090565b62ffffff8116600090815260208190526040808220600101549051631bbffab160e21b8152600160c81b90910463ffffffff166004820152819073__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af41580156103eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061040f919061048b565b1192915050565b62ffffff808216908316115b92915050565b8181038181111561042257634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121561047157600080fd5b815162ffffff8116811461048457600080fd5b9392505050565b60006020828403121561049d57600080fd5b5051919050565b61078a806104b36000396000f3fe608060405234801561001057600080fd5b50600436106100625760003560e01c80630abd8434146100675780630d8e6e2c1461008f5780634d459c90146100ab578063946dfcfe146101b85780639555c4db146101c9578063b88da759146101de575b600080fd5b61007a61007536600461065b565b6101f1565b60405190151581526020015b60405180910390f35b610097610292565b60405162ffffff9091168152602001610086565b61015b6100b936600461065b565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525062ffffff90811660009081526020818152604091829020825160a0810184528154948516815263010000009094046001600160a01b03908116928501929092526001015490811691830191909152600160a01b810464ffffffffff166060830152600160c81b900463ffffffff16608082015290565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001610086565b600154604051908152602001610086565b6101dc6101d736600461069b565b61031c565b005b6100976101ec3660046106ce565b61032a565b62ffffff8116600090815260208190526040808220600101549051631bbffab160e21b8152600160c81b90910463ffffffff166004820152819073__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610267573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028b91906106e7565b1192915050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156102f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103179190610700565b905090565b610326828261036b565b5050565b60006001828154811061033f5761033f61071d565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000610375610292565b9050610380816101f1565b156103e25760405162461bcd60e51b815260206004820152602760248201527f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f41436044820152661512559055115160ca1b60648201526084015b60405180910390fd5b600154156104985760018054600091906103fd908290610733565b8154811061040d5761040d61071d565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff16905061043e8282610635565b6104965760405162461bcd60e51b8152602060048201526024808201527f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160448201526353494e4760e01b60648201526084016103d9565b505b600180548082018255600091909152600a8082047fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805462ffffff808616600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b038086166020840152841690820152606081016105204290565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602081815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d4419906106289083908690869062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050565b62ffffff808216908316115b92915050565b62ffffff8116811461065857600080fd5b50565b60006020828403121561066d57600080fd5b813561067881610647565b9392505050565b80356001600160a01b038116811461069657600080fd5b919050565b600080604083850312156106ae57600080fd5b6106b78361067f565b91506106c56020840161067f565b90509250929050565b6000602082840312156106e057600080fd5b5035919050565b6000602082840312156106f957600080fd5b5051919050565b60006020828403121561071257600080fd5b815161067881610647565b634e487b7160e01b600052603260045260246000fd5b8181038181111561064157634e487b7160e01b600052601160045260246000fdfea26469706673582212205748938f581545f49967b579140bce52039bc11bd23ce00d0e3ae960810d59a564736f6c63430008140033",
161
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100625760003560e01c80630abd8434146100675780630d8e6e2c1461008f5780634d459c90146100ab578063946dfcfe146101b85780639555c4db146101c9578063b88da759146101de575b600080fd5b61007a61007536600461065b565b6101f1565b60405190151581526020015b60405180910390f35b610097610292565b60405162ffffff9091168152602001610086565b61015b6100b936600461065b565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525062ffffff90811660009081526020818152604091829020825160a0810184528154948516815263010000009094046001600160a01b03908116928501929092526001015490811691830191909152600160a01b810464ffffffffff166060830152600160c81b900463ffffffff16608082015290565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001610086565b600154604051908152602001610086565b6101dc6101d736600461069b565b61031c565b005b6100976101ec3660046106ce565b61032a565b62ffffff8116600090815260208190526040808220600101549051631bbffab160e21b8152600160c81b90910463ffffffff166004820152819073__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610267573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061028b91906106e7565b1192915050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156102f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103179190610700565b905090565b610326828261036b565b5050565b60006001828154811061033f5761033f61071d565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000610375610292565b9050610380816101f1565b156103e25760405162461bcd60e51b815260206004820152602760248201527f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f41436044820152661512559055115160ca1b60648201526084015b60405180910390fd5b600154156104985760018054600091906103fd908290610733565b8154811061040d5761040d61071d565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff16905061043e8282610635565b6104965760405162461bcd60e51b8152602060048201526024808201527f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160448201526353494e4760e01b60648201526084016103d9565b505b600180548082018255600091909152600a8082047fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601805462ffffff808616600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b038086166020840152841690820152606081016105204290565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602081815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d4419906106289083908690869062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050565b62ffffff808216908316115b92915050565b62ffffff8116811461065857600080fd5b50565b60006020828403121561066d57600080fd5b813561067881610647565b9392505050565b80356001600160a01b038116811461069657600080fd5b919050565b600080604083850312156106ae57600080fd5b6106b78361067f565b91506106c56020840161067f565b90509250929050565b6000602082840312156106e057600080fd5b5035919050565b6000602082840312156106f957600080fd5b5051919050565b60006020828403121561071257600080fd5b815161067881610647565b634e487b7160e01b600052603260045260246000fd5b8181038181111561064157634e487b7160e01b600052601160045260246000fdfea26469706673582212205748938f581545f49967b579140bce52039bc11bd23ce00d0e3ae960810d59a564736f6c63430008140033",
224
+ "bytecode": "0x608060405234801561001057600080fd5b5061001961001e565b6100d0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161561006e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100cd5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b610bd8806100df6000396000f3fe608060405234801561001057600080fd5b50600436106100885760003560e01c8063a745e3df1161005b578063a745e3df1461021a578063b3c650151461022f578063b88da75914610250578063cf7a1d771461026357600080fd5b80630d8e6e2c1461008d5780634d459c90146100ae5780634f421333146101c7578063946dfcfe146101ea575b600080fd5b610095610276565b60405162ffffff90911681526020015b60405180910390f35b61016a6100bc366004610984565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152600080516020610b8383398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a0016100a5565b6101da6101d5366004610984565b610300565b60405190151581526020016100a5565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed901546040519081526020016100a5565b61022d6102283660046109da565b6103b3565b005b610237610510565b60405167ffffffffffffffff90911681526020016100a5565b61009561025e366004610aac565b610532565b61022d6102713660046109da565b610583565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156102d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102fb9190610ac5565b905090565b600080600080516020610b8383398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610388573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ac9190610ae2565b1192915050565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c6103d5610276565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610415573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104399190610afb565b600080516020610b638339815191528054600160401b900460ff168061046d5750805467ffffffffffffffff808416911610155b1561048b5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff191667ffffffffffffffff831617600160401b1781556104b7858561068e565b6104c083610933565b805460ff60401b1916815560405167ffffffffffffffff831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b60006102fb600080516020610b638339815191525467ffffffffffffffff1690565b6000600080516020610b83833981519152600101828154811061055757610557610b25565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b600080516020610b638339815191528054600160401b810460ff16159067ffffffffffffffff166000811580156105b75750825b905060008267ffffffffffffffff1660011480156105d45750303b155b9050811580156105e2575080155b156106005760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561062a57845460ff60401b1916600160401b1785555b610634888861068e565b61063e8787610933565b831561068457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610696610937565b600080516020610b8383398151915260006106c7600080516020610b638339815191525467ffffffffffffffff1690565b905060006106d3610276565b90508167ffffffffffffffff166001036107015760028301805462ffffff191662ffffff8316179055610753565b600283015462ffffff908116908216116107535760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b604482015260640160405180910390fd5b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015610807573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082b9190610b3b565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf68906105019083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6100885b600080516020610b6383398151915254600160401b900460ff1661096e57604051631afcd79f60e31b815260040160405180910390fd5b565b62ffffff8116811461098157600080fd5b50565b60006020828403121561099657600080fd5b81356109a181610970565b9392505050565b80356001600160a01b03811681146109bf57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109ef57600080fd5b6109f8846109a8565b9250610a06602085016109a8565b9150604084013567ffffffffffffffff80821115610a2357600080fd5b818601915086601f830112610a3757600080fd5b813581811115610a4957610a496109c4565b604051601f8201601f19908116603f01168101908382118183101715610a7157610a716109c4565b81604052828152896020848701011115610a8a57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b600060208284031215610abe57600080fd5b5035919050565b600060208284031215610ad757600080fd5b81516109a181610970565b600060208284031215610af457600080fd5b5051919050565b600060208284031215610b0d57600080fd5b815167ffffffffffffffff811681146109a157600080fd5b634e487b7160e01b600052603260045260246000fd5b600060208284031215610b4d57600080fd5b815164ffffffffff811681146109a157600080fdfef0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a2646970667358221220909497d0fac1a9ac533a689869478ef746a9875c446ca2213118480b567c71d064736f6c63430008140033",
225
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106100885760003560e01c8063a745e3df1161005b578063a745e3df1461021a578063b3c650151461022f578063b88da75914610250578063cf7a1d771461026357600080fd5b80630d8e6e2c1461008d5780634d459c90146100ae5780634f421333146101c7578063946dfcfe146101ea575b600080fd5b610095610276565b60405162ffffff90911681526020015b60405180910390f35b61016a6100bc366004610984565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152600080516020610b8383398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a0016100a5565b6101da6101d5366004610984565b610300565b60405190151581526020016100a5565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed901546040519081526020016100a5565b61022d6102283660046109da565b6103b3565b005b610237610510565b60405167ffffffffffffffff90911681526020016100a5565b61009561025e366004610aac565b610532565b61022d6102713660046109da565b610583565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156102d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102fb9190610ac5565b905090565b600080600080516020610b8383398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610388573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906103ac9190610ae2565b1192915050565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c6103d5610276565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610415573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104399190610afb565b600080516020610b638339815191528054600160401b900460ff168061046d5750805467ffffffffffffffff808416911610155b1561048b5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff191667ffffffffffffffff831617600160401b1781556104b7858561068e565b6104c083610933565b805460ff60401b1916815560405167ffffffffffffffff831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b60006102fb600080516020610b638339815191525467ffffffffffffffff1690565b6000600080516020610b83833981519152600101828154811061055757610557610b25565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b600080516020610b638339815191528054600160401b810460ff16159067ffffffffffffffff166000811580156105b75750825b905060008267ffffffffffffffff1660011480156105d45750303b155b9050811580156105e2575080155b156106005760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561062a57845460ff60401b1916600160401b1785555b610634888861068e565b61063e8787610933565b831561068457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610696610937565b600080516020610b8383398151915260006106c7600080516020610b638339815191525467ffffffffffffffff1690565b905060006106d3610276565b90508167ffffffffffffffff166001036107015760028301805462ffffff191662ffffff8316179055610753565b600283015462ffffff908116908216116107535760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b604482015260640160405180910390fd5b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015610807573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061082b9190610b3b565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf68906105019083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6100885b600080516020610b6383398151915254600160401b900460ff1661096e57604051631afcd79f60e31b815260040160405180910390fd5b565b62ffffff8116811461098157600080fd5b50565b60006020828403121561099657600080fd5b81356109a181610970565b9392505050565b80356001600160a01b03811681146109bf57600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b6000806000606084860312156109ef57600080fd5b6109f8846109a8565b9250610a06602085016109a8565b9150604084013567ffffffffffffffff80821115610a2357600080fd5b818601915086601f830112610a3757600080fd5b813581811115610a4957610a496109c4565b604051601f8201601f19908116603f01168101908382118183101715610a7157610a716109c4565b81604052828152896020848701011115610a8a57600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b600060208284031215610abe57600080fd5b5035919050565b600060208284031215610ad757600080fd5b81516109a181610970565b600060208284031215610af457600080fd5b5051919050565b600060208284031215610b0d57600080fd5b815167ffffffffffffffff811681146109a157600080fd5b634e487b7160e01b600052603260045260246000fd5b600060208284031215610b4d57600080fd5b815164ffffffffff811681146109a157600080fdfef0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a2646970667358221220909497d0fac1a9ac533a689869478ef746a9875c446ca2213118480b567c71d064736f6c63430008140033",
162
226
  "linkReferences": {
163
227
  "contracts/types/Blocknumber.sol": {
164
228
  "BlocknumberLib": [
165
229
  {
166
230
  "length": 20,
167
- "start": 945
168
- },
231
+ "start": 1069
232
+ }
233
+ ]
234
+ },
235
+ "contracts/types/Timestamp.sol": {
236
+ "TimestampLib": [
169
237
  {
170
238
  "length": 20,
171
- "start": 1760
239
+ "start": 2220
172
240
  }
173
241
  ]
174
242
  },
@@ -176,11 +244,11 @@
176
244
  "VersionLib": [
177
245
  {
178
246
  "length": 20,
179
- "start": 786
247
+ "start": 892
180
248
  },
181
249
  {
182
250
  "length": 20,
183
- "start": 1900
251
+ "start": 1172
184
252
  }
185
253
  ]
186
254
  }
@@ -190,7 +258,15 @@
190
258
  "BlocknumberLib": [
191
259
  {
192
260
  "length": 20,
193
- "start": 557
261
+ "start": 846
262
+ }
263
+ ]
264
+ },
265
+ "contracts/types/Timestamp.sol": {
266
+ "TimestampLib": [
267
+ {
268
+ "length": 20,
269
+ "start": 1997
194
270
  }
195
271
  ]
196
272
  },
@@ -198,7 +274,11 @@
198
274
  "VersionLib": [
199
275
  {
200
276
  "length": 20,
201
- "start": 697
277
+ "start": 669
278
+ },
279
+ {
280
+ "length": 20,
281
+ "start": 949
202
282
  }
203
283
  ]
204
284
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.json"
4
4
  }
@@ -0,0 +1,4 @@
1
+ {
2
+ "_format": "hh-sol-dbg-1",
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.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$__63f48016ce60796001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610152573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017691906102cb565b92915050565b600082826040516020016101919291906102e4565b60405160208183030381529060405280519060200120905092915050565b6000602082840312156101c157600080fd5b81356001600160c01b0319811681146101d957600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561020957600080fd5b82356bffffffffffffffffffffffff8116811461022557600080fd5b9150602083013567ffffffffffffffff8082111561024257600080fd5b818501915085601f83011261025657600080fd5b813581811115610268576102686101e0565b604051601f8201601f19908116603f01168101908382118183101715610290576102906101e0565b816040528281528860208487010111156102a957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000602082840312156102dd57600080fd5b5051919050565b6bffffffffffffffffffffffff8316815260006020604081840152835180604085015260005b818110156103265785810183015185820160600152820161030a565b506000606082860101526060601f19601f83011685010192505050939250505056fea2646970667358221220fd88b7db7bcbd901668cd76910655271dc1508cf5da8b73875e155645dac38ae64736f6c63430008140033",
83
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100565760003560e01c80632cf96bf91461005b57806355ee62751461008e578063578c3039146100af578063bc1b392d146100db575b600080fd5b6100766100693660046101af565b6001600160c01b03191690565b60405160ff1990911681526020015b60405180910390f35b6100a161009c3660046101af565b6100e2565b604051908152602001610085565b6100c26100bd3660046101f6565b61017c565b6040516001600160c01b03199091168152602001610085565b60006100c2565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce60796001600160c01b031985166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af4158015610152573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061017691906102cb565b92915050565b600082826040516020016101919291906102e4565b60405160208183030381529060405280519060200120905092915050565b6000602082840312156101c157600080fd5b81356001600160c01b0319811681146101d957600080fd5b9392505050565b634e487b7160e01b600052604160045260246000fd5b6000806040838503121561020957600080fd5b82356bffffffffffffffffffffffff8116811461022557600080fd5b9150602083013567ffffffffffffffff8082111561024257600080fd5b818501915085601f83011261025657600080fd5b813581811115610268576102686101e0565b604051601f8201601f19908116603f01168101908382118183101715610290576102906101e0565b816040528281528860208487010111156102a957600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000602082840312156102dd57600080fd5b5051919050565b6bffffffffffffffffffffffff8316815260006020604081840152835180604085015260005b818110156103265785810183015185820160600152820161030a565b506000606082860101526060601f19601f83011685010192505050939250505056fea2646970667358221220fd88b7db7bcbd901668cd76910655271dc1508cf5da8b73875e155645dac38ae64736f6c63430008140033",
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/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.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,18 +216,22 @@
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__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__6345ebb61e866040518263ffffffff1660e01b815260040161019d91815260200190565b602060405180830381865af41580156101ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101de9190610582565b8651610367565b6020860151604051632255341b60e11b8152600481018390529192509073__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__906344aa683690602401602060405180830381865af415801561023e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102629190610582565b61026c91906105b1565b925061027883856105c4565b9150509250929050565b60408051808201825260008082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__631488c84560848301602060405180830381865af41580156102f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031b9190610582565b8152600060209091015292915050565b60008160200151600014801561034057508151155b92915050565b600081602001518360200151148015610360575082518251145b9392505050565b60006103608383670de0b6b3a764000060008080600019858709858702925082811083820303915050806000036103b1578382816103a7576103a76105d7565b0492505050610360565b8084116103fc5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b60006040828403121561047657600080fd5b6040516040810181811067ffffffffffffffff821117156104a757634e487b7160e01b600052604160045260246000fd5b604052823581526020928301359281019290925250919050565b600080606083850312156104d457600080fd5b6104de8484610464565b946040939093013593505050565b6000602082840312156104fe57600080fd5b813560ff8116811461036057600080fd5b60006040828403121561052157600080fd5b6103608383610464565b6000806080838503121561053e57600080fd5b6105488484610464565b91506105578460408501610464565b90509250929050565b6000806040838503121561057357600080fd5b50508035926020909101359150565b60006020828403121561059457600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156103405761034061059b565b818103818111156103405761034061059b565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220efa22e3ef90914e0773089b80c6de64dfc98d64ba6664b3725902d969eeb74ff64736f6c63430008140033",
220
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806304baf60c146100715780632bd182d31461009e5780635faa955b146100df5780638de0a4c2146100f25780639524886814610115578063c7010dfa14610128575b600080fd5b61008461007f3660046104c1565b61015c565b604080519283526020830191909152015b60405180910390f35b604080518082018252600080825260209182018190528251808401909352808352908201525b60408051825181526020928301519281019290925201610095565b6100c46100ed3660046104ec565b610282565b61010561010036600461050f565b61032b565b6040519015158152602001610095565b61010561012336600461052b565b610346565b6100c4610136366004610560565b604080518082018252600080825260209182015281518083019092529281529182015290565b60008060006101e573__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__6345ebb61e866040518263ffffffff1660e01b815260040161019d91815260200190565b602060405180830381865af41580156101ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101de9190610582565b8651610367565b6020860151604051632255341b60e11b8152600481018390529192509073__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__906344aa683690602401602060405180830381865af415801561023e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906102629190610582565b61026c91906105b1565b925061027883856105c4565b9150509250929050565b60408051808201825260008082526020820152815180830192839052631488c84560e01b90925260ff831660448301526001196064830152908073__$fa7f345063a1bf0cf2bd14a32ccc1b6018$__631488c84560848301602060405180830381865af41580156102f7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061031b9190610582565b8152600060209091015292915050565b60008160200151600014801561034057508151155b92915050565b600081602001518360200151148015610360575082518251145b9392505050565b60006103608383670de0b6b3a764000060008080600019858709858702925082811083820303915050806000036103b1578382816103a7576103a76105d7565b0492505050610360565b8084116103fc5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640160405180910390fd5b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b60006040828403121561047657600080fd5b6040516040810181811067ffffffffffffffff821117156104a757634e487b7160e01b600052604160045260246000fd5b604052823581526020928301359281019290925250919050565b600080606083850312156104d457600080fd5b6104de8484610464565b946040939093013593505050565b6000602082840312156104fe57600080fd5b813560ff8116811461036057600080fd5b60006040828403121561052157600080fd5b6103608383610464565b6000806080838503121561053e57600080fd5b6105488484610464565b91506105578460408501610464565b90509250929050565b6000806040838503121561057357600080fd5b50508035926020909101359150565b60006020828403121561059457600080fd5b5051919050565b634e487b7160e01b600052601160045260246000fd5b808201808211156103405761034061059b565b818103818111156103405761034061059b565b634e487b7160e01b600052601260045260246000fdfea2646970667358221220efa22e3ef90914e0773089b80c6de64dfc98d64ba6664b3725902d969eeb74ff64736f6c63430008140033",
190
221
  "linkReferences": {
191
222
  "contracts/types/UFixed.sol": {
192
223
  "UFixedMathLib": [
193
224
  {
194
225
  "length": 20,
195
- "start": 446
226
+ "start": 416
227
+ },
228
+ {
229
+ "length": 20,
230
+ "start": 574
196
231
  },
197
232
  {
198
233
  "length": 20,
199
- "start": 604
234
+ "start": 760
200
235
  }
201
236
  ]
202
237
  }
@@ -206,11 +241,15 @@
206
241
  "UFixedMathLib": [
207
242
  {
208
243
  "length": 20,
209
- "start": 388
244
+ "start": 358
245
+ },
246
+ {
247
+ "length": 20,
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/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.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": "0x61025b61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630f94cc501461007157806329e9b22614610093578063a4dc7d86146100ad578063d92bb60d146100dc578063da3fe412146100ea578063f48016ce146100f2575b600080fd5b6100806001600160f81b031981565b6040519081526020015b60405180910390f35b61009b60f881565b60405160ff909116815260200161008a565b6100c06100bb36600461017b565b610105565b6040805160ff909316835260ff1990911660208301520161008a565b6100806001600160f81b0381565b61009b61013b565b610080610100366004610194565b61014b565b60f881811c90600090839061011c906101006101f0565b60ff1660ff60f81b6001600160f81b031916198216901b915050915091565b61014860f86101006101f0565b81565b600060ff8316600883901c8261016f826001600160f81b031960f889901b16610212565b93505050505b92915050565b60006020828403121561018d57600080fd5b5035919050565b600080604083850312156101a757600080fd5b823560ff811681146101b857600080fd5b9150602083013560ff19811681146101cf57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561020b5761020b6101da565b5092915050565b80820180821115610175576101756101da56fea2646970667358221220636cf105c14b7b7756037654c56c23d27b2505aca06fb3b5b26063142478fda064736f6c63430008140033",
108
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c80630f94cc501461007157806329e9b22614610093578063a4dc7d86146100ad578063d92bb60d146100dc578063da3fe412146100ea578063f48016ce146100f2575b600080fd5b6100806001600160f81b031981565b6040519081526020015b60405180910390f35b61009b60f881565b60405160ff909116815260200161008a565b6100c06100bb36600461017b565b610105565b6040805160ff909316835260ff1990911660208301520161008a565b6100806001600160f81b0381565b61009b61013b565b610080610100366004610194565b61014b565b60f881811c90600090839061011c906101006101f0565b60ff1660ff60f81b6001600160f81b031916198216901b915050915091565b61014860f86101006101f0565b81565b600060ff8316600883901c8261016f826001600160f81b031960f889901b16610212565b93505050505b92915050565b60006020828403121561018d57600080fd5b5035919050565b600080604083850312156101a757600080fd5b823560ff811681146101b857600080fd5b9150602083013560ff19811681146101cf57600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff82811682821603908082111561020b5761020b6101da565b5092915050565b80820180821115610175576101756101da56fea2646970667358221220636cf105c14b7b7756037654c56c23d27b2505aca06fb3b5b26063142478fda064736f6c63430008140033",
121
+ "bytecode": "0x61027361003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe73000000000000000000000000000000000000000030146080604052600436106100875760003560e01c80639601d31e116100655780639601d31e146100ee578063d92bb60d14610102578063da3fe41214610110578063f48016ce1461011857600080fd5b80630f94cc501461008c57806329e9b226146100ae578063389e7d68146100c8575b600080fd5b61009b6001600160f81b031981565b6040519081526020015b60405180910390f35b6100b660f881565b60405160ff90911681526020016100a5565b6100db6100d6366004610193565b61012b565b60405160ff1990911681526020016100a5565b6100b66100fc366004610193565b60f81c90565b61009b6001600160f81b0381565b6100b6610153565b61009b6101263660046101ac565b610163565b60008161013b60f8610100610208565b6001600160f81b039190911660ff9091161b92915050565b61016060f8610100610208565b81565b600060ff8316600883901c82610187826001600160f81b031960f889901b1661022a565b93505050505b92915050565b6000602082840312156101a557600080fd5b5035919050565b600080604083850312156101bf57600080fd5b823560ff811681146101d057600080fd5b9150602083013560ff19811681146101e757600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff828116828216039080821115610223576102236101f2565b5092915050565b8082018082111561018d5761018d6101f256fea2646970667358221220fc2c078a79039b851ed1a97b716c4f273efc929a80af74af156e165fca4066db64736f6c63430008140033",
122
+ "deployedBytecode": "0x73000000000000000000000000000000000000000030146080604052600436106100875760003560e01c80639601d31e116100655780639601d31e146100ee578063d92bb60d14610102578063da3fe41214610110578063f48016ce1461011857600080fd5b80630f94cc501461008c57806329e9b226146100ae578063389e7d68146100c8575b600080fd5b61009b6001600160f81b031981565b6040519081526020015b60405180910390f35b6100b660f881565b60405160ff90911681526020016100a5565b6100db6100d6366004610193565b61012b565b60405160ff1990911681526020016100a5565b6100b66100fc366004610193565b60f81c90565b61009b6001600160f81b0381565b6100b6610153565b61009b6101263660046101ac565b610163565b60008161013b60f8610100610208565b6001600160f81b039190911660ff9091161b92915050565b61016060f8610100610208565b81565b600060ff8316600883901c82610187826001600160f81b031960f889901b1661022a565b93505050505b92915050565b6000602082840312156101a557600080fd5b5035919050565b600080604083850312156101bf57600080fd5b823560ff811681146101d057600080fd5b9150602083013560ff19811681146101e757600080fd5b809150509250929050565b634e487b7160e01b600052601160045260246000fd5b61ffff828116828216039080821115610223576102236101f2565b5092915050565b8082018082111561018d5761018d6101f256fea2646970667358221220fc2c078a79039b851ed1a97b716c4f273efc929a80af74af156e165fca4066db64736f6c63430008140033",
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/3e18b257c0aaa6e0f6affdec1f5c116c.json"
3
+ "buildInfo": "../../../build-info/513944a18d93e005314a3ed93f91d5cd.json"
4
4
  }
@@ -128,8 +128,8 @@
128
128
  "type": "function"
129
129
  }
130
130
  ],
131
- "bytecode": "0x6102fa61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220cf5d0a282ae2165b8fbf50bff1e6d4c800b36981c6d3e24b3061b52b7444862464736f6c63430008140033",
132
- "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220cf5d0a282ae2165b8fbf50bff1e6d4c800b36981c6d3e24b3061b52b7444862464736f6c63430008140033",
131
+ "bytecode": "0x6102fa61003a600b82828239805160001a60731461002d57634e487b7160e01b600052600060045260246000fd5b30600052607381538281f3fe730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220c1854ba353d599ea92c2bc434c766302432128fb99662446139943367f71224164736f6c63430008140033",
132
+ "deployedBytecode": "0x730000000000000000000000000000000000000000301460806040526004361061006c5760003560e01c806308dc895e1461007157806330b8415f1461009f5780633889a4c8146100cb57806340a8cd9e146100ec57806352694ee814610122578063c4cade9d1461013d575b600080fd5b61008261007f366004610220565b90565b6040516001600160601b0390911681526020015b60405180910390f35b6100bb6100ad366004610220565b6001600160601b0316151590565b6040519015158152602001610096565b6100de6100d936600461023b565b610161565b604051908152602001610096565b61010f6100fa366004610220565b60081b6cffffffffffffffffffffffff001690565b60405160ff199091168152602001610096565b6100bb610130366004610220565b6001600160601b03161590565b6100bb61014b366004610278565b60006001600160601b03808416908316146101fd565b600073__$c8f743efd2b4f0c9300f2558c784479d3e$__63f48016ce83600886901b6cffffffffffffffffffffffff00166040516001600160e01b031960e085901b16815260ff909216600483015260ff19166024820152604401602060405180830381865af41580156101d9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101fd91906102ab565b9392505050565b80356001600160601b038116811461021b57600080fd5b919050565b60006020828403121561023257600080fd5b6101fd82610204565b6000806040838503121561024e57600080fd5b61025783610204565b9150602083013560ff8116811461026d57600080fd5b809150509250929050565b6000806040838503121561028b57600080fd5b61029483610204565b91506102a260208401610204565b90509250929050565b6000602082840312156102bd57600080fd5b505191905056fea2646970667358221220c1854ba353d599ea92c2bc434c766302432128fb99662446139943367f71224164736f6c63430008140033",
133
133
  "linkReferences": {
134
134
  "contracts/types/Key32.sol": {
135
135
  "Key32Lib": [