@etherisc/gif-next 0.0.2-e8b06c8-540 → 0.0.2-e8ea5fe-337

Sign up to get free protection for your applications and to get access to all the features.
Files changed (459) hide show
  1. package/README.md +32 -3
  2. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  3. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +38 -33
  4. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
  5. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
  6. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  7. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +8 -8
  8. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  10. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +1 -1
  12. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  13. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +19 -0
  14. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +1 -1
  15. package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +8 -8
  16. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  17. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +23 -4
  18. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  19. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +85 -101
  20. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  21. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +19 -19
  22. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  23. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +43 -75
  24. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  25. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +223 -105
  26. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  27. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +67 -55
  28. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  29. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +43 -37
  30. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  31. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +120 -31
  32. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
  33. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
  34. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  35. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +7 -7
  36. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  37. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +10 -5
  38. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  39. package/artifacts/contracts/instance/Instance.sol/Instance.json +19 -19
  40. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  41. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1208 -290
  42. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  43. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +31 -31
  44. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  45. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +238 -123
  46. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  47. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +44 -39
  48. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  49. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +35 -35
  50. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  51. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +226 -231
  52. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  53. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  54. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  55. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  56. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  57. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
  58. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +182 -0
  59. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
  60. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
  61. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
  62. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  63. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  64. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  65. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  66. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  67. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  68. package/artifacts/contracts/mock/Dip.sol/Dip.json +2 -2
  69. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  70. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +59 -88
  71. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  72. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +21 -21
  73. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  74. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  75. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +30 -37
  76. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  77. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  78. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +27 -72
  79. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  80. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +32 -32
  81. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  82. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +34 -34
  83. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  84. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +55 -137
  85. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  86. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +19 -19
  87. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  88. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +402 -62
  89. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  90. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +111 -43
  91. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  92. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +205 -1
  93. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  94. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +45 -95
  95. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  96. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +220 -100
  97. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  98. package/artifacts/contracts/pool/Pool.sol/Pool.json +45 -133
  99. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  100. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +264 -136
  101. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  102. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +40 -36
  103. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  104. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +31 -50
  105. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  106. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +31 -43
  107. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  108. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +22 -78
  109. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  110. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +19 -19
  111. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  112. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +194 -72
  113. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  114. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +58 -54
  115. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  116. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +5 -0
  117. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  118. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +114 -0
  119. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  120. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +184 -119
  121. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  122. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +43 -43
  123. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  124. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +19 -37
  125. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
  126. package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +2 -2
  127. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  128. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +242 -209
  129. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  130. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +55 -55
  131. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  132. package/artifacts/contracts/product/PricingService.sol/PricingService.json +113 -153
  133. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  134. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +55 -75
  135. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  136. package/artifacts/contracts/product/Product.sol/Product.json +22 -78
  137. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
  138. package/artifacts/contracts/product/RiskService.sol/RiskService.json +695 -0
  139. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
  140. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +702 -0
  141. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  142. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
  143. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  144. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +51 -47
  145. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  146. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +0 -183
  147. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  148. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  149. package/artifacts/contracts/registry/Registry.sol/Registry.json +102 -74
  150. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  151. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +100 -95
  152. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  153. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +18 -18
  154. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  155. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +27 -27
  156. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
  157. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +164 -0
  158. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
  159. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1159 -0
  160. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  161. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +26 -7
  162. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  163. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
  164. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  165. package/artifacts/contracts/shared/Component.sol/Component.json +0 -64
  166. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  167. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +255 -62
  168. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  169. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +69 -49
  170. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  171. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  172. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +0 -26
  173. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  174. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +153 -0
  175. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  176. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +19 -37
  177. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  178. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.json +11 -5
  179. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  180. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.json +0 -5
  181. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  182. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  183. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  184. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  185. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  186. package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +1 -1
  187. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
  188. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +73 -0
  189. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  190. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +19 -75
  191. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  192. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +15 -89
  193. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  194. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +4 -65
  195. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
  196. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
  197. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  198. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +6 -6
  199. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  200. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +6 -6
  201. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  202. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +8 -8
  203. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  204. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  205. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  206. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  207. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +330 -11
  208. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
  209. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +108 -0
  210. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  211. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +27 -27
  212. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  213. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +1 -1
  214. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +85 -105
  215. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  216. package/artifacts/contracts/staking/Staking.sol/Staking.json +84 -114
  217. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
  218. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +164 -0
  219. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  220. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +47 -43
  221. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  222. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +6 -6
  223. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  224. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +26 -26
  225. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  226. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +31 -31
  227. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  228. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +146 -165
  229. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  230. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +58 -22
  231. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  232. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
  233. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  234. package/artifacts/contracts/type/Amount.sol/AmountLib.json +37 -8
  235. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  236. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +2 -2
  237. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  238. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +4 -4
  239. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  240. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +4 -4
  241. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  242. package/artifacts/contracts/type/Fee.sol/FeeLib.json +17 -12
  243. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  244. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  245. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  246. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +4 -4
  247. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  248. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  249. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  250. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +2 -2
  251. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  252. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +4 -4
  253. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  254. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +4 -4
  255. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  256. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +4 -4
  257. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  258. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +4 -4
  259. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  260. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +14 -14
  261. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  262. package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +50 -2
  263. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  264. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +2 -2
  265. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  266. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
  267. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  268. package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
  269. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  270. package/artifacts/contracts/type/String.sol/StrLib.json +2 -2
  271. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  272. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +23 -4
  273. package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
  274. package/artifacts/contracts/type/UFixed.sol/MathLib.json +9 -3
  275. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  276. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +39 -2
  277. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  278. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
  279. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  280. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
  281. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
  282. package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
  283. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
  284. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +617 -0
  285. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
  286. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
  287. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
  288. package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
  289. package/contracts/authorization/AccessAdmin.sol +8 -39
  290. package/contracts/authorization/AccessManagerCloneable.sol +16 -0
  291. package/contracts/authorization/Authorization.sol +0 -1
  292. package/contracts/authorization/IServiceAuthorization.sol +3 -0
  293. package/contracts/authorization/ModuleAuthorization.sol +0 -125
  294. package/contracts/authorization/ServiceAuthorization.sol +4 -0
  295. package/contracts/distribution/BasicDistribution.sol +4 -15
  296. package/contracts/distribution/BasicDistributionAuthorization.sol +5 -1
  297. package/contracts/distribution/Distribution.sol +22 -10
  298. package/contracts/distribution/DistributionService.sol +67 -34
  299. package/contracts/distribution/DistributionServiceManager.sol +2 -5
  300. package/contracts/distribution/IDistributionComponent.sol +8 -34
  301. package/contracts/distribution/IDistributionService.sol +18 -2
  302. package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
  303. package/contracts/instance/IInstance.sol +12 -35
  304. package/contracts/instance/IInstanceService.sol +6 -5
  305. package/contracts/instance/Instance.sol +15 -79
  306. package/contracts/instance/InstanceAdmin.sol +220 -269
  307. package/contracts/instance/InstanceAuthorizationV3.sol +19 -28
  308. package/contracts/instance/InstanceReader.sol +32 -12
  309. package/contracts/instance/InstanceService.sol +73 -122
  310. package/contracts/instance/InstanceServiceManager.sol +2 -6
  311. package/contracts/instance/InstanceStore.sol +18 -4
  312. package/contracts/instance/base/ObjectLifecycle.sol +111 -0
  313. package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +5 -5
  314. package/contracts/instance/module/IBundle.sol +1 -1
  315. package/contracts/instance/module/IComponents.sol +1 -7
  316. package/contracts/instance/module/IDistribution.sol +0 -1
  317. package/contracts/instance/module/IPolicy.sol +22 -22
  318. package/contracts/mock/Dip.sol +1 -1
  319. package/contracts/oracle/IOracleComponent.sol +2 -1
  320. package/contracts/oracle/Oracle.sol +16 -6
  321. package/contracts/oracle/OracleService.sol +1 -0
  322. package/contracts/oracle/OracleServiceManager.sol +2 -5
  323. package/contracts/pool/BasicPool.sol +7 -5
  324. package/contracts/pool/BasicPoolAuthorization.sol +11 -2
  325. package/contracts/pool/BundleService.sol +189 -47
  326. package/contracts/pool/BundleServiceManager.sol +2 -5
  327. package/contracts/pool/IBundleService.sol +33 -5
  328. package/contracts/pool/IPoolComponent.sol +6 -0
  329. package/contracts/pool/IPoolService.sol +36 -26
  330. package/contracts/pool/Pool.sol +39 -24
  331. package/contracts/pool/PoolService.sol +161 -104
  332. package/contracts/pool/PoolServiceManager.sol +2 -5
  333. package/contracts/product/ApplicationService.sol +51 -57
  334. package/contracts/product/ApplicationServiceManager.sol +2 -2
  335. package/contracts/product/BasicProduct.sol +3 -32
  336. package/contracts/product/BasicProductAuthorization.sol +3 -0
  337. package/contracts/product/ClaimService.sol +118 -73
  338. package/contracts/product/ClaimServiceManager.sol +2 -2
  339. package/contracts/product/IApplicationService.sol +1 -0
  340. package/contracts/product/IClaimService.sol +28 -5
  341. package/contracts/product/IPolicyService.sol +27 -32
  342. package/contracts/product/IPricingService.sol +7 -7
  343. package/contracts/product/IProductComponent.sol +1 -1
  344. package/contracts/product/{IProductService.sol → IRiskService.sol} +1 -1
  345. package/contracts/product/PolicyService.sol +278 -180
  346. package/contracts/product/PolicyServiceManager.sol +2 -5
  347. package/contracts/product/PricingService.sol +42 -41
  348. package/contracts/product/PricingServiceManager.sol +2 -5
  349. package/contracts/product/Product.sol +67 -34
  350. package/contracts/product/{ProductService.sol → RiskService.sol} +10 -37
  351. package/contracts/product/RiskServiceManager.sol +39 -0
  352. package/contracts/registry/IRegistry.sol +27 -17
  353. package/contracts/registry/IRegistryService.sol +6 -6
  354. package/contracts/registry/Registry.sol +81 -87
  355. package/contracts/registry/RegistryAdmin.sol +34 -23
  356. package/contracts/registry/RegistryService.sol +4 -18
  357. package/contracts/registry/RegistryServiceManager.sol +2 -2
  358. package/contracts/registry/ReleaseLifecycle.sol +27 -0
  359. package/contracts/registry/{ReleaseManager.sol → ReleaseRegistry.sol} +149 -194
  360. package/contracts/registry/ServiceAuthorizationV3.sol +7 -10
  361. package/contracts/registry/TokenRegistry.sol +2 -2
  362. package/contracts/shared/Component.sol +25 -38
  363. package/contracts/shared/ComponentService.sol +84 -69
  364. package/contracts/shared/ComponentServiceManager.sol +2 -2
  365. package/contracts/shared/ComponentVerifyingService.sol +1 -1
  366. package/contracts/shared/IComponent.sol +4 -4
  367. package/contracts/shared/IComponentService.sol +15 -9
  368. package/contracts/shared/IInstanceLinkedComponent.sol +9 -10
  369. package/contracts/shared/IKeyValueStore.sol +1 -0
  370. package/contracts/shared/ILifecycle.sol +1 -2
  371. package/contracts/shared/IService.sol +1 -1
  372. package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +1 -1
  373. package/contracts/shared/InstanceLinkedComponent.sol +22 -2
  374. package/contracts/shared/KeyValueStore.sol +6 -2
  375. package/contracts/shared/Lifecycle.sol +16 -69
  376. package/contracts/shared/{NftIdSetManager.sol → NftIdSet.sol} +1 -1
  377. package/contracts/shared/NftOwnable.sol +3 -3
  378. package/contracts/shared/PolicyHolder.sol +2 -5
  379. package/contracts/shared/Service.sol +3 -4
  380. package/contracts/shared/TokenHandler.sol +100 -19
  381. package/contracts/shared/TokenHandlerDeployerLib.sol +12 -0
  382. package/contracts/staking/IStaking.sol +3 -3
  383. package/contracts/staking/IStakingService.sol +12 -5
  384. package/contracts/staking/StakeManagerLib.sol +18 -25
  385. package/contracts/staking/Staking.sol +24 -39
  386. package/contracts/staking/StakingLifecycle.sol +23 -0
  387. package/contracts/staking/StakingManager.sol +2 -6
  388. package/contracts/staking/StakingReader.sol +12 -16
  389. package/contracts/staking/StakingService.sol +8 -12
  390. package/contracts/staking/StakingServiceManager.sol +2 -2
  391. package/contracts/staking/StakingStore.sol +15 -23
  392. package/contracts/staking/TargetManagerLib.sol +7 -3
  393. package/contracts/type/Amount.sol +12 -5
  394. package/contracts/type/Blocknumber.sol +7 -1
  395. package/contracts/type/ObjectType.sol +18 -18
  396. package/contracts/type/Referral.sol +1 -0
  397. package/contracts/type/RoleId.sol +10 -38
  398. package/contracts/type/Seconds.sol +21 -1
  399. package/contracts/type/StateId.sol +1 -0
  400. package/contracts/type/Timestamp.sol +11 -1
  401. package/contracts/type/UFixed.sol +29 -10
  402. package/contracts/type/Version.sol +3 -1
  403. package/contracts/{shared → upgradeability}/ProxyManager.sol +3 -4
  404. package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
  405. package/package.json +3 -3
  406. package/artifacts/contracts/authorization/InstanceAdmin.sol/InstanceAdmin.dbg.json +0 -4
  407. package/artifacts/contracts/authorization/InstanceAdmin.sol/InstanceAdmin.json +0 -1385
  408. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
  409. package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -703
  410. package/artifacts/contracts/instance/InstanceAdminNew.sol/InstanceAdminNew.dbg.json +0 -4
  411. package/artifacts/contracts/instance/InstanceAdminNew.sol/InstanceAdminNew.json +0 -1616
  412. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
  413. package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -228
  414. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
  415. package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -181
  416. package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
  417. package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
  418. package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -708
  419. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
  420. package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -702
  421. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
  422. package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1237
  423. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
  424. package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +0 -1193
  425. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
  426. package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1747
  427. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
  428. package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1760
  429. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
  430. package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1838
  431. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
  432. package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1856
  433. package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
  434. package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
  435. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
  436. package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
  437. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
  438. package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
  439. package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
  440. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +0 -4
  441. package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +0 -306
  442. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
  443. package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -617
  444. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
  445. package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
  446. package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
  447. package/contracts/authorization/InstanceAdmin.sol +0 -108
  448. package/contracts/instance/InstanceAdminNew.sol +0 -261
  449. package/contracts/instance/InstanceAuthorizationsLib.sol +0 -422
  450. package/contracts/product/ProductServiceManager.sol +0 -42
  451. package/contracts/shared/AccessManagerCustom.sol +0 -741
  452. package/contracts/shared/AccessManagerExtended.sol +0 -481
  453. package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
  454. package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
  455. package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
  456. package/contracts/shared/IAccessManagerExtended.sol +0 -74
  457. package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
  458. /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
  459. /package/contracts/{shared → upgradeability}/Versionable.sol +0 -0
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/738273943de8559a18576d572e141a51.json"
3
+ "buildInfo": "../../../build-info/e2e3b7f72e025759291be05737506c35.json"
4
4
  }
