@etherisc/gif-next 0.0.2-bf51045-496 → 0.0.2-bf9f7e6-880

Sign up to get free protection for your applications and to get access to all the features.
Files changed (469) hide show
  1. package/README.md +44 -0
  2. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +1 -1
  3. package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +69 -62
  4. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +1 -1
  5. package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +29 -31
  6. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +1 -1
  7. package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +33 -9
  8. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
  9. package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +454 -253
  10. package/artifacts/contracts/authorization/AccessAdmin.sol/IAccessManagedChecker.dbg.json +1 -1
  11. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +4 -0
  12. package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +673 -0
  13. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
  14. package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +202 -5
  15. package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
  16. package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +227 -26
  17. package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
  18. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
  19. package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +353 -189
  20. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
  21. package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +105 -18
  22. package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
  23. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
  24. package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +2 -2
  25. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
  26. package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +74 -157
  27. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
  28. package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +212 -38
  29. package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
  30. package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +39 -95
  31. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
  32. package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +271 -185
  33. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
  34. package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +66 -60
  35. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
  36. package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +26 -82
  37. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
  38. package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +159 -72
  39. package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
  40. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
  41. package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +92 -88
  42. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
  43. package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +193 -51
  44. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
  45. package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +248 -237
  46. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
  47. package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +212 -38
  48. package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
  49. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
  50. package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +132 -173
  51. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +1 -1
  52. package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +212 -38
  53. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
  54. package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +75 -68
  55. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
  56. package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +123 -116
  57. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +1 -1
  58. package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +193 -51
  59. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
  60. package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +338 -242
  61. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +1 -1
  62. package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +212 -38
  63. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
  64. package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +88 -45
  65. package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
  66. package/artifacts/contracts/instance/IInstance.sol/IInstance.json +158 -29
  67. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
  68. package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +108 -9
  69. package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
  70. package/artifacts/contracts/instance/Instance.sol/Instance.json +187 -54
  71. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
  72. package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +677 -325
  73. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
  74. package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +193 -51
  75. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
  76. package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +496 -324
  77. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
  78. package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +121 -85
  79. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
  80. package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +26 -38
  81. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
  82. package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +619 -559
  83. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +1 -1
  84. package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +96 -53
  85. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
  86. package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +2 -2
  87. package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
  88. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
  89. package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
  90. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
  91. package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
  92. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
  93. package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +16 -5
  94. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +4 -0
  95. package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +168 -0
  96. package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
  97. package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
  98. package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
  99. package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
  100. package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
  101. package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
  102. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
  103. package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +60 -51
  104. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
  105. package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +194 -40
  106. package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
  107. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
  108. package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +30 -21
  109. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
  110. package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +27 -3
  111. package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
  112. package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +44 -35
  113. package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
  114. package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +75 -68
  115. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
  116. package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +34 -36
  117. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
  118. package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +65 -56
  119. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
  120. package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +193 -51
  121. package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
  122. package/artifacts/contracts/pool/BundleService.sol/BundleService.json +108 -207
  123. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
  124. package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +42 -64
  125. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
  126. package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +44 -86
  127. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
  128. package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +40 -31
  129. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
  130. package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +138 -193
  131. package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
  132. package/artifacts/contracts/pool/Pool.sol/Pool.json +53 -44
  133. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
  134. package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +456 -0
  135. package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
  136. package/artifacts/contracts/pool/PoolService.sol/PoolService.json +254 -299
  137. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
  138. package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +70 -56
  139. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
  140. package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +123 -50
  141. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
  142. package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +37 -27
  143. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
  144. package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +176 -152
  145. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
  146. package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +212 -38
  147. package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
  148. package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +244 -187
  149. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
  150. package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +64 -74
  151. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
  152. package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +69 -3
  153. package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
  154. package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +142 -20
  155. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
  156. package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +105 -68
  157. package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
  158. package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +48 -3
  159. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
  160. package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +157 -133
  161. package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
  162. package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +58 -7
  163. package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
  164. package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +193 -173
  165. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
  166. package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +293 -0
  167. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
  168. package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +54 -56
  169. package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
  170. package/artifacts/contracts/product/PricingService.sol/PricingService.json +96 -108
  171. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
  172. package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +35 -57
  173. package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
  174. package/artifacts/contracts/product/Product.sol/Product.json +170 -146
  175. package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
  176. package/artifacts/contracts/product/RiskService.sol/RiskService.json +131 -81
  177. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
  178. package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +46 -28
  179. package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
  180. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
  181. package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +36 -12
  182. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
  183. package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +31 -7
  184. package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
  185. package/artifacts/contracts/registry/IRelease.sol/IRelease.json +24 -0
  186. package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
  187. package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
  188. package/artifacts/contracts/registry/Registry.sol/Registry.json +74 -50
  189. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
  190. package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +553 -434
  191. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +4 -0
  192. package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +878 -0
  193. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
  194. package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +51 -44
  195. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
  196. package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +22 -24
  197. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
  198. package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +1954 -0
  199. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
  200. package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
  201. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
  202. package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +333 -63
  203. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
  204. package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +6 -6
  205. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
  206. package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +4 -4
  207. package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
  208. package/artifacts/contracts/shared/Component.sol/Component.json +43 -34
  209. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
  210. package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +147 -165
  211. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
  212. package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +48 -50
  213. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +1 -1
  214. package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +27 -16
  215. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
  216. package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +113 -4
  217. package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +1 -1
  218. package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +1 -1
  219. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
  220. package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
  221. package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
  222. package/artifacts/contracts/shared/IComponent.sol/IComponent.json +30 -21
  223. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
  224. package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +71 -72
  225. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
  226. package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +30 -21
  227. package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
  228. package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
  229. package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
  230. package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
  231. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
  232. package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +120 -1
  233. package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
  234. package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
  235. package/artifacts/contracts/shared/IService.sol/IService.json +27 -3
  236. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
  237. package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
  238. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
  239. package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +43 -34
  240. package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
  241. package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
  242. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
  243. package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
  244. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
  245. package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +2 -2
  246. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
  247. package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
  248. package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
  249. package/artifacts/contracts/shared/Registerable.sol/Registerable.json +118 -62
  250. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
  251. package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
  252. package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
  253. package/artifacts/contracts/shared/Service.sol/Service.json +27 -16
  254. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
  255. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +63 -162
  256. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
  257. package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +118 -29
  258. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
  259. package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +32 -32
  260. package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
  261. package/artifacts/contracts/staking/IStaking.sol/IStaking.json +113 -39
  262. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
  263. package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +131 -7
  264. package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
  265. package/artifacts/contracts/staking/Staking.sol/Staking.json +169 -97
  266. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +4 -0
  267. package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +469 -0
  268. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +1 -1
  269. package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +2 -2
  270. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
  271. package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +44 -32
  272. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
  273. package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +34 -61
  274. package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
  275. package/artifacts/contracts/staking/StakingService.sol/StakingService.json +168 -53
  276. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
  277. package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +31 -29
  278. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
  279. package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +148 -134
  280. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
  281. package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +47 -37
  282. package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
  283. package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
  284. package/artifacts/contracts/type/Amount.sol/AmountLib.json +10 -10
  285. package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
  286. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
  287. package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
  288. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
  289. package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
  290. package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
  291. package/artifacts/contracts/type/Fee.sol/FeeLib.json +93 -37
  292. package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
  293. package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
  294. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +1 -1
  295. package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +2 -2
  296. package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
  297. package/artifacts/contracts/type/NftId.sol/NftIdLib.json +2 -2
  298. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
  299. package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
  300. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
  301. package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +33 -31
  302. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
  303. package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
  304. package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
  305. package/artifacts/contracts/type/Referral.sol/ReferralLib.json +2 -2
  306. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
  307. package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
  308. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
  309. package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +30 -6
  310. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
  311. package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +79 -15
  312. package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
  313. package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
  314. package/artifacts/contracts/type/Selector.sol/SelectorLib.json +21 -2
  315. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
  316. package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
  317. package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
  318. package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
  319. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
  320. package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +2 -2
  321. package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
  322. package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +60 -36
  323. package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
  324. package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -21
  325. package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
  326. package/artifacts/contracts/type/Version.sol/VersionPartLib.json +101 -2
  327. package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
  328. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
  329. package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +4 -4
  330. package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
  331. package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
  332. package/contracts/accounting/AccountingService.sol +3 -4
  333. package/contracts/accounting/AccountingServiceManager.sol +1 -1
  334. package/contracts/accounting/IAccountingService.sol +2 -2
  335. package/contracts/authorization/AccessAdmin.sol +293 -204
  336. package/contracts/authorization/AccessAdminLib.sol +183 -0
  337. package/contracts/authorization/AccessManagerCloneable.sol +146 -4
  338. package/contracts/authorization/Authorization.sol +307 -231
  339. package/contracts/authorization/IAccess.sol +13 -5
  340. package/contracts/authorization/IAccessAdmin.sol +69 -36
  341. package/contracts/authorization/IAuthorization.sol +21 -1
  342. package/contracts/distribution/BasicDistribution.sol +13 -11
  343. package/contracts/distribution/BasicDistributionAuthorization.sol +21 -8
  344. package/contracts/distribution/Distribution.sol +13 -56
  345. package/contracts/distribution/DistributionService.sol +83 -55
  346. package/contracts/distribution/DistributionServiceManager.sol +1 -1
  347. package/contracts/distribution/IDistributionComponent.sol +0 -9
  348. package/contracts/distribution/IDistributionService.sol +18 -15
  349. package/contracts/examples/fire/FirePool.sol +0 -4
  350. package/contracts/examples/fire/FirePoolAuthorization.sol +1 -1
  351. package/contracts/examples/fire/FireProduct.sol +4 -7
  352. package/contracts/examples/fire/FireProductAuthorization.sol +1 -1
  353. package/contracts/examples/unpermissioned/SimpleDistribution.sol +32 -8
  354. package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +1 -1
  355. package/contracts/examples/unpermissioned/SimpleOracle.sol +4 -8
  356. package/contracts/examples/unpermissioned/SimplePool.sol +0 -5
  357. package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +1 -1
  358. package/contracts/examples/unpermissioned/SimpleProduct.sol +29 -8
  359. package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +1 -1
  360. package/contracts/instance/BundleSet.sol +4 -4
  361. package/contracts/instance/IInstance.sol +51 -16
  362. package/contracts/instance/IInstanceService.sol +20 -2
  363. package/contracts/instance/Instance.sol +90 -25
  364. package/contracts/instance/InstanceAdmin.sol +261 -99
  365. package/contracts/instance/InstanceAuthorizationV3.sol +49 -36
  366. package/contracts/instance/InstanceReader.sol +103 -34
  367. package/contracts/instance/InstanceService.sol +154 -87
  368. package/contracts/instance/InstanceServiceManager.sol +1 -1
  369. package/contracts/instance/InstanceStore.sol +13 -2
  370. package/contracts/instance/RiskSet.sol +11 -12
  371. package/contracts/instance/base/ObjectLifecycle.sol +4 -2
  372. package/contracts/instance/base/ObjectSet.sol +7 -8
  373. package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
  374. package/contracts/instance/module/IBundle.sol +6 -5
  375. package/contracts/instance/module/IComponents.sol +19 -7
  376. package/contracts/instance/module/IDistribution.sol +21 -8
  377. package/contracts/instance/module/IPolicy.sol +28 -8
  378. package/contracts/instance/module/IRisk.sol +4 -0
  379. package/contracts/oracle/BasicOracle.sol +1 -3
  380. package/contracts/oracle/BasicOracleAuthorization.sol +3 -12
  381. package/contracts/oracle/IOracle.sol +9 -4
  382. package/contracts/oracle/Oracle.sol +1 -3
  383. package/contracts/oracle/OracleService.sol +16 -15
  384. package/contracts/oracle/OracleServiceManager.sol +1 -1
  385. package/contracts/pool/BasicPool.sol +0 -2
  386. package/contracts/pool/BasicPoolAuthorization.sol +21 -13
  387. package/contracts/pool/BundleService.sol +28 -58
  388. package/contracts/pool/BundleServiceManager.sol +1 -1
  389. package/contracts/pool/IBundleService.sol +13 -19
  390. package/contracts/pool/IPoolService.sol +50 -38
  391. package/contracts/pool/Pool.sol +9 -11
  392. package/contracts/pool/PoolLib.sol +216 -0
  393. package/contracts/pool/PoolService.sol +294 -154
  394. package/contracts/pool/PoolServiceManager.sol +1 -1
  395. package/contracts/product/ApplicationService.sol +24 -9
  396. package/contracts/product/ApplicationServiceManager.sol +1 -1
  397. package/contracts/product/BasicProduct.sol +2 -2
  398. package/contracts/product/BasicProductAuthorization.sol +23 -8
  399. package/contracts/product/ClaimService.sol +157 -139
  400. package/contracts/product/ClaimServiceManager.sol +1 -1
  401. package/contracts/product/IApplicationService.sol +3 -0
  402. package/contracts/product/IClaimService.sol +14 -2
  403. package/contracts/product/IPolicyService.sol +11 -6
  404. package/contracts/product/IPricingService.sol +1 -0
  405. package/contracts/product/IProductComponent.sol +4 -1
  406. package/contracts/product/IRiskService.sol +7 -7
  407. package/contracts/product/PolicyService.sol +86 -158
  408. package/contracts/product/PolicyServiceLib.sol +65 -0
  409. package/contracts/product/PolicyServiceManager.sol +1 -1
  410. package/contracts/product/PricingService.sol +30 -21
  411. package/contracts/product/PricingServiceManager.sol +3 -3
  412. package/contracts/product/Product.sol +55 -15
  413. package/contracts/product/RiskService.sol +76 -29
  414. package/contracts/product/RiskServiceManager.sol +1 -1
  415. package/contracts/registry/IRegistry.sol +12 -15
  416. package/contracts/registry/IRelease.sol +29 -0
  417. package/contracts/registry/Registry.sol +7 -2
  418. package/contracts/registry/RegistryAdmin.sol +143 -342
  419. package/contracts/registry/RegistryAuthorization.sol +267 -0
  420. package/contracts/registry/RegistryService.sol +3 -3
  421. package/contracts/registry/RegistryServiceManager.sol +1 -1
  422. package/contracts/registry/ReleaseAdmin.sol +253 -0
  423. package/contracts/registry/ReleaseLifecycle.sol +2 -0
  424. package/contracts/registry/ReleaseRegistry.sol +146 -115
  425. package/contracts/registry/ServiceAuthorizationV3.sol +126 -2
  426. package/contracts/registry/TokenRegistry.sol +6 -8
  427. package/contracts/shared/Component.sol +17 -26
  428. package/contracts/shared/ComponentService.sol +141 -129
  429. package/contracts/shared/ComponentServiceManager.sol +1 -1
  430. package/contracts/shared/ComponentVerifyingService.sol +1 -1
  431. package/contracts/shared/ContractLib.sol +60 -3
  432. package/contracts/shared/IComponent.sol +0 -4
  433. package/contracts/shared/IComponentService.sol +9 -13
  434. package/contracts/shared/IRegisterable.sol +15 -4
  435. package/contracts/shared/IService.sol +3 -5
  436. package/contracts/shared/InitializableERC165.sol +9 -1
  437. package/contracts/shared/InstanceLinkedComponent.sol +2 -4
  438. package/contracts/shared/NftOwnable.sol +5 -5
  439. package/contracts/shared/PolicyHolder.sol +1 -1
  440. package/contracts/shared/Registerable.sol +42 -19
  441. package/contracts/shared/RegistryLinked.sol +1 -1
  442. package/contracts/shared/Service.sol +8 -27
  443. package/contracts/shared/TokenHandler.sol +45 -92
  444. package/contracts/staking/IStaking.sol +12 -10
  445. package/contracts/staking/IStakingService.sol +16 -1
  446. package/contracts/staking/Staking.sol +59 -28
  447. package/contracts/staking/{StakeManagerLib.sol → StakingLib.sol} +80 -23
  448. package/contracts/staking/StakingReader.sol +6 -16
  449. package/contracts/staking/StakingService.sol +68 -44
  450. package/contracts/staking/StakingServiceManager.sol +5 -4
  451. package/contracts/staking/StakingStore.sol +2 -1
  452. package/contracts/type/Fee.sol +8 -8
  453. package/contracts/type/ObjectType.sol +47 -39
  454. package/contracts/type/RiskId.sol +9 -3
  455. package/contracts/type/RoleId.sol +24 -4
  456. package/contracts/type/Selector.sol +5 -0
  457. package/contracts/type/Timestamp.sol +0 -5
  458. package/contracts/type/UFixed.sol +27 -10
  459. package/contracts/type/Version.sol +54 -5
  460. package/contracts/upgradeability/ProxyManager.sol +1 -1
  461. package/package.json +2 -2
  462. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.dbg.json +0 -4
  463. package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.json +0 -1196
  464. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +0 -4
  465. package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +0 -129
  466. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +0 -4
  467. package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +0 -440
  468. package/contracts/authorization/ReleaseAccessManager.sol +0 -38
  469. package/contracts/instance/module/IAccess.sol +0 -46
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../build-info/1155d3f43f30a0aaf4f94a5dc9c13a9e.json"
3
+ "buildInfo": "../../../build-info/a9e9328fd7dfdd3161d8873632c40ffe.json"
4
4
  }
