@etherisc/gif-next 0.0.2-fd4931b-974 → 0.0.2-fd4ee14-428

Sign up to get free protection for your applications and to get access to all the features.
Files changed (393) hide show
  1. package/README.md +2 -1
  2. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  3. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +19 -13
  4. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  5. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +115 -80
  6. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  7. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +81 -54
  8. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  9. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +11 -5
  10. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  11. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +20 -1
  12. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
  13. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +32 -101
  14. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  15. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +83 -71
  16. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  17. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +121 -12
  18. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  19. package/artifacts/contracts/instance/Instance.sol/Instance.json +105 -85
  20. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
  21. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +708 -0
  22. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +1 -1
  23. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +126 -30
  24. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  25. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +195 -64
  26. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  27. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +206 -49
  28. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  29. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +74 -31
  30. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  31. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +248 -118
  32. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  33. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  34. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  35. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +0 -53
  36. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
  37. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
  38. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +1 -1
  39. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +2 -71
  40. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  41. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +8 -116
  42. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  43. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  44. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  45. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  46. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  47. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  48. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
  49. package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +10 -0
  50. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
  51. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +759 -0
  52. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
  53. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
  54. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
  55. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +1146 -0
  56. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
  57. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +1034 -0
  58. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
  59. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +730 -0
  60. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  61. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +91 -48
  62. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  63. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +69 -38
  64. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  65. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +20 -1
  66. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  67. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +11 -5
  68. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  69. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +35 -1
  70. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  71. package/artifacts/contracts/pool/Pool.sol/Pool.json +18 -12
  72. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  73. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +84 -42
  74. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  75. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +58 -35
  76. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  77. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +79 -36
  78. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  79. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +63 -32
  80. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  81. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +119 -68
  82. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  83. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +83 -48
  84. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  85. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +20 -1
  86. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  87. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +20 -1
  88. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  89. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +20 -1
  90. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  91. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +20 -1
  92. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  93. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +11 -5
  94. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +1 -1
  95. package/artifacts/contracts/product/IProductService.sol/IProductService.json +20 -1
  96. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  97. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +97 -46
  98. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  99. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +72 -37
  100. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  101. package/artifacts/contracts/product/PricingService.sol/PricingService.json +105 -62
  102. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  103. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +76 -45
  104. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  105. package/artifacts/contracts/product/Product.sol/Product.json +18 -12
  106. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +1 -1
  107. package/artifacts/contracts/product/ProductService.sol/ProductService.json +61 -26
  108. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
  109. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +54 -27
  110. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  111. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  112. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  113. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +82 -45
  114. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  115. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +31 -1
  116. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
  117. package/artifacts/contracts/registry/IServiceAuthorization.sol/IServiceAuthorization.json +129 -0
  118. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  119. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  120. package/artifacts/contracts/registry/Registry.sol/Registry.json +254 -97
  121. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
  122. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1901 -0
  123. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  124. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +69 -15
  125. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  126. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +46 -30
  127. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
  128. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +288 -182
  129. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
  130. package/artifacts/contracts/registry/ServiceAuthorization.sol/ServiceAuthorization.json +171 -0
  131. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
  132. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +187 -0
  133. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  134. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +46 -177
  135. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
  136. package/artifacts/contracts/shared/AccessAdmin.sol/AccessAdmin.json +1559 -0
  137. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
  138. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
  139. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
  140. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1747 -0
  141. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
  142. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1760 -0
  143. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
  144. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1838 -0
  145. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
  146. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1856 -0
  147. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  148. package/artifacts/contracts/shared/Component.sol/Component.json +18 -12
  149. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  150. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +120 -70
  151. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  152. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +80 -49
  153. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  154. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +20 -1
  155. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
  156. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +2 -2
  157. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
  158. package/artifacts/contracts/shared/IAccessAdmin.sol/IAccessAdmin.json +1189 -0
  159. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
  160. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
  161. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
  162. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1600 -0
  163. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  164. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +11 -5
  165. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  166. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +27 -1
  167. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  168. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +11 -5
  169. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  170. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +0 -10
  171. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  172. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  173. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +7 -1
  174. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  175. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  176. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +7 -1
  177. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  178. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  179. package/artifacts/contracts/shared/IService.sol/IService.json +20 -1
  180. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
  181. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
  182. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
  183. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  184. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +18 -12
  185. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  186. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +10 -20
  187. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  188. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +6 -6
  189. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +1 -1
  190. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +27 -35
  191. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  192. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +13 -7
  193. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  194. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  195. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  196. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +35 -16
  197. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  198. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +15 -9
  199. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  200. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  201. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  202. package/artifacts/contracts/shared/Service.sol/Service.json +20 -1
  203. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  204. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
  205. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  206. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
  207. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
  208. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  209. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +247 -579
  210. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  211. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +471 -62
  212. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
  213. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +460 -0
  214. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  215. package/artifacts/contracts/staking/Staking.sol/Staking.json +303 -798
  216. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  217. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +81 -164
  218. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  219. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +368 -39
  220. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  221. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +503 -120
  222. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  223. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +67 -43
  224. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
  225. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2261 -0
  226. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  227. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +281 -18
  228. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  229. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
  230. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  231. package/artifacts/contracts/type/Amount.sol/AmountLib.json +68 -4
  232. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  233. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +40 -2
  234. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  235. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  236. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  237. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  238. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  239. package/artifacts/contracts/type/Fee.sol/FeeLib.json +2 -2
  240. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  241. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  242. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  243. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +28 -4
  244. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  245. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  246. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  247. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +96 -2
  248. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  249. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  250. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  251. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +4 -4
  252. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
  253. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
  254. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  255. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +2 -2
  256. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  257. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +114 -4
  258. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  259. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +52 -2
  260. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
  261. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
  262. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
  263. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
  264. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  265. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
  266. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
  267. package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
  268. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  269. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +17 -4
  270. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  271. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  272. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  273. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  274. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  275. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +2 -2
  276. package/contracts/distribution/Distribution.sol +2 -4
  277. package/contracts/distribution/DistributionService.sol +5 -6
  278. package/contracts/distribution/DistributionServiceManager.sol +0 -12
  279. package/contracts/distribution/IDistributionComponent.sol +1 -1
  280. package/contracts/distribution/IDistributionService.sol +1 -1
  281. package/contracts/instance/IInstance.sol +21 -11
  282. package/contracts/instance/IInstanceService.sol +26 -12
  283. package/contracts/instance/Instance.sol +84 -49
  284. package/contracts/instance/InstanceAdmin.sol +331 -0
  285. package/contracts/instance/InstanceAuthorizationsLib.sol +192 -151
  286. package/contracts/instance/InstanceReader.sol +32 -6
  287. package/contracts/instance/InstanceService.sol +119 -47
  288. package/contracts/instance/InstanceStore.sol +29 -20
  289. package/contracts/instance/base/BalanceStore.sol +11 -6
  290. package/contracts/instance/base/Cloneable.sol +2 -25
  291. package/contracts/instance/base/ObjectCounter.sol +21 -0
  292. package/contracts/instance/base/ObjectManager.sol +1 -3
  293. package/contracts/instance/module/IAccess.sol +2 -10
  294. package/contracts/oracle/IOracle.sol +20 -0
  295. package/contracts/oracle/IOracleComponent.sol +32 -0
  296. package/contracts/oracle/IOracleService.sol +65 -0
  297. package/contracts/oracle/Oracle.sol +145 -0
  298. package/contracts/oracle/OracleService.sol +278 -0
  299. package/contracts/oracle/OracleServiceManager.sol +42 -0
  300. package/contracts/pool/BundleService.sol +20 -20
  301. package/contracts/pool/IBundleService.sol +1 -1
  302. package/contracts/pool/IPoolService.sol +4 -1
  303. package/contracts/pool/PoolService.sol +38 -10
  304. package/contracts/product/ApplicationService.sol +6 -6
  305. package/contracts/product/ClaimService.sol +12 -7
  306. package/contracts/product/IApplicationService.sol +1 -1
  307. package/contracts/product/IClaimService.sol +7 -1
  308. package/contracts/product/IPolicyService.sol +1 -1
  309. package/contracts/product/IPricingService.sol +1 -1
  310. package/contracts/product/IProductService.sol +1 -1
  311. package/contracts/product/PolicyService.sol +9 -7
  312. package/contracts/product/PricingService.sol +8 -9
  313. package/contracts/product/Product.sol +1 -1
  314. package/contracts/product/ProductService.sol +6 -6
  315. package/contracts/registry/ChainNft.sol +1 -0
  316. package/contracts/registry/IRegistry.sol +20 -14
  317. package/contracts/registry/IRegistryService.sol +1 -0
  318. package/contracts/registry/IServiceAuthorization.sol +35 -0
  319. package/contracts/registry/Registry.sol +85 -66
  320. package/contracts/registry/RegistryAdmin.sol +333 -0
  321. package/contracts/registry/RegistryService.sol +8 -70
  322. package/contracts/registry/RegistryServiceManager.sol +1 -20
  323. package/contracts/registry/ReleaseManager.sol +218 -221
  324. package/contracts/registry/ServiceAuthorization.sol +86 -0
  325. package/contracts/registry/ServiceAuthorizationV3.sol +200 -0
  326. package/contracts/registry/TokenRegistry.sol +56 -60
  327. package/contracts/shared/AccessAdmin.sol +759 -0
  328. package/contracts/shared/AccessManagerCustom.sol +741 -0
  329. package/contracts/shared/AccessManagerExtended.sol +481 -0
  330. package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
  331. package/contracts/shared/AccessManagerExtendedWithDisable.sol +137 -0
  332. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
  333. package/contracts/shared/Component.sol +8 -13
  334. package/contracts/shared/ComponentService.sol +39 -17
  335. package/contracts/shared/ComponentVerifyingService.sol +13 -7
  336. package/contracts/shared/ERC165.sol +1 -1
  337. package/contracts/shared/IAccessAdmin.sol +168 -0
  338. package/contracts/shared/IAccessManagerExtended.sol +74 -0
  339. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +18 -0
  340. package/contracts/shared/IComponent.sol +3 -7
  341. package/contracts/shared/IComponentService.sol +11 -0
  342. package/contracts/shared/IKeyValueStore.sol +1 -1
  343. package/contracts/shared/INftOwnable.sol +1 -1
  344. package/contracts/shared/IService.sol +8 -1
  345. package/contracts/shared/InitializableCustom.sol +177 -0
  346. package/contracts/shared/InstanceLinkedComponent.sol +1 -2
  347. package/contracts/shared/KeyValueStore.sol +1 -4
  348. package/contracts/shared/Lifecycle.sol +11 -2
  349. package/contracts/shared/NftIdSetManager.sol +2 -6
  350. package/contracts/shared/NftOwnable.sol +2 -13
  351. package/contracts/shared/PolicyHolder.sol +2 -1
  352. package/contracts/shared/ProxyManager.sol +6 -2
  353. package/contracts/shared/Service.sol +28 -22
  354. package/contracts/staking/IStaking.sol +93 -38
  355. package/contracts/staking/IStakingService.sol +71 -40
  356. package/contracts/staking/StakeManagerLib.sol +231 -0
  357. package/contracts/staking/Staking.sol +302 -137
  358. package/contracts/staking/StakingManager.sol +22 -20
  359. package/contracts/staking/StakingReader.sol +119 -24
  360. package/contracts/staking/StakingService.sol +193 -76
  361. package/contracts/staking/StakingServiceManager.sol +2 -2
  362. package/contracts/staking/StakingStore.sol +613 -0
  363. package/contracts/staking/TargetManagerLib.sol +76 -10
  364. package/contracts/type/AddressSet.sol +1 -1
  365. package/contracts/type/Amount.sol +15 -1
  366. package/contracts/type/Blocknumber.sol +14 -2
  367. package/contracts/type/Fee.sol +1 -1
  368. package/contracts/type/NftId.sol +9 -9
  369. package/contracts/type/NftIdSet.sol +1 -1
  370. package/contracts/type/ObjectType.sol +139 -67
  371. package/contracts/type/Referral.sol +1 -1
  372. package/contracts/type/RequestId.sol +75 -0
  373. package/contracts/type/RiskId.sol +1 -1
  374. package/contracts/type/RoleId.sol +79 -21
  375. package/contracts/type/Seconds.sol +18 -0
  376. package/contracts/type/Selector.sol +102 -0
  377. package/contracts/type/StateId.sol +12 -0
  378. package/contracts/type/String.sol +53 -0
  379. package/contracts/type/Timestamp.sol +6 -2
  380. package/contracts/type/Version.sol +1 -1
  381. package/package.json +3 -3
  382. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +0 -4
  383. package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +0 -1348
  384. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +0 -4
  385. package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +0 -298
  386. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +0 -4
  387. package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +0 -137
  388. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +0 -4
  389. package/artifacts/contracts/shared/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +0 -1206
  390. package/contracts/instance/InstanceAccessManager.sol +0 -543
  391. package/contracts/registry/RegistryAccessManager.sol +0 -167
  392. package/contracts/registry/ServiceAuthorizationsLib.sol +0 -173
  393. package/contracts/shared/AccessManagerUpgradeableInitializeable.sol +0 -13