@@ -10,7 +10,7 @@
10
10
  },
11
11
  {
12
12
  "inputs": [],
13
- "name": "BUNDLE_MANAGER_TARGET_NAME",
13
+ "name": "BUNDLE_SET_TARGET_NAME",
14
14
  "outputs": [
15
15
  {
16
16
  "internalType": "string",
@@ -444,18 +444,18 @@
444
444
  "type": "function"
445
445
  }
446
446
  ],
447
- "bytecode": "0x60c0604052600960809081526810dbdb5c1bdb995b9d60ba1b60a0526000906200002a908262002081565b503480156200003857600080fd5b50604080518082019091526008815267496e7374616e636560c01b602082015280600062000067828262002081565b50620000726200008e565b6200007c62000189565b62000086620002ef565b5050620023d8565b620000d66200009c62000317565b60408051808201909152601581527f446973747269627574696f6e4f776e6572526f6c650000000000000000000000602082015262000397565b5062000111620000e5620003ef565b60408051808201909152600f81526e4f7261636c654f776e6572526f6c6560881b602082015262000397565b506200014a620001206200042b565b60408051808201909152600d81526c506f6f6c4f776e6572526f6c6560981b602082015262000397565b50620001866200015962000467565b60408051808201909152601081526f50726f647563744f776e6572526f6c6560801b602082015262000397565b50565b604080518082019091526008815267496e7374616e636560c01b6020820152620001e890620001bf600a620004a8565b620004a8565b60408051808201909152600c81526b496e7374616e6365526f6c6560a01b602082015262000525565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526200021790620006ce565b60408051808201909152600d81526c24b739ba30b731b2a0b236b4b760991b60208201526200024690620006ce565b60408051808201909152600d81526c213ab7323632a6b0b730b3b2b960991b60208201526200027590620006ce565b62000281600a62000758565b6200028d600b62000758565b62000299600e62000758565b620002a5600d62000758565b620002b1600f62000758565b620002bd601e62000758565b620002c9600c62000758565b620002d5601462000758565b620002e1601562000758565b620002ed601662000758565b565b620002f962000b48565b6200030362000bd4565b6200030d62000c8a565b620002ed620017c4565b604051637c3940bf60e01b8152600d600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf906024015b602060405180830381865af41580156200036c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200039291906200214d565b905090565b6040805160a081018252600080825260208201819052918101829052606081018290526080810191909152620003e983620003e3620003d56200190f565b600263ffffffff876200194b565b62001aba565b92915050565b604051637c3940bf60e01b8152600c600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf906024016200034e565b604051637c3940bf60e01b8152600e600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf906024016200034e565b604051637c3940bf60e01b8152600b600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf906024016200034e565b600a90565b60405163369e953f60e11b815260ff8216600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__90636d3d2a7e906024015b602060405180830381865af4158015620004ff573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620003e991906200214d565b60405163cdc23e6960e01b815260009073__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e699062000561908790600401620021d3565b602060405180830381865af41580156200057f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620005a59190620021e8565b6001805480820182557fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf601829055600082815260036020908152604091829020805460ff1916909317909255805163bc1b392d60e01b815290519293506200067e92869273__$1d92393fa9ccd763988368ce8a1cb90d26$__9263bc1b392d92600480830193928290030181865af415801562000646573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200066c91906200214d565b6001600160401b039081169116141590565b15620006c8576200068f8362001bd4565b620006a057620006a0838362001c1b565b600081815260026020526040902080546001600160401b0319166001600160401b0385161790555b50505050565b620001868173__$1d92393fa9ccd763988368ce8a1cb90d26$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156200071d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200074391906200214d565b60408051602081019091526000815262000525565b600880546001810182556000918252602081047ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee301805460ff858116601f9094166101000a848102910219909116179055604051632b95d28f60e21b8152600481019190915273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063f7fa7a7c90829063ae574a3c90602401600060405180830381865af415801562000803573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200082d919081019062002202565b6200083762001c38565b604051632b10f60d60e21b815260ff909116600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af41580156200088b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008b19190620021e8565b6040518363ffffffff1660e01b8152600401620008d0929190620022ba565b600060405180830381865af4158015620008ee573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000918919081019062002202565b60405163cdc23e6960e01b815290915073__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e699062000954908490600401620021d3565b602060405180830381865af415801562000972573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620009989190620021e8565b60ff8316600090815260096020526040812091909155620009b98362001cb2565b604051632b95d28f60e21b815260ff8516600482015290915060009073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063f7fa7a7c90829063ae574a3c90602401600060405180830381865af415801562000a1a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000a44919081019062002202565b62000a4e62001c38565b604051632b10f60d60e21b815260ff909116600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af415801562000aa2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ac89190620021e8565b6040518363ffffffff1660e01b815260040162000ae7929190620022ff565b600060405180830381865af415801562000b05573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262000b2f919081019062002202565b9050620006c883838362000525565b600b90565b601e90565b600062000b8f60405180604001604052806008815260200167496e7374616e636560c01b81525062000b8962000b83620004a360201b60201c565b62001cb2565b62001d07565b9050620001868163f7bc431c60e01b6040518060400160405280601181526020017039b2ba24b739ba30b731b2a932b0b232b960791b81525062001ded60201b60201c565b600062000c146040518060400160405280600d81526020016c24b739ba30b731b2a0b236b4b760991b81525062000b89620001b9620004a360201b60201c565b905062000c518163b428b0b060e01b604051806040016040528060098152602001686772616e74526f6c6560b81b81525062001ded60201b60201c565b60408051808201909152600d81526c24b739ba30b731b2a0b236b4b760991b602082015262000c869062000b89600a62001cb2565b5050565b600062000cca6040518060400160405280600d81526020016c496e7374616e636553746f726560981b81525062000b8962000b8362000b3e60201b60201c565b905062000d0d81634846003a60e01b6040518060400160405280600f81526020016e18dc99585d1950dbdb5c1bdb995b9d608a1b81525062001ded60201b60201c565b60408051808201909152600f81526e1d5c19185d1950dbdb5c1bdb995b9d608a1b602082015262000d4890829062f0266b60e21b9062001ded565b60408051808201909152600a81526918dc99585d19541bdbdb60b21b602082015262000d7f908290637892982360e01b9062001ded565b60408051808201909152600d81526c18dc99585d19541c9bd91d58dd609a1b602082015262000db990829063a6a67b1f60e01b9062001ded565b60408051808201909152600d81526c1d5c19185d19541c9bd91d58dd609a1b602082015262000df390829063b5b3d9f960e01b9062001ded565b60408051808201909152600f81526e696e63726561736542616c616e636560881b602082015262000e2f908290639f8151e560e01b9062001ded565b60408051808201909152600c81526b696e6372656173654665657360a01b602082015262000e6890829063e80c61ed60e01b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b602082015262000e9d9062000b89600e62001cb2565b905062000eee816330a130ba60e01b6040518060400160405280601581526020017f6372656174654469737472696275746f7254797065000000000000000000000081525062001ded60201b60201c565b60408051808201909152601581527f7570646174654469737472696275746f72547970650000000000000000000000602082015262000f389082906305a8416b60e41b9062001ded565b60408051808201909152601a81527f7570646174654469737472696275746f72547970655374617465000000000000602082015262000f8290829063a284222960e01b9062001ded565b60408051808201909152601181527031b932b0ba32a234b9ba3934b13aba37b960791b602082015262000fc0908290631f32844960e21b9062001ded565b6040805180820190915260118152703ab83230ba32a234b9ba3934b13aba37b960791b602082015262000ffe908290631e40b36360e01b9062001ded565b60408051808201909152601681527f7570646174654469737472696275746f725374617465000000000000000000006020820152620010489082906340529b0f60e01b9062001ded565b60408051808201909152600e81526d18dc99585d19549959995c9c985b60921b602082015262001083908290631941cfe160e31b9062001ded565b60408051808201909152600e81526d1d5c19185d19549959995c9c985b60921b6020820152620010be9082906330882f0760e11b9062001ded565b60408051808201909152601381527f757064617465526566657272616c53746174650000000000000000000000000060208201526200110790829062af902560e81b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526200113d9062000b8962000b83600d90565b90506200117e81630632b17d60e01b6040518060400160405280600d81526020016c18dc99585d1954995c5d595cdd609a1b81525062001ded60201b60201c565b60408051808201909152600d81526c1d5c19185d1954995c5d595cdd609a1b6020820152620011b890829063275c059560e01b9062001ded565b60408051808201909152601281527175706461746552657175657374537461746560701b6020820152620011f7908290635a6bf7f160e11b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526200122c9062000b89600f62001cb2565b90506200126a8163763bb75460e01b6040518060400160405280600a8152602001691d5c19185d19541bdbdb60b21b81525062001ded60201b60201c565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526200129f9062000b89601e62001cb2565b9050620012df8163a46eb8dc60e01b6040518060400160405280600c81526020016b63726561746542756e646c6560a01b81525062001ded60201b60201c565b60408051808201909152600c81526b75706461746542756e646c6560a01b6020820152620013189082906351dd844b60e01b9062001ded565b60408051808201909152601181527075706461746542756e646c65537461746560781b602082015262001356908290637f0f8c6b60e11b9062001ded565b60408051808201909152600e81526d1a5b98dc99585cd9531bd8dad95960921b60208201526200139190829063248a77dd60e01b9062001ded565b60408051808201909152600e81526d191958dc99585cd9531bd8dad95960921b6020820152620013cc9082906353ebe12960e01b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b6020820152620014019062000b89600c62001cb2565b90506200143f81632f61088a60e01b6040518060400160405280600a8152602001696372656174655269736b60b01b81525062001ded60201b60201c565b60408051808201909152600a8152697570646174655269736b60b01b6020820152620014769082906314eddc0360e31b9062001ded565b60408051808201909152600f81526e7570646174655269736b537461746560881b6020820152620014b2908290633e77a42160e11b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b6020820152620014e79062000b89601462001cb2565b90506200152c81632a8ea7ac60e01b6040518060400160405280601181526020017031b932b0ba32a0b8383634b1b0ba34b7b760791b81525062001ded60201b60201c565b6040805180820190915260118152703ab83230ba32a0b8383634b1b0ba34b7b760791b60208201526200156a90829063287f040160e21b9062001ded565b60408051808201909152601681527f7570646174654170706c69636174696f6e5374617465000000000000000000006020820152620015b4908290630fad0eb160e01b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b6020820152620015e99062000b89601562001cb2565b9050620016298163985aeba760e01b6040518060400160405280600c81526020016b757064617465506f6c69637960a01b81525062001ded60201b60201c565b604080518082019091526011815270757064617465506f6c696379537461746560781b602082015262001667908290631750d17360e21b9062001ded565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526200169c9062000b89601662001cb2565b9050620016e28163f5884fc560e01b60405180604001604052806012815260200171757064617465506f6c696379436c61696d7360701b81525062001ded60201b60201c565b60408051808201909152600b81526a637265617465436c61696d60a81b60208201526200171a908290630cfc3ba360e01b9062001ded565b60408051808201909152600b81526a757064617465436c61696d60a81b60208201526200175290829063fae5df9b60e01b9062001ded565b60408051808201909152600c81526b18dc99585d1954185e5bdd5d60a21b60208201526200178b9082906340e1594160e11b9062001ded565b60408051808201909152600c81526b1d5c19185d1954185e5bdd5d60a21b602082015262000186908290630f6c29ef60e01b9062001ded565b6000620018046040518060400160405280600d81526020016c213ab7323632a6b0b730b3b2b960991b81525062000b8962000b8362000b4360201b60201c565b90506200184281630cc7e61460e01b6040518060400160405280600a8152602001696c696e6b506f6c69637960b01b81525062001ded60201b60201c565b60408051808201909152600c81526b756e6c696e6b506f6c69637960a01b60208201526200187b908290631351fccf60e31b9062001ded565b60408051808201909152600381526218591960ea1b6020820152620018ab9082906346f0e8a760e11b9062001ded565b6040805180820190915260048152636c6f636b60e01b6020820152620018dc90829063b5346af560e01b9062001ded565b604080518082019091526006815265756e6c6f636b60d01b6020820152620001869082906306fa456560e01b9062001ded565b604051637c3940bf60e01b81526000600482018190529073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf906024016200034e565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091526040518060a00160405280866001600160401b03168152602001856003811115620019a557620019a562002348565b81526020018463ffffffff16815260200173__$9a094f9b231ed0f5f85a69be8408d93180$__63cdc23e69856040518263ffffffff1660e01b8152600401620019ef9190620021d3565b602060405180830381865af415801562001a0d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001a339190620021e8565b815260200173__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801562001a82573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001aa891906200235e565b64ffffffffff16905295945050505050565b600480546001810182559081047f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160401b0380861660086003958616026101000a818102908302199093169290921790925560009081526005602090815260409091208451815493166001600160401b03198416811782559185015185949193909284926001600160481b031990921617906801000000000000000090849081111562001b725762001b7262002348565b02179055506040820151815463ffffffff60481b1916690100000000000000000063ffffffff90921691909102178155606082015160018201556080909101516002909101805464ffffffffff191664ffffffffff9092169190911790555050565b6000806001600160401b03831660009081526005602052604090205468010000000000000000900460ff16600381111562001c135762001c1362002348565b141592915050565b62000c8682620003e362001c2e6200190f565b600180866200194b565b604051632392b61b60e21b81526003600482015260009073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af415801562001c8c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000392919062002387565b600073__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d38362001cd962001c38565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401620004e1565b60008073__$9a094f9b231ed0f5f85a69be8408d93180$__63cdc23e69856040518263ffffffff1660e01b815260040162001d439190620021d3565b602060405180830381865af415801562001d61573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d879190620021e8565b60008181526006602090815260408083208054600181018255908452828420600482040180546001600160401b03808b1660086003909516949094026101000a848102910219909116179055938352600782528083209383529290522091505092915050565b60408051606081019182905263cdc23e6960e01b90915283908073__$9a094f9b231ed0f5f85a69be8408d93180$__63cdc23e6962001e308660648501620021d3565b602060405180830381865af415801562001e4e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001e749190620021e8565b8152604051636b15ee8b60e01b81526001600160e01b03198616600482015260209091019073__$0904195350e4c23ecb1d51df0a32586dcd$__90636b15ee8b90602401602060405180830381865af415801562001ed6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001efc9190620023ac565b6001600160e01b031916815260200173__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801562001f55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f7b91906200235e565b64ffffffffff908116909152825460018181018555600094855260209485902084516002909302019182559383015193018054604090930151909116640100000000026001600160481b031990921660e09390931c92909217179055505050565b634e487b7160e01b600052604160045260246000fd5b600181811c908216806200200757607f821691505b6020821081036200202857634e487b7160e01b600052602260045260246000fd5b50919050565b601f8211156200207c57600081815260208120601f850160051c81016020861015620020575750805b601f850160051c820191505b81811015620020785782815560010162002063565b5050505b505050565b81516001600160401b038111156200209d576200209d62001fdc565b620020b581620020ae845462001ff2565b846200202e565b602080601f831160018114620020ed5760008415620020d45750858301515b600019600386901b1c1916600185901b17855562002078565b600085815260208120601f198616915b828110156200211e57888601518255948401946001909101908401620020fd565b50858210156200213d5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6000602082840312156200216057600080fd5b81516001600160401b03811681146200217857600080fd5b9392505050565b60005b838110156200219c57818101518382015260200162002182565b50506000910152565b60008151808452620021bf8160208601602086016200217f565b601f01601f19169290920160200192915050565b602081526000620021786020830184620021a5565b600060208284031215620021fb57600080fd5b5051919050565b6000602082840312156200221557600080fd5b81516001600160401b03808211156200222d57600080fd5b818401915084601f8301126200224257600080fd5b81518181111562002257576200225762001fdc565b604051601f8201601f19908116603f0116810190838211818310171562002282576200228262001fdc565b816040528281528760208487010111156200229c57600080fd5b620022af8360208301602088016200217f565b979650505050505050565b606081526000620022cf6060830185620021a5565b828103602084015260078152665365727669636560c81b6020820152604081019150508260408301529392505050565b606081526000620023146060830185620021a5565b8281036020840152600b81526a53657276696365526f6c6560a81b6020820152604081019150508260408301529392505050565b634e487b7160e01b600052602160045260246000fd5b6000602082840312156200237157600080fd5b815164ffffffffff811681146200217857600080fd5b6000602082840312156200239a57600080fd5b815160ff811681146200217857600080fd5b600060208284031215620023bf57600080fd5b81516001600160e01b0319811681146200217857600080fd5b610e8e80620023e86000396000f3fe608060405234801561001057600080fd5b506004361061018e5760003560e01c806376b707b7116100de578063c143892b11610097578063d054044311610071578063d0540443146104a8578063e8eba435146104d3578063e98771bd146104e6578063f00e6a2a1461051257600080fd5b8063c143892b14610448578063c5f3484414610472578063c6a001791461049557600080fd5b806376b707b714610351578063775f14b11461036b5780638c5397b0146103ae578063a1516b3b146103c1578063aa689ae5146103f5578063beeef6eb1461041c57600080fd5b806354e17da91161014b578063608b081e11610125578063608b081e146102e657806363fe3b561461031257806368c55b1314610327578063710613981461033c57600080fd5b806354e17da9146102705780635bfa5027146102935780635c935ce0146102b357600080fd5b80630714477914610193578063116951cb146101d757806318029ab4146102065780631e4afbbf1461021c5780632f8ade121461023c578063433f95d614610268575b600080fd5b6101c16040518060400160405280600f81526020016e4f7261636c654f776e6572526f6c6560881b81525081565b6040516101ce9190610b06565b60405180910390f35b6101c16040518060400160405280601081526020016f50726f647563744f776e6572526f6c6560801b81525081565b61020e600381565b6040519081526020016101ce565b61022f61022a366004610b6d565b61051a565b6040516101ce9190610b9d565b6101c16040518060400160405280600d81526020016c496e7374616e636553746f726560981b81525081565b6101c16105ca565b61020e61027e366004610c16565b60ff1660009081526009602052604090205490565b6102a66102a1366004610c3a565b61065c565b6040516101ce9190610c6d565b6102d66102c1366004610cdb565b60009081526003602052604090205460ff1690565b60405190151581526020016101ce565b6101c16040518060400160405280600d81526020016c24b739ba30b731b2a0b236b4b760991b81525081565b61031a61071f565b6040516101ce9190610cf4565b61032f610776565b6040516101ce9190610d38565b6103446107eb565b6040516101ce9190610d73565b610359610876565b60405160ff90911681526020016101ce565b610395610379366004610cdb565b60009081526002602052604090205467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016101ce565b6103446103bc366004610cdb565b6108f2565b6101c160405180604001604052806015815260200174446973747269627574696f6e4f776e6572526f6c6560581b81525081565b6101c160405180604001604052806008815260200167496e7374616e636560c01b81525081565b6101c16040518060400160405280600d81526020016c213ab7323632a6b0b730b3b2b960991b81525081565b6101c16040518060400160405280600b81526020016a53657276696365526f6c6560a81b81525081565b6101c160405180604001604052806004815260200163526f6c6560e01b81525081565b6102d66104a3366004610c3a565b610988565b6101c16040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b81525081565b6103956104e1366004610c16565b6109c8565b6101c16040518060400160405280600d81526020016c506f6f6c4f776e6572526f6c6560981b81525081565b61020e610a5c565b600082815260076020908152604080832067ffffffffffffffff851684528252808320805482518185028101850190935280835260609492939192909184015b828210156105be57600084815260209081902060408051606081018252600286029092018054835260019081015460e081901b6001600160e01b03191684860152640100000000900464ffffffffff1691830191909152908352909201910161055a565b50505050905092915050565b6060600080546105d990610db5565b80601f016020809104026020016040519081016040528092919081815260200182805461060590610db5565b80156106525780601f1061062757610100808354040283529160200191610652565b820191906000526020600020905b81548152906001019060200180831161063557829003601f168201915b5050505050905090565b6040805160a0808201835260008083526020808401829052838501829052606084018290526080840182905267ffffffffffffffff8681168352600582529185902085519384019095528454918216835292939192830190600160401b900460ff1660038111156106cf576106cf610c57565b60038111156106e0576106e0610c57565b815281546901000000000000000000900463ffffffff1660208201526001820154604082015260029091015464ffffffffff1660609091015292915050565b6060600180548060200260200160405190810160405280929190818152602001828054801561065257602002820191906000526020600020905b815481526020019060010190808311610759575050505050905090565b6060600880548060200260200160405190810160405280929190818152602001828054801561065257602002820191906000526020600020906000905b825461010083900a900460ff168152602060019283018181049485019490930390920291018084116107b35790505050505050905090565b6060600480548060200260200160405190810160405280929190818152602001828054801561065257602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116108285790505050505050905090565b604051632392b61b60e21b81526003600482015260009073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156108c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ed9190610def565b905090565b60008181526006602090815260409182902080548351818402810184019094528084526060939283018282801561097c57602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116109375790505b50505050509050919050565b60008067ffffffffffffffff8316600090815260056020526040902054600160401b900460ff1660038111156109c0576109c0610c57565b141592915050565b600073__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d3836109ed610876565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865af4158015610a32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a569190610e0c565b92915050565b60015460009015610a8b576001600081548110610a7b57610a7b610e29565b9060005260206000200154905090565b60405163cdc23e6960e01b8152602060048201526000602482015273__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e6990604401602060405180830381865af4158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ed9190610e3f565b600060208083528351808285015260005b81811015610b3357858101830151858201604001528201610b17565b506000604082860101526040601f19601f8301168501019250505092915050565b67ffffffffffffffff81168114610b6a57600080fd5b50565b60008060408385031215610b8057600080fd5b823591506020830135610b9281610b54565b809150509250929050565b602080825282518282018190526000919060409081850190868401855b82811015610bfa57815180518552868101516001600160e01b0319168786015285015164ffffffffff168585015260609093019290850190600101610bba565b5091979650505050505050565b60ff81168114610b6a57600080fd5b600060208284031215610c2857600080fd5b8135610c3381610c07565b9392505050565b600060208284031215610c4c57600080fd5b8135610c3381610b54565b634e487b7160e01b600052602160045260246000fd5b815167ffffffffffffffff168152602082015160a082019060048110610ca357634e487b7160e01b600052602160045260246000fd5b8060208401525063ffffffff60408401511660408301526060830151606083015264ffffffffff608084015116608083015292915050565b600060208284031215610ced57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015610d2c57835183529284019291840191600101610d10565b50909695505050505050565b6020808252825182820181905260009190848201906040850190845b81811015610d2c57835160ff1683529284019291840191600101610d54565b6020808252825182820181905260009190848201906040850190845b81811015610d2c57835167ffffffffffffffff1683529284019291840191600101610d8f565b600181811c90821680610dc957607f821691505b602082108103610de957634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215610e0157600080fd5b8151610c3381610c07565b600060208284031215610e1e57600080fd5b8151610c3381610b54565b634e487b7160e01b600052603260045260246000fd5b600060208284031215610e5157600080fd5b505191905056fea2646970667358221220f7cd66b937246811578d6596583e64680c2774fcc6c1645e9fed6dbd9bde37c164736f6c63430008140033",
448
- "deployedBytecode": "0x608060405234801561001057600080fd5b506004361061018e5760003560e01c806376b707b7116100de578063c143892b11610097578063d054044311610071578063d0540443146104a8578063e8eba435146104d3578063e98771bd146104e6578063f00e6a2a1461051257600080fd5b8063c143892b14610448578063c5f3484414610472578063c6a001791461049557600080fd5b806376b707b714610351578063775f14b11461036b5780638c5397b0146103ae578063a1516b3b146103c1578063aa689ae5146103f5578063beeef6eb1461041c57600080fd5b806354e17da91161014b578063608b081e11610125578063608b081e146102e657806363fe3b561461031257806368c55b1314610327578063710613981461033c57600080fd5b806354e17da9146102705780635bfa5027146102935780635c935ce0146102b357600080fd5b80630714477914610193578063116951cb146101d757806318029ab4146102065780631e4afbbf1461021c5780632f8ade121461023c578063433f95d614610268575b600080fd5b6101c16040518060400160405280600f81526020016e4f7261636c654f776e6572526f6c6560881b81525081565b6040516101ce9190610b06565b60405180910390f35b6101c16040518060400160405280601081526020016f50726f647563744f776e6572526f6c6560801b81525081565b61020e600381565b6040519081526020016101ce565b61022f61022a366004610b6d565b61051a565b6040516101ce9190610b9d565b6101c16040518060400160405280600d81526020016c496e7374616e636553746f726560981b81525081565b6101c16105ca565b61020e61027e366004610c16565b60ff1660009081526009602052604090205490565b6102a66102a1366004610c3a565b61065c565b6040516101ce9190610c6d565b6102d66102c1366004610cdb565b60009081526003602052604090205460ff1690565b60405190151581526020016101ce565b6101c16040518060400160405280600d81526020016c24b739ba30b731b2a0b236b4b760991b81525081565b61031a61071f565b6040516101ce9190610cf4565b61032f610776565b6040516101ce9190610d38565b6103446107eb565b6040516101ce9190610d73565b610359610876565b60405160ff90911681526020016101ce565b610395610379366004610cdb565b60009081526002602052604090205467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016101ce565b6103446103bc366004610cdb565b6108f2565b6101c160405180604001604052806015815260200174446973747269627574696f6e4f776e6572526f6c6560581b81525081565b6101c160405180604001604052806008815260200167496e7374616e636560c01b81525081565b6101c16040518060400160405280600d81526020016c213ab7323632a6b0b730b3b2b960991b81525081565b6101c16040518060400160405280600b81526020016a53657276696365526f6c6560a81b81525081565b6101c160405180604001604052806004815260200163526f6c6560e01b81525081565b6102d66104a3366004610c3a565b610988565b6101c16040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b81525081565b6103956104e1366004610c16565b6109c8565b6101c16040518060400160405280600d81526020016c506f6f6c4f776e6572526f6c6560981b81525081565b61020e610a5c565b600082815260076020908152604080832067ffffffffffffffff851684528252808320805482518185028101850190935280835260609492939192909184015b828210156105be57600084815260209081902060408051606081018252600286029092018054835260019081015460e081901b6001600160e01b03191684860152640100000000900464ffffffffff1691830191909152908352909201910161055a565b50505050905092915050565b6060600080546105d990610db5565b80601f016020809104026020016040519081016040528092919081815260200182805461060590610db5565b80156106525780601f1061062757610100808354040283529160200191610652565b820191906000526020600020905b81548152906001019060200180831161063557829003601f168201915b5050505050905090565b6040805160a0808201835260008083526020808401829052838501829052606084018290526080840182905267ffffffffffffffff8681168352600582529185902085519384019095528454918216835292939192830190600160401b900460ff1660038111156106cf576106cf610c57565b60038111156106e0576106e0610c57565b815281546901000000000000000000900463ffffffff1660208201526001820154604082015260029091015464ffffffffff1660609091015292915050565b6060600180548060200260200160405190810160405280929190818152602001828054801561065257602002820191906000526020600020905b815481526020019060010190808311610759575050505050905090565b6060600880548060200260200160405190810160405280929190818152602001828054801561065257602002820191906000526020600020906000905b825461010083900a900460ff168152602060019283018181049485019490930390920291018084116107b35790505050505050905090565b6060600480548060200260200160405190810160405280929190818152602001828054801561065257602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116108285790505050505050905090565b604051632392b61b60e21b81526003600482015260009073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156108c9573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ed9190610def565b905090565b60008181526006602090815260409182902080548351818402810184019094528084526060939283018282801561097c57602002820191906000526020600020906000905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116109375790505b50505050509050919050565b60008067ffffffffffffffff8316600090815260056020526040902054600160401b900460ff1660038111156109c0576109c0610c57565b141592915050565b600073__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d3836109ed610876565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865af4158015610a32573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a569190610e0c565b92915050565b60015460009015610a8b576001600081548110610a7b57610a7b610e29565b9060005260206000200154905090565b60405163cdc23e6960e01b8152602060048201526000602482015273__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e6990604401602060405180830381865af4158015610ae2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ed9190610e3f565b600060208083528351808285015260005b81811015610b3357858101830151858201604001528201610b17565b506000604082860101526040601f19601f8301168501019250505092915050565b67ffffffffffffffff81168114610b6a57600080fd5b50565b60008060408385031215610b8057600080fd5b823591506020830135610b9281610b54565b809150509250929050565b602080825282518282018190526000919060409081850190868401855b82811015610bfa57815180518552868101516001600160e01b0319168786015285015164ffffffffff168585015260609093019290850190600101610bba565b5091979650505050505050565b60ff81168114610b6a57600080fd5b600060208284031215610c2857600080fd5b8135610c3381610c07565b9392505050565b600060208284031215610c4c57600080fd5b8135610c3381610b54565b634e487b7160e01b600052602160045260246000fd5b815167ffffffffffffffff168152602082015160a082019060048110610ca357634e487b7160e01b600052602160045260246000fd5b8060208401525063ffffffff60408401511660408301526060830151606083015264ffffffffff608084015116608083015292915050565b600060208284031215610ced57600080fd5b5035919050565b6020808252825182820181905260009190848201906040850190845b81811015610d2c57835183529284019291840191600101610d10565b50909695505050505050565b6020808252825182820181905260009190848201906040850190845b81811015610d2c57835160ff1683529284019291840191600101610d54565b6020808252825182820181905260009190848201906040850190845b81811015610d2c57835167ffffffffffffffff1683529284019291840191600101610d8f565b600181811c90821680610dc957607f821691505b602082108103610de957634e487b7160e01b600052602260045260246000fd5b50919050565b600060208284031215610e0157600080fd5b8151610c3381610c07565b600060208284031215610e1e57600080fd5b8151610c3381610b54565b634e487b7160e01b600052603260045260246000fd5b600060208284031215610e5157600080fd5b505191905056fea2646970667358221220f7cd66b937246811578d6596583e64680c2774fcc6c1645e9fed6dbd9bde37c164736f6c63430008140033",
447
+ "bytecode": "0x60c0604052600960809081526810dbdb5c1bdb995b9d60ba1b60a0525f906100279082611f97565b50348015610033575f80fd5b50604080518082019091526008815267496e7374616e636560c01b6020820152805f61005f8282611f97565b5061006861007f565b61007061016a565b6100786102ad565b505061228c565b6100c361008a6102cd565b60408051808201909152601581527f446973747269627574696f6e4f776e6572526f6c6500000000000000000000006020820152610347565b506100fa6100cf610398565b60408051808201909152600f81526e4f7261636c654f776e6572526f6c6560881b6020820152610347565b5061012f6101066103d2565b60408051808201909152600d81526c506f6f6c4f776e6572526f6c6560981b6020820152610347565b5061016761013b61040c565b60408051808201909152601081526f50726f647563744f776e6572526f6c6560801b6020820152610347565b50565b604080518082019091526008815267496e7374616e636560c01b60208201526101c49061019c600a61044b565b61044b565b60408051808201909152600c81526b496e7374616e6365526f6c6560a01b60208201526104c2565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526101f190610655565b60408051808201909152600d81526c24b739ba30b731b2a0b236b4b760991b602082015261021e90610655565b604080518082019091526009815268109d5b991b1954d95d60ba1b602082015261024790610655565b610251600a6106d7565b61025b600b6106d7565b610265600e6106d7565b61026f600d6106d7565b610279600f6106d7565b610283601f6106d7565b61028d600c6106d7565b61029760146106d7565b6102a160156106d7565b6102ab60176106d7565b565b6102b5610a8b565b6102bd610b0e565b6102c5610b84565b6102ab61173b565b604051637c3940bf60e01b8152600d60048201525f9073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf906024015b602060405180830381865af415801561031e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103429190612051565b905090565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526103928361038d610380611873565b600263ffffffff876118ad565b611a0c565b92915050565b604051637c3940bf60e01b8152600c60048201525f9073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf90602401610303565b604051637c3940bf60e01b8152600e60048201525f9073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf90602401610303565b604051637c3940bf60e01b8152600b60048201525f9073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf90602401610303565b600a90565b60405163369e953f60e11b815260ff821660048201525f9073__$1d92393fa9ccd763988368ce8a1cb90d26$__90636d3d2a7e906024015b602060405180830381865af415801561049e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103929190612051565b60405163cdc23e6960e01b81525f9073__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e69906104fb9087906004016120ac565b602060405180830381865af4158015610516573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061053a91906120be565b6001805480820182557fb10e2d527612073b26eecdfd717e6a320cf44b4afac2b0732d9fcbe2b7fa0cf6018290555f82815260036020908152604091829020805460ff1916909317909255805163bc1b392d60e01b8152905192935061060c92869273__$1d92393fa9ccd763988368ce8a1cb90d26$__9263bc1b392d92600480830193928290030181865af41580156105d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105fa9190612051565b6001600160401b039081169116141590565b1561064f5761061a83611b22565b610628576106288383611b64565b5f81815260026020526040902080546001600160401b0319166001600160401b0385161790555b50505050565b6101678173__$1d92393fa9ccd763988368ce8a1cb90d26$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156106a0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106c49190612051565b60408051602081019091525f81526104c2565b600880546001810182555f918252602081047ff3f7a9fe364faab93b216da50a3214154f22a0a2b415b23a84c8169e8b636ee301805460ff858116601f9094166101000a848102910219909116179055604051632b95d28f60e21b8152600481019190915273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063f7fa7a7c90829063ae574a3c906024015f60405180830381865af415801561077d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107a491908101906120d5565b6107ac611b80565b604051632b10f60d60e21b815260ff909116600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af41580156107fd573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061082191906120be565b6040518363ffffffff1660e01b815260040161083e929190612185565b5f60405180830381865af4158015610858573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261087f91908101906120d5565b60405163cdc23e6960e01b815290915073__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e69906108b99084906004016120ac565b602060405180830381865af41580156108d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f891906120be565b60ff83165f9081526009602052604081209190915561091683611bf4565b604051632b95d28f60e21b815260ff851660048201529091505f9073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__9063f7fa7a7c90829063ae574a3c906024015f60405180830381865af4158015610972573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261099991908101906120d5565b6109a1611b80565b604051632b10f60d60e21b815260ff909116600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__9063ac43d83490602401602060405180830381865af41580156109f2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a1691906120be565b6040518363ffffffff1660e01b8152600401610a339291906121c7565b5f60405180830381865af4158015610a4d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610a7491908101906120d5565b905061064f8383836104c2565b600b90565b601f90565b5f610acb60405180604001604052806008815260200167496e7374616e636560c01b815250610ac6610ac161044660201b60201c565b611bf4565b611c45565b90506101678163f7bc431c60e01b6040518060400160405280601181526020017039b2ba24b739ba30b731b2a932b0b232b960791b815250611d2260201b60201c565b5f610b496040518060400160405280600d81526020016c24b739ba30b731b2a0b236b4b760991b815250610ac661019761044660201b60201c565b90506101678163b428b0b060e01b604051806040016040528060098152602001686772616e74526f6c6560b81b815250611d2260201b60201c565b5f610bbf6040518060400160405280600d81526020016c496e7374616e636553746f726560981b815250610ac6610ac1610a8160201b60201c565b9050610c0081634846003a60e01b6040518060400160405280600f81526020016e18dc99585d1950dbdb5c1bdb995b9d608a1b815250611d2260201b60201c565b60408051808201909152600f81526e1d5c19185d1950dbdb5c1bdb995b9d608a1b6020820152610c3990829062f0266b60e21b90611d22565b60408051808201909152600a81526918dc99585d19541bdbdb60b21b6020820152610c6e9082906341f1072b60e11b90611d22565b60408051808201909152600d81526c18dc99585d19541c9bd91d58dd609a1b6020820152610ca690829063a6a67b1f60e01b90611d22565b60408051808201909152600d81526c1d5c19185d19541c9bd91d58dd609a1b6020820152610cde90829063b5b3d9f960e01b90611d22565b60408051808201909152600f81526e696e63726561736542616c616e636560881b6020820152610d18908290639f8151e560e01b90611d22565b60408051808201909152600f81526e646563726561736542616c616e636560881b6020820152610d5290829063b0628dc360e01b90611d22565b60408051808201909152600c81526b696e6372656173654665657360a01b6020820152610d8990829063e80c61ed60e01b90611d22565b60408051808201909152600c81526b64656372656173654665657360a01b6020820152610dc09082906314cc21b560e21b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b6020820152610df290610ac6600e611bf4565b9050610e41816330a130ba60e01b6040518060400160405280601581526020017f6372656174654469737472696275746f72547970650000000000000000000000815250611d2260201b60201c565b60408051808201909152601581527f7570646174654469737472696275746f725479706500000000000000000000006020820152610e899082906305a8416b60e41b90611d22565b60408051808201909152601a81527f7570646174654469737472696275746f725479706553746174650000000000006020820152610ed190829063a284222960e01b90611d22565b60408051808201909152601181527031b932b0ba32a234b9ba3934b13aba37b960791b6020820152610f0d908290637b8ebfff60e11b90611d22565b6040805180820190915260118152703ab83230ba32a234b9ba3934b13aba37b960791b6020820152610f49908290632a72b0c760e11b90611d22565b60408051808201909152601681527f7570646174654469737472696275746f725374617465000000000000000000006020820152610f919082906340529b0f60e01b90611d22565b60408051808201909152600e81526d18dc99585d19549959995c9c985b60921b6020820152610fca908290631941cfe160e31b90611d22565b60408051808201909152600e81526d1d5c19185d19549959995c9c985b60921b60208201526110039082906330882f0760e11b90611d22565b60408051808201909152601381527f757064617465526566657272616c537461746500000000000000000000000000602082015261104a90829062af902560e81b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b602082015261107d90610ac6610ac1600d90565b90506110bc81630632b17d60e01b6040518060400160405280600d81526020016c18dc99585d1954995c5d595cdd609a1b815250611d2260201b60201c565b60408051808201909152600d81526c1d5c19185d1954995c5d595cdd609a1b60208201526110f490829063275c059560e01b90611d22565b60408051808201909152601281527175706461746552657175657374537461746560701b6020820152611131908290635a6bf7f160e11b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b602082015261116390610ac6600f611bf4565b905061119f81637e3d91e860e01b6040518060400160405280600a8152602001691d5c19185d19541bdbdb60b21b815250611d2260201b60201c565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526111d190610ac6601f611bf4565b905061120f8163a46eb8dc60e01b6040518060400160405280600c81526020016b63726561746542756e646c6560a01b815250611d2260201b60201c565b60408051808201909152600c81526b75706461746542756e646c6560a01b60208201526112469082906351dd844b60e01b90611d22565b60408051808201909152601181527075706461746542756e646c65537461746560781b6020820152611282908290637f0f8c6b60e11b90611d22565b60408051808201909152600e81526d1a5b98dc99585cd9531bd8dad95960921b60208201526112bb90829063248a77dd60e01b90611d22565b60408051808201909152600e81526d191958dc99585cd9531bd8dad95960921b60208201526112f49082906353ebe12960e01b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b602082015261132690610ac6600c611bf4565b905061136281632f61088a60e01b6040518060400160405280600a8152602001696372656174655269736b60b01b815250611d2260201b60201c565b60408051808201909152600a8152697570646174655269736b60b01b60208201526113979082906314eddc0360e31b90611d22565b60408051808201909152600f81526e7570646174655269736b537461746560881b60208201526113d1908290633e77a42160e11b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b602082015261140390610ac66014611bf4565b905061144681636fac862260e01b6040518060400160405280601181526020017031b932b0ba32a0b8383634b1b0ba34b7b760791b815250611d2260201b60201c565b6040805180820190915260118152703ab83230ba32a0b8383634b1b0ba34b7b760791b60208201526114829082906381d32d6b60e01b90611d22565b60408051808201909152601681527f7570646174654170706c69636174696f6e53746174650000000000000000000060208201526114ca908290630fad0eb160e01b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b60208201526114fc90610ac66015611bf4565b905061153a8163425d08e260e01b6040518060400160405280600c81526020016b757064617465506f6c69637960a01b815250611d2260201b60201c565b604080518082019091526011815270757064617465506f6c696379537461746560781b6020820152611576908290631750d17360e21b90611d22565b60408051808201909152600d81526c6372656174655072656d69756d60981b60208201526115ae908290634d4a7ae960e01b90611d22565b6040805180820190915260128152717570646174655072656d69756d537461746560701b60208201526115eb908290632ae5819d60e01b90611d22565b60408051808201909152600d81526c496e7374616e636553746f726560981b602082015261161d90610ac66017611bf4565b90506116618163d625d75860e01b60405180604001604052806012815260200171757064617465506f6c696379436c61696d7360701b815250611d2260201b60201c565b60408051808201909152600b81526a637265617465436c61696d60a81b6020820152611697908290630cfc3ba360e01b90611d22565b60408051808201909152600b81526a757064617465436c61696d60a81b60208201526116cd90829063fae5df9b60e01b90611d22565b60408051808201909152600c81526b18dc99585d1954185e5bdd5d60a21b602082015261170490829063d6c08df760e01b90611d22565b60408051808201909152600c81526b1d5c19185d1954185e5bdd5d60a21b602082015261016790829063d23c6f6360e01b90611d22565b5f61177260405180604001604052806009815260200168109d5b991b1954d95d60ba1b815250610ac6610ac1610a8660201b60201c565b90506117ae81630cc7e61460e01b6040518060400160405280600a8152602001696c696e6b506f6c69637960b01b815250611d2260201b60201c565b60408051808201909152600c81526b756e6c696e6b506f6c69637960a01b60208201526117e5908290631351fccf60e31b90611d22565b60408051808201909152600381526218591960ea1b60208201526118139082906346f0e8a760e11b90611d22565b6040805180820190915260048152636c6f636b60e01b602082015261184290829063b5346af560e01b90611d22565b604080518082019091526006815265756e6c6f636b60d01b60208201526101679082906306fa456560e01b90611d22565b604051637c3940bf60e01b81525f600482018190529073__$1d92393fa9ccd763988368ce8a1cb90d26$__90637c3940bf90602401610303565b6040805160a0810182525f808252602082018190529181018290526060810182905260808101919091526040518060a00160405280866001600160401b031681526020018560038111156119035761190361220d565b81526020018463ffffffff16815260200173__$9a094f9b231ed0f5f85a69be8408d93180$__63cdc23e69856040518263ffffffff1660e01b815260040161194b91906120ac565b602060405180830381865af4158015611966573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061198a91906120be565b815260200173__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af41580156119d6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119fa9190612221565b64ffffffffff16905295945050505050565b600480546001810182559081047f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b0180546001600160401b0380861660086003958616026101000a81810290830219909316929092179092555f9081526005602090815260409091208451815493166001600160401b03198416811782559185015185949193909284926001600160481b0319909216179068010000000000000000908490811115611ac057611ac061220d565b02179055506040820151815463ffffffff60481b1916690100000000000000000063ffffffff90921691909102178155606082015160018201556080909101516002909101805464ffffffffff191664ffffffffff9092169190911790555050565b5f806001600160401b0383165f9081526005602052604090205468010000000000000000900460ff166003811115611b5c57611b5c61220d565b141592915050565b611b7c8261038d611b73611873565b600180866118ad565b5050565b604051632392b61b60e21b8152600360048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015611bd0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103429190612245565b5f73__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d383611c18611b80565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401610483565b5f8073__$9a094f9b231ed0f5f85a69be8408d93180$__63cdc23e69856040518263ffffffff1660e01b8152600401611c7e91906120ac565b602060405180830381865af4158015611c99573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cbd91906120be565b5f8181526006602090815260408083208054600181018255908452828420600482040180546001600160401b03808b1660086003909516949094026101000a848102910219909116179055938352600782528083209383529290522091505092915050565b60408051606081019182905263cdc23e6960e01b90915283908073__$9a094f9b231ed0f5f85a69be8408d93180$__63cdc23e69611d6386606485016120ac565b602060405180830381865af4158015611d7e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611da291906120be565b8152604051636b15ee8b60e01b81526001600160e01b03198616600482015260209091019073__$0904195350e4c23ecb1d51df0a32586dcd$__90636b15ee8b90602401602060405180830381865af4158015611e01573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e259190612265565b6001600160e01b031916815260200173__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611e7b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611e9f9190612221565b64ffffffffff9081169091528254600181810185555f94855260209485902084516002909302019182559383015193018054604090930151909116640100000000026001600160481b031990921660e09390931c92909217179055505050565b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680611f2757607f821691505b602082108103611f4557634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115611f9257805f5260205f20601f840160051c81016020851015611f705750805b601f840160051c820191505b81811015611f8f575f8155600101611f7c565b50505b505050565b81516001600160401b03811115611fb057611fb0611eff565b611fc481611fbe8454611f13565b84611f4b565b6020601f821160018114611ff6575f8315611fdf5750848201515b5f19600385901b1c1916600184901b178455611f8f565b5f84815260208120601f198516915b828110156120255787850151825560209485019460019092019101612005565b508482101561204257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215612061575f80fd5b81516001600160401b0381168114612077575f80fd5b9392505050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f612077602083018461207e565b5f602082840312156120ce575f80fd5b5051919050565b5f602082840312156120e5575f80fd5b81516001600160401b038111156120fa575f80fd5b8201601f8101841361210a575f80fd5b80516001600160401b0381111561212357612123611eff565b604051601f8201601f19908116603f011681016001600160401b038111828210171561215157612151611eff565b604052818152828201602001861015612168575f80fd5b8160208401602083015e5f91810160200191909152949350505050565b606081525f612197606083018561207e565b828103602084015260078152665365727669636560c81b6020820152604081019150508260408301529392505050565b606081525f6121d9606083018561207e565b8281036020840152600b81526a53657276696365526f6c6560a81b6020820152604081019150508260408301529392505050565b634e487b7160e01b5f52602160045260245ffd5b5f60208284031215612231575f80fd5b815164ffffffffff81168114612077575f80fd5b5f60208284031215612255575f80fd5b815160ff81168114612077575f80fd5b5f60208284031215612275575f80fd5b81516001600160e01b031981168114612077575f80fd5b610e20806122995f395ff3fe608060405234801561000f575f80fd5b5060043610610187575f3560e01c806376b707b7116100d9578063c5f3484411610093578063e8eba4351161006e578063e8eba4351461049c578063e98771bd146104af578063e9b891a8146104db578063f00e6a2a14610503575f80fd5b8063c5f348441461043b578063c6a001791461045e578063d054044314610471575f80fd5b806376b707b714610347578063775f14b1146103615780638c5397b0146103a3578063a1516b3b146103b6578063aa689ae5146103ea578063c143892b14610411575f80fd5b806354e17da911610144578063608b081e1161011f578063608b081e146102dc57806363fe3b561461030857806368c55b131461031d5780637106139814610332575f80fd5b806354e17da9146102685780635bfa50271461028a5780635c935ce0146102aa575f80fd5b8063071447791461018b578063116951cb146101cf57806318029ab4146101fe5780631e4afbbf146102145780632f8ade1214610234578063433f95d614610260575b5f80fd5b6101b96040518060400160405280600f81526020016e4f7261636c654f776e6572526f6c6560881b81525081565b6040516101c69190610ad6565b60405180910390f35b6101b96040518060400160405280601081526020016f50726f647563744f776e6572526f6c6560801b81525081565b610206600381565b6040519081526020016101c6565b610227610222366004610b23565b61050b565b6040516101c69190610b51565b6101b96040518060400160405280600d81526020016c496e7374616e636553746f726560981b81525081565b6101b96105b9565b610206610276366004610bcb565b60ff165f9081526009602052604090205490565b61029d610298366004610bed565b610648565b6040516101c69190610c1c565b6102cc6102b8366004610c88565b5f9081526003602052604090205460ff1690565b60405190151581526020016101c6565b6101b96040518060400160405280600d81526020016c24b739ba30b731b2a0b236b4b760991b81525081565b61031061070a565b6040516101c69190610c9f565b61032561075f565b6040516101c69190610cd6565b61033a6107d1565b6040516101c69190610d10565b61034f610859565b60405160ff90911681526020016101c6565b61038a61036f366004610c88565b5f9081526002602052604090205467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016101c6565b61033a6103b1366004610c88565b6108d2565b6101b960405180604001604052806015815260200174446973747269627574696f6e4f776e6572526f6c6560581b81525081565b6101b960405180604001604052806008815260200167496e7374616e636560c01b81525081565b6101b96040518060400160405280600b81526020016a53657276696365526f6c6560a81b81525081565b6101b960405180604001604052806004815260200163526f6c6560e01b81525081565b6102cc61046c366004610bed565b610964565b6101b96040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b81525081565b61038a6104aa366004610bcb565b6109a2565b6101b96040518060400160405280600d81526020016c506f6f6c4f776e6572526f6c6560981b81525081565b6101b960405180604001604052806009815260200168109d5b991b1954d95d60ba1b81525081565b610206610a33565b5f82815260076020908152604080832067ffffffffffffffff851684528252808320805482518185028101850190935280835260609492939192909184015b828210156105ad575f84815260209081902060408051606081018252600286029092018054835260019081015460e081901b6001600160e01b03191684860152640100000000900464ffffffffff1691830191909152908352909201910161054a565b50505050905092915050565b60605f80546105c790610d51565b80601f01602080910402602001604051908101604052809291908181526020018280546105f390610d51565b801561063e5780601f106106155761010080835404028352916020019161063e565b820191905f5260205f20905b81548152906001019060200180831161062157829003601f168201915b5050505050905090565b6040805160a080820183525f8083526020808401829052838501829052606084018290526080840182905267ffffffffffffffff8681168352600582529185902085519384019095528454918216835292939192830190600160401b900460ff1660038111156106ba576106ba610c08565b60038111156106cb576106cb610c08565b815281546901000000000000000000900463ffffffff1660208201526001820154604082015260029091015464ffffffffff1660609091015292915050565b6060600180548060200260200160405190810160405280929190818152602001828054801561063e57602002820191905f5260205f20905b815481526020019060010190808311610742575050505050905090565b6060600880548060200260200160405190810160405280929190818152602001828054801561063e57602002820191905f5260205f20905f905b825461010083900a900460ff168152602060019283018181049485019490930390920291018084116107995790505050505050905090565b6060600480548060200260200160405190810160405280929190818152602001828054801561063e57602002820191905f5260205f20905f905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001906008019060208260070104928301926001038202915080841161080b5790505050505050905090565b604051632392b61b60e21b8152600360048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156108a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cd9190610d89565b905090565b5f8181526006602090815260409182902080548351818402810184019094528084526060939283018282801561095857602002820191905f5260205f20905f905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116109135790505b50505050509050919050565b5f8067ffffffffffffffff83165f90815260056020526040902054600160401b900460ff16600381111561099a5761099a610c08565b141592915050565b5f73__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d3836109c6610859565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865af4158015610a09573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a2d9190610da4565b92915050565b6001545f9015610a5e5760015f81548110610a5057610a50610dbf565b905f5260205f200154905090565b60405163cdc23e6960e01b8152602060048201525f602482015273__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e6990604401602060405180830381865af4158015610ab2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cd9190610dd3565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b67ffffffffffffffff81168114610b20575f80fd5b50565b5f8060408385031215610b34575f80fd5b823591506020830135610b4681610b0b565b809150509250929050565b602080825282518282018190525f918401906040840190835b81811015610bb2578351805184526020808201516001600160e01b0319168186015260409182015164ffffffffff169185019190915290930192606090920191600101610b6a565b509095945050505050565b60ff81168114610b20575f80fd5b5f60208284031215610bdb575f80fd5b8135610be681610bbd565b9392505050565b5f60208284031215610bfd575f80fd5b8135610be681610b0b565b634e487b7160e01b5f52602160045260245ffd5b815167ffffffffffffffff168152602082015160a082019060048110610c5057634e487b7160e01b5f52602160045260245ffd5b8060208401525063ffffffff60408401511660408301526060830151606083015264ffffffffff608084015116608083015292915050565b5f60208284031215610c98575f80fd5b5035919050565b602080825282518282018190525f918401906040840190835b81811015610bb2578351835260209384019390920191600101610cb8565b602080825282518282018190525f918401906040840190835b81811015610bb257835160ff16835260209384019390920191600101610cef565b602080825282518282018190525f918401906040840190835b81811015610bb257835167ffffffffffffffff16835260209384019390920191600101610d29565b600181811c90821680610d6557607f821691505b602082108103610d8357634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215610d99575f80fd5b8151610be681610bbd565b5f60208284031215610db4575f80fd5b8151610be681610b0b565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610de3575f80fd5b505191905056fea2646970667358221220b1a4e29d4082a32972783dd6c358e4863ba8d1ce1cbdab033e7af82de47386c064736f6c634300081a0033",
448
+ "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610187575f3560e01c806376b707b7116100d9578063c5f3484411610093578063e8eba4351161006e578063e8eba4351461049c578063e98771bd146104af578063e9b891a8146104db578063f00e6a2a14610503575f80fd5b8063c5f348441461043b578063c6a001791461045e578063d054044314610471575f80fd5b806376b707b714610347578063775f14b1146103615780638c5397b0146103a3578063a1516b3b146103b6578063aa689ae5146103ea578063c143892b14610411575f80fd5b806354e17da911610144578063608b081e1161011f578063608b081e146102dc57806363fe3b561461030857806368c55b131461031d5780637106139814610332575f80fd5b806354e17da9146102685780635bfa50271461028a5780635c935ce0146102aa575f80fd5b8063071447791461018b578063116951cb146101cf57806318029ab4146101fe5780631e4afbbf146102145780632f8ade1214610234578063433f95d614610260575b5f80fd5b6101b96040518060400160405280600f81526020016e4f7261636c654f776e6572526f6c6560881b81525081565b6040516101c69190610ad6565b60405180910390f35b6101b96040518060400160405280601081526020016f50726f647563744f776e6572526f6c6560801b81525081565b610206600381565b6040519081526020016101c6565b610227610222366004610b23565b61050b565b6040516101c69190610b51565b6101b96040518060400160405280600d81526020016c496e7374616e636553746f726560981b81525081565b6101b96105b9565b610206610276366004610bcb565b60ff165f9081526009602052604090205490565b61029d610298366004610bed565b610648565b6040516101c69190610c1c565b6102cc6102b8366004610c88565b5f9081526003602052604090205460ff1690565b60405190151581526020016101c6565b6101b96040518060400160405280600d81526020016c24b739ba30b731b2a0b236b4b760991b81525081565b61031061070a565b6040516101c69190610c9f565b61032561075f565b6040516101c69190610cd6565b61033a6107d1565b6040516101c69190610d10565b61034f610859565b60405160ff90911681526020016101c6565b61038a61036f366004610c88565b5f9081526002602052604090205467ffffffffffffffff1690565b60405167ffffffffffffffff90911681526020016101c6565b61033a6103b1366004610c88565b6108d2565b6101b960405180604001604052806015815260200174446973747269627574696f6e4f776e6572526f6c6560581b81525081565b6101b960405180604001604052806008815260200167496e7374616e636560c01b81525081565b6101b96040518060400160405280600b81526020016a53657276696365526f6c6560a81b81525081565b6101b960405180604001604052806004815260200163526f6c6560e01b81525081565b6102cc61046c366004610bed565b610964565b6101b96040518060400160405280600c81526020016b496e7374616e6365526f6c6560a01b81525081565b61038a6104aa366004610bcb565b6109a2565b6101b96040518060400160405280600d81526020016c506f6f6c4f776e6572526f6c6560981b81525081565b6101b960405180604001604052806009815260200168109d5b991b1954d95d60ba1b81525081565b610206610a33565b5f82815260076020908152604080832067ffffffffffffffff851684528252808320805482518185028101850190935280835260609492939192909184015b828210156105ad575f84815260209081902060408051606081018252600286029092018054835260019081015460e081901b6001600160e01b03191684860152640100000000900464ffffffffff1691830191909152908352909201910161054a565b50505050905092915050565b60605f80546105c790610d51565b80601f01602080910402602001604051908101604052809291908181526020018280546105f390610d51565b801561063e5780601f106106155761010080835404028352916020019161063e565b820191905f5260205f20905b81548152906001019060200180831161062157829003601f168201915b5050505050905090565b6040805160a080820183525f8083526020808401829052838501829052606084018290526080840182905267ffffffffffffffff8681168352600582529185902085519384019095528454918216835292939192830190600160401b900460ff1660038111156106ba576106ba610c08565b60038111156106cb576106cb610c08565b815281546901000000000000000000900463ffffffff1660208201526001820154604082015260029091015464ffffffffff1660609091015292915050565b6060600180548060200260200160405190810160405280929190818152602001828054801561063e57602002820191905f5260205f20905b815481526020019060010190808311610742575050505050905090565b6060600880548060200260200160405190810160405280929190818152602001828054801561063e57602002820191905f5260205f20905f905b825461010083900a900460ff168152602060019283018181049485019490930390920291018084116107995790505050505050905090565b6060600480548060200260200160405190810160405280929190818152602001828054801561063e57602002820191905f5260205f20905f905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff168152602001906008019060208260070104928301926001038202915080841161080b5790505050505050905090565b604051632392b61b60e21b8152600360048201525f9073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156108a9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cd9190610d89565b905090565b5f8181526006602090815260409182902080548351818402810184019094528084526060939283018282801561095857602002820191905f5260205f20905f905b82829054906101000a900467ffffffffffffffff1667ffffffffffffffff16815260200190600801906020826007010492830192600103820291508084116109135790505b50505050509050919050565b5f8067ffffffffffffffff83165f90815260056020526040902054600160401b900460ff16600381111561099a5761099a610c08565b141592915050565b5f73__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d3836109c6610859565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865af4158015610a09573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a2d9190610da4565b92915050565b6001545f9015610a5e5760015f81548110610a5057610a50610dbf565b905f5260205f200154905090565b60405163cdc23e6960e01b8152602060048201525f602482015273__$9a094f9b231ed0f5f85a69be8408d93180$__9063cdc23e6990604401602060405180830381865af4158015610ab2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108cd9190610dd3565b602081525f82518060208401528060208501604085015e5f604082850101526040601f19601f83011684010191505092915050565b67ffffffffffffffff81168114610b20575f80fd5b50565b5f8060408385031215610b34575f80fd5b823591506020830135610b4681610b0b565b809150509250929050565b602080825282518282018190525f918401906040840190835b81811015610bb2578351805184526020808201516001600160e01b0319168186015260409182015164ffffffffff169185019190915290930192606090920191600101610b6a565b509095945050505050565b60ff81168114610b20575f80fd5b5f60208284031215610bdb575f80fd5b8135610be681610bbd565b9392505050565b5f60208284031215610bfd575f80fd5b8135610be681610b0b565b634e487b7160e01b5f52602160045260245ffd5b815167ffffffffffffffff168152602082015160a082019060048110610c5057634e487b7160e01b5f52602160045260245ffd5b8060208401525063ffffffff60408401511660408301526060830151606083015264ffffffffff608084015116608083015292915050565b5f60208284031215610c98575f80fd5b5035919050565b602080825282518282018190525f918401906040840190835b81811015610bb2578351835260209384019390920191600101610cb8565b602080825282518282018190525f918401906040840190835b81811015610bb257835160ff16835260209384019390920191600101610cef565b602080825282518282018190525f918401906040840190835b81811015610bb257835167ffffffffffffffff16835260209384019390920191600101610d29565b600181811c90821680610d6557607f821691505b602082108103610d8357634e487b7160e01b5f52602260045260245ffd5b50919050565b5f60208284031215610d99575f80fd5b8151610be681610bbd565b5f60208284031215610db4575f80fd5b8151610be681610b0b565b634e487b7160e01b5f52603260045260245ffd5b5f60208284031215610de3575f80fd5b505191905056fea2646970667358221220b1a4e29d4082a32972783dd6c358e4863ba8d1ce1cbdab033e7af82de47386c064736f6c634300081a0033",
449
449
  "linkReferences": {
450
450
  "contracts/type/ObjectType.sol": {
451
451
  "ObjectTypeLib": [
452
452
  {
453
453
  "length": 20,
454
- "start": 1984
454
+ "start": 1854
455
455
  },
456
456
  {
457
457
  "length": 20,
458
- "start": 2519
458
+ "start": 2355
459
459
  }
460
460
  ]
461
461
  },
@@ -463,43 +463,43 @@
463
463
  "RoleIdLib": [
464
464
  {
465
465
  "length": 20,
466
- "start": 816
466
+ "start": 741
467
467
  },
468
468
  {
469
469
  "length": 20,
470
- "start": 1032
470
+ "start": 944
471
471
  },
472
472
  {
473
473
  "length": 20,
474
- "start": 1092
474
+ "start": 1002
475
475
  },
476
476
  {
477
477
  "length": 20,
478
- "start": 1152
478
+ "start": 1060
479
479
  },
480
480
  {
481
481
  "length": 20,
482
- "start": 1219
482
+ "start": 1125
483
483
  },
484
484
  {
485
485
  "length": 20,
486
- "start": 1547
486
+ "start": 1438
487
487
  },
488
488
  {
489
489
  "length": 20,
490
- "start": 1749
490
+ "start": 1627
491
491
  },
492
492
  {
493
493
  "length": 20,
494
- "start": 6440
494
+ "start": 6283
495
495
  },
496
496
  {
497
497
  "length": 20,
498
- "start": 7350
498
+ "start": 7159
499
499
  },
500
500
  {
501
501
  "length": 20,
502
- "start": 11700
502
+ "start": 11326
503
503
  }
504
504
  ]
505
505
  },
@@ -507,7 +507,7 @@
507
507
  "SelectorLib": [
508
508
  {
509
509
  "length": 20,
510
- "start": 7835
510
+ "start": 7625
511
511
  }
512
512
  ]
513
513
  },