@@ -366,10 +366,10 @@
366
366
  },
367
367
  {
368
368
  "inputs": [],
369
- "name": "getInstance",
369
+ "name": "getInstanceAddress",
370
370
  "outputs": [
371
371
  {
372
- "internalType": "contract IInstance",
372
+ "internalType": "address",
373
373
  "name": "",
374
374
  "type": "address"
375
375
  }
@@ -439,7 +439,18 @@
439
439
  "type": "function"
440
440
  },
441
441
  {
442
- "inputs": [],
442
+ "inputs": [
443
+ {
444
+ "internalType": "address",
445
+ "name": "authority",
446
+ "type": "address"
447
+ },
448
+ {
449
+ "internalType": "address",
450
+ "name": "registry",
451
+ "type": "address"
452
+ }
453
+ ],
443
454
  "name": "initialize",
444
455
  "outputs": [],
445
456
  "stateMutability": "nonpayable",
@@ -569,14 +580,30 @@
569
580
  "type": "function"
570
581
  }
571
582
  ],
572
- "bytecode": "0x6080604052348015600e575f80fd5b50611d808061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610111575f3560e01c80638fb360371161009e578063c1b5cfb71161006e578063c1b5cfb714610253578063d0c9bd761461027d578063de7b5d1414610290578063e034a564146102a1578063f4809edd146102b4575f80fd5b80638fb3603714610204578063903a264b146102255780639ad7533f14610238578063bf7e214f1461024b575f80fd5b806333fc7dee116100e457806333fc7dee146101875780635ab1bd531461019a5780637a9e5e4b146101be5780638129fc1c146101d15780638d95b32a146101d9575f80fd5b8063128817d414610115578063200fb8ca1461013e578063201a76a0146101535780632f458a1114610166575b5f80fd5b6101286101233660046118ad565b6102c7565b60405161013591906118d7565b60405180910390f35b61015161014c366004611901565b6103c7565b005b610151610161366004611901565b610576565b61017961017436600461191c565b610716565b604051908152602001610135565b61017961019536600461191c565b610726565b5f546001600160a01b03165b6040516001600160a01b039091168152602001610135565b6101516101cc36600461194b565b610730565b6101516107bb565b6101ec6101e7366004611966565b6109ee565b6040516001600160601b039091168152602001610135565b61020c610a7e565b6040516001600160e01b03199091168152602001610135565b610151610233366004611982565b610ab4565b610151610246366004611982565b610c33565b6101a6610da7565b6102666102613660046119ca565b610dc2565b604080519215158352901515602083015201610135565b61015161028b366004611901565b610e71565b6003546001600160a01b03166101a6565b6101796102af366004611901565b6110ab565b6101286102c23660046118ad565b611135565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102ec858561115a565b604051630713cfad60e31b8152600481019190915273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af415801561033b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061035f9190611a01565b6040516001600160e01b031960e084901b16815260ff199091166004820152602401602060405180830381865af415801561039c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611a22565b9392505050565b6103d3335b5f366111ec565b600354604080516302cd307160e01b815290515f926001600160a01b0316916302cd30719160048083019260209291908290030181865afa15801561041a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061043e9190611a3d565b6001600160a01b031663887b1fa9836040518263ffffffff1660e01b815260040161046991906118d7565b5f60405180830381865afa158015610483573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104aa9190810190611ac6565b516040516355ee627560e01b815290915061053990829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee6275906104f5906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610510573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105349190611b9f565b6112ea565b7fdd1ceb8f8bdf7881a75abcb6555584c9d57be188a88f2b5399791a386ecdd92c818360405161056a929190611bb6565b60405180910390a15050565b61057f336103cc565b600354604080516302cd307160e01b815290515f926001600160a01b0316916302cd30719160048083019260209291908290030181865afa1580156105c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ea9190611a3d565b6001600160a01b031663887b1fa9836040518263ffffffff1660e01b815260040161061591906118d7565b5f60405180830381865afa15801561062f573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106569190810190611ac6565b516040516355ee627560e01b81529091506106e590829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee6275906106a1906001600160c01b03198816906004016118d7565b602060405180830381865af41580156106bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e09190611b9f565b611366565b7f8f2c243a70f121f4d32845badea2dae8d360b2217292108cf24b05bcf2c2372b818360405161056a929190611bb6565b5f610720826113be565b92915050565b5f6107208261140e565b33610739610da7565b6001600160a01b0316816001600160a01b0316146107795760405162d1953b60e31b81526001600160a01b03821660048201526024015b60405180910390fd5b816001600160a01b03163b5f036107ae576040516361798f2f60e11b81526001600160a01b0383166004820152602401610770565b6107b78261145e565b5050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156108005750825b90505f8267ffffffffffffffff16600114801561081c5750303b155b90508115801561082a575080155b156108485760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561087257845460ff60401b1916600160401b1785555b600380546001600160a01b031916339081179091556040805163bf7e214f60e01b81529051610961929163bf7e214f9160048083019260209291908290030181865afa1580156108c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e89190611a3d565b60035f9054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa158015610938573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095c9190611a3d565b6114b7565b6003546040516001600160a01b0390911681527f354213bc359f6a4cdd77e05ad9f14f17072566dbf2dfe7d5febe8d3f1d20c55d9060200160405180910390a183156109e757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6001600160c01b031982165f908152600460208190526040808320905163e797d89960e01b8152918201526024810183905273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d89990604401602060405180830381865af4158015610a5a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611bd9565b5f80516020611d2b83398151915280545f9190600160a01b900460ff16610aa5575f610aae565b638fb3603760e01b5b91505090565b610abd336103cc565b6040516355ee627560e01b8152610b4890849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610b04906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610b1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b439190611b9f565b6114ea565b610b675781604051632f19f28160e01b815260040161077091906118d7565b6001600160c01b031982165f90815260046020819052604091829020915163539eabab60e11b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a73d575692610bc9928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610bdf575f80fd5b505af4158015610bf1573d5f803e3d5ffd5b505050507f28006d34f51edf094175b00d8f9e42838aaed8f67393f390a755402e0c9944768282604051610c26929190611bf4565b60405180910390a1505050565b610c3c336103cc565b6040516355ee627560e01b8152610cc790849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610c83906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610c9e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cc29190611b9f565b61157c565b610ce8578181604051635619bbe360e01b8152600401610770929190611bf4565b6001600160c01b031982165f908152600460208190526040918290209151631461054360e31b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a3082a1892610d4a928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610d60575f80fd5b505af4158015610d72573d5f803e3d5ffd5b505050507f4c0ee4d262aedf6c1adc914a2cb88fa1579bd0eb13e90b1f9107616ae752eeda8282604051610c26929190611bf4565b5f80516020611d2b833981519152546001600160a01b031690565b6040516355ee627560e01b81525f908190819073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610e09906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610e24573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e489190611b9f565b9050610e5485826114ea565b92508215610e6957610e66858261157c565b91505b509250929050565b610e7a336103cc565b600354604080516302cd307160e01b815290515f926001600160a01b0316916302cd30719160048083019260209291908290030181865afa158015610ec1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ee59190611a3d565b6001600160a01b031663887b1fa9836040518263ffffffff1660e01b8152600401610f1091906118d7565b5f60405180830381865afa158015610f2a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f519190810190611ac6565b51604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015610fab573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fcf9190611c2b565b15610fef5781604051634b5eb18d60e11b815260040161077091906118d7565b6040516355ee627560e01b815261107a90829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590611036906001600160c01b03198816906004016118d7565b602060405180830381865af4158015611051573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110759190611b9f565b6115d3565b7f3c70e4bb15a930759ca404d268e2ab1d384c56bedb9a782287bd633b979063e8818360405161056a929190611bb6565b6001600160c01b031981165f9081526004602081905260408083209051638b6233dd60e01b81529182015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd906024015b602060405180830381865af4158015611111573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107209190611b9f565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102ec85856116ca565b6001600160601b0382165f90815260016020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d31906044015b602060405180830381865af41580156111c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611b9f565b5f80516020611d2b8339815191525f80611224611207610da7565b873061121660045f8a8c611c44565b61121f91611c6b565b611721565b91509150816112e25763ffffffff8116156112bf57825460ff60a01b1916600160a01b178355611252610da7565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b815260040161128193929190611ca3565b5f604051808303815f87803b158015611298575f80fd5b505af11580156112aa573d5f803e3d5ffd5b5050845460ff60a01b19168555506112e29050565b60405162d1953b60e31b81526001600160a01b0387166004820152602401610770565b505050505050565b6001600160601b0382165f9081526001602052604090819020905163c54bd26f60e01b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063c54bd26f906044015b5f6040518083038186803b158015611354575f80fd5b505af41580156112e2573d5f803e3d5ffd5b6001600160601b0382165f908152600160205260409081902090516304af170b60e41b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b09060440161133e565b6001600160601b0381165f908152600160205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e906024016110f6565b6001600160601b0381165f908152600260205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e906024016110f6565b5f80516020611d2b83398151915280546001600160a01b0319166001600160a01b03831690811782556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200161056a565b6114bf611829565b6114c882611874565b5f80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160601b0382165f908152600260205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e906044015b602060405180830381865af4158015611558573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611c2b565b6001600160601b0382165f908152600160205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e9060440161153d565b6001600160601b0382165f90815260026020908152604080832060019092529182902091516304af170b60e41b8152600481018290526024810184905290919073__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b0906044015f6040518083038186803b158015611648575f80fd5b505af415801561165a573d5f803e3d5ffd5b50506040516304af170b60e41b8152600481018490526024810186905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9250634af170b091506044015f6040518083038186803b1580156116ae575f80fd5b505af41580156116c0573d5f803e3d5ffd5b5050505050505050565b6001600160601b0382165f90815260026020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d31906044016111ad565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b1790525161178f9190611ce2565b5f60405180830381855afa9150503d805f81146117c7576040519150601f19603f3d011682016040523d82523d5f602084013e6117cc565b606091505b5091509150811561181e5760408151106117fe57808060200190518101906117f49190611cf8565b909450925061181e565b602081511061181e578080602001905181019061181b9190611c2b565b93505b505094509492505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661187257604051631afcd79f60e31b815260040160405180910390fd5b565b61187c611829565b61188581611888565b50565b611890611829565b6118858161145e565b6001600160601b0381168114611885575f80fd5b5f80604083850312156118be575f80fd5b82356118c981611899565b946020939093013593505050565b6001600160c01b031991909116815260200190565b6001600160c01b031981168114611885575f80fd5b5f60208284031215611911575f80fd5b81356103c0816118ec565b5f6020828403121561192c575f80fd5b81356103c081611899565b6001600160a01b0381168114611885575f80fd5b5f6020828403121561195b575f80fd5b81356103c081611937565b5f8060408385031215611977575f80fd5b82356118c9816118ec565b5f805f60608486031215611994575f80fd5b833561199f81611899565b925060208401356119af816118ec565b915060408401356119bf81611899565b809150509250925092565b5f80604083850312156119db575f80fd5b82356119e681611899565b915060208301356119f6816118ec565b809150509250929050565b5f60208284031215611a11575f80fd5b815160ff19811681146103c0575f80fd5b5f60208284031215611a32575f80fd5b81516103c0816118ec565b5f60208284031215611a4d575f80fd5b81516103c081611937565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff81118282101715611a8f57611a8f611a58565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611abe57611abe611a58565b604052919050565b5f60208284031215611ad6575f80fd5b815167ffffffffffffffff811115611aec575f80fd5b820160408185031215611afd575f80fd5b611b05611a6c565b8151611b1081611899565b8152602082015167ffffffffffffffff811115611b2b575f80fd5b80830192505084601f830112611b3f575f80fd5b815167ffffffffffffffff811115611b5957611b59611a58565b611b6c601f8201601f1916602001611a95565b818152866020838601011115611b80575f80fd5b8160208501602083015e5f602092820183015290820152949350505050565b5f60208284031215611baf575f80fd5b5051919050565b6001600160601b039290921682526001600160c01b031916602082015260400190565b5f60208284031215611be9575f80fd5b81516103c081611899565b6001600160c01b03199290921682526001600160601b0316602082015260400190565b80518015158114611c26575f80fd5b919050565b5f60208284031215611c3b575f80fd5b6103c082611c17565b5f8085851115611c52575f80fd5b83861115611c5e575f80fd5b5050820193919092039150565b80356001600160e01b03198116906004841015611c9c576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215611d09575f80fd5b611d1283611c17565b9150602083015163ffffffff811681146119f6575f80fdfef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220e39cd982f651844410ff21c1ea52008967cc30032fcc5eb456dbc63e72b3e49964736f6c634300081a0033",
573
- "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610111575f3560e01c80638fb360371161009e578063c1b5cfb71161006e578063c1b5cfb714610253578063d0c9bd761461027d578063de7b5d1414610290578063e034a564146102a1578063f4809edd146102b4575f80fd5b80638fb3603714610204578063903a264b146102255780639ad7533f14610238578063bf7e214f1461024b575f80fd5b806333fc7dee116100e457806333fc7dee146101875780635ab1bd531461019a5780637a9e5e4b146101be5780638129fc1c146101d15780638d95b32a146101d9575f80fd5b8063128817d414610115578063200fb8ca1461013e578063201a76a0146101535780632f458a1114610166575b5f80fd5b6101286101233660046118ad565b6102c7565b60405161013591906118d7565b60405180910390f35b61015161014c366004611901565b6103c7565b005b610151610161366004611901565b610576565b61017961017436600461191c565b610716565b604051908152602001610135565b61017961019536600461191c565b610726565b5f546001600160a01b03165b6040516001600160a01b039091168152602001610135565b6101516101cc36600461194b565b610730565b6101516107bb565b6101ec6101e7366004611966565b6109ee565b6040516001600160601b039091168152602001610135565b61020c610a7e565b6040516001600160e01b03199091168152602001610135565b610151610233366004611982565b610ab4565b610151610246366004611982565b610c33565b6101a6610da7565b6102666102613660046119ca565b610dc2565b604080519215158352901515602083015201610135565b61015161028b366004611901565b610e71565b6003546001600160a01b03166101a6565b6101796102af366004611901565b6110ab565b6101286102c23660046118ad565b611135565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102ec858561115a565b604051630713cfad60e31b8152600481019190915273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af415801561033b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061035f9190611a01565b6040516001600160e01b031960e084901b16815260ff199091166004820152602401602060405180830381865af415801561039c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611a22565b9392505050565b6103d3335b5f366111ec565b600354604080516302cd307160e01b815290515f926001600160a01b0316916302cd30719160048083019260209291908290030181865afa15801561041a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061043e9190611a3d565b6001600160a01b031663887b1fa9836040518263ffffffff1660e01b815260040161046991906118d7565b5f60405180830381865afa158015610483573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526104aa9190810190611ac6565b516040516355ee627560e01b815290915061053990829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee6275906104f5906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610510573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105349190611b9f565b6112ea565b7fdd1ceb8f8bdf7881a75abcb6555584c9d57be188a88f2b5399791a386ecdd92c818360405161056a929190611bb6565b60405180910390a15050565b61057f336103cc565b600354604080516302cd307160e01b815290515f926001600160a01b0316916302cd30719160048083019260209291908290030181865afa1580156105c6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105ea9190611a3d565b6001600160a01b031663887b1fa9836040518263ffffffff1660e01b815260040161061591906118d7565b5f60405180830381865afa15801561062f573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526106569190810190611ac6565b516040516355ee627560e01b81529091506106e590829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee6275906106a1906001600160c01b03198816906004016118d7565b602060405180830381865af41580156106bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106e09190611b9f565b611366565b7f8f2c243a70f121f4d32845badea2dae8d360b2217292108cf24b05bcf2c2372b818360405161056a929190611bb6565b5f610720826113be565b92915050565b5f6107208261140e565b33610739610da7565b6001600160a01b0316816001600160a01b0316146107795760405162d1953b60e31b81526001600160a01b03821660048201526024015b60405180910390fd5b816001600160a01b03163b5f036107ae576040516361798f2f60e11b81526001600160a01b0383166004820152602401610770565b6107b78261145e565b5050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156108005750825b90505f8267ffffffffffffffff16600114801561081c5750303b155b90508115801561082a575080155b156108485760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561087257845460ff60401b1916600160401b1785555b600380546001600160a01b031916339081179091556040805163bf7e214f60e01b81529051610961929163bf7e214f9160048083019260209291908290030181865afa1580156108c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e89190611a3d565b60035f9054906101000a90046001600160a01b03166001600160a01b0316635ab1bd536040518163ffffffff1660e01b8152600401602060405180830381865afa158015610938573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095c9190611a3d565b6114b7565b6003546040516001600160a01b0390911681527f354213bc359f6a4cdd77e05ad9f14f17072566dbf2dfe7d5febe8d3f1d20c55d9060200160405180910390a183156109e757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050565b6001600160c01b031982165f908152600460208190526040808320905163e797d89960e01b8152918201526024810183905273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d89990604401602060405180830381865af4158015610a5a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611bd9565b5f80516020611d2b83398151915280545f9190600160a01b900460ff16610aa5575f610aae565b638fb3603760e01b5b91505090565b610abd336103cc565b6040516355ee627560e01b8152610b4890849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610b04906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610b1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b439190611b9f565b6114ea565b610b675781604051632f19f28160e01b815260040161077091906118d7565b6001600160c01b031982165f90815260046020819052604091829020915163539eabab60e11b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a73d575692610bc9928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610bdf575f80fd5b505af4158015610bf1573d5f803e3d5ffd5b505050507f28006d34f51edf094175b00d8f9e42838aaed8f67393f390a755402e0c9944768282604051610c26929190611bf4565b60405180910390a1505050565b610c3c336103cc565b6040516355ee627560e01b8152610cc790849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610c83906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610c9e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cc29190611b9f565b61157c565b610ce8578181604051635619bbe360e01b8152600401610770929190611bf4565b6001600160c01b031982165f908152600460208190526040918290209151631461054360e31b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a3082a1892610d4a928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610d60575f80fd5b505af4158015610d72573d5f803e3d5ffd5b505050507f4c0ee4d262aedf6c1adc914a2cb88fa1579bd0eb13e90b1f9107616ae752eeda8282604051610c26929190611bf4565b5f80516020611d2b833981519152546001600160a01b031690565b6040516355ee627560e01b81525f908190819073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610e09906001600160c01b03198816906004016118d7565b602060405180830381865af4158015610e24573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e489190611b9f565b9050610e5485826114ea565b92508215610e6957610e66858261157c565b91505b509250929050565b610e7a336103cc565b600354604080516302cd307160e01b815290515f926001600160a01b0316916302cd30719160048083019260209291908290030181865afa158015610ec1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ee59190611a3d565b6001600160a01b031663887b1fa9836040518263ffffffff1660e01b8152600401610f1091906118d7565b5f60405180830381865afa158015610f2a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610f519190810190611ac6565b51604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015610fab573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fcf9190611c2b565b15610fef5781604051634b5eb18d60e11b815260040161077091906118d7565b6040516355ee627560e01b815261107a90829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590611036906001600160c01b03198816906004016118d7565b602060405180830381865af4158015611051573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110759190611b9f565b6115d3565b7f3c70e4bb15a930759ca404d268e2ab1d384c56bedb9a782287bd633b979063e8818360405161056a929190611bb6565b6001600160c01b031981165f9081526004602081905260408083209051638b6233dd60e01b81529182015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd906024015b602060405180830381865af4158015611111573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107209190611b9f565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102ec85856116ca565b6001600160601b0382165f90815260016020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d31906044015b602060405180830381865af41580156111c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611b9f565b5f80516020611d2b8339815191525f80611224611207610da7565b873061121660045f8a8c611c44565b61121f91611c6b565b611721565b91509150816112e25763ffffffff8116156112bf57825460ff60a01b1916600160a01b178355611252610da7565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b815260040161128193929190611ca3565b5f604051808303815f87803b158015611298575f80fd5b505af11580156112aa573d5f803e3d5ffd5b5050845460ff60a01b19168555506112e29050565b60405162d1953b60e31b81526001600160a01b0387166004820152602401610770565b505050505050565b6001600160601b0382165f9081526001602052604090819020905163c54bd26f60e01b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063c54bd26f906044015b5f6040518083038186803b158015611354575f80fd5b505af41580156112e2573d5f803e3d5ffd5b6001600160601b0382165f908152600160205260409081902090516304af170b60e41b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b09060440161133e565b6001600160601b0381165f908152600160205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e906024016110f6565b6001600160601b0381165f908152600260205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e906024016110f6565b5f80516020611d2b83398151915280546001600160a01b0319166001600160a01b03831690811782556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200161056a565b6114bf611829565b6114c882611874565b5f80546001600160a01b0319166001600160a01b039290921691909117905550565b6001600160601b0382165f908152600260205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e906044015b602060405180830381865af4158015611558573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103c09190611c2b565b6001600160601b0382165f908152600160205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e9060440161153d565b6001600160601b0382165f90815260026020908152604080832060019092529182902091516304af170b60e41b8152600481018290526024810184905290919073__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b0906044015f6040518083038186803b158015611648575f80fd5b505af415801561165a573d5f803e3d5ffd5b50506040516304af170b60e41b8152600481018490526024810186905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9250634af170b091506044015f6040518083038186803b1580156116ae575f80fd5b505af41580156116c0573d5f803e3d5ffd5b5050505050505050565b6001600160601b0382165f90815260026020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d31906044016111ad565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b1790525161178f9190611ce2565b5f60405180830381855afa9150503d805f81146117c7576040519150601f19603f3d011682016040523d82523d5f602084013e6117cc565b606091505b5091509150811561181e5760408151106117fe57808060200190518101906117f49190611cf8565b909450925061181e565b602081511061181e578080602001905181019061181b9190611c2b565b93505b505094509492505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff1661187257604051631afcd79f60e31b815260040160405180910390fd5b565b61187c611829565b61188581611888565b50565b611890611829565b6118858161145e565b6001600160601b0381168114611885575f80fd5b5f80604083850312156118be575f80fd5b82356118c981611899565b946020939093013593505050565b6001600160c01b031991909116815260200190565b6001600160c01b031981168114611885575f80fd5b5f60208284031215611911575f80fd5b81356103c0816118ec565b5f6020828403121561192c575f80fd5b81356103c081611899565b6001600160a01b0381168114611885575f80fd5b5f6020828403121561195b575f80fd5b81356103c081611937565b5f8060408385031215611977575f80fd5b82356118c9816118ec565b5f805f60608486031215611994575f80fd5b833561199f81611899565b925060208401356119af816118ec565b915060408401356119bf81611899565b809150509250925092565b5f80604083850312156119db575f80fd5b82356119e681611899565b915060208301356119f6816118ec565b809150509250929050565b5f60208284031215611a11575f80fd5b815160ff19811681146103c0575f80fd5b5f60208284031215611a32575f80fd5b81516103c0816118ec565b5f60208284031215611a4d575f80fd5b81516103c081611937565b634e487b7160e01b5f52604160045260245ffd5b6040805190810167ffffffffffffffff81118282101715611a8f57611a8f611a58565b60405290565b604051601f8201601f1916810167ffffffffffffffff81118282101715611abe57611abe611a58565b604052919050565b5f60208284031215611ad6575f80fd5b815167ffffffffffffffff811115611aec575f80fd5b820160408185031215611afd575f80fd5b611b05611a6c565b8151611b1081611899565b8152602082015167ffffffffffffffff811115611b2b575f80fd5b80830192505084601f830112611b3f575f80fd5b815167ffffffffffffffff811115611b5957611b59611a58565b611b6c601f8201601f1916602001611a95565b818152866020838601011115611b80575f80fd5b8160208501602083015e5f602092820183015290820152949350505050565b5f60208284031215611baf575f80fd5b5051919050565b6001600160601b039290921682526001600160c01b031916602082015260400190565b5f60208284031215611be9575f80fd5b81516103c081611899565b6001600160c01b03199290921682526001600160601b0316602082015260400190565b80518015158114611c26575f80fd5b919050565b5f60208284031215611c3b575f80fd5b6103c082611c17565b5f8085851115611c52575f80fd5b83861115611c5e575f80fd5b5050820193919092039150565b80356001600160e01b03198116906004841015611c9c576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215611d09575f80fd5b611d1283611c17565b9150602083015163ffffffff811681146119f6575f80fdfef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220e39cd982f651844410ff21c1ea52008967cc30032fcc5eb456dbc63e72b3e49964736f6c634300081a0033",
583
+ "bytecode": "0x6080604052348015600e575f80fd5b50611ab98061001c5f395ff3fe608060405234801561000f575f80fd5b5060043610610111575f3560e01c80638d95b32a1161009e578063bf7e214f1161006e578063bf7e214f14610267578063c1b5cfb71461026f578063d0c9bd7614610299578063e034a564146102ac578063f4809edd146102bf575f80fd5b80638d95b32a146101f55780638fb3603714610220578063903a264b146102415780639ad7533f14610254575f80fd5b806333fc7dee116100e457806333fc7dee14610187578063485cc9551461019a5780635ab1bd53146101ad578063681e65f0146101d15780637a9e5e4b146101e2575f80fd5b8063128817d414610115578063200fb8ca1461013e578063201a76a0146101535780632f458a1114610166575b5f80fd5b6101286101233660046116f4565b6102d2565b604051610135919061171e565b60405180910390f35b61015161014c366004611748565b6103d2565b005b610151610161366004611748565b610530565b610179610174366004611763565b61067f565b604051908152602001610135565b610179610195366004611763565b61068f565b6101516101a8366004611799565b610699565b5f546001600160a01b03165b6040516001600160a01b039091168152602001610135565b6003546001600160a01b03166101b9565b6101516101f03660046117ca565b6107fb565b6102086102033660046117e3565b610886565b6040516001600160601b039091168152602001610135565b610228610916565b6040516001600160e01b03199091168152602001610135565b61015161024f3660046117ff565b61094c565b6101516102623660046117ff565b610acb565b6101b9610c3f565b61028261027d366004611847565b610c5a565b604080519215158352901515602083015201610135565b6101516102a7366004611748565b610d09565b6101796102ba366004611748565b610ef2565b6101286102cd3660046116f4565b610f7c565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102f78585610fa1565b604051630713cfad60e31b8152600481019190915273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af4158015610346573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036a919061187e565b6040516001600160e01b031960e084901b16815260ff199091166004820152602401602060405180830381865af41580156103a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb919061189f565b9392505050565b6103de335b5f36611033565b6003546040516351ca503f60e01b81525f9173__$9ab531d2fb5724a292102184f345630dcc$__916351ca503f91610426916001600160a01b039091169086906004016118ba565b602060405180830381865af4158015610441573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061046591906118dd565b6040516355ee627560e01b81529091506104f390829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee6275906104af906001600160c01b031988169060040161171e565b602060405180830381865af41580156104ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ee91906118f8565b611131565b7fdd1ceb8f8bdf7881a75abcb6555584c9d57be188a88f2b5399791a386ecdd92c818360405161052492919061190f565b60405180910390a15050565b610539336103d7565b6003546040516351ca503f60e01b81525f9173__$9ab531d2fb5724a292102184f345630dcc$__916351ca503f91610581916001600160a01b039091169086906004016118ba565b602060405180830381865af415801561059c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c091906118dd565b6040516355ee627560e01b815290915061064e90829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee62759061060a906001600160c01b031988169060040161171e565b602060405180830381865af4158015610625573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064991906118f8565b6111ad565b7f8f2c243a70f121f4d32845badea2dae8d360b2217292108cf24b05bcf2c2372b818360405161052492919061190f565b5f61068982611205565b92915050565b5f61068982611255565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156106de5750825b90505f8267ffffffffffffffff1660011480156106fa5750303b155b905081158015610708575080155b156107265760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561075057845460ff60401b1916600160401b1785555b600380546001600160a01b0319163317905561076c87876112a5565b6003546040516001600160a01b0390911681527f354213bc359f6a4cdd77e05ad9f14f17072566dbf2dfe7d5febe8d3f1d20c55d9060200160405180910390a183156107f257845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b33610804610c3f565b6001600160a01b0316816001600160a01b0316146108445760405162d1953b60e31b81526001600160a01b03821660048201526024015b60405180910390fd5b816001600160a01b03163b5f03610879576040516361798f2f60e11b81526001600160a01b038316600482015260240161083b565b610882826112d8565b5050565b6001600160c01b031982165f908152600460208190526040808320905163e797d89960e01b8152918201526024810183905273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d89990604401602060405180830381865af41580156108f2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb91906118dd565b5f80516020611a6483398151915280545f9190600160a01b900460ff1661093d575f610946565b638fb3603760e01b5b91505090565b610955336103d7565b6040516355ee627560e01b81526109e090849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee62759061099c906001600160c01b031988169060040161171e565b602060405180830381865af41580156109b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109db91906118f8565b611331565b6109ff5781604051632f19f28160e01b815260040161083b919061171e565b6001600160c01b031982165f90815260046020819052604091829020915163539eabab60e11b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a73d575692610a61928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610a77575f80fd5b505af4158015610a89573d5f803e3d5ffd5b505050507f28006d34f51edf094175b00d8f9e42838aaed8f67393f390a755402e0c9944768282604051610abe929190611932565b60405180910390a1505050565b610ad4336103d7565b6040516355ee627560e01b8152610b5f90849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610b1b906001600160c01b031988169060040161171e565b602060405180830381865af4158015610b36573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5a91906118f8565b6113c3565b610b80578181604051635619bbe360e01b815260040161083b929190611932565b6001600160c01b031982165f908152600460208190526040918290209151631461054360e31b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a3082a1892610be2928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610bf8575f80fd5b505af4158015610c0a573d5f803e3d5ffd5b505050507f4c0ee4d262aedf6c1adc914a2cb88fa1579bd0eb13e90b1f9107616ae752eeda8282604051610abe929190611932565b5f80516020611a64833981519152546001600160a01b031690565b6040516355ee627560e01b81525f908190819073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610ca1906001600160c01b031988169060040161171e565b602060405180830381865af4158015610cbc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce091906118f8565b9050610cec8582611331565b92508215610d0157610cfe85826113c3565b91505b509250929050565b610d12336103d7565b6003546040516351ca503f60e01b81525f9173__$9ab531d2fb5724a292102184f345630dcc$__916351ca503f91610d5a916001600160a01b039091169086906004016118ba565b602060405180830381865af4158015610d75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d9991906118dd565b604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015610df2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e169190611964565b15610e365781604051634b5eb18d60e11b815260040161083b919061171e565b6040516355ee627560e01b8152610ec190829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610e7d906001600160c01b031988169060040161171e565b602060405180830381865af4158015610e98573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebc91906118f8565b61141a565b7f3c70e4bb15a930759ca404d268e2ab1d384c56bedb9a782287bd633b979063e8818360405161052492919061190f565b6001600160c01b031981165f9081526004602081905260408083209051638b6233dd60e01b81529182015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd906024015b602060405180830381865af4158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061068991906118f8565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102f78585611511565b6001600160601b0382165f90815260016020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d31906044015b602060405180830381865af415801561100f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb91906118f8565b5f80516020611a648339815191525f8061106b61104e610c3f565b873061105d60045f8a8c61197d565b611066916119a4565b611568565b91509150816111295763ffffffff81161561110657825460ff60a01b1916600160a01b178355611099610c3f565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b81526004016110c8939291906119dc565b5f604051808303815f87803b1580156110df575f80fd5b505af11580156110f1573d5f803e3d5ffd5b5050845460ff60a01b19168555506111299050565b60405162d1953b60e31b81526001600160a01b038716600482015260240161083b565b505050505050565b6001600160601b0382165f9081526001602052604090819020905163c54bd26f60e01b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063c54bd26f906044015b5f6040518083038186803b15801561119b575f80fd5b505af4158015611129573d5f803e3d5ffd5b6001600160601b0382165f908152600160205260409081902090516304af170b60e41b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b090604401611185565b6001600160601b0381165f908152600160205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e90602401610f3d565b6001600160601b0381165f908152600260205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e90602401610f3d565b6112ad611670565b6112b6826116bb565b5f80546001600160a01b0319166001600160a01b039290921691909117905550565b5f80516020611a6483398151915280546001600160a01b0319166001600160a01b03831690811782556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602001610524565b6001600160601b0382165f908152600260205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e906044015b602060405180830381865af415801561139f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb9190611964565b6001600160601b0382165f908152600160205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e90604401611384565b6001600160601b0382165f90815260026020908152604080832060019092529182902091516304af170b60e41b8152600481018290526024810184905290919073__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b0906044015f6040518083038186803b15801561148f575f80fd5b505af41580156114a1573d5f803e3d5ffd5b50506040516304af170b60e41b8152600481018490526024810186905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9250634af170b091506044015f6040518083038186803b1580156114f5575f80fd5b505af4158015611507573d5f803e3d5ffd5b5050505050505050565b6001600160601b0382165f90815260026020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d3190604401610ff4565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b179052516115d69190611a1b565b5f60405180830381855afa9150503d805f811461160e576040519150601f19603f3d011682016040523d82523d5f602084013e611613565b606091505b50915091508115611665576040815110611645578080602001905181019061163b9190611a31565b9094509250611665565b602081511061166557808060200190518101906116629190611964565b93505b505094509492505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166116b957604051631afcd79f60e31b815260040160405180910390fd5b565b6116c3611670565b6116cc816116cf565b50565b6116d7611670565b6116cc816112d8565b6001600160601b03811681146116cc575f80fd5b5f8060408385031215611705575f80fd5b8235611710816116e0565b946020939093013593505050565b6001600160c01b031991909116815260200190565b6001600160c01b0319811681146116cc575f80fd5b5f60208284031215611758575f80fd5b81356103cb81611733565b5f60208284031215611773575f80fd5b81356103cb816116e0565b80356001600160a01b0381168114611794575f80fd5b919050565b5f80604083850312156117aa575f80fd5b6117b38361177e565b91506117c16020840161177e565b90509250929050565b5f602082840312156117da575f80fd5b6103cb8261177e565b5f80604083850312156117f4575f80fd5b823561171081611733565b5f805f60608486031215611811575f80fd5b833561181c816116e0565b9250602084013561182c81611733565b9150604084013561183c816116e0565b809150509250925092565b5f8060408385031215611858575f80fd5b8235611863816116e0565b9150602083013561187381611733565b809150509250929050565b5f6020828403121561188e575f80fd5b815160ff19811681146103cb575f80fd5b5f602082840312156118af575f80fd5b81516103cb81611733565b6001600160a01b039290921682526001600160c01b031916602082015260400190565b5f602082840312156118ed575f80fd5b81516103cb816116e0565b5f60208284031215611908575f80fd5b5051919050565b6001600160601b039290921682526001600160c01b031916602082015260400190565b6001600160c01b03199290921682526001600160601b0316602082015260400190565b80518015158114611794575f80fd5b5f60208284031215611974575f80fd5b6103cb82611955565b5f808585111561198b575f80fd5b83861115611997575f80fd5b5050820193919092039150565b80356001600160e01b031981169060048410156119d5576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215611a42575f80fd5b611a4b83611955565b9150602083015163ffffffff81168114611873575f80fdfef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220cdd589caef41c03a7aa4ae371c2fc2cb2b1d2aaa9d6c8f1fe8a59f934ad809ee64736f6c634300081a0033",
584
+ "deployedBytecode": "0x608060405234801561000f575f80fd5b5060043610610111575f3560e01c80638d95b32a1161009e578063bf7e214f1161006e578063bf7e214f14610267578063c1b5cfb71461026f578063d0c9bd7614610299578063e034a564146102ac578063f4809edd146102bf575f80fd5b80638d95b32a146101f55780638fb3603714610220578063903a264b146102415780639ad7533f14610254575f80fd5b806333fc7dee116100e457806333fc7dee14610187578063485cc9551461019a5780635ab1bd53146101ad578063681e65f0146101d15780637a9e5e4b146101e2575f80fd5b8063128817d414610115578063200fb8ca1461013e578063201a76a0146101535780632f458a1114610166575b5f80fd5b6101286101233660046116f4565b6102d2565b604051610135919061171e565b60405180910390f35b61015161014c366004611748565b6103d2565b005b610151610161366004611748565b610530565b610179610174366004611763565b61067f565b604051908152602001610135565b610179610195366004611763565b61068f565b6101516101a8366004611799565b610699565b5f546001600160a01b03165b6040516001600160a01b039091168152602001610135565b6003546001600160a01b03166101b9565b6101516101f03660046117ca565b6107fb565b6102086102033660046117e3565b610886565b6040516001600160601b039091168152602001610135565b610228610916565b6040516001600160e01b03199091168152602001610135565b61015161024f3660046117ff565b61094c565b6101516102623660046117ff565b610acb565b6101b9610c3f565b61028261027d366004611847565b610c5a565b604080519215158352901515602083015201610135565b6101516102a7366004611748565b610d09565b6101796102ba366004611748565b610ef2565b6101286102cd3660046116f4565b610f7c565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102f78585610fa1565b604051630713cfad60e31b8152600481019190915273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af4158015610346573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061036a919061187e565b6040516001600160e01b031960e084901b16815260ff199091166004820152602401602060405180830381865af41580156103a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb919061189f565b9392505050565b6103de335b5f36611033565b6003546040516351ca503f60e01b81525f9173__$9ab531d2fb5724a292102184f345630dcc$__916351ca503f91610426916001600160a01b039091169086906004016118ba565b602060405180830381865af4158015610441573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061046591906118dd565b6040516355ee627560e01b81529091506104f390829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee6275906104af906001600160c01b031988169060040161171e565b602060405180830381865af41580156104ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104ee91906118f8565b611131565b7fdd1ceb8f8bdf7881a75abcb6555584c9d57be188a88f2b5399791a386ecdd92c818360405161052492919061190f565b60405180910390a15050565b610539336103d7565b6003546040516351ca503f60e01b81525f9173__$9ab531d2fb5724a292102184f345630dcc$__916351ca503f91610581916001600160a01b039091169086906004016118ba565b602060405180830381865af415801561059c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105c091906118dd565b6040516355ee627560e01b815290915061064e90829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee62759061060a906001600160c01b031988169060040161171e565b602060405180830381865af4158015610625573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061064991906118f8565b6111ad565b7f8f2c243a70f121f4d32845badea2dae8d360b2217292108cf24b05bcf2c2372b818360405161052492919061190f565b5f61068982611205565b92915050565b5f61068982611255565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f811580156106de5750825b90505f8267ffffffffffffffff1660011480156106fa5750303b155b905081158015610708575080155b156107265760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561075057845460ff60401b1916600160401b1785555b600380546001600160a01b0319163317905561076c87876112a5565b6003546040516001600160a01b0390911681527f354213bc359f6a4cdd77e05ad9f14f17072566dbf2dfe7d5febe8d3f1d20c55d9060200160405180910390a183156107f257845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50505050505050565b33610804610c3f565b6001600160a01b0316816001600160a01b0316146108445760405162d1953b60e31b81526001600160a01b03821660048201526024015b60405180910390fd5b816001600160a01b03163b5f03610879576040516361798f2f60e11b81526001600160a01b038316600482015260240161083b565b610882826112d8565b5050565b6001600160c01b031982165f908152600460208190526040808320905163e797d89960e01b8152918201526024810183905273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d89990604401602060405180830381865af41580156108f2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb91906118dd565b5f80516020611a6483398151915280545f9190600160a01b900460ff1661093d575f610946565b638fb3603760e01b5b91505090565b610955336103d7565b6040516355ee627560e01b81526109e090849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee62759061099c906001600160c01b031988169060040161171e565b602060405180830381865af41580156109b7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109db91906118f8565b611331565b6109ff5781604051632f19f28160e01b815260040161083b919061171e565b6001600160c01b031982165f90815260046020819052604091829020915163539eabab60e11b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a73d575692610a61928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610a77575f80fd5b505af4158015610a89573d5f803e3d5ffd5b505050507f28006d34f51edf094175b00d8f9e42838aaed8f67393f390a755402e0c9944768282604051610abe929190611932565b60405180910390a1505050565b610ad4336103d7565b6040516355ee627560e01b8152610b5f90849073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610b1b906001600160c01b031988169060040161171e565b602060405180830381865af4158015610b36573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b5a91906118f8565b6113c3565b610b80578181604051635619bbe360e01b815260040161083b929190611932565b6001600160c01b031982165f908152600460208190526040918290209151631461054360e31b815273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9263a3082a1892610be2928691019182526001600160601b0316602082015260400190565b5f6040518083038186803b158015610bf8575f80fd5b505af4158015610c0a573d5f803e3d5ffd5b505050507f4c0ee4d262aedf6c1adc914a2cb88fa1579bd0eb13e90b1f9107616ae752eeda8282604051610abe929190611932565b5f80516020611a64833981519152546001600160a01b031690565b6040516355ee627560e01b81525f908190819073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610ca1906001600160c01b031988169060040161171e565b602060405180830381865af4158015610cbc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ce091906118f8565b9050610cec8582611331565b92508215610d0157610cfe85826113c3565b91505b509250929050565b610d12336103d7565b6003546040516351ca503f60e01b81525f9173__$9ab531d2fb5724a292102184f345630dcc$__916351ca503f91610d5a916001600160a01b039091169086906004016118ba565b602060405180830381865af4158015610d75573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d9991906118dd565b604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015610df2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e169190611964565b15610e365781604051634b5eb18d60e11b815260040161083b919061171e565b6040516355ee627560e01b8152610ec190829073__$32e9ecefef68cb354d118e0496fdd3f4bc$__906355ee627590610e7d906001600160c01b031988169060040161171e565b602060405180830381865af4158015610e98573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ebc91906118f8565b61141a565b7f3c70e4bb15a930759ca404d268e2ab1d384c56bedb9a782287bd633b979063e8818360405161052492919061190f565b6001600160c01b031981165f9081526004602081905260408083209051638b6233dd60e01b81529182015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd906024015b602060405180830381865af4158015610f58573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061068991906118f8565b5f73__$32e9ecefef68cb354d118e0496fdd3f4bc$__6301809eea6102f78585611511565b6001600160601b0382165f90815260016020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d31906044015b602060405180830381865af415801561100f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb91906118f8565b5f80516020611a648339815191525f8061106b61104e610c3f565b873061105d60045f8a8c61197d565b611066916119a4565b611568565b91509150816111295763ffffffff81161561110657825460ff60a01b1916600160a01b178355611099610c3f565b6001600160a01b03166394c7d7ee8787876040518463ffffffff1660e01b81526004016110c8939291906119dc565b5f604051808303815f87803b1580156110df575f80fd5b505af11580156110f1573d5f803e3d5ffd5b5050845460ff60a01b19168555506111299050565b60405162d1953b60e31b81526001600160a01b038716600482015260240161083b565b505050505050565b6001600160601b0382165f9081526001602052604090819020905163c54bd26f60e01b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063c54bd26f906044015b5f6040518083038186803b15801561119b575f80fd5b505af4158015611129573d5f803e3d5ffd5b6001600160601b0382165f908152600160205260409081902090516304af170b60e41b815260048101919091526024810182905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b090604401611185565b6001600160601b0381165f908152600160205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e90602401610f3d565b6001600160601b0381165f908152600260205260408082209051634ef87aaf60e11b8152600481019190915273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90639df0f55e90602401610f3d565b6112ad611670565b6112b6826116bb565b5f80546001600160a01b0319166001600160a01b039290921691909117905550565b5f80516020611a6483398151915280546001600160a01b0319166001600160a01b03831690811782556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad90602001610524565b6001600160601b0382165f908152600260205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e906044015b602060405180830381865af415801561139f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103cb9190611964565b6001600160601b0382165f908152600160205260408082209051633205659f60e11b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063640acb3e90604401611384565b6001600160601b0382165f90815260026020908152604080832060019092529182902091516304af170b60e41b8152600481018290526024810184905290919073__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__90634af170b0906044015f6040518083038186803b15801561148f575f80fd5b505af41580156114a1573d5f803e3d5ffd5b50506040516304af170b60e41b8152600481018490526024810186905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9250634af170b091506044015f6040518083038186803b1580156114f5575f80fd5b505af4158015611507573d5f803e3d5ffd5b5050505050505050565b6001600160601b0382165f90815260026020526040808220905163e9c54d3160e01b815260048101919091526024810183905273__$cbdc78fa2b79ba32ca600e20fa3fec38f8$__9063e9c54d3190604401610ff4565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b179052516115d69190611a1b565b5f60405180830381855afa9150503d805f811461160e576040519150601f19603f3d011682016040523d82523d5f602084013e611613565b606091505b50915091508115611665576040815110611645578080602001905181019061163b9190611a31565b9094509250611665565b602081511061166557808060200190518101906116629190611964565b93505b505094509492505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166116b957604051631afcd79f60e31b815260040160405180910390fd5b565b6116c3611670565b6116cc816116cf565b50565b6116d7611670565b6116cc816112d8565b6001600160601b03811681146116cc575f80fd5b5f8060408385031215611705575f80fd5b8235611710816116e0565b946020939093013593505050565b6001600160c01b031991909116815260200190565b6001600160c01b0319811681146116cc575f80fd5b5f60208284031215611758575f80fd5b81356103cb81611733565b5f60208284031215611773575f80fd5b81356103cb816116e0565b80356001600160a01b0381168114611794575f80fd5b919050565b5f80604083850312156117aa575f80fd5b6117b38361177e565b91506117c16020840161177e565b90509250929050565b5f602082840312156117da575f80fd5b6103cb8261177e565b5f80604083850312156117f4575f80fd5b823561171081611733565b5f805f60608486031215611811575f80fd5b833561181c816116e0565b9250602084013561182c81611733565b9150604084013561183c816116e0565b809150509250925092565b5f8060408385031215611858575f80fd5b8235611863816116e0565b9150602083013561187381611733565b809150509250929050565b5f6020828403121561188e575f80fd5b815160ff19811681146103cb575f80fd5b5f602082840312156118af575f80fd5b81516103cb81611733565b6001600160a01b039290921682526001600160c01b031916602082015260400190565b5f602082840312156118ed575f80fd5b81516103cb816116e0565b5f60208284031215611908575f80fd5b5051919050565b6001600160601b039290921682526001600160c01b031916602082015260400190565b6001600160c01b03199290921682526001600160601b0316602082015260400190565b80518015158114611794575f80fd5b5f60208284031215611974575f80fd5b6103cb82611955565b5f808585111561198b575f80fd5b83861115611997575f80fd5b5050820193919092039150565b80356001600160e01b031981169060048410156119d5576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215611a42575f80fd5b611a4b83611955565b9150602083015163ffffffff81168114611873575f80fdfef3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00a2646970667358221220cdd589caef41c03a7aa4ae371c2fc2cb2b1d2aaa9d6c8f1fe8a59f934ad809ee64736f6c634300081a0033",
574
585
  "linkReferences": {
586
+ "contracts/instance/base/ObjectSetHelperLib.sol": {
587
+ "ObjectSetHelperLib": [
588
+ {
589
+ "length": 20,
590
+ "start": 1038
591
+ },
592
+ {
593
+ "length": 20,
594
+ "start": 1385
595
+ },
596
+ {
597
+ "length": 20,
598
+ "start": 3394
599
+ }
600
+ ]
601
+ },
575
602
  "contracts/type/Key32.sol": {
576
603
  "Key32Lib": [
577
604
  {
578
605
  "length": 20,
579
- "start": 799
606
+ "start": 810
580
607
  }
581
608
  ]
582
609
  },
@@ -584,43 +611,43 @@
584
611
  "LibKey32Set": [
585
612
  {
586
613
  "length": 20,
587
- "start": 4523
614
+ "start": 4082
588
615
  },
589
616
  {
590
617
  "length": 20,
591
- "start": 4924
618
+ "start": 4483
592
619
  },
593
620
  {
594
621
  "length": 20,
595
- "start": 5048
622
+ "start": 4607
596
623
  },
597
624
  {
598
625
  "length": 20,
599
- "start": 5128
626
+ "start": 4687
600
627
  },
601
628
  {
602
629
  "length": 20,
603
- "start": 5208
630
+ "start": 4767
604
631
  },
605
632
  {
606
633
  "length": 20,
607
- "start": 5435
634
+ "start": 4994
608
635
  },
609
636
  {
610
637
  "length": 20,
611
- "start": 5581
638
+ "start": 5140
612
639
  },
613
640
  {
614
641
  "length": 20,
615
- "start": 5681
642
+ "start": 5240
616
643
  },
617
644
  {
618
645
  "length": 20,
619
- "start": 5781
646
+ "start": 5340
620
647
  },
621
648
  {
622
649
  "length": 20,
623
- "start": 5915
650
+ "start": 5474
624
651
  }
625
652
  ]
626
653
  },