@@ -1,1206 +0,0 @@
1
- {
2
- "_format": "hh-sol-artifact-1",
3
- "contractName": "AccessManagerUpgradeableInitializeable",
4
- "sourceName": "contracts/shared/AccessManagerUpgradeableInitializeable.sol",
5
- "abi": [
6
- {
7
- "inputs": [
8
- {
9
- "internalType": "bytes32",
10
- "name": "operationId",
11
- "type": "bytes32"
12
- }
13
- ],
14
- "name": "AccessManagerAlreadyScheduled",
15
- "type": "error"
16
- },
17
- {
18
- "inputs": [],
19
- "name": "AccessManagerBadConfirmation",
20
- "type": "error"
21
- },
22
- {
23
- "inputs": [
24
- {
25
- "internalType": "bytes32",
26
- "name": "operationId",
27
- "type": "bytes32"
28
- }
29
- ],
30
- "name": "AccessManagerExpired",
31
- "type": "error"
32
- },
33
- {
34
- "inputs": [
35
- {
36
- "internalType": "address",
37
- "name": "initialAdmin",
38
- "type": "address"
39
- }
40
- ],
41
- "name": "AccessManagerInvalidInitialAdmin",
42
- "type": "error"
43
- },
44
- {
45
- "inputs": [
46
- {
47
- "internalType": "address",
48
- "name": "account",
49
- "type": "address"
50
- }
51
- ],
52
- "name": "AccessManagerLockedAccount",
53
- "type": "error"
54
- },
55
- {
56
- "inputs": [
57
- {
58
- "internalType": "uint64",
59
- "name": "roleId",
60
- "type": "uint64"
61
- }
62
- ],
63
- "name": "AccessManagerLockedRole",
64
- "type": "error"
65
- },
66
- {
67
- "inputs": [
68
- {
69
- "internalType": "bytes32",
70
- "name": "operationId",
71
- "type": "bytes32"
72
- }
73
- ],
74
- "name": "AccessManagerNotReady",
75
- "type": "error"
76
- },
77
- {
78
- "inputs": [
79
- {
80
- "internalType": "bytes32",
81
- "name": "operationId",
82
- "type": "bytes32"
83
- }
84
- ],
85
- "name": "AccessManagerNotScheduled",
86
- "type": "error"
87
- },
88
- {
89
- "inputs": [
90
- {
91
- "internalType": "address",
92
- "name": "msgsender",
93
- "type": "address"
94
- },
95
- {
96
- "internalType": "uint64",
97
- "name": "roleId",
98
- "type": "uint64"
99
- }
100
- ],
101
- "name": "AccessManagerUnauthorizedAccount",
102
- "type": "error"
103
- },
104
- {
105
- "inputs": [
106
- {
107
- "internalType": "address",
108
- "name": "caller",
109
- "type": "address"
110
- },
111
- {
112
- "internalType": "address",
113
- "name": "target",
114
- "type": "address"
115
- },
116
- {
117
- "internalType": "bytes4",
118
- "name": "selector",
119
- "type": "bytes4"
120
- }
121
- ],
122
- "name": "AccessManagerUnauthorizedCall",
123
- "type": "error"
124
- },
125
- {
126
- "inputs": [
127
- {
128
- "internalType": "address",
129
- "name": "msgsender",
130
- "type": "address"
131
- },
132
- {
133
- "internalType": "address",
134
- "name": "caller",
135
- "type": "address"
136
- },
137
- {
138
- "internalType": "address",
139
- "name": "target",
140
- "type": "address"
141
- },
142
- {
143
- "internalType": "bytes4",
144
- "name": "selector",
145
- "type": "bytes4"
146
- }
147
- ],
148
- "name": "AccessManagerUnauthorizedCancel",
149
- "type": "error"
150
- },
151
- {
152
- "inputs": [
153
- {
154
- "internalType": "address",
155
- "name": "target",
156
- "type": "address"
157
- }
158
- ],
159
- "name": "AccessManagerUnauthorizedConsume",
160
- "type": "error"
161
- },
162
- {
163
- "inputs": [
164
- {
165
- "internalType": "address",
166
- "name": "target",
167
- "type": "address"
168
- }
169
- ],
170
- "name": "AddressEmptyCode",
171
- "type": "error"
172
- },
173
- {
174
- "inputs": [
175
- {
176
- "internalType": "address",
177
- "name": "account",
178
- "type": "address"
179
- }
180
- ],
181
- "name": "AddressInsufficientBalance",
182
- "type": "error"
183
- },
184
- {
185
- "inputs": [],
186
- "name": "FailedInnerCall",
187
- "type": "error"
188
- },
189
- {
190
- "inputs": [],
191
- "name": "InvalidInitialization",
192
- "type": "error"
193
- },
194
- {
195
- "inputs": [],
196
- "name": "NotInitializing",
197
- "type": "error"
198
- },
199
- {
200
- "inputs": [
201
- {
202
- "internalType": "uint8",
203
- "name": "bits",
204
- "type": "uint8"
205
- },
206
- {
207
- "internalType": "uint256",
208
- "name": "value",
209
- "type": "uint256"
210
- }
211
- ],
212
- "name": "SafeCastOverflowedUintDowncast",
213
- "type": "error"
214
- },
215
- {
216
- "anonymous": false,
217
- "inputs": [
218
- {
219
- "indexed": false,
220
- "internalType": "uint64",
221
- "name": "version",
222
- "type": "uint64"
223
- }
224
- ],
225
- "name": "Initialized",
226
- "type": "event"
227
- },
228
- {
229
- "anonymous": false,
230
- "inputs": [
231
- {
232
- "indexed": true,
233
- "internalType": "bytes32",
234
- "name": "operationId",
235
- "type": "bytes32"
236
- },
237
- {
238
- "indexed": true,
239
- "internalType": "uint32",
240
- "name": "nonce",
241
- "type": "uint32"
242
- }
243
- ],
244
- "name": "OperationCanceled",
245
- "type": "event"
246
- },
247
- {
248
- "anonymous": false,
249
- "inputs": [
250
- {
251
- "indexed": true,
252
- "internalType": "bytes32",
253
- "name": "operationId",
254
- "type": "bytes32"
255
- },
256
- {
257
- "indexed": true,
258
- "internalType": "uint32",
259
- "name": "nonce",
260
- "type": "uint32"
261
- }
262
- ],
263
- "name": "OperationExecuted",
264
- "type": "event"
265
- },
266
- {
267
- "anonymous": false,
268
- "inputs": [
269
- {
270
- "indexed": true,
271
- "internalType": "bytes32",
272
- "name": "operationId",
273
- "type": "bytes32"
274
- },
275
- {
276
- "indexed": true,
277
- "internalType": "uint32",
278
- "name": "nonce",
279
- "type": "uint32"
280
- },
281
- {
282
- "indexed": false,
283
- "internalType": "uint48",
284
- "name": "schedule",
285
- "type": "uint48"
286
- },
287
- {
288
- "indexed": false,
289
- "internalType": "address",
290
- "name": "caller",
291
- "type": "address"
292
- },
293
- {
294
- "indexed": false,
295
- "internalType": "address",
296
- "name": "target",
297
- "type": "address"
298
- },
299
- {
300
- "indexed": false,
301
- "internalType": "bytes",
302
- "name": "data",
303
- "type": "bytes"
304
- }
305
- ],
306
- "name": "OperationScheduled",
307
- "type": "event"
308
- },
309
- {
310
- "anonymous": false,
311
- "inputs": [
312
- {
313
- "indexed": true,
314
- "internalType": "uint64",
315
- "name": "roleId",
316
- "type": "uint64"
317
- },
318
- {
319
- "indexed": true,
320
- "internalType": "uint64",
321
- "name": "admin",
322
- "type": "uint64"
323
- }
324
- ],
325
- "name": "RoleAdminChanged",
326
- "type": "event"
327
- },
328
- {
329
- "anonymous": false,
330
- "inputs": [
331
- {
332
- "indexed": true,
333
- "internalType": "uint64",
334
- "name": "roleId",
335
- "type": "uint64"
336
- },
337
- {
338
- "indexed": false,
339
- "internalType": "uint32",
340
- "name": "delay",
341
- "type": "uint32"
342
- },
343
- {
344
- "indexed": false,
345
- "internalType": "uint48",
346
- "name": "since",
347
- "type": "uint48"
348
- }
349
- ],
350
- "name": "RoleGrantDelayChanged",
351
- "type": "event"
352
- },
353
- {
354
- "anonymous": false,
355
- "inputs": [
356
- {
357
- "indexed": true,
358
- "internalType": "uint64",
359
- "name": "roleId",
360
- "type": "uint64"
361
- },
362
- {
363
- "indexed": true,
364
- "internalType": "address",
365
- "name": "account",
366
- "type": "address"
367
- },
368
- {
369
- "indexed": false,
370
- "internalType": "uint32",
371
- "name": "delay",
372
- "type": "uint32"
373
- },
374
- {
375
- "indexed": false,
376
- "internalType": "uint48",
377
- "name": "since",
378
- "type": "uint48"
379
- },
380
- {
381
- "indexed": false,
382
- "internalType": "bool",
383
- "name": "newMember",
384
- "type": "bool"
385
- }
386
- ],
387
- "name": "RoleGranted",
388
- "type": "event"
389
- },
390
- {
391
- "anonymous": false,
392
- "inputs": [
393
- {
394
- "indexed": true,
395
- "internalType": "uint64",
396
- "name": "roleId",
397
- "type": "uint64"
398
- },
399
- {
400
- "indexed": true,
401
- "internalType": "uint64",
402
- "name": "guardian",
403
- "type": "uint64"
404
- }
405
- ],
406
- "name": "RoleGuardianChanged",
407
- "type": "event"
408
- },
409
- {
410
- "anonymous": false,
411
- "inputs": [
412
- {
413
- "indexed": true,
414
- "internalType": "uint64",
415
- "name": "roleId",
416
- "type": "uint64"
417
- },
418
- {
419
- "indexed": false,
420
- "internalType": "string",
421
- "name": "label",
422
- "type": "string"
423
- }
424
- ],
425
- "name": "RoleLabel",
426
- "type": "event"
427
- },
428
- {
429
- "anonymous": false,
430
- "inputs": [
431
- {
432
- "indexed": true,
433
- "internalType": "uint64",
434
- "name": "roleId",
435
- "type": "uint64"
436
- },
437
- {
438
- "indexed": true,
439
- "internalType": "address",
440
- "name": "account",
441
- "type": "address"
442
- }
443
- ],
444
- "name": "RoleRevoked",
445
- "type": "event"
446
- },
447
- {
448
- "anonymous": false,
449
- "inputs": [
450
- {
451
- "indexed": true,
452
- "internalType": "address",
453
- "name": "target",
454
- "type": "address"
455
- },
456
- {
457
- "indexed": false,
458
- "internalType": "uint32",
459
- "name": "delay",
460
- "type": "uint32"
461
- },
462
- {
463
- "indexed": false,
464
- "internalType": "uint48",
465
- "name": "since",
466
- "type": "uint48"
467
- }
468
- ],
469
- "name": "TargetAdminDelayUpdated",
470
- "type": "event"
471
- },
472
- {
473
- "anonymous": false,
474
- "inputs": [
475
- {
476
- "indexed": true,
477
- "internalType": "address",
478
- "name": "target",
479
- "type": "address"
480
- },
481
- {
482
- "indexed": false,
483
- "internalType": "bool",
484
- "name": "closed",
485
- "type": "bool"
486
- }
487
- ],
488
- "name": "TargetClosed",
489
- "type": "event"
490
- },
491
- {
492
- "anonymous": false,
493
- "inputs": [
494
- {
495
- "indexed": true,
496
- "internalType": "address",
497
- "name": "target",
498
- "type": "address"
499
- },
500
- {
501
- "indexed": false,
502
- "internalType": "bytes4",
503
- "name": "selector",
504
- "type": "bytes4"
505
- },
506
- {
507
- "indexed": true,
508
- "internalType": "uint64",
509
- "name": "roleId",
510
- "type": "uint64"
511
- }
512
- ],
513
- "name": "TargetFunctionRoleUpdated",
514
- "type": "event"
515
- },
516
- {
517
- "inputs": [],
518
- "name": "ADMIN_ROLE",
519
- "outputs": [
520
- {
521
- "internalType": "uint64",
522
- "name": "",
523
- "type": "uint64"
524
- }
525
- ],
526
- "stateMutability": "view",
527
- "type": "function"
528
- },
529
- {
530
- "inputs": [],
531
- "name": "PUBLIC_ROLE",
532
- "outputs": [
533
- {
534
- "internalType": "uint64",
535
- "name": "",
536
- "type": "uint64"
537
- }
538
- ],
539
- "stateMutability": "view",
540
- "type": "function"
541
- },
542
- {
543
- "inputs": [
544
- {
545
- "internalType": "address",
546
- "name": "caller",
547
- "type": "address"
548
- },
549
- {
550
- "internalType": "address",
551
- "name": "target",
552
- "type": "address"
553
- },
554
- {
555
- "internalType": "bytes4",
556
- "name": "selector",
557
- "type": "bytes4"
558
- }
559
- ],
560
- "name": "canCall",
561
- "outputs": [
562
- {
563
- "internalType": "bool",
564
- "name": "immediate",
565
- "type": "bool"
566
- },
567
- {
568
- "internalType": "uint32",
569
- "name": "delay",
570
- "type": "uint32"
571
- }
572
- ],
573
- "stateMutability": "view",
574
- "type": "function"
575
- },
576
- {
577
- "inputs": [
578
- {
579
- "internalType": "address",
580
- "name": "caller",
581
- "type": "address"
582
- },
583
- {
584
- "internalType": "address",
585
- "name": "target",
586
- "type": "address"
587
- },
588
- {
589
- "internalType": "bytes",
590
- "name": "data",
591
- "type": "bytes"
592
- }
593
- ],
594
- "name": "cancel",
595
- "outputs": [
596
- {
597
- "internalType": "uint32",
598
- "name": "",
599
- "type": "uint32"
600
- }
601
- ],
602
- "stateMutability": "nonpayable",
603
- "type": "function"
604
- },
605
- {
606
- "inputs": [
607
- {
608
- "internalType": "address",
609
- "name": "caller",
610
- "type": "address"
611
- },
612
- {
613
- "internalType": "bytes",
614
- "name": "data",
615
- "type": "bytes"
616
- }
617
- ],
618
- "name": "consumeScheduledOp",
619
- "outputs": [],
620
- "stateMutability": "nonpayable",
621
- "type": "function"
622
- },
623
- {
624
- "inputs": [
625
- {
626
- "internalType": "address",
627
- "name": "target",
628
- "type": "address"
629
- },
630
- {
631
- "internalType": "bytes",
632
- "name": "data",
633
- "type": "bytes"
634
- }
635
- ],
636
- "name": "execute",
637
- "outputs": [
638
- {
639
- "internalType": "uint32",
640
- "name": "",
641
- "type": "uint32"
642
- }
643
- ],
644
- "stateMutability": "payable",
645
- "type": "function"
646
- },
647
- {
648
- "inputs": [],
649
- "name": "expiration",
650
- "outputs": [
651
- {
652
- "internalType": "uint32",
653
- "name": "",
654
- "type": "uint32"
655
- }
656
- ],
657
- "stateMutability": "view",
658
- "type": "function"
659
- },
660
- {
661
- "inputs": [
662
- {
663
- "internalType": "uint64",
664
- "name": "roleId",
665
- "type": "uint64"
666
- },
667
- {
668
- "internalType": "address",
669
- "name": "account",
670
- "type": "address"
671
- }
672
- ],
673
- "name": "getAccess",
674
- "outputs": [
675
- {
676
- "internalType": "uint48",
677
- "name": "since",
678
- "type": "uint48"
679
- },
680
- {
681
- "internalType": "uint32",
682
- "name": "currentDelay",
683
- "type": "uint32"
684
- },
685
- {
686
- "internalType": "uint32",
687
- "name": "pendingDelay",
688
- "type": "uint32"
689
- },
690
- {
691
- "internalType": "uint48",
692
- "name": "effect",
693
- "type": "uint48"
694
- }
695
- ],
696
- "stateMutability": "view",
697
- "type": "function"
698
- },
699
- {
700
- "inputs": [
701
- {
702
- "internalType": "bytes32",
703
- "name": "id",
704
- "type": "bytes32"
705
- }
706
- ],
707
- "name": "getNonce",
708
- "outputs": [
709
- {
710
- "internalType": "uint32",
711
- "name": "",
712
- "type": "uint32"
713
- }
714
- ],
715
- "stateMutability": "view",
716
- "type": "function"
717
- },
718
- {
719
- "inputs": [
720
- {
721
- "internalType": "uint64",
722
- "name": "roleId",
723
- "type": "uint64"
724
- }
725
- ],
726
- "name": "getRoleAdmin",
727
- "outputs": [
728
- {
729
- "internalType": "uint64",
730
- "name": "",
731
- "type": "uint64"
732
- }
733
- ],
734
- "stateMutability": "view",
735
- "type": "function"
736
- },
737
- {
738
- "inputs": [
739
- {
740
- "internalType": "uint64",
741
- "name": "roleId",
742
- "type": "uint64"
743
- }
744
- ],
745
- "name": "getRoleGrantDelay",
746
- "outputs": [
747
- {
748
- "internalType": "uint32",
749
- "name": "",
750
- "type": "uint32"
751
- }
752
- ],
753
- "stateMutability": "view",
754
- "type": "function"
755
- },
756
- {
757
- "inputs": [
758
- {
759
- "internalType": "uint64",
760
- "name": "roleId",
761
- "type": "uint64"
762
- }
763
- ],
764
- "name": "getRoleGuardian",
765
- "outputs": [
766
- {
767
- "internalType": "uint64",
768
- "name": "",
769
- "type": "uint64"
770
- }
771
- ],
772
- "stateMutability": "view",
773
- "type": "function"
774
- },
775
- {
776
- "inputs": [
777
- {
778
- "internalType": "bytes32",
779
- "name": "id",
780
- "type": "bytes32"
781
- }
782
- ],
783
- "name": "getSchedule",
784
- "outputs": [
785
- {
786
- "internalType": "uint48",
787
- "name": "",
788
- "type": "uint48"
789
- }
790
- ],
791
- "stateMutability": "view",
792
- "type": "function"
793
- },
794
- {
795
- "inputs": [
796
- {
797
- "internalType": "address",
798
- "name": "target",
799
- "type": "address"
800
- }
801
- ],
802
- "name": "getTargetAdminDelay",
803
- "outputs": [
804
- {
805
- "internalType": "uint32",
806
- "name": "",
807
- "type": "uint32"
808
- }
809
- ],
810
- "stateMutability": "view",
811
- "type": "function"
812
- },
813
- {
814
- "inputs": [
815
- {
816
- "internalType": "address",
817
- "name": "target",
818
- "type": "address"
819
- },
820
- {
821
- "internalType": "bytes4",
822
- "name": "selector",
823
- "type": "bytes4"
824
- }
825
- ],
826
- "name": "getTargetFunctionRole",
827
- "outputs": [
828
- {
829
- "internalType": "uint64",
830
- "name": "",
831
- "type": "uint64"
832
- }
833
- ],
834
- "stateMutability": "view",
835
- "type": "function"
836
- },
837
- {
838
- "inputs": [
839
- {
840
- "internalType": "uint64",
841
- "name": "roleId",
842
- "type": "uint64"
843
- },
844
- {
845
- "internalType": "address",
846
- "name": "account",
847
- "type": "address"
848
- },
849
- {
850
- "internalType": "uint32",
851
- "name": "executionDelay",
852
- "type": "uint32"
853
- }
854
- ],
855
- "name": "grantRole",
856
- "outputs": [],
857
- "stateMutability": "nonpayable",
858
- "type": "function"
859
- },
860
- {
861
- "inputs": [
862
- {
863
- "internalType": "uint64",
864
- "name": "roleId",
865
- "type": "uint64"
866
- },
867
- {
868
- "internalType": "address",
869
- "name": "account",
870
- "type": "address"
871
- }
872
- ],
873
- "name": "hasRole",
874
- "outputs": [
875
- {
876
- "internalType": "bool",
877
- "name": "isMember",
878
- "type": "bool"
879
- },
880
- {
881
- "internalType": "uint32",
882
- "name": "executionDelay",
883
- "type": "uint32"
884
- }
885
- ],
886
- "stateMutability": "view",
887
- "type": "function"
888
- },
889
- {
890
- "inputs": [
891
- {
892
- "internalType": "address",
893
- "name": "caller",
894
- "type": "address"
895
- },
896
- {
897
- "internalType": "address",
898
- "name": "target",
899
- "type": "address"
900
- },
901
- {
902
- "internalType": "bytes",
903
- "name": "data",
904
- "type": "bytes"
905
- }
906
- ],
907
- "name": "hashOperation",
908
- "outputs": [
909
- {
910
- "internalType": "bytes32",
911
- "name": "",
912
- "type": "bytes32"
913
- }
914
- ],
915
- "stateMutability": "view",
916
- "type": "function"
917
- },
918
- {
919
- "inputs": [
920
- {
921
- "internalType": "address",
922
- "name": "initialAdmin",
923
- "type": "address"
924
- }
925
- ],
926
- "name": "initialize",
927
- "outputs": [],
928
- "stateMutability": "nonpayable",
929
- "type": "function"
930
- },
931
- {
932
- "inputs": [
933
- {
934
- "internalType": "address",
935
- "name": "target",
936
- "type": "address"
937
- }
938
- ],
939
- "name": "isTargetClosed",
940
- "outputs": [
941
- {
942
- "internalType": "bool",
943
- "name": "",
944
- "type": "bool"
945
- }
946
- ],
947
- "stateMutability": "view",
948
- "type": "function"
949
- },
950
- {
951
- "inputs": [
952
- {
953
- "internalType": "uint64",
954
- "name": "roleId",
955
- "type": "uint64"
956
- },
957
- {
958
- "internalType": "string",
959
- "name": "label",
960
- "type": "string"
961
- }
962
- ],
963
- "name": "labelRole",
964
- "outputs": [],
965
- "stateMutability": "nonpayable",
966
- "type": "function"
967
- },
968
- {
969
- "inputs": [],
970
- "name": "minSetback",
971
- "outputs": [
972
- {
973
- "internalType": "uint32",
974
- "name": "",
975
- "type": "uint32"
976
- }
977
- ],
978
- "stateMutability": "view",
979
- "type": "function"
980
- },
981
- {
982
- "inputs": [
983
- {
984
- "internalType": "bytes[]",
985
- "name": "data",
986
- "type": "bytes[]"
987
- }
988
- ],
989
- "name": "multicall",
990
- "outputs": [
991
- {
992
- "internalType": "bytes[]",
993
- "name": "results",
994
- "type": "bytes[]"
995
- }
996
- ],
997
- "stateMutability": "nonpayable",
998
- "type": "function"
999
- },
1000
- {
1001
- "inputs": [
1002
- {
1003
- "internalType": "uint64",
1004
- "name": "roleId",
1005
- "type": "uint64"
1006
- },
1007
- {
1008
- "internalType": "address",
1009
- "name": "callerConfirmation",
1010
- "type": "address"
1011
- }
1012
- ],
1013
- "name": "renounceRole",
1014
- "outputs": [],
1015
- "stateMutability": "nonpayable",
1016
- "type": "function"
1017
- },
1018
- {
1019
- "inputs": [
1020
- {
1021
- "internalType": "uint64",
1022
- "name": "roleId",
1023
- "type": "uint64"
1024
- },
1025
- {
1026
- "internalType": "address",
1027
- "name": "account",
1028
- "type": "address"
1029
- }
1030
- ],
1031
- "name": "revokeRole",
1032
- "outputs": [],
1033
- "stateMutability": "nonpayable",
1034
- "type": "function"
1035
- },
1036
- {
1037
- "inputs": [
1038
- {
1039
- "internalType": "address",
1040
- "name": "target",
1041
- "type": "address"
1042
- },
1043
- {
1044
- "internalType": "bytes",
1045
- "name": "data",
1046
- "type": "bytes"
1047
- },
1048
- {
1049
- "internalType": "uint48",
1050
- "name": "when",
1051
- "type": "uint48"
1052
- }
1053
- ],
1054
- "name": "schedule",
1055
- "outputs": [
1056
- {
1057
- "internalType": "bytes32",
1058
- "name": "operationId",
1059
- "type": "bytes32"
1060
- },
1061
- {
1062
- "internalType": "uint32",
1063
- "name": "nonce",
1064
- "type": "uint32"
1065
- }
1066
- ],
1067
- "stateMutability": "nonpayable",
1068
- "type": "function"
1069
- },
1070
- {
1071
- "inputs": [
1072
- {
1073
- "internalType": "uint64",
1074
- "name": "roleId",
1075
- "type": "uint64"
1076
- },
1077
- {
1078
- "internalType": "uint32",
1079
- "name": "newDelay",
1080
- "type": "uint32"
1081
- }
1082
- ],
1083
- "name": "setGrantDelay",
1084
- "outputs": [],
1085
- "stateMutability": "nonpayable",
1086
- "type": "function"
1087
- },
1088
- {
1089
- "inputs": [
1090
- {
1091
- "internalType": "uint64",
1092
- "name": "roleId",
1093
- "type": "uint64"
1094
- },
1095
- {
1096
- "internalType": "uint64",
1097
- "name": "admin",
1098
- "type": "uint64"
1099
- }
1100
- ],
1101
- "name": "setRoleAdmin",
1102
- "outputs": [],
1103
- "stateMutability": "nonpayable",
1104
- "type": "function"
1105
- },
1106
- {
1107
- "inputs": [
1108
- {
1109
- "internalType": "uint64",
1110
- "name": "roleId",
1111
- "type": "uint64"
1112
- },
1113
- {
1114
- "internalType": "uint64",
1115
- "name": "guardian",
1116
- "type": "uint64"
1117
- }
1118
- ],
1119
- "name": "setRoleGuardian",
1120
- "outputs": [],
1121
- "stateMutability": "nonpayable",
1122
- "type": "function"
1123
- },
1124
- {
1125
- "inputs": [
1126
- {
1127
- "internalType": "address",
1128
- "name": "target",
1129
- "type": "address"
1130
- },
1131
- {
1132
- "internalType": "uint32",
1133
- "name": "newDelay",
1134
- "type": "uint32"
1135
- }
1136
- ],
1137
- "name": "setTargetAdminDelay",
1138
- "outputs": [],
1139
- "stateMutability": "nonpayable",
1140
- "type": "function"
1141
- },
1142
- {
1143
- "inputs": [
1144
- {
1145
- "internalType": "address",
1146
- "name": "target",
1147
- "type": "address"
1148
- },
1149
- {
1150
- "internalType": "bool",
1151
- "name": "closed",
1152
- "type": "bool"
1153
- }
1154
- ],
1155
- "name": "setTargetClosed",
1156
- "outputs": [],
1157
- "stateMutability": "nonpayable",
1158
- "type": "function"
1159
- },
1160
- {
1161
- "inputs": [
1162
- {
1163
- "internalType": "address",
1164
- "name": "target",
1165
- "type": "address"
1166
- },
1167
- {
1168
- "internalType": "bytes4[]",
1169
- "name": "selectors",
1170
- "type": "bytes4[]"
1171
- },
1172
- {
1173
- "internalType": "uint64",
1174
- "name": "roleId",
1175
- "type": "uint64"
1176
- }
1177
- ],
1178
- "name": "setTargetFunctionRole",
1179
- "outputs": [],
1180
- "stateMutability": "nonpayable",
1181
- "type": "function"
1182
- },
1183
- {
1184
- "inputs": [
1185
- {
1186
- "internalType": "address",
1187
- "name": "target",
1188
- "type": "address"
1189
- },
1190
- {
1191
- "internalType": "address",
1192
- "name": "newAuthority",
1193
- "type": "address"
1194
- }
1195
- ],
1196
- "name": "updateAuthority",
1197
- "outputs": [],
1198
- "stateMutability": "nonpayable",
1199
- "type": "function"
1200
- }
1201
- ],
1202
- "bytecode": "0x608060405234801561001057600080fd5b50612cdc806100206000396000f3fe6080604052600436106101ee5760003560e01c80636d5115bd1161010d578063b7009613116100a0578063d1f856ee1161006f578063d1f856ee1461060e578063d22b59891461062e578063d6bb62c61461064e578063f801a6981461066e578063fe0776f5146106a857600080fd5b8063b70096131461057c578063b7d2b162146105b8578063c4d66de8146105d8578063cc1b6c81146105f857600080fd5b8063a166aa89116100dc578063a166aa89146104d1578063a64d95ce14610501578063abd9bd2a14610521578063ac9650d81461054f57600080fd5b80636d5115bd1461045c57806375b238fc1461047c578063853551b81461049157806394c7d7ee146104b157600080fd5b806330cae187116101855780634665096d116101545780634665096d146103e65780634c1da1e2146103fc578063529629521461041c578063530dd4561461043c57600080fd5b806330cae187146103545780633adc277a146103745780633ca7c02a146103ab5780634136a33c146103c657600080fd5b806318ff183c116101c157806318ff183c146102a75780631cff79cd146102c757806325c471a0146102da5780633078f114146102fa57600080fd5b806308d6122d146101f35780630b0a93ba1461021557806312be872714610252578063167bd39514610287575b600080fd5b3480156101ff57600080fd5b5061021361020e36600461255f565b6106c8565b005b34801561022157600080fd5b506102356102303660046125c5565b610723565b6040516001600160401b0390911681526020015b60405180910390f35b34801561025e57600080fd5b5061027261026d3660046125c5565b61075c565b60405163ffffffff9091168152602001610249565b34801561029357600080fd5b506102136102a23660046125e0565b6107a8565b3480156102b357600080fd5b506102136102c236600461261e565b6107be565b6102726102d536600461268d565b610825565b3480156102e657600080fd5b506102136102f53660046126f5565b61096b565b34801561030657600080fd5b5061031a61031536600461273a565b61098d565b604051610249949392919065ffffffffffff948516815263ffffffff93841660208201529190921660408201529116606082015260800190565b34801561036057600080fd5b5061021361036f366004612756565b610a04565b34801561038057600080fd5b5061039461038f366004612789565b610a16565b60405165ffffffffffff9091168152602001610249565b3480156103b757600080fd5b506102356001600160401b0381565b3480156103d257600080fd5b506102726103e1366004612789565b610a5b565b3480156103f257600080fd5b5062093a80610272565b34801561040857600080fd5b506102726104173660046127a2565b610a88565b34801561042857600080fd5b50610213610437366004612756565b610ac4565b34801561044857600080fd5b506102356104573660046125c5565b610ad6565b34801561046857600080fd5b506102356104773660046127d5565b610b08565b34801561048857600080fd5b50610235600081565b34801561049d57600080fd5b506102136104ac366004612803565b610b51565b3480156104bd57600080fd5b506102136104cc36600461268d565b610be8565b3480156104dd57600080fd5b506104f16104ec3660046127a2565b610c94565b6040519015158152602001610249565b34801561050d57600080fd5b5061021361051c366004612821565b610ccd565b34801561052d57600080fd5b5061054161053c36600461284b565b610cdf565b604051908152602001610249565b34801561055b57600080fd5b5061056f61056a3660046128af565b610d18565b6040516102499190612914565b34801561058857600080fd5b5061059c61059736600461298e565b610e0c565b60408051921515835263ffffffff909116602083015201610249565b3480156105c457600080fd5b506102136105d336600461273a565b610e93565b3480156105e457600080fd5b506102136105f33660046127a2565b610eaa565b34801561060457600080fd5b5062069780610272565b34801561061a57600080fd5b5061059c61062936600461273a565b610fb7565b34801561063a57600080fd5b506102136106493660046129d9565b611034565b34801561065a57600080fd5b5061027261066936600461284b565b611046565b34801561067a57600080fd5b5061068e6106893660046129f7565b6111b1565b6040805192835263ffffffff909116602083015201610249565b3480156106b457600080fd5b506102136106c336600461273a565b61135c565b6106d0611385565b60005b8281101561071c5761070c858585848181106106f1576106f1612a69565b90506020020160208101906107069190612a7f565b84611400565b61071581612ab2565b90506106d3565b5050505050565b60008061072e61148e565b6001600160401b0393841660009081526001918201602052604090200154600160401b900490921692915050565b60008061076761148e565b6001600160401b03841660009081526001828101602052604090912001549091506107a190600160801b90046001600160701b03166114b2565b9392505050565b6107b0611385565b6107ba82826114d1565b5050565b6107c6611385565b604051637a9e5e4b60e01b81526001600160a01b038281166004830152831690637a9e5e4b90602401600060405180830381600087803b15801561080957600080fd5b505af115801561081d573d6000803e3d6000fd5b505050505050565b60008061083061148e565b90503360008061084283898989611577565b9150915081158015610858575063ffffffff8116155b156108ab57828861086989896115ca565b6040516381c6f24b60e01b81526001600160a01b0393841660048201529290911660248301526001600160e01b03191660448201526064015b60405180910390fd5b60006108b9848a8a8a610cdf565b9050600063ffffffff83161515806108e057506108d582610a16565b65ffffffffffff1615155b156108f1576108ee826115e2565b90505b60038601546109098b6109048c8c6115ca565b6116f6565b87600301819055506109538b8b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250349250611738915050565b50600390960195909555509293505050509392505050565b610973611385565b61098783836109818661075c565b846117d5565b50505050565b600080600080600061099d61148e565b6001600160401b038816600090815260018201602090815260408083206001600160a01b038b1684529091529020805465ffffffffffff81169750919250906109f590600160301b90046001600160701b0316611a34565b979a9199509750945050505050565b610a0c611385565b6107ba8282611a57565b600080610a2161148e565b600084815260028201602052604090205490915065ffffffffffff16610a4681611b09565b610a505780610a53565b60005b949350505050565b600080610a6661148e565b600093845260020160205250506040902054600160301b900463ffffffff1690565b600080610a9361148e565b6001600160a01b0384166000908152602082905260409020600101549091506107a1906001600160701b03166114b2565b610acc611385565b6107ba8282611b38565b600080610ae161148e565b6001600160401b039384166000908152600191820160205260409020015490921692915050565b600080610b1361148e565b6001600160a01b0385166000908152602091825260408082206001600160e01b03198716835290925220546001600160401b03169150505b92915050565b610b59611385565b6001600160401b0383161580610b7757506001600160401b03838116145b15610ba05760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b826001600160401b03167f1256f5b5ecb89caec12db449738f2fbcd1ba5806cf38f35413f4e5c15bf6a4508383604051610bdb929190612af4565b60405180910390a2505050565b60408051638fb3603760e01b80825291513392918391638fb36037916004808201926020929091908290030181865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190612b08565b6001600160e01b03191614610c8057604051630641fee960e31b81526001600160a01b03821660048201526024016108a2565b61071c610c8f85838686610cdf565b6115e2565b600080610c9f61148e565b6001600160a01b0390931660009081526020939093525050604090206001015460ff600160701b9091041690565b610cd5611385565b6107ba8282611bf8565b600084848484604051602001610cf89493929190612b25565b604051602081830303815290604052805190602001209050949350505050565b6060816001600160401b03811115610d3257610d32612b52565b604051908082528060200260200182016040528015610d6557816020015b6060815260200190600190039081610d505790505b50905060005b82811015610e0557610dd530858584818110610d8957610d89612a69565b9050602002810190610d9b9190612b68565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d2592505050565b828281518110610de757610de7612a69565b60200260200101819052508080610dfd90612ab2565b915050610d6b565b5092915050565b600080610e1884610c94565b15610e2857506000905080610e8b565b306001600160a01b03861603610e4d57610e428484611d9b565b600091509150610e8b565b6000610e598585610b08565b9050600080610e688389610fb7565b9150915081610e7957600080610e83565b63ffffffff811615815b945094505050505b935093915050565b610e9b611385565b610ea58282611dc0565b505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b0316600081158015610eef5750825b90506000826001600160401b03166001148015610f0b5750303b155b905081158015610f19575080155b15610f375760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610f6157845460ff60401b1916600160401b1785555b610f6a86611ebf565b831561081d57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b60008067fffffffffffffffe196001600160401b03851601610fdf575060019050600061102d565b600080610fec868661098d565b5050915091508165ffffffffffff16600014158015611022575061100e611ed3565b65ffffffffffff168265ffffffffffff1611155b9350915061102d9050565b9250929050565b61103c611385565b6107ba8282611ee3565b60008061105161148e565b905033600061106086866115ca565b9050600061107089898989610cdf565b600081815260028601602052604081205491925065ffffffffffff90911690036110b05760405163060a299b60e41b8152600481018290526024016108a2565b826001600160a01b0316896001600160a01b03161461114c5760006110d6600085610fb7565b50905060006110f16110eb6102308c87610b08565b86610fb7565b50905081158015611100575080155b1561114957604051630ff89d4760e21b81526001600160a01b038087166004830152808d1660248301528b1660448201526001600160e01b0319851660648201526084016108a2565b50505b6000818152600285016020526040808220805465ffffffffffff1916908190559051600160301b90910463ffffffff1691829184917fbd9ac67a6e2f6463b80927326310338bcbb4bdb7936ce1365ea3e01067e7b9f791a39998505050505050505050565b60008060006111be61148e565b90503360006111cf828a8a8a611577565b91505060008163ffffffff166111e3611ed3565b6111ed9190612bae565b905063ffffffff82161580611224575060008765ffffffffffff1611801561122457508065ffffffffffff168765ffffffffffff16105b1561123557828a6108698b8b6115ca565b61124f8765ffffffffffff168265ffffffffffff16611faf565b965061125d838b8b8b610cdf565b955061126886611fc5565b83600201600087815260200190815260200160002060000160069054906101000a900463ffffffff1660010194508684600201600088815260200190815260200160002060000160006101000a81548165ffffffffffff021916908365ffffffffffff1602179055508484600201600088815260200190815260200160002060000160066101000a81548163ffffffff021916908363ffffffff1602179055508463ffffffff16867f82a2da5dee54ea8021c6545b4444620291e07ee83be6dd57edb175062715f3b489868e8e8e604051611347959493929190612bcd565b60405180910390a35050505094509492505050565b6001600160a01b0381163314610e9b57604051635f159e6360e01b815260040160405180910390fd5b33600080611394838236612021565b9150915081610ea5578063ffffffff166000036113f05760006113b781366120d9565b5060405163f07e038f60e01b81526001600160a01b03871660048201526001600160401b038216602482015290925060440190506108a2565b610987610c8f8430600036610cdf565b600061140a61148e565b6001600160a01b0385166000818152602083815260408083206001600160e01b0319891680855290835292819020805467ffffffffffffffff19166001600160401b03891690811790915590519283529394507f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151910160405180910390a350505050565b7f40c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad0090565b6000806114c7836001600160701b0316611a34565b5090949350505050565b60006114db61148e565b9050306001600160a01b0384160361151157604051630b40d17960e31b81526001600160a01b03841660048201526024016108a2565b6001600160a01b038316600081815260208390526040908190206001018054851515600160701b0260ff60701b19909116179055517f90d4e7bb7e5d933792b3562e1741306f8be94837e1348dacef9b6f1df56eb13890610bdb90851515815260200190565b600080306001600160a01b0386160361159e57611595868585612021565b915091506115c1565b600483106115ba576115b5868661059787876115ca565b611595565b5060009050805b94509492505050565b60006115d96004828486612c13565b6107a191612c3d565b6000806115ed61148e565b600084815260028201602052604081205491925065ffffffffffff821691600160301b900463ffffffff169082900361163c5760405163060a299b60e41b8152600481018690526024016108a2565b611644611ed3565b65ffffffffffff168265ffffffffffff16111561167757604051630c65b5bd60e11b8152600481018690526024016108a2565b61168082611b09565b156116a157604051631e2975b960e21b8152600481018690526024016108a2565b6000858152600284016020526040808220805465ffffffffffff191690555163ffffffff83169187917f76a2a46953689d4861a5d3f6ed883ad7e6af674a21f8e162707159fc9dde614d9190a3949350505050565b604080516001600160a01b03939093166020808501919091526001600160e01b0319929092168382015280518084038201815260609093019052815191012090565b60608147101561175d5760405163cd78605960e01b81523060048201526024016108a2565b600080856001600160a01b031684866040516117799190612c6d565b60006040518083038185875af1925050503d80600081146117b6576040519150601f19603f3d011682016040523d82523d6000602084013e6117bb565b606091505b50915091506117cb8683836122a5565b9695505050505050565b6000806117e061148e565b905067fffffffffffffffe196001600160401b0387160161181f5760405163061c6a4360e21b81526001600160401b03871660048201526024016108a2565b6001600160401b038616600090815260018201602090815260408083206001600160a01b038916845290915281205465ffffffffffff1615908115611915578563ffffffff1661186d611ed3565b6118779190612bae565b905060405180604001604052808265ffffffffffff1681526020016118a58763ffffffff1663ffffffff1690565b6001600160701b039081169091526001600160401b038a16600090815260018601602090815260408083206001600160a01b038d1684528252909120835181549490920151909216600160301b026001600160a01b031990931665ffffffffffff909116179190911790556119c5565b6001600160401b038816600090815260018401602090815260408083206001600160a01b038b16845290915281205461196191600160301b9091046001600160701b0316908790612301565b6001600160401b038a16600090815260018601602090815260408083206001600160a01b038d168452909152902080546001600160701b03909316600160301b0273ffffffffffffffffffffffffffff000000000000199093169290921790915590505b6040805163ffffffff8716815265ffffffffffff831660208201528315158183015290516001600160a01b038916916001600160401b038b16917ff98448b987f1428e0e230e1f3c6e2ce15b5693eaf31827fbd0b1ec4b424ae7cf9181900360600190a3509695505050505050565b6000806000611a4a84611a45611ed3565b6123ab565b9250925092509193909250565b6000611a6161148e565b90506001600160401b0383161580611a8157506001600160401b03838116145b15611aaa5760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b6001600160401b03838116600081815260018481016020526040808320909101805467ffffffffffffffff19169487169485179055517f1fd6dd7631312dfac2205b52913f99de03b4d7e381d5d27d3dbfe0713e6e63409190a3505050565b6000611b13611ed3565b65ffffffffffff16611b2862093a8084612bae565b65ffffffffffff16111592915050565b6000611b4261148e565b90506001600160401b0383161580611b6257506001600160401b03838116145b15611b8b5760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b6001600160401b0383811660008181526001848101602052604080832090910180546fffffffffffffffff00000000000000001916600160401b958816958602179055517f7a8059630b897b5de4c08ade69f8b90c3ead1f8596d62d10b6c4d14a0afb4ae29190a3505050565b6000611c0261148e565b905067fffffffffffffffe196001600160401b03841601611c415760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b6001600160401b03831660009081526001828101602052604082200154611c7c90600160801b90046001600160701b03168462069780612301565b6001600160401b038616600081815260018087016020526040918290200180546001600160701b03909516600160801b026dffffffffffffffffffffffffffff60801b199095169490941790935591519092507ffeb69018ee8b8fd50ea86348f1267d07673379f72cffdeccec63853ee8ce8b4890611d17908690859063ffffffff92909216825265ffffffffffff16602082015260400190565b60405180910390a250505050565b6060600080846001600160a01b031684604051611d429190612c6d565b600060405180830381855af49150503d8060008114611d7d576040519150601f19603f3d011682016040523d82523d6000602084013e611d82565b606091505b5091509150611d928583836122a5565b95945050505050565b600080611da661148e565b9050611db284846116f6565b600390910154149392505050565b600080611dcb61148e565b905067fffffffffffffffe196001600160401b03851601611e0a5760405163061c6a4360e21b81526001600160401b03851660048201526024016108a2565b6001600160401b038416600090815260018201602090815260408083206001600160a01b038716845290915281205465ffffffffffff169003611e51576000915050610b4b565b6001600160401b038416600081815260018301602090815260408083206001600160a01b038816808552925280832080546001600160a01b0319169055519092917ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c16691a35060019392505050565b611ec76123ff565b611ed08161244a565b50565b6000611ede4261248a565b905090565b6000611eed61148e565b90506000611f2583620697806001600160a01b0387166000908152602086905260409020600101546001600160701b03169190612301565b6001600160a01b0386166000818152602086815260409182902060010180546dffffffffffffffffffffffffffff19166001600160701b039690961695909517909455805163ffffffff8816815265ffffffffffff841694810194909452919350917fa56b76017453f399ec2327ba00375dbfb1fd070ff854341ad6191e6a2e2de19c9101611d17565b6000818311611fbe57816107a1565b5090919050565b6000611fcf61148e565b600083815260028201602052604090205490915065ffffffffffff1680158015906120005750611ffe81611b09565b155b15610ea55760405163813e945960e01b8152600481018490526024016108a2565b600080600483101561203857506000905080610e8b565b306001600160a01b0386160361205b57610e423061205686866115ca565b611d9b565b600080600061206a87876120d9565b925092509250826120845760008094509450505050610e8b565b600080612091848b610fb7565b91509150816120ab57600080965096505050505050610e8b565b6120c18363ffffffff168263ffffffff16611faf565b63ffffffff8116159b909a5098505050505050505050565b6000808060048410156120f45750600091508190508061229e565b600061210086866115ca565b90506001600160e01b031981166310a6aa3760e31b148061213157506001600160e01b031981166330cae18760e01b145b8061214c57506001600160e01b0319811663294b14a960e11b145b8061216757506001600160e01b03198116635326cae760e11b145b8061218257506001600160e01b0319811663d22b598960e01b145b156121985760016000809350935093505061229e565b6001600160e01b0319811663063fc60f60e21b14806121c757506001600160e01b0319811663167bd39560e01b145b806121e257506001600160e01b031981166308d6122d60e01b145b156122245760006121f760246004888a612c13565b81019061220491906127a2565b9050600061221182610a88565b6001965060009550935061229e92505050565b6001600160e01b0319811663012e238d60e51b148061225357506001600160e01b03198116635be958b160e11b145b1561229157600061226860246004888a612c13565b81019061227591906125c5565b9050600161228282610ad6565b6000945094509450505061229e565b6000806000935093509350505b9250925092565b6060826122ba576122b5826124c1565b6107a1565b81511580156122d157506001600160a01b0384163b155b156122fa57604051639996b31560e01b81526001600160a01b03851660048201526024016108a2565b50806107a1565b6000806000612318866001600160701b03166114b2565b905060006123558563ffffffff168763ffffffff168463ffffffff161161234057600061234a565b61234a8885612c89565b63ffffffff16611faf565b90508063ffffffff16612366611ed3565b6123709190612bae565b925063ffffffff8616602083901b67ffffffff0000000016604085901b6dffffffffffff000000000000000016171793505050935093915050565b6000808069ffffffffffffffffffff602086901c166001600160701b03861665ffffffffffff604088901c81169087168111156123ea578282826123ef565b816000805b9550955095505050509250925092565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661244857604051631afcd79f60e31b815260040160405180910390fd5b565b6124526123ff565b6001600160a01b03811661247c57604051630409d6d160e11b8152600060048201526024016108a2565b6107ba6000826000806117d5565b600065ffffffffffff8211156124bd576040516306dfcc6560e41b815260306004820152602481018390526044016108a2565b5090565b8051156124d15780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160a01b0381168114611ed057600080fd5b60008083601f84011261251157600080fd5b5081356001600160401b0381111561252857600080fd5b6020830191508360208260051b850101111561102d57600080fd5b80356001600160401b038116811461255a57600080fd5b919050565b6000806000806060858703121561257557600080fd5b8435612580816124ea565b935060208501356001600160401b0381111561259b57600080fd5b6125a7878288016124ff565b90945092506125ba905060408601612543565b905092959194509250565b6000602082840312156125d757600080fd5b6107a182612543565b600080604083850312156125f357600080fd5b82356125fe816124ea565b91506020830135801515811461261357600080fd5b809150509250929050565b6000806040838503121561263157600080fd5b823561263c816124ea565b91506020830135612613816124ea565b60008083601f84011261265e57600080fd5b5081356001600160401b0381111561267557600080fd5b60208301915083602082850101111561102d57600080fd5b6000806000604084860312156126a257600080fd5b83356126ad816124ea565b925060208401356001600160401b038111156126c857600080fd5b6126d48682870161264c565b9497909650939450505050565b803563ffffffff8116811461255a57600080fd5b60008060006060848603121561270a57600080fd5b61271384612543565b92506020840135612723816124ea565b9150612731604085016126e1565b90509250925092565b6000806040838503121561274d57600080fd5b61263c83612543565b6000806040838503121561276957600080fd5b61277283612543565b915061278060208401612543565b90509250929050565b60006020828403121561279b57600080fd5b5035919050565b6000602082840312156127b457600080fd5b81356107a1816124ea565b6001600160e01b031981168114611ed057600080fd5b600080604083850312156127e857600080fd5b82356127f3816124ea565b91506020830135612613816127bf565b60008060006040848603121561281857600080fd5b6126ad84612543565b6000806040838503121561283457600080fd5b61283d83612543565b9150612780602084016126e1565b6000806000806060858703121561286157600080fd5b843561286c816124ea565b9350602085013561287c816124ea565b925060408501356001600160401b0381111561289757600080fd5b6128a38782880161264c565b95989497509550505050565b600080602083850312156128c257600080fd5b82356001600160401b038111156128d857600080fd5b6128e4858286016124ff565b90969095509350505050565b60005b8381101561290b5781810151838201526020016128f3565b50506000910152565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561298157878503603f1901845281518051808752612962818989018a85016128f0565b601f01601f19169590950186019450928501929085019060010161293b565b5092979650505050505050565b6000806000606084860312156129a357600080fd5b83356129ae816124ea565b925060208401356129be816124ea565b915060408401356129ce816127bf565b809150509250925092565b600080604083850312156129ec57600080fd5b823561283d816124ea565b60008060008060608587031215612a0d57600080fd5b8435612a18816124ea565b935060208501356001600160401b03811115612a3357600080fd5b612a3f8782880161264c565b909450925050604085013565ffffffffffff81168114612a5e57600080fd5b939692955090935050565b634e487b7160e01b600052603260045260246000fd5b600060208284031215612a9157600080fd5b81356107a1816127bf565b634e487b7160e01b600052601160045260246000fd5b600060018201612ac457612ac4612a9c565b5060010190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610a53602083018486612acb565b600060208284031215612b1a57600080fd5b81516107a1816127bf565b6001600160a01b038581168252841660208201526060604082018190526000906117cb9083018486612acb565b634e487b7160e01b600052604160045260246000fd5b6000808335601e19843603018112612b7f57600080fd5b8301803591506001600160401b03821115612b9957600080fd5b60200191503681900382131561102d57600080fd5b65ffffffffffff818116838216019080821115610e0557610e05612a9c565b65ffffffffffff861681526001600160a01b03858116602083015284166040820152608060608201819052600090612c089083018486612acb565b979650505050505050565b60008085851115612c2357600080fd5b83861115612c3057600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015612c655780818660040360031b1b83161692505b505092915050565b60008251612c7f8184602087016128f0565b9190910192915050565b63ffffffff828116828216039080821115610e0557610e05612a9c56fea26469706673582212200ae6538f089bb3e9b144e45d48a18927c3aebce616ac1218eef43b59c1b3631464736f6c63430008140033",
1203
- "deployedBytecode": "0x6080604052600436106101ee5760003560e01c80636d5115bd1161010d578063b7009613116100a0578063d1f856ee1161006f578063d1f856ee1461060e578063d22b59891461062e578063d6bb62c61461064e578063f801a6981461066e578063fe0776f5146106a857600080fd5b8063b70096131461057c578063b7d2b162146105b8578063c4d66de8146105d8578063cc1b6c81146105f857600080fd5b8063a166aa89116100dc578063a166aa89146104d1578063a64d95ce14610501578063abd9bd2a14610521578063ac9650d81461054f57600080fd5b80636d5115bd1461045c57806375b238fc1461047c578063853551b81461049157806394c7d7ee146104b157600080fd5b806330cae187116101855780634665096d116101545780634665096d146103e65780634c1da1e2146103fc578063529629521461041c578063530dd4561461043c57600080fd5b806330cae187146103545780633adc277a146103745780633ca7c02a146103ab5780634136a33c146103c657600080fd5b806318ff183c116101c157806318ff183c146102a75780631cff79cd146102c757806325c471a0146102da5780633078f114146102fa57600080fd5b806308d6122d146101f35780630b0a93ba1461021557806312be872714610252578063167bd39514610287575b600080fd5b3480156101ff57600080fd5b5061021361020e36600461255f565b6106c8565b005b34801561022157600080fd5b506102356102303660046125c5565b610723565b6040516001600160401b0390911681526020015b60405180910390f35b34801561025e57600080fd5b5061027261026d3660046125c5565b61075c565b60405163ffffffff9091168152602001610249565b34801561029357600080fd5b506102136102a23660046125e0565b6107a8565b3480156102b357600080fd5b506102136102c236600461261e565b6107be565b6102726102d536600461268d565b610825565b3480156102e657600080fd5b506102136102f53660046126f5565b61096b565b34801561030657600080fd5b5061031a61031536600461273a565b61098d565b604051610249949392919065ffffffffffff948516815263ffffffff93841660208201529190921660408201529116606082015260800190565b34801561036057600080fd5b5061021361036f366004612756565b610a04565b34801561038057600080fd5b5061039461038f366004612789565b610a16565b60405165ffffffffffff9091168152602001610249565b3480156103b757600080fd5b506102356001600160401b0381565b3480156103d257600080fd5b506102726103e1366004612789565b610a5b565b3480156103f257600080fd5b5062093a80610272565b34801561040857600080fd5b506102726104173660046127a2565b610a88565b34801561042857600080fd5b50610213610437366004612756565b610ac4565b34801561044857600080fd5b506102356104573660046125c5565b610ad6565b34801561046857600080fd5b506102356104773660046127d5565b610b08565b34801561048857600080fd5b50610235600081565b34801561049d57600080fd5b506102136104ac366004612803565b610b51565b3480156104bd57600080fd5b506102136104cc36600461268d565b610be8565b3480156104dd57600080fd5b506104f16104ec3660046127a2565b610c94565b6040519015158152602001610249565b34801561050d57600080fd5b5061021361051c366004612821565b610ccd565b34801561052d57600080fd5b5061054161053c36600461284b565b610cdf565b604051908152602001610249565b34801561055b57600080fd5b5061056f61056a3660046128af565b610d18565b6040516102499190612914565b34801561058857600080fd5b5061059c61059736600461298e565b610e0c565b60408051921515835263ffffffff909116602083015201610249565b3480156105c457600080fd5b506102136105d336600461273a565b610e93565b3480156105e457600080fd5b506102136105f33660046127a2565b610eaa565b34801561060457600080fd5b5062069780610272565b34801561061a57600080fd5b5061059c61062936600461273a565b610fb7565b34801561063a57600080fd5b506102136106493660046129d9565b611034565b34801561065a57600080fd5b5061027261066936600461284b565b611046565b34801561067a57600080fd5b5061068e6106893660046129f7565b6111b1565b6040805192835263ffffffff909116602083015201610249565b3480156106b457600080fd5b506102136106c336600461273a565b61135c565b6106d0611385565b60005b8281101561071c5761070c858585848181106106f1576106f1612a69565b90506020020160208101906107069190612a7f565b84611400565b61071581612ab2565b90506106d3565b5050505050565b60008061072e61148e565b6001600160401b0393841660009081526001918201602052604090200154600160401b900490921692915050565b60008061076761148e565b6001600160401b03841660009081526001828101602052604090912001549091506107a190600160801b90046001600160701b03166114b2565b9392505050565b6107b0611385565b6107ba82826114d1565b5050565b6107c6611385565b604051637a9e5e4b60e01b81526001600160a01b038281166004830152831690637a9e5e4b90602401600060405180830381600087803b15801561080957600080fd5b505af115801561081d573d6000803e3d6000fd5b505050505050565b60008061083061148e565b90503360008061084283898989611577565b9150915081158015610858575063ffffffff8116155b156108ab57828861086989896115ca565b6040516381c6f24b60e01b81526001600160a01b0393841660048201529290911660248301526001600160e01b03191660448201526064015b60405180910390fd5b60006108b9848a8a8a610cdf565b9050600063ffffffff83161515806108e057506108d582610a16565b65ffffffffffff1615155b156108f1576108ee826115e2565b90505b60038601546109098b6109048c8c6115ca565b6116f6565b87600301819055506109538b8b8b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250349250611738915050565b50600390960195909555509293505050509392505050565b610973611385565b61098783836109818661075c565b846117d5565b50505050565b600080600080600061099d61148e565b6001600160401b038816600090815260018201602090815260408083206001600160a01b038b1684529091529020805465ffffffffffff81169750919250906109f590600160301b90046001600160701b0316611a34565b979a9199509750945050505050565b610a0c611385565b6107ba8282611a57565b600080610a2161148e565b600084815260028201602052604090205490915065ffffffffffff16610a4681611b09565b610a505780610a53565b60005b949350505050565b600080610a6661148e565b600093845260020160205250506040902054600160301b900463ffffffff1690565b600080610a9361148e565b6001600160a01b0384166000908152602082905260409020600101549091506107a1906001600160701b03166114b2565b610acc611385565b6107ba8282611b38565b600080610ae161148e565b6001600160401b039384166000908152600191820160205260409020015490921692915050565b600080610b1361148e565b6001600160a01b0385166000908152602091825260408082206001600160e01b03198716835290925220546001600160401b03169150505b92915050565b610b59611385565b6001600160401b0383161580610b7757506001600160401b03838116145b15610ba05760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b826001600160401b03167f1256f5b5ecb89caec12db449738f2fbcd1ba5806cf38f35413f4e5c15bf6a4508383604051610bdb929190612af4565b60405180910390a2505050565b60408051638fb3603760e01b80825291513392918391638fb36037916004808201926020929091908290030181865afa158015610c29573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c4d9190612b08565b6001600160e01b03191614610c8057604051630641fee960e31b81526001600160a01b03821660048201526024016108a2565b61071c610c8f85838686610cdf565b6115e2565b600080610c9f61148e565b6001600160a01b0390931660009081526020939093525050604090206001015460ff600160701b9091041690565b610cd5611385565b6107ba8282611bf8565b600084848484604051602001610cf89493929190612b25565b604051602081830303815290604052805190602001209050949350505050565b6060816001600160401b03811115610d3257610d32612b52565b604051908082528060200260200182016040528015610d6557816020015b6060815260200190600190039081610d505790505b50905060005b82811015610e0557610dd530858584818110610d8957610d89612a69565b9050602002810190610d9b9190612b68565b8080601f016020809104026020016040519081016040528093929190818152602001838380828437600092019190915250611d2592505050565b828281518110610de757610de7612a69565b60200260200101819052508080610dfd90612ab2565b915050610d6b565b5092915050565b600080610e1884610c94565b15610e2857506000905080610e8b565b306001600160a01b03861603610e4d57610e428484611d9b565b600091509150610e8b565b6000610e598585610b08565b9050600080610e688389610fb7565b9150915081610e7957600080610e83565b63ffffffff811615815b945094505050505b935093915050565b610e9b611385565b610ea58282611dc0565b505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff1615906001600160401b0316600081158015610eef5750825b90506000826001600160401b03166001148015610f0b5750303b155b905081158015610f19575080155b15610f375760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610f6157845460ff60401b1916600160401b1785555b610f6a86611ebf565b831561081d57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050505050565b60008067fffffffffffffffe196001600160401b03851601610fdf575060019050600061102d565b600080610fec868661098d565b5050915091508165ffffffffffff16600014158015611022575061100e611ed3565b65ffffffffffff168265ffffffffffff1611155b9350915061102d9050565b9250929050565b61103c611385565b6107ba8282611ee3565b60008061105161148e565b905033600061106086866115ca565b9050600061107089898989610cdf565b600081815260028601602052604081205491925065ffffffffffff90911690036110b05760405163060a299b60e41b8152600481018290526024016108a2565b826001600160a01b0316896001600160a01b03161461114c5760006110d6600085610fb7565b50905060006110f16110eb6102308c87610b08565b86610fb7565b50905081158015611100575080155b1561114957604051630ff89d4760e21b81526001600160a01b038087166004830152808d1660248301528b1660448201526001600160e01b0319851660648201526084016108a2565b50505b6000818152600285016020526040808220805465ffffffffffff1916908190559051600160301b90910463ffffffff1691829184917fbd9ac67a6e2f6463b80927326310338bcbb4bdb7936ce1365ea3e01067e7b9f791a39998505050505050505050565b60008060006111be61148e565b90503360006111cf828a8a8a611577565b91505060008163ffffffff166111e3611ed3565b6111ed9190612bae565b905063ffffffff82161580611224575060008765ffffffffffff1611801561122457508065ffffffffffff168765ffffffffffff16105b1561123557828a6108698b8b6115ca565b61124f8765ffffffffffff168265ffffffffffff16611faf565b965061125d838b8b8b610cdf565b955061126886611fc5565b83600201600087815260200190815260200160002060000160069054906101000a900463ffffffff1660010194508684600201600088815260200190815260200160002060000160006101000a81548165ffffffffffff021916908365ffffffffffff1602179055508484600201600088815260200190815260200160002060000160066101000a81548163ffffffff021916908363ffffffff1602179055508463ffffffff16867f82a2da5dee54ea8021c6545b4444620291e07ee83be6dd57edb175062715f3b489868e8e8e604051611347959493929190612bcd565b60405180910390a35050505094509492505050565b6001600160a01b0381163314610e9b57604051635f159e6360e01b815260040160405180910390fd5b33600080611394838236612021565b9150915081610ea5578063ffffffff166000036113f05760006113b781366120d9565b5060405163f07e038f60e01b81526001600160a01b03871660048201526001600160401b038216602482015290925060440190506108a2565b610987610c8f8430600036610cdf565b600061140a61148e565b6001600160a01b0385166000818152602083815260408083206001600160e01b0319891680855290835292819020805467ffffffffffffffff19166001600160401b03891690811790915590519283529394507f9ea6790c7dadfd01c9f8b9762b3682607af2c7e79e05a9f9fdf5580dde949151910160405180910390a350505050565b7f40c6c8c28789853c7efd823ab20824bbd71718a8a5915e855f6f288c9a26ad0090565b6000806114c7836001600160701b0316611a34565b5090949350505050565b60006114db61148e565b9050306001600160a01b0384160361151157604051630b40d17960e31b81526001600160a01b03841660048201526024016108a2565b6001600160a01b038316600081815260208390526040908190206001018054851515600160701b0260ff60701b19909116179055517f90d4e7bb7e5d933792b3562e1741306f8be94837e1348dacef9b6f1df56eb13890610bdb90851515815260200190565b600080306001600160a01b0386160361159e57611595868585612021565b915091506115c1565b600483106115ba576115b5868661059787876115ca565b611595565b5060009050805b94509492505050565b60006115d96004828486612c13565b6107a191612c3d565b6000806115ed61148e565b600084815260028201602052604081205491925065ffffffffffff821691600160301b900463ffffffff169082900361163c5760405163060a299b60e41b8152600481018690526024016108a2565b611644611ed3565b65ffffffffffff168265ffffffffffff16111561167757604051630c65b5bd60e11b8152600481018690526024016108a2565b61168082611b09565b156116a157604051631e2975b960e21b8152600481018690526024016108a2565b6000858152600284016020526040808220805465ffffffffffff191690555163ffffffff83169187917f76a2a46953689d4861a5d3f6ed883ad7e6af674a21f8e162707159fc9dde614d9190a3949350505050565b604080516001600160a01b03939093166020808501919091526001600160e01b0319929092168382015280518084038201815260609093019052815191012090565b60608147101561175d5760405163cd78605960e01b81523060048201526024016108a2565b600080856001600160a01b031684866040516117799190612c6d565b60006040518083038185875af1925050503d80600081146117b6576040519150601f19603f3d011682016040523d82523d6000602084013e6117bb565b606091505b50915091506117cb8683836122a5565b9695505050505050565b6000806117e061148e565b905067fffffffffffffffe196001600160401b0387160161181f5760405163061c6a4360e21b81526001600160401b03871660048201526024016108a2565b6001600160401b038616600090815260018201602090815260408083206001600160a01b038916845290915281205465ffffffffffff1615908115611915578563ffffffff1661186d611ed3565b6118779190612bae565b905060405180604001604052808265ffffffffffff1681526020016118a58763ffffffff1663ffffffff1690565b6001600160701b039081169091526001600160401b038a16600090815260018601602090815260408083206001600160a01b038d1684528252909120835181549490920151909216600160301b026001600160a01b031990931665ffffffffffff909116179190911790556119c5565b6001600160401b038816600090815260018401602090815260408083206001600160a01b038b16845290915281205461196191600160301b9091046001600160701b0316908790612301565b6001600160401b038a16600090815260018601602090815260408083206001600160a01b038d168452909152902080546001600160701b03909316600160301b0273ffffffffffffffffffffffffffff000000000000199093169290921790915590505b6040805163ffffffff8716815265ffffffffffff831660208201528315158183015290516001600160a01b038916916001600160401b038b16917ff98448b987f1428e0e230e1f3c6e2ce15b5693eaf31827fbd0b1ec4b424ae7cf9181900360600190a3509695505050505050565b6000806000611a4a84611a45611ed3565b6123ab565b9250925092509193909250565b6000611a6161148e565b90506001600160401b0383161580611a8157506001600160401b03838116145b15611aaa5760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b6001600160401b03838116600081815260018481016020526040808320909101805467ffffffffffffffff19169487169485179055517f1fd6dd7631312dfac2205b52913f99de03b4d7e381d5d27d3dbfe0713e6e63409190a3505050565b6000611b13611ed3565b65ffffffffffff16611b2862093a8084612bae565b65ffffffffffff16111592915050565b6000611b4261148e565b90506001600160401b0383161580611b6257506001600160401b03838116145b15611b8b5760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b6001600160401b0383811660008181526001848101602052604080832090910180546fffffffffffffffff00000000000000001916600160401b958816958602179055517f7a8059630b897b5de4c08ade69f8b90c3ead1f8596d62d10b6c4d14a0afb4ae29190a3505050565b6000611c0261148e565b905067fffffffffffffffe196001600160401b03841601611c415760405163061c6a4360e21b81526001600160401b03841660048201526024016108a2565b6001600160401b03831660009081526001828101602052604082200154611c7c90600160801b90046001600160701b03168462069780612301565b6001600160401b038616600081815260018087016020526040918290200180546001600160701b03909516600160801b026dffffffffffffffffffffffffffff60801b199095169490941790935591519092507ffeb69018ee8b8fd50ea86348f1267d07673379f72cffdeccec63853ee8ce8b4890611d17908690859063ffffffff92909216825265ffffffffffff16602082015260400190565b60405180910390a250505050565b6060600080846001600160a01b031684604051611d429190612c6d565b600060405180830381855af49150503d8060008114611d7d576040519150601f19603f3d011682016040523d82523d6000602084013e611d82565b606091505b5091509150611d928583836122a5565b95945050505050565b600080611da661148e565b9050611db284846116f6565b600390910154149392505050565b600080611dcb61148e565b905067fffffffffffffffe196001600160401b03851601611e0a5760405163061c6a4360e21b81526001600160401b03851660048201526024016108a2565b6001600160401b038416600090815260018201602090815260408083206001600160a01b038716845290915281205465ffffffffffff169003611e51576000915050610b4b565b6001600160401b038416600081815260018301602090815260408083206001600160a01b038816808552925280832080546001600160a01b0319169055519092917ff229baa593af28c41b1d16b748cd7688f0c83aaf92d4be41c44005defe84c16691a35060019392505050565b611ec76123ff565b611ed08161244a565b50565b6000611ede4261248a565b905090565b6000611eed61148e565b90506000611f2583620697806001600160a01b0387166000908152602086905260409020600101546001600160701b03169190612301565b6001600160a01b0386166000818152602086815260409182902060010180546dffffffffffffffffffffffffffff19166001600160701b039690961695909517909455805163ffffffff8816815265ffffffffffff841694810194909452919350917fa56b76017453f399ec2327ba00375dbfb1fd070ff854341ad6191e6a2e2de19c9101611d17565b6000818311611fbe57816107a1565b5090919050565b6000611fcf61148e565b600083815260028201602052604090205490915065ffffffffffff1680158015906120005750611ffe81611b09565b155b15610ea55760405163813e945960e01b8152600481018490526024016108a2565b600080600483101561203857506000905080610e8b565b306001600160a01b0386160361205b57610e423061205686866115ca565b611d9b565b600080600061206a87876120d9565b925092509250826120845760008094509450505050610e8b565b600080612091848b610fb7565b91509150816120ab57600080965096505050505050610e8b565b6120c18363ffffffff168263ffffffff16611faf565b63ffffffff8116159b909a5098505050505050505050565b6000808060048410156120f45750600091508190508061229e565b600061210086866115ca565b90506001600160e01b031981166310a6aa3760e31b148061213157506001600160e01b031981166330cae18760e01b145b8061214c57506001600160e01b0319811663294b14a960e11b145b8061216757506001600160e01b03198116635326cae760e11b145b8061218257506001600160e01b0319811663d22b598960e01b145b156121985760016000809350935093505061229e565b6001600160e01b0319811663063fc60f60e21b14806121c757506001600160e01b0319811663167bd39560e01b145b806121e257506001600160e01b031981166308d6122d60e01b145b156122245760006121f760246004888a612c13565b81019061220491906127a2565b9050600061221182610a88565b6001965060009550935061229e92505050565b6001600160e01b0319811663012e238d60e51b148061225357506001600160e01b03198116635be958b160e11b145b1561229157600061226860246004888a612c13565b81019061227591906125c5565b9050600161228282610ad6565b6000945094509450505061229e565b6000806000935093509350505b9250925092565b6060826122ba576122b5826124c1565b6107a1565b81511580156122d157506001600160a01b0384163b155b156122fa57604051639996b31560e01b81526001600160a01b03851660048201526024016108a2565b50806107a1565b6000806000612318866001600160701b03166114b2565b905060006123558563ffffffff168763ffffffff168463ffffffff161161234057600061234a565b61234a8885612c89565b63ffffffff16611faf565b90508063ffffffff16612366611ed3565b6123709190612bae565b925063ffffffff8616602083901b67ffffffff0000000016604085901b6dffffffffffff000000000000000016171793505050935093915050565b6000808069ffffffffffffffffffff602086901c166001600160701b03861665ffffffffffff604088901c81169087168111156123ea578282826123ef565b816000805b9550955095505050509250925092565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661244857604051631afcd79f60e31b815260040160405180910390fd5b565b6124526123ff565b6001600160a01b03811661247c57604051630409d6d160e11b8152600060048201526024016108a2565b6107ba6000826000806117d5565b600065ffffffffffff8211156124bd576040516306dfcc6560e41b815260306004820152602481018390526044016108a2565b5090565b8051156124d15780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6001600160a01b0381168114611ed057600080fd5b60008083601f84011261251157600080fd5b5081356001600160401b0381111561252857600080fd5b6020830191508360208260051b850101111561102d57600080fd5b80356001600160401b038116811461255a57600080fd5b919050565b6000806000806060858703121561257557600080fd5b8435612580816124ea565b935060208501356001600160401b0381111561259b57600080fd5b6125a7878288016124ff565b90945092506125ba905060408601612543565b905092959194509250565b6000602082840312156125d757600080fd5b6107a182612543565b600080604083850312156125f357600080fd5b82356125fe816124ea565b91506020830135801515811461261357600080fd5b809150509250929050565b6000806040838503121561263157600080fd5b823561263c816124ea565b91506020830135612613816124ea565b60008083601f84011261265e57600080fd5b5081356001600160401b0381111561267557600080fd5b60208301915083602082850101111561102d57600080fd5b6000806000604084860312156126a257600080fd5b83356126ad816124ea565b925060208401356001600160401b038111156126c857600080fd5b6126d48682870161264c565b9497909650939450505050565b803563ffffffff8116811461255a57600080fd5b60008060006060848603121561270a57600080fd5b61271384612543565b92506020840135612723816124ea565b9150612731604085016126e1565b90509250925092565b6000806040838503121561274d57600080fd5b61263c83612543565b6000806040838503121561276957600080fd5b61277283612543565b915061278060208401612543565b90509250929050565b60006020828403121561279b57600080fd5b5035919050565b6000602082840312156127b457600080fd5b81356107a1816124ea565b6001600160e01b031981168114611ed057600080fd5b600080604083850312156127e857600080fd5b82356127f3816124ea565b91506020830135612613816127bf565b60008060006040848603121561281857600080fd5b6126ad84612543565b6000806040838503121561283457600080fd5b61283d83612543565b9150612780602084016126e1565b6000806000806060858703121561286157600080fd5b843561286c816124ea565b9350602085013561287c816124ea565b925060408501356001600160401b0381111561289757600080fd5b6128a38782880161264c565b95989497509550505050565b600080602083850312156128c257600080fd5b82356001600160401b038111156128d857600080fd5b6128e4858286016124ff565b90969095509350505050565b60005b8381101561290b5781810151838201526020016128f3565b50506000910152565b6000602080830181845280855180835260408601915060408160051b870101925083870160005b8281101561298157878503603f1901845281518051808752612962818989018a85016128f0565b601f01601f19169590950186019450928501929085019060010161293b565b5092979650505050505050565b6000806000606084860312156129a357600080fd5b83356129ae816124ea565b925060208401356129be816124ea565b915060408401356129ce816127bf565b809150509250925092565b600080604083850312156129ec57600080fd5b823561283d816124ea565b60008060008060608587031215612a0d57600080fd5b8435612a18816124ea565b935060208501356001600160401b03811115612a3357600080fd5b612a3f8782880161264c565b909450925050604085013565ffffffffffff81168114612a5e57600080fd5b939692955090935050565b634e487b7160e01b600052603260045260246000fd5b600060208284031215612a9157600080fd5b81356107a1816127bf565b634e487b7160e01b600052601160045260246000fd5b600060018201612ac457612ac4612a9c565b5060010190565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b602081526000610a53602083018486612acb565b600060208284031215612b1a57600080fd5b81516107a1816127bf565b6001600160a01b038581168252841660208201526060604082018190526000906117cb9083018486612acb565b634e487b7160e01b600052604160045260246000fd5b6000808335601e19843603018112612b7f57600080fd5b8301803591506001600160401b03821115612b9957600080fd5b60200191503681900382131561102d57600080fd5b65ffffffffffff818116838216019080821115610e0557610e05612a9c565b65ffffffffffff861681526001600160a01b03858116602083015284166040820152608060608201819052600090612c089083018486612acb565b979650505050505050565b60008085851115612c2357600080fd5b83861115612c3057600080fd5b5050820193919092039150565b6001600160e01b03198135818116916004851015612c655780818660040360031b1b83161692505b505092915050565b60008251612c7f8184602087016128f0565b9190910192915050565b63ffffffff828116828216039080821115610e0557610e05612a9c56fea26469706673582212200ae6538f089bb3e9b144e45d48a18927c3aebce616ac1218eef43b59c1b3631464736f6c63430008140033",
1204
- "linkReferences": {},
1205
- "deployedLinkReferences": {}
1206
- }