@etherisc/gif-next 0.0.2-e6a90b9 → 0.0.2-e769e2e-077

Sign up to get free protection for your applications and to get access to all the features.
Files changed (466) hide show
  1. package/README.md +359 -8
  2. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
  3. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1410 -0
  4. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
  5. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1343 -0
  6. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
  7. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +760 -0
  8. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
  9. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +969 -0
  10. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
  11. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +808 -0
  12. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
  13. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +778 -0
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +284 -523
  16. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
  17. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +660 -0
  18. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  19. package/artifacts/contracts/instance/Instance.sol/Instance.json +537 -601
  20. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +4 -0
  21. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +1348 -0
  22. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
  23. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +132 -0
  24. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
  25. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1570 -0
  26. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
  27. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1039 -0
  28. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
  29. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +664 -0
  30. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
  31. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3500 -0
  32. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
  33. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
  34. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +4 -0
  35. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +190 -0
  36. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
  37. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +256 -0
  38. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
  39. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +237 -0
  40. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
  41. package/artifacts/contracts/instance/{access/IAccess.sol/IAccess.json → module/IBundle.sol/IBundle.json} +2 -2
  42. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
  43. package/artifacts/contracts/instance/{component/IComponent.sol/IComponent.json → module/IComponents.sol/IComponents.json} +2 -2
  44. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
  45. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.json +10 -0
  46. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
  47. package/artifacts/contracts/instance/{policy → module}/IPolicy.sol/IPolicy.json +1 -1
  48. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
  49. package/artifacts/contracts/instance/{pool/IPoolModule.sol/IPool.json → module/IRisk.sol/IRisk.json} +2 -2
  50. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +4 -0
  51. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1091 -0
  52. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
  53. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +684 -0
  54. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
  55. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +684 -0
  56. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
  57. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +1148 -0
  58. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
  59. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1044 -0
  60. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
  61. package/artifacts/contracts/pool/Pool.sol/Pool.json +1559 -0
  62. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
  63. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1411 -0
  64. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
  65. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +680 -0
  66. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
  67. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +820 -0
  68. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
  69. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +660 -0
  70. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
  71. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1264 -0
  72. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
  73. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +748 -0
  74. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
  75. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +493 -0
  76. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
  77. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +753 -0
  78. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
  79. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +701 -0
  80. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
  81. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +530 -0
  82. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
  83. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +989 -0
  84. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
  85. package/artifacts/contracts/product/IProductService.sol/IProductService.json +381 -0
  86. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
  87. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1132 -0
  88. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
  89. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +692 -0
  90. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
  91. package/artifacts/contracts/product/PricingService.sol/PricingService.json +969 -0
  92. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
  93. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +716 -0
  94. package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
  95. package/artifacts/contracts/product/Product.sol/Product.json +1391 -0
  96. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
  97. package/artifacts/contracts/product/ProductService.sol/ProductService.json +673 -0
  98. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
  99. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +636 -0
  100. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  101. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +252 -2
  102. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  103. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +600 -70
  104. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
  105. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +990 -0
  106. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
  107. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +52 -0
  108. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  109. package/artifacts/contracts/registry/Registry.sol/Registry.json +777 -77
  110. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +4 -0
  111. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +308 -0
  112. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
  113. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1290 -0
  114. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
  115. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +661 -0
  116. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
  117. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +688 -0
  118. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +4 -0
  119. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +137 -0
  120. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
  121. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +611 -0
  122. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
  123. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
  124. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
  125. package/artifacts/contracts/shared/Component.sol/Component.json +890 -0
  126. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
  127. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1461 -0
  128. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
  129. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +736 -0
  130. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
  131. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +520 -0
  132. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +4 -0
  133. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +73 -0
  134. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
  135. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +625 -0
  136. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
  137. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +854 -0
  138. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
  139. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +699 -0
  140. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
  141. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +478 -0
  142. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
  143. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +115 -0
  144. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
  145. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +125 -0
  146. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
  147. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +189 -0
  148. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +4 -0
  149. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +175 -0
  150. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
  151. package/artifacts/contracts/{instance/access/IAccess.sol/IAccessCheckRole.json → shared/IRegistryLinked.sol/IRegistryLinked.json} +11 -11
  152. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
  153. package/artifacts/contracts/shared/IService.sol/IService.json +327 -0
  154. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +4 -0
  155. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +55 -0
  156. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
  157. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +1030 -0
  158. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
  159. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +581 -0
  160. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
  161. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +194 -0
  162. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
  163. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +238 -0
  164. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
  165. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +302 -0
  166. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  167. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +569 -0
  168. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +4 -0
  169. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +347 -0
  170. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
  171. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
  172. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
  173. package/artifacts/contracts/{registry/IChainNft.sol/IChainNft.json → shared/Service.sol/Service.json} +256 -220
  174. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
  175. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +150 -0
  176. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  177. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  178. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +4 -0
  179. package/artifacts/contracts/shared/Versionable.sol/Versionable.json +78 -0
  180. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
  181. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1607 -0
  182. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +4 -0
  183. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +545 -0
  184. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
  185. package/artifacts/contracts/staking/Staking.sol/Staking.json +2074 -0
  186. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
  187. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +676 -0
  188. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +4 -0
  189. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +805 -0
  190. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
  191. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +636 -0
  192. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
  193. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +10 -0
  194. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
  195. package/artifacts/contracts/type/Amount.sol/AmountLib.json +281 -0
  196. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
  197. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +187 -0
  198. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
  199. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
  200. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
  201. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
  202. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
  203. package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
  204. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
  205. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
  206. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
  207. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +185 -0
  208. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
  209. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
  210. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
  211. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +92 -0
  212. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
  213. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
  214. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
  215. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
  216. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
  217. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +86 -0
  218. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
  219. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +156 -0
  220. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
  221. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +124 -0
  222. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
  223. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +92 -0
  224. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
  225. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +280 -0
  226. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
  227. package/artifacts/contracts/type/UFixed.sol/MathLib.json +10 -0
  228. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
  229. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +479 -0
  230. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
  231. package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
  232. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
  233. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +49 -0
  234. package/contracts/distribution/Distribution.sol +263 -0
  235. package/contracts/distribution/DistributionService.sol +297 -0
  236. package/contracts/distribution/DistributionServiceManager.sol +51 -0
  237. package/contracts/distribution/IDistributionComponent.sol +66 -0
  238. package/contracts/distribution/IDistributionService.sol +81 -0
  239. package/contracts/instance/BundleManager.sol +126 -0
  240. package/contracts/instance/IInstance.sol +72 -15
  241. package/contracts/instance/IInstanceService.sol +83 -0
  242. package/contracts/instance/Instance.sol +209 -44
  243. package/contracts/instance/InstanceAccessManager.sol +543 -0
  244. package/contracts/instance/InstanceAuthorizationsLib.sol +336 -0
  245. package/contracts/instance/InstanceReader.sol +366 -0
  246. package/contracts/instance/InstanceService.sol +348 -0
  247. package/contracts/instance/InstanceServiceManager.sol +54 -0
  248. package/contracts/instance/InstanceStore.sol +259 -0
  249. package/contracts/instance/base/BalanceStore.sol +118 -0
  250. package/contracts/instance/base/Cloneable.sol +51 -0
  251. package/contracts/instance/base/ObjectManager.sol +82 -0
  252. package/contracts/instance/module/IAccess.sol +54 -0
  253. package/contracts/instance/module/IBundle.sol +20 -0
  254. package/contracts/instance/module/IComponents.sol +52 -0
  255. package/contracts/instance/module/IDistribution.sol +42 -0
  256. package/contracts/instance/module/IPolicy.sol +84 -0
  257. package/contracts/instance/module/IRisk.sol +11 -0
  258. package/contracts/pool/BundleService.sol +313 -0
  259. package/contracts/pool/BundleServiceManager.sol +51 -0
  260. package/contracts/pool/IBundleService.sol +106 -0
  261. package/contracts/pool/IPoolComponent.sol +112 -0
  262. package/contracts/pool/IPoolService.sol +147 -0
  263. package/contracts/pool/Pool.sol +299 -0
  264. package/contracts/pool/PoolService.sol +421 -0
  265. package/contracts/pool/PoolServiceManager.sol +51 -0
  266. package/contracts/product/ApplicationService.sol +253 -0
  267. package/contracts/product/ApplicationServiceManager.sol +35 -0
  268. package/contracts/product/ClaimService.sol +436 -0
  269. package/contracts/product/ClaimServiceManager.sol +35 -0
  270. package/contracts/product/IApplicationService.sol +62 -0
  271. package/contracts/product/IClaimService.sol +93 -0
  272. package/contracts/product/IPolicyService.sol +78 -0
  273. package/contracts/product/IPricingService.sol +39 -0
  274. package/contracts/product/IProductComponent.sol +42 -0
  275. package/contracts/product/IProductService.sol +33 -0
  276. package/contracts/product/PolicyService.sol +471 -0
  277. package/contracts/product/PolicyServiceManager.sol +54 -0
  278. package/contracts/product/PricingService.sol +300 -0
  279. package/contracts/product/PricingServiceManager.sol +51 -0
  280. package/contracts/product/Product.sol +377 -0
  281. package/contracts/product/ProductService.sol +122 -0
  282. package/contracts/product/ProductServiceManager.sol +54 -0
  283. package/contracts/registry/ChainNft.sol +151 -108
  284. package/contracts/registry/IRegistry.sol +91 -48
  285. package/contracts/registry/IRegistryService.sol +79 -0
  286. package/contracts/registry/ITransferInterceptor.sol +7 -0
  287. package/contracts/registry/Registry.sol +465 -112
  288. package/contracts/registry/RegistryAccessManager.sol +213 -0
  289. package/contracts/registry/RegistryService.sol +327 -0
  290. package/contracts/registry/RegistryServiceManager.sol +60 -0
  291. package/contracts/registry/ReleaseManager.sol +375 -0
  292. package/contracts/registry/ServiceAuthorizationsLib.sol +173 -0
  293. package/contracts/registry/TokenRegistry.sol +187 -0
  294. package/contracts/shared/AccessManagerUpgradeableInitializeable.sol +13 -0
  295. package/contracts/shared/Component.sol +286 -0
  296. package/contracts/shared/ComponentService.sol +596 -0
  297. package/contracts/shared/ComponentServiceManager.sol +35 -0
  298. package/contracts/shared/ComponentVerifyingService.sol +111 -0
  299. package/contracts/shared/ERC165.sol +27 -0
  300. package/contracts/shared/IComponent.sol +74 -0
  301. package/contracts/shared/IComponentService.sol +91 -0
  302. package/contracts/shared/IInstanceLinkedComponent.sol +46 -0
  303. package/contracts/shared/IKeyValueStore.sol +53 -0
  304. package/contracts/shared/ILifecycle.sol +30 -0
  305. package/contracts/shared/INftOwnable.sol +23 -0
  306. package/contracts/shared/IPolicyHolder.sol +40 -0
  307. package/contracts/shared/IRegisterable.sol +15 -0
  308. package/contracts/shared/IRegistryLinked.sol +11 -0
  309. package/contracts/shared/IService.sol +18 -0
  310. package/contracts/shared/IVersionable.sol +53 -0
  311. package/contracts/shared/InstanceLinkedComponent.sol +145 -0
  312. package/contracts/shared/KeyValueStore.sol +169 -0
  313. package/contracts/shared/Lifecycle.sol +121 -0
  314. package/contracts/shared/NftOwnable.sol +118 -0
  315. package/contracts/shared/PolicyHolder.sol +94 -0
  316. package/contracts/shared/ProxyManager.sol +169 -0
  317. package/contracts/shared/Registerable.sol +75 -0
  318. package/contracts/shared/RegistryLinked.sol +43 -0
  319. package/contracts/shared/Service.sol +77 -0
  320. package/contracts/shared/TokenHandler.sol +58 -0
  321. package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
  322. package/contracts/shared/Versionable.sol +59 -0
  323. package/contracts/staking/IStaking.sol +77 -0
  324. package/contracts/staking/IStakingService.sol +105 -0
  325. package/contracts/staking/Staking.sol +212 -0
  326. package/contracts/staking/StakingManager.sol +46 -0
  327. package/contracts/staking/StakingService.sol +200 -0
  328. package/contracts/staking/StakingServiceManager.sol +41 -0
  329. package/contracts/type/AddressSet.sol +58 -0
  330. package/contracts/type/Amount.sol +114 -0
  331. package/contracts/type/Blocknumber.sol +124 -0
  332. package/contracts/type/ClaimId.sol +75 -0
  333. package/contracts/type/DistributorType.sol +55 -0
  334. package/contracts/type/Fee.sol +66 -0
  335. package/contracts/type/Key32.sol +50 -0
  336. package/contracts/type/NftId.sol +73 -0
  337. package/contracts/type/NftIdSet.sol +62 -0
  338. package/contracts/type/ObjectType.sol +165 -0
  339. package/contracts/type/PayoutId.sol +82 -0
  340. package/contracts/type/Referral.sol +89 -0
  341. package/contracts/type/RiskId.sol +43 -0
  342. package/contracts/type/RoleId.sol +138 -0
  343. package/contracts/type/Seconds.sol +54 -0
  344. package/contracts/type/StateId.sol +110 -0
  345. package/contracts/type/Timestamp.sol +132 -0
  346. package/contracts/type/UFixed.sol +326 -0
  347. package/contracts/type/Version.sol +108 -0
  348. package/package.json +21 -6
  349. package/artifacts/contracts/components/Component.sol/Component.dbg.json +0 -4
  350. package/artifacts/contracts/components/Component.sol/Component.json +0 -179
  351. package/artifacts/contracts/components/Component.sol/InstanceLinked.dbg.json +0 -4
  352. package/artifacts/contracts/components/Component.sol/InstanceLinked.json +0 -35
  353. package/artifacts/contracts/components/IPool.sol/IPoolComponent.dbg.json +0 -4
  354. package/artifacts/contracts/components/IPool.sol/IPoolComponent.json +0 -179
  355. package/artifacts/contracts/components/IProduct.sol/IProductComponent.dbg.json +0 -4
  356. package/artifacts/contracts/components/IProduct.sol/IProductComponent.json +0 -192
  357. package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
  358. package/artifacts/contracts/components/Pool.sol/Pool.json +0 -195
  359. package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
  360. package/artifacts/contracts/components/Product.sol/Product.json +0 -213
  361. package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
  362. package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
  363. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
  364. package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
  365. package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
  366. package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
  367. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
  368. package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
  369. package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
  370. package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
  371. package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
  372. package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
  373. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
  374. package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
  375. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
  376. package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
  377. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
  378. package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
  379. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
  380. package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
  381. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
  382. package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
  383. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
  384. package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
  385. package/artifacts/contracts/instance/access/Access.sol/AccessModule.dbg.json +0 -4
  386. package/artifacts/contracts/instance/access/Access.sol/AccessModule.json +0 -400
  387. package/artifacts/contracts/instance/access/IAccess.sol/IAccess.dbg.json +0 -4
  388. package/artifacts/contracts/instance/access/IAccess.sol/IAccessCheckRole.dbg.json +0 -4
  389. package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.dbg.json +0 -4
  390. package/artifacts/contracts/instance/access/IAccess.sol/IAccessComponentTypeRoles.json +0 -50
  391. package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.dbg.json +0 -4
  392. package/artifacts/contracts/instance/access/IAccess.sol/IAccessModule.json +0 -336
  393. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
  394. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentModule.json +0 -327
  395. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.dbg.json +0 -4
  396. package/artifacts/contracts/instance/component/ComponentModule.sol/ComponentOwnerService.json +0 -105
  397. package/artifacts/contracts/instance/component/IComponent.sol/IComponent.dbg.json +0 -4
  398. package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.dbg.json +0 -4
  399. package/artifacts/contracts/instance/component/IComponent.sol/IComponentContract.json +0 -179
  400. package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.dbg.json +0 -4
  401. package/artifacts/contracts/instance/component/IComponent.sol/IComponentModule.json +0 -245
  402. package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.dbg.json +0 -4
  403. package/artifacts/contracts/instance/component/IComponent.sol/IComponentOwnerService.json +0 -94
  404. package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.dbg.json +0 -4
  405. package/artifacts/contracts/instance/component/IComponent.sol/IInstanceLinked.json +0 -24
  406. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
  407. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
  408. package/artifacts/contracts/instance/policy/IPolicy.sol/IPolicyModule.json +0 -231
  409. package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
  410. package/artifacts/contracts/instance/policy/PolicyModule.sol/PolicyModule.json +0 -231
  411. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPool.dbg.json +0 -4
  412. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
  413. package/artifacts/contracts/instance/pool/IPoolModule.sol/IPoolModule.json +0 -149
  414. package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
  415. package/artifacts/contracts/instance/pool/PoolModule.sol/PoolModule.json +0 -162
  416. package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.dbg.json +0 -4
  417. package/artifacts/contracts/instance/product/IProductService.sol/IProductModule.json +0 -75
  418. package/artifacts/contracts/instance/product/IProductService.sol/IProductService.dbg.json +0 -4
  419. package/artifacts/contracts/instance/product/IProductService.sol/IProductService.json +0 -114
  420. package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.dbg.json +0 -4
  421. package/artifacts/contracts/instance/product/ProductService.sol/ProductModule.json +0 -75
  422. package/artifacts/contracts/instance/product/ProductService.sol/ProductService.dbg.json +0 -4
  423. package/artifacts/contracts/instance/product/ProductService.sol/ProductService.json +0 -125
  424. package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
  425. package/artifacts/contracts/registry/IRegistry.sol/IOwnable.dbg.json +0 -4
  426. package/artifacts/contracts/registry/IRegistry.sol/IOwnable.json +0 -24
  427. package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.dbg.json +0 -4
  428. package/artifacts/contracts/registry/IRegistry.sol/IRegisterable.json +0 -166
  429. package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.dbg.json +0 -4
  430. package/artifacts/contracts/registry/IRegistry.sol/IRegistryLinked.json +0 -49
  431. package/artifacts/contracts/registry/Registry.sol/Registerable.dbg.json +0 -4
  432. package/artifacts/contracts/registry/Registry.sol/Registerable.json +0 -166
  433. package/artifacts/contracts/registry/Registry.sol/RegistryLinked.dbg.json +0 -4
  434. package/artifacts/contracts/registry/Registry.sol/RegistryLinked.json +0 -60
  435. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
  436. package/artifacts/contracts/types/ChainId.sol/ChainIdLib.json +0 -10
  437. package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
  438. package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -10
  439. package/contracts/components/Component.sol +0 -62
  440. package/contracts/components/IPool.sol +0 -9
  441. package/contracts/components/IProduct.sol +0 -11
  442. package/contracts/components/Pool.sol +0 -29
  443. package/contracts/components/Product.sol +0 -65
  444. package/contracts/experiment/errors/Require.sol +0 -33
  445. package/contracts/experiment/errors/Revert.sol +0 -39
  446. package/contracts/experiment/inheritance/A.sol +0 -56
  447. package/contracts/experiment/inheritance/B.sol +0 -23
  448. package/contracts/experiment/inheritance/C.sol +0 -28
  449. package/contracts/experiment/inheritance/IA.sol +0 -18
  450. package/contracts/experiment/inheritance/IB.sol +0 -9
  451. package/contracts/experiment/inheritance/IC.sol +0 -11
  452. package/contracts/experiment/types/TypeA.sol +0 -42
  453. package/contracts/experiment/types/TypeB.sol +0 -24
  454. package/contracts/instance/access/Access.sol +0 -218
  455. package/contracts/instance/access/IAccess.sol +0 -83
  456. package/contracts/instance/component/ComponentModule.sol +0 -246
  457. package/contracts/instance/component/IComponent.sol +0 -94
  458. package/contracts/instance/policy/IPolicy.sol +0 -66
  459. package/contracts/instance/policy/PolicyModule.sol +0 -106
  460. package/contracts/instance/pool/IPoolModule.sol +0 -40
  461. package/contracts/instance/pool/PoolModule.sol +0 -83
  462. package/contracts/instance/product/IProductService.sol +0 -45
  463. package/contracts/instance/product/ProductService.sol +0 -105
  464. package/contracts/registry/IChainNft.sol +0 -18
  465. package/contracts/types/ChainId.sol +0 -24
  466. package/contracts/types/NftId.sol +0 -25