@@ -628,7 +655,7 @@
628
655
  "NftIdLib": [
629
656
  {
630
657
  "length": 20,
631
- "start": 3983
658
+ "start": 3542
632
659
  }
633
660
  ]
634
661
  },
@@ -636,19 +663,19 @@
636
663
  "LibNftIdSet": [
637
664
  {
638
665
  "length": 20,
639
- "start": 2622
666
+ "start": 2262
640
667
  },
641
668
  {
642
669
  "length": 20,
643
- "start": 2989
670
+ "start": 2629
644
671
  },
645
672
  {
646
673
  "length": 20,
647
- "start": 3374
674
+ "start": 3014
648
675
  },
649
676
  {
650
677
  "length": 20,
651
- "start": 4340
678
+ "start": 3899
652
679
  }
653
680
  ]
654
681
  },
@@ -656,45 +683,61 @@
656
683
  "RiskIdLib": [
657
684
  {
658
685
  "length": 20,
659
- "start": 742
686
+ "start": 753
660
687
  },
661
688
  {
662
689
  "length": 20,
663
- "start": 1247
690
+ "start": 1177
664
691
  },
665
692
  {
666
693
  "length": 20,
667
- "start": 1675
694
+ "start": 1524
668
695
  },
669
696
  {
670
697
  "length": 20,
671
- "start": 2798
698
+ "start": 2438
672
699
  },
673
700
  {
674
701
  "length": 20,
675
- "start": 3181
702
+ "start": 2821
676
703
  },
677
704
  {
678
705
  "length": 20,
679
- "start": 3571
706
+ "start": 3211
680
707
  },
681
708
  {
682
709
  "length": 20,
683
- "start": 4128
710
+ "start": 3687
684
711
  },
685
712
  {
686
713
  "length": 20,
687
- "start": 4436
714
+ "start": 3995
688
715
  }
689
716
  ]
