@etherisc/gif-next 0.0.2-efef0ea-320 → 0.0.2-f034782-101

Sign up to get free protection for your applications and to get access to all the features.
Files changed (485) hide show
  1. package/README.md +283 -27
  2. package/artifacts/contracts/components/Component.sol/Component.dbg.json +4 -0
  3. package/artifacts/contracts/components/Component.sol/Component.json +832 -0
  4. package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +1 -1
  5. package/artifacts/contracts/components/Distribution.sol/Distribution.json +1046 -132
  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} +279 -226
  8. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  9. package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +584 -55
  10. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  11. package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +598 -131
  12. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  13. package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +430 -70
  14. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
  15. package/artifacts/contracts/components/Pool.sol/Pool.json +1012 -234
  16. package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
  17. package/artifacts/contracts/components/Product.sol/Product.json +830 -117
  18. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
  19. package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
  20. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
  21. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +778 -0
  22. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +4 -0
  23. package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +190 -0
  24. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  25. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +1410 -1111
  26. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  27. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +567 -0
  28. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  29. package/artifacts/contracts/instance/Instance.sol/Instance.json +2042 -1245
  30. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +1311 -0
  32. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  33. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1279 -0
  34. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  35. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1033 -0
  36. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  37. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +701 -0
  38. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  39. package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +256 -0
  40. package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +4 -0
  41. package/artifacts/contracts/instance/base/{InstanceBase.sol/InstanceBase.json → ComponentService.sol/ComponentService.json} +293 -204
  42. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  43. package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.json +27 -158
  44. package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  45. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  46. package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +67 -245
  47. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  48. package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +36 -11
  49. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
  50. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +237 -0
  51. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
  52. package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
  53. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  54. package/artifacts/contracts/instance/module/{access/IAccess.sol/IAccess.json → IComponents.sol/IComponents.json} +2 -2
  55. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  56. package/artifacts/contracts/instance/module/{distribution/IDistribution.sol → IDistribution.sol}/IDistribution.json +1 -1
  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/instance/service/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  66. package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +968 -0
  67. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  68. package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +665 -0
  69. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +4 -0
  70. package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +1093 -0
  71. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  72. package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +661 -0
  73. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +4 -0
  74. package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +754 -0
  75. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  76. package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +637 -0
  77. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +1 -1
  78. package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +1527 -302
  79. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  80. package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +805 -0
  81. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  82. package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +556 -0
  83. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +4 -0
  84. package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +630 -0
  85. package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +4 -0
  86. package/artifacts/contracts/instance/service/{IComponentOwnerService.sol/IComponentOwnerService.json → IClaimService.sol/IClaimService.json} +213 -209
  87. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  88. package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +793 -146
  89. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  90. package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +540 -0
  91. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
  92. package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +168 -221
  93. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
  94. package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +96 -383
  95. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +4 -0
  96. package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +1021 -0
  97. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  98. package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +689 -0
  99. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
  100. package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +426 -232
  101. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  102. package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +657 -0
  103. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
  104. package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +320 -488
  105. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  106. package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +649 -0
  107. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  108. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +199 -12
  109. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  110. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +485 -34
  111. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
  112. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +890 -0
  113. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
  114. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +52 -0
  115. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  116. package/artifacts/contracts/registry/Registry.sol/Registry.json +487 -101
  117. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +4 -0
  118. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +285 -0
  119. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
  120. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1177 -0
  121. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  122. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +670 -0
  123. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
  124. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +547 -0
  125. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
  126. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +498 -0
  127. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +4 -0
  128. package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.json +107 -0
  129. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  130. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
  131. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  132. package/artifacts/contracts/{components/IBaseComponent.sol/IBaseComponent.json → shared/INftOwnable.sol/INftOwnable.json} +38 -74
  133. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  134. package/artifacts/contracts/{instance/module/component/IComponent.sol/IComponentModule.json → shared/IPolicyHolder.sol/IPolicyHolder.json} +69 -57
  135. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  136. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +100 -33
  137. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  138. package/artifacts/contracts/{experiment/inheritance/IB.sol/IB.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +18 -20
  139. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  140. package/artifacts/contracts/{instance/base → shared}/IService.sol/IService.json +105 -177
  141. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  142. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +2 -152
  143. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  144. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +251 -0
  145. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  146. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +248 -0
  147. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  148. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +582 -0
  149. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  150. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +256 -25
  151. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  152. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +84 -0
  153. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  154. package/artifacts/contracts/{instance/base/ServiceBase.sol/ServiceBase.json → shared/Service.sol/Service.json} +207 -169
  155. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  156. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +96 -0
  157. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  158. package/artifacts/contracts/shared/{Proxy.sol/ProxyWithProxyAdminGetter.json → UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json} +4 -4
  159. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  160. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +4 -177
  161. package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
  162. package/artifacts/contracts/test/TestFee.sol/TestFee.json +4 -4
  163. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
  164. package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +272 -26
  165. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
  166. package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +14 -14
  167. package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
  168. package/artifacts/contracts/test/TestService.sol/TestService.json +241 -186
  169. package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
  170. package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +91 -53
  171. package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
  172. package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
  173. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
  174. package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +13 -202
  175. package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
  176. package/artifacts/contracts/test/Usdc.sol/USDC.json +91 -53
  177. package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  178. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  179. package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -2
  180. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
  181. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  182. package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +100 -0
  183. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  184. package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +104 -0
  185. package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
  186. package/artifacts/contracts/types/Fee.sol/FeeLib.json +4 -4
  187. package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
  188. package/artifacts/contracts/types/Key32.sol/Key32Lib.json +31 -17
  189. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
  190. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +17 -4
  191. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  192. package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +26 -3
  193. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +4 -0
  194. package/artifacts/contracts/types/NumberId.sol/NumberIdLib.json +100 -0
  195. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  196. package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
  197. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  198. package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +100 -0
  199. package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +4 -0
  200. package/artifacts/contracts/types/Referral.sol/ReferralLib.json +142 -0
  201. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +1 -1
  202. package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +2 -2
  203. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
  204. package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +134 -8
  205. package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
  206. package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -0
  207. package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
  208. package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
  209. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
  210. package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +38 -7
  211. package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +4 -0
  212. package/artifacts/contracts/{experiment/types/TypeB.sol/TypeBLib.json → types/UFixed.sol/MathLib.json} +4 -4
  213. package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +4 -0
  214. package/artifacts/contracts/types/UFixed.sol/{UFixedMathLib.json → UFixedLib.json} +3 -3
  215. package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
  216. package/artifacts/contracts/types/Version.sol/VersionLib.json +2 -2
  217. package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
  218. package/artifacts/contracts/types/Version.sol/VersionPartLib.json +22 -3
  219. package/contracts/components/Component.sol +251 -0
  220. package/contracts/components/Distribution.sol +210 -62
  221. package/contracts/components/IComponent.sol +74 -0
  222. package/contracts/components/IDistributionComponent.sol +43 -19
  223. package/contracts/components/IPoolComponent.sol +89 -47
  224. package/contracts/components/IProductComponent.sol +13 -11
  225. package/contracts/components/Pool.sol +220 -156
  226. package/contracts/components/Product.sol +137 -71
  227. package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +13 -0
  228. package/contracts/instance/BundleManager.sol +127 -0
  229. package/contracts/instance/Cloneable.sol +51 -0
  230. package/contracts/instance/IInstance.sol +87 -42
  231. package/contracts/instance/IInstanceService.sol +72 -0
  232. package/contracts/instance/Instance.sol +311 -58
  233. package/contracts/instance/InstanceAccessManager.sol +522 -0
  234. package/contracts/instance/InstanceReader.sol +290 -0
  235. package/contracts/instance/InstanceService.sol +495 -0
  236. package/contracts/instance/InstanceServiceManager.sol +54 -0
  237. package/contracts/instance/ObjectManager.sol +82 -0
  238. package/contracts/instance/base/ComponentService.sol +134 -0
  239. package/contracts/instance/base/IKeyValueStore.sol +13 -14
  240. package/contracts/instance/base/ILifecycle.sol +3 -3
  241. package/contracts/instance/base/KeyValueStore.sol +52 -38
  242. package/contracts/instance/base/Lifecycle.sol +12 -3
  243. package/contracts/instance/module/IAccess.sol +54 -0
  244. package/contracts/instance/module/IBundle.sol +21 -0
  245. package/contracts/instance/module/IComponents.sol +35 -0
  246. package/contracts/instance/module/IDistribution.sol +41 -0
  247. package/contracts/instance/module/IPolicy.sol +72 -0
  248. package/contracts/instance/module/IRisk.sol +11 -0
  249. package/contracts/instance/module/ISetup.sol +33 -0
  250. package/contracts/instance/module/ITreasury.sol +23 -0
  251. package/contracts/instance/service/ApplicationService.sol +350 -0
  252. package/contracts/instance/service/ApplicationServiceManager.sol +35 -0
  253. package/contracts/instance/service/BundleService.sol +336 -0
  254. package/contracts/instance/service/BundleServiceManager.sol +51 -0
  255. package/contracts/instance/service/ClaimService.sol +151 -0
  256. package/contracts/instance/service/ClaimServiceManager.sol +35 -0
  257. package/contracts/instance/service/DistributionService.sol +434 -26
  258. package/contracts/instance/service/DistributionServiceManager.sol +51 -0
  259. package/contracts/instance/service/IApplicationService.sol +82 -0
  260. package/contracts/instance/service/IBundleService.sol +62 -0
  261. package/contracts/instance/service/IClaimService.sol +61 -0
  262. package/contracts/instance/service/IDistributionService.sol +87 -1
  263. package/contracts/instance/service/IPolicyService.sol +72 -0
  264. package/contracts/instance/service/IPoolService.sol +22 -24
  265. package/contracts/instance/service/IProductService.sol +9 -76
  266. package/contracts/instance/service/PolicyService.sol +403 -0
  267. package/contracts/instance/service/PolicyServiceManager.sol +54 -0
  268. package/contracts/instance/service/PoolService.sol +182 -111
  269. package/contracts/instance/service/PoolServiceManager.sol +51 -0
  270. package/contracts/instance/service/ProductService.sol +166 -434
  271. package/contracts/instance/service/ProductServiceManager.sol +54 -0
  272. package/contracts/registry/ChainNft.sol +87 -36
  273. package/contracts/registry/IRegistry.sol +68 -24
  274. package/contracts/registry/IRegistryService.sol +67 -0
  275. package/contracts/registry/ITransferInterceptor.sol +7 -0
  276. package/contracts/registry/Registry.sol +372 -286
  277. package/contracts/registry/RegistryAccessManager.sol +216 -0
  278. package/contracts/registry/RegistryService.sol +283 -0
  279. package/contracts/registry/RegistryServiceManager.sol +62 -0
  280. package/contracts/registry/ReleaseManager.sol +322 -0
  281. package/contracts/registry/TokenRegistry.sol +116 -0
  282. package/contracts/shared/ContractDeployerLib.sol +72 -0
  283. package/contracts/shared/ERC165.sol +14 -8
  284. package/contracts/shared/INftOwnable.sol +23 -0
  285. package/contracts/shared/IPolicyHolder.sol +26 -0
  286. package/contracts/shared/IRegisterable.sol +10 -19
  287. package/contracts/shared/IRegistryLinked.sol +12 -0
  288. package/contracts/shared/IService.sol +18 -0
  289. package/contracts/shared/IVersionable.sol +37 -49
  290. package/contracts/shared/NftOwnable.sol +120 -0
  291. package/contracts/shared/PolicyHolder.sol +81 -0
  292. package/contracts/shared/ProxyManager.sol +169 -0
  293. package/contracts/shared/Registerable.sol +54 -66
  294. package/contracts/shared/RegistryLinked.sol +48 -0
  295. package/contracts/shared/Service.sol +58 -0
  296. package/contracts/shared/TokenHandler.sol +33 -0
  297. package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
  298. package/contracts/shared/Versionable.sol +37 -77
  299. package/contracts/test/TestFee.sol +2 -2
  300. package/contracts/test/TestRegisterable.sol +5 -6
  301. package/contracts/test/TestRoleId.sol +1 -1
  302. package/contracts/test/TestService.sol +7 -14
  303. package/contracts/types/Blocknumber.sol +1 -0
  304. package/contracts/types/ClaimId.sol +52 -0
  305. package/contracts/types/DistributorType.sol +55 -0
  306. package/contracts/types/Fee.sol +4 -3
  307. package/contracts/types/Key32.sol +8 -3
  308. package/contracts/types/NftId.sol +8 -0
  309. package/contracts/types/NftIdSet.sol +26 -24
  310. package/contracts/types/NumberId.sol +52 -0
  311. package/contracts/types/ObjectType.sol +40 -14
  312. package/contracts/types/PayoutId.sol +54 -0
  313. package/contracts/types/Referral.sol +89 -0
  314. package/contracts/types/RoleId.sol +68 -9
  315. package/contracts/types/Seconds.sol +54 -0
  316. package/contracts/types/StateId.sol +6 -1
  317. package/contracts/types/Timestamp.sol +17 -13
  318. package/contracts/types/UFixed.sol +129 -12
  319. package/contracts/types/Version.sol +6 -1
  320. package/package.json +6 -5
  321. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
  322. package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -174
  323. package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
  324. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  325. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  326. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  327. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  328. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  329. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  330. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  331. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  332. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  333. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  334. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  335. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  336. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  337. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  338. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  339. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
  340. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  341. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  342. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  343. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
  344. package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
  345. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
  346. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
  347. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
  348. package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
  349. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
  350. package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
  351. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
  352. package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
  353. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  354. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  355. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  356. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
  357. package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
  358. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
  359. package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.json +0 -387
  360. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
  361. package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
  362. package/artifacts/contracts/instance/base/IService.sol/IService.dbg.json +0 -4
  363. package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.dbg.json +0 -4
  364. package/artifacts/contracts/instance/base/ModuleBase.sol/ModuleBase.dbg.json +0 -4
  365. package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +0 -4
  366. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
  367. package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
  368. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
  369. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  370. package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
  371. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
  372. package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -297
  373. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
  374. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
  375. package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -297
  376. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  377. package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -117
  378. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
  379. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
  380. package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  381. package/artifacts/contracts/instance/module/distribution/DistributionModule.sol/DistributionModule.dbg.json +0 -4
  382. package/artifacts/contracts/instance/module/distribution/DistributionModule.sol/DistributionModule.json +0 -10
  383. package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistribution.dbg.json +0 -4
  384. package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistributionModule.dbg.json +0 -4
  385. package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistributionModule.json +0 -10
  386. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  387. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  388. package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -284
  389. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  390. package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -284
  391. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  392. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
  393. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  394. package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -144
  395. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  396. package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -144
  397. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
  398. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
  399. package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -113
  400. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
  401. package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -131
  402. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
  403. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
  404. package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -511
  405. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
  406. package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
  407. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
  408. package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -511
  409. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
  410. package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -618
  411. package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
  412. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  413. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
  414. package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.json +0 -24
  415. package/artifacts/contracts/registry/RegistryUpgradeable.sol/RegistryUpgradeable.dbg.json +0 -4
  416. package/artifacts/contracts/registry/RegistryUpgradeable.sol/RegistryUpgradeable.json +0 -724
  417. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
  418. package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
  419. package/artifacts/contracts/shared/Proxy.sol/ProxyDeployer.dbg.json +0 -4
  420. package/artifacts/contracts/shared/Proxy.sol/ProxyDeployer.json +0 -248
  421. package/artifacts/contracts/shared/Proxy.sol/ProxyWithProxyAdminGetter.dbg.json +0 -4
  422. package/artifacts/contracts/shared/VersionableUpgradeable.sol/VersionableUpgradeable.dbg.json +0 -4
  423. package/artifacts/contracts/shared/VersionableUpgradeable.sol/VersionableUpgradeable.json +0 -228
  424. package/artifacts/contracts/test/TestDistribution.sol/TestDistribution.dbg.json +0 -4
  425. package/artifacts/contracts/test/TestDistribution.sol/TestDistribution.json +0 -405
  426. package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
  427. package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -578
  428. package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
  429. package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -575
  430. package/artifacts/contracts/types/ReferralId.sol/ReferralIdLib.dbg.json +0 -4
  431. package/artifacts/contracts/types/ReferralId.sol/ReferralIdLib.json +0 -99
  432. package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
  433. package/contracts/components/BaseComponent.sol +0 -94
  434. package/contracts/components/IBaseComponent.sol +0 -19
  435. package/contracts/experiment/errors/Require.sol +0 -38
  436. package/contracts/experiment/errors/Revert.sol +0 -44
  437. package/contracts/experiment/inheritance/A.sol +0 -53
  438. package/contracts/experiment/inheritance/B.sol +0 -28
  439. package/contracts/experiment/inheritance/C.sol +0 -34
  440. package/contracts/experiment/inheritance/IA.sol +0 -13
  441. package/contracts/experiment/inheritance/IB.sol +0 -10
  442. package/contracts/experiment/inheritance/IC.sol +0 -12
  443. package/contracts/experiment/statemachine/Dummy.sol +0 -27
  444. package/contracts/experiment/statemachine/ISM.sol +0 -25
  445. package/contracts/experiment/statemachine/README.md +0 -112
  446. package/contracts/experiment/statemachine/SM.sol +0 -57
  447. package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
  448. package/contracts/experiment/types/TypeA.sol +0 -47
  449. package/contracts/experiment/types/TypeB.sol +0 -29
  450. package/contracts/instance/IInstanceLinked.sol +0 -8
  451. package/contracts/instance/base/ComponentServiceBase.sol +0 -42
  452. package/contracts/instance/base/IInstanceBase.sol +0 -22
  453. package/contracts/instance/base/IService.sol +0 -15
  454. package/contracts/instance/base/InstanceBase.sol +0 -91
  455. package/contracts/instance/base/ModuleBase.sol +0 -57
  456. package/contracts/instance/base/ServiceBase.sol +0 -37
  457. package/contracts/instance/module/access/Access.sol +0 -149
  458. package/contracts/instance/module/access/IAccess.sol +0 -53
  459. package/contracts/instance/module/bundle/BundleModule.sol +0 -134
  460. package/contracts/instance/module/bundle/IBundle.sol +0 -53
  461. package/contracts/instance/module/component/ComponentModule.sol +0 -70
  462. package/contracts/instance/module/component/IComponent.sol +0 -28
  463. package/contracts/instance/module/distribution/DistributionModule.sol +0 -17
  464. package/contracts/instance/module/distribution/IDistribution.sol +0 -10
  465. package/contracts/instance/module/policy/IPolicy.sol +0 -63
  466. package/contracts/instance/module/policy/PolicyModule.sol +0 -91
  467. package/contracts/instance/module/pool/IPoolModule.sol +0 -40
  468. package/contracts/instance/module/pool/PoolModule.sol +0 -90
  469. package/contracts/instance/module/risk/IRisk.sol +0 -26
  470. package/contracts/instance/module/risk/RiskModule.sol +0 -62
  471. package/contracts/instance/module/treasury/ITreasury.sol +0 -82
  472. package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
  473. package/contracts/instance/module/treasury/TreasuryModule.sol +0 -138
  474. package/contracts/instance/service/ComponentOwnerService.sol +0 -157
  475. package/contracts/instance/service/IComponentOwnerService.sol +0 -22
  476. package/contracts/registry/IChainNft.sol +0 -21
  477. package/contracts/registry/IRegistryLinked.sol +0 -8
  478. package/contracts/registry/RegistryUpgradeable.sol +0 -488
  479. package/contracts/shared/IOwnable.sol +0 -6
  480. package/contracts/shared/Proxy.sol +0 -94
  481. package/contracts/shared/VersionableUpgradeable.sol +0 -136
  482. package/contracts/test/TestDistribution.sol +0 -21
  483. package/contracts/test/TestPool.sol +0 -25
  484. package/contracts/test/TestProduct.sol +0 -72
  485. package/contracts/types/ReferralId.sol +0 -48
@@ -1,618 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "ComponentOwnerService",
4
- "sourceName": "contracts/instance/service/ComponentOwnerService.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "address",
10
- "name": "registry",
11
- "type": "address"
12
- },
13
- {
14
- "internalType": "NftId",
15
- "name": "registryNftId",
16
- "type": "uint96"
17
- }
18
- ],
19
- "stateMutability": "nonpayable",
20
- "type": "constructor"
21
- },
22
- {
23
- "inputs": [],
24
- "name": "InvalidInitialization",
25
- "type": "error"
26
- },
27
- {
28
- "inputs": [],
29
- "name": "NotInitializing",
30
- "type": "error"
31
- },
32
- {
33
- "anonymous": false,
34
- "inputs": [
35
- {
36
- "indexed": false,
37
- "internalType": "uint64",
38
- "name": "version",
39
- "type": "uint64"
40
- }
41
- ],
42
- "name": "Initialized",
43
- "type": "event"
44
- },
45
- {
46
- "anonymous": false,
47
- "inputs": [
48
- {
49
- "indexed": false,
50
- "internalType": "Version",
51
- "name": "version",
52
- "type": "uint24"
53
- },
54
- {
55
- "indexed": false,
56
- "internalType": "address",
57
- "name": "implementation",
58
- "type": "address"
59
- },
60
- {
61
- "indexed": false,
62
- "internalType": "address",
63
- "name": "activatedBy",
64
- "type": "address"
65
- }
66
- ],
67
- "name": "LogVersionableActivated",
68
- "type": "event"
69
- },
70
- {
71
- "inputs": [],
72
- "name": "NAME",
73
- "outputs": [
74
- {
75
- "internalType": "string",
76
- "name": "",
77
- "type": "string"
78
- }
79
- ],
80
- "stateMutability": "view",
81
- "type": "function"
82
- },
83
- {
84
- "inputs": [
85
- {
86
- "internalType": "address",
87
- "name": "implementation",
88
- "type": "address"
89
- },
90
- {
91
- "internalType": "address",
92
- "name": "activatedBy",
93
- "type": "address"
94
- },
95
- {
96
- "internalType": "bytes",
97
- "name": "activatinData",
98
- "type": "bytes"
99
- }
100
- ],
101
- "name": "activate",
102
- "outputs": [],
103
- "stateMutability": "nonpayable",
104
- "type": "function"
105
- },
106
- {
107
- "inputs": [],
108
- "name": "getData",
109
- "outputs": [
110
- {
111
- "internalType": "bytes",
112
- "name": "data",
113
- "type": "bytes"
114
- }
115
- ],
116
- "stateMutability": "view",
117
- "type": "function"
118
- },
119
- {
120
- "inputs": [],
121
- "name": "getInitializedVersion",
122
- "outputs": [
123
- {
124
- "internalType": "uint64",
125
- "name": "",
126
- "type": "uint64"
127
- }
128
- ],
129
- "stateMutability": "view",
130
- "type": "function"
131
- },
132
- {
133
- "inputs": [],
134
- "name": "getMajorVersion",
135
- "outputs": [
136
- {
137
- "internalType": "VersionPart",
138
- "name": "majorVersion",
139
- "type": "uint8"
140
- }
141
- ],
142
- "stateMutability": "view",
143
- "type": "function"
144
- },
145
- {
146
- "inputs": [],
147
- "name": "getName",
148
- "outputs": [
149
- {
150
- "internalType": "string",
151
- "name": "name",
152
- "type": "string"
153
- }
154
- ],
155
- "stateMutability": "pure",
156
- "type": "function"
157
- },
158
- {
159
- "inputs": [],
160
- "name": "getNftId",
161
- "outputs": [
162
- {
163
- "internalType": "NftId",
164
- "name": "nftId",
165
- "type": "uint96"
166
- }
167
- ],
168
- "stateMutability": "view",
169
- "type": "function"
170
- },
171
- {
172
- "inputs": [],
173
- "name": "getOwner",
174
- "outputs": [
175
- {
176
- "internalType": "address",
177
- "name": "owner",
178
- "type": "address"
179
- }
180
- ],
181
- "stateMutability": "view",
182
- "type": "function"
183
- },
184
- {
185
- "inputs": [],
186
- "name": "getParentNftId",
187
- "outputs": [
188
- {
189
- "internalType": "NftId",
190
- "name": "nftId",
191
- "type": "uint96"
192
- }
193
- ],
194
- "stateMutability": "view",
195
- "type": "function"
196
- },
197
- {
198
- "inputs": [],
199
- "name": "getRegistry",
200
- "outputs": [
201
- {
202
- "internalType": "contract IRegistry",
203
- "name": "registry",
204
- "type": "address"
205
- }
206
- ],
207
- "stateMutability": "view",
208
- "type": "function"
209
- },
210
- {
211
- "inputs": [
212
- {
213
- "internalType": "ObjectType",
214
- "name": "cType",
215
- "type": "uint8"
216
- }
217
- ],
218
- "name": "getRoleForType",
219
- "outputs": [
220
- {
221
- "internalType": "RoleId",
222
- "name": "role",
223
- "type": "bytes8"
224
- }
225
- ],
226
- "stateMutability": "pure",
227
- "type": "function"
228
- },
229
- {
230
- "inputs": [],
231
- "name": "getType",
232
- "outputs": [
233
- {
234
- "internalType": "ObjectType",
235
- "name": "",
236
- "type": "uint8"
237
- }
238
- ],
239
- "stateMutability": "pure",
240
- "type": "function"
241
- },
242
- {
243
- "inputs": [],
244
- "name": "getVersion",
245
- "outputs": [
246
- {
247
- "internalType": "Version",
248
- "name": "",
249
- "type": "uint24"
250
- }
251
- ],
252
- "stateMutability": "pure",
253
- "type": "function"
254
- },
255
- {
256
- "inputs": [
257
- {
258
- "internalType": "uint256",
259
- "name": "idx",
260
- "type": "uint256"
261
- }
262
- ],
263
- "name": "getVersion",
264
- "outputs": [
265
- {
266
- "internalType": "Version",
267
- "name": "",
268
- "type": "uint24"
269
- }
270
- ],
271
- "stateMutability": "view",
272
- "type": "function"
273
- },
274
- {
275
- "inputs": [],
276
- "name": "getVersionCount",
277
- "outputs": [
278
- {
279
- "internalType": "uint256",
280
- "name": "",
281
- "type": "uint256"
282
- }
283
- ],
284
- "stateMutability": "view",
285
- "type": "function"
286
- },
287
- {
288
- "inputs": [
289
- {
290
- "internalType": "Version",
291
- "name": "_version",
292
- "type": "uint24"
293
- }
294
- ],
295
- "name": "getVersionInfo",
296
- "outputs": [
297
- {
298
- "components": [
299
- {
300
- "internalType": "Version",
301
- "name": "version",
302
- "type": "uint24"
303
- },
304
- {
305
- "internalType": "address",
306
- "name": "implementation",
307
- "type": "address"
308
- },
309
- {
310
- "internalType": "address",
311
- "name": "activatedBy",
312
- "type": "address"
313
- },
314
- {
315
- "internalType": "Timestamp",
316
- "name": "activatedAt",
317
- "type": "uint40"
318
- },
319
- {
320
- "internalType": "Blocknumber",
321
- "name": "activatedIn",
322
- "type": "uint32"
323
- }
324
- ],
325
- "internalType": "struct IVersionable.VersionInfo",
326
- "name": "",
327
- "type": "tuple"
328
- }
329
- ],
330
- "stateMutability": "view",
331
- "type": "function"
332
- },
333
- {
334
- "inputs": [
335
- {
336
- "internalType": "address",
337
- "name": "implementation",
338
- "type": "address"
339
- },
340
- {
341
- "internalType": "address",
342
- "name": "activatedBy",
343
- "type": "address"
344
- },
345
- {
346
- "internalType": "bytes",
347
- "name": "initializationData",
348
- "type": "bytes"
349
- }
350
- ],
351
- "name": "initialize",
352
- "outputs": [],
353
- "stateMutability": "nonpayable",
354
- "type": "function"
355
- },
356
- {
357
- "inputs": [
358
- {
359
- "internalType": "Version",
360
- "name": "_version",
361
- "type": "uint24"
362
- }
363
- ],
364
- "name": "isActivated",
365
- "outputs": [
366
- {
367
- "internalType": "bool",
368
- "name": "",
369
- "type": "bool"
370
- }
371
- ],
372
- "stateMutability": "view",
373
- "type": "function"
374
- },
375
- {
376
- "inputs": [
377
- {
378
- "internalType": "contract IBaseComponent",
379
- "name": "component",
380
- "type": "address"
381
- }
382
- ],
383
- "name": "lock",
384
- "outputs": [],
385
- "stateMutability": "nonpayable",
386
- "type": "function"
387
- },
388
- {
389
- "inputs": [],
390
- "name": "register",
391
- "outputs": [
392
- {
393
- "internalType": "NftId",
394
- "name": "nftId",
395
- "type": "uint96"
396
- }
397
- ],
398
- "stateMutability": "nonpayable",
399
- "type": "function"
400
- },
401
- {
402
- "inputs": [
403
- {
404
- "internalType": "contract IBaseComponent",
405
- "name": "component",
406
- "type": "address"
407
- }
408
- ],
409
- "name": "register",
410
- "outputs": [
411
- {
412
- "internalType": "NftId",
413
- "name": "nftId",
414
- "type": "uint96"
415
- }
416
- ],
417
- "stateMutability": "nonpayable",
418
- "type": "function"
419
- },
420
- {
421
- "inputs": [
422
- {
423
- "internalType": "bytes4",
424
- "name": "interfaceId",
425
- "type": "bytes4"
426
- }
427
- ],
428
- "name": "supportsInterface",
429
- "outputs": [
430
- {
431
- "internalType": "bool",
432
- "name": "",
433
- "type": "bool"
434
- }
435
- ],
436
- "stateMutability": "view",
437
- "type": "function"
438
- },
439
- {
440
- "inputs": [
441
- {
442
- "internalType": "contract IBaseComponent",
443
- "name": "component",
444
- "type": "address"
445
- }
446
- ],
447
- "name": "unlock",
448
- "outputs": [],
449
- "stateMutability": "nonpayable",
450
- "type": "function"
451
- },
452
- {
453
- "inputs": [
454
- {
455
- "internalType": "address",
456
- "name": "implementation",
457
- "type": "address"
458
- },
459
- {
460
- "internalType": "address",
461
- "name": "activatedBy",
462
- "type": "address"
463
- },
464
- {
465
- "internalType": "bytes",
466
- "name": "upgradeData",
467
- "type": "bytes"
468
- }
469
- ],
470
- "name": "upgrade",
471
- "outputs": [],
472
- "stateMutability": "nonpayable",
473
- "type": "function"
474
- }
475
- ],
476
- "bytecode": "0x60e06040523480156200001157600080fd5b5060405162002c3a38038062002c3a83398101604081905262000034916200071f565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055818181816001600160a01b038216620000d05760405162461bcd60e51b815260206004820152601b60248201527f4552524f523a5247422d3031303a52454749535452595f5a45524f000000000060448201526064015b60405180910390fd5b6001600160a01b03821660808190526040516301ffc9a760e01b81526306ecd8ef60e01b60048201526301ffc9a790602401602060405180830381865afa15801562000120573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000146919062000774565b620001945760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a5247422d3031313a4e4f545f52454749535452590000000000006044820152606401620000c7565b6001600160601b03811660a081905260805160405163e74d052f60e01b815260048101929092526001600160a01b03169063e74d052f90602401602060405180830381865afa158015620001ec573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000212919062000774565b6200026c5760405162461bcd60e51b815260206004820152602360248201527f4552524f523a5247422d3031323a504152454e545f4e4f545f5245474953544560448201526214915160ea1b6064820152608401620000c7565b3360c052631dfba64760e11b60009081526020527f95e5a2564f7af40498dc043c6da135e06324c5edb1f60c2bf4dcdf2da207fa45805460ff1916600117905550620002bc905060003362000302565b631b4612f160e31b60009081526020527ffc58a5a01198e68c5a5d0bcd463f9ab550fc4337b1df271aed6dbb33d25fef25805460ff191660011790555050505062000818565b60006200030e620005da565b90506200031b8162000667565b156200037a5760405162461bcd60e51b815260206004820152602760248201527f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f41436044820152661512559055115160ca1b6064820152608401620000c7565b600254156200043b57600280546000919062000399906001906200079f565b81548110620003ac57620003ac620007c1565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050620003df82826200070d565b620004395760405162461bcd60e51b8152602060048201526024808201527f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160448201526353494e4760e01b6064820152608401620000c7565b505b60028054600181018255600091909152600a8082047f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace01805462ffffff808616600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b03808616602084015284169082015260608101620004c54290565b64ffffffffff1681526020014363ffffffff90811690915262ffffff80841660009081526001602081815260409283902086518154928801516001600160a01b039081166301000000026001600160b81b0319909416919096161791909117815585830151910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d441990620005cd9083908690869062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156200063c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006629190620007d7565b905090565b62ffffff81166000908152600160208190526040808320909101549051631bbffab160e21b8152600160c81b90910463ffffffff166004820152819073__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015620006e0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007069190620007fe565b1192915050565b62ffffff808216908316115b92915050565b600080604083850312156200073357600080fd5b82516001600160a01b03811681146200074b57600080fd5b60208401519092506001600160601b03811681146200076957600080fd5b809150509250929050565b6000602082840312156200078757600080fd5b815180151581146200079857600080fd5b9392505050565b818103818111156200071957634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b600060208284031215620007ea57600080fd5b815162ffffff811681146200079857600080fd5b6000602082840312156200081157600080fd5b5051919050565b60805160a05160c0516123b36200088760003960006114f6015260006102540152600081816103b00152818161068f0152818161072801528181610cb70152818161103b01528181611148015281816114080152818161147901528181611539015261173201526123b36000f3fe608060405234801561001057600080fd5b50600436106101585760003560e01c80635b5b48f5116100c3578063b3c650151161007c578063b3c6501514610450578063b88da75914610471578063cde749f414610484578063cf7a1d771461048c578063f435f5a71461049f578063fc0ae054146104b257600080fd5b80635b5b48f5146103e8578063644c45e0146103fb578063893d20e814610403578063946dfcfe1461040b578063a3f4df7e1461041c578063a745e3df146103e857600080fd5b80632f6c493c116101155780632f6c493c1461023d57806331b62a3b146102525780633bc5de30146102785780634420e4861461028c5780634d459c901461029f5780635ab1bd53146103ae57600080fd5b806301ffc9a71461015d5780630abd84341461019f5780630d8e6e2c146101b257806315dae03e146101ce57806317d7de7c146101e35780631aa3a0081461021d575b600080fd5b61018a61016b366004611eca565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61018a6101ad366004611f0f565b6104de565b6101ba610581565b60405162ffffff9091168152602001610196565b60285b60405160ff9091168152602001610196565b604080518082019091526015815274436f6d706f6e656e744f776e65725365727669636560581b60208201525b6040516101969190611f7c565b61022561060b565b6040516001600160601b039091168152602001610196565b61025061024b366004611fa4565b610704565b005b7f0000000000000000000000000000000000000000000000000000000000000000610225565b604080516020810190915260008152610210565b61022561029a366004611fa4565b610a38565b6103516102ad366004611f0f565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525062ffffff908116600090815260016020818152604092839020835160a0810185528154958616815263010000009095046001600160a01b03908116928601929092529091015490811691830191909152600160a01b810464ffffffffff166060830152600160c81b900463ffffffff16608082015290565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001610196565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b039091168152602001610196565b6102506103f6366004612059565b505050565b6102256113f0565b6103d0611457565b600254604051908152602001610196565b61021060405180604001604052806015815260200174436f6d706f6e656e744f776e65725365727669636560581b81525081565b6104586115b2565b60405167ffffffffffffffff9091168152602001610196565b6101ba61047f3660046120fe565b6115e6565b6101d1611627565b61025061049a366004612059565b611704565b6102506104ad366004611fa4565b61170e565b6104c56104c0366004612126565b6119e5565b6040516001600160c01b03199091168152602001610196565b62ffffff81166000908152600160208190526040808320909101549051631bbffab160e21b8152600160c81b90910463ffffffff166004820152819073__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610556573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057a9190612143565b1192915050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156105e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610606919061215c565b905090565b6000610615611457565b6001600160a01b0316336001600160a01b03161461067a5760405162461bcd60e51b815260206004820152601760248201527f4552524f523a5247422d3030313a4e4f545f4f574e455200000000000000000060448201526064015b60405180910390fd5b604051632210724360e11b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690634420e486906024016020604051808303816000875af11580156106e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106069190612190565b604051636939560f60e11b81526001600160a01b03808316600483015282916000917f0000000000000000000000000000000000000000000000000000000000000000169063d272ac1e90602401602060405180830381865afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107939190612190565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af41580156107ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081291906121ab565b61085e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a434f532d3030313a434f4d504f4e454e545f554e4b4e4f574e006044820152606401610671565b6000836001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa15801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c291906121cd565b90506000846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610904573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109289190612190565b9050600073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__633889a4c86001600160601b03841660646040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af415801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190612143565b90506001600160a01b03831663a238accd8260645b6040516001600160e01b031960e085901b168152600481019290925260ff166024820152604401600060405180830381600087803b158015610a1857600080fd5b505af1158015610a2c573d6000803e3d6000fd5b50505050505050505050565b600080826001600160a01b031663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a9d91906121cd565b9050336001600160a01b03841614610af75760405162461bcd60e51b815260206004820152601b60248201527f4552524f523a434f532d3030333a4e4f545f434f4d504f4e454e5400000000006044820152606401610671565b6000836001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5b91906121cd565b90506000846001600160a01b03166315dae03e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc191906121ea565b90506000610bce826119e5565b6040516399fd467760e01b81526001600160c01b0319821660048201526001600160a01b038681166024830152919250908416906399fd467790604401602060405180830381865afa158015610c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4c91906121ab565b610c985760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a434d502d3030343a545950455f524f4c455f4d495353494e47006044820152606401610671565b604051632210724360e11b81526001600160a01b0387811660048301527f00000000000000000000000000000000000000000000000000000000000000001690634420e486906024016020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d249190612190565b94506000866001600160a01b03166321df0da76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d8a91906121cd565b9050836001600160a01b031663ea5fa54b87838a6001600160a01b031663132996046040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ddb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dff91906121cd565b6040516001600160e01b031960e086901b1681526001600160601b0390931660048401526001600160a01b039182166024840152166044820152606401600060405180830381600087803b158015610e5657600080fd5b505af1158015610e6a573d6000803e3d6000fd5b50505050610ee1876001600160a01b03166315dae03e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed391906121ea565b606e5b60ff90811691161490565b156112345760008790506000816001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4f9190612190565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610faa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fce91906121ab565b61101a5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a434d502d3030353a504f4f4c5f554e4b4e4f574e0000000000006044820152606401610671565b6040516305247a1760e51b81526001600160601b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a48f42e090602401600060405180830381865afa15801561108a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110b29190810190612254565b6060015190506000836001600160a01b031663db6dcc956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111c9190612190565b6040516305247a1760e51b81526001600160601b03821660048201529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a48f42e090602401600060405180830381865afa15801561118f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111b79190810190612254565b6060015160405163e26b857b60e01b81526001600160a01b03878116600483015285811660248301528083166044830152919250908a169063e26b857b90606401600060405180830381600087803b15801561121257600080fd5b505af1158015611226573d6000803e3d6000fd5b5050505050505050506113e6565b6112a0876001600160a01b03166315dae03e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611275573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129991906121ea565b608c610ed6565b156113e6576000879050846001600160a01b031663e03eeb8588836001600160a01b03166387ef9ba06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131c91906121ab565b846001600160a01b03166354afef636040518163ffffffff1660e01b8152600401602060405180830381865afa15801561135a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137e9190612143565b6040516001600160e01b031960e086901b1681526001600160601b03909316600484015290151560248301526044820152606401600060405180830381600087803b1580156113cc57600080fd5b505af11580156113e0573d6000803e3d6000fd5b50505050505b5050505050919050565b604051636939560f60e11b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063d272ac1e90602401602060405180830381865afa1580156106e0573d6000803e3d6000fd5b604051636939560f60e11b815230600482015260009081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d272ac1e90602401602060405180830381865afa1580156114c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e49190612190565b90506001600160601b03811661151b577f000000000000000000000000000000000000000000000000000000000000000091505090565b60405163df33330b60e01b81526001600160601b03821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063df33330b90602401602060405180830381865afa158015611588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ac91906121cd565b91505090565b60006106067ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005467ffffffffffffffff1690565b6000600282815481106115fb576115fb61231c565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000306001600160a01b0316630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611667573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168b919061215c565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af41580156116e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060691906121ea565b6103f68383611a52565b604051636939560f60e11b81526001600160a01b03808316600483015282916000917f0000000000000000000000000000000000000000000000000000000000000000169063d272ac1e90602401602060405180830381865afa158015611779573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061179d9190612190565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af41580156117f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061181c91906121ab565b6118685760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a434f532d3030313a434f4d504f4e454e545f554e4b4e4f574e006044820152606401610671565b6000836001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118cc91906121cd565b90506000846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561190e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119329190612190565b9050600073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__633889a4c86001600160601b03841660646040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af41580156119a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cc9190612143565b90506001600160a01b03831663a238accd82606e6109d7565b60006119f282606e610ed6565b15611a05576119ff611d20565b92915050565b611a1082608c610ed6565b15611a1d576119ff611db8565b611a28826078610ed6565b15611a35576119ff611e10565b611a40826082610ed6565b15611a4d576119ff611e70565b919050565b6000611a5c610581565b9050611a67816104de565b15611ac45760405162461bcd60e51b815260206004820152602760248201527f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f41436044820152661512559055115160ca1b6064820152608401610671565b60025415611b83576002805460009190611ae090600190612332565b81548110611af057611af061231c565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050611b29828262ffffff90811691161190565b611b815760405162461bcd60e51b8152602060048201526024808201527f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160448201526353494e4760e01b6064820152608401610671565b505b60028054600181018255600091909152600a8082047f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace01805462ffffff808616600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b03808616602084015284169082015260608101611c0c4290565b64ffffffffff1681526020014363ffffffff90811690915262ffffff80841660009081526001602081815260409283902086518154928801516001600160a01b039081166301000000026001600160b81b0319909416919096161791909117815585830151910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d441990611d139083908690869062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050565b60405163e14787cb60e01b815260206004820152601060248201526f50726f647563744f776e6572526f6c6560801b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb906064015b602060405180830381865af4158015611d94573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106069190612353565b60405163e14787cb60e01b815260206004820152600d60248201526c506f6f6c4f776e6572526f6c6560981b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb90606401611d77565b60405163e14787cb60e01b8152602060048201526015602482015274446973747269627574696f6e4f776e6572526f6c6560581b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb90606401611d77565b60405163e14787cb60e01b815260206004820152600f60248201526e4f7261636c654f776e6572526f6c6560881b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb90606401611d77565b600060208284031215611edc57600080fd5b81356001600160e01b031981168114611ef457600080fd5b9392505050565b62ffffff81168114611f0c57600080fd5b50565b600060208284031215611f2157600080fd5b8135611ef481611efb565b60005b83811015611f47578181015183820152602001611f2f565b50506000910152565b60008151808452611f68816020860160208601611f2c565b601f01601f19169290920160200192915050565b602081526000611ef46020830184611f50565b6001600160a01b0381168114611f0c57600080fd5b600060208284031215611fb657600080fd5b8135611ef481611f8f565b634e487b7160e01b600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715611ffa57611ffa611fc1565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561202957612029611fc1565b604052919050565b600067ffffffffffffffff82111561204b5761204b611fc1565b50601f01601f191660200190565b60008060006060848603121561206e57600080fd5b833561207981611f8f565b9250602084013561208981611f8f565b9150604084013567ffffffffffffffff8111156120a557600080fd5b8401601f810186136120b657600080fd5b80356120c96120c482612031565b612000565b8181528760208385010111156120de57600080fd5b816020840160208301376000602083830101528093505050509250925092565b60006020828403121561211057600080fd5b5035919050565b60ff81168114611f0c57600080fd5b60006020828403121561213857600080fd5b8135611ef481612117565b60006020828403121561215557600080fd5b5051919050565b60006020828403121561216e57600080fd5b8151611ef481611efb565b80516001600160601b0381168114611a4d57600080fd5b6000602082840312156121a257600080fd5b611ef482612179565b6000602082840312156121bd57600080fd5b81518015158114611ef457600080fd5b6000602082840312156121df57600080fd5b8151611ef481611f8f565b6000602082840312156121fc57600080fd5b8151611ef481612117565b600082601f83011261221857600080fd5b81516122266120c482612031565b81815284602083860101111561223b57600080fd5b61224c826020830160208701611f2c565b949350505050565b60006020828403121561226657600080fd5b815167ffffffffffffffff8082111561227e57600080fd5b9083019060c0828603121561229257600080fd5b61229a611fd7565b6122a383612179565b81526122b160208401612179565b602082015260408301516122c481612117565b604082015260608301516122d781611f8f565b606082015260808301516122ea81611f8f565b608082015260a08301518281111561230157600080fd5b61230d87828601612207565b60a08301525095945050505050565b634e487b7160e01b600052603260045260246000fd5b818103818111156119ff57634e487b7160e01b600052601160045260246000fd5b60006020828403121561236557600080fd5b81516001600160c01b031981168114611ef457600080fdfea2646970667358221220cc70c7969d48f11e6338c1a5707945fb9a90426a8cd8b5dfc2a53e7fcbf13ea264736f6c63430008140033",
477
- "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101585760003560e01c80635b5b48f5116100c3578063b3c650151161007c578063b3c6501514610450578063b88da75914610471578063cde749f414610484578063cf7a1d771461048c578063f435f5a71461049f578063fc0ae054146104b257600080fd5b80635b5b48f5146103e8578063644c45e0146103fb578063893d20e814610403578063946dfcfe1461040b578063a3f4df7e1461041c578063a745e3df146103e857600080fd5b80632f6c493c116101155780632f6c493c1461023d57806331b62a3b146102525780633bc5de30146102785780634420e4861461028c5780634d459c901461029f5780635ab1bd53146103ae57600080fd5b806301ffc9a71461015d5780630abd84341461019f5780630d8e6e2c146101b257806315dae03e146101ce57806317d7de7c146101e35780631aa3a0081461021d575b600080fd5b61018a61016b366004611eca565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61018a6101ad366004611f0f565b6104de565b6101ba610581565b60405162ffffff9091168152602001610196565b60285b60405160ff9091168152602001610196565b604080518082019091526015815274436f6d706f6e656e744f776e65725365727669636560581b60208201525b6040516101969190611f7c565b61022561060b565b6040516001600160601b039091168152602001610196565b61025061024b366004611fa4565b610704565b005b7f0000000000000000000000000000000000000000000000000000000000000000610225565b604080516020810190915260008152610210565b61022561029a366004611fa4565b610a38565b6103516102ad366004611f0f565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525062ffffff908116600090815260016020818152604092839020835160a0810185528154958616815263010000009095046001600160a01b03908116928601929092529091015490811691830191909152600160a01b810464ffffffffff166060830152600160c81b900463ffffffff16608082015290565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001610196565b7f00000000000000000000000000000000000000000000000000000000000000005b6040516001600160a01b039091168152602001610196565b6102506103f6366004612059565b505050565b6102256113f0565b6103d0611457565b600254604051908152602001610196565b61021060405180604001604052806015815260200174436f6d706f6e656e744f776e65725365727669636560581b81525081565b6104586115b2565b60405167ffffffffffffffff9091168152602001610196565b6101ba61047f3660046120fe565b6115e6565b6101d1611627565b61025061049a366004612059565b611704565b6102506104ad366004611fa4565b61170e565b6104c56104c0366004612126565b6119e5565b6040516001600160c01b03199091168152602001610196565b62ffffff81166000908152600160208190526040808320909101549051631bbffab160e21b8152600160c81b90910463ffffffff166004820152819073__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af4158015610556573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061057a9190612143565b1192915050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156105e2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610606919061215c565b905090565b6000610615611457565b6001600160a01b0316336001600160a01b03161461067a5760405162461bcd60e51b815260206004820152601760248201527f4552524f523a5247422d3030313a4e4f545f4f574e455200000000000000000060448201526064015b60405180910390fd5b604051632210724360e11b81523060048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031690634420e486906024016020604051808303816000875af11580156106e0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106069190612190565b604051636939560f60e11b81526001600160a01b03808316600483015282916000917f0000000000000000000000000000000000000000000000000000000000000000169063d272ac1e90602401602060405180830381865afa15801561076f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107939190612190565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af41580156107ee573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061081291906121ab565b61085e5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a434f532d3030313a434f4d504f4e454e545f554e4b4e4f574e006044820152606401610671565b6000836001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa15801561089e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108c291906121cd565b90506000846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610904573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109289190612190565b9050600073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__633889a4c86001600160601b03841660646040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af415801561099e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109c29190612143565b90506001600160a01b03831663a238accd8260645b6040516001600160e01b031960e085901b168152600481019290925260ff166024820152604401600060405180830381600087803b158015610a1857600080fd5b505af1158015610a2c573d6000803e3d6000fd5b50505050505050505050565b600080826001600160a01b031663893d20e86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610a79573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a9d91906121cd565b9050336001600160a01b03841614610af75760405162461bcd60e51b815260206004820152601b60248201527f4552524f523a434f532d3030333a4e4f545f434f4d504f4e454e5400000000006044820152606401610671565b6000836001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b37573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b5b91906121cd565b90506000846001600160a01b03166315dae03e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610b9d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610bc191906121ea565b90506000610bce826119e5565b6040516399fd467760e01b81526001600160c01b0319821660048201526001600160a01b038681166024830152919250908416906399fd467790604401602060405180830381865afa158015610c28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4c91906121ab565b610c985760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a434d502d3030343a545950455f524f4c455f4d495353494e47006044820152606401610671565b604051632210724360e11b81526001600160a01b0387811660048301527f00000000000000000000000000000000000000000000000000000000000000001690634420e486906024016020604051808303816000875af1158015610d00573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d249190612190565b94506000866001600160a01b03166321df0da76040518163ffffffff1660e01b8152600401602060405180830381865afa158015610d66573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d8a91906121cd565b9050836001600160a01b031663ea5fa54b87838a6001600160a01b031663132996046040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ddb573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610dff91906121cd565b6040516001600160e01b031960e086901b1681526001600160601b0390931660048401526001600160a01b039182166024840152166044820152606401600060405180830381600087803b158015610e5657600080fd5b505af1158015610e6a573d6000803e3d6000fd5b50505050610ee1876001600160a01b03166315dae03e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015610eaf573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ed391906121ea565b606e5b60ff90811691161490565b156112345760008790506000816001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f2b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f4f9190612190565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610faa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610fce91906121ab565b61101a5760405162461bcd60e51b815260206004820152601a60248201527f4552524f523a434d502d3030353a504f4f4c5f554e4b4e4f574e0000000000006044820152606401610671565b6040516305247a1760e51b81526001600160601b03821660048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a48f42e090602401600060405180830381865afa15801561108a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526110b29190810190612254565b6060015190506000836001600160a01b031663db6dcc956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156110f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061111c9190612190565b6040516305247a1760e51b81526001600160601b03821660048201529091506000906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063a48f42e090602401600060405180830381865afa15801561118f573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526111b79190810190612254565b6060015160405163e26b857b60e01b81526001600160a01b03878116600483015285811660248301528083166044830152919250908a169063e26b857b90606401600060405180830381600087803b15801561121257600080fd5b505af1158015611226573d6000803e3d6000fd5b5050505050505050506113e6565b6112a0876001600160a01b03166315dae03e6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611275573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061129991906121ea565b608c610ed6565b156113e6576000879050846001600160a01b031663e03eeb8588836001600160a01b03166387ef9ba06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156112f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131c91906121ab565b846001600160a01b03166354afef636040518163ffffffff1660e01b8152600401602060405180830381865afa15801561135a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061137e9190612143565b6040516001600160e01b031960e086901b1681526001600160601b03909316600484015290151560248301526044820152606401600060405180830381600087803b1580156113cc57600080fd5b505af11580156113e0573d6000803e3d6000fd5b50505050505b5050505050919050565b604051636939560f60e11b81523060048201526000907f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063d272ac1e90602401602060405180830381865afa1580156106e0573d6000803e3d6000fd5b604051636939560f60e11b815230600482015260009081906001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000169063d272ac1e90602401602060405180830381865afa1580156114c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114e49190612190565b90506001600160601b03811661151b577f000000000000000000000000000000000000000000000000000000000000000091505090565b60405163df33330b60e01b81526001600160601b03821660048201527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063df33330b90602401602060405180830381865afa158015611588573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115ac91906121cd565b91505090565b60006106067ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005467ffffffffffffffff1690565b6000600282815481106115fb576115fb61231c565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000306001600160a01b0316630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611667573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061168b919061215c565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af41580156116e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061060691906121ea565b6103f68383611a52565b604051636939560f60e11b81526001600160a01b03808316600483015282916000917f0000000000000000000000000000000000000000000000000000000000000000169063d272ac1e90602401602060405180830381865afa158015611779573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061179d9190612190565b6040516330b8415f60e01b81526001600160601b038216600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af41580156117f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061181c91906121ab565b6118685760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a434f532d3030313a434f4d504f4e454e545f554e4b4e4f574e006044820152606401610671565b6000836001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118cc91906121cd565b90506000846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa15801561190e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119329190612190565b9050600073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__633889a4c86001600160601b03841660646040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af41580156119a8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119cc9190612143565b90506001600160a01b03831663a238accd82606e6109d7565b60006119f282606e610ed6565b15611a05576119ff611d20565b92915050565b611a1082608c610ed6565b15611a1d576119ff611db8565b611a28826078610ed6565b15611a35576119ff611e10565b611a40826082610ed6565b15611a4d576119ff611e70565b919050565b6000611a5c610581565b9050611a67816104de565b15611ac45760405162461bcd60e51b815260206004820152602760248201527f4552524f523a56524e2d3030313a56455253494f4e5f414c52454144595f41436044820152661512559055115160ca1b6064820152608401610671565b60025415611b83576002805460009190611ae090600190612332565b81548110611af057611af061231c565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050611b29828262ffffff90811691161190565b611b815760405162461bcd60e51b8152602060048201526024808201527f4552524f523a56524e2d3030323a56455253494f4e5f4e4f545f494e4352454160448201526353494e4760e01b6064820152608401610671565b505b60028054600181018255600091909152600a8082047f405787fa12a823e0f2b7631cc41b3ba8828b3321ca811111fa75cd3aa3bb5ace01805462ffffff808616600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b03808616602084015284169082015260608101611c0c4290565b64ffffffffff1681526020014363ffffffff90811690915262ffffff80841660009081526001602081815260409283902086518154928801516001600160a01b039081166301000000026001600160b81b0319909416919096161791909117815585830151910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517f68e7327fca0057a787cde34ababb9ef9844ba8065ee03e8781d8122fc15d441990611d139083908690869062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b60405180910390a1505050565b60405163e14787cb60e01b815260206004820152601060248201526f50726f647563744f776e6572526f6c6560801b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb906064015b602060405180830381865af4158015611d94573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106069190612353565b60405163e14787cb60e01b815260206004820152600d60248201526c506f6f6c4f776e6572526f6c6560981b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb90606401611d77565b60405163e14787cb60e01b8152602060048201526015602482015274446973747269627574696f6e4f776e6572526f6c6560581b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb90606401611d77565b60405163e14787cb60e01b815260206004820152600f60248201526e4f7261636c654f776e6572526f6c6560881b604482015260009073__$cd131c2b3ba46b9dbe046aaf4458b9777d$__9063e14787cb90606401611d77565b600060208284031215611edc57600080fd5b81356001600160e01b031981168114611ef457600080fd5b9392505050565b62ffffff81168114611f0c57600080fd5b50565b600060208284031215611f2157600080fd5b8135611ef481611efb565b60005b83811015611f47578181015183820152602001611f2f565b50506000910152565b60008151808452611f68816020860160208601611f2c565b601f01601f19169290920160200192915050565b602081526000611ef46020830184611f50565b6001600160a01b0381168114611f0c57600080fd5b600060208284031215611fb657600080fd5b8135611ef481611f8f565b634e487b7160e01b600052604160045260246000fd5b60405160c0810167ffffffffffffffff81118282101715611ffa57611ffa611fc1565b60405290565b604051601f8201601f1916810167ffffffffffffffff8111828210171561202957612029611fc1565b604052919050565b600067ffffffffffffffff82111561204b5761204b611fc1565b50601f01601f191660200190565b60008060006060848603121561206e57600080fd5b833561207981611f8f565b9250602084013561208981611f8f565b9150604084013567ffffffffffffffff8111156120a557600080fd5b8401601f810186136120b657600080fd5b80356120c96120c482612031565b612000565b8181528760208385010111156120de57600080fd5b816020840160208301376000602083830101528093505050509250925092565b60006020828403121561211057600080fd5b5035919050565b60ff81168114611f0c57600080fd5b60006020828403121561213857600080fd5b8135611ef481612117565b60006020828403121561215557600080fd5b5051919050565b60006020828403121561216e57600080fd5b8151611ef481611efb565b80516001600160601b0381168114611a4d57600080fd5b6000602082840312156121a257600080fd5b611ef482612179565b6000602082840312156121bd57600080fd5b81518015158114611ef457600080fd5b6000602082840312156121df57600080fd5b8151611ef481611f8f565b6000602082840312156121fc57600080fd5b8151611ef481612117565b600082601f83011261221857600080fd5b81516122266120c482612031565b81815284602083860101111561223b57600080fd5b61224c826020830160208701611f2c565b949350505050565b60006020828403121561226657600080fd5b815167ffffffffffffffff8082111561227e57600080fd5b9083019060c0828603121561229257600080fd5b61229a611fd7565b6122a383612179565b81526122b160208401612179565b602082015260408301516122c481612117565b604082015260608301516122d781611f8f565b606082015260808301516122ea81611f8f565b608082015260a08301518281111561230157600080fd5b61230d87828601612207565b60a08301525095945050505050565b634e487b7160e01b600052603260045260246000fd5b818103818111156119ff57634e487b7160e01b600052601160045260246000fd5b60006020828403121561236557600080fd5b81516001600160c01b031981168114611ef457600080fdfea2646970667358221220cc70c7969d48f11e6338c1a5707945fb9a90426a8cd8b5dfc2a53e7fcbf13ea264736f6c63430008140033",
478
- "linkReferences": {
479
- "contracts/types/Blocknumber.sol": {
480
- "BlocknumberLib": [
481
- {
482
- "length": 20,
483
- "start": 1701
484
- },
485
- {
486
- "length": 20,
487
- "start": 3491
488
- }
489
- ]
490
- },
491
- "contracts/types/NftId.sol": {
492
- "NftIdLib": [
493
- {
494
- "length": 20,
495
- "start": 4155
496
- },
497
- {
498
- "length": 20,
499
- "start": 4533
500
- },
501
- {
502
- "length": 20,
503
- "start": 6135
504
- },
505
- {
506
- "length": 20,
507
- "start": 8261
508
- },
509
- {
510
- "length": 20,
511
- "start": 8639
512
- }
513
- ]
514
- },
515
- "contracts/types/RoleId.sol": {
516
- "RoleIdLib": [
517
- {
518
- "length": 20,
519
- "start": 9696
520
- },
521
- {
522
- "length": 20,
523
- "start": 9845
524
- },
525
- {
526
- "length": 20,
527
- "start": 9941
528
- },
529
- {
530
- "length": 20,
531
- "start": 10031
532
- }
533
- ]
534
- },
535
- "contracts/types/Version.sol": {
536
- "VersionLib": [
537
- {
538
- "length": 20,
539
- "start": 1537
540
- },
541
- {
542
- "length": 20,
543
- "start": 3631
544
- },
545
- {
546
- "length": 20,
547
- "start": 7981
548
- }
549
- ]
550
- }
551
- },
552
- "deployedLinkReferences": {
553
- "contracts/types/Blocknumber.sol": {
554
- "BlocknumberLib": [
555
- {
556
- "length": 20,
557
- "start": 1308
558
- }
559
- ]
560
- },
561
- "contracts/types/NftId.sol": {
562
- "NftIdLib": [
563
- {
564
- "length": 20,
565
- "start": 1972
566
- },
567
- {
568
- "length": 20,
569
- "start": 2350
570
- },
571
- {
572
- "length": 20,
573
- "start": 3952
574
- },
575
- {
576
- "length": 20,
577
- "start": 6078
578
- },
579
- {
580
- "length": 20,
581
- "start": 6456
582
- }
583
- ]
584
- },
585
- "contracts/types/RoleId.sol": {
586
- "RoleIdLib": [
587
- {
588
- "length": 20,
589
- "start": 7513
590
- },
591
- {
592
- "length": 20,
593
- "start": 7662
594
- },
595
- {
596
- "length": 20,
597
- "start": 7758
598
- },
599
- {
600
- "length": 20,
601
- "start": 7848
602
- }
603
- ]
604
- },
605
- "contracts/types/Version.sol": {
606
- "VersionLib": [
607
- {
608
- "length": 20,
609
- "start": 1448
610
- },
611
- {
612
- "length": 20,
613
- "start": 5798
614
- }
615
- ]
616
- }
617
- }
618
- }