@@ -0,0 +1,805 @@
1
+ {
2
+ "_format": "hh-sol-artifact-1",
3
+ "contractName": "StakingService",
4
+ "sourceName": "contracts/staking/StakingService.sol",
5
+ "abi": [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "authority",
11
+ "type": "address"
12
+ }
13
+ ],
14
+ "name": "AccessManagedInvalidAuthority",
15
+ "type": "error"
16
+ },
17
+ {
18
+ "inputs": [
19
+ {
20
+ "internalType": "address",
21
+ "name": "caller",
22
+ "type": "address"
23
+ },
24
+ {
25
+ "internalType": "uint32",
26
+ "name": "delay",
27
+ "type": "uint32"
28
+ }
29
+ ],
30
+ "name": "AccessManagedRequiredDelay",
31
+ "type": "error"
32
+ },
33
+ {
34
+ "inputs": [
35
+ {
36
+ "internalType": "address",
37
+ "name": "caller",
38
+ "type": "address"
39
+ }
40
+ ],
41
+ "name": "AccessManagedUnauthorized",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "NftId",
48
+ "name": "nftId",
49
+ "type": "uint96"
50
+ }
51
+ ],
52
+ "name": "ErrorNftOwnableAlreadyLinked",
53
+ "type": "error"
54
+ },
55
+ {
56
+ "inputs": [
57
+ {
58
+ "internalType": "address",
59
+ "name": "contractAddress",
60
+ "type": "address"
61
+ }
62
+ ],
63
+ "name": "ErrorNftOwnableContractNotRegistered",
64
+ "type": "error"
65
+ },
66
+ {
67
+ "inputs": [],
68
+ "name": "ErrorNftOwnableInitialOwnerZero",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [
73
+ {
74
+ "internalType": "address",
75
+ "name": "account",
76
+ "type": "address"
77
+ }
78
+ ],
79
+ "name": "ErrorNftOwnableNotOwner",
80
+ "type": "error"
81
+ },
82
+ {
83
+ "inputs": [
84
+ {
85
+ "internalType": "address",
86
+ "name": "registryAddress",
87
+ "type": "address"
88
+ }
89
+ ],
90
+ "name": "ErrorNotRegistry",
91
+ "type": "error"
92
+ },
93
+ {
94
+ "inputs": [],
95
+ "name": "ErrorServiceNotImplemented",
96
+ "type": "error"
97
+ },
98
+ {
99
+ "inputs": [
100
+ {
101
+ "internalType": "address",
102
+ "name": "stakingAddress",
103
+ "type": "address"
104
+ }
105
+ ],
106
+ "name": "ErrorStakingServiceNotStaking",
107
+ "type": "error"
108
+ },
109
+ {
110
+ "inputs": [
111
+ {
112
+ "internalType": "address",
113
+ "name": "stakingAddress",
114
+ "type": "address"
115
+ }
116
+ ],
117
+ "name": "ErrorStakingServiceNotSupportingIStaking",
118
+ "type": "error"
119
+ },
120
+ {
121
+ "inputs": [],
122
+ "name": "InvalidInitialization",
123
+ "type": "error"
124
+ },
125
+ {
126
+ "inputs": [],
127
+ "name": "NotInitializing",
128
+ "type": "error"
129
+ },
130
+ {
131
+ "anonymous": false,
132
+ "inputs": [
133
+ {
134
+ "indexed": false,
135
+ "internalType": "address",
136
+ "name": "authority",
137
+ "type": "address"
138
+ }
139
+ ],
140
+ "name": "AuthorityUpdated",
141
+ "type": "event"
142
+ },
143
+ {
144
+ "anonymous": false,
145
+ "inputs": [
146
+ {
147
+ "indexed": false,
148
+ "internalType": "uint64",
149
+ "name": "version",
150
+ "type": "uint64"
151
+ }
152
+ ],
153
+ "name": "Initialized",
154
+ "type": "event"
155
+ },
156
+ {
157
+ "inputs": [],
158
+ "name": "NFT_OWNABLE_STORAGE_LOCATION_V1",
159
+ "outputs": [
160
+ {
161
+ "internalType": "bytes32",
162
+ "name": "",
163
+ "type": "bytes32"
164
+ }
165
+ ],
166
+ "stateMutability": "view",
167
+ "type": "function"
168
+ },
169
+ {
170
+ "inputs": [],
171
+ "name": "REGISTERABLE_LOCATION_V1",
172
+ "outputs": [
173
+ {
174
+ "internalType": "bytes32",
175
+ "name": "",
176
+ "type": "bytes32"
177
+ }
178
+ ],
179
+ "stateMutability": "view",
180
+ "type": "function"
181
+ },
182
+ {
183
+ "inputs": [],
184
+ "name": "STAKING_SERVICE_LOCATION_V1",
185
+ "outputs": [
186
+ {
187
+ "internalType": "bytes32",
188
+ "name": "",
189
+ "type": "bytes32"
190
+ }
191
+ ],
192
+ "stateMutability": "view",
193
+ "type": "function"
194
+ },
195
+ {
196
+ "inputs": [],
197
+ "name": "authority",
198
+ "outputs": [
199
+ {
200
+ "internalType": "address",
201
+ "name": "",
202
+ "type": "address"
203
+ }
204
+ ],
205
+ "stateMutability": "view",
206
+ "type": "function"
207
+ },
208
+ {
209
+ "inputs": [
210
+ {
211
+ "internalType": "NftId",
212
+ "name": "stakeNftId",
213
+ "type": "uint96"
214
+ }
215
+ ],
216
+ "name": "close",
217
+ "outputs": [],
218
+ "stateMutability": "nonpayable",
219
+ "type": "function"
220
+ },
221
+ {
222
+ "inputs": [
223
+ {
224
+ "internalType": "NftId",
225
+ "name": "targetNftId",
226
+ "type": "uint96"
227
+ },
228
+ {
229
+ "internalType": "Amount",
230
+ "name": "amount",
231
+ "type": "uint96"
232
+ }
233
+ ],
234
+ "name": "create",
235
+ "outputs": [
236
+ {
237
+ "internalType": "NftId",
238
+ "name": "stakeNftId",
239
+ "type": "uint96"
240
+ }
241
+ ],
242
+ "stateMutability": "nonpayable",
243
+ "type": "function"
244
+ },
245
+ {
246
+ "inputs": [
247
+ {
248
+ "internalType": "NftId",
249
+ "name": "targetNftId",
250
+ "type": "uint96"
251
+ },
252
+ {
253
+ "internalType": "address",
254
+ "name": "token",
255
+ "type": "address"
256
+ },
257
+ {
258
+ "internalType": "Amount",
259
+ "name": "amount",
260
+ "type": "uint96"
261
+ }
262
+ ],
263
+ "name": "decreaseTotalValueLocked",
264
+ "outputs": [
265
+ {
266
+ "internalType": "Amount",
267
+ "name": "totalValueLocked",
268
+ "type": "uint96"
269
+ }
270
+ ],
271
+ "stateMutability": "nonpayable",
272
+ "type": "function"
273
+ },
274
+ {
275
+ "inputs": [],
276
+ "name": "getDomain",
277
+ "outputs": [
278
+ {
279
+ "internalType": "ObjectType",
280
+ "name": "",
281
+ "type": "uint8"
282
+ }
283
+ ],
284
+ "stateMutability": "pure",
285
+ "type": "function"
286
+ },
287
+ {
288
+ "inputs": [],
289
+ "name": "getInitialInfo",
290
+ "outputs": [
291
+ {
292
+ "components": [
293
+ {
294
+ "internalType": "NftId",
295
+ "name": "nftId",
296
+ "type": "uint96"
297
+ },
298
+ {
299
+ "internalType": "NftId",
300
+ "name": "parentNftId",
301
+ "type": "uint96"
302
+ },
303
+ {
304
+ "internalType": "ObjectType",
305
+ "name": "objectType",
306
+ "type": "uint8"
307
+ },
308
+ {
309
+ "internalType": "bool",
310
+ "name": "isInterceptor",
311
+ "type": "bool"
312
+ },
313
+ {
314
+ "internalType": "address",
315
+ "name": "objectAddress",
316
+ "type": "address"
317
+ },
318
+ {
319
+ "internalType": "address",
320
+ "name": "initialOwner",
321
+ "type": "address"
322
+ },
323
+ {
324
+ "internalType": "bytes",
325
+ "name": "data",
326
+ "type": "bytes"
327
+ }
328
+ ],
329
+ "internalType": "struct IRegistry.ObjectInfo",
330
+ "name": "info",
331
+ "type": "tuple"
332
+ }
333
+ ],
334
+ "stateMutability": "view",
335
+ "type": "function"
336
+ },
337
+ {
338
+ "inputs": [],
339
+ "name": "getNftId",
340
+ "outputs": [
341
+ {
342
+ "internalType": "NftId",
343
+ "name": "",
344
+ "type": "uint96"
345
+ }
346
+ ],
347
+ "stateMutability": "view",
348
+ "type": "function"
349
+ },
350
+ {
351
+ "inputs": [],
352
+ "name": "getOwner",
353
+ "outputs": [
354
+ {
355
+ "internalType": "address",
356
+ "name": "",
357
+ "type": "address"
358
+ }
359
+ ],
360
+ "stateMutability": "view",
361
+ "type": "function"
362
+ },
363
+ {
364
+ "inputs": [],
365
+ "name": "getRegistry",
366
+ "outputs": [
367
+ {
368
+ "internalType": "contract IRegistry",
369
+ "name": "",
370
+ "type": "address"
371
+ }
372
+ ],
373
+ "stateMutability": "view",
374
+ "type": "function"
375
+ },
376
+ {
377
+ "inputs": [],
378
+ "name": "getStaking",
379
+ "outputs": [
380
+ {
381
+ "internalType": "contract IStaking",
382
+ "name": "staking",
383
+ "type": "address"
384
+ }
385
+ ],
386
+ "stateMutability": "nonpayable",
387
+ "type": "function"
388
+ },
389
+ {
390
+ "inputs": [],
391
+ "name": "getVersion",
392
+ "outputs": [
393
+ {
394
+ "internalType": "Version",
395
+ "name": "",
396
+ "type": "uint24"
397
+ }
398
+ ],
399
+ "stateMutability": "pure",
400
+ "type": "function"
401
+ },
402
+ {
403
+ "inputs": [
404
+ {
405
+ "internalType": "NftId",
406
+ "name": "targetNftId",
407
+ "type": "uint96"
408
+ },
409
+ {
410
+ "internalType": "address",
411
+ "name": "token",
412
+ "type": "address"
413
+ },
414
+ {
415
+ "internalType": "Amount",
416
+ "name": "amount",
417
+ "type": "uint96"
418
+ }
419
+ ],
420
+ "name": "increaseTotalValueLocked",
421
+ "outputs": [
422
+ {
423
+ "internalType": "Amount",
424
+ "name": "totalValueLocked",
425
+ "type": "uint96"
426
+ }
427
+ ],
428
+ "stateMutability": "nonpayable",
429
+ "type": "function"
430
+ },
431
+ {
432
+ "inputs": [],
433
+ "name": "initializeERC165",
434
+ "outputs": [],
435
+ "stateMutability": "nonpayable",
436
+ "type": "function"
437
+ },
438
+ {
439
+ "inputs": [
440
+ {
441
+ "internalType": "address",
442
+ "name": "initialOwner",
443
+ "type": "address"
444
+ },
445
+ {
446
+ "internalType": "address",
447
+ "name": "registryAddress",
448
+ "type": "address"
449
+ }
450
+ ],
451
+ "name": "initializeNftOwnable",
452
+ "outputs": [],
453
+ "stateMutability": "nonpayable",
454
+ "type": "function"
455
+ },
456
+ {
457
+ "inputs": [
458
+ {
459
+ "internalType": "address",
460
+ "name": "registryAddress",
461
+ "type": "address"
462
+ },
463
+ {
464
+ "internalType": "NftId",
465
+ "name": "parentNftId",
466
+ "type": "uint96"
467
+ },
468
+ {
469
+ "internalType": "ObjectType",
470
+ "name": "objectType",
471
+ "type": "uint8"
472
+ },
473
+ {
474
+ "internalType": "bool",
475
+ "name": "isInterceptor",
476
+ "type": "bool"
477
+ },
478
+ {
479
+ "internalType": "address",
480
+ "name": "initialOwner",
481
+ "type": "address"
482
+ },
483
+ {
484
+ "internalType": "bytes",
485
+ "name": "registryData",
486
+ "type": "bytes"
487
+ }
488
+ ],
489
+ "name": "initializeRegisterable",
490
+ "outputs": [],
491
+ "stateMutability": "nonpayable",
492
+ "type": "function"
493
+ },
494
+ {
495
+ "inputs": [
496
+ {
497
+ "internalType": "address",
498
+ "name": "registryAddress",
499
+ "type": "address"
500
+ }
501
+ ],
502
+ "name": "initializeRegistryLinked",
503
+ "outputs": [],
504
+ "stateMutability": "nonpayable",
505
+ "type": "function"
506
+ },
507
+ {
508
+ "inputs": [
509
+ {
510
+ "internalType": "address",
511
+ "name": "registry",
512
+ "type": "address"
513
+ },
514
+ {
515
+ "internalType": "address",
516
+ "name": "authority",
517
+ "type": "address"
518
+ },
519
+ {
520
+ "internalType": "address",
521
+ "name": "initialOwner",
522
+ "type": "address"
523
+ }
524
+ ],
525
+ "name": "initializeService",
526
+ "outputs": [],
527
+ "stateMutability": "nonpayable",
528
+ "type": "function"
529
+ },
530
+ {
531
+ "inputs": [
532
+ {
533
+ "internalType": "address",
534
+ "name": "activatedBy",
535
+ "type": "address"
536
+ },
537
+ {
538
+ "internalType": "bytes",
539
+ "name": "data",
540
+ "type": "bytes"
541
+ }
542
+ ],
543
+ "name": "initializeVersionable",
544
+ "outputs": [],
545
+ "stateMutability": "nonpayable",
546
+ "type": "function"
547
+ },
548
+ {
549
+ "inputs": [],
550
+ "name": "isConsumingScheduledOp",
551
+ "outputs": [
552
+ {
553
+ "internalType": "bytes4",
554
+ "name": "",
555
+ "type": "bytes4"
556
+ }
557
+ ],
558
+ "stateMutability": "view",
559
+ "type": "function"
560
+ },
561
+ {
562
+ "inputs": [],
563
+ "name": "linkToRegisteredNftId",
564
+ "outputs": [],
565
+ "stateMutability": "nonpayable",
566
+ "type": "function"
567
+ },
568
+ {
569
+ "inputs": [
570
+ {
571
+ "internalType": "NftId",
572
+ "name": "stakeNftId",
573
+ "type": "uint96"
574
+ },
575
+ {
576
+ "internalType": "NftId",
577
+ "name": "newTargetNftId",
578
+ "type": "uint96"
579
+ }
580
+ ],
581
+ "name": "reStake",
582
+ "outputs": [
583
+ {
584
+ "internalType": "NftId",
585
+ "name": "newStakeNftId",
586
+ "type": "uint96"
587
+ },
588
+ {
589
+ "internalType": "Timestamp",
590
+ "name": "unlockedAt",
591
+ "type": "uint40"
592
+ }
593
+ ],
594
+ "stateMutability": "nonpayable",
595
+ "type": "function"
596
+ },
597
+ {
598
+ "inputs": [
599
+ {
600
+ "internalType": "bytes4",
601
+ "name": "interfaceId",
602
+ "type": "bytes4"
603
+ }
604
+ ],
605
+ "name": "registerInterface",
606
+ "outputs": [],
607
+ "stateMutability": "nonpayable",
608
+ "type": "function"
609
+ },
610
+ {
611
+ "inputs": [
612
+ {
613
+ "internalType": "address",
614
+ "name": "newAuthority",
615
+ "type": "address"
616
+ }
617
+ ],
618
+ "name": "setAuthority",
619
+ "outputs": [],
620
+ "stateMutability": "nonpayable",
621
+ "type": "function"
622
+ },
623
+ {
624
+ "inputs": [
625
+ {
626
+ "internalType": "NftId",
627
+ "name": "targetNftId",
628
+ "type": "uint96"
629
+ },
630
+ {
631
+ "internalType": "address",
632
+ "name": "token",
633
+ "type": "address"
634
+ },
635
+ {
636
+ "internalType": "Amount",
637
+ "name": "amount",
638
+ "type": "uint96"
639
+ }
640
+ ],
641
+ "name": "setTotalValueLocked",
642
+ "outputs": [],
643
+ "stateMutability": "nonpayable",
644
+ "type": "function"
645
+ },
646
+ {
647
+ "inputs": [
648
+ {
649
+ "internalType": "NftId",
650
+ "name": "stakeNftId",
651
+ "type": "uint96"
652
+ },
653
+ {
654
+ "internalType": "Amount",
655
+ "name": "amount",
656
+ "type": "uint96"
657
+ }
658
+ ],
659
+ "name": "stake",
660
+ "outputs": [],
661
+ "stateMutability": "nonpayable",
662
+ "type": "function"
663
+ },
664
+ {
665
+ "inputs": [
666
+ {
667
+ "internalType": "bytes4",
668
+ "name": "interfaceId",
669
+ "type": "bytes4"
670
+ }
671
+ ],
672
+ "name": "supportsInterface",
673
+ "outputs": [
674
+ {
675
+ "internalType": "bool",
676
+ "name": "",
677
+ "type": "bool"
678
+ }
679
+ ],
680
+ "stateMutability": "view",
681
+ "type": "function"
682
+ },
683
+ {
684
+ "inputs": [
685
+ {
686
+ "internalType": "NftId",
687
+ "name": "stakeNftId",
688
+ "type": "uint96"
689
+ },
690
+ {
691
+ "internalType": "Amount",
692
+ "name": "amount",
693
+ "type": "uint96"
694
+ }
695
+ ],
696
+ "name": "unstake",
697
+ "outputs": [],
698
+ "stateMutability": "nonpayable",
699
+ "type": "function"
700
+ },
701
+ {
702
+ "inputs": [
703
+ {
704
+ "internalType": "bytes",
705
+ "name": "data",
706
+ "type": "bytes"
707
+ }
708
+ ],
709
+ "name": "upgradeVersionable",
710
+ "outputs": [],
711
+ "stateMutability": "nonpayable",
712
+ "type": "function"
713
+ }
714
+ ],
715
+ "bytecode": "0x608060405234801561001057600080fd5b5061001961001e565b6100d0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161561006e5760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b03908116146100cd5780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6120bf80620000e06000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c80636c1e9dff1161010f578063943bd197116100a2578063d1c0d10d11610071578063d1c0d10d1461048e578063d44f8a4b146104ca578063ea48ce9b146104ca578063f7c34ee0146104e157600080fd5b8063943bd19714610439578063ada9652e1461044c578063b68d180914610461578063bf7e214f1461047057600080fd5b8063893d20e8116100de578063893d20e8146103d65780638cf81e46146103de5780638e32e979146104055780638fb360371461041857600080fd5b80636c1e9dff146102c0578063756b30de1461037d5780637a9e5e4b146103935780637b1391a6146103a657600080fd5b806326889b091161018757806349bb9e4b1161015657806349bb9e4b146103005780635ab1bd5314610313578063644c45e014610338578063675393bf1461036a57600080fd5b806326889b09146102c057806327bb7a33146102d2578063329d6e74146102e557806336fc697e146102f857600080fd5b80630fec111c116101c35780630fec111c1461025b578063138461e0146102705780631eff4b2214610278578063214cdb80146102ad57600080fd5b806301ffc9a7146101ea5780630aaba8e81461022c5780630d8e6e2c1461023f575b600080fd5b6102176101f8366004611824565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61023d61023a36600461186a565b50565b005b6102476104f4565b60405162ffffff9091168152602001610223565b61026361057e565b60405161022391906118d7565b61023d610742565b61029f7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610223565b61023d6102bb366004611824565b610949565b61023d6102ce366004611962565b5050565b61023d6102e0366004611ab8565b610976565b61023d6102f3366004611b50565b610a1b565b61023d610b68565b61023d61030e366004611b84565b610bae565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610223565b60008051602061202a833981519152546001600160601b03165b6040516001600160601b039091168152602001610223565b61023d610378366004611bd3565b610cad565b61035261038b366004611962565b600092915050565b61023d6103a1366004611bd3565b610db6565b7f6548005c3f4340f82f348c576c0ff69f7f529cadd5ad41f96aae61abceeaa300546001600160a01b0316610320565b610320610e50565b61029f7f6548005c3f4340f82f348c576c0ff69f7f529cadd5ad41f96aae61abceeaa30081565b61023d610413366004611bf0565b610f87565b6104206111bb565b6040516001600160e01b03199091168152602001610223565b61023d610447366004611c3b565b505050565b61029f60008051602061202a83398151915281565b604051602d8152602001610223565b60008051602061204a833981519152546001600160a01b0316610320565b6104a561049c366004611962565b50600091829150565b604080516001600160601b03909316835264ffffffffff909116602083015201610223565b6103526104d8366004611c3b565b60009392505050565b61023d6104ef366004611c7b565b6111f3565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af4158015610555573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105799190611ca9565b905090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915260007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e0016040528073__$94a2c899be079b00d952d0d84fffaa5c34$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610632573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106569190611cde565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a00161069e610e50565b6001600160a01b031681526020018260010180546106bb90611cfb565b80601f01602080910402602001604051908101604052809291908181526020018280546106e790611cfb565b80156107345780601f1061070957610100808354040283529160200191610734565b820191906000526020600020905b81548152906001019060200180831161071757829003601f168201915b505050505081525091505090565b600060008051602061202a83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156107b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d59190611d40565b156108065780546040516301ab8b6760e21b81526001600160601b0390911660048201526024015b60405180910390fd5b306108196001546001600160a01b031690565b60405163c3c5a54760e01b81526001600160a01b038381166004830152919091169063c3c5a54790602401602060405180830381865afa158015610861573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108859190611d40565b6108ad5760405163b9304b0d60e01b81526001600160a01b03821660048201526024016107fd565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038381166004830152919091169063d272ac1e90602401602060405180830381865afa158015610901573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109259190611cde565b82546bffffffffffffffffffffffff19166001600160601b03919091161790915550565b61095161126a565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b61097e61126a565b61098882876111f3565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa301610a118382611dab565b5050505050505050565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c610a3d6104f4565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610a7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa19190611e6a565b60008051602061206a8339815191528054600160401b900460ff1680610ad4575080546001600160401b03808416911610155b15610af25760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610b1c836112a3565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b610b7061126a565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b60008051602061206a8339815191528054600160401b810460ff1615906001600160401b0316600081158015610be15750825b90506000826001600160401b03166001148015610bfd5750303b155b905081158015610c0b575080155b15610c295760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610c5357845460ff60401b1916600160401b1785555b610c5d87876112ab565b8315610ca457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b50505050505050565b610cb561126a565b806001600160a01b03163b600003610ceb5760405163fdeac91f60e01b81526001600160a01b03821660048201526024016107fd565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263256dc24d60e21b60048201526301ffc9a790602401602060405180830381865afa925050508015610d65575060408051601f3d908101601f19168201909252610d6291810190611d40565b60015b610d8d5760405163fdeac91f60e01b81526001600160a01b03821660048201526024016107fd565b806102ce5760405163fdeac91f60e01b81526001600160a01b03831660048201526024016107fd565b33610dd660008051602061204a833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b031614610e115760405162d1953b60e31b81526001600160a01b03821660048201526024016107fd565b816001600160a01b03163b600003610e47576040516361798f2f60e11b81526001600160a01b03831660048201526024016107fd565b6102ce82611411565b60008060008051602061202a83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015610ec0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ee49190611d40565b15610f71576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015610f47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611e9e565b91505090565b54600160601b90046001600160a01b0316919050565b610f8f61126a565b61100f83846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff59190611cde565b603c60008560405180602001604052806000815250610976565b6001600160a01b0382161561102c5761102782611472565b61119b565b60006110406001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156110a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110c49190611ec6565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015611109573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112d9190611e9e565b9050611199816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611170573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111949190611e9e565b611472565b505b6111ab634a531f3360e01b610949565b61044763b68d180960e01b610949565b60008051602061204a833981519152805460009190600160a01b900460ff166111e5576000610f6b565b638fb3603760e01b91505090565b6111fb61126a565b61120481610cad565b61120c610b68565b6001600160a01b0382166112335760405163f17ef42d60e01b815260040160405180910390fd5b5060008051602061202a83398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b60008051602061206a83398151915254600160401b900460ff166112a157604051631afcd79f60e31b815260040160405180910390fd5b565b6101e561126a565b60008051602061206a8339815191528054600160401b810460ff1615906001600160401b03166000811580156112de5750825b90506000826001600160401b031660011480156112fa5750303b155b905081158015611308575080155b156113265760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561135057845460ff60401b1916600160401b1785555b600080878060200190518101906113679190611ee3565b915091506113778260008b610f87565b7f6548005c3f4340f82f348c576c0ff69f7f529cadd5ad41f96aae61abceeaa3006113a182611483565b81546001600160a01b0319166001600160a01b03919091161781556113cc630d6e52cb60e21b610949565b5050508315610ca457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602001610c9b565b60008051602061204a83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b61147a61126a565b61023a81611700565b6000806114986001546001600160a01b031690565b6040516308b09a5f60e41b81526001600160a01b0385811660048301529190911690638b09a5f090602401600060405180830381865afa1580156114e0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115089190810190611f57565b80516040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015611566573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061158a9190611d40565b156115db576115ab816040015161159f602d90565b60ff9081169116141590565b156115d457604051637dbf3cff60e11b81526001600160a01b03841660048201526024016107fd565b5090919050565b6040516301ffc9a760e01b81526339dee94960e01b60048201526001600160a01b038416906301ffc9a790602401602060405180830381865afa158015611626573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061164a9190611d40565b61167257604051632bf4d8e560e21b81526001600160a01b03841660048201526024016107fd565b3361167d6028611711565b60405163c4c79d8b60e01b81526001600160a01b0386811660048301528381166024830152919091169063c4c79d8b906044016000604051808303816000875af11580156116cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116f79190810190611f57565b50929392505050565b61170861126a565b61023a81611411565b60006117256001546001600160a01b031690565b6001600160a01b031663d39e60438361173c6104f4565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af4158015611791573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b59190611ec6565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156117fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061181e9190611e9e565b92915050565b60006020828403121561183657600080fd5b81356001600160e01b03198116811461184e57600080fd5b9392505050565b6001600160601b038116811461023a57600080fd5b60006020828403121561187c57600080fd5b813561184e81611855565b60005b838110156118a257818101518382015260200161188a565b50506000910152565b600081518084526118c3816020860160208601611887565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a083015161194060c08401826001600160a01b03169052565b5060c083015160e08084015261195a6101008401826118ab565b949350505050565b6000806040838503121561197557600080fd5b823561198081611855565b9150602083013561199081611855565b809150509250929050565b6001600160a01b038116811461023a57600080fd5b60ff8116811461023a57600080fd5b801515811461023a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715611a0557611a056119cd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611a3357611a336119cd565b604052919050565b60006001600160401b03821115611a5457611a546119cd565b50601f01601f191660200190565b600082601f830112611a7357600080fd5b8135611a86611a8182611a3b565b611a0b565b818152846020838601011115611a9b57600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c08789031215611ad157600080fd5b8635611adc8161199b565b95506020870135611aec81611855565b94506040870135611afc816119b0565b93506060870135611b0c816119bf565b92506080870135611b1c8161199b565b915060a08701356001600160401b03811115611b3757600080fd5b611b4389828a01611a62565b9150509295509295509295565b600060208284031215611b6257600080fd5b81356001600160401b03811115611b7857600080fd5b61195a84828501611a62565b60008060408385031215611b9757600080fd5b8235611ba28161199b565b915060208301356001600160401b03811115611bbd57600080fd5b611bc985828601611a62565b9150509250929050565b600060208284031215611be557600080fd5b813561184e8161199b565b600080600060608486031215611c0557600080fd5b8335611c108161199b565b92506020840135611c208161199b565b91506040840135611c308161199b565b809150509250925092565b600080600060608486031215611c5057600080fd5b8335611c5b81611855565b92506020840135611c6b8161199b565b91506040840135611c3081611855565b60008060408385031215611c8e57600080fd5b8235611c998161199b565b915060208301356119908161199b565b600060208284031215611cbb57600080fd5b815162ffffff8116811461184e57600080fd5b8051611cd981611855565b919050565b600060208284031215611cf057600080fd5b815161184e81611855565b600181811c90821680611d0f57607f821691505b602082108103611d2f57634e487b7160e01b600052602260045260246000fd5b50919050565b8051611cd9816119bf565b600060208284031215611d5257600080fd5b815161184e816119bf565b601f82111561044757600081815260208120601f850160051c81016020861015611d845750805b601f850160051c820191505b81811015611da357828155600101611d90565b505050505050565b81516001600160401b03811115611dc457611dc46119cd565b611dd881611dd28454611cfb565b84611d5d565b602080601f831160018114611e0d5760008415611df55750858301515b600019600386901b1c1916600185901b178555611da3565b600085815260208120601f198616915b82811015611e3c57888601518255948401946001909101908401611e1d565b5085821015611e5a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215611e7c57600080fd5b81516001600160401b038116811461184e57600080fd5b8051611cd98161199b565b600060208284031215611eb057600080fd5b815161184e8161199b565b8051611cd9816119b0565b600060208284031215611ed857600080fd5b815161184e816119b0565b60008060408385031215611ef657600080fd5b8251611f018161199b565b60208401519092506119908161199b565b600082601f830112611f2357600080fd5b8151611f31611a8182611a3b565b818152846020838601011115611f4657600080fd5b61195a826020830160208701611887565b600060208284031215611f6957600080fd5b81516001600160401b0380821115611f8057600080fd5b9083019060e08286031215611f9457600080fd5b611f9c6119e3565b611fa583611cce565b8152611fb360208401611cce565b6020820152611fc460408401611ebb565b6040820152611fd560608401611d35565b6060820152611fe660808401611e93565b6080820152611ff760a08401611e93565b60a082015260c08301518281111561200e57600080fd5b61201a87828601611f12565b60c0830152509594505050505056fe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220c70dcd284409bc3e745980785e2068b5f1f710e5819c12907e9d4a528ce3bb3564736f6c63430008140033",
716
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c80636c1e9dff1161010f578063943bd197116100a2578063d1c0d10d11610071578063d1c0d10d1461048e578063d44f8a4b146104ca578063ea48ce9b146104ca578063f7c34ee0146104e157600080fd5b8063943bd19714610439578063ada9652e1461044c578063b68d180914610461578063bf7e214f1461047057600080fd5b8063893d20e8116100de578063893d20e8146103d65780638cf81e46146103de5780638e32e979146104055780638fb360371461041857600080fd5b80636c1e9dff146102c0578063756b30de1461037d5780637a9e5e4b146103935780637b1391a6146103a657600080fd5b806326889b091161018757806349bb9e4b1161015657806349bb9e4b146103005780635ab1bd5314610313578063644c45e014610338578063675393bf1461036a57600080fd5b806326889b09146102c057806327bb7a33146102d2578063329d6e74146102e557806336fc697e146102f857600080fd5b80630fec111c116101c35780630fec111c1461025b578063138461e0146102705780631eff4b2214610278578063214cdb80146102ad57600080fd5b806301ffc9a7146101ea5780630aaba8e81461022c5780630d8e6e2c1461023f575b600080fd5b6102176101f8366004611824565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61023d61023a36600461186a565b50565b005b6102476104f4565b60405162ffffff9091168152602001610223565b61026361057e565b60405161022391906118d7565b61023d610742565b61029f7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610223565b61023d6102bb366004611824565b610949565b61023d6102ce366004611962565b5050565b61023d6102e0366004611ab8565b610976565b61023d6102f3366004611b50565b610a1b565b61023d610b68565b61023d61030e366004611b84565b610bae565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610223565b60008051602061202a833981519152546001600160601b03165b6040516001600160601b039091168152602001610223565b61023d610378366004611bd3565b610cad565b61035261038b366004611962565b600092915050565b61023d6103a1366004611bd3565b610db6565b7f6548005c3f4340f82f348c576c0ff69f7f529cadd5ad41f96aae61abceeaa300546001600160a01b0316610320565b610320610e50565b61029f7f6548005c3f4340f82f348c576c0ff69f7f529cadd5ad41f96aae61abceeaa30081565b61023d610413366004611bf0565b610f87565b6104206111bb565b6040516001600160e01b03199091168152602001610223565b61023d610447366004611c3b565b505050565b61029f60008051602061202a83398151915281565b604051602d8152602001610223565b60008051602061204a833981519152546001600160a01b0316610320565b6104a561049c366004611962565b50600091829150565b604080516001600160601b03909316835264ffffffffff909116602083015201610223565b6103526104d8366004611c3b565b60009392505050565b61023d6104ef366004611c7b565b6111f3565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af4158015610555573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105799190611ca9565b905090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915260007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e0016040528073__$94a2c899be079b00d952d0d84fffaa5c34$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610632573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106569190611cde565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a00161069e610e50565b6001600160a01b031681526020018260010180546106bb90611cfb565b80601f01602080910402602001604051908101604052809291908181526020018280546106e790611cfb565b80156107345780601f1061070957610100808354040283529160200191610734565b820191906000526020600020905b81548152906001019060200180831161071757829003601f168201915b505050505081525091505090565b600060008051602061202a83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156107b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107d59190611d40565b156108065780546040516301ab8b6760e21b81526001600160601b0390911660048201526024015b60405180910390fd5b306108196001546001600160a01b031690565b60405163c3c5a54760e01b81526001600160a01b038381166004830152919091169063c3c5a54790602401602060405180830381865afa158015610861573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108859190611d40565b6108ad5760405163b9304b0d60e01b81526001600160a01b03821660048201526024016107fd565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038381166004830152919091169063d272ac1e90602401602060405180830381865afa158015610901573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109259190611cde565b82546bffffffffffffffffffffffff19166001600160601b03919091161790915550565b61095161126a565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b61097e61126a565b61098882876111f3565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa301610a118382611dab565b5050505050505050565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c610a3d6104f4565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610a7d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610aa19190611e6a565b60008051602061206a8339815191528054600160401b900460ff1680610ad4575080546001600160401b03808416911610155b15610af25760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610b1c836112a3565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b610b7061126a565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b60008051602061206a8339815191528054600160401b810460ff1615906001600160401b0316600081158015610be15750825b90506000826001600160401b03166001148015610bfd5750303b155b905081158015610c0b575080155b15610c295760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610c5357845460ff60401b1916600160401b1785555b610c5d87876112ab565b8315610ca457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b50505050505050565b610cb561126a565b806001600160a01b03163b600003610ceb5760405163fdeac91f60e01b81526001600160a01b03821660048201526024016107fd565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263256dc24d60e21b60048201526301ffc9a790602401602060405180830381865afa925050508015610d65575060408051601f3d908101601f19168201909252610d6291810190611d40565b60015b610d8d5760405163fdeac91f60e01b81526001600160a01b03821660048201526024016107fd565b806102ce5760405163fdeac91f60e01b81526001600160a01b03831660048201526024016107fd565b33610dd660008051602061204a833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b031614610e115760405162d1953b60e31b81526001600160a01b03821660048201526024016107fd565b816001600160a01b03163b600003610e47576040516361798f2f60e11b81526001600160a01b03831660048201526024016107fd565b6102ce82611411565b60008060008051602061202a83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015610ec0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ee49190611d40565b15610f71576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015610f47573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f6b9190611e9e565b91505090565b54600160601b90046001600160a01b0316919050565b610f8f61126a565b61100f83846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610fd1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ff59190611cde565b603c60008560405180602001604052806000815250610976565b6001600160a01b0382161561102c5761102782611472565b61119b565b60006110406001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156110a0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110c49190611ec6565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015611109573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061112d9190611e9e565b9050611199816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611170573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111949190611e9e565b611472565b505b6111ab634a531f3360e01b610949565b61044763b68d180960e01b610949565b60008051602061204a833981519152805460009190600160a01b900460ff166111e5576000610f6b565b638fb3603760e01b91505090565b6111fb61126a565b61120481610cad565b61120c610b68565b6001600160a01b0382166112335760405163f17ef42d60e01b815260040160405180910390fd5b5060008051602061202a83398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b60008051602061206a83398151915254600160401b900460ff166112a157604051631afcd79f60e31b815260040160405180910390fd5b565b6101e561126a565b60008051602061206a8339815191528054600160401b810460ff1615906001600160401b03166000811580156112de5750825b90506000826001600160401b031660011480156112fa5750303b155b905081158015611308575080155b156113265760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561135057845460ff60401b1916600160401b1785555b600080878060200190518101906113679190611ee3565b915091506113778260008b610f87565b7f6548005c3f4340f82f348c576c0ff69f7f529cadd5ad41f96aae61abceeaa3006113a182611483565b81546001600160a01b0319166001600160a01b03919091161781556113cc630d6e52cb60e21b610949565b5050508315610ca457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602001610c9b565b60008051602061204a83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b61147a61126a565b61023a81611700565b6000806114986001546001600160a01b031690565b6040516308b09a5f60e41b81526001600160a01b0385811660048301529190911690638b09a5f090602401600060405180830381865afa1580156114e0573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526115089190810190611f57565b80516040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015611566573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061158a9190611d40565b156115db576115ab816040015161159f602d90565b60ff9081169116141590565b156115d457604051637dbf3cff60e11b81526001600160a01b03841660048201526024016107fd565b5090919050565b6040516301ffc9a760e01b81526339dee94960e01b60048201526001600160a01b038416906301ffc9a790602401602060405180830381865afa158015611626573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061164a9190611d40565b61167257604051632bf4d8e560e21b81526001600160a01b03841660048201526024016107fd565b3361167d6028611711565b60405163c4c79d8b60e01b81526001600160a01b0386811660048301528381166024830152919091169063c4c79d8b906044016000604051808303816000875af11580156116cf573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526116f79190810190611f57565b50929392505050565b61170861126a565b61023a81611411565b60006117256001546001600160a01b031690565b6001600160a01b031663d39e60438361173c6104f4565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af4158015611791573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117b59190611ec6565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156117fa573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061181e9190611e9e565b92915050565b60006020828403121561183657600080fd5b81356001600160e01b03198116811461184e57600080fd5b9392505050565b6001600160601b038116811461023a57600080fd5b60006020828403121561187c57600080fd5b813561184e81611855565b60005b838110156118a257818101518382015260200161188a565b50506000910152565b600081518084526118c3816020860160208601611887565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a083015161194060c08401826001600160a01b03169052565b5060c083015160e08084015261195a6101008401826118ab565b949350505050565b6000806040838503121561197557600080fd5b823561198081611855565b9150602083013561199081611855565b809150509250929050565b6001600160a01b038116811461023a57600080fd5b60ff8116811461023a57600080fd5b801515811461023a57600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715611a0557611a056119cd565b60405290565b604051601f8201601f191681016001600160401b0381118282101715611a3357611a336119cd565b604052919050565b60006001600160401b03821115611a5457611a546119cd565b50601f01601f191660200190565b600082601f830112611a7357600080fd5b8135611a86611a8182611a3b565b611a0b565b818152846020838601011115611a9b57600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c08789031215611ad157600080fd5b8635611adc8161199b565b95506020870135611aec81611855565b94506040870135611afc816119b0565b93506060870135611b0c816119bf565b92506080870135611b1c8161199b565b915060a08701356001600160401b03811115611b3757600080fd5b611b4389828a01611a62565b9150509295509295509295565b600060208284031215611b6257600080fd5b81356001600160401b03811115611b7857600080fd5b61195a84828501611a62565b60008060408385031215611b9757600080fd5b8235611ba28161199b565b915060208301356001600160401b03811115611bbd57600080fd5b611bc985828601611a62565b9150509250929050565b600060208284031215611be557600080fd5b813561184e8161199b565b600080600060608486031215611c0557600080fd5b8335611c108161199b565b92506020840135611c208161199b565b91506040840135611c308161199b565b809150509250925092565b600080600060608486031215611c5057600080fd5b8335611c5b81611855565b92506020840135611c6b8161199b565b91506040840135611c3081611855565b60008060408385031215611c8e57600080fd5b8235611c998161199b565b915060208301356119908161199b565b600060208284031215611cbb57600080fd5b815162ffffff8116811461184e57600080fd5b8051611cd981611855565b919050565b600060208284031215611cf057600080fd5b815161184e81611855565b600181811c90821680611d0f57607f821691505b602082108103611d2f57634e487b7160e01b600052602260045260246000fd5b50919050565b8051611cd9816119bf565b600060208284031215611d5257600080fd5b815161184e816119bf565b601f82111561044757600081815260208120601f850160051c81016020861015611d845750805b601f850160051c820191505b81811015611da357828155600101611d90565b505050505050565b81516001600160401b03811115611dc457611dc46119cd565b611dd881611dd28454611cfb565b84611d5d565b602080601f831160018114611e0d5760008415611df55750858301515b600019600386901b1c1916600185901b178555611da3565b600085815260208120601f198616915b82811015611e3c57888601518255948401946001909101908401611e1d565b5085821015611e5a5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215611e7c57600080fd5b81516001600160401b038116811461184e57600080fd5b8051611cd98161199b565b600060208284031215611eb057600080fd5b815161184e8161199b565b8051611cd9816119b0565b600060208284031215611ed857600080fd5b815161184e816119b0565b60008060408385031215611ef657600080fd5b8251611f018161199b565b60208401519092506119908161199b565b600082601f830112611f2357600080fd5b8151611f31611a8182611a3b565b818152846020838601011115611f4657600080fd5b61195a826020830160208701611887565b600060208284031215611f6957600080fd5b81516001600160401b0380821115611f8057600080fd5b9083019060e08286031215611f9457600080fd5b611f9c6119e3565b611fa583611cce565b8152611fb360208401611cce565b6020820152611fc460408401611ebb565b6040820152611fd560608401611d35565b6060820152611fe660808401611e93565b6080820152611ff760a08401611e93565b60a082015260c08301518281111561200e57600080fd5b61201a87828601611f12565b60c0830152509594505050505056fe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220c70dcd284409bc3e745980785e2068b5f1f710e5819c12907e9d4a528ce3bb3564736f6c63430008140033",
717
+ "linkReferences": {
718
+ "contracts/type/NftId.sol": {
719
+ "NftIdLib": [
720
+ {
721
+ "length": 20,
722
+ "start": 1739
723
+ },
724
+ {
725
+ "length": 20,
726
+ "start": 2135
727
+ },
728
+ {
729
+ "length": 20,
730
+ "start": 3942
731
+ },
732
+ {
733
+ "length": 20,
734
+ "start": 5644
735
+ }
736
+ ]
737
+ },
738
+ "contracts/type/Version.sol": {
739
+ "VersionLib": [
740
+ {
741
+ "length": 20,
742
+ "start": 1531
743
+ },
744
+ {
745
+ "length": 20,
746
+ "start": 2813
747
+ },
748
+ {
749
+ "length": 20,
750
+ "start": 6199
751
+ }
752
+ ],
753
+ "VersionPartLib": [
754
+ {
755
+ "length": 20,
756
+ "start": 4422
757
+ }
758
+ ]
759
+ }
760
+ },
761
+ "deployedLinkReferences": {
762
+ "contracts/type/NftId.sol": {
763
+ "NftIdLib": [
764
+ {
765
+ "length": 20,
766
+ "start": 1515
767
+ },
768
+ {
769
+ "length": 20,
770
+ "start": 1911
771
+ },
772
+ {
773
+ "length": 20,
774
+ "start": 3718
775
+ },
776
+ {
777
+ "length": 20,
778
+ "start": 5420
779
+ }
780
+ ]
781
+ },
782
+ "contracts/type/Version.sol": {
783
+ "VersionLib": [
784
+ {
785
+ "length": 20,
786
+ "start": 1307
787
+ },
788
+ {
789
+ "length": 20,
790
+ "start": 2589
791
+ },
792
+ {
793
+ "length": 20,
794
+ "start": 5975
795
+ }
796
+ ],
797
+ "VersionPartLib": [
798
+ {
799
+ "length": 20,
800
+ "start": 4198
801
+ }
802
+ ]
803
+ }
804
+ }
805
+ }