690
717
  }
691
718
  },
692
719
  "deployedLinkReferences": {
720
+ "contracts/instance/base/ObjectSetHelperLib.sol": {
721
+ "ObjectSetHelperLib": [
722
+ {
723
+ "length": 20,
724
+ "start": 1010
725
+ },
726
+ {
727
+ "length": 20,
728
+ "start": 1357
729
+ },
730
+ {
731
+ "length": 20,
732
+ "start": 3366
733
+ }
734
+ ]
735
+ },
693
736
  "contracts/type/Key32.sol": {
694
737
  "Key32Lib": [
695
738
  {
696
739
  "length": 20,
697
- "start": 771
740
+ "start": 782
698
741
  }
699
742
  ]
700
743
  },
@@ -702,43 +745,43 @@
702
745
  "LibKey32Set": [
703
746
  {
704
747
  "length": 20,
705
- "start": 4495
748
+ "start": 4054
706
749
  },
707
750
  {
708
751
  "length": 20,
709
- "start": 4896
752
+ "start": 4455
710
753
  },
711
754
  {
712
755
  "length": 20,
713
- "start": 5020
756
+ "start": 4579
714
757
  },
715
758
  {
716
759
  "length": 20,
717
- "start": 5100
760
+ "start": 4659
718
761
  },
719
762
  {
720
763
  "length": 20,
721
- "start": 5180
764
+ "start": 4739
722
765
  },
723
766
  {
724
767
  "length": 20,
725
- "start": 5407
768
+ "start": 4966
726
769
  },
727
770
  {
728
771
  "length": 20,
729
- "start": 5553
772
+ "start": 5112
730
773
  },
731
774
  {
732
775
  "length": 20,
733
- "start": 5653
776
+ "start": 5212
734
777
  },
735
778
  {
736
779
  "length": 20,
737
- "start": 5753
780
+ "start": 5312
738
781
  },
739
782
  {
740
783
  "length": 20,
741
- "start": 5887
784
+ "start": 5446
742
785
  }
743
786
  ]
744
787
  },