@@ -515,27 +515,27 @@
515
515
  "StrLib": [
516
516
  {
517
517
  "length": 20,
518
- "start": 1335
518
+ "start": 1235
519
519
  },
520
520
  {
521
521
  "length": 20,
522
- "start": 2346
522
+ "start": 2193
523
523
  },
524
524
  {
525
525
  "length": 20,
526
- "start": 6584
526
+ "start": 6422
527
527
  },
528
528
  {
529
529
  "length": 20,
530
- "start": 7436
530
+ "start": 7241
531
531
  },
532
532
  {
533
533
  "length": 20,
534
- "start": 7689
534
+ "start": 7486
535
535
  },
536
536
  {
537
537
  "length": 20,
538
- "start": 11920
538
+ "start": 11539
539
539
  }
540
540
  ]
541
541
  },
@@ -543,11 +543,11 @@
543
543
  "TimestampLib": [
544
544
  {
545
545
  "length": 20,
546
- "start": 6714
546
+ "start": 6545
547
547
  },
548
548
  {
549
549
  "length": 20,
550
- "start": 7949
550
+ "start": 7734
551
551
  }
552
552
  ]
553
553
  },
@@ -555,19 +555,19 @@
555
555
  "VersionPartLib": [
556
556
  {
557
557
  "length": 20,
558
- "start": 2128
558
+ "start": 1989
559
559
  },
560
560
  {
561
561
  "length": 20,
562
- "start": 2663
562
+ "start": 2490
563
563
  },
564
564
  {
565
565
  "length": 20,
566
- "start": 7249
566
+ "start": 7064
567
567
  },
568
568
  {
569
569
  "length": 20,
570
- "start": 11383
570
+ "start": 11018
571
571
  }
572
572
  ]
573
573
  }
@@ -577,7 +577,7 @@
577
577
  "RoleIdLib": [
578
578
  {
579
579
  "length": 20,
580
- "start": 2508
580
+ "start": 2469
581
581
  }
582
582
  ]
583
583
  },
@@ -585,7 +585,7 @@
585
585
  "StrLib": [
586
586
  {
587
587
  "length": 20,
588
- "start": 2728
588
+ "start": 2682
589
589
  }
590
590
  ]
591
591
  },
@@ -593,7 +593,7 @@
593
593
  "VersionPartLib": [
594
594
  {
595
595
  "length": 20,
596
- "start": 2191
596
+ "start": 2161
597
597
  }
598
598
  ]
599
599
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/738273943de8559a18576d572e141a51.json"
3
+ "buildInfo": "../../../build-info/e2e3b7f72e025759291be05737506c35.json"
4
4
  }