@@ -746,7 +789,7 @@
746
789
  "NftIdLib": [
747
790
  {
748
791
  "length": 20,
749
- "start": 3955
792
+ "start": 3514
750
793
  }
751
794
  ]
752
795
  },
@@ -754,19 +797,19 @@
754
797
  "LibNftIdSet": [
755
798
  {
756
799
  "length": 20,
757
- "start": 2594
800
+ "start": 2234
758
801
  },
759
802
  {
760
803
  "length": 20,
761
- "start": 2961
804
+ "start": 2601
762
805
  },
763
806
  {
764
807
  "length": 20,
765
- "start": 3346
808
+ "start": 2986
766
809
  },
767
810
  {
768
811
  "length": 20,
769
- "start": 4312
812
+ "start": 3871
770
813
  }
771
814
  ]
772
815
  },
@@ -774,35 +817,35 @@
774
817
  "RiskIdLib": [
775
818
  {
776
819
  "length": 20,
777
- "start": 714
820
+ "start": 725
778
821
  },
779
822
  {
780
823
  "length": 20,
781
- "start": 1219
824
+ "start": 1149
782
825
  },
783
826
  {
784
827
  "length": 20,
785
- "start": 1647
828
+ "start": 1496
786
829
  },
787
830
  {
788
831
  "length": 20,
789
- "start": 2770
832
+ "start": 2410
790
833
  },
791
834
  {
792
835
  "length": 20,
793
- "start": 3153
836
+ "start": 2793
794
837
  },
795
838
  {
796
839
  "length": 20,
797
- "start": 3543
840
+ "start": 3183
798
841
  },
799
842
  {
800
843
  "length": 20,
801
- "start": 4100
844
+ "start": 3659
802
845
  },
803
846
  {
804
847
  "length": 20,
805
- "start": 4408
848
+ "start": 3967
806
849
  }
807
850
  ]
808
851
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/1155d3f43f30a0aaf4f94a5dc9c13a9e.json"
3
+ "buildInfo": "../../../../build-info/a9e9328fd7dfdd3161d8873632c40ffe.json"
4
4
  }
@@ -311,8 +311,8 @@
311
311
  "type": "function"
312
312
  }
313
313
  ],
314
- "bytecode": "0x6080604052348015600e575f80fd5b506101c08061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630232ca491461004e578063228e42ec146100965780635eede174146100c15780638eb9000d14610132575b5f80fd5b61007961005c36600461015d565b6001600160601b039081165f908152600260205260409020541690565b6040516001600160601b0390911681526020015b60405180910390f35b6100796100a436600461015d565b6001600160601b039081165f908152602081905260409020541690565b6101086100cf36600461015d565b6001600160601b039081165f90815260208181526040808320546001835281842054600290935292205491831693908316929190911690565b604080516001600160601b039485168152928416602084015292169181019190915260600161008d565b61007961014036600461015d565b6001600160601b039081165f908152600160205260409020541690565b5f6020828403121561016d575f80fd5b81356001600160601b0381168114610183575f80fd5b939250505056fea2646970667358221220a7981ffb856ca8f50a538a9b425a2f2405e34022f1a919408d374733e65d487b64736f6c634300081a0033",
315
- "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630232ca491461004e578063228e42ec146100965780635eede174146100c15780638eb9000d14610132575b5f80fd5b61007961005c36600461015d565b6001600160601b039081165f908152600260205260409020541690565b6040516001600160601b0390911681526020015b60405180910390f35b6100796100a436600461015d565b6001600160601b039081165f908152602081905260409020541690565b6101086100cf36600461015d565b6001600160601b039081165f90815260208181526040808320546001835281842054600290935292205491831693908316929190911690565b604080516001600160601b039485168152928416602084015292169181019190915260600161008d565b61007961014036600461015d565b6001600160601b039081165f908152600160205260409020541690565b5f6020828403121561016d575f80fd5b81356001600160601b0381168114610183575f80fd5b939250505056fea2646970667358221220a7981ffb856ca8f50a538a9b425a2f2405e34022f1a919408d374733e65d487b64736f6c634300081a0033",
314
+ "bytecode": "0x6080604052348015600e575f80fd5b506101c08061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630232ca491461004e578063228e42ec146100965780635eede174146100c15780638eb9000d14610132575b5f80fd5b61007961005c36600461015d565b6001600160601b039081165f908152600260205260409020541690565b6040516001600160601b0390911681526020015b60405180910390f35b6100796100a436600461015d565b6001600160601b039081165f908152602081905260409020541690565b6101086100cf36600461015d565b6001600160601b039081165f90815260208181526040808320546001835281842054600290935292205491831693908316929190911690565b604080516001600160601b039485168152928416602084015292169181019190915260600161008d565b61007961014036600461015d565b6001600160601b039081165f908152600160205260409020541690565b5f6020828403121561016d575f80fd5b81356001600160601b0381168114610183575f80fd5b939250505056fea264697066735822122003c3a93d274554abffac1716384eed8478f6b86802cd71f3fa2e13f504484f0e64736f6c634300081a0033",
315
+ "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630232ca491461004e578063228e42ec146100965780635eede174146100c15780638eb9000d14610132575b5f80fd5b61007961005c36600461015d565b6001600160601b039081165f908152600260205260409020541690565b6040516001600160601b0390911681526020015b60405180910390f35b6100796100a436600461015d565b6001600160601b039081165f908152602081905260409020541690565b6101086100cf36600461015d565b6001600160601b039081165f90815260208181526040808320546001835281842054600290935292205491831693908316929190911690565b604080516001600160601b039485168152928416602084015292169181019190915260600161008d565b61007961014036600461015d565b6001600160601b039081165f908152600160205260409020541690565b5f6020828403121561016d575f80fd5b81356001600160601b0381168114610183575f80fd5b939250505056fea264697066735822122003c3a93d274554abffac1716384eed8478f6b86802cd71f3fa2e13f504484f0e64736f6c634300081a0033",
316
316
  "linkReferences": {},
317
317
  "deployedLinkReferences": {}
318
318
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/1155d3f43f30a0aaf4f94a5dc9c13a9e.json"
3
+ "buildInfo": "../../../../build-info/a9e9328fd7dfdd3161d8873632c40ffe.json"
4
4
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/1155d3f43f30a0aaf4f94a5dc9c13a9e.json"
3
+ "buildInfo": "../../../../build-info/a9e9328fd7dfdd3161d8873632c40ffe.json"
4
4
  }
@@ -3,8 +3,8 @@
3
3
  "contractName": "ObjectCounter",
4
4
  "sourceName": "contracts/instance/base/ObjectCounter.sol",
5
5
  "abi": [],
6
- "bytecode": "0x60806040525f80553480156011575f80fd5b50603e80601d5f395ff3fe60806040525f80fdfea2646970667358221220de255493d7161dd2bbf37033c7910293c80b53cb57b7afd57906e1f7d0d69f0164736f6c634300081a0033",
7
- "deployedBytecode": "0x60806040525f80fdfea2646970667358221220de255493d7161dd2bbf37033c7910293c80b53cb57b7afd57906e1f7d0d69f0164736f6c634300081a0033",
6
+ "bytecode": "0x60806040525f80553480156011575f80fd5b50603e80601d5f395ff3fe60806040525f80fdfea26469706673582212209f381cef682f14351fafaa22cad336c81c9bb1e419293cca4e8e1fde1ad1453d64736f6c634300081a0033",
7
+ "deployedBytecode": "0x60806040525f80fdfea26469706673582212209f381cef682f14351fafaa22cad336c81c9bb1e419293cca4e8e1fde1ad1453d64736f6c634300081a0033",
8
8
  "linkReferences": {},
9
9
  "deployedLinkReferences": {}
10
10
  }
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/1155d3f43f30a0aaf4f94a5dc9c13a9e.json"
3
+ "buildInfo": "../../../../build-info/a9e9328fd7dfdd3161d8873632c40ffe.json"
4
4
  }
@@ -190,8 +190,8 @@
190
190
  "type": "function"
191
191
  }
192
192
  ],
193
- "bytecode": "0x6080604052348015600e575f80fd5b506104128061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630d3581811461004e57806354f1fa811461008a578063bf1db3f91461009f578063e9e96c70146100c2575b5f80fd5b61007361005c3660046102fa565b60ff9081165f908152602081905260409020541690565b60405160ff90911681526020015b60405180910390f35b61009d61009836600461031c565b6100ff565b005b6100b26100ad3660046102fa565b61025d565b6040519015158152602001610081565b6100b26100d0366004610375565b60ff9283165f908152600160209081526040808320948616835293815283822092851682529190915220541690565b60ff8381165f908152602081905260409081902054905163037c8cb160e51b81529116600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af4158015610161573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018591906103bd565b156101b35760405163ea01ac1f60e01b815230600482015260ff841660248201526044015b60405180910390fd5b60ff808516908316146101f45760405163bae587e160e01b815230600482015260ff80851660248301528086166044830152831660648201526084016101aa565b60ff8084165f908152600160209081526040808320888516845282528083208585168452909152902054166102575760405163f33b49a360e01b815230600482015260ff80851660248301528086166044830152821660648201526084016101aa565b50505050565b60ff8181165f9081526020819052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af41580156102bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e391906103bd565b92915050565b60ff811681146102f7575f80fd5b50565b5f6020828403121561030a575f80fd5b8135610315816102e9565b9392505050565b5f805f806080858703121561032f575f80fd5b843561033a816102e9565b9350602085013561034a816102e9565b9250604085013561035a816102e9565b9150606085013561036a816102e9565b939692955090935050565b5f805f60608486031215610387575f80fd5b8335610392816102e9565b925060208401356103a2816102e9565b915060408401356103b2816102e9565b809150509250925092565b5f602082840312156103cd575f80fd5b81518015158114610315575f80fdfea264697066735822122072135c941b3b07e3cd27b692f326226dbd5c141036cb5a8dad5da12ac318d60e64736f6c634300081a0033",
194
- "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630d3581811461004e57806354f1fa811461008a578063bf1db3f91461009f578063e9e96c70146100c2575b5f80fd5b61007361005c3660046102fa565b60ff9081165f908152602081905260409020541690565b60405160ff90911681526020015b60405180910390f35b61009d61009836600461031c565b6100ff565b005b6100b26100ad3660046102fa565b61025d565b6040519015158152602001610081565b6100b26100d0366004610375565b60ff9283165f908152600160209081526040808320948616835293815283822092851682529190915220541690565b60ff8381165f908152602081905260409081902054905163037c8cb160e51b81529116600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af4158015610161573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018591906103bd565b156101b35760405163ea01ac1f60e01b815230600482015260ff841660248201526044015b60405180910390fd5b60ff808516908316146101f45760405163bae587e160e01b815230600482015260ff80851660248301528086166044830152831660648201526084016101aa565b60ff8084165f908152600160209081526040808320888516845282528083208585168452909152902054166102575760405163f33b49a360e01b815230600482015260ff80851660248301528086166044830152821660648201526084016101aa565b50505050565b60ff8181165f9081526020819052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af41580156102bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e391906103bd565b92915050565b60ff811681146102f7575f80fd5b50565b5f6020828403121561030a575f80fd5b8135610315816102e9565b9392505050565b5f805f806080858703121561032f575f80fd5b843561033a816102e9565b9350602085013561034a816102e9565b9250604085013561035a816102e9565b9150606085013561036a816102e9565b939692955090935050565b5f805f60608486031215610387575f80fd5b8335610392816102e9565b925060208401356103a2816102e9565b915060408401356103b2816102e9565b809150509250925092565b5f602082840312156103cd575f80fd5b81518015158114610315575f80fdfea264697066735822122072135c941b3b07e3cd27b692f326226dbd5c141036cb5a8dad5da12ac318d60e64736f6c634300081a0033",
193
+ "bytecode": "0x6080604052348015600e575f80fd5b506104128061001c5f395ff3fe608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630d3581811461004e57806354f1fa811461008a578063bf1db3f91461009f578063e9e96c70146100c2575b5f80fd5b61007361005c3660046102fa565b60ff9081165f908152602081905260409020541690565b60405160ff90911681526020015b60405180910390f35b61009d61009836600461031c565b6100ff565b005b6100b26100ad3660046102fa565b61025d565b6040519015158152602001610081565b6100b26100d0366004610375565b60ff9283165f908152600160209081526040808320948616835293815283822092851682529190915220541690565b60ff8381165f908152602081905260409081902054905163037c8cb160e51b81529116600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af4158015610161573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018591906103bd565b156101b35760405163ea01ac1f60e01b815230600482015260ff841660248201526044015b60405180910390fd5b60ff808516908316146101f45760405163bae587e160e01b815230600482015260ff80851660248301528086166044830152831660648201526084016101aa565b60ff8084165f908152600160209081526040808320888516845282528083208585168452909152902054166102575760405163f33b49a360e01b815230600482015260ff80851660248301528086166044830152821660648201526084016101aa565b50505050565b60ff8181165f9081526020819052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af41580156102bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e391906103bd565b92915050565b60ff811681146102f7575f80fd5b50565b5f6020828403121561030a575f80fd5b8135610315816102e9565b9392505050565b5f805f806080858703121561032f575f80fd5b843561033a816102e9565b9350602085013561034a816102e9565b9250604085013561035a816102e9565b9150606085013561036a816102e9565b939692955090935050565b5f805f60608486031215610387575f80fd5b8335610392816102e9565b925060208401356103a2816102e9565b915060408401356103b2816102e9565b809150509250925092565b5f602082840312156103cd575f80fd5b81518015158114610315575f80fdfea26469706673582212200bab9558188be5d9ade8ddeec03fad623a240b3a3478c1cbf126b02aabac208b64736f6c634300081a0033",
194
+ "deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061004a575f3560e01c80630d3581811461004e57806354f1fa811461008a578063bf1db3f91461009f578063e9e96c70146100c2575b5f80fd5b61007361005c3660046102fa565b60ff9081165f908152602081905260409020541690565b60405160ff90911681526020015b60405180910390f35b61009d61009836600461031c565b6100ff565b005b6100b26100ad3660046102fa565b61025d565b6040519015158152602001610081565b6100b26100d0366004610375565b60ff9283165f908152600160209081526040808320948616835293815283822092851682529190915220541690565b60ff8381165f908152602081905260409081902054905163037c8cb160e51b81529116600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af4158015610161573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061018591906103bd565b156101b35760405163ea01ac1f60e01b815230600482015260ff841660248201526044015b60405180910390fd5b60ff808516908316146101f45760405163bae587e160e01b815230600482015260ff80851660248301528086166044830152831660648201526084016101aa565b60ff8084165f908152600160209081526040808320888516845282528083208585168452909152902054166102575760405163f33b49a360e01b815230600482015260ff80851660248301528086166044830152821660648201526084016101aa565b50505050565b60ff8181165f9081526020819052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af41580156102bf573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102e391906103bd565b92915050565b60ff811681146102f7575f80fd5b50565b5f6020828403121561030a575f80fd5b8135610315816102e9565b9392505050565b5f805f806080858703121561032f575f80fd5b843561033a816102e9565b9350602085013561034a816102e9565b9250604085013561035a816102e9565b9150606085013561036a816102e9565b939692955090935050565b5f805f60608486031215610387575f80fd5b8335610392816102e9565b925060208401356103a2816102e9565b915060408401356103b2816102e9565b809150509250925092565b5f602082840312156103cd575f80fd5b81518015158114610315575f80fdfea26469706673582212200bab9558188be5d9ade8ddeec03fad623a240b3a3478c1cbf126b02aabac208b64736f6c634300081a0033",
195
195
  "linkReferences": {
196
196
  "contracts/type/StateId.sol": {
197
197
  "StateIdLib": [
@@ -1,4 +1,4 @@
1
1
  {
2
2
  "_format": "hh-sol-dbg-1",
3
- "buildInfo": "../../../../build-info/1155d3f43f30a0aaf4f94a5dc9c13a9e.json"
3
+ "buildInfo": "../../../../build-info/a9e9328fd7dfdd3161d8873632c40ffe.json"
4
4
  }