@etherisc/gif-next 0.0.2-f12cf4d-104 → 0.0.2-f13d67f-541
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +86 -312
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingService.sol/AccountingService.json +1075 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/accounting/AccountingServiceManager.sol/AccountingServiceManager.json +810 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.dbg.json +4 -0
- package/artifacts/contracts/accounting/IAccountingService.sol/IAccountingService.json +843 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +729 -287
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdminLib.sol/AccessAdminLib.json +2008 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +1 -1
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +202 -5
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +438 -35
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +560 -220
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +191 -21
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +256 -16
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +1 -1
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +426 -27
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +128 -218
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +1 -1
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +427 -53
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +58 -137
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +555 -217
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +170 -82
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +37 -116
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +401 -78
- package/artifacts/contracts/examples/fire/DamageLevel.sol/DamageLevelLib.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePool.sol/FirePool.json +183 -138
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FirePoolAuthorization.sol/FirePoolAuthorization.json +401 -59
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProduct.sol/FireProduct.json +324 -260
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/examples/fire/FireProductAuthorization.sol/FireProductAuthorization.json +426 -52
- package/artifacts/contracts/examples/fire/FireUSD.sol/FireUSD.dbg.json +1 -1
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightLib.sol/FlightLib.json +408 -0
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightOracle.sol/FlightOracle.json +1198 -0
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightOracleAuthorization.sol/FlightOracleAuthorization.json +849 -0
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightPool.sol/FlightPool.json +1466 -0
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightPoolAuthorization.sol/FlightPoolAuthorization.json +844 -0
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightProduct.sol/FlightProduct.json +2185 -0
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightProductAuthorization.sol/FlightProductAuthorization.json +844 -0
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/FlightUSD.sol/FlightUSD.json +376 -0
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.dbg.json +4 -0
- package/artifacts/contracts/examples/flight/originalV1.sol/FlightDelayChainlink.json +901 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +214 -215
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol/SimpleDistributionAuthorization.json +844 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +94 -110
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +196 -165
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePoolAuthorization.sol/SimplePoolAuthorization.json +844 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +1 -1
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +600 -306
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProductAuthorization.sol/SimpleProductAuthorization.json +844 -0
- package/artifacts/contracts/instance/BaseStore.sol/BaseStore.dbg.json +4 -0
- package/artifacts/contracts/{shared/IKeyValueStore.sol/IKeyValueStore.json → instance/BaseStore.sol/BaseStore.json} +51 -229
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +193 -45
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.dbg.json +4 -0
- package/artifacts/contracts/instance/IBaseStore.sol/IBaseStore.json +304 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +551 -50
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +415 -15
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +606 -112
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1121 -374
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +379 -68
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1136 -561
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +419 -82
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +100 -54
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +1283 -1912
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.dbg.json +4 -0
- package/artifacts/contracts/instance/ProductStore.sol/ProductStore.json +3427 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.dbg.json +4 -0
- package/artifacts/contracts/instance/RiskSet.sol/RiskSet.json +866 -0
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +8 -8
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +2 -2
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +2 -2
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +16 -5
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSetHelperLib.sol/ObjectSetHelperLib.json +168 -0
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/mock/Dip.sol/Dip.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +77 -91
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +1 -1
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +425 -54
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +41 -55
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +56 -3
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +1 -1
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +61 -75
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +141 -81
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +134 -50
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +102 -124
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +1 -1
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +401 -59
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +298 -329
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +133 -97
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +200 -131
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +59 -73
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +333 -169
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +72 -86
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolLib.sol/PoolLib.json +522 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +565 -367
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +169 -69
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +313 -64
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +123 -47
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +193 -192
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +1 -1
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +426 -52
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +292 -195
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +142 -94
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +268 -10
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +181 -19
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +160 -55
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +77 -3
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +168 -167
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +1 -1
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.json +258 -22
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +283 -195
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceLib.sol/PolicyServiceLib.json +783 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +153 -81
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +135 -126
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +118 -70
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +187 -186
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +1 -1
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +326 -91
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +123 -47
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +2 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +54 -19
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +56 -3
- package/artifacts/contracts/registry/IRelease.sol/IRelease.dbg.json +4 -0
- package/artifacts/contracts/registry/IRelease.sol/IRelease.json +24 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +92 -57
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +845 -489
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAuthorization.sol/RegistryAuthorization.json +1137 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +71 -35
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +99 -43
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseAdmin.sol/ReleaseAdmin.json +2271 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +2 -2
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +398 -64
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +1 -1
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +459 -26
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +120 -60
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +60 -60
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +269 -561
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +134 -86
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ContractLib.sol/ContractLib.json +525 -4
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/IInstanceAdminHelper.json +24 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITargetHelper.json +30 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.dbg.json +4 -0
- package/artifacts/contracts/shared/ContractLib.sol/ITokenRegistryHelper.json +40 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +41 -41
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +155 -382
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +41 -55
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +19 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +139 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +56 -3
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +2 -2
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +60 -74
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +1 -1
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +2 -2
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +21 -2
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +137 -62
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +51 -11
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +63 -162
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandlerBase.json +118 -29
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +32 -32
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +1 -1
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1457 -145
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +214 -110
- package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.dbg.json +4 -0
- package/artifacts/contracts/staking/ITargetLimitHandler.sol/ITargetLimitHandler.json +50 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +1 -1
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1634 -275
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLib.sol/StakingLib.json +470 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +149 -62
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +294 -177
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +253 -174
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +102 -50
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +1632 -818
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetHandler.sol/TargetHandler.json +309 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +1 -1
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +160 -88
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +11 -11
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +64 -19
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/ChainId.sol/ChainIdLib.json +193 -0
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +2 -2
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +94 -38
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.dbg.json +4 -0
- package/artifacts/contracts/type/Key32Set.sol/LibKey32Set.json +33 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +23 -4
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.json +49 -50
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +2 -2
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +23 -4
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +2 -2
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.dbg.json +4 -0
- package/artifacts/contracts/type/RequestIdSet.sol/LibRequestIdSet.json +33 -0
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +69 -7
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +42 -157
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +64 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +21 -2
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +1 -1
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +2 -2
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +1 -1
- package/artifacts/contracts/type/String.sol/StrLib.json +69 -2
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +37 -5
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +61 -37
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -21
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +101 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.json +10 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +81 -27
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +15 -2
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.json +10 -0
- package/contracts/accounting/AccountingService.sol +274 -0
- package/contracts/accounting/AccountingServiceManager.sol +38 -0
- package/contracts/accounting/IAccountingService.sol +47 -0
- package/contracts/authorization/AccessAdmin.sol +389 -306
- package/contracts/authorization/AccessAdminLib.sol +678 -0
- package/contracts/authorization/AccessManagerCloneable.sol +128 -4
- package/contracts/authorization/Authorization.sol +161 -260
- package/contracts/authorization/IAccess.sol +29 -12
- package/contracts/authorization/IAccessAdmin.sol +89 -84
- package/contracts/authorization/IAuthorization.sol +9 -43
- package/contracts/authorization/IServiceAuthorization.sol +55 -17
- package/contracts/authorization/ServiceAuthorization.sol +228 -34
- package/contracts/distribution/BasicDistribution.sol +19 -18
- package/contracts/distribution/BasicDistributionAuthorization.sol +30 -10
- package/contracts/distribution/Distribution.sol +45 -85
- package/contracts/distribution/DistributionService.sol +192 -99
- package/contracts/distribution/DistributionServiceManager.sol +1 -1
- package/contracts/distribution/IDistributionComponent.sol +3 -10
- package/contracts/distribution/IDistributionService.sol +38 -24
- package/contracts/examples/fire/FirePool.sol +6 -6
- package/contracts/examples/fire/FirePoolAuthorization.sol +2 -1
- package/contracts/examples/fire/FireProduct.sol +15 -13
- package/contracts/examples/fire/FireProductAuthorization.sol +2 -1
- package/contracts/examples/flight/FlightLib.sol +279 -0
- package/contracts/examples/flight/FlightOracle.sol +168 -0
- package/contracts/examples/flight/FlightOracleAuthorization.sol +34 -0
- package/contracts/examples/flight/FlightPool.sol +89 -0
- package/contracts/examples/flight/FlightPoolAuthorization.sol +37 -0
- package/contracts/examples/flight/FlightProduct.sol +470 -0
- package/contracts/examples/flight/FlightProductAuthorization.sol +44 -0
- package/contracts/examples/flight/FlightUSD.sol +26 -0
- package/contracts/examples/flight/originalV1.sol +396 -0
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +34 -11
- package/contracts/examples/unpermissioned/SimpleDistributionAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +4 -8
- package/contracts/examples/unpermissioned/SimplePool.sol +7 -13
- package/contracts/examples/unpermissioned/SimplePoolAuthorization.sol +28 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +119 -27
- package/contracts/examples/unpermissioned/SimpleProductAuthorization.sol +28 -0
- package/contracts/instance/BaseStore.sol +93 -0
- package/contracts/instance/BundleSet.sol +42 -38
- package/contracts/instance/IBaseStore.sol +37 -0
- package/contracts/instance/IInstance.sol +109 -19
- package/contracts/instance/IInstanceService.sol +59 -11
- package/contracts/instance/Instance.sol +184 -65
- package/contracts/instance/InstanceAdmin.sol +221 -191
- package/contracts/instance/InstanceAuthorizationV3.sol +153 -72
- package/contracts/instance/InstanceReader.sol +447 -314
- package/contracts/instance/InstanceService.sol +305 -205
- package/contracts/instance/InstanceServiceManager.sol +1 -1
- package/contracts/instance/InstanceStore.sol +152 -116
- package/contracts/instance/ProductStore.sol +290 -0
- package/contracts/instance/RiskSet.sol +126 -0
- package/contracts/instance/TargetNames.sol +10 -0
- package/contracts/instance/base/BalanceStore.sol +4 -6
- package/contracts/instance/base/ObjectCounter.sol +1 -2
- package/contracts/instance/base/ObjectLifecycle.sol +6 -8
- package/contracts/instance/base/ObjectSet.sol +31 -33
- package/contracts/instance/base/ObjectSetHelperLib.sol +30 -0
- package/contracts/instance/module/IBundle.sol +6 -5
- package/contracts/instance/module/IComponents.sol +18 -8
- package/contracts/instance/module/IDistribution.sol +21 -8
- package/contracts/instance/module/IPolicy.sol +28 -8
- package/contracts/instance/module/IRisk.sol +5 -0
- package/contracts/oracle/BasicOracle.sol +3 -6
- package/contracts/oracle/BasicOracleAuthorization.sol +15 -8
- package/contracts/oracle/IOracle.sol +9 -4
- package/contracts/oracle/IOracleService.sol +12 -12
- package/contracts/oracle/Oracle.sol +5 -9
- package/contracts/oracle/OracleService.sol +98 -80
- package/contracts/oracle/OracleServiceManager.sol +1 -1
- package/contracts/pool/BasicPool.sol +4 -18
- package/contracts/pool/BasicPoolAuthorization.sol +29 -16
- package/contracts/pool/BundleService.sol +66 -165
- package/contracts/pool/BundleServiceManager.sol +1 -1
- package/contracts/pool/IBundleService.sol +27 -51
- package/contracts/pool/IPoolService.sol +56 -58
- package/contracts/pool/Pool.sol +15 -29
- package/contracts/pool/PoolLib.sol +341 -0
- package/contracts/pool/PoolService.sol +221 -227
- package/contracts/pool/PoolServiceManager.sol +1 -1
- package/contracts/product/ApplicationService.sol +93 -25
- package/contracts/product/ApplicationServiceManager.sol +1 -1
- package/contracts/product/BasicProduct.sol +4 -5
- package/contracts/product/BasicProductAuthorization.sol +33 -11
- package/contracts/product/ClaimService.sol +221 -209
- package/contracts/product/ClaimServiceManager.sol +1 -1
- package/contracts/product/IApplicationService.sol +28 -3
- package/contracts/product/IClaimService.sol +18 -5
- package/contracts/product/IPolicyService.sol +31 -11
- package/contracts/product/IPricingService.sol +1 -0
- package/contracts/product/IProductComponent.sol +4 -1
- package/contracts/product/IRiskService.sol +25 -10
- package/contracts/product/PolicyService.sol +252 -302
- package/contracts/product/PolicyServiceLib.sol +139 -0
- package/contracts/product/PolicyServiceManager.sol +1 -1
- package/contracts/product/PricingService.sol +52 -46
- package/contracts/product/PricingServiceManager.sol +3 -3
- package/contracts/product/Product.sol +95 -36
- package/contracts/product/RiskService.sol +130 -37
- package/contracts/product/RiskServiceManager.sol +1 -1
- package/contracts/registry/ChainNft.sol +4 -2
- package/contracts/registry/IRegistry.sol +23 -24
- package/contracts/registry/IRelease.sol +29 -0
- package/contracts/registry/Registry.sol +22 -11
- package/contracts/registry/RegistryAdmin.sol +94 -383
- package/contracts/registry/RegistryAuthorization.sol +337 -0
- package/contracts/registry/RegistryService.sol +4 -4
- package/contracts/registry/RegistryServiceManager.sol +1 -1
- package/contracts/registry/ReleaseAdmin.sol +199 -0
- package/contracts/registry/ReleaseLifecycle.sol +2 -0
- package/contracts/registry/ReleaseRegistry.sol +157 -117
- package/contracts/registry/ServiceAuthorizationV3.sol +193 -54
- package/contracts/registry/TokenRegistry.sol +61 -59
- package/contracts/shared/Component.sol +36 -55
- package/contracts/shared/ComponentService.sol +350 -438
- package/contracts/shared/ComponentServiceManager.sol +1 -1
- package/contracts/shared/ContractLib.sol +260 -2
- package/contracts/shared/IComponent.sol +1 -10
- package/contracts/shared/IComponentService.sol +22 -41
- package/contracts/shared/IInstanceLinkedComponent.sol +0 -11
- package/contracts/shared/INftOwnable.sol +2 -0
- package/contracts/shared/IRegisterable.sol +15 -5
- package/contracts/shared/IService.sol +3 -5
- package/contracts/shared/InitializableERC165.sol +9 -1
- package/contracts/shared/InstanceLinkedComponent.sol +62 -35
- package/contracts/shared/NftOwnable.sol +8 -6
- package/contracts/shared/PolicyHolder.sol +4 -3
- package/contracts/shared/Registerable.sol +42 -19
- package/contracts/shared/RegistryLinked.sol +1 -1
- package/contracts/shared/Service.sol +13 -30
- package/contracts/shared/TokenHandler.sol +45 -100
- package/contracts/staking/IStaking.sol +265 -72
- package/contracts/staking/IStakingService.sol +45 -75
- package/contracts/staking/ITargetLimitHandler.sol +17 -0
- package/contracts/staking/Staking.sol +502 -210
- package/contracts/staking/{StakeManagerLib.sol → StakingLib.sol} +55 -84
- package/contracts/staking/StakingManager.sol +4 -3
- package/contracts/staking/StakingReader.sol +58 -77
- package/contracts/staking/StakingService.sol +62 -194
- package/contracts/staking/StakingServiceManager.sol +6 -4
- package/contracts/staking/StakingStore.sol +1093 -330
- package/contracts/staking/TargetHandler.sol +132 -0
- package/contracts/staking/TargetManagerLib.sol +69 -46
- package/contracts/type/Amount.sol +4 -0
- package/contracts/type/Blocknumber.sol +17 -22
- package/contracts/type/ChainId.sol +101 -0
- package/contracts/type/Fee.sol +8 -8
- package/contracts/type/Key32.sol +2 -2
- package/contracts/type/Key32Set.sol +62 -0
- package/contracts/type/NftId.sol +6 -0
- package/contracts/type/ObjectType.sol +70 -68
- package/contracts/type/Referral.sol +6 -0
- package/contracts/type/RequestIdSet.sol +62 -0
- package/contracts/type/RiskId.sol +26 -8
- package/contracts/type/RoleId.sol +63 -45
- package/contracts/type/Seconds.sol +23 -0
- package/contracts/type/Selector.sol +5 -0
- package/contracts/type/String.sol +42 -0
- package/contracts/type/Timestamp.sol +14 -8
- package/contracts/type/UFixed.sol +35 -127
- package/contracts/type/Version.sol +54 -5
- package/contracts/upgradeability/IVersionable.sol +3 -0
- package/contracts/upgradeability/ProxyManager.sol +27 -13
- package/contracts/upgradeability/UpgradableProxyWithAdmin.sol +12 -2
- package/contracts/upgradeability/Versionable.sol +6 -3
- package/package.json +2 -2
- package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.dbg.json +0 -4
- package/artifacts/contracts/authorization/ReleaseAccessManager.sol/ReleaseAccessManager.json +0 -1196
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +0 -4
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +0 -129
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +0 -4
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +0 -474
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +0 -538
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +0 -4
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +0 -440
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +0 -4
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +0 -205
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +0 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +0 -16
- package/contracts/authorization/ReleaseAccessManager.sol +0 -38
- package/contracts/instance/module/IAccess.sol +0 -46
- package/contracts/shared/ComponentVerifyingService.sol +0 -128
- package/contracts/shared/IKeyValueStore.sol +0 -54
- package/contracts/shared/KeyValueStore.sol +0 -131
- package/contracts/staking/StakingLifecycle.sol +0 -23
@@ -60,129 +60,108 @@
|
|
60
60
|
{
|
61
61
|
"inputs": [
|
62
62
|
{
|
63
|
-
"internalType": "
|
64
|
-
"name": "
|
65
|
-
"type": "
|
66
|
-
},
|
67
|
-
{
|
68
|
-
"internalType": "ObjectType",
|
69
|
-
"name": "objectType",
|
70
|
-
"type": "uint8"
|
71
|
-
},
|
72
|
-
{
|
73
|
-
"internalType": "StateId",
|
74
|
-
"name": "actual",
|
75
|
-
"type": "uint8"
|
63
|
+
"internalType": "Seconds",
|
64
|
+
"name": "minLockingPeriod",
|
65
|
+
"type": "uint40"
|
76
66
|
},
|
77
67
|
{
|
78
|
-
"internalType": "
|
79
|
-
"name": "
|
80
|
-
"type": "
|
68
|
+
"internalType": "Seconds",
|
69
|
+
"name": "maxLockingPeriod",
|
70
|
+
"type": "uint40"
|
81
71
|
}
|
82
72
|
],
|
83
|
-
"name": "
|
73
|
+
"name": "ErrorStakingLockingPeriodsInvalid",
|
84
74
|
"type": "error"
|
85
75
|
},
|
86
76
|
{
|
87
77
|
"inputs": [
|
88
78
|
{
|
89
|
-
"internalType": "
|
90
|
-
"name": "
|
91
|
-
"type": "
|
92
|
-
},
|
93
|
-
{
|
94
|
-
"internalType": "ObjectType",
|
95
|
-
"name": "objectType",
|
96
|
-
"type": "uint8"
|
97
|
-
},
|
98
|
-
{
|
99
|
-
"internalType": "StateId",
|
100
|
-
"name": "fromStateId",
|
101
|
-
"type": "uint8"
|
79
|
+
"internalType": "UFixed",
|
80
|
+
"name": "minRewardRate",
|
81
|
+
"type": "uint160"
|
102
82
|
},
|
103
83
|
{
|
104
|
-
"internalType": "
|
105
|
-
"name": "
|
106
|
-
"type": "
|
84
|
+
"internalType": "UFixed",
|
85
|
+
"name": "maxRewardRate",
|
86
|
+
"type": "uint160"
|
107
87
|
}
|
108
88
|
],
|
109
|
-
"name": "
|
89
|
+
"name": "ErrorStakingRewardRatesInvalid",
|
110
90
|
"type": "error"
|
111
91
|
},
|
112
92
|
{
|
113
93
|
"inputs": [
|
114
94
|
{
|
115
|
-
"internalType": "
|
116
|
-
"name": "
|
117
|
-
"type": "
|
95
|
+
"internalType": "NftId",
|
96
|
+
"name": "stakeNftId",
|
97
|
+
"type": "uint96"
|
118
98
|
},
|
119
99
|
{
|
120
|
-
"internalType": "
|
121
|
-
"name": "
|
122
|
-
"type": "
|
100
|
+
"internalType": "Timestamp",
|
101
|
+
"name": "lockedUntil",
|
102
|
+
"type": "uint40"
|
123
103
|
}
|
124
104
|
],
|
125
|
-
"name": "
|
105
|
+
"name": "ErrorStakingStakeLocked",
|
126
106
|
"type": "error"
|
127
107
|
},
|
128
108
|
{
|
129
109
|
"inputs": [
|
130
110
|
{
|
131
|
-
"internalType": "
|
132
|
-
"name": "
|
133
|
-
"type": "
|
134
|
-
}
|
135
|
-
],
|
136
|
-
"name": "ErrorKeyValueStoreNoLifecycle",
|
137
|
-
"type": "error"
|
138
|
-
},
|
139
|
-
{
|
140
|
-
"inputs": [
|
111
|
+
"internalType": "Amount",
|
112
|
+
"name": "minStakingAmount",
|
113
|
+
"type": "uint96"
|
114
|
+
},
|
141
115
|
{
|
142
|
-
"internalType": "
|
143
|
-
"name": "
|
144
|
-
"type": "
|
116
|
+
"internalType": "Amount",
|
117
|
+
"name": "maxStakingAmount",
|
118
|
+
"type": "uint96"
|
145
119
|
}
|
146
120
|
],
|
147
|
-
"name": "
|
121
|
+
"name": "ErrorStakingStakingAmountsInvalid",
|
148
122
|
"type": "error"
|
149
123
|
},
|
150
124
|
{
|
151
125
|
"inputs": [
|
152
126
|
{
|
153
|
-
"internalType": "
|
154
|
-
"name": "
|
155
|
-
"type": "
|
127
|
+
"internalType": "NftId",
|
128
|
+
"name": "targetNftId",
|
129
|
+
"type": "uint96"
|
156
130
|
}
|
157
131
|
],
|
158
|
-
"name": "
|
132
|
+
"name": "ErrorStakingStoreLimitNotInitialized",
|
159
133
|
"type": "error"
|
160
134
|
},
|
161
135
|
{
|
162
136
|
"inputs": [
|
163
137
|
{
|
164
|
-
"internalType": "
|
165
|
-
"name": "
|
166
|
-
"type": "
|
138
|
+
"internalType": "NftId",
|
139
|
+
"name": "targetNftId",
|
140
|
+
"type": "uint96"
|
167
141
|
}
|
168
142
|
],
|
169
|
-
"name": "
|
143
|
+
"name": "ErrorStakingStoreNotTarget",
|
170
144
|
"type": "error"
|
171
145
|
},
|
172
146
|
{
|
173
147
|
"inputs": [
|
174
148
|
{
|
175
|
-
"internalType": "
|
176
|
-
"name": "
|
177
|
-
"type": "
|
149
|
+
"internalType": "NftId",
|
150
|
+
"name": "targetNftId",
|
151
|
+
"type": "uint96"
|
178
152
|
},
|
179
153
|
{
|
180
|
-
"internalType": "
|
181
|
-
"name": "
|
182
|
-
"type": "
|
154
|
+
"internalType": "Amount",
|
155
|
+
"name": "reserveAmount",
|
156
|
+
"type": "uint96"
|
157
|
+
},
|
158
|
+
{
|
159
|
+
"internalType": "Amount",
|
160
|
+
"name": "claimedAmount",
|
161
|
+
"type": "uint96"
|
183
162
|
}
|
184
163
|
],
|
185
|
-
"name": "
|
164
|
+
"name": "ErrorStakingStoreRewardReservesInsufficient",
|
186
165
|
"type": "error"
|
187
166
|
},
|
188
167
|
{
|
@@ -193,29 +172,29 @@
|
|
193
172
|
"type": "uint96"
|
194
173
|
}
|
195
174
|
],
|
196
|
-
"name": "
|
175
|
+
"name": "ErrorStakingStoreStakeBalanceAlreadyInitialized",
|
197
176
|
"type": "error"
|
198
177
|
},
|
199
178
|
{
|
200
179
|
"inputs": [
|
201
180
|
{
|
202
181
|
"internalType": "NftId",
|
203
|
-
"name": "
|
182
|
+
"name": "nftI",
|
204
183
|
"type": "uint96"
|
205
184
|
}
|
206
185
|
],
|
207
|
-
"name": "
|
186
|
+
"name": "ErrorStakingStoreStakeBalanceNotInitialized",
|
208
187
|
"type": "error"
|
209
188
|
},
|
210
189
|
{
|
211
190
|
"inputs": [
|
212
191
|
{
|
213
192
|
"internalType": "NftId",
|
214
|
-
"name": "
|
193
|
+
"name": "nftId",
|
215
194
|
"type": "uint96"
|
216
195
|
}
|
217
196
|
],
|
218
|
-
"name": "
|
197
|
+
"name": "ErrorStakingStoreStakeNotInitialized",
|
219
198
|
"type": "error"
|
220
199
|
},
|
221
200
|
{
|
@@ -227,125 +206,175 @@
|
|
227
206
|
},
|
228
207
|
{
|
229
208
|
"internalType": "Amount",
|
230
|
-
"name": "
|
209
|
+
"name": "stakeLimitAmount",
|
231
210
|
"type": "uint96"
|
232
211
|
},
|
233
212
|
{
|
234
213
|
"internalType": "Amount",
|
235
|
-
"name": "
|
214
|
+
"name": "newIStaking",
|
236
215
|
"type": "uint96"
|
237
216
|
}
|
238
217
|
],
|
239
|
-
"name": "
|
218
|
+
"name": "ErrorStakingStoreStakesExceedingTargetMaxAmount",
|
240
219
|
"type": "error"
|
241
220
|
},
|
242
221
|
{
|
243
222
|
"inputs": [
|
244
223
|
{
|
245
224
|
"internalType": "NftId",
|
246
|
-
"name": "
|
225
|
+
"name": "targetNftId",
|
247
226
|
"type": "uint96"
|
248
227
|
}
|
249
228
|
],
|
250
|
-
"name": "
|
229
|
+
"name": "ErrorStakingStoreTargetNotInitialized",
|
251
230
|
"type": "error"
|
252
231
|
},
|
253
232
|
{
|
254
|
-
"inputs": [
|
255
|
-
|
233
|
+
"inputs": [
|
234
|
+
{
|
235
|
+
"internalType": "ChainId",
|
236
|
+
"name": "chainId",
|
237
|
+
"type": "uint96"
|
238
|
+
},
|
239
|
+
{
|
240
|
+
"internalType": "address",
|
241
|
+
"name": "token",
|
242
|
+
"type": "address"
|
243
|
+
}
|
244
|
+
],
|
245
|
+
"name": "ErrorStakingStoreTokenAlreadyAdded",
|
256
246
|
"type": "error"
|
257
247
|
},
|
258
248
|
{
|
259
|
-
"anonymous": false,
|
260
249
|
"inputs": [
|
261
250
|
{
|
262
|
-
"
|
251
|
+
"internalType": "ChainId",
|
252
|
+
"name": "chainId",
|
253
|
+
"type": "uint96"
|
254
|
+
},
|
255
|
+
{
|
263
256
|
"internalType": "address",
|
264
|
-
"name": "
|
257
|
+
"name": "token",
|
265
258
|
"type": "address"
|
266
259
|
}
|
267
260
|
],
|
268
|
-
"name": "
|
269
|
-
"type": "
|
261
|
+
"name": "ErrorStakingStoreTokenNotRegistered",
|
262
|
+
"type": "error"
|
270
263
|
},
|
271
264
|
{
|
272
|
-
"anonymous": false,
|
273
265
|
"inputs": [
|
274
266
|
{
|
275
|
-
"
|
276
|
-
"
|
277
|
-
"
|
278
|
-
"type": "uint8"
|
267
|
+
"internalType": "ChainId",
|
268
|
+
"name": "chainId",
|
269
|
+
"type": "uint96"
|
279
270
|
},
|
280
271
|
{
|
281
|
-
"
|
282
|
-
"
|
283
|
-
"
|
284
|
-
|
285
|
-
|
272
|
+
"internalType": "address",
|
273
|
+
"name": "token",
|
274
|
+
"type": "address"
|
275
|
+
}
|
276
|
+
],
|
277
|
+
"name": "ErrorStakingStoreTokenUnknown",
|
278
|
+
"type": "error"
|
279
|
+
},
|
280
|
+
{
|
281
|
+
"inputs": [
|
286
282
|
{
|
287
|
-
"
|
288
|
-
"
|
289
|
-
"
|
290
|
-
"type": "uint8"
|
283
|
+
"internalType": "NftId",
|
284
|
+
"name": "nftId",
|
285
|
+
"type": "uint96"
|
291
286
|
},
|
292
287
|
{
|
293
|
-
"indexed": false,
|
294
288
|
"internalType": "address",
|
295
|
-
"name": "
|
289
|
+
"name": "token",
|
296
290
|
"type": "address"
|
291
|
+
}
|
292
|
+
],
|
293
|
+
"name": "ErrorStakingStoreTvlBalanceAlreadyInitialized",
|
294
|
+
"type": "error"
|
295
|
+
},
|
296
|
+
{
|
297
|
+
"inputs": [
|
298
|
+
{
|
299
|
+
"internalType": "NftId",
|
300
|
+
"name": "nftId",
|
301
|
+
"type": "uint96"
|
297
302
|
},
|
298
303
|
{
|
299
|
-
"indexed": false,
|
300
304
|
"internalType": "address",
|
301
|
-
"name": "
|
305
|
+
"name": "token",
|
302
306
|
"type": "address"
|
303
307
|
}
|
304
308
|
],
|
305
|
-
"name": "
|
306
|
-
"type": "
|
309
|
+
"name": "ErrorStakingStoreTvlBalanceNotInitialized",
|
310
|
+
"type": "error"
|
307
311
|
},
|
308
312
|
{
|
309
|
-
"anonymous": false,
|
310
313
|
"inputs": [
|
311
314
|
{
|
312
|
-
"indexed": false,
|
313
315
|
"internalType": "ObjectType",
|
314
|
-
"name": "
|
316
|
+
"name": "targetType",
|
315
317
|
"type": "uint8"
|
316
|
-
}
|
318
|
+
}
|
319
|
+
],
|
320
|
+
"name": "ErrorStakingSupportTypeInvalid",
|
321
|
+
"type": "error"
|
322
|
+
},
|
323
|
+
{
|
324
|
+
"inputs": [
|
317
325
|
{
|
318
|
-
"
|
319
|
-
"
|
320
|
-
"
|
321
|
-
"type": "bytes31"
|
326
|
+
"internalType": "NftId",
|
327
|
+
"name": "targetNftId",
|
328
|
+
"type": "uint96"
|
322
329
|
},
|
323
330
|
{
|
324
|
-
"
|
325
|
-
"
|
326
|
-
"
|
327
|
-
"type": "uint8"
|
331
|
+
"internalType": "Amount",
|
332
|
+
"name": "stakeLimitAmount",
|
333
|
+
"type": "uint96"
|
328
334
|
},
|
329
335
|
{
|
330
|
-
"
|
331
|
-
"
|
332
|
-
"
|
333
|
-
|
334
|
-
|
336
|
+
"internalType": "Amount",
|
337
|
+
"name": "stakedAmount",
|
338
|
+
"type": "uint96"
|
339
|
+
}
|
340
|
+
],
|
341
|
+
"name": "ErrorStakingTargetMaxStakedAmountExceeded",
|
342
|
+
"type": "error"
|
343
|
+
},
|
344
|
+
{
|
345
|
+
"inputs": [],
|
346
|
+
"name": "InvalidInitialization",
|
347
|
+
"type": "error"
|
348
|
+
},
|
349
|
+
{
|
350
|
+
"inputs": [],
|
351
|
+
"name": "NotInitializing",
|
352
|
+
"type": "error"
|
353
|
+
},
|
354
|
+
{
|
355
|
+
"anonymous": false,
|
356
|
+
"inputs": [
|
335
357
|
{
|
336
358
|
"indexed": false,
|
337
359
|
"internalType": "address",
|
338
|
-
"name": "
|
360
|
+
"name": "authority",
|
339
361
|
"type": "address"
|
340
|
-
}
|
362
|
+
}
|
363
|
+
],
|
364
|
+
"name": "AuthorityUpdated",
|
365
|
+
"type": "event"
|
366
|
+
},
|
367
|
+
{
|
368
|
+
"anonymous": false,
|
369
|
+
"inputs": [
|
341
370
|
{
|
342
371
|
"indexed": false,
|
343
|
-
"internalType": "
|
344
|
-
"name": "
|
345
|
-
"type": "
|
372
|
+
"internalType": "uint64",
|
373
|
+
"name": "version",
|
374
|
+
"type": "uint64"
|
346
375
|
}
|
347
376
|
],
|
348
|
-
"name": "
|
377
|
+
"name": "Initialized",
|
349
378
|
"type": "event"
|
350
379
|
},
|
351
380
|
{
|
@@ -360,23 +389,23 @@
|
|
360
389
|
{
|
361
390
|
"indexed": false,
|
362
391
|
"internalType": "Amount",
|
363
|
-
"name": "
|
392
|
+
"name": "marginAmount",
|
364
393
|
"type": "uint96"
|
365
394
|
},
|
366
395
|
{
|
367
396
|
"indexed": false,
|
368
397
|
"internalType": "Amount",
|
369
|
-
"name": "
|
398
|
+
"name": "hardLimitAmount",
|
370
399
|
"type": "uint96"
|
371
400
|
},
|
372
401
|
{
|
373
402
|
"indexed": false,
|
374
403
|
"internalType": "Blocknumber",
|
375
|
-
"name": "
|
376
|
-
"type": "
|
404
|
+
"name": "lastUpdateIn",
|
405
|
+
"type": "uint40"
|
377
406
|
}
|
378
407
|
],
|
379
|
-
"name": "
|
408
|
+
"name": "LogStakingLimitsSet",
|
380
409
|
"type": "event"
|
381
410
|
},
|
382
411
|
{
|
@@ -394,6 +423,12 @@
|
|
394
423
|
"name": "dipAmount",
|
395
424
|
"type": "uint96"
|
396
425
|
},
|
426
|
+
{
|
427
|
+
"indexed": false,
|
428
|
+
"internalType": "address",
|
429
|
+
"name": "targetOwner",
|
430
|
+
"type": "address"
|
431
|
+
},
|
397
432
|
{
|
398
433
|
"indexed": false,
|
399
434
|
"internalType": "Amount",
|
@@ -403,11 +438,11 @@
|
|
403
438
|
{
|
404
439
|
"indexed": false,
|
405
440
|
"internalType": "Blocknumber",
|
406
|
-
"name": "
|
407
|
-
"type": "
|
441
|
+
"name": "lastUpdateIn",
|
442
|
+
"type": "uint40"
|
408
443
|
}
|
409
444
|
],
|
410
|
-
"name": "
|
445
|
+
"name": "LogStakingRewardReservesRefilled",
|
411
446
|
"type": "event"
|
412
447
|
},
|
413
448
|
{
|
@@ -416,29 +451,29 @@
|
|
416
451
|
{
|
417
452
|
"indexed": false,
|
418
453
|
"internalType": "NftId",
|
419
|
-
"name": "
|
454
|
+
"name": "targetNftId",
|
420
455
|
"type": "uint96"
|
421
456
|
},
|
422
457
|
{
|
423
458
|
"indexed": false,
|
424
459
|
"internalType": "Amount",
|
425
|
-
"name": "
|
460
|
+
"name": "dipAmount",
|
426
461
|
"type": "uint96"
|
427
462
|
},
|
428
463
|
{
|
429
464
|
"indexed": false,
|
430
465
|
"internalType": "Amount",
|
431
|
-
"name": "
|
466
|
+
"name": "reserveBalance",
|
432
467
|
"type": "uint96"
|
433
468
|
},
|
434
469
|
{
|
435
470
|
"indexed": false,
|
436
471
|
"internalType": "Blocknumber",
|
437
|
-
"name": "
|
438
|
-
"type": "
|
472
|
+
"name": "lastUpdateIn",
|
473
|
+
"type": "uint40"
|
439
474
|
}
|
440
475
|
],
|
441
|
-
"name": "
|
476
|
+
"name": "LogStakingRewardReservesSpent",
|
442
477
|
"type": "event"
|
443
478
|
},
|
444
479
|
{
|
@@ -447,29 +482,35 @@
|
|
447
482
|
{
|
448
483
|
"indexed": false,
|
449
484
|
"internalType": "NftId",
|
450
|
-
"name": "
|
485
|
+
"name": "targetNftId",
|
451
486
|
"type": "uint96"
|
452
487
|
},
|
453
488
|
{
|
454
489
|
"indexed": false,
|
455
490
|
"internalType": "Amount",
|
456
|
-
"name": "
|
491
|
+
"name": "dipAmount",
|
457
492
|
"type": "uint96"
|
458
493
|
},
|
494
|
+
{
|
495
|
+
"indexed": false,
|
496
|
+
"internalType": "address",
|
497
|
+
"name": "targetOwner",
|
498
|
+
"type": "address"
|
499
|
+
},
|
459
500
|
{
|
460
501
|
"indexed": false,
|
461
502
|
"internalType": "Amount",
|
462
|
-
"name": "
|
503
|
+
"name": "reserveBalance",
|
463
504
|
"type": "uint96"
|
464
505
|
},
|
465
506
|
{
|
466
507
|
"indexed": false,
|
467
508
|
"internalType": "Blocknumber",
|
468
|
-
"name": "
|
469
|
-
"type": "
|
509
|
+
"name": "lastUpdateIn",
|
510
|
+
"type": "uint40"
|
470
511
|
}
|
471
512
|
],
|
472
|
-
"name": "
|
513
|
+
"name": "LogStakingRewardReservesWithdrawn",
|
473
514
|
"type": "event"
|
474
515
|
},
|
475
516
|
{
|
@@ -478,41 +519,41 @@
|
|
478
519
|
{
|
479
520
|
"indexed": false,
|
480
521
|
"internalType": "NftId",
|
481
|
-
"name": "
|
522
|
+
"name": "stakeNftId",
|
482
523
|
"type": "uint96"
|
483
524
|
},
|
484
525
|
{
|
485
526
|
"indexed": false,
|
486
527
|
"internalType": "Amount",
|
487
|
-
"name": "
|
528
|
+
"name": "claimedAmount",
|
488
529
|
"type": "uint96"
|
489
530
|
},
|
490
531
|
{
|
491
532
|
"indexed": false,
|
492
533
|
"internalType": "Amount",
|
493
|
-
"name": "
|
534
|
+
"name": "stakeBalance",
|
494
535
|
"type": "uint96"
|
495
536
|
},
|
496
537
|
{
|
497
538
|
"indexed": false,
|
498
539
|
"internalType": "Amount",
|
499
|
-
"name": "
|
540
|
+
"name": "rewardBalance",
|
500
541
|
"type": "uint96"
|
501
542
|
},
|
502
543
|
{
|
503
544
|
"indexed": false,
|
504
|
-
"internalType": "
|
505
|
-
"name": "
|
506
|
-
"type": "
|
545
|
+
"internalType": "Timestamp",
|
546
|
+
"name": "lockedUntil",
|
547
|
+
"type": "uint40"
|
507
548
|
},
|
508
549
|
{
|
509
550
|
"indexed": false,
|
510
551
|
"internalType": "Blocknumber",
|
511
|
-
"name": "
|
512
|
-
"type": "
|
552
|
+
"name": "lastUpdateIn",
|
553
|
+
"type": "uint40"
|
513
554
|
}
|
514
555
|
],
|
515
|
-
"name": "
|
556
|
+
"name": "LogStakingRewardsClaimed",
|
516
557
|
"type": "event"
|
517
558
|
},
|
518
559
|
{
|
@@ -521,29 +562,41 @@
|
|
521
562
|
{
|
522
563
|
"indexed": false,
|
523
564
|
"internalType": "NftId",
|
524
|
-
"name": "
|
565
|
+
"name": "stakeNftId",
|
525
566
|
"type": "uint96"
|
526
567
|
},
|
527
568
|
{
|
528
569
|
"indexed": false,
|
529
570
|
"internalType": "Amount",
|
530
|
-
"name": "
|
571
|
+
"name": "restakedAmount",
|
531
572
|
"type": "uint96"
|
532
573
|
},
|
533
574
|
{
|
534
575
|
"indexed": false,
|
535
576
|
"internalType": "Amount",
|
536
|
-
"name": "
|
577
|
+
"name": "stakeBalance",
|
537
578
|
"type": "uint96"
|
538
579
|
},
|
539
580
|
{
|
540
581
|
"indexed": false,
|
541
|
-
"internalType": "
|
542
|
-
"name": "
|
543
|
-
"type": "
|
544
|
-
}
|
545
|
-
|
546
|
-
|
582
|
+
"internalType": "Amount",
|
583
|
+
"name": "rewardBalance",
|
584
|
+
"type": "uint96"
|
585
|
+
},
|
586
|
+
{
|
587
|
+
"indexed": false,
|
588
|
+
"internalType": "Timestamp",
|
589
|
+
"name": "lockedUntil",
|
590
|
+
"type": "uint40"
|
591
|
+
},
|
592
|
+
{
|
593
|
+
"indexed": false,
|
594
|
+
"internalType": "Blocknumber",
|
595
|
+
"name": "lastUpdateIn",
|
596
|
+
"type": "uint40"
|
597
|
+
}
|
598
|
+
],
|
599
|
+
"name": "LogStakingRewardsRestaked",
|
547
600
|
"type": "event"
|
548
601
|
},
|
549
602
|
{
|
@@ -552,29 +605,35 @@
|
|
552
605
|
{
|
553
606
|
"indexed": false,
|
554
607
|
"internalType": "NftId",
|
555
|
-
"name": "
|
608
|
+
"name": "stakeNftId",
|
556
609
|
"type": "uint96"
|
557
610
|
},
|
558
611
|
{
|
559
612
|
"indexed": false,
|
560
|
-
"internalType": "
|
561
|
-
"name": "
|
613
|
+
"internalType": "NftId",
|
614
|
+
"name": "targetNftId",
|
562
615
|
"type": "uint96"
|
563
616
|
},
|
564
617
|
{
|
565
618
|
"indexed": false,
|
566
619
|
"internalType": "Amount",
|
567
|
-
"name": "
|
620
|
+
"name": "stakeAmount",
|
568
621
|
"type": "uint96"
|
569
622
|
},
|
570
623
|
{
|
571
624
|
"indexed": false,
|
572
|
-
"internalType": "
|
573
|
-
"name": "
|
574
|
-
"type": "
|
625
|
+
"internalType": "Timestamp",
|
626
|
+
"name": "lockedUntil",
|
627
|
+
"type": "uint40"
|
628
|
+
},
|
629
|
+
{
|
630
|
+
"indexed": false,
|
631
|
+
"internalType": "address",
|
632
|
+
"name": "stakeOwner",
|
633
|
+
"type": "address"
|
575
634
|
}
|
576
635
|
],
|
577
|
-
"name": "
|
636
|
+
"name": "LogStakingStakeCreated",
|
578
637
|
"type": "event"
|
579
638
|
},
|
580
639
|
{
|
@@ -583,35 +642,41 @@
|
|
583
642
|
{
|
584
643
|
"indexed": false,
|
585
644
|
"internalType": "NftId",
|
586
|
-
"name": "
|
645
|
+
"name": "stakeNftId",
|
587
646
|
"type": "uint96"
|
588
647
|
},
|
589
648
|
{
|
590
649
|
"indexed": false,
|
591
|
-
"internalType": "
|
592
|
-
"name": "
|
593
|
-
"type": "
|
650
|
+
"internalType": "Amount",
|
651
|
+
"name": "rewardIncrementAmount",
|
652
|
+
"type": "uint96"
|
594
653
|
},
|
595
654
|
{
|
596
655
|
"indexed": false,
|
597
656
|
"internalType": "Amount",
|
598
|
-
"name": "
|
657
|
+
"name": "stakeBalance",
|
599
658
|
"type": "uint96"
|
600
659
|
},
|
601
660
|
{
|
602
661
|
"indexed": false,
|
603
662
|
"internalType": "Amount",
|
604
|
-
"name": "
|
663
|
+
"name": "rewardBalance",
|
605
664
|
"type": "uint96"
|
606
665
|
},
|
666
|
+
{
|
667
|
+
"indexed": false,
|
668
|
+
"internalType": "Timestamp",
|
669
|
+
"name": "lockedUntil",
|
670
|
+
"type": "uint40"
|
671
|
+
},
|
607
672
|
{
|
608
673
|
"indexed": false,
|
609
674
|
"internalType": "Blocknumber",
|
610
|
-
"name": "
|
611
|
-
"type": "
|
675
|
+
"name": "lastUpdateIn",
|
676
|
+
"type": "uint40"
|
612
677
|
}
|
613
678
|
],
|
614
|
-
"name": "
|
679
|
+
"name": "LogStakingStakeRewardsUpdated",
|
615
680
|
"type": "event"
|
616
681
|
},
|
617
682
|
{
|
@@ -620,35 +685,60 @@
|
|
620
685
|
{
|
621
686
|
"indexed": false,
|
622
687
|
"internalType": "NftId",
|
623
|
-
"name": "
|
688
|
+
"name": "stakeNftId",
|
624
689
|
"type": "uint96"
|
625
690
|
},
|
626
691
|
{
|
627
692
|
"indexed": false,
|
628
|
-
"internalType": "
|
629
|
-
"name": "
|
630
|
-
"type": "
|
693
|
+
"internalType": "Amount",
|
694
|
+
"name": "stakedAmount",
|
695
|
+
"type": "uint96"
|
631
696
|
},
|
632
697
|
{
|
633
698
|
"indexed": false,
|
634
699
|
"internalType": "Amount",
|
635
|
-
"name": "
|
700
|
+
"name": "stakeBalance",
|
636
701
|
"type": "uint96"
|
637
702
|
},
|
638
703
|
{
|
639
704
|
"indexed": false,
|
640
705
|
"internalType": "Amount",
|
641
|
-
"name": "
|
706
|
+
"name": "rewardBalance",
|
642
707
|
"type": "uint96"
|
643
708
|
},
|
709
|
+
{
|
710
|
+
"indexed": false,
|
711
|
+
"internalType": "Timestamp",
|
712
|
+
"name": "lockedUntil",
|
713
|
+
"type": "uint40"
|
714
|
+
},
|
644
715
|
{
|
645
716
|
"indexed": false,
|
646
717
|
"internalType": "Blocknumber",
|
647
|
-
"name": "
|
648
|
-
"type": "
|
718
|
+
"name": "lastUpdateIn",
|
719
|
+
"type": "uint40"
|
720
|
+
}
|
721
|
+
],
|
722
|
+
"name": "LogStakingStaked",
|
723
|
+
"type": "event"
|
724
|
+
},
|
725
|
+
{
|
726
|
+
"anonymous": false,
|
727
|
+
"inputs": [
|
728
|
+
{
|
729
|
+
"indexed": false,
|
730
|
+
"internalType": "address",
|
731
|
+
"name": "stakingReader",
|
732
|
+
"type": "address"
|
733
|
+
},
|
734
|
+
{
|
735
|
+
"indexed": false,
|
736
|
+
"internalType": "address",
|
737
|
+
"name": "oldStakingReader",
|
738
|
+
"type": "address"
|
649
739
|
}
|
650
740
|
],
|
651
|
-
"name": "
|
741
|
+
"name": "LogStakingStakingReaderSet",
|
652
742
|
"type": "event"
|
653
743
|
},
|
654
744
|
{
|
@@ -662,251 +752,459 @@
|
|
662
752
|
},
|
663
753
|
{
|
664
754
|
"indexed": false,
|
665
|
-
"internalType": "
|
666
|
-
"name": "
|
667
|
-
"type": "
|
755
|
+
"internalType": "bool",
|
756
|
+
"name": "isSupported",
|
757
|
+
"type": "bool"
|
668
758
|
},
|
669
759
|
{
|
670
760
|
"indexed": false,
|
671
|
-
"internalType": "
|
672
|
-
"name": "
|
673
|
-
"type": "
|
761
|
+
"internalType": "bool",
|
762
|
+
"name": "allowNewTargets",
|
763
|
+
"type": "bool"
|
674
764
|
},
|
675
765
|
{
|
676
766
|
"indexed": false,
|
677
|
-
"internalType": "
|
678
|
-
"name": "
|
679
|
-
"type": "
|
767
|
+
"internalType": "bool",
|
768
|
+
"name": "allowCrossChain",
|
769
|
+
"type": "bool"
|
680
770
|
},
|
681
771
|
{
|
682
772
|
"indexed": false,
|
683
|
-
"internalType": "
|
684
|
-
"name": "
|
685
|
-
"type": "
|
773
|
+
"internalType": "Amount",
|
774
|
+
"name": "minStakingAmount",
|
775
|
+
"type": "uint96"
|
686
776
|
},
|
687
777
|
{
|
688
778
|
"indexed": false,
|
689
|
-
"internalType": "
|
690
|
-
"name": "
|
691
|
-
"type": "
|
779
|
+
"internalType": "Amount",
|
780
|
+
"name": "maxStakingAmount",
|
781
|
+
"type": "uint96"
|
782
|
+
},
|
783
|
+
{
|
784
|
+
"indexed": false,
|
785
|
+
"internalType": "Seconds",
|
786
|
+
"name": "minLockingPeriod",
|
787
|
+
"type": "uint40"
|
788
|
+
},
|
789
|
+
{
|
790
|
+
"indexed": false,
|
791
|
+
"internalType": "Seconds",
|
792
|
+
"name": "maxLockingPeriod",
|
793
|
+
"type": "uint40"
|
794
|
+
},
|
795
|
+
{
|
796
|
+
"indexed": false,
|
797
|
+
"internalType": "UFixed",
|
798
|
+
"name": "minRewardRate",
|
799
|
+
"type": "uint160"
|
800
|
+
},
|
801
|
+
{
|
802
|
+
"indexed": false,
|
803
|
+
"internalType": "UFixed",
|
804
|
+
"name": "maxRewardRate",
|
805
|
+
"type": "uint160"
|
692
806
|
},
|
693
807
|
{
|
694
808
|
"indexed": false,
|
695
809
|
"internalType": "Blocknumber",
|
696
|
-
"name": "
|
697
|
-
"type": "
|
810
|
+
"name": "lastUpdateIn",
|
811
|
+
"type": "uint40"
|
698
812
|
}
|
699
813
|
],
|
700
|
-
"name": "
|
814
|
+
"name": "LogStakingSupportInfoSet",
|
701
815
|
"type": "event"
|
702
816
|
},
|
703
817
|
{
|
704
|
-
"
|
705
|
-
"name": "authority",
|
706
|
-
"outputs": [
|
707
|
-
{
|
708
|
-
"internalType": "address",
|
709
|
-
"name": "",
|
710
|
-
"type": "address"
|
711
|
-
}
|
712
|
-
],
|
713
|
-
"stateMutability": "view",
|
714
|
-
"type": "function"
|
715
|
-
},
|
716
|
-
{
|
818
|
+
"anonymous": false,
|
717
819
|
"inputs": [
|
718
820
|
{
|
719
|
-
"
|
720
|
-
"
|
721
|
-
"
|
821
|
+
"indexed": false,
|
822
|
+
"internalType": "NftId",
|
823
|
+
"name": "targetNftId",
|
824
|
+
"type": "uint96"
|
722
825
|
},
|
723
826
|
{
|
827
|
+
"indexed": false,
|
724
828
|
"internalType": "ObjectType",
|
725
829
|
"name": "objectType",
|
726
830
|
"type": "uint8"
|
727
831
|
},
|
728
832
|
{
|
729
|
-
"
|
730
|
-
"
|
731
|
-
"
|
833
|
+
"indexed": false,
|
834
|
+
"internalType": "Seconds",
|
835
|
+
"name": "lockingPeriod",
|
836
|
+
"type": "uint40"
|
732
837
|
},
|
733
838
|
{
|
734
|
-
"
|
735
|
-
"
|
736
|
-
"
|
839
|
+
"indexed": false,
|
840
|
+
"internalType": "UFixed",
|
841
|
+
"name": "rewardRate",
|
842
|
+
"type": "uint160"
|
737
843
|
}
|
738
844
|
],
|
739
|
-
"name": "
|
740
|
-
"
|
741
|
-
"stateMutability": "view",
|
742
|
-
"type": "function"
|
845
|
+
"name": "LogStakingTargetCreated",
|
846
|
+
"type": "event"
|
743
847
|
},
|
744
848
|
{
|
849
|
+
"anonymous": false,
|
745
850
|
"inputs": [
|
746
851
|
{
|
747
|
-
"
|
748
|
-
"
|
749
|
-
"
|
852
|
+
"indexed": false,
|
853
|
+
"internalType": "address",
|
854
|
+
"name": "targetManager",
|
855
|
+
"type": "address"
|
750
856
|
},
|
751
857
|
{
|
858
|
+
"indexed": false,
|
859
|
+
"internalType": "address",
|
860
|
+
"name": "oldTargetHandler",
|
861
|
+
"type": "address"
|
862
|
+
}
|
863
|
+
],
|
864
|
+
"name": "LogStakingTargetHandlerSet",
|
865
|
+
"type": "event"
|
866
|
+
},
|
867
|
+
{
|
868
|
+
"anonymous": false,
|
869
|
+
"inputs": [
|
870
|
+
{
|
871
|
+
"indexed": false,
|
752
872
|
"internalType": "NftId",
|
753
873
|
"name": "targetNftId",
|
754
874
|
"type": "uint96"
|
755
875
|
},
|
756
876
|
{
|
877
|
+
"indexed": false,
|
757
878
|
"internalType": "Amount",
|
758
|
-
"name": "
|
879
|
+
"name": "limitAmount",
|
759
880
|
"type": "uint96"
|
760
|
-
}
|
761
|
-
],
|
762
|
-
"name": "claimUpTo",
|
763
|
-
"outputs": [
|
881
|
+
},
|
764
882
|
{
|
883
|
+
"indexed": false,
|
765
884
|
"internalType": "Amount",
|
766
|
-
"name": "
|
885
|
+
"name": "hardLimitAmount",
|
767
886
|
"type": "uint96"
|
768
|
-
}
|
769
|
-
],
|
770
|
-
"stateMutability": "nonpayable",
|
771
|
-
"type": "function"
|
772
|
-
},
|
773
|
-
{
|
774
|
-
"inputs": [
|
887
|
+
},
|
775
888
|
{
|
776
|
-
"
|
777
|
-
"
|
889
|
+
"indexed": false,
|
890
|
+
"internalType": "Amount",
|
891
|
+
"name": "requiredStakeAmount",
|
778
892
|
"type": "uint96"
|
779
893
|
},
|
780
894
|
{
|
781
|
-
"
|
782
|
-
|
783
|
-
|
784
|
-
"name": "lockedUntil",
|
785
|
-
"type": "uint40"
|
786
|
-
}
|
787
|
-
],
|
788
|
-
"internalType": "struct IStaking.StakeInfo",
|
789
|
-
"name": "stakeInfo",
|
790
|
-
"type": "tuple"
|
791
|
-
}
|
792
|
-
],
|
793
|
-
"name": "create",
|
794
|
-
"outputs": [],
|
795
|
-
"stateMutability": "nonpayable",
|
796
|
-
"type": "function"
|
797
|
-
},
|
798
|
-
{
|
799
|
-
"inputs": [
|
800
|
-
{
|
801
|
-
"internalType": "NftId",
|
802
|
-
"name": "targetNftId",
|
895
|
+
"indexed": false,
|
896
|
+
"internalType": "Amount",
|
897
|
+
"name": "actualStakeAmount",
|
803
898
|
"type": "uint96"
|
804
899
|
},
|
805
900
|
{
|
806
|
-
"
|
807
|
-
|
808
|
-
|
809
|
-
|
810
|
-
"type": "uint8"
|
811
|
-
},
|
812
|
-
{
|
813
|
-
"internalType": "uint256",
|
814
|
-
"name": "chainId",
|
815
|
-
"type": "uint256"
|
816
|
-
},
|
817
|
-
{
|
818
|
-
"internalType": "Seconds",
|
819
|
-
"name": "lockingPeriod",
|
820
|
-
"type": "uint40"
|
821
|
-
},
|
822
|
-
{
|
823
|
-
"internalType": "UFixed",
|
824
|
-
"name": "rewardRate",
|
825
|
-
"type": "uint256"
|
826
|
-
}
|
827
|
-
],
|
828
|
-
"internalType": "struct IStaking.TargetInfo",
|
829
|
-
"name": "targetInfo",
|
830
|
-
"type": "tuple"
|
901
|
+
"indexed": false,
|
902
|
+
"internalType": "Blocknumber",
|
903
|
+
"name": "lastUpdateIn",
|
904
|
+
"type": "uint40"
|
831
905
|
}
|
832
906
|
],
|
833
|
-
"name": "
|
834
|
-
"
|
835
|
-
"stateMutability": "nonpayable",
|
836
|
-
"type": "function"
|
907
|
+
"name": "LogStakingTargetLimitUpdated",
|
908
|
+
"type": "event"
|
837
909
|
},
|
838
910
|
{
|
911
|
+
"anonymous": false,
|
839
912
|
"inputs": [
|
840
913
|
{
|
914
|
+
"indexed": false,
|
841
915
|
"internalType": "NftId",
|
842
916
|
"name": "targetNftId",
|
843
917
|
"type": "uint96"
|
844
918
|
},
|
845
919
|
{
|
920
|
+
"indexed": false,
|
846
921
|
"internalType": "Amount",
|
847
|
-
"name": "
|
922
|
+
"name": "marginAmount",
|
848
923
|
"type": "uint96"
|
849
|
-
}
|
850
|
-
],
|
851
|
-
"name": "decreaseReserves",
|
852
|
-
"outputs": [
|
924
|
+
},
|
853
925
|
{
|
926
|
+
"indexed": false,
|
854
927
|
"internalType": "Amount",
|
855
|
-
"name": "
|
928
|
+
"name": "hardLimitAmount",
|
856
929
|
"type": "uint96"
|
857
|
-
}
|
858
|
-
|
859
|
-
|
860
|
-
|
930
|
+
},
|
931
|
+
{
|
932
|
+
"indexed": false,
|
933
|
+
"internalType": "Blocknumber",
|
934
|
+
"name": "lastUpdateIn",
|
935
|
+
"type": "uint40"
|
936
|
+
}
|
937
|
+
],
|
938
|
+
"name": "LogStakingTargetLimitsUpdated",
|
939
|
+
"type": "event"
|
940
|
+
},
|
941
|
+
{
|
942
|
+
"anonymous": false,
|
943
|
+
"inputs": [
|
944
|
+
{
|
945
|
+
"indexed": false,
|
946
|
+
"internalType": "NftId",
|
947
|
+
"name": "targetNftId",
|
948
|
+
"type": "uint96"
|
949
|
+
},
|
950
|
+
{
|
951
|
+
"indexed": false,
|
952
|
+
"internalType": "Seconds",
|
953
|
+
"name": "oldLockingPeriod",
|
954
|
+
"type": "uint40"
|
955
|
+
},
|
956
|
+
{
|
957
|
+
"indexed": false,
|
958
|
+
"internalType": "Seconds",
|
959
|
+
"name": "lockingPeriod",
|
960
|
+
"type": "uint40"
|
961
|
+
},
|
962
|
+
{
|
963
|
+
"indexed": false,
|
964
|
+
"internalType": "Blocknumber",
|
965
|
+
"name": "lastUpdateIn",
|
966
|
+
"type": "uint40"
|
967
|
+
}
|
968
|
+
],
|
969
|
+
"name": "LogStakingTargetLockingPeriodSet",
|
970
|
+
"type": "event"
|
971
|
+
},
|
972
|
+
{
|
973
|
+
"anonymous": false,
|
974
|
+
"inputs": [
|
975
|
+
{
|
976
|
+
"indexed": false,
|
977
|
+
"internalType": "NftId",
|
978
|
+
"name": "targetNftId",
|
979
|
+
"type": "uint96"
|
980
|
+
},
|
981
|
+
{
|
982
|
+
"indexed": false,
|
983
|
+
"internalType": "Amount",
|
984
|
+
"name": "stakeLimitAmount",
|
985
|
+
"type": "uint96"
|
986
|
+
},
|
987
|
+
{
|
988
|
+
"indexed": false,
|
989
|
+
"internalType": "Blocknumber",
|
990
|
+
"name": "lastUpdateIn",
|
991
|
+
"type": "uint40"
|
992
|
+
}
|
993
|
+
],
|
994
|
+
"name": "LogStakingTargetMaxStakedAmountSet",
|
995
|
+
"type": "event"
|
861
996
|
},
|
862
997
|
{
|
998
|
+
"anonymous": false,
|
863
999
|
"inputs": [
|
864
1000
|
{
|
1001
|
+
"indexed": false,
|
865
1002
|
"internalType": "NftId",
|
866
1003
|
"name": "targetNftId",
|
867
1004
|
"type": "uint96"
|
868
1005
|
},
|
869
1006
|
{
|
1007
|
+
"indexed": false,
|
870
1008
|
"internalType": "UFixed",
|
871
|
-
"name": "
|
872
|
-
"type": "
|
1009
|
+
"name": "rewardRate",
|
1010
|
+
"type": "uint160"
|
1011
|
+
},
|
1012
|
+
{
|
1013
|
+
"indexed": false,
|
1014
|
+
"internalType": "UFixed",
|
1015
|
+
"name": "oldRewardRate",
|
1016
|
+
"type": "uint160"
|
1017
|
+
},
|
1018
|
+
{
|
1019
|
+
"indexed": false,
|
1020
|
+
"internalType": "Blocknumber",
|
1021
|
+
"name": "lastUpdateIn",
|
1022
|
+
"type": "uint40"
|
1023
|
+
}
|
1024
|
+
],
|
1025
|
+
"name": "LogStakingTargetRewardRateSet",
|
1026
|
+
"type": "event"
|
1027
|
+
},
|
1028
|
+
{
|
1029
|
+
"anonymous": false,
|
1030
|
+
"inputs": [
|
1031
|
+
{
|
1032
|
+
"indexed": false,
|
1033
|
+
"internalType": "ChainId",
|
1034
|
+
"name": "chainId",
|
1035
|
+
"type": "uint96"
|
1036
|
+
},
|
1037
|
+
{
|
1038
|
+
"indexed": false,
|
1039
|
+
"internalType": "address",
|
1040
|
+
"name": "token",
|
1041
|
+
"type": "address"
|
1042
|
+
}
|
1043
|
+
],
|
1044
|
+
"name": "LogStakingTokenAdded",
|
1045
|
+
"type": "event"
|
1046
|
+
},
|
1047
|
+
{
|
1048
|
+
"anonymous": false,
|
1049
|
+
"inputs": [
|
1050
|
+
{
|
1051
|
+
"indexed": false,
|
1052
|
+
"internalType": "NftId",
|
1053
|
+
"name": "targetNftId",
|
1054
|
+
"type": "uint96"
|
873
1055
|
},
|
874
1056
|
{
|
1057
|
+
"indexed": false,
|
875
1058
|
"internalType": "address",
|
876
1059
|
"name": "token",
|
877
1060
|
"type": "address"
|
878
1061
|
},
|
879
1062
|
{
|
1063
|
+
"indexed": false,
|
880
1064
|
"internalType": "Amount",
|
881
1065
|
"name": "amount",
|
882
1066
|
"type": "uint96"
|
1067
|
+
},
|
1068
|
+
{
|
1069
|
+
"indexed": false,
|
1070
|
+
"internalType": "Amount",
|
1071
|
+
"name": "newBalance",
|
1072
|
+
"type": "uint96"
|
1073
|
+
},
|
1074
|
+
{
|
1075
|
+
"indexed": false,
|
1076
|
+
"internalType": "Blocknumber",
|
1077
|
+
"name": "lastUpdateIn",
|
1078
|
+
"type": "uint40"
|
883
1079
|
}
|
884
1080
|
],
|
885
|
-
"name": "
|
886
|
-
"
|
1081
|
+
"name": "LogStakingTvlDecreased",
|
1082
|
+
"type": "event"
|
1083
|
+
},
|
1084
|
+
{
|
1085
|
+
"anonymous": false,
|
1086
|
+
"inputs": [
|
1087
|
+
{
|
1088
|
+
"indexed": false,
|
1089
|
+
"internalType": "NftId",
|
1090
|
+
"name": "targetNftId",
|
1091
|
+
"type": "uint96"
|
1092
|
+
},
|
1093
|
+
{
|
1094
|
+
"indexed": false,
|
1095
|
+
"internalType": "address",
|
1096
|
+
"name": "token",
|
1097
|
+
"type": "address"
|
1098
|
+
},
|
887
1099
|
{
|
1100
|
+
"indexed": false,
|
1101
|
+
"internalType": "Amount",
|
1102
|
+
"name": "amount",
|
1103
|
+
"type": "uint96"
|
1104
|
+
},
|
1105
|
+
{
|
1106
|
+
"indexed": false,
|
888
1107
|
"internalType": "Amount",
|
889
1108
|
"name": "newBalance",
|
890
1109
|
"type": "uint96"
|
1110
|
+
},
|
1111
|
+
{
|
1112
|
+
"indexed": false,
|
1113
|
+
"internalType": "Blocknumber",
|
1114
|
+
"name": "lastUpdateIn",
|
1115
|
+
"type": "uint40"
|
1116
|
+
}
|
1117
|
+
],
|
1118
|
+
"name": "LogStakingTvlIncreased",
|
1119
|
+
"type": "event"
|
1120
|
+
},
|
1121
|
+
{
|
1122
|
+
"anonymous": false,
|
1123
|
+
"inputs": [
|
1124
|
+
{
|
1125
|
+
"indexed": false,
|
1126
|
+
"internalType": "NftId",
|
1127
|
+
"name": "stakeNftId",
|
1128
|
+
"type": "uint96"
|
1129
|
+
},
|
1130
|
+
{
|
1131
|
+
"indexed": false,
|
1132
|
+
"internalType": "Amount",
|
1133
|
+
"name": "unstakedAmount",
|
1134
|
+
"type": "uint96"
|
1135
|
+
},
|
1136
|
+
{
|
1137
|
+
"indexed": false,
|
1138
|
+
"internalType": "Amount",
|
1139
|
+
"name": "stakeBalance",
|
1140
|
+
"type": "uint96"
|
1141
|
+
},
|
1142
|
+
{
|
1143
|
+
"indexed": false,
|
1144
|
+
"internalType": "Amount",
|
1145
|
+
"name": "rewardBalance",
|
1146
|
+
"type": "uint96"
|
1147
|
+
},
|
1148
|
+
{
|
1149
|
+
"indexed": false,
|
1150
|
+
"internalType": "Timestamp",
|
1151
|
+
"name": "lockedUntil",
|
1152
|
+
"type": "uint40"
|
1153
|
+
},
|
1154
|
+
{
|
1155
|
+
"indexed": false,
|
1156
|
+
"internalType": "Blocknumber",
|
1157
|
+
"name": "lastUpdateIn",
|
1158
|
+
"type": "uint40"
|
1159
|
+
}
|
1160
|
+
],
|
1161
|
+
"name": "LogStakingUnstaked",
|
1162
|
+
"type": "event"
|
1163
|
+
},
|
1164
|
+
{
|
1165
|
+
"inputs": [
|
1166
|
+
{
|
1167
|
+
"internalType": "NftId",
|
1168
|
+
"name": "targetNftId",
|
1169
|
+
"type": "uint96"
|
1170
|
+
},
|
1171
|
+
{
|
1172
|
+
"internalType": "address",
|
1173
|
+
"name": "token",
|
1174
|
+
"type": "address"
|
891
1175
|
}
|
892
1176
|
],
|
1177
|
+
"name": "addTargetToken",
|
1178
|
+
"outputs": [],
|
893
1179
|
"stateMutability": "nonpayable",
|
894
1180
|
"type": "function"
|
895
1181
|
},
|
896
1182
|
{
|
897
1183
|
"inputs": [
|
898
1184
|
{
|
899
|
-
"internalType": "
|
900
|
-
"name": "
|
901
|
-
"type": "
|
1185
|
+
"internalType": "ChainId",
|
1186
|
+
"name": "chainId",
|
1187
|
+
"type": "uint96"
|
1188
|
+
},
|
1189
|
+
{
|
1190
|
+
"internalType": "address",
|
1191
|
+
"name": "token",
|
1192
|
+
"type": "address"
|
902
1193
|
}
|
903
1194
|
],
|
904
|
-
"name": "
|
1195
|
+
"name": "addToken",
|
1196
|
+
"outputs": [],
|
1197
|
+
"stateMutability": "nonpayable",
|
1198
|
+
"type": "function"
|
1199
|
+
},
|
1200
|
+
{
|
1201
|
+
"inputs": [],
|
1202
|
+
"name": "authority",
|
905
1203
|
"outputs": [
|
906
1204
|
{
|
907
|
-
"internalType": "
|
1205
|
+
"internalType": "address",
|
908
1206
|
"name": "",
|
909
|
-
"type": "
|
1207
|
+
"type": "address"
|
910
1208
|
}
|
911
1209
|
],
|
912
1210
|
"stateMutability": "view",
|
@@ -918,105 +1216,134 @@
|
|
918
1216
|
"internalType": "NftId",
|
919
1217
|
"name": "stakeNftId",
|
920
1218
|
"type": "uint96"
|
1219
|
+
},
|
1220
|
+
{
|
1221
|
+
"internalType": "bool",
|
1222
|
+
"name": "updateRewards",
|
1223
|
+
"type": "bool"
|
1224
|
+
},
|
1225
|
+
{
|
1226
|
+
"internalType": "Amount",
|
1227
|
+
"name": "maxClaimAmount",
|
1228
|
+
"type": "uint96"
|
921
1229
|
}
|
922
1230
|
],
|
923
|
-
"name": "
|
1231
|
+
"name": "claimRewards",
|
924
1232
|
"outputs": [
|
925
1233
|
{
|
926
|
-
"internalType": "
|
927
|
-
"name": "",
|
928
|
-
"type": "
|
1234
|
+
"internalType": "Amount",
|
1235
|
+
"name": "claimedAmount",
|
1236
|
+
"type": "uint96"
|
929
1237
|
}
|
930
1238
|
],
|
931
|
-
"stateMutability": "
|
1239
|
+
"stateMutability": "nonpayable",
|
932
1240
|
"type": "function"
|
933
1241
|
},
|
934
1242
|
{
|
935
1243
|
"inputs": [
|
936
1244
|
{
|
937
|
-
"internalType": "
|
938
|
-
"name": "
|
939
|
-
"type": "
|
1245
|
+
"internalType": "NftId",
|
1246
|
+
"name": "stakeNftId",
|
1247
|
+
"type": "uint96"
|
1248
|
+
},
|
1249
|
+
{
|
1250
|
+
"internalType": "NftId",
|
1251
|
+
"name": "targetNftId",
|
1252
|
+
"type": "uint96"
|
1253
|
+
},
|
1254
|
+
{
|
1255
|
+
"internalType": "address",
|
1256
|
+
"name": "stakeOwner",
|
1257
|
+
"type": "address"
|
1258
|
+
},
|
1259
|
+
{
|
1260
|
+
"internalType": "Amount",
|
1261
|
+
"name": "stakeAmount",
|
1262
|
+
"type": "uint96"
|
940
1263
|
}
|
941
1264
|
],
|
942
|
-
"name": "
|
1265
|
+
"name": "createStake",
|
943
1266
|
"outputs": [
|
944
1267
|
{
|
945
|
-
"
|
946
|
-
|
947
|
-
|
948
|
-
{
|
949
|
-
"internalType": "ObjectType",
|
950
|
-
"name": "objectType",
|
951
|
-
"type": "uint8"
|
952
|
-
},
|
953
|
-
{
|
954
|
-
"internalType": "StateId",
|
955
|
-
"name": "state",
|
956
|
-
"type": "uint8"
|
957
|
-
},
|
958
|
-
{
|
959
|
-
"internalType": "Blocknumber",
|
960
|
-
"name": "updatedIn",
|
961
|
-
"type": "uint32"
|
962
|
-
},
|
963
|
-
{
|
964
|
-
"internalType": "Blocknumber",
|
965
|
-
"name": "createdIn",
|
966
|
-
"type": "uint32"
|
967
|
-
}
|
968
|
-
],
|
969
|
-
"internalType": "struct IKeyValueStore.Metadata",
|
970
|
-
"name": "metadata",
|
971
|
-
"type": "tuple"
|
972
|
-
},
|
973
|
-
{
|
974
|
-
"internalType": "bytes",
|
975
|
-
"name": "data",
|
976
|
-
"type": "bytes"
|
977
|
-
}
|
978
|
-
],
|
979
|
-
"internalType": "struct IKeyValueStore.Value",
|
980
|
-
"name": "value",
|
981
|
-
"type": "tuple"
|
1268
|
+
"internalType": "Timestamp",
|
1269
|
+
"name": "lockedUntil",
|
1270
|
+
"type": "uint40"
|
982
1271
|
}
|
983
1272
|
],
|
984
|
-
"stateMutability": "
|
1273
|
+
"stateMutability": "nonpayable",
|
985
1274
|
"type": "function"
|
986
1275
|
},
|
987
1276
|
{
|
988
1277
|
"inputs": [
|
989
1278
|
{
|
990
1279
|
"internalType": "NftId",
|
991
|
-
"name": "
|
1280
|
+
"name": "targetNftId",
|
1281
|
+
"type": "uint96"
|
1282
|
+
},
|
1283
|
+
{
|
1284
|
+
"internalType": "ObjectType",
|
1285
|
+
"name": "objectType",
|
1286
|
+
"type": "uint8"
|
1287
|
+
},
|
1288
|
+
{
|
1289
|
+
"internalType": "Seconds",
|
1290
|
+
"name": "lockingPeriod",
|
1291
|
+
"type": "uint40"
|
1292
|
+
},
|
1293
|
+
{
|
1294
|
+
"internalType": "UFixed",
|
1295
|
+
"name": "rewardRate",
|
1296
|
+
"type": "uint160"
|
1297
|
+
}
|
1298
|
+
],
|
1299
|
+
"name": "createTarget",
|
1300
|
+
"outputs": [],
|
1301
|
+
"stateMutability": "nonpayable",
|
1302
|
+
"type": "function"
|
1303
|
+
},
|
1304
|
+
{
|
1305
|
+
"inputs": [
|
1306
|
+
{
|
1307
|
+
"internalType": "NftId",
|
1308
|
+
"name": "targetNftId",
|
1309
|
+
"type": "uint96"
|
1310
|
+
},
|
1311
|
+
{
|
1312
|
+
"internalType": "address",
|
1313
|
+
"name": "token",
|
1314
|
+
"type": "address"
|
1315
|
+
},
|
1316
|
+
{
|
1317
|
+
"internalType": "Amount",
|
1318
|
+
"name": "amount",
|
992
1319
|
"type": "uint96"
|
993
1320
|
}
|
994
1321
|
],
|
995
|
-
"name": "
|
1322
|
+
"name": "decreaseTotalValueLocked",
|
996
1323
|
"outputs": [
|
997
1324
|
{
|
998
|
-
"internalType": "
|
999
|
-
"name": "
|
1000
|
-
"type": "
|
1325
|
+
"internalType": "Amount",
|
1326
|
+
"name": "newBalance",
|
1327
|
+
"type": "uint96"
|
1001
1328
|
}
|
1002
1329
|
],
|
1003
|
-
"stateMutability": "
|
1330
|
+
"stateMutability": "nonpayable",
|
1004
1331
|
"type": "function"
|
1005
1332
|
},
|
1006
1333
|
{
|
1007
1334
|
"inputs": [
|
1008
1335
|
{
|
1009
1336
|
"internalType": "NftId",
|
1010
|
-
"name": "
|
1337
|
+
"name": "stakeNftId",
|
1011
1338
|
"type": "uint96"
|
1012
1339
|
}
|
1013
1340
|
],
|
1014
|
-
"name": "
|
1341
|
+
"name": "exists",
|
1015
1342
|
"outputs": [
|
1016
1343
|
{
|
1017
|
-
"internalType": "
|
1018
|
-
"name": "
|
1019
|
-
"type": "
|
1344
|
+
"internalType": "bool",
|
1345
|
+
"name": "",
|
1346
|
+
"type": "bool"
|
1020
1347
|
}
|
1021
1348
|
],
|
1022
1349
|
"stateMutability": "view",
|
@@ -1025,17 +1352,34 @@
|
|
1025
1352
|
{
|
1026
1353
|
"inputs": [
|
1027
1354
|
{
|
1028
|
-
"internalType": "
|
1029
|
-
"name": "
|
1030
|
-
"type": "
|
1355
|
+
"internalType": "NftId",
|
1356
|
+
"name": "targetNftId",
|
1357
|
+
"type": "uint96"
|
1031
1358
|
}
|
1032
1359
|
],
|
1033
|
-
"name": "
|
1360
|
+
"name": "getLimitInfo",
|
1034
1361
|
"outputs": [
|
1035
1362
|
{
|
1036
|
-
"
|
1037
|
-
|
1038
|
-
|
1363
|
+
"components": [
|
1364
|
+
{
|
1365
|
+
"internalType": "Amount",
|
1366
|
+
"name": "marginAmount",
|
1367
|
+
"type": "uint96"
|
1368
|
+
},
|
1369
|
+
{
|
1370
|
+
"internalType": "Amount",
|
1371
|
+
"name": "hardLimitAmount",
|
1372
|
+
"type": "uint96"
|
1373
|
+
},
|
1374
|
+
{
|
1375
|
+
"internalType": "Blocknumber",
|
1376
|
+
"name": "lastUpdateIn",
|
1377
|
+
"type": "uint40"
|
1378
|
+
}
|
1379
|
+
],
|
1380
|
+
"internalType": "struct IStaking.LimitInfo",
|
1381
|
+
"name": "limitInfo",
|
1382
|
+
"type": "tuple"
|
1039
1383
|
}
|
1040
1384
|
],
|
1041
1385
|
"stateMutability": "view",
|
@@ -1044,17 +1388,22 @@
|
|
1044
1388
|
{
|
1045
1389
|
"inputs": [
|
1046
1390
|
{
|
1047
|
-
"internalType": "
|
1048
|
-
"name": "
|
1049
|
-
"type": "
|
1391
|
+
"internalType": "NftId",
|
1392
|
+
"name": "targetNftId",
|
1393
|
+
"type": "uint96"
|
1394
|
+
},
|
1395
|
+
{
|
1396
|
+
"internalType": "bool",
|
1397
|
+
"name": "includeTargetTypeRequirements",
|
1398
|
+
"type": "bool"
|
1050
1399
|
}
|
1051
1400
|
],
|
1052
|
-
"name": "
|
1401
|
+
"name": "getRequiredStakeBalance",
|
1053
1402
|
"outputs": [
|
1054
1403
|
{
|
1055
|
-
"internalType": "
|
1056
|
-
"name": "",
|
1057
|
-
"type": "
|
1404
|
+
"internalType": "Amount",
|
1405
|
+
"name": "requiredStakeAmount",
|
1406
|
+
"type": "uint96"
|
1058
1407
|
}
|
1059
1408
|
],
|
1060
1409
|
"stateMutability": "view",
|
@@ -1063,38 +1412,48 @@
|
|
1063
1412
|
{
|
1064
1413
|
"inputs": [
|
1065
1414
|
{
|
1066
|
-
"internalType": "
|
1067
|
-
"name": "
|
1068
|
-
"type": "
|
1415
|
+
"internalType": "NftId",
|
1416
|
+
"name": "stakeNftId",
|
1417
|
+
"type": "uint96"
|
1069
1418
|
}
|
1070
1419
|
],
|
1071
|
-
"name": "
|
1420
|
+
"name": "getStakeInfo",
|
1072
1421
|
"outputs": [
|
1073
1422
|
{
|
1074
1423
|
"components": [
|
1075
1424
|
{
|
1076
|
-
"internalType": "
|
1077
|
-
"name": "
|
1078
|
-
"type": "
|
1425
|
+
"internalType": "Amount",
|
1426
|
+
"name": "stakedAmount",
|
1427
|
+
"type": "uint96"
|
1079
1428
|
},
|
1080
1429
|
{
|
1081
|
-
"internalType": "
|
1082
|
-
"name": "
|
1083
|
-
"type": "
|
1430
|
+
"internalType": "Amount",
|
1431
|
+
"name": "rewardAmount",
|
1432
|
+
"type": "uint96"
|
1084
1433
|
},
|
1085
1434
|
{
|
1086
|
-
"internalType": "
|
1087
|
-
"name": "
|
1088
|
-
"type": "
|
1435
|
+
"internalType": "Timestamp",
|
1436
|
+
"name": "lockedUntil",
|
1437
|
+
"type": "uint40"
|
1438
|
+
},
|
1439
|
+
{
|
1440
|
+
"internalType": "NftId",
|
1441
|
+
"name": "targetNftId",
|
1442
|
+
"type": "uint96"
|
1443
|
+
},
|
1444
|
+
{
|
1445
|
+
"internalType": "Timestamp",
|
1446
|
+
"name": "lastUpdateAt",
|
1447
|
+
"type": "uint40"
|
1089
1448
|
},
|
1090
1449
|
{
|
1091
1450
|
"internalType": "Blocknumber",
|
1092
|
-
"name": "
|
1093
|
-
"type": "
|
1451
|
+
"name": "lastUpdateIn",
|
1452
|
+
"type": "uint40"
|
1094
1453
|
}
|
1095
1454
|
],
|
1096
|
-
"internalType": "struct
|
1097
|
-
"name": "
|
1455
|
+
"internalType": "struct IStaking.StakeInfo",
|
1456
|
+
"name": "stakeInfo",
|
1098
1457
|
"type": "tuple"
|
1099
1458
|
}
|
1100
1459
|
],
|
@@ -1105,15 +1464,15 @@
|
|
1105
1464
|
"inputs": [
|
1106
1465
|
{
|
1107
1466
|
"internalType": "NftId",
|
1108
|
-
"name": "
|
1467
|
+
"name": "stakeNftId",
|
1109
1468
|
"type": "uint96"
|
1110
1469
|
}
|
1111
1470
|
],
|
1112
|
-
"name": "
|
1471
|
+
"name": "getStakeTarget",
|
1113
1472
|
"outputs": [
|
1114
1473
|
{
|
1115
|
-
"internalType": "
|
1116
|
-
"name": "
|
1474
|
+
"internalType": "NftId",
|
1475
|
+
"name": "targetNftId",
|
1117
1476
|
"type": "uint96"
|
1118
1477
|
}
|
1119
1478
|
],
|
@@ -1121,19 +1480,13 @@
|
|
1121
1480
|
"type": "function"
|
1122
1481
|
},
|
1123
1482
|
{
|
1124
|
-
"inputs": [
|
1125
|
-
|
1126
|
-
"internalType": "NftId",
|
1127
|
-
"name": "nftId",
|
1128
|
-
"type": "uint96"
|
1129
|
-
}
|
1130
|
-
],
|
1131
|
-
"name": "getReserveBalance",
|
1483
|
+
"inputs": [],
|
1484
|
+
"name": "getStakingReader",
|
1132
1485
|
"outputs": [
|
1133
1486
|
{
|
1134
|
-
"internalType": "
|
1135
|
-
"name": "
|
1136
|
-
"type": "
|
1487
|
+
"internalType": "contract StakingReader",
|
1488
|
+
"name": "stakingReader",
|
1489
|
+
"type": "address"
|
1137
1490
|
}
|
1138
1491
|
],
|
1139
1492
|
"stateMutability": "view",
|
@@ -1142,17 +1495,69 @@
|
|
1142
1495
|
{
|
1143
1496
|
"inputs": [
|
1144
1497
|
{
|
1145
|
-
"internalType": "
|
1146
|
-
"name": "
|
1147
|
-
"type": "
|
1498
|
+
"internalType": "ObjectType",
|
1499
|
+
"name": "targetType",
|
1500
|
+
"type": "uint8"
|
1148
1501
|
}
|
1149
1502
|
],
|
1150
|
-
"name": "
|
1503
|
+
"name": "getSupportInfo",
|
1151
1504
|
"outputs": [
|
1152
1505
|
{
|
1153
|
-
"
|
1154
|
-
|
1155
|
-
|
1506
|
+
"components": [
|
1507
|
+
{
|
1508
|
+
"internalType": "bool",
|
1509
|
+
"name": "isSupported",
|
1510
|
+
"type": "bool"
|
1511
|
+
},
|
1512
|
+
{
|
1513
|
+
"internalType": "bool",
|
1514
|
+
"name": "allowNewTargets",
|
1515
|
+
"type": "bool"
|
1516
|
+
},
|
1517
|
+
{
|
1518
|
+
"internalType": "bool",
|
1519
|
+
"name": "allowCrossChain",
|
1520
|
+
"type": "bool"
|
1521
|
+
},
|
1522
|
+
{
|
1523
|
+
"internalType": "Amount",
|
1524
|
+
"name": "minStakingAmount",
|
1525
|
+
"type": "uint96"
|
1526
|
+
},
|
1527
|
+
{
|
1528
|
+
"internalType": "Amount",
|
1529
|
+
"name": "maxStakingAmount",
|
1530
|
+
"type": "uint96"
|
1531
|
+
},
|
1532
|
+
{
|
1533
|
+
"internalType": "Seconds",
|
1534
|
+
"name": "minLockingPeriod",
|
1535
|
+
"type": "uint40"
|
1536
|
+
},
|
1537
|
+
{
|
1538
|
+
"internalType": "Seconds",
|
1539
|
+
"name": "maxLockingPeriod",
|
1540
|
+
"type": "uint40"
|
1541
|
+
},
|
1542
|
+
{
|
1543
|
+
"internalType": "UFixed",
|
1544
|
+
"name": "minRewardRate",
|
1545
|
+
"type": "uint160"
|
1546
|
+
},
|
1547
|
+
{
|
1548
|
+
"internalType": "UFixed",
|
1549
|
+
"name": "maxRewardRate",
|
1550
|
+
"type": "uint160"
|
1551
|
+
},
|
1552
|
+
{
|
1553
|
+
"internalType": "Blocknumber",
|
1554
|
+
"name": "lastUpdateIn",
|
1555
|
+
"type": "uint40"
|
1556
|
+
}
|
1557
|
+
],
|
1558
|
+
"internalType": "struct IStaking.SupportInfo",
|
1559
|
+
"name": "supportInfo",
|
1560
|
+
"type": "tuple"
|
1156
1561
|
}
|
1157
1562
|
],
|
1158
1563
|
"stateMutability": "view",
|
@@ -1162,45 +1567,89 @@
|
|
1162
1567
|
"inputs": [
|
1163
1568
|
{
|
1164
1569
|
"internalType": "NftId",
|
1165
|
-
"name": "
|
1570
|
+
"name": "targetNftId",
|
1166
1571
|
"type": "uint96"
|
1167
1572
|
}
|
1168
1573
|
],
|
1169
|
-
"name": "
|
1574
|
+
"name": "getTargetInfo",
|
1170
1575
|
"outputs": [
|
1171
1576
|
{
|
1172
|
-
"
|
1173
|
-
|
1174
|
-
|
1577
|
+
"components": [
|
1578
|
+
{
|
1579
|
+
"internalType": "Amount",
|
1580
|
+
"name": "stakedAmount",
|
1581
|
+
"type": "uint96"
|
1582
|
+
},
|
1583
|
+
{
|
1584
|
+
"internalType": "Amount",
|
1585
|
+
"name": "rewardAmount",
|
1586
|
+
"type": "uint96"
|
1587
|
+
},
|
1588
|
+
{
|
1589
|
+
"internalType": "Blocknumber",
|
1590
|
+
"name": "lastUpdateIn",
|
1591
|
+
"type": "uint40"
|
1592
|
+
},
|
1593
|
+
{
|
1594
|
+
"internalType": "Amount",
|
1595
|
+
"name": "reserveAmount",
|
1596
|
+
"type": "uint96"
|
1597
|
+
},
|
1598
|
+
{
|
1599
|
+
"internalType": "Amount",
|
1600
|
+
"name": "limitAmount",
|
1601
|
+
"type": "uint96"
|
1602
|
+
},
|
1603
|
+
{
|
1604
|
+
"internalType": "Seconds",
|
1605
|
+
"name": "lockingPeriod",
|
1606
|
+
"type": "uint40"
|
1607
|
+
},
|
1608
|
+
{
|
1609
|
+
"internalType": "ObjectType",
|
1610
|
+
"name": "objectType",
|
1611
|
+
"type": "uint8"
|
1612
|
+
},
|
1613
|
+
{
|
1614
|
+
"internalType": "UFixed",
|
1615
|
+
"name": "rewardRate",
|
1616
|
+
"type": "uint160"
|
1617
|
+
},
|
1618
|
+
{
|
1619
|
+
"internalType": "ChainId",
|
1620
|
+
"name": "chainId",
|
1621
|
+
"type": "uint96"
|
1622
|
+
}
|
1623
|
+
],
|
1624
|
+
"internalType": "struct IStaking.TargetInfo",
|
1625
|
+
"name": "targetInfo",
|
1626
|
+
"type": "tuple"
|
1175
1627
|
}
|
1176
1628
|
],
|
1177
1629
|
"stateMutability": "view",
|
1178
1630
|
"type": "function"
|
1179
1631
|
},
|
1180
1632
|
{
|
1181
|
-
"inputs": [
|
1633
|
+
"inputs": [],
|
1634
|
+
"name": "getTargetManager",
|
1635
|
+
"outputs": [
|
1182
1636
|
{
|
1183
|
-
"internalType": "
|
1184
|
-
"name": "
|
1185
|
-
"type": "
|
1637
|
+
"internalType": "contract ITargetLimitHandler",
|
1638
|
+
"name": "targetLimitHandler",
|
1639
|
+
"type": "address"
|
1186
1640
|
}
|
1187
1641
|
],
|
1188
|
-
"
|
1642
|
+
"stateMutability": "view",
|
1643
|
+
"type": "function"
|
1644
|
+
},
|
1645
|
+
{
|
1646
|
+
"inputs": [],
|
1647
|
+
"name": "getTargetSet",
|
1189
1648
|
"outputs": [
|
1190
1649
|
{
|
1191
|
-
"internalType": "
|
1192
|
-
"name": "
|
1193
|
-
"type": "
|
1194
|
-
},
|
1195
|
-
{
|
1196
|
-
"internalType": "Amount",
|
1197
|
-
"name": "rewardBalance",
|
1198
|
-
"type": "uint96"
|
1199
|
-
},
|
1200
|
-
{
|
1201
|
-
"internalType": "Timestamp",
|
1202
|
-
"name": "lastUpdatedAt",
|
1203
|
-
"type": "uint40"
|
1650
|
+
"internalType": "contract NftIdSet",
|
1651
|
+
"name": "targetNftIdSet",
|
1652
|
+
"type": "address"
|
1204
1653
|
}
|
1205
1654
|
],
|
1206
1655
|
"stateMutability": "view",
|
@@ -1209,9 +1658,9 @@
|
|
1209
1658
|
{
|
1210
1659
|
"inputs": [
|
1211
1660
|
{
|
1212
|
-
"internalType": "
|
1661
|
+
"internalType": "ChainId",
|
1213
1662
|
"name": "chainId",
|
1214
|
-
"type": "
|
1663
|
+
"type": "uint96"
|
1215
1664
|
},
|
1216
1665
|
{
|
1217
1666
|
"internalType": "address",
|
@@ -1219,44 +1668,94 @@
|
|
1219
1668
|
"type": "address"
|
1220
1669
|
}
|
1221
1670
|
],
|
1222
|
-
"name": "
|
1671
|
+
"name": "getTokenInfo",
|
1223
1672
|
"outputs": [
|
1224
1673
|
{
|
1225
|
-
"
|
1226
|
-
|
1227
|
-
|
1674
|
+
"components": [
|
1675
|
+
{
|
1676
|
+
"internalType": "UFixed",
|
1677
|
+
"name": "stakingRate",
|
1678
|
+
"type": "uint160"
|
1679
|
+
},
|
1680
|
+
{
|
1681
|
+
"internalType": "Blocknumber",
|
1682
|
+
"name": "lastUpdateIn",
|
1683
|
+
"type": "uint40"
|
1684
|
+
}
|
1685
|
+
],
|
1686
|
+
"internalType": "struct IStaking.TokenInfo",
|
1687
|
+
"name": "tokenInfo",
|
1688
|
+
"type": "tuple"
|
1228
1689
|
}
|
1229
1690
|
],
|
1230
1691
|
"stateMutability": "view",
|
1231
1692
|
"type": "function"
|
1232
1693
|
},
|
1233
1694
|
{
|
1234
|
-
"inputs": [
|
1235
|
-
"name": "getStakingReader",
|
1236
|
-
"outputs": [
|
1695
|
+
"inputs": [
|
1237
1696
|
{
|
1238
|
-
"internalType": "
|
1239
|
-
"name": "
|
1697
|
+
"internalType": "NftId",
|
1698
|
+
"name": "targetNftId",
|
1699
|
+
"type": "uint96"
|
1700
|
+
},
|
1701
|
+
{
|
1702
|
+
"internalType": "address",
|
1703
|
+
"name": "token",
|
1240
1704
|
"type": "address"
|
1241
1705
|
}
|
1242
1706
|
],
|
1707
|
+
"name": "getTvlInfo",
|
1708
|
+
"outputs": [
|
1709
|
+
{
|
1710
|
+
"components": [
|
1711
|
+
{
|
1712
|
+
"internalType": "Amount",
|
1713
|
+
"name": "tvlAmount",
|
1714
|
+
"type": "uint96"
|
1715
|
+
},
|
1716
|
+
{
|
1717
|
+
"internalType": "Amount",
|
1718
|
+
"name": "tvlBaselineAmount",
|
1719
|
+
"type": "uint96"
|
1720
|
+
},
|
1721
|
+
{
|
1722
|
+
"internalType": "uint16",
|
1723
|
+
"name": "updatesCounter",
|
1724
|
+
"type": "uint16"
|
1725
|
+
},
|
1726
|
+
{
|
1727
|
+
"internalType": "Blocknumber",
|
1728
|
+
"name": "lastUpdateIn",
|
1729
|
+
"type": "uint40"
|
1730
|
+
}
|
1731
|
+
],
|
1732
|
+
"internalType": "struct IStaking.TvlInfo",
|
1733
|
+
"name": "tvlInfo",
|
1734
|
+
"type": "tuple"
|
1735
|
+
}
|
1736
|
+
],
|
1243
1737
|
"stateMutability": "view",
|
1244
1738
|
"type": "function"
|
1245
1739
|
},
|
1246
1740
|
{
|
1247
1741
|
"inputs": [
|
1248
1742
|
{
|
1249
|
-
"internalType": "
|
1250
|
-
"name": "
|
1251
|
-
"type": "
|
1743
|
+
"internalType": "ChainId",
|
1744
|
+
"name": "chainId",
|
1745
|
+
"type": "uint96"
|
1746
|
+
},
|
1747
|
+
{
|
1748
|
+
"internalType": "address",
|
1749
|
+
"name": "token",
|
1750
|
+
"type": "address"
|
1252
1751
|
}
|
1253
1752
|
],
|
1254
|
-
"name": "
|
1753
|
+
"name": "hasTokenInfo",
|
1255
1754
|
"outputs": [
|
1256
1755
|
{
|
1257
|
-
"internalType": "
|
1258
|
-
"name": "
|
1259
|
-
"type": "
|
1756
|
+
"internalType": "bool",
|
1757
|
+
"name": "",
|
1758
|
+
"type": "bool"
|
1260
1759
|
}
|
1261
1760
|
],
|
1262
1761
|
"stateMutability": "view",
|
@@ -1266,68 +1765,52 @@
|
|
1266
1765
|
"inputs": [
|
1267
1766
|
{
|
1268
1767
|
"internalType": "NftId",
|
1269
|
-
"name": "
|
1270
|
-
"type": "uint96"
|
1271
|
-
}
|
1272
|
-
],
|
1273
|
-
"name": "getTargetBalances",
|
1274
|
-
"outputs": [
|
1275
|
-
{
|
1276
|
-
"internalType": "Amount",
|
1277
|
-
"name": "stakeBalance",
|
1768
|
+
"name": "targetNftId",
|
1278
1769
|
"type": "uint96"
|
1279
1770
|
},
|
1280
1771
|
{
|
1281
|
-
"internalType": "
|
1282
|
-
"name": "
|
1283
|
-
"type": "
|
1772
|
+
"internalType": "address",
|
1773
|
+
"name": "token",
|
1774
|
+
"type": "address"
|
1284
1775
|
},
|
1285
1776
|
{
|
1286
1777
|
"internalType": "Amount",
|
1287
|
-
"name": "
|
1778
|
+
"name": "amount",
|
1288
1779
|
"type": "uint96"
|
1289
|
-
},
|
1290
|
-
{
|
1291
|
-
"internalType": "Blocknumber",
|
1292
|
-
"name": "lastUpdatedIn",
|
1293
|
-
"type": "uint32"
|
1294
1780
|
}
|
1295
1781
|
],
|
1296
|
-
"
|
1297
|
-
"type": "function"
|
1298
|
-
},
|
1299
|
-
{
|
1300
|
-
"inputs": [],
|
1301
|
-
"name": "getTargetNftIdSet",
|
1782
|
+
"name": "increaseTotalValueLocked",
|
1302
1783
|
"outputs": [
|
1303
1784
|
{
|
1304
|
-
"internalType": "
|
1305
|
-
"name": "
|
1306
|
-
"type": "
|
1785
|
+
"internalType": "Amount",
|
1786
|
+
"name": "newBalance",
|
1787
|
+
"type": "uint96"
|
1307
1788
|
}
|
1308
1789
|
],
|
1309
|
-
"stateMutability": "
|
1790
|
+
"stateMutability": "nonpayable",
|
1310
1791
|
"type": "function"
|
1311
1792
|
},
|
1312
1793
|
{
|
1313
1794
|
"inputs": [
|
1314
|
-
{
|
1315
|
-
"internalType": "NftId",
|
1316
|
-
"name": "nftId",
|
1317
|
-
"type": "uint96"
|
1318
|
-
},
|
1319
1795
|
{
|
1320
1796
|
"internalType": "address",
|
1321
|
-
"name": "
|
1797
|
+
"name": "targetLimitHandler",
|
1322
1798
|
"type": "address"
|
1323
1799
|
}
|
1324
1800
|
],
|
1325
|
-
"name": "
|
1801
|
+
"name": "initialize",
|
1802
|
+
"outputs": [],
|
1803
|
+
"stateMutability": "nonpayable",
|
1804
|
+
"type": "function"
|
1805
|
+
},
|
1806
|
+
{
|
1807
|
+
"inputs": [],
|
1808
|
+
"name": "isConsumingScheduledOp",
|
1326
1809
|
"outputs": [
|
1327
1810
|
{
|
1328
|
-
"internalType": "
|
1329
|
-
"name": "
|
1330
|
-
"type": "
|
1811
|
+
"internalType": "bytes4",
|
1812
|
+
"name": "",
|
1813
|
+
"type": "bytes4"
|
1331
1814
|
}
|
1332
1815
|
],
|
1333
1816
|
"stateMutability": "view",
|
@@ -1336,12 +1819,12 @@
|
|
1336
1819
|
{
|
1337
1820
|
"inputs": [
|
1338
1821
|
{
|
1339
|
-
"internalType": "
|
1340
|
-
"name": "
|
1341
|
-
"type": "
|
1822
|
+
"internalType": "NftId",
|
1823
|
+
"name": "stakeNftId",
|
1824
|
+
"type": "uint96"
|
1342
1825
|
}
|
1343
1826
|
],
|
1344
|
-
"name": "
|
1827
|
+
"name": "isStakeLocked",
|
1345
1828
|
"outputs": [
|
1346
1829
|
{
|
1347
1830
|
"internalType": "bool",
|
@@ -1365,7 +1848,7 @@
|
|
1365
1848
|
"type": "uint96"
|
1366
1849
|
}
|
1367
1850
|
],
|
1368
|
-
"name": "
|
1851
|
+
"name": "refillRewardReserves",
|
1369
1852
|
"outputs": [
|
1370
1853
|
{
|
1371
1854
|
"internalType": "Amount",
|
@@ -1380,21 +1863,47 @@
|
|
1380
1863
|
"inputs": [
|
1381
1864
|
{
|
1382
1865
|
"internalType": "NftId",
|
1383
|
-
"name": "
|
1866
|
+
"name": "stakeNftId",
|
1384
1867
|
"type": "uint96"
|
1385
1868
|
},
|
1869
|
+
{
|
1870
|
+
"internalType": "bool",
|
1871
|
+
"name": "updateRewards",
|
1872
|
+
"type": "bool"
|
1873
|
+
}
|
1874
|
+
],
|
1875
|
+
"name": "restakeRewards",
|
1876
|
+
"outputs": [],
|
1877
|
+
"stateMutability": "nonpayable",
|
1878
|
+
"type": "function"
|
1879
|
+
},
|
1880
|
+
{
|
1881
|
+
"inputs": [
|
1882
|
+
{
|
1883
|
+
"internalType": "address",
|
1884
|
+
"name": "newAuthority",
|
1885
|
+
"type": "address"
|
1886
|
+
}
|
1887
|
+
],
|
1888
|
+
"name": "setAuthority",
|
1889
|
+
"outputs": [],
|
1890
|
+
"stateMutability": "nonpayable",
|
1891
|
+
"type": "function"
|
1892
|
+
},
|
1893
|
+
{
|
1894
|
+
"inputs": [
|
1386
1895
|
{
|
1387
1896
|
"internalType": "NftId",
|
1388
1897
|
"name": "targetNftId",
|
1389
1898
|
"type": "uint96"
|
1390
1899
|
},
|
1391
1900
|
{
|
1392
|
-
"internalType": "
|
1393
|
-
"name": "
|
1394
|
-
"type": "
|
1901
|
+
"internalType": "Seconds",
|
1902
|
+
"name": "lockingPeriod",
|
1903
|
+
"type": "uint40"
|
1395
1904
|
}
|
1396
1905
|
],
|
1397
|
-
"name": "
|
1906
|
+
"name": "setLockingPeriod",
|
1398
1907
|
"outputs": [],
|
1399
1908
|
"stateMutability": "nonpayable",
|
1400
1909
|
"type": "function"
|
@@ -1406,94 +1915,147 @@
|
|
1406
1915
|
"name": "targetNftId",
|
1407
1916
|
"type": "uint96"
|
1408
1917
|
},
|
1409
|
-
{
|
1410
|
-
"internalType": "UFixed",
|
1411
|
-
"name": "stakingRate",
|
1412
|
-
"type": "uint256"
|
1413
|
-
},
|
1414
|
-
{
|
1415
|
-
"internalType": "address",
|
1416
|
-
"name": "token",
|
1417
|
-
"type": "address"
|
1418
|
-
},
|
1419
1918
|
{
|
1420
1919
|
"internalType": "Amount",
|
1421
|
-
"name": "
|
1920
|
+
"name": "stakeLimitAmount",
|
1422
1921
|
"type": "uint96"
|
1423
1922
|
}
|
1424
1923
|
],
|
1425
|
-
"name": "
|
1924
|
+
"name": "setMaxStakedAmount",
|
1426
1925
|
"outputs": [
|
1427
1926
|
{
|
1428
1927
|
"internalType": "Amount",
|
1429
|
-
"name": "
|
1928
|
+
"name": "oldLimitAmount",
|
1430
1929
|
"type": "uint96"
|
1930
|
+
},
|
1931
|
+
{
|
1932
|
+
"internalType": "Blocknumber",
|
1933
|
+
"name": "lastUpdatedIn",
|
1934
|
+
"type": "uint40"
|
1431
1935
|
}
|
1432
1936
|
],
|
1433
1937
|
"stateMutability": "nonpayable",
|
1434
1938
|
"type": "function"
|
1435
1939
|
},
|
1436
1940
|
{
|
1437
|
-
"inputs": [
|
1438
|
-
"name": "isConsumingScheduledOp",
|
1439
|
-
"outputs": [
|
1941
|
+
"inputs": [
|
1440
1942
|
{
|
1441
|
-
"internalType": "
|
1442
|
-
"name": "",
|
1443
|
-
"type": "
|
1943
|
+
"internalType": "NftId",
|
1944
|
+
"name": "targetNftId",
|
1945
|
+
"type": "uint96"
|
1946
|
+
},
|
1947
|
+
{
|
1948
|
+
"internalType": "UFixed",
|
1949
|
+
"name": "rewardRate",
|
1950
|
+
"type": "uint160"
|
1444
1951
|
}
|
1445
1952
|
],
|
1446
|
-
"
|
1953
|
+
"name": "setRewardRate",
|
1954
|
+
"outputs": [],
|
1955
|
+
"stateMutability": "nonpayable",
|
1447
1956
|
"type": "function"
|
1448
1957
|
},
|
1449
1958
|
{
|
1450
1959
|
"inputs": [
|
1451
1960
|
{
|
1452
|
-
"internalType": "
|
1453
|
-
"name": "
|
1454
|
-
"type": "
|
1961
|
+
"internalType": "ChainId",
|
1962
|
+
"name": "chainId",
|
1963
|
+
"type": "uint96"
|
1455
1964
|
},
|
1456
1965
|
{
|
1457
|
-
"internalType": "
|
1458
|
-
"name": "
|
1459
|
-
"type": "
|
1966
|
+
"internalType": "address",
|
1967
|
+
"name": "token",
|
1968
|
+
"type": "address"
|
1460
1969
|
},
|
1461
1970
|
{
|
1462
|
-
"internalType": "
|
1463
|
-
"name": "
|
1464
|
-
"type": "
|
1971
|
+
"internalType": "UFixed",
|
1972
|
+
"name": "stakingRate",
|
1973
|
+
"type": "uint160"
|
1465
1974
|
}
|
1466
1975
|
],
|
1467
|
-
"name": "
|
1976
|
+
"name": "setStakingRate",
|
1468
1977
|
"outputs": [
|
1469
1978
|
{
|
1470
|
-
"internalType": "
|
1471
|
-
"name": "",
|
1472
|
-
"type": "
|
1979
|
+
"internalType": "UFixed",
|
1980
|
+
"name": "oldStakingRate",
|
1981
|
+
"type": "uint160"
|
1982
|
+
},
|
1983
|
+
{
|
1984
|
+
"internalType": "Blocknumber",
|
1985
|
+
"name": "lastUpdatedIn",
|
1986
|
+
"type": "uint40"
|
1473
1987
|
}
|
1474
1988
|
],
|
1475
|
-
"stateMutability": "
|
1989
|
+
"stateMutability": "nonpayable",
|
1476
1990
|
"type": "function"
|
1477
1991
|
},
|
1478
1992
|
{
|
1479
1993
|
"inputs": [
|
1480
1994
|
{
|
1481
|
-
"internalType": "
|
1482
|
-
"name": "
|
1483
|
-
"type": "
|
1995
|
+
"internalType": "address",
|
1996
|
+
"name": "reader",
|
1997
|
+
"type": "address"
|
1998
|
+
}
|
1999
|
+
],
|
2000
|
+
"name": "setStakingReader",
|
2001
|
+
"outputs": [],
|
2002
|
+
"stateMutability": "nonpayable",
|
2003
|
+
"type": "function"
|
2004
|
+
},
|
2005
|
+
{
|
2006
|
+
"inputs": [
|
2007
|
+
{
|
2008
|
+
"internalType": "ObjectType",
|
2009
|
+
"name": "targetType",
|
2010
|
+
"type": "uint8"
|
1484
2011
|
},
|
1485
2012
|
{
|
1486
|
-
"internalType": "
|
1487
|
-
"name": "
|
2013
|
+
"internalType": "bool",
|
2014
|
+
"name": "isSupported",
|
2015
|
+
"type": "bool"
|
2016
|
+
},
|
2017
|
+
{
|
2018
|
+
"internalType": "bool",
|
2019
|
+
"name": "allowNewTargets",
|
2020
|
+
"type": "bool"
|
2021
|
+
},
|
2022
|
+
{
|
2023
|
+
"internalType": "bool",
|
2024
|
+
"name": "allowCrossChain",
|
2025
|
+
"type": "bool"
|
2026
|
+
},
|
2027
|
+
{
|
2028
|
+
"internalType": "Amount",
|
2029
|
+
"name": "minStakingAmount",
|
1488
2030
|
"type": "uint96"
|
1489
2031
|
},
|
1490
2032
|
{
|
1491
2033
|
"internalType": "Amount",
|
1492
|
-
"name": "
|
2034
|
+
"name": "maxStakingAmount",
|
1493
2035
|
"type": "uint96"
|
2036
|
+
},
|
2037
|
+
{
|
2038
|
+
"internalType": "Seconds",
|
2039
|
+
"name": "minLockingPeriod",
|
2040
|
+
"type": "uint40"
|
2041
|
+
},
|
2042
|
+
{
|
2043
|
+
"internalType": "Seconds",
|
2044
|
+
"name": "maxLockingPeriod",
|
2045
|
+
"type": "uint40"
|
2046
|
+
},
|
2047
|
+
{
|
2048
|
+
"internalType": "UFixed",
|
2049
|
+
"name": "minRewardRate",
|
2050
|
+
"type": "uint160"
|
2051
|
+
},
|
2052
|
+
{
|
2053
|
+
"internalType": "UFixed",
|
2054
|
+
"name": "maxRewardRate",
|
2055
|
+
"type": "uint160"
|
1494
2056
|
}
|
1495
2057
|
],
|
1496
|
-
"name": "
|
2058
|
+
"name": "setSupportInfo",
|
1497
2059
|
"outputs": [],
|
1498
2060
|
"stateMutability": "nonpayable",
|
1499
2061
|
"type": "function"
|
@@ -1502,11 +2064,11 @@
|
|
1502
2064
|
"inputs": [
|
1503
2065
|
{
|
1504
2066
|
"internalType": "address",
|
1505
|
-
"name": "
|
2067
|
+
"name": "targetLimitHandler",
|
1506
2068
|
"type": "address"
|
1507
2069
|
}
|
1508
2070
|
],
|
1509
|
-
"name": "
|
2071
|
+
"name": "setTargetLimitHandler",
|
1510
2072
|
"outputs": [],
|
1511
2073
|
"stateMutability": "nonpayable",
|
1512
2074
|
"type": "function"
|
@@ -1514,22 +2076,22 @@
|
|
1514
2076
|
{
|
1515
2077
|
"inputs": [
|
1516
2078
|
{
|
1517
|
-
"internalType": "
|
1518
|
-
"name": "
|
1519
|
-
"type": "
|
2079
|
+
"internalType": "NftId",
|
2080
|
+
"name": "targetNftId",
|
2081
|
+
"type": "uint96"
|
1520
2082
|
},
|
1521
2083
|
{
|
1522
|
-
"internalType": "
|
1523
|
-
"name": "
|
1524
|
-
"type": "
|
2084
|
+
"internalType": "Amount",
|
2085
|
+
"name": "marginAmount",
|
2086
|
+
"type": "uint96"
|
1525
2087
|
},
|
1526
2088
|
{
|
1527
|
-
"internalType": "
|
1528
|
-
"name": "
|
1529
|
-
"type": "
|
2089
|
+
"internalType": "Amount",
|
2090
|
+
"name": "hardLimitAmount",
|
2091
|
+
"type": "uint96"
|
1530
2092
|
}
|
1531
2093
|
],
|
1532
|
-
"name": "
|
2094
|
+
"name": "setTargetLimits",
|
1533
2095
|
"outputs": [],
|
1534
2096
|
"stateMutability": "nonpayable",
|
1535
2097
|
"type": "function"
|
@@ -1537,61 +2099,65 @@
|
|
1537
2099
|
{
|
1538
2100
|
"inputs": [
|
1539
2101
|
{
|
1540
|
-
"internalType": "
|
1541
|
-
"name": "
|
1542
|
-
"type": "
|
2102
|
+
"internalType": "NftId",
|
2103
|
+
"name": "stakeNftId",
|
2104
|
+
"type": "uint96"
|
1543
2105
|
},
|
1544
2106
|
{
|
1545
|
-
"internalType": "
|
1546
|
-
"name": "
|
1547
|
-
"type": "
|
1548
|
-
}
|
1549
|
-
],
|
1550
|
-
"name": "toKey32",
|
1551
|
-
"outputs": [
|
2107
|
+
"internalType": "bool",
|
2108
|
+
"name": "updateRewards",
|
2109
|
+
"type": "bool"
|
2110
|
+
},
|
1552
2111
|
{
|
1553
|
-
"internalType": "
|
1554
|
-
"name": "",
|
1555
|
-
"type": "
|
2112
|
+
"internalType": "bool",
|
2113
|
+
"name": "restakeRewards",
|
2114
|
+
"type": "bool"
|
2115
|
+
},
|
2116
|
+
{
|
2117
|
+
"internalType": "Seconds",
|
2118
|
+
"name": "additionalLockingPeriod",
|
2119
|
+
"type": "uint40"
|
2120
|
+
},
|
2121
|
+
{
|
2122
|
+
"internalType": "Amount",
|
2123
|
+
"name": "stakeAmount",
|
2124
|
+
"type": "uint96"
|
1556
2125
|
}
|
1557
2126
|
],
|
1558
|
-
"
|
2127
|
+
"name": "stake",
|
2128
|
+
"outputs": [],
|
2129
|
+
"stateMutability": "nonpayable",
|
1559
2130
|
"type": "function"
|
1560
2131
|
},
|
1561
2132
|
{
|
1562
2133
|
"inputs": [
|
1563
2134
|
{
|
1564
2135
|
"internalType": "NftId",
|
1565
|
-
"name": "
|
2136
|
+
"name": "stakeNftId",
|
1566
2137
|
"type": "uint96"
|
1567
2138
|
},
|
1568
2139
|
{
|
1569
|
-
"internalType": "
|
1570
|
-
"name": "
|
1571
|
-
"type": "
|
2140
|
+
"internalType": "bool",
|
2141
|
+
"name": "updateRewards",
|
2142
|
+
"type": "bool"
|
1572
2143
|
},
|
1573
2144
|
{
|
1574
|
-
"internalType": "
|
1575
|
-
"name": "
|
1576
|
-
"type": "
|
2145
|
+
"internalType": "bool",
|
2146
|
+
"name": "restakeRewards",
|
2147
|
+
"type": "bool"
|
1577
2148
|
},
|
1578
2149
|
{
|
1579
2150
|
"internalType": "Amount",
|
1580
|
-
"name": "
|
2151
|
+
"name": "maxUnstakeAmount",
|
1581
2152
|
"type": "uint96"
|
1582
2153
|
}
|
1583
2154
|
],
|
1584
|
-
"name": "
|
2155
|
+
"name": "unstake",
|
1585
2156
|
"outputs": [
|
1586
2157
|
{
|
1587
2158
|
"internalType": "Amount",
|
1588
2159
|
"name": "unstakedAmount",
|
1589
2160
|
"type": "uint96"
|
1590
|
-
},
|
1591
|
-
{
|
1592
|
-
"internalType": "Amount",
|
1593
|
-
"name": "claimedAmount",
|
1594
|
-
"type": "uint96"
|
1595
2161
|
}
|
1596
2162
|
],
|
1597
2163
|
"stateMutability": "nonpayable",
|
@@ -1603,45 +2169,29 @@
|
|
1603
2169
|
"internalType": "NftId",
|
1604
2170
|
"name": "stakeNftId",
|
1605
2171
|
"type": "uint96"
|
1606
|
-
},
|
1607
|
-
{
|
1608
|
-
"components": [
|
1609
|
-
{
|
1610
|
-
"internalType": "Timestamp",
|
1611
|
-
"name": "lockedUntil",
|
1612
|
-
"type": "uint40"
|
1613
|
-
}
|
1614
|
-
],
|
1615
|
-
"internalType": "struct IStaking.StakeInfo",
|
1616
|
-
"name": "stakeInfo",
|
1617
|
-
"type": "tuple"
|
1618
2172
|
}
|
1619
2173
|
],
|
1620
|
-
"name": "
|
2174
|
+
"name": "updateRewards",
|
1621
2175
|
"outputs": [],
|
1622
2176
|
"stateMutability": "nonpayable",
|
1623
2177
|
"type": "function"
|
1624
2178
|
},
|
1625
2179
|
{
|
1626
2180
|
"inputs": [
|
1627
|
-
{
|
1628
|
-
"internalType": "NftId",
|
1629
|
-
"name": "nftId",
|
1630
|
-
"type": "uint96"
|
1631
|
-
},
|
1632
2181
|
{
|
1633
2182
|
"internalType": "NftId",
|
1634
2183
|
"name": "targetNftId",
|
1635
2184
|
"type": "uint96"
|
1636
|
-
}
|
2185
|
+
}
|
2186
|
+
],
|
2187
|
+
"name": "updateTargetLimit",
|
2188
|
+
"outputs": [
|
1637
2189
|
{
|
1638
2190
|
"internalType": "Amount",
|
1639
|
-
"name": "
|
2191
|
+
"name": "stakeLimitAmount",
|
1640
2192
|
"type": "uint96"
|
1641
2193
|
}
|
1642
2194
|
],
|
1643
|
-
"name": "updateRewards",
|
1644
|
-
"outputs": [],
|
1645
2195
|
"stateMutability": "nonpayable",
|
1646
2196
|
"type": "function"
|
1647
2197
|
},
|
@@ -1653,51 +2203,59 @@
|
|
1653
2203
|
"type": "uint96"
|
1654
2204
|
},
|
1655
2205
|
{
|
1656
|
-
"
|
1657
|
-
|
1658
|
-
|
1659
|
-
|
1660
|
-
|
1661
|
-
|
1662
|
-
|
1663
|
-
|
1664
|
-
|
1665
|
-
|
1666
|
-
|
1667
|
-
{
|
1668
|
-
"internalType": "Seconds",
|
1669
|
-
"name": "lockingPeriod",
|
1670
|
-
"type": "uint40"
|
1671
|
-
},
|
1672
|
-
{
|
1673
|
-
"internalType": "UFixed",
|
1674
|
-
"name": "rewardRate",
|
1675
|
-
"type": "uint256"
|
1676
|
-
}
|
1677
|
-
],
|
1678
|
-
"internalType": "struct IStaking.TargetInfo",
|
1679
|
-
"name": "targetInfo",
|
1680
|
-
"type": "tuple"
|
2206
|
+
"internalType": "Amount",
|
2207
|
+
"name": "dipAmount",
|
2208
|
+
"type": "uint96"
|
2209
|
+
}
|
2210
|
+
],
|
2211
|
+
"name": "withdrawRewardReserves",
|
2212
|
+
"outputs": [
|
2213
|
+
{
|
2214
|
+
"internalType": "Amount",
|
2215
|
+
"name": "newReserveBalance",
|
2216
|
+
"type": "uint96"
|
1681
2217
|
}
|
1682
2218
|
],
|
1683
|
-
"name": "updateTarget",
|
1684
|
-
"outputs": [],
|
1685
2219
|
"stateMutability": "nonpayable",
|
1686
2220
|
"type": "function"
|
1687
2221
|
}
|
1688
2222
|
],
|
1689
|
-
"bytecode": "0x608060405234801561000f575f80fd5b50604051615b2c380380615b2c83398101604081905261002e91610e15565b33610038816102ae565b50610041610301565b6100a9826001600160a01b031663e2b178a06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610080573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906100a49190610e4d565b610324565b600480546001600160a01b038085166001600160a01b03199283161790925560068054928416929091169190911790556040516100e590610df1565b604051809103905ff0801580156100fe573d5f803e3d5ffd5b50600580546001600160a01b0319166001600160a01b039290921691909117905560405163efac97cf60e01b815261044d60048201526102a79073__$94a2c899be079b00d952d0d84fffaa5c34$__9063efac97cf90602401602060405180830381865af4158015610172573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906101969190610e83565b60405180608001604052806101af6103a160201b60201c565b60ff1681526020016001815260200173__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__63c6edc3dd6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610205573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102299190610e9e565b64ffffffffff16815260200173__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__63f87bf3736040518163ffffffff1660e01b8152600401602060405180830381865af415801561027c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a09190610ec2565b90526103a6565b50506110c2565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b61030e60205b600161058a565b610318600b610307565b6103226021610307565b565b5f5433906001600160a01b0316811461035f5760405162d1953b60e31b81526001600160a01b03821660048201526024015b60405180910390fd5b816001600160a01b03163b5f03610394576040516361798f2f60e11b81526001600160a01b0383166004820152602401610356565b61039d826102ae565b5050565b600190565b60408051630711349960e31b81526001600160601b0384166004820152602060248201819052915161047d9273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af415801561040c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104309190610ec2565b60408051845160ff16602080830191909152850151818301529084015164ffffffffff16606080830191909152840151608082015260a00160408051601f198184030181529190526105cc565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af41580156104c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104e89190610ed9565b6001600160601b0383165f908152601060205260409020805463ffffffff191663ffffffff929092169190911790556105208261098f565b6005546040516346f0e8a760e11b81526001600160601b03841660048201526001600160a01b0390911690638de1d14e906024015f604051808303815f87803b15801561056b575f80fd5b505af115801561057d573d5f803e3d5ffd5b505050505050565b905090565b60ff8281165f9081526001602052604090205416156105ab576105ab610efc565b60ff9182165f908152600160205260409020805460ff191691909216179055565b604051634b00e98f60e11b8152600481018390525f9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af415801561061c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106409190610f10565b60405163037c8cb160e51b815260ff8216600482015290915073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__90636f91962090602401602060405180830381865af4158015610693573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106b79190610f30565b156106da576040516307014a8d60e51b815260ff82166004820152602401610356565b5f83815260036020526040908190208054915163b2466acf60e01b815261010090920460ff1660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af4158015610740573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107649190610f30565b1561078e57604051633f92eac960e21b81526004810185905260ff83166024820152604401610356565b61079782610cf9565b6107b957604051636cb0978b60e11b815260ff83166004820152602401610356565b5f6107c2610d85565b60ff8085165f908152600160205260408120549293509116835460ff86811661ffff1990921691909117610100918316919091021762010000600160501b0319166201000063ffffffff851690810263ffffffff60301b1916919091176601000000000000919091021784555f87815260036020526040902090915060010161084b8682610fe7565b50604051634b00e98f60e11b8152600481018790527ffcb75eb7b317145f986c763e1a3eab5f9b4dbaf7955504f70f986d799c3ab39d9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af41580156108bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108e09190610f10565b604051630713cfad60e31b81526004810189905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af415801561092e573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061095291906110a1565b6040805160ff938416815260ff199290921660208301529184168183015233606082015232608082015290519081900360a00190a1505050505050565b6001600160601b0381165f908152600c60205260409081902054905163d15b589360e01b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063d15b589390602401602060405180830381865af41580156109fc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a209190610f30565b15610a49576040516366d785a360e11b81526001600160601b0382166004820152602401610356565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610a90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ab49190610e83565b60085f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610b41573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610b659190610e83565b60095f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610bf2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c169190610e83565b600a5f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015610ca3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610cc79190610ed9565b6001600160601b03919091165f908152600c60205260409020805463ffffffff191663ffffffff909216919091179055565b60ff8181165f9081526001602052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af4158015610d5b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d7f9190610f30565b92915050565b5f73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015610dcd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105859190610ed9565b61074c806153e083390190565b6001600160a01b0381168114610e12575f80fd5b50565b5f8060408385031215610e26575f80fd5b8251610e3181610dfe565b6020840151909250610e4281610dfe565b809150509250929050565b5f60208284031215610e5d575f80fd5b8151610e6881610dfe565b9392505050565b6001600160601b0381168114610e12575f80fd5b5f60208284031215610e93575f80fd5b8151610e6881610e6f565b5f60208284031215610eae575f80fd5b815164ffffffffff81168114610e68575f80fd5b5f60208284031215610ed2575f80fd5b5051919050565b5f60208284031215610ee9575f80fd5b815163ffffffff81168114610e68575f80fd5b634e487b7160e01b5f52600160045260245ffd5b5f60208284031215610f20575f80fd5b815160ff81168114610e68575f80fd5b5f60208284031215610f40575f80fd5b81518015158114610e68575f80fd5b634e487b7160e01b5f52604160045260245ffd5b600181811c90821680610f7757607f821691505b602082108103610f9557634e487b7160e01b5f52602260045260245ffd5b50919050565b601f821115610fe257805f5260205f20601f840160051c81016020851015610fc05750805b601f840160051c820191505b81811015610fdf575f8155600101610fcc565b50505b505050565b81516001600160401b0381111561100057611000610f4f565b6110148161100e8454610f63565b84610f9b565b6020601f821160018114611046575f831561102f5750848201515b5f19600385901b1c1916600184901b178455610fdf565b5f84815260208120601f198516915b828110156110755787850151825560209485019460019092019101611055565b508482101561109257868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f602082840312156110b1575f80fd5b815160ff1981168114610e68575f80fd5b614311806110cf5f395ff3fe608060405234801561000f575f80fd5b506004361061023f575f3560e01c80637b21556111610135578063bf7e214f116100b4578063eb98e8a011610079578063eb98e8a01461074f578063f48016ce14610782578063fb14543214610795578063fb39549c146107c0578063ff86054d146107d3575f80fd5b8063bf7e214f146106a9578063d7537c37146106b9578063dfb7e337146106cc578063e067350f14610711578063e9e96c701461073c575f80fd5b80639a726364116100fa5780639a72636414610562578063a5961b4c14610575578063b04fa50614610601578063beba11201461066b578063bf1db3f914610696575f80fd5b80637b2155611461045b578063828227de1461049e5780638eaa6ac0146104e15780638fb360371461050157806391a2059f14610522575f80fd5b80634b51da0c116101c157806362841be21161018657806362841be2146103e65780636291423a146103f9578063717f1b981461040a57806377f91851146104355780637a9e5e4b14610448575f80fd5b80634b51da0c146103685780634f9c1c091461037b57806354f1fa811461038e57806354f6127f146103a15780635cce3fa1146103c1575f80fd5b806330f441991161020757806330f44199146102f95780633861317f1461030c57806338a699a41461031f5780633fbdfe32146103425780634a2101d114610355575f80fd5b806309648a9d146102435780630d35818114610281578063136cfef7146102a65780631807a488146102d15780632df8be9b146102e6575b5f80fd5b61026a610251366004613a57565b5f90815260036020526040902054610100900460ff1690565b60405160ff90911681526020015b60405180910390f35b61026a61028f366004613a7f565b60ff9081165f908152600160205260409020541690565b6102b96102b4366004613aae565b61084d565b6040516001600160601b039091168152602001610278565b6102e46102df366004613b0b565b610934565b005b6102e46102f4366004613b0b565b610a20565b6102e4610307366004613ba2565b610a33565b6102e461031a366004613ba2565b610bd8565b61033261032d366004613a57565b610ce1565b6040519015158152602001610278565b6102b9610350366004613ba2565b610d6f565b6102e4610363366004613ba2565b610ef3565b6102e4610376366004613bea565b610fcf565b610332610389366004613c5c565b611087565b6102e461039c366004613c77565b61111f565b6103b46103af366004613a57565b611278565b6040516102789190613cfe565b6005546001600160a01b03165b6040516001600160a01b039091168152602001610278565b6102e46103f4366004613bea565b61131a565b6006546001600160a01b03166103ce565b6102b9610418366004613c5c565b6001600160601b039081165f908152600960205260409020541690565b6102b9610443366004613d26565b6113eb565b6102e4610456366004613d69565b611647565b610490610469366004613d82565b5f9182526007602090815260408084206001600160a01b0393909316845291905290205490565b604051908152602001610278565b6104cc6104ac366004613c5c565b6001600160601b03165f908152600c602052604090205463ffffffff1690565b60405163ffffffff9091168152602001610278565b6104f46104ef366004613a57565b6116bb565b6040516102789190613dac565b6105096117dc565b6040516001600160e01b03199091168152602001610278565b6102b9610530366004613e12565b6001600160601b039182165f908152600d602090815260408083206001600160a01b0394909416835292905220541690565b6102e4610570366004613e3c565b611800565b6105f4610583366004613a57565b60408051608080820183525f8083526020808401829052838501829052606093840182905294815260038552839020835191820184525460ff80821683526101008204169482019490945263ffffffff620100008504811693820193909352600160301b9093049091169082015290565b6040516102789190613e6f565b61065b61060f366004613c5c565b6001600160601b039081165f908152600860209081526040808320546009835281842054600a845282852054600c90945291909320549284169490841693919091169163ffffffff1690565b6040516102789493929190613eb0565b6102b9610679366004613c5c565b6001600160601b039081165f908152600f60205260409020541690565b6103326106a4366004613a7f565b61182e565b5f546001600160a01b03166103ce565b6102b96106c7366004613aae565b61187a565b6106fb6106da366004613c5c565b6001600160601b03165f908152600b602052604090205464ffffffffff1690565b60405164ffffffffff9091168152602001610278565b6102b961071f366004613c5c565b6001600160601b039081165f908152600a60205260409020541690565b61033261074a366004613edf565b6118fb565b61076261075d366004613f1c565b61192e565b604080516001600160601b03938416815292909116602083015201610278565b610490610790366004613f69565b611bd0565b6102b96107a3366004613c5c565b6001600160601b039081165f908152600860205260409020541690565b6102b96107ce366004613d26565b611c50565b6108206107e1366004613c5c565b6001600160601b039081165f908152600860209081526040808320546009835281842054600b9093529220549183169392169164ffffffffff90911690565b604080516001600160601b03948516815293909216602084015264ffffffffff1690820152606001610278565b5f61085a335b5f36611f6e565b6001600160601b038084165f908152600a60205260409020541661087e8382612064565b156108bc576040516301a4b29960e11b81526001600160601b0380861660048301528085166024830152821660448201526064015b60405180910390fd5b6001600160601b038085165f908152600a60205260409020546108e09116846120e8565b91505f6108ed858461216d565b90507fd3383e52279373b5cfb83f1b6d4bd83e415313626f418a63a24251420d4b96df858585846040516109249493929190613eb0565b60405180910390a1505092915050565b61093d33610853565b60408051630711349960e31b81526001600160601b03841660048201526020602482018190529151610a1c9273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af41580156109a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c79190613f95565b60408051845160ff16602080830191909152850151818301529084015164ffffffffff16606080830191909152840151608082015260a0015b604051602081830303815290604052610a1760ff90565b61230d565b5050565b610a2933610853565b610a1c828261247c565b610a3c33610853565b5f610a468461264b565b6001600160601b038086165f9081526008602090815260408083205460099092529091205492935081169116610af986610a89610a83858561270d565b8761270d565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610ad0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af49190613fac565b612757565b6001600160601b038086165f90815260086020526040902054610b50918791610b2791610a8391168561270d565b6001600160601b038089165f90815260096020526040902054610b4b9116856120e8565b6128ed565b6001600160601b038681165f8181526008602090815260409182902054825193845286851691840191909152848416918301919091528683166060830152909116608082015263ffffffff841660a08201527ff3a6a30356c886f04fc20380e987b6e55a1e83a7926e1a21ee6001faced599c99060c0015b60405180910390a1505050505050565b610be133610853565b5f610beb8461264b565b6001600160601b038086165f90815260086020526040902054919250610c37918691610c1891168561270d565b6001600160601b038088165f9081526009602052604090205416612757565b6001600160601b038084165f90815260086020526040902054610c80918591610c6191168561270d565b6001600160601b038087165f90815260096020526040902054166128ed565b6001600160601b038085165f90815260086020526040908190205490517fa206257df4168139cff2e8dea9c50f2226429e81d904d5ee2b14e4f4656f30f592610cd3928892879291909116908690613eb0565b60405180910390a150505050565b5f8181526003602052604080822054905163b2466acf60e01b815261010090910460ff16600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf906024015b602060405180830381865af4158015610d45573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d699190613fd6565b92915050565b5f610d7933610853565b5f610d838561264b565b6001600160601b038681165f9081526009602052604090819020549051637931c81160e01b815286831660048201529116602482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af4158015610df6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e1a9190613fac565b6001600160601b038087165f90815260086020908152604080832054600990925290912054929450610e5792889291821691610af49116866120e8565b6001600160601b038085165f90815260086020908152604080832054600990925290912054610e90928792811691610b4b9116866120e8565b6001600160601b038086165f90815260096020526040908190205490517f18d78bbaea8f24a2aaa409f9f507204233a315575899fe3a802e20f15e81f5ef92610ee3928992879291909116908690613eb0565b60405180910390a1509392505050565b610efc33610853565b5f610f068461264b565b6001600160601b038086165f90815260086020908152604080832054600990925290912054929350610f4392879291821691610af491168661270d565b6001600160601b038084165f90815260086020908152604080832054600990925290912054610f7c928692811691610b4b91168661270d565b6001600160601b038085165f90815260096020526040908190205490517f9824c1941460e3f3dca0007309b88a95f4fb73bd9628ee7ad0a528b100983c7992610cd3928892879291909116908690613eb0565b610fd833610853565b610a1c73__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b03851660216040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af415801561104b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106f9190613f95565b60408051845164ffffffffff16602082015201610a00565b5f610d6973__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b03851660216040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af41580156110fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032d9190613f95565b60ff8381165f908152600160205260409081902054905163037c8cb160e51b81529116600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af4158015611181573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a59190613fd6565b156111ce5760405163ea01ac1f60e01b815230600482015260ff841660248201526044016108b3565b60ff8085169083161461120f5760405163bae587e160e01b815230600482015260ff80851660248301528086166044830152831660648201526084016108b3565b60ff8084165f908152600260209081526040808320888516845282528083208585168452909152902054166112725760405163f33b49a360e01b815230600482015260ff80851660248301528086166044830152821660648201526084016108b3565b50505050565b5f81815260036020526040902060010180546060919061129790613fef565b80601f01602080910402602001604051908101604052809291908181526020018280546112c390613fef565b801561130e5780601f106112e55761010080835404028352916020019161130e565b820191905f5260205f20905b8154815290600101906020018083116112f157829003601f168201915b50505050509050919050565b61132333610853565b6113e273__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b03851660216040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af4158015611396573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113ba9190613f95565b60408051845164ffffffffff166020820152015b60405160208183030381529060405261297d565b610a1c82612d38565b5f6113f533610853565b5f805f611402888761309e565b925092509250611412828661270d565b604051632c34efe560e11b81526001600160601b0382166004820152602481018990529094505f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015611474573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114989190613fac565b6001600160601b038a81165f818152600d602090815260408083206001600160a01b038e1680855290835281842080546001600160601b03199081168e891617909155858552600e84528285209185529083528184208054909116878716179055928252600f9052205491925061151a916115149116846120e8565b8261270d565b600f5f8b6001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af41580156115a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115cb9190614038565b6001600160601b038a165f9081526010602052604090819020805463ffffffff191663ffffffff9390931692909217909155517f4bd4ee2e64e523eeed623045709eb9e7828b3b191c978feb362e5b600c7d4dd990611633908b908a908a908a908a90614053565b60405180910390a150505050949350505050565b5f5433906001600160a01b0316811461167d5760405162d1953b60e31b81526001600160a01b03821660048201526024016108b3565b816001600160a01b03163b5f036116b2576040516361798f2f60e11b81526001600160a01b03831660048201526024016108b3565b610a1c826131ae565b6040805160c0810182525f91810182815260608083018490526080830184905260a0830193909352815260208101919091525f82815260036020908152604091829020825160c081018452815460ff808216958301958652610100820416606083015263ffffffff62010000820481166080840152600160301b9091041660a0820152928352600181018054919284019161175590613fef565b80601f016020809104026020016040519081016040528092919081815260200182805461178190613fef565b80156117cc5780601f106117a3576101008083540402835291602001916117cc565b820191905f5260205f20905b8154815290600101906020018083116117af57829003601f168201915b5050505050815250509050919050565b5f8054600160a01b900460ff166117f257505f90565b638fb3603760e01b5b905090565b61180933610853565b5f9283526007602090815260408085206001600160a01b039094168552929052912055565b60ff8181165f9081526001602052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401610d2a565b5f61188433610853565b6001600160601b038084165f908152600a60205260409020546118a891168361270d565b90505f6118b5848361216d565b90507f15ce01bb869f4f5440b921c09a1c73e043269a1e29f44d11a7a899ed51fa67b8848484846040516118ec9493929190613eb0565b60405180910390a15092915050565b60ff8084165f908152600260209081526040808320868516845282528083208585168452909152902054165b9392505050565b5f8061193933610853565b5f6119438761264b565b6001600160601b038881165f9081526008602052604090819020549051637931c81160e01b815288831660048201529116602482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af41580156119b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119da9190613fac565b6001600160601b038881165f9081526009602052604090819020549051637931c81160e01b815287831660048201529116602482015290935073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af4158015611a4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a719190613fac565b6001600160601b038089165f90815260086020526040902054919350611ac2918991611a9e9116866120e8565b6001600160601b03808b165f90815260096020526040902054610af49116866120e8565b6001600160601b038087165f90815260086020526040902054611b10918891611aec9116866120e8565b6001600160601b03808a165f90815260096020526040902054610b4b9116866120e8565b6001600160601b038088165f90815260086020526040908190205490517f4d67c2532a3443dbc1612538256c1fb6566afcd9729bf99254b26aef3b953cdd92611b63928b92889291909116908690613eb0565b60405180910390a16001600160601b038088165f90815260096020526040908190205490517f18d78bbaea8f24a2aaa409f9f507204233a315575899fe3a802e20f15e81f5ef92611bbe928b92879291909116908690613eb0565b60405180910390a15094509492505050565b604051637a400b6760e11b815260ff8316600482015260ff19821660248201525f9073__$4b9aaffa8d044614668dad578b824b8eee$__9063f48016ce90604401602060405180830381865af4158015611c2c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119279190613f95565b5f611c5a33610853565b5f805f611c67888761309e565b925092509250611c7782866120e8565b6040516355205f0f60e01b81526001600160601b03821660048201529094505f9073__$3bac17678db7ae928afa209f2f44deec9c$__90634c41dd9690611d09908b9084906355205f0f90602401602060405180830381865af4158015611ce0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d049190613f95565b613201565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015611d58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d7c9190613f95565b6040518263ffffffff1660e01b8152600401611d9a91815260200190565b602060405180830381865af4158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190613fac565b6001600160601b038a81165f818152600d602090815260408083206001600160a01b038e1680855290835281842080546001600160601b03199081168e891617909155858552600e84528285209185529083528184208054909116878716179055928252600f90522054919250611e55916115149116846120e8565b600f5f8b6001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015611ee2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f069190614038565b6001600160601b038a165f9081526010602052604090819020805463ffffffff191663ffffffff9390931692909217909155517ff9be485b3e2a5d1dc6dadfab8a9962c32cc55ac95a026b980452f8b13872378990611633908b908a908a908a908a90614053565b5f80611fa1611f845f546001600160a01b031690565b8630611f9360045f898b614094565b611f9c916140bb565b613215565b915091508161205d5763ffffffff81161561203a575f805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee90611ffb908890889088906004016140f3565b5f604051808303815f87803b158015612012575f80fd5b505af1158015612024573d5f803e3d5ffd5b50505f805460ff60a01b191690555061205d9050565b60405162d1953b60e31b81526001600160a01b03861660048201526024016108b3565b5050505050565b604051632601631360e21b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906398058c4c90604401602060405180830381865af41580156120c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119279190613fd6565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa22906044015b602060405180830381865af4158015612149573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119279190613fac565b6001600160601b0382165f908152600c602052604080822054905163010bd26b60e61b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__906342f49ac090602401602060405180830381865af41580156121d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121fd9190613fd6565b15612226576040516364692acf60e01b81526001600160601b03841660048201526024016108b3565b506001600160601b038281165f908152600c6020908152604080832054600a83529281902080546001600160601b03191694861694909417909355825163e8b7afe360e01b8152925163ffffffff9092169273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9263e8b7afe3926004808401939192918290030181865af41580156122b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122d89190614038565b6001600160601b03939093165f908152600c60205260409020805463ffffffff191663ffffffff909416939093179092555090565b5f612318848361331d565b5f858152600360205260409020909150600101612335848261417b565b50604051634b00e98f60e11b8152600481018590527f7bd0ab7f1746bd20a814d6705a46876c84f1aa2d35c80d8c173e268bd6d4b26c9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af41580156123a6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123ca9190614236565b604051630713cfad60e31b81526004810187905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af4158015612418573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061243c9190614251565b6040805160ff938416815260ff1990921660208301529185169181019190915233606082015232608082015263ffffffff831660a082015260c001610cd3565b60408051630711349960e31b81526001600160601b038416600482015260206024820181905291516125439273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af41580156124e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125069190613f95565b60408051845160ff16602080830191909152850151818301529084015164ffffffffff16606080830191909152840151608082015260a0016113ce565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af415801561258a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125ae9190614038565b6001600160601b0383165f908152601060205260409020805463ffffffff191663ffffffff929092169190911790556125e68261361a565b6005546040516346f0e8a760e11b81526001600160601b03841660048201526001600160a01b0390911690638de1d14e906024015f604051808303815f87803b158015612631575f80fd5b505af1158015612643573d5f803e3d5ffd5b505050505050565b6001600160601b0381165f908152600c60205260409081902054905163010bd26b60e61b815263ffffffff909116600482018190529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__906342f49ac090602401602060405180830381865af41580156126bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126df9190613fd6565b1561270857604051631f7e16df60e01b81526001600160601b03831660048201526024016108b3565b919050565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb359060440161212e565b6001600160601b038381165f90815260086020908152604080832080546001600160601b031990811688871617909155600983529281902080549093169385169390931790915581516356db0c1960e11b8152915173__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9263adb618329260048083019391928290030181865af41580156127e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061280b919061426c565b600b5f856001600160601b03166001600160601b031681526020019081526020015f205f6101000a81548164ffffffffff021916908364ffffffffff16021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015612894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128b89190614038565b6001600160601b03939093165f908152600c60205260409020805463ffffffff191663ffffffff909416939093179092555050565b6001600160601b038381165f90815260086020908152604080832080546001600160601b0319908116888716179091556009835292819020805490931693851693909317909155815163e8b7afe360e01b8152915173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9263e8b7afe39260048083019391928290030181865af4158015612894573d5f803e3d5ffd5b604051634b00e98f60e11b8152600481018390525f9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af41580156129cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129f19190614236565b60405163037c8cb160e51b815260ff8216600482015290915073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__90636f91962090602401602060405180830381865af4158015612a44573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a689190613fd6565b15612a8b576040516307014a8d60e51b815260ff821660048201526024016108b3565b5f83815260036020526040908190208054915163b2466acf60e01b815261010090920460ff1660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af4158015612af1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b159190613fd6565b15612b3f57604051633f92eac960e21b81526004810185905260ff831660248201526044016108b3565b612b488261182e565b612b6a57604051636cb0978b60e11b815260ff831660048201526024016108b3565b5f612b7361392e565b60ff8085165f908152600160205260408120549293509116835460ff86811661ffff1990921691909117610100918316919091021769ffffffffffffffff000019166201000063ffffffff851690810269ffffffff000000000000191691909117600160301b919091021784555f878152600360205260409020909150600101612bfd868261417b565b50604051634b00e98f60e11b8152600481018790527ffcb75eb7b317145f986c763e1a3eab5f9b4dbaf7955504f70f986d799c3ab39d9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af4158015612c6e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c929190614236565b604051630713cfad60e31b81526004810189905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af4158015612ce0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d049190614251565b6040805160ff938416815260ff1990921660208301529184169181019190915233606082015232608082015260a001610bc8565b6001600160601b0381165f908152600c60205260409081902054905163d15b589360e01b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063d15b589390602401602060405180830381865af4158015612da5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dc99190613fd6565b15612df2576040516366d785a360e11b81526001600160601b03821660048201526024016108b3565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015612e39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e5d9190613fac565b60085f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015612eea573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f0e9190613fac565b60095f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612f9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fbf919061426c565b600b5f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a81548164ffffffffff021916908364ffffffffff16021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613048573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061306c9190614038565b6001600160601b03919091165f908152600c60205260409020805463ffffffff191663ffffffff909216919091179055565b6001600160601b0382165f9081526010602052604080822054905163010bd26b60e61b815263ffffffff909116600482018190529190819073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__906342f49ac090602401602060405180830381865af4158015613110573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131349190613fd6565b1561315d576040516362540e0360e11b81526001600160601b03861660048201526024016108b3565b50506001600160601b039283165f818152600d602090815260408083206001600160a01b0390961680845295825280832054938352600e825280832095835294905292909220549093918316921690565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b5f6119278383670de0b6b3a764000061399a565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b179052516132839190614287565b5f60405180830381855afa9150503d805f81146132bb576040519150601f19603f3d011682016040523d82523d5f602084013e6132c0565b606091505b509150915081156133125760408151106132f257808060200190518101906132e8919061429d565b9094509250613312565b6020815110613312578080602001905181019061330f9190613fd6565b93505b505094509492505050565b60405163037c8cb160e51b815260ff821660048201525f9073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af415801561336f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133939190613fd6565b156133b45760405163093b89e160e11b8152600481018490526024016108b3565b505f82815260036020526040908190208054915163037c8cb160e51b8152610100830460ff16600482018190526201000090930463ffffffff16929073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af415801561342a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061344e9190613fd6565b1561346f5760405163566ebf7960e01b8152600481018690526024016108b3565b60ff808516146135ec57815461348b90829060ff16818761111f565b815461ff00191661010060ff861602178255604051634b00e98f60e11b8152600481018690527fe41a93c15e024a0b2371127599959a8e543dd6a8d820238e906c93a3004248fa9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af415801561350d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135319190614236565b604051630713cfad60e31b81526004810188905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af415801561357f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135a39190614251565b6040805160ff938416815260ff1990921660208301528285169082015290861660608201523360808201523260a082015263ffffffff851660c082015260e00160405180910390a15b6135f461392e565b825463ffffffff91909116620100000265ffffffff000019909116179091555092915050565b6001600160601b0381165f908152600c60205260409081902054905163d15b589360e01b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063d15b589390602401602060405180830381865af4158015613687573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136ab9190613fd6565b156136d4576040516366d785a360e11b81526001600160601b03821660048201526024016108b3565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af415801561371b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061373f9190613fac565b60085f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156137cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137f09190613fac565b60095f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af415801561387d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138a19190613fac565b600a5f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613048573d5f803e3d5ffd5b5f73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613976573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117fb9190614038565b5f80805f19858709858702925082811083820303915050805f036139d1578382816139c7576139c76142c7565b0492505050611927565b8084116139f057604051629540d960e61b815260040160405180910390fd5b5f8486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f60208284031215613a67575f80fd5b5035919050565b60ff81168114613a7c575f80fd5b50565b5f60208284031215613a8f575f80fd5b813561192781613a6e565b6001600160601b0381168114613a7c575f80fd5b5f8060408385031215613abf575f80fd5b8235613aca81613a9a565b91506020830135613ada81613a9a565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b64ffffffffff81168114613a7c575f80fd5b5f8082840360a0811215613b1d575f80fd5b8335613b2881613a9a565b92506080601f1982011215613b3b575f80fd5b506040516080810167ffffffffffffffff81118282101715613b5f57613b5f613ae5565b6040526020840135613b7081613a6e565b8152604084013560208201526060840135613b8a81613af9565b60408201526080939093013560608401525092909150565b5f805f60608486031215613bb4575f80fd5b8335613bbf81613a9a565b92506020840135613bcf81613a9a565b91506040840135613bdf81613a9a565b809150509250925092565b5f808284036040811215613bfc575f80fd5b8335613c0781613a9a565b92506020601f1982011215613c1a575f80fd5b506040516020810167ffffffffffffffff81118282101715613c3e57613c3e613ae5565b6040526020840135613c4f81613af9565b8152919491935090915050565b5f60208284031215613c6c575f80fd5b813561192781613a9a565b5f805f8060808587031215613c8a575f80fd5b8435613c9581613a6e565b93506020850135613ca581613a6e565b92506040850135613cb581613a6e565b91506060850135613cc581613a6e565b939692955090935050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6119276020830184613cd0565b80356001600160a01b0381168114612708575f80fd5b5f805f8060808587031215613d39575f80fd5b8435613d4481613a9a565b935060208501359250613d5960408601613d10565b91506060850135613cc581613a9a565b5f60208284031215613d79575f80fd5b61192782613d10565b5f8060408385031215613d93575f80fd5b82359150613da360208401613d10565b90509250929050565b60208152613df160208201835160ff815116825260ff602082015116602083015263ffffffff604082015116604083015263ffffffff60608201511660608301525050565b5f602083015160a080840152613e0a60c0840182613cd0565b949350505050565b5f8060408385031215613e23575f80fd5b8235613e2e81613a9a565b9150613da360208401613d10565b5f805f60608486031215613e4e575f80fd5b83359250613e5e60208501613d10565b929592945050506040919091013590565b60808101610d69828460ff815116825260ff602082015116602083015263ffffffff604082015116604083015263ffffffff60608201511660608301525050565b6001600160601b03948516815292841660208401529216604082015263ffffffff909116606082015260800190565b5f805f60608486031215613ef1575f80fd5b8335613efc81613a6e565b92506020840135613f0c81613a6e565b91506040840135613bdf81613a6e565b5f805f8060808587031215613f2f575f80fd5b8435613f3a81613a9a565b93506020850135613f4a81613a9a565b92506040850135613d5981613a9a565b60ff1981168114613a7c575f80fd5b5f8060408385031215613f7a575f80fd5b8235613f8581613a6e565b91506020830135613ada81613f5a565b5f60208284031215613fa5575f80fd5b5051919050565b5f60208284031215613fbc575f80fd5b815161192781613a9a565b80518015158114612708575f80fd5b5f60208284031215613fe6575f80fd5b61192782613fc7565b600181811c9082168061400357607f821691505b60208210810361402157634e487b7160e01b5f52602260045260245ffd5b50919050565b63ffffffff81168114613a7c575f80fd5b5f60208284031215614048575f80fd5b815161192781614027565b6001600160601b0395861681526001600160a01b039490941660208501529184166040840152909216606082015263ffffffff909116608082015260a00190565b5f80858511156140a2575f80fd5b838611156140ae575f80fd5b5050820193919092039150565b80356001600160e01b031981169060048410156140ec576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b601f82111561417657805f5260205f20601f840160051c810160208510156141575750805b601f840160051c820191505b8181101561205d575f8155600101614163565b505050565b815167ffffffffffffffff81111561419557614195613ae5565b6141a9816141a38454613fef565b84614132565b6020601f8211600181146141db575f83156141c45750848201515b5f19600385901b1c1916600184901b17845561205d565b5f84815260208120601f198516915b8281101561420a57878501518255602094850194600190920191016141ea565b508482101561422757868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215614246575f80fd5b815161192781613a6e565b5f60208284031215614261575f80fd5b815161192781613f5a565b5f6020828403121561427c575f80fd5b815161192781613af9565b5f82518060208501845e5f920191825250919050565b5f80604083850312156142ae575f80fd5b6142b783613fc7565b91506020830151613ada81614027565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220c8653bfa78b8d5939a4bffadc47903eb73e74713f7a07e8f84583f3b9360894964736f6c634300081a00336080604052348015600e575f80fd5b50600480546001600160a01b0319163317905561071e8061002e5f395ff3fe608060405234801561000f575f80fd5b5060043610610090575f3560e01c80638de1d14e116100635780638de1d14e1461010f578063954a317214610122578063996f8d9114610135578063ddfe867f1461014b578063f2b2978114610153575f80fd5b8063042f9da3146100945780634f9c1c09146100a9578063706e9ba9146100d1578063777d1857146100fc575b5f80fd5b6100a76100a2366004610627565b610166565b005b6100bc6100b736600461065e565b610221565b60405190151581526020015b60405180910390f35b6100e46100df366004610680565b6102ab565b6040516001600160601b0390911681526020016100c8565b6100bc61010a36600461065e565b610327565b6100a761011d36600461065e565b610370565b6100a7610130366004610627565b610491565b61013d61051b565b6040519081526020016100c8565b61013d610595565b6100e4610161366004610680565b6105cf565b6004546001600160a01b031633146101ae5760048054604051631d1f01d960e31b81526001600160a01b03909116918101919091523360248201526044015b60405180910390fd5b604051631461054360e31b8152600260048201526001600160601b038216602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063a3082a18906044015b5f6040518083038186803b158015610207575f80fd5b505af4158015610219573d5f803e3d5ffd5b505050505050565b604051632bfdd6b960e01b81525f600482018190526001600160601b03831660248301529073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90632bfdd6b9906044015b602060405180830381865af4158015610281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a59190610697565b92915050565b60405163e797d89960e01b81525f60048201819052602482018390529073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d899906044015b602060405180830381865af4158015610303573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a591906106b6565b604051632bfdd6b960e01b8152600260048201526001600160601b03821660248201525f9073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90632bfdd6b990604401610266565b6004546001600160a01b031633146103b35760048054604051631d1f01d960e31b81526001600160a01b03909116918101919091523360248201526044016101a5565b604051631461054360e31b81525f60048201526001600160601b038216602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063a3082a18906044015f6040518083038186803b15801561040a575f80fd5b505af415801561041c573d5f803e3d5ffd5b5050604051631461054360e31b8152600260048201526001600160601b038416602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__925063a3082a1891506044015f6040518083038186803b158015610478575f80fd5b505af415801561048a573d5f803e3d5ffd5b5050505050565b6004546001600160a01b031633146104d45760048054604051631d1f01d960e31b81526001600160a01b03909116918101919091523360248201526044016101a5565b60405163539eabab60e11b8152600260048201526001600160601b038216602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063a73d5756906044016101f1565b604051638b6233dd60e01b8152600260048201525f9073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd906024015b602060405180830381865af415801561056c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061059091906106d1565b905090565b604051638b6233dd60e01b81525f600482018190529073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd90602401610551565b60405163e797d89960e01b815260026004820152602481018290525f9073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d899906044016102e8565b6001600160601b0381168114610624575f80fd5b50565b5f8060408385031215610638575f80fd5b823561064381610610565b9150602083013561065381610610565b809150509250929050565b5f6020828403121561066e575f80fd5b813561067981610610565b9392505050565b5f60208284031215610690575f80fd5b5035919050565b5f602082840312156106a7575f80fd5b81518015158114610679575f80fd5b5f602082840312156106c6575f80fd5b815161067981610610565b5f602082840312156106e1575f80fd5b505191905056fea2646970667358221220180ab0edf068dd648eb55f664caa70d135bca97ab927f0921a4d83f026880bf464736f6c634300081a0033",
|
1690
|
-
"deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061023f575f3560e01c80637b21556111610135578063bf7e214f116100b4578063eb98e8a011610079578063eb98e8a01461074f578063f48016ce14610782578063fb14543214610795578063fb39549c146107c0578063ff86054d146107d3575f80fd5b8063bf7e214f146106a9578063d7537c37146106b9578063dfb7e337146106cc578063e067350f14610711578063e9e96c701461073c575f80fd5b80639a726364116100fa5780639a72636414610562578063a5961b4c14610575578063b04fa50614610601578063beba11201461066b578063bf1db3f914610696575f80fd5b80637b2155611461045b578063828227de1461049e5780638eaa6ac0146104e15780638fb360371461050157806391a2059f14610522575f80fd5b80634b51da0c116101c157806362841be21161018657806362841be2146103e65780636291423a146103f9578063717f1b981461040a57806377f91851146104355780637a9e5e4b14610448575f80fd5b80634b51da0c146103685780634f9c1c091461037b57806354f1fa811461038e57806354f6127f146103a15780635cce3fa1146103c1575f80fd5b806330f441991161020757806330f44199146102f95780633861317f1461030c57806338a699a41461031f5780633fbdfe32146103425780634a2101d114610355575f80fd5b806309648a9d146102435780630d35818114610281578063136cfef7146102a65780631807a488146102d15780632df8be9b146102e6575b5f80fd5b61026a610251366004613a57565b5f90815260036020526040902054610100900460ff1690565b60405160ff90911681526020015b60405180910390f35b61026a61028f366004613a7f565b60ff9081165f908152600160205260409020541690565b6102b96102b4366004613aae565b61084d565b6040516001600160601b039091168152602001610278565b6102e46102df366004613b0b565b610934565b005b6102e46102f4366004613b0b565b610a20565b6102e4610307366004613ba2565b610a33565b6102e461031a366004613ba2565b610bd8565b61033261032d366004613a57565b610ce1565b6040519015158152602001610278565b6102b9610350366004613ba2565b610d6f565b6102e4610363366004613ba2565b610ef3565b6102e4610376366004613bea565b610fcf565b610332610389366004613c5c565b611087565b6102e461039c366004613c77565b61111f565b6103b46103af366004613a57565b611278565b6040516102789190613cfe565b6005546001600160a01b03165b6040516001600160a01b039091168152602001610278565b6102e46103f4366004613bea565b61131a565b6006546001600160a01b03166103ce565b6102b9610418366004613c5c565b6001600160601b039081165f908152600960205260409020541690565b6102b9610443366004613d26565b6113eb565b6102e4610456366004613d69565b611647565b610490610469366004613d82565b5f9182526007602090815260408084206001600160a01b0393909316845291905290205490565b604051908152602001610278565b6104cc6104ac366004613c5c565b6001600160601b03165f908152600c602052604090205463ffffffff1690565b60405163ffffffff9091168152602001610278565b6104f46104ef366004613a57565b6116bb565b6040516102789190613dac565b6105096117dc565b6040516001600160e01b03199091168152602001610278565b6102b9610530366004613e12565b6001600160601b039182165f908152600d602090815260408083206001600160a01b0394909416835292905220541690565b6102e4610570366004613e3c565b611800565b6105f4610583366004613a57565b60408051608080820183525f8083526020808401829052838501829052606093840182905294815260038552839020835191820184525460ff80821683526101008204169482019490945263ffffffff620100008504811693820193909352600160301b9093049091169082015290565b6040516102789190613e6f565b61065b61060f366004613c5c565b6001600160601b039081165f908152600860209081526040808320546009835281842054600a845282852054600c90945291909320549284169490841693919091169163ffffffff1690565b6040516102789493929190613eb0565b6102b9610679366004613c5c565b6001600160601b039081165f908152600f60205260409020541690565b6103326106a4366004613a7f565b61182e565b5f546001600160a01b03166103ce565b6102b96106c7366004613aae565b61187a565b6106fb6106da366004613c5c565b6001600160601b03165f908152600b602052604090205464ffffffffff1690565b60405164ffffffffff9091168152602001610278565b6102b961071f366004613c5c565b6001600160601b039081165f908152600a60205260409020541690565b61033261074a366004613edf565b6118fb565b61076261075d366004613f1c565b61192e565b604080516001600160601b03938416815292909116602083015201610278565b610490610790366004613f69565b611bd0565b6102b96107a3366004613c5c565b6001600160601b039081165f908152600860205260409020541690565b6102b96107ce366004613d26565b611c50565b6108206107e1366004613c5c565b6001600160601b039081165f908152600860209081526040808320546009835281842054600b9093529220549183169392169164ffffffffff90911690565b604080516001600160601b03948516815293909216602084015264ffffffffff1690820152606001610278565b5f61085a335b5f36611f6e565b6001600160601b038084165f908152600a60205260409020541661087e8382612064565b156108bc576040516301a4b29960e11b81526001600160601b0380861660048301528085166024830152821660448201526064015b60405180910390fd5b6001600160601b038085165f908152600a60205260409020546108e09116846120e8565b91505f6108ed858461216d565b90507fd3383e52279373b5cfb83f1b6d4bd83e415313626f418a63a24251420d4b96df858585846040516109249493929190613eb0565b60405180910390a1505092915050565b61093d33610853565b60408051630711349960e31b81526001600160601b03841660048201526020602482018190529151610a1c9273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af41580156109a3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109c79190613f95565b60408051845160ff16602080830191909152850151818301529084015164ffffffffff16606080830191909152840151608082015260a0015b604051602081830303815290604052610a1760ff90565b61230d565b5050565b610a2933610853565b610a1c828261247c565b610a3c33610853565b5f610a468461264b565b6001600160601b038086165f9081526008602090815260408083205460099092529091205492935081169116610af986610a89610a83858561270d565b8761270d565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610ad0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610af49190613fac565b612757565b6001600160601b038086165f90815260086020526040902054610b50918791610b2791610a8391168561270d565b6001600160601b038089165f90815260096020526040902054610b4b9116856120e8565b6128ed565b6001600160601b038681165f8181526008602090815260409182902054825193845286851691840191909152848416918301919091528683166060830152909116608082015263ffffffff841660a08201527ff3a6a30356c886f04fc20380e987b6e55a1e83a7926e1a21ee6001faced599c99060c0015b60405180910390a1505050505050565b610be133610853565b5f610beb8461264b565b6001600160601b038086165f90815260086020526040902054919250610c37918691610c1891168561270d565b6001600160601b038088165f9081526009602052604090205416612757565b6001600160601b038084165f90815260086020526040902054610c80918591610c6191168561270d565b6001600160601b038087165f90815260096020526040902054166128ed565b6001600160601b038085165f90815260086020526040908190205490517fa206257df4168139cff2e8dea9c50f2226429e81d904d5ee2b14e4f4656f30f592610cd3928892879291909116908690613eb0565b60405180910390a150505050565b5f8181526003602052604080822054905163b2466acf60e01b815261010090910460ff16600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf906024015b602060405180830381865af4158015610d45573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610d699190613fd6565b92915050565b5f610d7933610853565b5f610d838561264b565b6001600160601b038681165f9081526009602052604090819020549051637931c81160e01b815286831660048201529116602482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af4158015610df6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e1a9190613fac565b6001600160601b038087165f90815260086020908152604080832054600990925290912054929450610e5792889291821691610af49116866120e8565b6001600160601b038085165f90815260086020908152604080832054600990925290912054610e90928792811691610b4b9116866120e8565b6001600160601b038086165f90815260096020526040908190205490517f18d78bbaea8f24a2aaa409f9f507204233a315575899fe3a802e20f15e81f5ef92610ee3928992879291909116908690613eb0565b60405180910390a1509392505050565b610efc33610853565b5f610f068461264b565b6001600160601b038086165f90815260086020908152604080832054600990925290912054929350610f4392879291821691610af491168661270d565b6001600160601b038084165f90815260086020908152604080832054600990925290912054610f7c928692811691610b4b91168661270d565b6001600160601b038085165f90815260096020526040908190205490517f9824c1941460e3f3dca0007309b88a95f4fb73bd9628ee7ad0a528b100983c7992610cd3928892879291909116908690613eb0565b610fd833610853565b610a1c73__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b03851660216040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af415801561104b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061106f9190613f95565b60408051845164ffffffffff16602082015201610a00565b5f610d6973__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b03851660216040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af41580156110fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061032d9190613f95565b60ff8381165f908152600160205260409081902054905163037c8cb160e51b81529116600482015273__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af4158015611181573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111a59190613fd6565b156111ce5760405163ea01ac1f60e01b815230600482015260ff841660248201526044016108b3565b60ff8085169083161461120f5760405163bae587e160e01b815230600482015260ff80851660248301528086166044830152831660648201526084016108b3565b60ff8084165f908152600260209081526040808320888516845282528083208585168452909152902054166112725760405163f33b49a360e01b815230600482015260ff80851660248301528086166044830152821660648201526084016108b3565b50505050565b5f81815260036020526040902060010180546060919061129790613fef565b80601f01602080910402602001604051908101604052809291908181526020018280546112c390613fef565b801561130e5780601f106112e55761010080835404028352916020019161130e565b820191905f5260205f20905b8154815290600101906020018083116112f157829003601f168201915b50505050509050919050565b61132333610853565b6113e273__$94a2c899be079b00d952d0d84fffaa5c34$__633889a4c86001600160601b03851660216040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401602060405180830381865af4158015611396573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113ba9190613f95565b60408051845164ffffffffff166020820152015b60405160208183030381529060405261297d565b610a1c82612d38565b5f6113f533610853565b5f805f611402888761309e565b925092509250611412828661270d565b604051632c34efe560e11b81526001600160601b0382166004820152602481018990529094505f9073__$3bac17678db7ae928afa209f2f44deec9c$__90635869dfca90604401602060405180830381865af4158015611474573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114989190613fac565b6001600160601b038a81165f818152600d602090815260408083206001600160a01b038e1680855290835281842080546001600160601b03199081168e891617909155858552600e84528285209185529083528184208054909116878716179055928252600f9052205491925061151a916115149116846120e8565b8261270d565b600f5f8b6001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af41580156115a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115cb9190614038565b6001600160601b038a165f9081526010602052604090819020805463ffffffff191663ffffffff9390931692909217909155517f4bd4ee2e64e523eeed623045709eb9e7828b3b191c978feb362e5b600c7d4dd990611633908b908a908a908a908a90614053565b60405180910390a150505050949350505050565b5f5433906001600160a01b0316811461167d5760405162d1953b60e31b81526001600160a01b03821660048201526024016108b3565b816001600160a01b03163b5f036116b2576040516361798f2f60e11b81526001600160a01b03831660048201526024016108b3565b610a1c826131ae565b6040805160c0810182525f91810182815260608083018490526080830184905260a0830193909352815260208101919091525f82815260036020908152604091829020825160c081018452815460ff808216958301958652610100820416606083015263ffffffff62010000820481166080840152600160301b9091041660a0820152928352600181018054919284019161175590613fef565b80601f016020809104026020016040519081016040528092919081815260200182805461178190613fef565b80156117cc5780601f106117a3576101008083540402835291602001916117cc565b820191905f5260205f20905b8154815290600101906020018083116117af57829003601f168201915b5050505050815250509050919050565b5f8054600160a01b900460ff166117f257505f90565b638fb3603760e01b5b905090565b61180933610853565b5f9283526007602090815260408085206001600160a01b039094168552929052912055565b60ff8181165f9081526001602052604080822054905163b2466acf60e01b8152921660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401610d2a565b5f61188433610853565b6001600160601b038084165f908152600a60205260409020546118a891168361270d565b90505f6118b5848361216d565b90507f15ce01bb869f4f5440b921c09a1c73e043269a1e29f44d11a7a899ed51fa67b8848484846040516118ec9493929190613eb0565b60405180910390a15092915050565b60ff8084165f908152600260209081526040808320868516845282528083208585168452909152902054165b9392505050565b5f8061193933610853565b5f6119438761264b565b6001600160601b038881165f9081526008602052604090819020549051637931c81160e01b815288831660048201529116602482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af41580156119b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119da9190613fac565b6001600160601b038881165f9081526009602052604090819020549051637931c81160e01b815287831660048201529116602482015290935073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af4158015611a4d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a719190613fac565b6001600160601b038089165f90815260086020526040902054919350611ac2918991611a9e9116866120e8565b6001600160601b03808b165f90815260096020526040902054610af49116866120e8565b6001600160601b038087165f90815260086020526040902054611b10918891611aec9116866120e8565b6001600160601b03808a165f90815260096020526040902054610b4b9116866120e8565b6001600160601b038088165f90815260086020526040908190205490517f4d67c2532a3443dbc1612538256c1fb6566afcd9729bf99254b26aef3b953cdd92611b63928b92889291909116908690613eb0565b60405180910390a16001600160601b038088165f90815260096020526040908190205490517f18d78bbaea8f24a2aaa409f9f507204233a315575899fe3a802e20f15e81f5ef92611bbe928b92879291909116908690613eb0565b60405180910390a15094509492505050565b604051637a400b6760e11b815260ff8316600482015260ff19821660248201525f9073__$4b9aaffa8d044614668dad578b824b8eee$__9063f48016ce90604401602060405180830381865af4158015611c2c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119279190613f95565b5f611c5a33610853565b5f805f611c67888761309e565b925092509250611c7782866120e8565b6040516355205f0f60e01b81526001600160601b03821660048201529094505f9073__$3bac17678db7ae928afa209f2f44deec9c$__90634c41dd9690611d09908b9084906355205f0f90602401602060405180830381865af4158015611ce0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d049190613f95565b613201565b604051632255341b60e11b8152600481019190915273__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015611d58573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d7c9190613f95565b6040518263ffffffff1660e01b8152600401611d9a91815260200190565b602060405180830381865af4158015611db5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd99190613fac565b6001600160601b038a81165f818152600d602090815260408083206001600160a01b038e1680855290835281842080546001600160601b03199081168e891617909155858552600e84528285209185529083528184208054909116878716179055928252600f90522054919250611e55916115149116846120e8565b600f5f8b6001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015611ee2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f069190614038565b6001600160601b038a165f9081526010602052604090819020805463ffffffff191663ffffffff9390931692909217909155517ff9be485b3e2a5d1dc6dadfab8a9962c32cc55ac95a026b980452f8b13872378990611633908b908a908a908a908a90614053565b5f80611fa1611f845f546001600160a01b031690565b8630611f9360045f898b614094565b611f9c916140bb565b613215565b915091508161205d5763ffffffff81161561203a575f805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee90611ffb908890889088906004016140f3565b5f604051808303815f87803b158015612012575f80fd5b505af1158015612024573d5f803e3d5ffd5b50505f805460ff60a01b191690555061205d9050565b60405162d1953b60e31b81526001600160a01b03861660048201526024016108b3565b5050505050565b604051632601631360e21b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906398058c4c90604401602060405180830381865af41580156120c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119279190613fd6565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa22906044015b602060405180830381865af4158015612149573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119279190613fac565b6001600160601b0382165f908152600c602052604080822054905163010bd26b60e61b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__906342f49ac090602401602060405180830381865af41580156121d9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121fd9190613fd6565b15612226576040516364692acf60e01b81526001600160601b03841660048201526024016108b3565b506001600160601b038281165f908152600c6020908152604080832054600a83529281902080546001600160601b03191694861694909417909355825163e8b7afe360e01b8152925163ffffffff9092169273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9263e8b7afe3926004808401939192918290030181865af41580156122b4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906122d89190614038565b6001600160601b03939093165f908152600c60205260409020805463ffffffff191663ffffffff909416939093179092555090565b5f612318848361331d565b5f858152600360205260409020909150600101612335848261417b565b50604051634b00e98f60e11b8152600481018590527f7bd0ab7f1746bd20a814d6705a46876c84f1aa2d35c80d8c173e268bd6d4b26c9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af41580156123a6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123ca9190614236565b604051630713cfad60e31b81526004810187905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af4158015612418573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061243c9190614251565b6040805160ff938416815260ff1990921660208301529185169181019190915233606082015232608082015263ffffffff831660a082015260c001610cd3565b60408051630711349960e31b81526001600160601b038416600482015260206024820181905291516125439273__$94a2c899be079b00d952d0d84fffaa5c34$__92633889a4c892604480830193928290030181865af41580156124e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125069190613f95565b60408051845160ff16602080830191909152850151818301529084015164ffffffffff16606080830191909152840151608082015260a0016113ce565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af415801561258a573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125ae9190614038565b6001600160601b0383165f908152601060205260409020805463ffffffff191663ffffffff929092169190911790556125e68261361a565b6005546040516346f0e8a760e11b81526001600160601b03841660048201526001600160a01b0390911690638de1d14e906024015f604051808303815f87803b158015612631575f80fd5b505af1158015612643573d5f803e3d5ffd5b505050505050565b6001600160601b0381165f908152600c60205260409081902054905163010bd26b60e61b815263ffffffff909116600482018190529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__906342f49ac090602401602060405180830381865af41580156126bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906126df9190613fd6565b1561270857604051631f7e16df60e01b81526001600160601b03831660048201526024016108b3565b919050565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb359060440161212e565b6001600160601b038381165f90815260086020908152604080832080546001600160601b031990811688871617909155600983529281902080549093169385169390931790915581516356db0c1960e11b8152915173__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9263adb618329260048083019391928290030181865af41580156127e7573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061280b919061426c565b600b5f856001600160601b03166001600160601b031681526020019081526020015f205f6101000a81548164ffffffffff021916908364ffffffffff16021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015612894573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128b89190614038565b6001600160601b03939093165f908152600c60205260409020805463ffffffff191663ffffffff909416939093179092555050565b6001600160601b038381165f90815260086020908152604080832080546001600160601b0319908116888716179091556009835292819020805490931693851693909317909155815163e8b7afe360e01b8152915173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9263e8b7afe39260048083019391928290030181865af4158015612894573d5f803e3d5ffd5b604051634b00e98f60e11b8152600481018390525f9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af41580156129cd573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129f19190614236565b60405163037c8cb160e51b815260ff8216600482015290915073__$0d958e68cba84670b8f4a3f2f2686b1c6b$__90636f91962090602401602060405180830381865af4158015612a44573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a689190613fd6565b15612a8b576040516307014a8d60e51b815260ff821660048201526024016108b3565b5f83815260036020526040908190208054915163b2466acf60e01b815261010090920460ff1660048301529073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__9063b2466acf90602401602060405180830381865af4158015612af1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b159190613fd6565b15612b3f57604051633f92eac960e21b81526004810185905260ff831660248201526044016108b3565b612b488261182e565b612b6a57604051636cb0978b60e11b815260ff831660048201526024016108b3565b5f612b7361392e565b60ff8085165f908152600160205260408120549293509116835460ff86811661ffff1990921691909117610100918316919091021769ffffffffffffffff000019166201000063ffffffff851690810269ffffffff000000000000191691909117600160301b919091021784555f878152600360205260409020909150600101612bfd868261417b565b50604051634b00e98f60e11b8152600481018790527ffcb75eb7b317145f986c763e1a3eab5f9b4dbaf7955504f70f986d799c3ab39d9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af4158015612c6e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c929190614236565b604051630713cfad60e31b81526004810189905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af4158015612ce0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d049190614251565b6040805160ff938416815260ff1990921660208301529184169181019190915233606082015232608082015260a001610bc8565b6001600160601b0381165f908152600c60205260409081902054905163d15b589360e01b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063d15b589390602401602060405180830381865af4158015612da5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612dc99190613fd6565b15612df2576040516366d785a360e11b81526001600160601b03821660048201526024016108b3565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015612e39573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e5d9190613fac565b60085f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015612eea573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f0e9190613fac565b60095f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612f9b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fbf919061426c565b600b5f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a81548164ffffffffff021916908364ffffffffff16021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613048573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061306c9190614038565b6001600160601b03919091165f908152600c60205260409020805463ffffffff191663ffffffff909216919091179055565b6001600160601b0382165f9081526010602052604080822054905163010bd26b60e61b815263ffffffff909116600482018190529190819073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__906342f49ac090602401602060405180830381865af4158015613110573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131349190613fd6565b1561315d576040516362540e0360e11b81526001600160601b03861660048201526024016108b3565b50506001600160601b039283165f818152600d602090815260408083206001600160a01b0390961680845295825280832054938352600e825280832095835294905292909220549093918316921690565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b5f6119278383670de0b6b3a764000061399a565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b179052516132839190614287565b5f60405180830381855afa9150503d805f81146132bb576040519150601f19603f3d011682016040523d82523d5f602084013e6132c0565b606091505b509150915081156133125760408151106132f257808060200190518101906132e8919061429d565b9094509250613312565b6020815110613312578080602001905181019061330f9190613fd6565b93505b505094509492505050565b60405163037c8cb160e51b815260ff821660048201525f9073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af415801561336f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133939190613fd6565b156133b45760405163093b89e160e11b8152600481018490526024016108b3565b505f82815260036020526040908190208054915163037c8cb160e51b8152610100830460ff16600482018190526201000090930463ffffffff16929073__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__90636f91962090602401602060405180830381865af415801561342a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061344e9190613fd6565b1561346f5760405163566ebf7960e01b8152600481018690526024016108b3565b60ff808516146135ec57815461348b90829060ff16818761111f565b815461ff00191661010060ff861602178255604051634b00e98f60e11b8152600481018690527fe41a93c15e024a0b2371127599959a8e543dd6a8d820238e906c93a3004248fa9073__$4b9aaffa8d044614668dad578b824b8eee$__90639601d31e90602401602060405180830381865af415801561350d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135319190614236565b604051630713cfad60e31b81526004810188905273__$4b9aaffa8d044614668dad578b824b8eee$__9063389e7d6890602401602060405180830381865af415801561357f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135a39190614251565b6040805160ff938416815260ff1990921660208301528285169082015290861660608201523360808201523260a082015263ffffffff851660c082015260e00160405180910390a15b6135f461392e565b825463ffffffff91909116620100000265ffffffff000019909116179091555092915050565b6001600160601b0381165f908152600c60205260409081902054905163d15b589360e01b815263ffffffff909116600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063d15b589390602401602060405180830381865af4158015613687573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136ab9190613fd6565b156136d4576040516366d785a360e11b81526001600160601b03821660048201526024016108b3565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af415801561371b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061373f9190613fac565b60085f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156137cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137f09190613fac565b60095f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af415801561387d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138a19190613fac565b600a5f836001600160601b03166001600160601b031681526020019081526020015f205f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613048573d5f803e3d5ffd5b5f73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__63e8b7afe36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613976573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117fb9190614038565b5f80805f19858709858702925082811083820303915050805f036139d1578382816139c7576139c76142c7565b0492505050611927565b8084116139f057604051629540d960e61b815260040160405180910390fd5b5f8486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091025f889003889004909101858311909403939093029303949094049190911702949350505050565b5f60208284031215613a67575f80fd5b5035919050565b60ff81168114613a7c575f80fd5b50565b5f60208284031215613a8f575f80fd5b813561192781613a6e565b6001600160601b0381168114613a7c575f80fd5b5f8060408385031215613abf575f80fd5b8235613aca81613a9a565b91506020830135613ada81613a9a565b809150509250929050565b634e487b7160e01b5f52604160045260245ffd5b64ffffffffff81168114613a7c575f80fd5b5f8082840360a0811215613b1d575f80fd5b8335613b2881613a9a565b92506080601f1982011215613b3b575f80fd5b506040516080810167ffffffffffffffff81118282101715613b5f57613b5f613ae5565b6040526020840135613b7081613a6e565b8152604084013560208201526060840135613b8a81613af9565b60408201526080939093013560608401525092909150565b5f805f60608486031215613bb4575f80fd5b8335613bbf81613a9a565b92506020840135613bcf81613a9a565b91506040840135613bdf81613a9a565b809150509250925092565b5f808284036040811215613bfc575f80fd5b8335613c0781613a9a565b92506020601f1982011215613c1a575f80fd5b506040516020810167ffffffffffffffff81118282101715613c3e57613c3e613ae5565b6040526020840135613c4f81613af9565b8152919491935090915050565b5f60208284031215613c6c575f80fd5b813561192781613a9a565b5f805f8060808587031215613c8a575f80fd5b8435613c9581613a6e565b93506020850135613ca581613a6e565b92506040850135613cb581613a6e565b91506060850135613cc581613a6e565b939692955090935050565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081525f6119276020830184613cd0565b80356001600160a01b0381168114612708575f80fd5b5f805f8060808587031215613d39575f80fd5b8435613d4481613a9a565b935060208501359250613d5960408601613d10565b91506060850135613cc581613a9a565b5f60208284031215613d79575f80fd5b61192782613d10565b5f8060408385031215613d93575f80fd5b82359150613da360208401613d10565b90509250929050565b60208152613df160208201835160ff815116825260ff602082015116602083015263ffffffff604082015116604083015263ffffffff60608201511660608301525050565b5f602083015160a080840152613e0a60c0840182613cd0565b949350505050565b5f8060408385031215613e23575f80fd5b8235613e2e81613a9a565b9150613da360208401613d10565b5f805f60608486031215613e4e575f80fd5b83359250613e5e60208501613d10565b929592945050506040919091013590565b60808101610d69828460ff815116825260ff602082015116602083015263ffffffff604082015116604083015263ffffffff60608201511660608301525050565b6001600160601b03948516815292841660208401529216604082015263ffffffff909116606082015260800190565b5f805f60608486031215613ef1575f80fd5b8335613efc81613a6e565b92506020840135613f0c81613a6e565b91506040840135613bdf81613a6e565b5f805f8060808587031215613f2f575f80fd5b8435613f3a81613a9a565b93506020850135613f4a81613a9a565b92506040850135613d5981613a9a565b60ff1981168114613a7c575f80fd5b5f8060408385031215613f7a575f80fd5b8235613f8581613a6e565b91506020830135613ada81613f5a565b5f60208284031215613fa5575f80fd5b5051919050565b5f60208284031215613fbc575f80fd5b815161192781613a9a565b80518015158114612708575f80fd5b5f60208284031215613fe6575f80fd5b61192782613fc7565b600181811c9082168061400357607f821691505b60208210810361402157634e487b7160e01b5f52602260045260245ffd5b50919050565b63ffffffff81168114613a7c575f80fd5b5f60208284031215614048575f80fd5b815161192781614027565b6001600160601b0395861681526001600160a01b039490941660208501529184166040840152909216606082015263ffffffff909116608082015260a00190565b5f80858511156140a2575f80fd5b838611156140ae575f80fd5b5050820193919092039150565b80356001600160e01b031981169060048410156140ec576001600160e01b0319600485900360031b81901b82161691505b5092915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b601f82111561417657805f5260205f20601f840160051c810160208510156141575750805b601f840160051c820191505b8181101561205d575f8155600101614163565b505050565b815167ffffffffffffffff81111561419557614195613ae5565b6141a9816141a38454613fef565b84614132565b6020601f8211600181146141db575f83156141c45750848201515b5f19600385901b1c1916600184901b17845561205d565b5f84815260208120601f198516915b8281101561420a57878501518255602094850194600190920191016141ea565b508482101561422757868401515f19600387901b60f8161c191681555b50505050600190811b01905550565b5f60208284031215614246575f80fd5b815161192781613a6e565b5f60208284031215614261575f80fd5b815161192781613f5a565b5f6020828403121561427c575f80fd5b815161192781613af9565b5f82518060208501845e5f920191825250919050565b5f80604083850312156142ae575f80fd5b6142b783613fc7565b91506020830151613ada81614027565b634e487b7160e01b5f52601260045260245ffdfea2646970667358221220c8653bfa78b8d5939a4bffadc47903eb73e74713f7a07e8f84583f3b9360894964736f6c634300081a0033",
|
2223
|
+
"bytecode": "0x608060405234801561000f575f80fd5b50604051617e47380380617e4783398101604081905261002e916116ae565b3361003881610126565b506100a1826001600160a01b031663e2b178a06040518163ffffffff1660e01b8152600401602060405180830381865afa158015610078573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061009c91906116e6565b610179565b600180546001600160a01b038085166001600160a01b03199283161790925560038054928416929091169190911790556040516100dd9061168a565b604051809103905ff0801580156100f6573d5f803e3d5ffd5b50600480546001600160a01b0319166001600160a01b039290921691909117905561011f6101f6565b50506117b2565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b5f5433906001600160a01b031681146101b45760405162d1953b60e31b81526001600160a01b03821660048201526024015b60405180910390fd5b816001600160a01b03163b5f036101e9576040516361798f2f60e11b81526001600160a01b03831660048201526024016101ab565b6101f282610126565b5050565b6104966001805f600173__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610246573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061026a9190611715565b73__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af41580156102b1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102d59190611715565b73__$71e292c09eace9601b3e21e68a1278917a$__634bd9351b6040518163ffffffff1660e01b8152600401602060405180830381865af415801561031c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103409190611742565b73__$71e292c09eace9601b3e21e68a1278917a$__63f27c3bf66040518163ffffffff1660e01b8152600401602060405180830381865af4158015610387573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906103ab9190611742565b73__$bf7bc340cbb9229ef1de2c568356e67902$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156103f2573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061041691906116e6565b604051631488c84560e01b8152600f6004820152600119602482015273__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c845906044015b602060405180830381865af415801561046d573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061049191906116e6565b61085f565b60405163efac97cf60e01b815261044d60048201526105eb9073__$94a2c899be079b00d952d0d84fffaa5c34$__9063efac97cf90602401602060405180830381865af41580156104e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061050d9190611715565b600173__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__63c6edc3dd6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610556573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061057a9190611742565b73__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__63f87bf3736040518163ffffffff1660e01b8152600401602060405180830381865af41580156105c1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105e591906116e6565b5f610d18565b61085d600a604051632620eecb60e11b815269152d02c7e14af680000060048201526001908190819073__$3bac17678db7ae928afa209f2f44deec9c$__90634c41dd9690602401602060405180830381865af415801561064e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106729190611715565b73__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af41580156106b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906106dd9190611715565b73__$71e292c09eace9601b3e21e68a1278917a$__634bd9351b6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610724573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107489190611742565b73__$71e292c09eace9601b3e21e68a1278917a$__63f27c3bf66040518163ffffffff1660e01b8152600401602060405180830381865af415801561078f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906107b39190611742565b73__$bf7bc340cbb9229ef1de2c568356e67902$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156107fa573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061081e91906116e6565b604051631488c84560e01b8152600360048201525f19602482015273__$bf7bc340cbb9229ef1de2c568356e67902$__90631488c84590604401610452565b565b60405163037c8cb160e51b815260ff8b16600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__90636f91962090602401602060405180830381865af41580156108af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108d3919061175d565b156108f657604051633c00d02760e01b815260ff8b1660048201526024016101ab565b610900868661146d565b1561093057604051622a505160e91b81526001600160601b038088166004830152861660248201526044016101ab565b61093a84846114f9565b15610969576040516338157c8960e21b815264ffffffffff8086166004830152841660248201526044016101ab565b6001600160a01b0380821690831611156109a957604051638ae671e360e01b81526001600160a01b038084166004830152821660248201526044016101ab565b5f60055f8c60ff1660ff1681526020019081526020015f2060020160149054906101000a900464ffffffffff1690508960055f8d60ff1660ff1681526020019081526020015f205f015f6101000a81548160ff0219169083151502179055508860055f8d60ff1660ff1681526020019081526020015f205f0160016101000a81548160ff0219169083151502179055508760055f8d60ff1660ff1681526020019081526020015f205f0160026101000a81548160ff0219169083151502179055508660055f8d60ff1660ff1681526020019081526020015f205f0160036101000a8154816001600160601b0302191690836001600160601b031602179055508560055f8d60ff1660ff1681526020019081526020015f205f01600f6101000a8154816001600160601b0302191690836001600160601b031602179055508460055f8d60ff1660ff1681526020019081526020015f205f01601b6101000a81548164ffffffffff021916908364ffffffffff1602179055508360055f8d60ff1660ff1681526020019081526020015f206001015f6101000a81548164ffffffffff021916908364ffffffffff1602179055508260055f8d60ff1660ff1681526020019081526020015f2060010160056101000a8154816001600160a01b0302191690836001600160a01b031602179055508160055f8d60ff1660ff1681526020019081526020015f206002015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015610c1e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c429190611742565b60ff8c165f81815260056020908152604091829020600201805464ffffffffff60a01b1916600160a01b64ffffffffff9687160217905581519283528d1515908301528b15159082015289151560608201526001600160601b03808a166080830152881660a082015286821660c082015285821660e08201526001600160a01b0380861661010083015284166101208201529082166101408201527fb24c8b320e3f99e0aef480e78c342643583880e3f5a1c392a85a4c51f76799f8906101600160405180910390a15050505050505050505050565b8015610dc25760015460035460405163647b8c2f60e01b81526001600160a01b03928316600482015290821660248201526001600160601b038716604482015260ff8616606482015264ffffffffff8516608482015290831660a482015273__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__9063647b8c2f9060c4015f6040518083038186803b158015610dab575f80fd5b505af4158015610dbd573d5f803e3d5ffd5b505050505b6001600160601b0385165f90815260066020908152604091829020825163bc1b392d60e01b81529251909273__$3bac17678db7ae928afa209f2f44deec9c$__9263bc1b392d926004808401938290030181865af4158015610e26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e4a9190611715565b81546001600160601b0319166001600160601b03919091161781556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af4158015610eb3573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ed79190611715565b815f01600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610f45573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f699190611715565b816001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af4158015610fd7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ffb9190611715565b600182018054600160601b65ff000000000160c01b0319166c010000000000000000000000006001600160601b039384160260ff60e81b191617600160e81b60ff8916021764ffffffffff60c01b1916600160c01b64ffffffffff8816021790556002820180546001600160a01b0319166001600160a01b0386161790556040516301f8588560e51b8152908716600482015273__$dacf551d137a232f87fa09e79113e25430$__90633f0b10a090602401602060405180830381865af41580156110c8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110ec9190611715565b8160020160146101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561115b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061117f9190611742565b815f0160186101000a81548164ffffffffff021916908364ffffffffff1602179055506113a260075f886001600160601b03166001600160601b031681526020019081526020015f208773__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd96600273__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af415801561122c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112509190611715565b60405163046e44af60e11b81526001600160601b03909116600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af41580156112a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112cb919061177c565b6112d59190611793565b6040518263ffffffff1660e01b81526004016112f391815260200190565b602060405180830381865af415801561130e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113329190611715565b73__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af4158015611379573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061139d9190611715565b611541565b600480546040516346f0e8a760e11b81526001600160601b038916928101929092526001600160a01b031690638de1d14e906024015f604051808303815f87803b1580156113ee575f80fd5b505af1158015611400573d5f803e3d5ffd5b5050604080516001600160601b038a16815260ff8916602082015264ffffffffff8816818301526001600160a01b038716606082015290517f086dbed771133d4ebbe0285c0df8231e94a664efbae4bd66c0e3e9f11c7fd0f09350908190036080019150a1505050505050565b604051632601631360e21b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906398058c4c906044015b602060405180830381865af41580156114ce573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114f2919061175d565b9392505050565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef906044016114b3565b83546001600160601b038381166001600160c01b03198316176c010000000000000000000000009184169190910217855560408051639fa6a6e360e01b81529051600160c01b90920464ffffffffff169173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af41580156115d0573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115f49190611742565b855464ffffffffff918216600160c01b0264ffffffffff60c01b1982168117808955604080516001600160601b038a811682529384169484169490941760208501526c010000000000000000000000009091049091169082015290821660608201527f05c35323706f609643b5b81348a27fedbbaf7ae364b4d43f69a8853c024f20479060800160405180910390a15050505050565b61074c806176fb83390190565b6001600160a01b03811681146116ab575f80fd5b50565b5f80604083850312156116bf575f80fd5b82516116ca81611697565b60208401519092506116db81611697565b809150509250929050565b5f602082840312156116f6575f80fd5b81516114f281611697565b6001600160601b03811681146116ab575f80fd5b5f60208284031215611725575f80fd5b81516114f281611701565b64ffffffffff811681146116ab575f80fd5b5f60208284031215611752575f80fd5b81516114f281611730565b5f6020828403121561176d575f80fd5b815180151581146114f2575f80fd5b5f6020828403121561178c575f80fd5b5051919050565b5f826117ad57634e487b7160e01b5f52601260045260245ffd5b500490565b615f3c806117bf5f395ff3fe608060405234801561000f575f80fd5b506004361061023f575f3560e01c80636291423a11610135578063b4485022116100b4578063d44f8a4b11610079578063d44f8a4b146109c9578063de0eb85f146109dc578063e8ce883d146109ef578063ea48ce9b14610a02578063f55a7d1e14610a15575f80fd5b8063b448502214610881578063b9a5c03014610980578063bac475b714610993578063bf7e214f146109a6578063c4d66de8146109b6575f80fd5b80638fb36037116100fa5780638fb36037146106f15780639a148b7f14610712578063a6bc7cb814610725578063a71bfbb71461075d578063a9ea092814610770575f80fd5b80636291423a1461067157806363fe327a146106825780636d387fe41461069357806377083813146106cb5780637a9e5e4b146106de575f80fd5b80634a923f0c116101c15780635809c85d116101865780635809c85d1461058857806359386f8e146106255780635b0ee099146106385780635ecf260f1461064b5780635fd1efec1461065e575f80fd5b80634a923f0c146105035780634f9c1c091461051657806351486e7d14610539578063517069d814610562578063553b210114610575575f80fd5b80631b50e10b116102075780631b50e10b146103fb57806322e164061461040e57806325c083cf146104215780633a208dc714610434578063493eaa1314610459575f80fd5b80630345861d1461024357806307ccf38c146102585780630ad044ce1461038f57806310a0638a146103ba57806319f47dfc146103cd575b5f80fd5b610256610251366004615648565b610b4d565b005b61030b61026636600461567f565b6040805160c080820183525f80835260208084018290528385018290526060808501839052608080860184905260a09586018490526001600160601b039788168452600b8352928690208651948501875280548089168652600160601b8082048a1694870194909452600160c01b900464ffffffffff9081169786019790975260010154968716908401528504841690820152600160881b9093049091169082015290565b60405161038691905f60c0820190506001600160601b0383511682526001600160601b03602084015116602083015264ffffffffff60408401511660408301526001600160601b03606084015116606083015264ffffffffff608084015116608083015264ffffffffff60a08401511660a083015292915050565b60405180910390f35b6103a261039d3660046156a7565b610d1d565b6040516001600160601b039091168152602001610386565b6102566103c836600461567f565b610d8e565b6103a26103db36600461567f565b6001600160601b039081165f908152600b60205260409020600101541690565b610256610409366004615700565b610dd0565b61025661041c366004615648565b610e39565b6103a261042f36600461567f565b611073565b6004546001600160a01b03165b6040516001600160a01b039091168152602001610386565b6104cc61046736600461567f565b60408051606080820183525f80835260208084018290529284018190526001600160601b0394851681526007835283902083519182018452548085168252600160601b810490941691810191909152600160c01b90920464ffffffffff169082015290565b6040805182516001600160601b039081168252602080850151909116908201529181015164ffffffffff1690820152606001610386565b6103a261051136600461571b565b61108e565b61052961052436600461567f565b6110e9565b6040519015158152602001610386565b61054c610547366004615763565b611183565b60405164ffffffffff9091168152602001610386565b610529610570366004615648565b6114f5565b6102566105833660046157a1565b6115aa565b6105fa610596366004615648565b6040805180820182525f80825260209182018190526001600160601b03949094168452600a81528184206001600160a01b0393841685528152928190208151808301909252549182168152600160a01b90910464ffffffffff169181019190915290565b6040805182516001600160a01b0316815260209283015164ffffffffff169281019290925201610386565b6102566106333660046157df565b611600565b61025661064636600461585c565b61166d565b610256610659366004615924565b611694565b61025661066c366004615700565b61185b565b6003546001600160a01b0316610441565b6002546001600160a01b0316610441565b6106a66106a1366004615950565b6118bc565b604080516001600160601b03909316835264ffffffffff909116602083015201610386565b6103a26106d93660046157a1565b61195b565b6102566106ec366004615700565b611d9c565b6106f9611e14565b6040516001600160e01b03199091168152602001610386565b61025661072036600461597c565b611e36565b6107386107333660046159c8565b611e4d565b604080516001600160a01b03909316835264ffffffffff909116602083015201610386565b61025661076b366004615648565b611ffa565b61087461077e36600461567f565b60408051610120810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101829052610100810191909152506001600160601b039081165f9081526006602090815260409182902082516101208101845281548086168252600160601b808204871694830194909452600160c01b9081900464ffffffffff908116958301959095526001830154808716606084015293840486166080830152830490931660a0840152600160e81b90910460ff1660c0830152600201546001600160a01b03811660e0830152600160a01b900490911661010082015290565b6040516103869190615a05565b61092c61088f366004615648565b604080516080810182525f808252602082018190529181018290526060810191909152506001600160601b039182165f9081526008602090815260408083206001600160a01b0394909416835292815290829020825160808101845290548085168252600160601b810490941691810191909152600160c01b830461ffff1691810191909152600160d01b90910464ffffffffff16606082015290565b60405161038691905f6080820190506001600160601b0383511682526001600160601b03602084015116602083015261ffff604084015116604083015264ffffffffff606084015116606083015292915050565b61052961098e36600461567f565b612374565b6102566109a1366004615aee565b61241d565b5f546001600160a01b0316610441565b6102566109c4366004615700565b612535565b6103a26109d7366004615b1b565b612656565b6103a26109ea366004615950565b6127a0565b6103a26109fd366004615950565b612989565b6103a2610a10366004615b1b565b612a16565b610b40610a23366004615b48565b60408051610140810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101919091525060ff9081165f9081526005602090815260409182902082516101408101845281548086161515825261010080820487161515948301949094526201000081049095161515938101939093526001600160601b036301000000850481166060850152600160781b850416608084015264ffffffffff600160d81b909404841660a0840152600181015480851660c08501526001600160a01b0365010000000000909104811660e085015260029091015490811691830191909152600160a01b900490911661012082015290565b6040516103869190615b61565b610b59335b5f36612b4f565b5f80610b6484612c3e565b6003546001830154604051631e74126560e21b81526001600160a01b0392831660048201526001600160601b0389166024820152600160e81b90910460ff1660448201529086166064820152919350915073__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__906379d04994906084015f6040518083038186803b158015610bea575f80fd5b505af4158015610bfc573d5f803e3d5ffd5b5050506002830180546001600160a01b038681166001600160a01b031983161790925560408051639fa6a6e360e01b8152905192909116925073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e3916004808201926020929091908290030181865af4158015610c74573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c989190615c4e565b835464ffffffffff60c01b1916600160c01b64ffffffffff92831602178455604080516001600160601b03881681526001600160a01b03808816602083015284169181019190915290831660608201527fd0227ef9a17652cfa7e48ccd5c6f70bf4d13dfe2eb71df80aa62881a3240d773906080015b60405180910390a15050505050565b5f610d2733610b52565b5f610d3186612cf6565b60018101549091505f90610d4d906001600160601b0316612dbb565b90508515610d6257610d60878383612e7e565b505b8415610d7557610d7387838361328a565b505b610d8187838387613550565b925050505b949350505050565b610d9733610b52565b5f610da182612cf6565b60018101549091505f90610dbd906001600160601b0316612dbb565b9050610dca838383612e7e565b50505050565b610dd933610b52565b600280546001600160a01b038381166001600160a01b03198316811790935560408051938452911660208301819052917f960b8b5c264ebbae758850aa1b8e20d698fe852b7c686ee4ee8e991602c42cbe91015b60405180910390a15050565b610e4233610b52565b6001600160601b0382165f908152600a602090815260408083206001600160a01b03851684529091529081902080549151638d38cd4b60e01b8152600160a01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af4158015610ecc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ef09190615c69565b15610f1b578282604051633cdee7f960e01b8152600401610f12929190615c84565b60405180910390fd5b73__$bf7bc340cbb9229ef1de2c568356e67902$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610f62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f869190615ca6565b81546001600160a01b0319166001600160a01b039190911617815560408051639fa6a6e360e01b8152905173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af4158015610fef573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110139190615c4e565b815464ffffffffff91909116600160a01b0264ffffffffff60a01b199091161781556040517e2713bc0b3137ab1236c169e5d41bf95db32cea0a163dc838d6842c6410b99a906110669085908590615c84565b60405180910390a1505050565b5f61107d33610b52565b61108682613772565b90505b919050565b5f61109833610b52565b5f6110a285612cf6565b60018101549091505f906110be906001600160601b0316612dbb565b905084156110d3576110d1868383612e7e565b505b6110df8683838761398b565b9695505050505050565b6001600160601b0381165f908152600b6020526040808220600101549051638d38cd4b60e01b8152600160881b90910464ffffffffff16600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af415801561115f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110869190615c69565b5f61118d33610b52565b6001600160601b0385165f908152600b60205260409081902060018101549151638d38cd4b60e01b8152600160881b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af4158015611206573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061122a9190615c69565b1561125357604051630e5c323960e01b81526001600160601b0387166004820152602401610f12565b5f61125d86612dbb565b905061126a868286613b97565b6001820180546001600160601b0319166001600160601b0388161790556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af41580156112d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112f99190615cc1565b82546001600160601b0319166001600160601b03919091161782556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af4158015611362573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113869190615cc1565b825f01600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156113f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114189190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b1990911617825561144382613c30565b5060018201548254604080516001600160601b03808c168252938416602082015292821690830152600160c01b900464ffffffffff1660608201526001600160a01b03861660808201527fd3ee63d0421bec5f3bb2d1f810b978739c31bb1e1f31c7113739eca75026933b9060a00160405180910390a16114dc8783838460010160189054906101000a900464ffffffffff1688613d6c565b5054600160c01b900464ffffffffff1695945050505050565b6001600160601b0382165f908152600a602090815260408083206001600160a01b0385168452909152808220549051638d38cd4b60e01b8152600160a01b90910464ffffffffff16600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b906024015b602060405180830381865af415801561157d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115a19190615c69565b90505b92915050565b6115b333610b52565b5f6115bd83612cf6565b60018101549091505f906115d9906001600160601b0316612dbb565b905082156115ee576115ec848383612e7e565b505b6115f984838361328a565b5050505050565b61160933610b52565b5f61161386612cf6565b60018101549091505f9061162f906001600160601b0316612dbb565b9050851561164457611642878383612e7e565b505b84156116575761165587838361328a565b505b6116648783838787613d6c565b50505050505050565b61167633610b52565b6116888a8a8a8a8a8a8a8a8a8a614113565b50505050505050505050565b61169d33610b52565b5f806116a884612c3e565b6003546001830154604051632048909b60e21b81526001600160a01b0390921660048301526001600160601b0388166024830152600160e81b900460ff16604482015264ffffffffff86166064820152919350915073__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__90638122426c906084015f6040518083038186803b158015611732575f80fd5b505af4158015611744573d5f803e3d5ffd5b50505060018301805464ffffffffff868116600160c01b90810264ffffffffff60c01b1984161790935560408051639fa6a6e360e01b815290519390920416925073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e3916004808201926020929091908290030181865af41580156117c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117e89190615c4e565b835464ffffffffff60c01b1916600160c01b64ffffffffff92831602178455604080516001600160601b038816815286831660208201528383169181019190915290831660608201527f63545c71b15de59d1463d3e2577b64bc3c5510cd1dd0243eb030f9da55a65fe090608001610d0e565b61186433610b52565b600380546001600160a01b038381166001600160a01b03198316811790935560408051938452911660208301819052917f8414c1d6352c513484c229579bca3842a94d9c46e1dd28ec9b03c9b3d5a4ae429101610e2d565b5f806118c733610b52565b5f6118d185612c3e565b6001820180546001600160601b03888116600160601b818102600160601b600160c01b0319851617909455604080518c84168152602081019290925264ffffffffff861690820152929091041695509093509091507f74cf98e0b0178be4925e6447d2bdeea75507d176a76652c4b0eda5f06da689c39060600160405180910390a1509250929050565b6001600160601b0382165f908152600960209081526040808320805482518185028101850190935280835284938301828280156119bf57602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116119a1575b5050505050905080515f03611a415773__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015611a15573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a399190615cc1565b9150506115a4565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015611a88573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aac9190615cc1565b6001600160601b038086165f90815260066020526040812060020154929450600160a01b90920416908080805b8551811015611ce557858181518110611af457611af4615cdc565b6020908102919091018101516001600160601b038b81165f9081526008845260408082206001600160a01b0385168352909452839020549251630a4d29dd60e31b8152921660048301819052909550935073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015611b7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ba39190615c69565b611cdd576001600160601b0385165f908152600a602090815260408083206001600160a01b038881168552925291829020549151636a88f0a760e11b8152911660048201819052925073__$bf7bc340cbb9229ef1de2c568356e67902$__9063d511e14e90602401602060405180830381865af4158015611c26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c4a9190615c69565b611cdd57604051636e5912e760e01b8152611cda90889073__$3bac17678db7ae928afa209f2f44deec9c$__90636e5912e790611c96906001600160601b038916908890600401615c84565b602060405180830381865af4158015611cb1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cd59190615cc1565b6145cc565b96505b600101611ad9565b508615611d91576001600160601b038881165f90815260066020908152604080832060010154600160e81b900460ff168084526005909252909120805491929091611d39918a916301000000900416614651565b15611d57578054630100000090046001600160601b03169750611d8e565b8054611d74908990600160781b90046001600160601b031661469b565b15611d8e578054600160781b90046001600160601b031697505b50505b505050505092915050565b5f5433906001600160a01b03168114611dd25760405162d1953b60e31b81526001600160a01b0382166004820152602401610f12565b816001600160a01b03163b5f03611e07576040516361798f2f60e11b81526001600160a01b0383166004820152602401610f12565b611e10826146e5565b5050565b5f8054600160a01b900460ff16611e2a57505f90565b50638fb3603760e01b90565b611e3f33610b52565b610dca848484846001614738565b5f80611e5833610b52565b6001600160601b0385165f908152600a602090815260408083206001600160a01b0388168452909152908190208054915163790a38ad60e01b8152600160a01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015611ee2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f069190615c69565b15611f2857858560405163020c3e0f60e31b8152600401610f12929190615c84565b80546001600160a01b038581166001600160a01b0319831617835560408051639fa6a6e360e01b81529051918316955064ffffffffff600160a01b90930492909216935073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af4158015611faa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fce9190615c4e565b815464ffffffffff91909116600160a01b0264ffffffffff60a01b199091161790559094909350915050565b61200333610b52565b6001600160601b0382165f9081526008602090815260408083206001600160a01b03851684529091529081902080549151638d38cd4b60e01b8152600160d01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af415801561208d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120b19190615c69565b156120bb57505050565b6120c483612dbb565b506040516301f8588560e51b81526001600160601b03841660048201525f9073__$dacf551d137a232f87fa09e79113e25430$__90633f0b10a090602401602060405180830381865af415801561211d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121419190615cc1565b6001600160601b0381165f908152600a602090815260408083206001600160a01b03881684529091529081902054905163790a38ad60e01b8152600160a01b90910464ffffffffff16600482015290915073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af41580156121cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121f09190615c69565b1561221257808360405163020c3e0f60e31b8152600401610f12929190615c84565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015612259573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061227d9190615cc1565b82546001600160601b0319166001600160601b039190911617825560408051639fa6a6e360e01b8152905173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af41580156122e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061230a9190615c4e565b825464ffffffffff91909116600160d01b0264ffffffffff60d01b1990911617909155506001600160601b0382165f9081526009602090815260408220805460018101825590835291200180546001600160a01b0383166001600160a01b03199091161790555050565b6001600160601b0381165f908152600b60209081526040808320548151639fa6a6e360e01b8152915161108693600160c01b90920464ffffffffff169273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__92639fa6a6e3926004808401938290030181865af41580156123ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061240e9190615c4e565b64ffffffffff90811691161190565b61242633610b52565b5f61243084614e83565b80546001600160601b038581166001600160c01b0319831617600160601b9186169190910217825560408051639fa6a6e360e01b81529051929350600160c01b90910464ffffffffff169173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af41580156124b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124dd9190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782556040517ff247f9f8f9c455e0928cd8b5f34ef2567264cde4001db187c3e930c25e08fc1590610d0e908790879087908690615cf0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f8115801561257a5750825b90505f8267ffffffffffffffff1660011480156125965750303b155b9050811580156125a4575080155b156125c25760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156125ec57845460ff60401b1916600160401b1785555b600280546001600160a01b0319166001600160a01b038816179055831561264e57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b505050505050565b5f61266033610b52565b5f61266b8585614f46565b805490915064ffffffffff600160d01b82041690612692906001600160601b031685615016565b82546001600160601b0319166001600160601b03919091161782556126b8868684615060565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156126ff573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127239190615c4e565b825464ffffffffff91909116600160d01b0264ffffffffff60d01b198216811784556040516001600160601b03918216919092161793507f6eea09d3401164101f559606e8c76aca972689ba8330a579bd6507b5889d153f9061278f9088908890889088908790615d20565b60405180910390a150509392505050565b5f6127aa33610b52565b5f6127b484612dbb565b80546001820154919250600160c01b900464ffffffffff16906127e0906001600160601b0316856145cc565b826001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561284e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128729190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782556001808301549054604051631c5da14d60e11b81526001600160601b03888116600483015290921694507f317c91a4e8d5e9d4af7c5e856f79e6db430257dabe4a32a352ef58b9ba000f3d91879187916001600160a01b03909116906338bb429a906024015b602060405180830381865afa158015612915573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129399190615ca6565b604080516001600160601b03948516815292841660208401526001600160a01b0390911690820152908516606082015264ffffffffff8316608082015260a00160405180910390a1505092915050565b5f61299333610b52565b5f61299d84612dbb565b90505f6129ab85838661517d565b6001838101549054604051631c5da14d60e11b81526001600160601b03898116600483015290921695509192507fb144c2ad8fd690acb16f40becc8acde92c8694ef99952f875213f57ce1b7acef91879187916001600160a01b0316906338bb429a906024016128fa565b5f612a2033610b52565b5f612a2b8585614f46565b805490915064ffffffffff600160d01b82041690612a52906001600160601b0316856145cc565b82546001600160601b0319166001600160601b0391909116178255612a78868684615060565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015612abf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ae39190615c4e565b825464ffffffffff91909116600160d01b0264ffffffffff60d01b198216811784556040516001600160601b03918216919092161793507f05e52d64c754f7a526cf0704e8cfe26c04e8b656e7b493f61fbda7109a326f429061278f9088908890889088908790615d20565b5f80612b82612b655f546001600160a01b031690565b8630612b7460045f898b615d62565b612b7d91615d89565b6152ba565b91509150816115f95763ffffffff811615612c1b575f805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee90612bdc90889088908890600401615dbf565b5f604051808303815f87803b158015612bf3575f80fd5b505af1158015612c05573d5f803e3d5ffd5b50505f805460ff60a01b19169055506115f99050565b60405162d1953b60e31b81526001600160a01b0386166004820152602401610f12565b5f80612c4983612dbb565b9150815f0160189054906101000a900464ffffffffff16905073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015612ca9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ccd9190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782559092909150565b6001600160601b0381165f908152600b6020526040908190206001810154915163790a38ad60e01b8152600160881b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015612d6f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d939190615c69565b156110895760405162af6eb360e61b81526001600160601b0383166004820152602401610f12565b6001600160601b0381165f90815260066020526040908190208054915163790a38ad60e01b8152600160c01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015612e31573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e559190615c69565b156110895760405163091c22d760e41b81526001600160601b0383166004820152602401610f12565b6002810154604051636a88f0a760e11b81526001600160a01b0390911660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__9063d511e14e90602401602060405180830381865af4158015612edc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f009190615c69565b613283576001830154604051633682752160e21b8152600160601b90910464ffffffffff1660048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063da09d48490602401602060405180830381865af4158015612f82573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fa69190615dfe565b612fb09042615e29565b6040518263ffffffff1660e01b8152600401612fce91815260200190565b602060405180830381865af4158015612fe9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300d9190615c4e565b60405163790a38ad60e01b815264ffffffffff8216600482015290915073__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015613064573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130889190615c69565b156131005773__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156130d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130f89190615cc1565b915050613283565b60028301548454604051635bdf11e360e11b81526001600160a01b03909216600483015264ffffffffff831660248301526001600160601b0316604482015273__$f048dbd5170c0ac319fa0222065b281d84$__9063b7be23c690606401602060405180830381865af4158015613179573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061319d9190615cc1565b83549092506131bc90600160601b90046001600160601b0316836145cc565b8354600160601b600160c01b031916600160601b6001600160601b03928316810291909117855585546131f39291900416836145cc565b84546001600160601b0391909116600160601b02600160601b600160c01b03199091161784555f61322485856153c2565b85546040519192507fed4853b0609e21bd14ba3f580ebca5d25c21bc024161fd250b6b33c768c1c8729161278f91899187916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b9392505050565b8154604051630a4d29dd60e31b8152600160601b9091046001600160601b0316600482018190529073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af41580156132ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133109190615c69565b61328357600183015461332d906001600160601b03168383613b97565b6001830154613346906001600160601b03168383615459565b815461335b906001600160601b0316826145cc565b82546001600160601b0319166001600160601b039182161780845561338991600160601b9091041682615016565b8254600160601b600160c01b031916600160601b6001600160601b039283160217835583546133b99116826145cc565b83546001600160601b0319166001600160601b03919091161783556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af4158015613422573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134469190615cc1565b83546001600160601b0391909116600160601b02600160601b600160c01b03199091161783555f61347784846153c2565b90507f38151af1adffdc3651d3f7917ea0e90417d40e286b11741dd01a3e3228d96c598583865f015f9054906101000a90046001600160601b031673__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156134f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061351d9190615cc1565b88546040516135409594939291600160c01b900464ffffffffff16908890615e3c565b60405180910390a1509392505050565b8254604051637931c81160e01b81526001600160601b03808416600483015290911660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af41580156135b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135d79190615cc1565b604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015613630573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136549190615c69565b610d865761366185612374565b156136a057835460405163187bc0bd60e21b81526001600160601b0387166004820152600160c01b90910464ffffffffff166024820152604401610f12565b82546136b5906001600160601b031682615016565b83546001600160601b0319166001600160601b0391821617845584546136dc911682615016565b84546001600160601b0319166001600160601b03919091161784555f61370285856153c2565b85546040519192507fed7a6a5cb58253a85b06a414d4fb43855fc759e9f19af28b775bf2b47ec7bf709161376191899186916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b60405180910390a150949350505050565b5f8061377d83612dbb565b90505f61378984614e83565b8054909150600160c01b900464ffffffffff165f6137a7868261195b565b83549091506137c09082906001600160601b03166145cc565b8354604051637931c81160e01b81526001600160601b038084166004830152600160601b909204909116602482015290955073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af415801561382c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138509190615cc1565b94508484600101600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156138c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138e69190615c4e565b845464ffffffffff60c01b198116600160c01b64ffffffffff93841602908117875560018701548654604080516001600160601b03808e168252600160601b9485900481166020830152939092048316908201528582166060820152928116911617608082015290831660a08201527f816866bb29a0d245f04a0179c957b4495d86447de93a8a4962fd3528510991429060c00160405180910390a150505050919050565b8254604051637931c81160e01b81526001600160601b038084166004830152600160601b90920490911660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af41580156139f6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a1a9190615cc1565b604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015613a73573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a979190615c69565b610d86576001840154613ab4906001600160601b03168483615459565b8254613ad090600160601b90046001600160601b031682615016565b8354600160601b600160c01b031916600160601b6001600160601b0392831681029190911785558554613b07929190041682615016565b84546001600160601b0391909116600160601b02600160601b600160c01b03199091161784555f613b3885856153c2565b85546040519192507f39ee77ec34c101210194f9f2c8be592bf5ef303db8e68adf58b4fbe747a134829161376191899186916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b8154613bca90613bb0906001600160601b0316836145cc565b6001840154600160601b90046001600160601b031661469b565b15613c2b576001820154825484916001600160601b03600160601b909104811691613bf69116846145cc565b604051631946161f60e01b81526001600160601b03938416600482015291831660248301529091166044820152606401610f12565b505050565b5f8160010160119054906101000a900464ffffffffff16905073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613c90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613cb49190615c4e565b8260010160116101000a81548164ffffffffff021916908364ffffffffff16021790555073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613d1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d439190615c4e565b82600101600c6101000a81548164ffffffffff021916908364ffffffffff160217905550919050565b604051630a4d29dd60e31b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015613dc2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613de69190615c69565b6115f9576001840154613e03906001600160601b03168483613b97565b8254613e18906001600160601b0316826145cc565b83546001600160601b0319166001600160601b039182161784558454613e3f9116826145cc565b84546001600160601b0319166001600160601b0391909116178455600183015460405163e83da7ad60e01b815264ffffffffff8085166004830152600160c01b90920490911660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__9063e83da7ad90604401602060405180830381865af4158015613ec6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613eea9190615c4e565b6040516330b8415f60e01b81526001600160601b038416600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af4158015613f43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f679190615c69565b8015613fe65750604051638d38cd4b60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__90638d38cd4b90602401602060405180830381865af4158015613fc2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fe69190615c69565b156140985784546040516352bcc5a760e11b8152600160c01b90910464ffffffffff90811660048301528216602482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af4158015614051573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140759190615c4e565b855464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161785555b5f6140a386866153c2565b86546040519192507f15d4969bfd34a12fabf5d09d2615ffc4f81d206e7756d9e3c0919ba800d57e4191614102918a9187916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b60405180910390a150505050505050565b60405163037c8cb160e51b815260ff8b16600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__90636f91962090602401602060405180830381865af4158015614163573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141879190615c69565b156141aa57604051633c00d02760e01b815260ff8b166004820152602401610f12565b6141b4868661469b565b156141e457604051622a505160e91b81526001600160601b03808816600483015286166024820152604401610f12565b6141ee84846154b9565b1561421d576040516338157c8960e21b815264ffffffffff808616600483015284166024820152604401610f12565b6001600160a01b03808216908316111561425d57604051638ae671e360e01b81526001600160a01b03808416600483015282166024820152604401610f12565b5f60055f8c60ff1660ff1681526020019081526020015f2060020160149054906101000a900464ffffffffff1690508960055f8d60ff1660ff1681526020019081526020015f205f015f6101000a81548160ff0219169083151502179055508860055f8d60ff1660ff1681526020019081526020015f205f0160016101000a81548160ff0219169083151502179055508760055f8d60ff1660ff1681526020019081526020015f205f0160026101000a81548160ff0219169083151502179055508660055f8d60ff1660ff1681526020019081526020015f205f0160036101000a8154816001600160601b0302191690836001600160601b031602179055508560055f8d60ff1660ff1681526020019081526020015f205f01600f6101000a8154816001600160601b0302191690836001600160601b031602179055508460055f8d60ff1660ff1681526020019081526020015f205f01601b6101000a81548164ffffffffff021916908364ffffffffff1602179055508360055f8d60ff1660ff1681526020019081526020015f206001015f6101000a81548164ffffffffff021916908364ffffffffff1602179055508260055f8d60ff1660ff1681526020019081526020015f2060010160056101000a8154816001600160a01b0302191690836001600160a01b031602179055508160055f8d60ff1660ff1681526020019081526020015f206002015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156144d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906144f69190615c4e565b60ff8c165f81815260056020908152604091829020600201805464ffffffffff60a01b1916600160a01b64ffffffffff9687160217905581519283528d1515908301528b15159082015289151560608201526001600160601b03808a166080830152881660a082015286821660c082015285821660e08201526001600160a01b0380861661010083015284166101208201529082166101408201527fb24c8b320e3f99e0aef480e78c342643583880e3f5a1c392a85a4c51f76799f8906101600160405180910390a15050505050505050505050565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb35906044015b602060405180830381865af415801561462d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115a19190615cc1565b6040516304d40eb160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906309a81d6290604401611562565b604051632601631360e21b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906398058c4c90604401611562565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b80156147e25760015460035460405163647b8c2f60e01b81526001600160a01b03928316600482015290821660248201526001600160601b038716604482015260ff8616606482015264ffffffffff8516608482015290831660a482015273__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__9063647b8c2f9060c4015f6040518083038186803b1580156147cb575f80fd5b505af41580156147dd573d5f803e3d5ffd5b505050505b6001600160601b0385165f90815260066020908152604091829020825163bc1b392d60e01b81529251909273__$3bac17678db7ae928afa209f2f44deec9c$__9263bc1b392d926004808401938290030181865af4158015614846573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061486a9190615cc1565b81546001600160601b0319166001600160601b03919091161781556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af41580156148d3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906148f79190615cc1565b815f01600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015614965573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149899190615cc1565b816001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af41580156149f7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614a1b9190615cc1565b60018201805471ff0000000000ffffffffffffffffffffffff60601b1916600160601b6001600160601b039384160260ff60e81b191617600160e81b60ff8916021764ffffffffff60c01b1916600160c01b64ffffffffff8816021790556002820180546001600160a01b0319166001600160a01b0386161790556040516301f8588560e51b8152908716600482015273__$dacf551d137a232f87fa09e79113e25430$__90633f0b10a090602401602060405180830381865af4158015614ae5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614b099190615cc1565b8160020160146101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015614b78573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614b9c9190615c4e565b815f0160186101000a81548164ffffffffff021916908364ffffffffff160217905550614dbf60075f886001600160601b03166001600160601b031681526020019081526020015f208773__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd96600273__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af4158015614c49573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614c6d9190615cc1565b60405163046e44af60e11b81526001600160601b03909116600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015614cc4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614ce89190615dfe565b614cf29190615e7c565b6040518263ffffffff1660e01b8152600401614d1091815260200190565b602060405180830381865af4158015614d2b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614d4f9190615cc1565b73__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af4158015614d96573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614dba9190615cc1565b615501565b600480546040516346f0e8a760e11b81526001600160601b038916928101929092526001600160a01b031690638de1d14e906024015f604051808303815f87803b158015614e0b575f80fd5b505af1158015614e1d573d5f803e3d5ffd5b5050604080516001600160601b038a16815260ff8916602082015264ffffffffff8816918101919091526001600160a01b03861660608201527f086dbed771133d4ebbe0285c0df8231e94a664efbae4bd66c0e3e9f11c7fd0f092506080019050612645565b6001600160601b0381165f90815260076020526040908190208054915163790a38ad60e01b8152600160c01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015614ef9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614f1d9190615c69565b15611089576040516384bdfa9560e01b81526001600160601b0383166004820152602401610f12565b6001600160601b0382165f9081526008602090815260408083206001600160a01b0385168452909152908190208054915163790a38ad60e01b8152600160d01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015614fd0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614ff49190615c69565b156115a457828260405163688e635d60e11b8152600401610f12929190615c84565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401614612565b8054600160c01b900461ffff1681601861507983615e9b565b82546101009290920a61ffff8181021990931691831602179091556002548354604051638755a73f60e01b81526001600160601b0380891660048301526001600160a01b038881166024840152600160c01b84049095166044830152600160601b83048116606483015290911660848201525f9350911690638755a73f9060a401602060405180830381865afa158015615115573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906151399190615c69565b90508015610dca57815461ffff60c01b19600160601b6001600160601b03831602166dffffffffffffffffffffffffffff60601b199091161782556115f984613772565b81546001830154600160c01b90910464ffffffffff16906151a89083906001600160601b031661469b565b156151e75760018301546040516301a4b29960e11b81526001600160601b03808716600483015291821660248201529083166044820152606401610f12565b60018301546151ff906001600160601b031683615016565b836001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561526d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906152919190615c4e565b835464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161790925550919050565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b179052516153289190615ebb565b5f60405180830381855afa9150503d805f8114615360576040519150601f19603f3d011682016040523d82523d5f602084013e615365565b606091505b509150915081156153b7576040815110615397578080602001905181019061538d9190615ed1565b90945092506153b7565b60208151106153b757808060200190518101906153b49190615c69565b93505b505094509492505050565b5f73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561540a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061542e9190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782556115a183613c30565b5f61546584848461517d565b60018401546040519192507fc0f991fc396647cd10937655916d61916ae77295c1d6a67e335bc8f502417491916154ab91879186916001600160601b0316908690615cf0565b60405180910390a150505050565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401611562565b83546001600160601b038381166001600160c01b0319831617600160601b9184169190910217855560408051639fa6a6e360e01b81529051600160c01b90920464ffffffffff169173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af4158015615587573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906155ab9190615c4e565b855464ffffffffff91909116600160c01b0264ffffffffff60c01b19821681178088556040517f05c35323706f609643b5b81348a27fedbbaf7ae364b4d43f69a8853c024f204793610d0e9389936001600160601b039182169282169290921792600160601b90920416908690615cf0565b6001600160601b0381168114615631575f80fd5b50565b6001600160a01b0381168114615631575f80fd5b5f8060408385031215615659575f80fd5b82356156648161561d565b9150602083013561567481615634565b809150509250929050565b5f6020828403121561568f575f80fd5b81356132838161561d565b8015158114615631575f80fd5b5f805f80608085870312156156ba575f80fd5b84356156c58161561d565b935060208501356156d58161569a565b925060408501356156e58161569a565b915060608501356156f58161561d565b939692955090935050565b5f60208284031215615710575f80fd5b813561328381615634565b5f805f6060848603121561572d575f80fd5b83356157388161561d565b925060208401356157488161569a565b915060408401356157588161561d565b809150509250925092565b5f805f8060808587031215615776575f80fd5b84356157818161561d565b935060208501356157918161561d565b925060408501356156e581615634565b5f80604083850312156157b2575f80fd5b82356157bd8161561d565b915060208301356156748161569a565b64ffffffffff81168114615631575f80fd5b5f805f805f60a086880312156157f3575f80fd5b85356157fe8161561d565b9450602086013561580e8161569a565b9350604086013561581e8161569a565b9250606086013561582e816157cd565b9150608086013561583e8161561d565b809150509295509295909350565b803560ff81168114611089575f80fd5b5f805f805f805f805f806101408b8d031215615876575f80fd5b61587f8b61584c565b995060208b013561588f8161569a565b985060408b013561589f8161569a565b975060608b01356158af8161569a565b965060808b01356158bf8161561d565b955060a08b01356158cf8161561d565b945060c08b01356158df816157cd565b935060e08b01356158ef816157cd565b92506101008b013561590081615634565b91506101208b013561591181615634565b809150509295989b9194979a5092959850565b5f8060408385031215615935575f80fd5b82356159408161561d565b91506020830135615674816157cd565b5f8060408385031215615961575f80fd5b823561596c8161561d565b915060208301356156748161561d565b5f805f806080858703121561598f575f80fd5b843561599a8161561d565b93506159a86020860161584c565b925060408501356159b8816157cd565b915060608501356156f581615634565b5f805f606084860312156159da575f80fd5b83356159e58161561d565b925060208401356159f581615634565b9150604084013561575881615634565b81516001600160601b03168152602080830151610120830191615a32908401826001600160601b03169052565b506040830151615a4b604084018264ffffffffff169052565b506060830151615a6660608401826001600160601b03169052565b506080830151615a8160808401826001600160601b03169052565b5060a0830151615a9a60a084018264ffffffffff169052565b5060c0830151615aaf60c084018260ff169052565b5060e0830151615aca60e08401826001600160a01b03169052565b50610100830151615ae76101008401826001600160601b03169052565b5092915050565b5f805f60608486031215615b00575f80fd5b8335615b0b8161561d565b925060208401356157488161561d565b5f805f60608486031215615b2d575f80fd5b8335615b388161561d565b9250602084013561574881615634565b5f60208284031215615b58575f80fd5b6115a18261584c565b81511515815261014081016020830151615b7f602084018215159052565b506040830151615b93604084018215159052565b506060830151615bae60608401826001600160601b03169052565b506080830151615bc960808401826001600160601b03169052565b5060a0830151615be260a084018264ffffffffff169052565b5060c0830151615bfb60c084018264ffffffffff169052565b5060e0830151615c1660e08401826001600160a01b03169052565b50610100830151615c336101008401826001600160a01b03169052565b50610120830151615ae761012084018264ffffffffff169052565b5f60208284031215615c5e575f80fd5b8151613283816157cd565b5f60208284031215615c79575f80fd5b81516132838161569a565b6001600160601b039290921682526001600160a01b0316602082015260400190565b5f60208284031215615cb6575f80fd5b815161328381615634565b5f60208284031215615cd1575f80fd5b81516132838161561d565b634e487b7160e01b5f52603260045260245ffd5b6001600160601b03948516815292841660208401529216604082015264ffffffffff909116606082015260800190565b6001600160601b0395861681526001600160a01b039490941660208501529184166040840152909216606082015264ffffffffff909116608082015260a00190565b5f8085851115615d70575f80fd5b83861115615d7c575f80fd5b5050820193919092039150565b80356001600160e01b03198116906004841015615ae7576001600160e01b031960049490940360031b84901b1690921692915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f60208284031215615e0e575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156115a4576115a4615e15565b6001600160601b039687168152948616602086015292851660408501529316606083015264ffffffffff928316608083015290911660a082015260c00190565b5f82615e9657634e487b7160e01b5f52601260045260245ffd5b500490565b5f61ffff821661ffff8103615eb257615eb2615e15565b60010192915050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215615ee2575f80fd5b8251615eed8161569a565b602084015190925063ffffffff81168114615674575f80fdfea2646970667358221220e310760562fc7db12c730b71f6c598d8b319272647235d1a7bf18a00969ea66e64736f6c634300081a00336080604052348015600e575f80fd5b50600480546001600160a01b0319163317905561071e8061002e5f395ff3fe608060405234801561000f575f80fd5b5060043610610090575f3560e01c80638de1d14e116100635780638de1d14e1461010f578063954a317214610122578063996f8d9114610135578063ddfe867f1461014b578063f2b2978114610153575f80fd5b8063042f9da3146100945780634f9c1c09146100a9578063706e9ba9146100d1578063777d1857146100fc575b5f80fd5b6100a76100a2366004610627565b610166565b005b6100bc6100b736600461065e565b610221565b60405190151581526020015b60405180910390f35b6100e46100df366004610680565b6102ab565b6040516001600160601b0390911681526020016100c8565b6100bc61010a36600461065e565b610327565b6100a761011d36600461065e565b610370565b6100a7610130366004610627565b610491565b61013d61051b565b6040519081526020016100c8565b61013d610595565b6100e4610161366004610680565b6105cf565b6004546001600160a01b031633146101ae5760048054604051631d1f01d960e31b81526001600160a01b03909116918101919091523360248201526044015b60405180910390fd5b604051631461054360e31b8152600260048201526001600160601b038216602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063a3082a18906044015b5f6040518083038186803b158015610207575f80fd5b505af4158015610219573d5f803e3d5ffd5b505050505050565b604051632bfdd6b960e01b81525f600482018190526001600160601b03831660248301529073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90632bfdd6b9906044015b602060405180830381865af4158015610281573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a59190610697565b92915050565b60405163e797d89960e01b81525f60048201819052602482018390529073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d899906044015b602060405180830381865af4158015610303573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906102a591906106b6565b604051632bfdd6b960e01b8152600260048201526001600160601b03821660248201525f9073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90632bfdd6b990604401610266565b6004546001600160a01b031633146103b35760048054604051631d1f01d960e31b81526001600160a01b03909116918101919091523360248201526044016101a5565b604051631461054360e31b81525f60048201526001600160601b038216602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063a3082a18906044015f6040518083038186803b15801561040a575f80fd5b505af415801561041c573d5f803e3d5ffd5b5050604051631461054360e31b8152600260048201526001600160601b038416602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__925063a3082a1891506044015f6040518083038186803b158015610478575f80fd5b505af415801561048a573d5f803e3d5ffd5b5050505050565b6004546001600160a01b031633146104d45760048054604051631d1f01d960e31b81526001600160a01b03909116918101919091523360248201526044016101a5565b60405163539eabab60e11b8152600260048201526001600160601b038216602482015273__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063a73d5756906044016101f1565b604051638b6233dd60e01b8152600260048201525f9073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd906024015b602060405180830381865af415801561056c573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061059091906106d1565b905090565b604051638b6233dd60e01b81525f600482018190529073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__90638b6233dd90602401610551565b60405163e797d89960e01b815260026004820152602481018290525f9073__$f7a7d9f32fdcd358419ed5ca3af4f3da33$__9063e797d899906044016102e8565b6001600160601b0381168114610624575f80fd5b50565b5f8060408385031215610638575f80fd5b823561064381610610565b9150602083013561065381610610565b809150509250929050565b5f6020828403121561066e575f80fd5b813561067981610610565b9392505050565b5f60208284031215610690575f80fd5b5035919050565b5f602082840312156106a7575f80fd5b81518015158114610679575f80fd5b5f602082840312156106c6575f80fd5b815161067981610610565b5f602082840312156106e1575f80fd5b505191905056fea2646970667358221220f3d5f8084f5fa4cbc6d72f63070e313ebd3584c41e0490dc8321fabf78b9191b64736f6c634300081a0033",
|
2224
|
+
"deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061023f575f3560e01c80636291423a11610135578063b4485022116100b4578063d44f8a4b11610079578063d44f8a4b146109c9578063de0eb85f146109dc578063e8ce883d146109ef578063ea48ce9b14610a02578063f55a7d1e14610a15575f80fd5b8063b448502214610881578063b9a5c03014610980578063bac475b714610993578063bf7e214f146109a6578063c4d66de8146109b6575f80fd5b80638fb36037116100fa5780638fb36037146106f15780639a148b7f14610712578063a6bc7cb814610725578063a71bfbb71461075d578063a9ea092814610770575f80fd5b80636291423a1461067157806363fe327a146106825780636d387fe41461069357806377083813146106cb5780637a9e5e4b146106de575f80fd5b80634a923f0c116101c15780635809c85d116101865780635809c85d1461058857806359386f8e146106255780635b0ee099146106385780635ecf260f1461064b5780635fd1efec1461065e575f80fd5b80634a923f0c146105035780634f9c1c091461051657806351486e7d14610539578063517069d814610562578063553b210114610575575f80fd5b80631b50e10b116102075780631b50e10b146103fb57806322e164061461040e57806325c083cf146104215780633a208dc714610434578063493eaa1314610459575f80fd5b80630345861d1461024357806307ccf38c146102585780630ad044ce1461038f57806310a0638a146103ba57806319f47dfc146103cd575b5f80fd5b610256610251366004615648565b610b4d565b005b61030b61026636600461567f565b6040805160c080820183525f80835260208084018290528385018290526060808501839052608080860184905260a09586018490526001600160601b039788168452600b8352928690208651948501875280548089168652600160601b8082048a1694870194909452600160c01b900464ffffffffff9081169786019790975260010154968716908401528504841690820152600160881b9093049091169082015290565b60405161038691905f60c0820190506001600160601b0383511682526001600160601b03602084015116602083015264ffffffffff60408401511660408301526001600160601b03606084015116606083015264ffffffffff608084015116608083015264ffffffffff60a08401511660a083015292915050565b60405180910390f35b6103a261039d3660046156a7565b610d1d565b6040516001600160601b039091168152602001610386565b6102566103c836600461567f565b610d8e565b6103a26103db36600461567f565b6001600160601b039081165f908152600b60205260409020600101541690565b610256610409366004615700565b610dd0565b61025661041c366004615648565b610e39565b6103a261042f36600461567f565b611073565b6004546001600160a01b03165b6040516001600160a01b039091168152602001610386565b6104cc61046736600461567f565b60408051606080820183525f80835260208084018290529284018190526001600160601b0394851681526007835283902083519182018452548085168252600160601b810490941691810191909152600160c01b90920464ffffffffff169082015290565b6040805182516001600160601b039081168252602080850151909116908201529181015164ffffffffff1690820152606001610386565b6103a261051136600461571b565b61108e565b61052961052436600461567f565b6110e9565b6040519015158152602001610386565b61054c610547366004615763565b611183565b60405164ffffffffff9091168152602001610386565b610529610570366004615648565b6114f5565b6102566105833660046157a1565b6115aa565b6105fa610596366004615648565b6040805180820182525f80825260209182018190526001600160601b03949094168452600a81528184206001600160a01b0393841685528152928190208151808301909252549182168152600160a01b90910464ffffffffff169181019190915290565b6040805182516001600160a01b0316815260209283015164ffffffffff169281019290925201610386565b6102566106333660046157df565b611600565b61025661064636600461585c565b61166d565b610256610659366004615924565b611694565b61025661066c366004615700565b61185b565b6003546001600160a01b0316610441565b6002546001600160a01b0316610441565b6106a66106a1366004615950565b6118bc565b604080516001600160601b03909316835264ffffffffff909116602083015201610386565b6103a26106d93660046157a1565b61195b565b6102566106ec366004615700565b611d9c565b6106f9611e14565b6040516001600160e01b03199091168152602001610386565b61025661072036600461597c565b611e36565b6107386107333660046159c8565b611e4d565b604080516001600160a01b03909316835264ffffffffff909116602083015201610386565b61025661076b366004615648565b611ffa565b61087461077e36600461567f565b60408051610120810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e08101829052610100810191909152506001600160601b039081165f9081526006602090815260409182902082516101208101845281548086168252600160601b808204871694830194909452600160c01b9081900464ffffffffff908116958301959095526001830154808716606084015293840486166080830152830490931660a0840152600160e81b90910460ff1660c0830152600201546001600160a01b03811660e0830152600160a01b900490911661010082015290565b6040516103869190615a05565b61092c61088f366004615648565b604080516080810182525f808252602082018190529181018290526060810191909152506001600160601b039182165f9081526008602090815260408083206001600160a01b0394909416835292815290829020825160808101845290548085168252600160601b810490941691810191909152600160c01b830461ffff1691810191909152600160d01b90910464ffffffffff16606082015290565b60405161038691905f6080820190506001600160601b0383511682526001600160601b03602084015116602083015261ffff604084015116604083015264ffffffffff606084015116606083015292915050565b61052961098e36600461567f565b612374565b6102566109a1366004615aee565b61241d565b5f546001600160a01b0316610441565b6102566109c4366004615700565b612535565b6103a26109d7366004615b1b565b612656565b6103a26109ea366004615950565b6127a0565b6103a26109fd366004615950565b612989565b6103a2610a10366004615b1b565b612a16565b610b40610a23366004615b48565b60408051610140810182525f80825260208201819052918101829052606081018290526080810182905260a0810182905260c0810182905260e0810182905261010081018290526101208101919091525060ff9081165f9081526005602090815260409182902082516101408101845281548086161515825261010080820487161515948301949094526201000081049095161515938101939093526001600160601b036301000000850481166060850152600160781b850416608084015264ffffffffff600160d81b909404841660a0840152600181015480851660c08501526001600160a01b0365010000000000909104811660e085015260029091015490811691830191909152600160a01b900490911661012082015290565b6040516103869190615b61565b610b59335b5f36612b4f565b5f80610b6484612c3e565b6003546001830154604051631e74126560e21b81526001600160a01b0392831660048201526001600160601b0389166024820152600160e81b90910460ff1660448201529086166064820152919350915073__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__906379d04994906084015f6040518083038186803b158015610bea575f80fd5b505af4158015610bfc573d5f803e3d5ffd5b5050506002830180546001600160a01b038681166001600160a01b031983161790925560408051639fa6a6e360e01b8152905192909116925073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e3916004808201926020929091908290030181865af4158015610c74573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610c989190615c4e565b835464ffffffffff60c01b1916600160c01b64ffffffffff92831602178455604080516001600160601b03881681526001600160a01b03808816602083015284169181019190915290831660608201527fd0227ef9a17652cfa7e48ccd5c6f70bf4d13dfe2eb71df80aa62881a3240d773906080015b60405180910390a15050505050565b5f610d2733610b52565b5f610d3186612cf6565b60018101549091505f90610d4d906001600160601b0316612dbb565b90508515610d6257610d60878383612e7e565b505b8415610d7557610d7387838361328a565b505b610d8187838387613550565b925050505b949350505050565b610d9733610b52565b5f610da182612cf6565b60018101549091505f90610dbd906001600160601b0316612dbb565b9050610dca838383612e7e565b50505050565b610dd933610b52565b600280546001600160a01b038381166001600160a01b03198316811790935560408051938452911660208301819052917f960b8b5c264ebbae758850aa1b8e20d698fe852b7c686ee4ee8e991602c42cbe91015b60405180910390a15050565b610e4233610b52565b6001600160601b0382165f908152600a602090815260408083206001600160a01b03851684529091529081902080549151638d38cd4b60e01b8152600160a01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af4158015610ecc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610ef09190615c69565b15610f1b578282604051633cdee7f960e01b8152600401610f12929190615c84565b60405180910390fd5b73__$bf7bc340cbb9229ef1de2c568356e67902$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610f62573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f869190615ca6565b81546001600160a01b0319166001600160a01b039190911617815560408051639fa6a6e360e01b8152905173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af4158015610fef573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110139190615c4e565b815464ffffffffff91909116600160a01b0264ffffffffff60a01b199091161781556040517e2713bc0b3137ab1236c169e5d41bf95db32cea0a163dc838d6842c6410b99a906110669085908590615c84565b60405180910390a1505050565b5f61107d33610b52565b61108682613772565b90505b919050565b5f61109833610b52565b5f6110a285612cf6565b60018101549091505f906110be906001600160601b0316612dbb565b905084156110d3576110d1868383612e7e565b505b6110df8683838761398b565b9695505050505050565b6001600160601b0381165f908152600b6020526040808220600101549051638d38cd4b60e01b8152600160881b90910464ffffffffff16600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af415801561115f573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906110869190615c69565b5f61118d33610b52565b6001600160601b0385165f908152600b60205260409081902060018101549151638d38cd4b60e01b8152600160881b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af4158015611206573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061122a9190615c69565b1561125357604051630e5c323960e01b81526001600160601b0387166004820152602401610f12565b5f61125d86612dbb565b905061126a868286613b97565b6001820180546001600160601b0319166001600160601b0388161790556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af41580156112d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906112f99190615cc1565b82546001600160601b0319166001600160601b03919091161782556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af4158015611362573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906113869190615cc1565b825f01600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156113f4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114189190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b1990911617825561144382613c30565b5060018201548254604080516001600160601b03808c168252938416602082015292821690830152600160c01b900464ffffffffff1660608201526001600160a01b03861660808201527fd3ee63d0421bec5f3bb2d1f810b978739c31bb1e1f31c7113739eca75026933b9060a00160405180910390a16114dc8783838460010160189054906101000a900464ffffffffff1688613d6c565b5054600160c01b900464ffffffffff1695945050505050565b6001600160601b0382165f908152600a602090815260408083206001600160a01b0385168452909152808220549051638d38cd4b60e01b8152600160a01b90910464ffffffffff16600482015273__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b906024015b602060405180830381865af415801561157d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115a19190615c69565b90505b92915050565b6115b333610b52565b5f6115bd83612cf6565b60018101549091505f906115d9906001600160601b0316612dbb565b905082156115ee576115ec848383612e7e565b505b6115f984838361328a565b5050505050565b61160933610b52565b5f61161386612cf6565b60018101549091505f9061162f906001600160601b0316612dbb565b9050851561164457611642878383612e7e565b505b84156116575761165587838361328a565b505b6116648783838787613d6c565b50505050505050565b61167633610b52565b6116888a8a8a8a8a8a8a8a8a8a614113565b50505050505050505050565b61169d33610b52565b5f806116a884612c3e565b6003546001830154604051632048909b60e21b81526001600160a01b0390921660048301526001600160601b0388166024830152600160e81b900460ff16604482015264ffffffffff86166064820152919350915073__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__90638122426c906084015f6040518083038186803b158015611732575f80fd5b505af4158015611744573d5f803e3d5ffd5b50505060018301805464ffffffffff868116600160c01b90810264ffffffffff60c01b1984161790935560408051639fa6a6e360e01b815290519390920416925073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e3916004808201926020929091908290030181865af41580156117c4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906117e89190615c4e565b835464ffffffffff60c01b1916600160c01b64ffffffffff92831602178455604080516001600160601b038816815286831660208201528383169181019190915290831660608201527f63545c71b15de59d1463d3e2577b64bc3c5510cd1dd0243eb030f9da55a65fe090608001610d0e565b61186433610b52565b600380546001600160a01b038381166001600160a01b03198316811790935560408051938452911660208301819052917f8414c1d6352c513484c229579bca3842a94d9c46e1dd28ec9b03c9b3d5a4ae429101610e2d565b5f806118c733610b52565b5f6118d185612c3e565b6001820180546001600160601b03888116600160601b818102600160601b600160c01b0319851617909455604080518c84168152602081019290925264ffffffffff861690820152929091041695509093509091507f74cf98e0b0178be4925e6447d2bdeea75507d176a76652c4b0eda5f06da689c39060600160405180910390a1509250929050565b6001600160601b0382165f908152600960209081526040808320805482518185028101850190935280835284938301828280156119bf57602002820191905f5260205f20905b81546001600160a01b031681526001909101906020018083116119a1575b5050505050905080515f03611a415773__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015611a15573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611a399190615cc1565b9150506115a4565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015611a88573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611aac9190615cc1565b6001600160601b038086165f90815260066020526040812060020154929450600160a01b90920416908080805b8551811015611ce557858181518110611af457611af4615cdc565b6020908102919091018101516001600160601b038b81165f9081526008845260408082206001600160a01b0385168352909452839020549251630a4d29dd60e31b8152921660048301819052909550935073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015611b7f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ba39190615c69565b611cdd576001600160601b0385165f908152600a602090815260408083206001600160a01b038881168552925291829020549151636a88f0a760e11b8152911660048201819052925073__$bf7bc340cbb9229ef1de2c568356e67902$__9063d511e14e90602401602060405180830381865af4158015611c26573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611c4a9190615c69565b611cdd57604051636e5912e760e01b8152611cda90889073__$3bac17678db7ae928afa209f2f44deec9c$__90636e5912e790611c96906001600160601b038916908890600401615c84565b602060405180830381865af4158015611cb1573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611cd59190615cc1565b6145cc565b96505b600101611ad9565b508615611d91576001600160601b038881165f90815260066020908152604080832060010154600160e81b900460ff168084526005909252909120805491929091611d39918a916301000000900416614651565b15611d57578054630100000090046001600160601b03169750611d8e565b8054611d74908990600160781b90046001600160601b031661469b565b15611d8e578054600160781b90046001600160601b031697505b50505b505050505092915050565b5f5433906001600160a01b03168114611dd25760405162d1953b60e31b81526001600160a01b0382166004820152602401610f12565b816001600160a01b03163b5f03611e07576040516361798f2f60e11b81526001600160a01b0383166004820152602401610f12565b611e10826146e5565b5050565b5f8054600160a01b900460ff16611e2a57505f90565b50638fb3603760e01b90565b611e3f33610b52565b610dca848484846001614738565b5f80611e5833610b52565b6001600160601b0385165f908152600a602090815260408083206001600160a01b0388168452909152908190208054915163790a38ad60e01b8152600160a01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015611ee2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f069190615c69565b15611f2857858560405163020c3e0f60e31b8152600401610f12929190615c84565b80546001600160a01b038581166001600160a01b0319831617835560408051639fa6a6e360e01b81529051918316955064ffffffffff600160a01b90930492909216935073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af4158015611faa573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611fce9190615c4e565b815464ffffffffff91909116600160a01b0264ffffffffff60a01b199091161790559094909350915050565b61200333610b52565b6001600160601b0382165f9081526008602090815260408083206001600160a01b03851684529091529081902080549151638d38cd4b60e01b8152600160d01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__90638d38cd4b90602401602060405180830381865af415801561208d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120b19190615c69565b156120bb57505050565b6120c483612dbb565b506040516301f8588560e51b81526001600160601b03841660048201525f9073__$dacf551d137a232f87fa09e79113e25430$__90633f0b10a090602401602060405180830381865af415801561211d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121419190615cc1565b6001600160601b0381165f908152600a602090815260408083206001600160a01b03881684529091529081902054905163790a38ad60e01b8152600160a01b90910464ffffffffff16600482015290915073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af41580156121cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906121f09190615c69565b1561221257808360405163020c3e0f60e31b8152600401610f12929190615c84565b73__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015612259573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061227d9190615cc1565b82546001600160601b0319166001600160601b039190911617825560408051639fa6a6e360e01b8152905173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af41580156122e6573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061230a9190615c4e565b825464ffffffffff91909116600160d01b0264ffffffffff60d01b1990911617909155506001600160601b0382165f9081526009602090815260408220805460018101825590835291200180546001600160a01b0383166001600160a01b03199091161790555050565b6001600160601b0381165f908152600b60209081526040808320548151639fa6a6e360e01b8152915161108693600160c01b90920464ffffffffff169273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__92639fa6a6e3926004808401938290030181865af41580156123ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061240e9190615c4e565b64ffffffffff90811691161190565b61242633610b52565b5f61243084614e83565b80546001600160601b038581166001600160c01b0319831617600160601b9186169190910217825560408051639fa6a6e360e01b81529051929350600160c01b90910464ffffffffff169173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af41580156124b9573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124dd9190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782556040517ff247f9f8f9c455e0928cd8b5f34ef2567264cde4001db187c3e930c25e08fc1590610d0e908790879087908690615cf0565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff165f8115801561257a5750825b90505f8267ffffffffffffffff1660011480156125965750303b155b9050811580156125a4575080155b156125c25760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156125ec57845460ff60401b1916600160401b1785555b600280546001600160a01b0319166001600160a01b038816179055831561264e57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b505050505050565b5f61266033610b52565b5f61266b8585614f46565b805490915064ffffffffff600160d01b82041690612692906001600160601b031685615016565b82546001600160601b0319166001600160601b03919091161782556126b8868684615060565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156126ff573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127239190615c4e565b825464ffffffffff91909116600160d01b0264ffffffffff60d01b198216811784556040516001600160601b03918216919092161793507f6eea09d3401164101f559606e8c76aca972689ba8330a579bd6507b5889d153f9061278f9088908890889088908790615d20565b60405180910390a150509392505050565b5f6127aa33610b52565b5f6127b484612dbb565b80546001820154919250600160c01b900464ffffffffff16906127e0906001600160601b0316856145cc565b826001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561284e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128729190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782556001808301549054604051631c5da14d60e11b81526001600160601b03888116600483015290921694507f317c91a4e8d5e9d4af7c5e856f79e6db430257dabe4a32a352ef58b9ba000f3d91879187916001600160a01b03909116906338bb429a906024015b602060405180830381865afa158015612915573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129399190615ca6565b604080516001600160601b03948516815292841660208401526001600160a01b0390911690820152908516606082015264ffffffffff8316608082015260a00160405180910390a1505092915050565b5f61299333610b52565b5f61299d84612dbb565b90505f6129ab85838661517d565b6001838101549054604051631c5da14d60e11b81526001600160601b03898116600483015290921695509192507fb144c2ad8fd690acb16f40becc8acde92c8694ef99952f875213f57ce1b7acef91879187916001600160a01b0316906338bb429a906024016128fa565b5f612a2033610b52565b5f612a2b8585614f46565b805490915064ffffffffff600160d01b82041690612a52906001600160601b0316856145cc565b82546001600160601b0319166001600160601b0391909116178255612a78868684615060565b73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015612abf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ae39190615c4e565b825464ffffffffff91909116600160d01b0264ffffffffff60d01b198216811784556040516001600160601b03918216919092161793507f05e52d64c754f7a526cf0704e8cfe26c04e8b656e7b493f61fbda7109a326f429061278f9088908890889088908790615d20565b5f80612b82612b655f546001600160a01b031690565b8630612b7460045f898b615d62565b612b7d91615d89565b6152ba565b91509150816115f95763ffffffff811615612c1b575f805460ff60a01b198116600160a01b17909155604051634a63ebf760e11b81526001600160a01b03909116906394c7d7ee90612bdc90889088908890600401615dbf565b5f604051808303815f87803b158015612bf3575f80fd5b505af1158015612c05573d5f803e3d5ffd5b50505f805460ff60a01b19169055506115f99050565b60405162d1953b60e31b81526001600160a01b0386166004820152602401610f12565b5f80612c4983612dbb565b9150815f0160189054906101000a900464ffffffffff16905073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015612ca9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612ccd9190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782559092909150565b6001600160601b0381165f908152600b6020526040908190206001810154915163790a38ad60e01b8152600160881b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015612d6f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d939190615c69565b156110895760405162af6eb360e61b81526001600160601b0383166004820152602401610f12565b6001600160601b0381165f90815260066020526040908190208054915163790a38ad60e01b8152600160c01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015612e31573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e559190615c69565b156110895760405163091c22d760e41b81526001600160601b0383166004820152602401610f12565b6002810154604051636a88f0a760e11b81526001600160a01b0390911660048201525f9073__$bf7bc340cbb9229ef1de2c568356e67902$__9063d511e14e90602401602060405180830381865af4158015612edc573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f009190615c69565b613283576001830154604051633682752160e21b8152600160601b90910464ffffffffff1660048201525f9073__$71e292c09eace9601b3e21e68a1278917a$__90630c67422c9073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063da09d48490602401602060405180830381865af4158015612f82573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612fa69190615dfe565b612fb09042615e29565b6040518263ffffffff1660e01b8152600401612fce91815260200190565b602060405180830381865af4158015612fe9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061300d9190615c4e565b60405163790a38ad60e01b815264ffffffffff8216600482015290915073__$71e292c09eace9601b3e21e68a1278917a$__9063790a38ad90602401602060405180830381865af4158015613064573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130889190615c69565b156131005773__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156130d4573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130f89190615cc1565b915050613283565b60028301548454604051635bdf11e360e11b81526001600160a01b03909216600483015264ffffffffff831660248301526001600160601b0316604482015273__$f048dbd5170c0ac319fa0222065b281d84$__9063b7be23c690606401602060405180830381865af4158015613179573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061319d9190615cc1565b83549092506131bc90600160601b90046001600160601b0316836145cc565b8354600160601b600160c01b031916600160601b6001600160601b03928316810291909117855585546131f39291900416836145cc565b84546001600160601b0391909116600160601b02600160601b600160c01b03199091161784555f61322485856153c2565b85546040519192507fed4853b0609e21bd14ba3f580ebca5d25c21bc024161fd250b6b33c768c1c8729161278f91899187916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b9392505050565b8154604051630a4d29dd60e31b8152600160601b9091046001600160601b0316600482018190529073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af41580156132ec573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133109190615c69565b61328357600183015461332d906001600160601b03168383613b97565b6001830154613346906001600160601b03168383615459565b815461335b906001600160601b0316826145cc565b82546001600160601b0319166001600160601b039182161780845561338991600160601b9091041682615016565b8254600160601b600160c01b031916600160601b6001600160601b039283160217835583546133b99116826145cc565b83546001600160601b0319166001600160601b03919091161783556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af4158015613422573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906134469190615cc1565b83546001600160601b0391909116600160601b02600160601b600160c01b03199091161783555f61347784846153c2565b90507f38151af1adffdc3651d3f7917ea0e90417d40e286b11741dd01a3e3228d96c598583865f015f9054906101000a90046001600160601b031673__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156134f9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061351d9190615cc1565b88546040516135409594939291600160c01b900464ffffffffff16908890615e3c565b60405180910390a1509392505050565b8254604051637931c81160e01b81526001600160601b03808416600483015290911660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af41580156135b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906135d79190615cc1565b604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015613630573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906136549190615c69565b610d865761366185612374565b156136a057835460405163187bc0bd60e21b81526001600160601b0387166004820152600160c01b90910464ffffffffff166024820152604401610f12565b82546136b5906001600160601b031682615016565b83546001600160601b0319166001600160601b0391821617845584546136dc911682615016565b84546001600160601b0319166001600160601b03919091161784555f61370285856153c2565b85546040519192507fed7a6a5cb58253a85b06a414d4fb43855fc759e9f19af28b775bf2b47ec7bf709161376191899186916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b60405180910390a150949350505050565b5f8061377d83612dbb565b90505f61378984614e83565b8054909150600160c01b900464ffffffffff165f6137a7868261195b565b83549091506137c09082906001600160601b03166145cc565b8354604051637931c81160e01b81526001600160601b038084166004830152600160601b909204909116602482015290955073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af415801561382c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138509190615cc1565b94508484600101600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156138c2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138e69190615c4e565b845464ffffffffff60c01b198116600160c01b64ffffffffff93841602908117875560018701548654604080516001600160601b03808e168252600160601b9485900481166020830152939092048316908201528582166060820152928116911617608082015290831660a08201527f816866bb29a0d245f04a0179c957b4495d86447de93a8a4962fd3528510991429060c00160405180910390a150505050919050565b8254604051637931c81160e01b81526001600160601b038084166004830152600160601b90920490911660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__90637931c81190604401602060405180830381865af41580156139f6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a1a9190615cc1565b604051630a4d29dd60e31b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015613a73573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a979190615c69565b610d86576001840154613ab4906001600160601b03168483615459565b8254613ad090600160601b90046001600160601b031682615016565b8354600160601b600160c01b031916600160601b6001600160601b0392831681029190911785558554613b07929190041682615016565b84546001600160601b0391909116600160601b02600160601b600160c01b03199091161784555f613b3885856153c2565b85546040519192507f39ee77ec34c101210194f9f2c8be592bf5ef303db8e68adf58b4fbe747a134829161376191899186916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b8154613bca90613bb0906001600160601b0316836145cc565b6001840154600160601b90046001600160601b031661469b565b15613c2b576001820154825484916001600160601b03600160601b909104811691613bf69116846145cc565b604051631946161f60e01b81526001600160601b03938416600482015291831660248301529091166044820152606401610f12565b505050565b5f8160010160119054906101000a900464ffffffffff16905073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613c90573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613cb49190615c4e565b8260010160116101000a81548164ffffffffff021916908364ffffffffff16021790555073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015613d1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d439190615c4e565b82600101600c6101000a81548164ffffffffff021916908364ffffffffff160217905550919050565b604051630a4d29dd60e31b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015613dc2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613de69190615c69565b6115f9576001840154613e03906001600160601b03168483613b97565b8254613e18906001600160601b0316826145cc565b83546001600160601b0319166001600160601b039182161784558454613e3f9116826145cc565b84546001600160601b0319166001600160601b0391909116178455600183015460405163e83da7ad60e01b815264ffffffffff8085166004830152600160c01b90920490911660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__9063e83da7ad90604401602060405180830381865af4158015613ec6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613eea9190615c4e565b6040516330b8415f60e01b81526001600160601b038416600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af4158015613f43573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613f679190615c69565b8015613fe65750604051638d38cd4b60e01b815264ffffffffff8216600482015273__$71e292c09eace9601b3e21e68a1278917a$__90638d38cd4b90602401602060405180830381865af4158015613fc2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613fe69190615c69565b156140985784546040516352bcc5a760e11b8152600160c01b90910464ffffffffff90811660048301528216602482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af4158015614051573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906140759190615c4e565b855464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161785555b5f6140a386866153c2565b86546040519192507f15d4969bfd34a12fabf5d09d2615ffc4f81d206e7756d9e3c0919ba800d57e4191614102918a9187916001600160601b0380821692600160601b830490911691600160c01b900464ffffffffff16908890615e3c565b60405180910390a150505050505050565b60405163037c8cb160e51b815260ff8b16600482015273__$0d958e68cba84670b8f4a3f2f2686b1c6b$__90636f91962090602401602060405180830381865af4158015614163573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906141879190615c69565b156141aa57604051633c00d02760e01b815260ff8b166004820152602401610f12565b6141b4868661469b565b156141e457604051622a505160e91b81526001600160601b03808816600483015286166024820152604401610f12565b6141ee84846154b9565b1561421d576040516338157c8960e21b815264ffffffffff808616600483015284166024820152604401610f12565b6001600160a01b03808216908316111561425d57604051638ae671e360e01b81526001600160a01b03808416600483015282166024820152604401610f12565b5f60055f8c60ff1660ff1681526020019081526020015f2060020160149054906101000a900464ffffffffff1690508960055f8d60ff1660ff1681526020019081526020015f205f015f6101000a81548160ff0219169083151502179055508860055f8d60ff1660ff1681526020019081526020015f205f0160016101000a81548160ff0219169083151502179055508760055f8d60ff1660ff1681526020019081526020015f205f0160026101000a81548160ff0219169083151502179055508660055f8d60ff1660ff1681526020019081526020015f205f0160036101000a8154816001600160601b0302191690836001600160601b031602179055508560055f8d60ff1660ff1681526020019081526020015f205f01600f6101000a8154816001600160601b0302191690836001600160601b031602179055508460055f8d60ff1660ff1681526020019081526020015f205f01601b6101000a81548164ffffffffff021916908364ffffffffff1602179055508360055f8d60ff1660ff1681526020019081526020015f206001015f6101000a81548164ffffffffff021916908364ffffffffff1602179055508260055f8d60ff1660ff1681526020019081526020015f2060010160056101000a8154816001600160a01b0302191690836001600160a01b031602179055508160055f8d60ff1660ff1681526020019081526020015f206002015f6101000a8154816001600160a01b0302191690836001600160a01b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af41580156144d2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906144f69190615c4e565b60ff8c165f81815260056020908152604091829020600201805464ffffffffff60a01b1916600160a01b64ffffffffff9687160217905581519283528d1515908301528b15159082015289151560608201526001600160601b03808a166080830152881660a082015286821660c082015285821660e08201526001600160a01b0380861661010083015284166101208201529082166101408201527fb24c8b320e3f99e0aef480e78c342643583880e3f5a1c392a85a4c51f76799f8906101600160405180910390a15050505050505050505050565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb35906044015b602060405180830381865af415801561462d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115a19190615cc1565b6040516304d40eb160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906309a81d6290604401611562565b604051632601631360e21b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906398058c4c90604401611562565b5f80546001600160a01b0319166001600160a01b0383169081179091556040519081527f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9060200160405180910390a150565b80156147e25760015460035460405163647b8c2f60e01b81526001600160a01b03928316600482015290821660248201526001600160601b038716604482015260ff8616606482015264ffffffffff8516608482015290831660a482015273__$fb6c7635e3c1acf7e7d82c7d43e7a24671$__9063647b8c2f9060c4015f6040518083038186803b1580156147cb575f80fd5b505af41580156147dd573d5f803e3d5ffd5b505050505b6001600160601b0385165f90815260066020908152604091829020825163bc1b392d60e01b81529251909273__$3bac17678db7ae928afa209f2f44deec9c$__9263bc1b392d926004808401938290030181865af4158015614846573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061486a9190615cc1565b81546001600160601b0319166001600160601b03919091161781556040805163bc1b392d60e01b8152905173__$3bac17678db7ae928afa209f2f44deec9c$__9163bc1b392d9160048083019260209291908290030181865af41580156148d3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906148f79190615cc1565b815f01600c6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015614965573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906149899190615cc1565b816001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af41580156149f7573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614a1b9190615cc1565b60018201805471ff0000000000ffffffffffffffffffffffff60601b1916600160601b6001600160601b039384160260ff60e81b191617600160e81b60ff8916021764ffffffffff60c01b1916600160c01b64ffffffffff8816021790556002820180546001600160a01b0319166001600160a01b0386161790556040516301f8588560e51b8152908716600482015273__$dacf551d137a232f87fa09e79113e25430$__90633f0b10a090602401602060405180830381865af4158015614ae5573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614b099190615cc1565b8160020160146101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af4158015614b78573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614b9c9190615c4e565b815f0160186101000a81548164ffffffffff021916908364ffffffffff160217905550614dbf60075f886001600160601b03166001600160601b031681526020019081526020015f208773__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd96600273__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af4158015614c49573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614c6d9190615cc1565b60405163046e44af60e11b81526001600160601b03909116600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015614cc4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614ce89190615dfe565b614cf29190615e7c565b6040518263ffffffff1660e01b8152600401614d1091815260200190565b602060405180830381865af4158015614d2b573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614d4f9190615cc1565b73__$3bac17678db7ae928afa209f2f44deec9c$__636ac5db196040518163ffffffff1660e01b8152600401602060405180830381865af4158015614d96573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614dba9190615cc1565b615501565b600480546040516346f0e8a760e11b81526001600160601b038916928101929092526001600160a01b031690638de1d14e906024015f604051808303815f87803b158015614e0b575f80fd5b505af1158015614e1d573d5f803e3d5ffd5b5050604080516001600160601b038a16815260ff8916602082015264ffffffffff8816918101919091526001600160a01b03861660608201527f086dbed771133d4ebbe0285c0df8231e94a664efbae4bd66c0e3e9f11c7fd0f092506080019050612645565b6001600160601b0381165f90815260076020526040908190208054915163790a38ad60e01b8152600160c01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015614ef9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614f1d9190615c69565b15611089576040516384bdfa9560e01b81526001600160601b0383166004820152602401610f12565b6001600160601b0382165f9081526008602090815260408083206001600160a01b0385168452909152908190208054915163790a38ad60e01b8152600160d01b90920464ffffffffff1660048301529073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__9063790a38ad90602401602060405180830381865af4158015614fd0573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190614ff49190615c69565b156115a457828260405163688e635d60e11b8152600401610f12929190615c84565b6040516363cf551160e11b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa2290604401614612565b8054600160c01b900461ffff1681601861507983615e9b565b82546101009290920a61ffff8181021990931691831602179091556002548354604051638755a73f60e01b81526001600160601b0380891660048301526001600160a01b038881166024840152600160c01b84049095166044830152600160601b83048116606483015290911660848201525f9350911690638755a73f9060a401602060405180830381865afa158015615115573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906151399190615c69565b90508015610dca57815461ffff60c01b19600160601b6001600160601b03831602166dffffffffffffffffffffffffffff60601b199091161782556115f984613772565b81546001830154600160c01b90910464ffffffffff16906151a89083906001600160601b031661469b565b156151e75760018301546040516301a4b29960e11b81526001600160601b03808716600483015291821660248201529083166044820152606401610f12565b60018301546151ff906001600160601b031683615016565b836001015f6101000a8154816001600160601b0302191690836001600160601b0316021790555073__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561526d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906152919190615c4e565b835464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161790925550919050565b6040516001600160a01b03848116602483015283811660448301526001600160e01b0319831660648301525f9182918291829189169060840160408051601f198184030181529181526020820180516001600160e01b031663b700961360e01b179052516153289190615ebb565b5f60405180830381855afa9150503d805f8114615360576040519150601f19603f3d011682016040523d82523d5f602084013e615365565b606091505b509150915081156153b7576040815110615397578080602001905181019061538d9190615ed1565b90945092506153b7565b60208151106153b757808060200190518101906153b49190615c69565b93505b505094509492505050565b5f73__$f55ca14f1ddce1b88fe30d23ae45f595f4$__639fa6a6e36040518163ffffffff1660e01b8152600401602060405180830381865af415801561540a573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061542e9190615c4e565b825464ffffffffff91909116600160c01b0264ffffffffff60c01b199091161782556115a183613c30565b5f61546584848461517d565b60018401546040519192507fc0f991fc396647cd10937655916d61916ae77295c1d6a67e335bc8f502417491916154ab91879186916001600160601b0316908690615cf0565b60405180910390a150505050565b6040516383ffcdef60e01b815264ffffffffff8084166004830152821660248201525f9073__$71e292c09eace9601b3e21e68a1278917a$__906383ffcdef90604401611562565b83546001600160601b038381166001600160c01b0319831617600160601b9184169190910217855560408051639fa6a6e360e01b81529051600160c01b90920464ffffffffff169173__$f55ca14f1ddce1b88fe30d23ae45f595f4$__91639fa6a6e39160048083019260209291908290030181865af4158015615587573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906155ab9190615c4e565b855464ffffffffff91909116600160c01b0264ffffffffff60c01b19821681178088556040517f05c35323706f609643b5b81348a27fedbbaf7ae364b4d43f69a8853c024f204793610d0e9389936001600160601b039182169282169290921792600160601b90920416908690615cf0565b6001600160601b0381168114615631575f80fd5b50565b6001600160a01b0381168114615631575f80fd5b5f8060408385031215615659575f80fd5b82356156648161561d565b9150602083013561567481615634565b809150509250929050565b5f6020828403121561568f575f80fd5b81356132838161561d565b8015158114615631575f80fd5b5f805f80608085870312156156ba575f80fd5b84356156c58161561d565b935060208501356156d58161569a565b925060408501356156e58161569a565b915060608501356156f58161561d565b939692955090935050565b5f60208284031215615710575f80fd5b813561328381615634565b5f805f6060848603121561572d575f80fd5b83356157388161561d565b925060208401356157488161569a565b915060408401356157588161561d565b809150509250925092565b5f805f8060808587031215615776575f80fd5b84356157818161561d565b935060208501356157918161561d565b925060408501356156e581615634565b5f80604083850312156157b2575f80fd5b82356157bd8161561d565b915060208301356156748161569a565b64ffffffffff81168114615631575f80fd5b5f805f805f60a086880312156157f3575f80fd5b85356157fe8161561d565b9450602086013561580e8161569a565b9350604086013561581e8161569a565b9250606086013561582e816157cd565b9150608086013561583e8161561d565b809150509295509295909350565b803560ff81168114611089575f80fd5b5f805f805f805f805f806101408b8d031215615876575f80fd5b61587f8b61584c565b995060208b013561588f8161569a565b985060408b013561589f8161569a565b975060608b01356158af8161569a565b965060808b01356158bf8161561d565b955060a08b01356158cf8161561d565b945060c08b01356158df816157cd565b935060e08b01356158ef816157cd565b92506101008b013561590081615634565b91506101208b013561591181615634565b809150509295989b9194979a5092959850565b5f8060408385031215615935575f80fd5b82356159408161561d565b91506020830135615674816157cd565b5f8060408385031215615961575f80fd5b823561596c8161561d565b915060208301356156748161561d565b5f805f806080858703121561598f575f80fd5b843561599a8161561d565b93506159a86020860161584c565b925060408501356159b8816157cd565b915060608501356156f581615634565b5f805f606084860312156159da575f80fd5b83356159e58161561d565b925060208401356159f581615634565b9150604084013561575881615634565b81516001600160601b03168152602080830151610120830191615a32908401826001600160601b03169052565b506040830151615a4b604084018264ffffffffff169052565b506060830151615a6660608401826001600160601b03169052565b506080830151615a8160808401826001600160601b03169052565b5060a0830151615a9a60a084018264ffffffffff169052565b5060c0830151615aaf60c084018260ff169052565b5060e0830151615aca60e08401826001600160a01b03169052565b50610100830151615ae76101008401826001600160601b03169052565b5092915050565b5f805f60608486031215615b00575f80fd5b8335615b0b8161561d565b925060208401356157488161561d565b5f805f60608486031215615b2d575f80fd5b8335615b388161561d565b9250602084013561574881615634565b5f60208284031215615b58575f80fd5b6115a18261584c565b81511515815261014081016020830151615b7f602084018215159052565b506040830151615b93604084018215159052565b506060830151615bae60608401826001600160601b03169052565b506080830151615bc960808401826001600160601b03169052565b5060a0830151615be260a084018264ffffffffff169052565b5060c0830151615bfb60c084018264ffffffffff169052565b5060e0830151615c1660e08401826001600160a01b03169052565b50610100830151615c336101008401826001600160a01b03169052565b50610120830151615ae761012084018264ffffffffff169052565b5f60208284031215615c5e575f80fd5b8151613283816157cd565b5f60208284031215615c79575f80fd5b81516132838161569a565b6001600160601b039290921682526001600160a01b0316602082015260400190565b5f60208284031215615cb6575f80fd5b815161328381615634565b5f60208284031215615cd1575f80fd5b81516132838161561d565b634e487b7160e01b5f52603260045260245ffd5b6001600160601b03948516815292841660208401529216604082015264ffffffffff909116606082015260800190565b6001600160601b0395861681526001600160a01b039490941660208501529184166040840152909216606082015264ffffffffff909116608082015260a00190565b5f8085851115615d70575f80fd5b83861115615d7c575f80fd5b5050820193919092039150565b80356001600160e01b03198116906004841015615ae7576001600160e01b031960049490940360031b84901b1690921692915050565b6001600160a01b03841681526040602082018190528101829052818360608301375f818301606090810191909152601f909201601f1916010192915050565b5f60208284031215615e0e575f80fd5b5051919050565b634e487b7160e01b5f52601160045260245ffd5b818103818111156115a4576115a4615e15565b6001600160601b039687168152948616602086015292851660408501529316606083015264ffffffffff928316608083015290911660a082015260c00190565b5f82615e9657634e487b7160e01b5f52601260045260245ffd5b500490565b5f61ffff821661ffff8103615eb257615eb2615e15565b60010192915050565b5f82518060208501845e5f920191825250919050565b5f8060408385031215615ee2575f80fd5b8251615eed8161569a565b602084015190925063ffffffff81168114615674575f80fdfea2646970667358221220e310760562fc7db12c730b71f6c598d8b319272647235d1a7bf18a00969ea66e64736f6c634300081a0033",
|
1691
2225
|
"linkReferences": {
|
2226
|
+
"contracts/staking/StakingLib.sol": {
|
2227
|
+
"StakingLib": [
|
2228
|
+
{
|
2229
|
+
"length": 20,
|
2230
|
+
"start": 18688
|
2231
|
+
}
|
2232
|
+
]
|
2233
|
+
},
|
1692
2234
|
"contracts/staking/TargetManagerLib.sol": {
|
1693
2235
|
"TargetManagerLib": [
|
1694
2236
|
{
|
1695
2237
|
"length": 20,
|
1696
|
-
"start":
|
2238
|
+
"start": 1297
|
2239
|
+
},
|
2240
|
+
{
|
2241
|
+
"length": 20,
|
2242
|
+
"start": 1404
|
2243
|
+
},
|
2244
|
+
{
|
2245
|
+
"length": 20,
|
2246
|
+
"start": 3448
|
2247
|
+
},
|
2248
|
+
{
|
2249
|
+
"length": 20,
|
2250
|
+
"start": 9078
|
2251
|
+
},
|
2252
|
+
{
|
2253
|
+
"length": 20,
|
2254
|
+
"start": 11966
|
1697
2255
|
},
|
1698
2256
|
{
|
1699
2257
|
"length": 20,
|
1700
|
-
"start":
|
2258
|
+
"start": 24407
|
1701
2259
|
}
|
1702
2260
|
]
|
1703
2261
|
},
|
@@ -1705,227 +2263,327 @@
|
|
1705
2263
|
"AmountLib": [
|
1706
2264
|
{
|
1707
2265
|
"length": 20,
|
1708
|
-
"start":
|
2266
|
+
"start": 513
|
1709
2267
|
},
|
1710
2268
|
{
|
1711
2269
|
"length": 20,
|
1712
|
-
"start":
|
2270
|
+
"start": 620
|
1713
2271
|
},
|
1714
2272
|
{
|
1715
2273
|
"length": 20,
|
1716
|
-
"start":
|
2274
|
+
"start": 1558
|
1717
2275
|
},
|
1718
2276
|
{
|
1719
2277
|
"length": 20,
|
1720
|
-
"start":
|
2278
|
+
"start": 1652
|
1721
2279
|
},
|
1722
2280
|
{
|
1723
2281
|
"length": 20,
|
1724
|
-
"start":
|
2282
|
+
"start": 3567
|
1725
2283
|
},
|
1726
2284
|
{
|
1727
2285
|
"length": 20,
|
1728
|
-
"start":
|
2286
|
+
"start": 3703
|
1729
2287
|
},
|
1730
2288
|
{
|
1731
2289
|
"length": 20,
|
1732
|
-
"start":
|
2290
|
+
"start": 3840
|
1733
2291
|
},
|
1734
2292
|
{
|
1735
2293
|
"length": 20,
|
1736
|
-
"start":
|
2294
|
+
"start": 3986
|
1737
2295
|
},
|
1738
2296
|
{
|
1739
2297
|
"length": 20,
|
1740
|
-
"start":
|
2298
|
+
"start": 4555
|
1741
2299
|
},
|
1742
2300
|
{
|
1743
2301
|
"length": 20,
|
1744
|
-
"start":
|
2302
|
+
"start": 4583
|
1745
2303
|
},
|
1746
2304
|
{
|
1747
2305
|
"length": 20,
|
1748
|
-
"start":
|
2306
|
+
"start": 4719
|
1749
2307
|
},
|
1750
2308
|
{
|
1751
2309
|
"length": 20,
|
1752
|
-
"start":
|
2310
|
+
"start": 4916
|
1753
2311
|
},
|
1754
2312
|
{
|
1755
2313
|
"length": 20,
|
1756
|
-
"start":
|
2314
|
+
"start": 5269
|
1757
2315
|
},
|
1758
2316
|
{
|
1759
2317
|
"length": 20,
|
1760
|
-
"start":
|
2318
|
+
"start": 10840
|
1761
2319
|
},
|
1762
2320
|
{
|
1763
2321
|
"length": 20,
|
1764
|
-
"start":
|
2322
|
+
"start": 10981
|
1765
2323
|
},
|
1766
2324
|
{
|
1767
2325
|
"length": 20,
|
1768
|
-
"start":
|
2326
|
+
"start": 12687
|
1769
2327
|
},
|
1770
2328
|
{
|
1771
2329
|
"length": 20,
|
1772
|
-
"start":
|
1773
|
-
}
|
1774
|
-
|
1775
|
-
|
1776
|
-
|
1777
|
-
|
2330
|
+
"start": 12802
|
2331
|
+
},
|
2332
|
+
{
|
2333
|
+
"length": 20,
|
2334
|
+
"start": 13062
|
2335
|
+
},
|
2336
|
+
{
|
2337
|
+
"length": 20,
|
2338
|
+
"start": 13346
|
2339
|
+
},
|
2340
|
+
{
|
2341
|
+
"length": 20,
|
2342
|
+
"start": 14803
|
2343
|
+
},
|
2344
|
+
{
|
2345
|
+
"length": 20,
|
2346
|
+
"start": 18510
|
2347
|
+
},
|
2348
|
+
{
|
2349
|
+
"length": 20,
|
2350
|
+
"start": 19059
|
2351
|
+
},
|
2352
|
+
{
|
2353
|
+
"length": 20,
|
2354
|
+
"start": 19365
|
2355
|
+
},
|
2356
|
+
{
|
2357
|
+
"length": 20,
|
2358
|
+
"start": 19571
|
2359
|
+
},
|
1778
2360
|
{
|
1779
2361
|
"length": 20,
|
1780
|
-
"start":
|
2362
|
+
"start": 19770
|
1781
2363
|
},
|
1782
2364
|
{
|
1783
2365
|
"length": 20,
|
1784
|
-
"start":
|
2366
|
+
"start": 19895
|
1785
2367
|
},
|
1786
2368
|
{
|
1787
2369
|
"length": 20,
|
1788
|
-
"start":
|
2370
|
+
"start": 20403
|
1789
2371
|
},
|
1790
2372
|
{
|
1791
2373
|
"length": 20,
|
1792
|
-
"start":
|
2374
|
+
"start": 20861
|
1793
2375
|
},
|
1794
2376
|
{
|
1795
2377
|
"length": 20,
|
1796
|
-
"start":
|
2378
|
+
"start": 20986
|
1797
2379
|
},
|
1798
2380
|
{
|
1799
2381
|
"length": 20,
|
1800
|
-
"start":
|
2382
|
+
"start": 21833
|
1801
2383
|
},
|
1802
2384
|
{
|
1803
2385
|
"length": 20,
|
1804
|
-
"start":
|
2386
|
+
"start": 22218
|
1805
2387
|
},
|
1806
2388
|
{
|
1807
2389
|
"length": 20,
|
1808
|
-
"start":
|
2390
|
+
"start": 23987
|
1809
2391
|
},
|
1810
2392
|
{
|
1811
2393
|
"length": 20,
|
1812
|
-
"start":
|
2394
|
+
"start": 24120
|
1813
2395
|
},
|
1814
2396
|
{
|
1815
2397
|
"length": 20,
|
1816
|
-
"start":
|
2398
|
+
"start": 24194
|
1817
2399
|
},
|
1818
2400
|
{
|
1819
2401
|
"length": 20,
|
1820
|
-
"start":
|
2402
|
+
"start": 24526
|
1821
2403
|
},
|
1822
2404
|
{
|
1823
2405
|
"length": 20,
|
1824
|
-
"start":
|
2406
|
+
"start": 24662
|
1825
2407
|
},
|
1826
2408
|
{
|
1827
2409
|
"length": 20,
|
1828
|
-
"start":
|
2410
|
+
"start": 24799
|
1829
2411
|
},
|
1830
2412
|
{
|
1831
2413
|
"length": 20,
|
1832
|
-
"start":
|
2414
|
+
"start": 24945
|
1833
2415
|
},
|
1834
2416
|
{
|
1835
2417
|
"length": 20,
|
1836
|
-
"start":
|
2418
|
+
"start": 25511
|
1837
2419
|
},
|
1838
2420
|
{
|
1839
2421
|
"length": 20,
|
1840
|
-
"start":
|
2422
|
+
"start": 25539
|
1841
2423
|
},
|
1842
2424
|
{
|
1843
2425
|
"length": 20,
|
1844
|
-
"start":
|
2426
|
+
"start": 25675
|
1845
2427
|
},
|
1846
2428
|
{
|
1847
2429
|
"length": 20,
|
1848
|
-
"start":
|
2430
|
+
"start": 25872
|
2431
|
+
},
|
2432
|
+
{
|
2433
|
+
"length": 20,
|
2434
|
+
"start": 26621
|
1849
2435
|
}
|
1850
2436
|
]
|
1851
2437
|
},
|
1852
|
-
"contracts/type/
|
1853
|
-
"
|
2438
|
+
"contracts/type/Blocknumber.sol": {
|
2439
|
+
"BlocknumberLib": [
|
1854
2440
|
{
|
1855
2441
|
"length": 20,
|
1856
|
-
"start":
|
2442
|
+
"start": 3033
|
1857
2443
|
},
|
1858
2444
|
{
|
1859
2445
|
"length": 20,
|
1860
|
-
"start":
|
2446
|
+
"start": 4374
|
1861
2447
|
},
|
1862
2448
|
{
|
1863
2449
|
"length": 20,
|
1864
|
-
"start":
|
2450
|
+
"start": 5524
|
1865
2451
|
},
|
1866
2452
|
{
|
1867
2453
|
"length": 20,
|
1868
|
-
"start":
|
2454
|
+
"start": 9206
|
1869
2455
|
},
|
1870
2456
|
{
|
1871
2457
|
"length": 20,
|
1872
|
-
"start":
|
2458
|
+
"start": 9811
|
1873
2459
|
},
|
1874
2460
|
{
|
1875
2461
|
"length": 20,
|
1876
|
-
"start":
|
2462
|
+
"start": 10098
|
1877
2463
|
},
|
1878
2464
|
{
|
1879
2465
|
"length": 20,
|
1880
|
-
"start":
|
2466
|
+
"start": 10470
|
1881
2467
|
},
|
1882
2468
|
{
|
1883
2469
|
"length": 20,
|
1884
|
-
"start":
|
2470
|
+
"start": 10637
|
1885
2471
|
},
|
1886
2472
|
{
|
1887
2473
|
"length": 20,
|
1888
|
-
"start":
|
2474
|
+
"start": 11523
|
1889
2475
|
},
|
1890
2476
|
{
|
1891
2477
|
"length": 20,
|
1892
|
-
"start":
|
2478
|
+
"start": 12102
|
1893
2479
|
},
|
1894
2480
|
{
|
1895
2481
|
"length": 20,
|
1896
|
-
"start":
|
1897
|
-
}
|
1898
|
-
|
1899
|
-
|
1900
|
-
|
1901
|
-
|
2482
|
+
"start": 13929
|
2483
|
+
},
|
2484
|
+
{
|
2485
|
+
"length": 20,
|
2486
|
+
"start": 14125
|
2487
|
+
},
|
2488
|
+
{
|
2489
|
+
"length": 20,
|
2490
|
+
"start": 14356
|
2491
|
+
},
|
2492
|
+
{
|
2493
|
+
"length": 20,
|
2494
|
+
"start": 14675
|
2495
|
+
},
|
2496
|
+
{
|
2497
|
+
"length": 20,
|
2498
|
+
"start": 14953
|
2499
|
+
},
|
2500
|
+
{
|
2501
|
+
"length": 20,
|
2502
|
+
"start": 15420
|
2503
|
+
},
|
2504
|
+
{
|
2505
|
+
"length": 20,
|
2506
|
+
"start": 15993
|
2507
|
+
},
|
2508
|
+
{
|
2509
|
+
"length": 20,
|
2510
|
+
"start": 16328
|
2511
|
+
},
|
2512
|
+
{
|
2513
|
+
"length": 20,
|
2514
|
+
"start": 16953
|
2515
|
+
},
|
2516
|
+
{
|
2517
|
+
"length": 20,
|
2518
|
+
"start": 17443
|
2519
|
+
},
|
2520
|
+
{
|
2521
|
+
"length": 20,
|
2522
|
+
"start": 17654
|
2523
|
+
},
|
2524
|
+
{
|
2525
|
+
"length": 20,
|
2526
|
+
"start": 17848
|
2527
|
+
},
|
2528
|
+
{
|
2529
|
+
"length": 20,
|
2530
|
+
"start": 20540
|
2531
|
+
},
|
2532
|
+
{
|
2533
|
+
"length": 20,
|
2534
|
+
"start": 21514
|
2535
|
+
},
|
2536
|
+
{
|
2537
|
+
"length": 20,
|
2538
|
+
"start": 23628
|
2539
|
+
},
|
2540
|
+
{
|
2541
|
+
"length": 20,
|
2542
|
+
"start": 25330
|
2543
|
+
},
|
1902
2544
|
{
|
1903
2545
|
"length": 20,
|
1904
|
-
"start":
|
2546
|
+
"start": 26240
|
1905
2547
|
},
|
1906
2548
|
{
|
1907
2549
|
"length": 20,
|
1908
|
-
"start":
|
2550
|
+
"start": 26455
|
1909
2551
|
},
|
1910
2552
|
{
|
1911
2553
|
"length": 20,
|
1912
|
-
"start":
|
2554
|
+
"start": 27111
|
1913
2555
|
},
|
1914
2556
|
{
|
1915
2557
|
"length": 20,
|
1916
|
-
"start":
|
2558
|
+
"start": 27524
|
1917
2559
|
},
|
1918
2560
|
{
|
1919
2561
|
"length": 20,
|
1920
|
-
"start":
|
2562
|
+
"start": 27914
|
2563
|
+
}
|
2564
|
+
]
|
2565
|
+
},
|
2566
|
+
"contracts/type/ChainId.sol": {
|
2567
|
+
"ChainIdLib": [
|
2568
|
+
{
|
2569
|
+
"length": 20,
|
2570
|
+
"start": 4240
|
1921
2571
|
},
|
1922
2572
|
{
|
1923
2573
|
"length": 20,
|
1924
|
-
"start":
|
2574
|
+
"start": 14500
|
1925
2575
|
},
|
1926
2576
|
{
|
1927
2577
|
"length": 20,
|
1928
|
-
"start":
|
2578
|
+
"start": 25196
|
2579
|
+
}
|
2580
|
+
]
|
2581
|
+
},
|
2582
|
+
"contracts/type/NftId.sol": {
|
2583
|
+
"NftIdLib": [
|
2584
|
+
{
|
2585
|
+
"length": 20,
|
2586
|
+
"start": 1201
|
1929
2587
|
}
|
1930
2588
|
]
|
1931
2589
|
},
|
@@ -1933,43 +2591,43 @@
|
|
1933
2591
|
"LibNftIdSet": [
|
1934
2592
|
{
|
1935
2593
|
"length": 20,
|
1936
|
-
"start":
|
2594
|
+
"start": 30972
|
1937
2595
|
},
|
1938
2596
|
{
|
1939
2597
|
"length": 20,
|
1940
|
-
"start":
|
2598
|
+
"start": 31089
|
1941
2599
|
},
|
1942
2600
|
{
|
1943
2601
|
"length": 20,
|
1944
|
-
"start":
|
2602
|
+
"start": 31219
|
1945
2603
|
},
|
1946
2604
|
{
|
1947
2605
|
"length": 20,
|
1948
|
-
"start":
|
2606
|
+
"start": 31351
|
1949
2607
|
},
|
1950
2608
|
{
|
1951
2609
|
"length": 20,
|
1952
|
-
"start":
|
2610
|
+
"start": 31488
|
1953
2611
|
},
|
1954
2612
|
{
|
1955
2613
|
"length": 20,
|
1956
|
-
"start":
|
2614
|
+
"start": 31596
|
1957
2615
|
},
|
1958
2616
|
{
|
1959
2617
|
"length": 20,
|
1960
|
-
"start":
|
2618
|
+
"start": 31778
|
1961
2619
|
},
|
1962
2620
|
{
|
1963
2621
|
"length": 20,
|
1964
|
-
"start":
|
2622
|
+
"start": 31836
|
1965
2623
|
},
|
1966
2624
|
{
|
1967
2625
|
"length": 20,
|
1968
|
-
"start":
|
2626
|
+
"start": 31958
|
1969
2627
|
},
|
1970
2628
|
{
|
1971
2629
|
"length": 20,
|
1972
|
-
"start":
|
2630
|
+
"start": 32023
|
1973
2631
|
}
|
1974
2632
|
]
|
1975
2633
|
},
|
@@ -1977,47 +2635,55 @@
|
|
1977
2635
|
"ObjectTypeLib": [
|
1978
2636
|
{
|
1979
2637
|
"length": 20,
|
1980
|
-
"start":
|
2638
|
+
"start": 2167
|
1981
2639
|
},
|
1982
2640
|
{
|
1983
2641
|
"length": 20,
|
1984
|
-
"start":
|
2642
|
+
"start": 22762
|
1985
2643
|
}
|
1986
2644
|
]
|
1987
2645
|
},
|
1988
|
-
"contracts/type/
|
1989
|
-
"
|
2646
|
+
"contracts/type/Seconds.sol": {
|
2647
|
+
"SecondsLib": [
|
2648
|
+
{
|
2649
|
+
"length": 20,
|
2650
|
+
"start": 727
|
2651
|
+
},
|
2652
|
+
{
|
2653
|
+
"length": 20,
|
2654
|
+
"start": 834
|
2655
|
+
},
|
1990
2656
|
{
|
1991
2657
|
"length": 20,
|
1992
|
-
"start":
|
2658
|
+
"start": 1759
|
1993
2659
|
},
|
1994
2660
|
{
|
1995
2661
|
"length": 20,
|
1996
|
-
"start":
|
2662
|
+
"start": 1866
|
1997
2663
|
},
|
1998
2664
|
{
|
1999
2665
|
"length": 20,
|
2000
|
-
"start":
|
2666
|
+
"start": 5407
|
2001
2667
|
},
|
2002
2668
|
{
|
2003
2669
|
"length": 20,
|
2004
|
-
"start":
|
2670
|
+
"start": 18157
|
2005
2671
|
},
|
2006
2672
|
{
|
2007
2673
|
"length": 20,
|
2008
|
-
"start":
|
2674
|
+
"start": 18411
|
2009
2675
|
},
|
2010
2676
|
{
|
2011
2677
|
"length": 20,
|
2012
|
-
"start":
|
2678
|
+
"start": 22093
|
2013
2679
|
},
|
2014
2680
|
{
|
2015
2681
|
"length": 20,
|
2016
|
-
"start":
|
2682
|
+
"start": 22345
|
2017
2683
|
},
|
2018
2684
|
{
|
2019
2685
|
"length": 20,
|
2020
|
-
"start":
|
2686
|
+
"start": 27806
|
2021
2687
|
}
|
2022
2688
|
]
|
2023
2689
|
},
|
@@ -2025,11 +2691,23 @@
|
|
2025
2691
|
"TimestampLib": [
|
2026
2692
|
{
|
2027
2693
|
"length": 20,
|
2028
|
-
"start":
|
2694
|
+
"start": 11118
|
2695
|
+
},
|
2696
|
+
{
|
2697
|
+
"length": 20,
|
2698
|
+
"start": 15218
|
2699
|
+
},
|
2700
|
+
{
|
2701
|
+
"length": 20,
|
2702
|
+
"start": 18185
|
2703
|
+
},
|
2704
|
+
{
|
2705
|
+
"length": 20,
|
2706
|
+
"start": 21657
|
2029
2707
|
},
|
2030
2708
|
{
|
2031
2709
|
"length": 20,
|
2032
|
-
"start":
|
2710
|
+
"start": 22488
|
2033
2711
|
}
|
2034
2712
|
]
|
2035
2713
|
},
|
@@ -2037,69 +2715,181 @@
|
|
2037
2715
|
"UFixedLib": [
|
2038
2716
|
{
|
2039
2717
|
"length": 20,
|
2040
|
-
"start":
|
2718
|
+
"start": 941
|
2719
|
+
},
|
2720
|
+
{
|
2721
|
+
"length": 20,
|
2722
|
+
"start": 1076
|
2723
|
+
},
|
2724
|
+
{
|
2725
|
+
"length": 20,
|
2726
|
+
"start": 1973
|
2727
|
+
},
|
2728
|
+
{
|
2729
|
+
"length": 20,
|
2730
|
+
"start": 2107
|
2731
|
+
},
|
2732
|
+
{
|
2733
|
+
"length": 20,
|
2734
|
+
"start": 9948
|
2735
|
+
},
|
2736
|
+
{
|
2737
|
+
"length": 20,
|
2738
|
+
"start": 13229
|
2739
|
+
},
|
2740
|
+
{
|
2741
|
+
"length": 20,
|
2742
|
+
"start": 18019
|
2041
2743
|
}
|
2042
2744
|
]
|
2043
2745
|
}
|
2044
2746
|
},
|
2045
2747
|
"deployedLinkReferences": {
|
2748
|
+
"contracts/staking/StakingLib.sol": {
|
2749
|
+
"StakingLib": [
|
2750
|
+
{
|
2751
|
+
"length": 20,
|
2752
|
+
"start": 12609
|
2753
|
+
}
|
2754
|
+
]
|
2755
|
+
},
|
2756
|
+
"contracts/staking/TargetManagerLib.sol": {
|
2757
|
+
"TargetManagerLib": [
|
2758
|
+
{
|
2759
|
+
"length": 20,
|
2760
|
+
"start": 2999
|
2761
|
+
},
|
2762
|
+
{
|
2763
|
+
"length": 20,
|
2764
|
+
"start": 5887
|
2765
|
+
},
|
2766
|
+
{
|
2767
|
+
"length": 20,
|
2768
|
+
"start": 18328
|
2769
|
+
}
|
2770
|
+
]
|
2771
|
+
},
|
2046
2772
|
"contracts/type/Amount.sol": {
|
2047
2773
|
"AmountLib": [
|
2048
2774
|
{
|
2049
2775
|
"length": 20,
|
2050
|
-
"start":
|
2776
|
+
"start": 4761
|
2777
|
+
},
|
2778
|
+
{
|
2779
|
+
"length": 20,
|
2780
|
+
"start": 4902
|
2781
|
+
},
|
2782
|
+
{
|
2783
|
+
"length": 20,
|
2784
|
+
"start": 6608
|
2785
|
+
},
|
2786
|
+
{
|
2787
|
+
"length": 20,
|
2788
|
+
"start": 6723
|
2789
|
+
},
|
2790
|
+
{
|
2791
|
+
"length": 20,
|
2792
|
+
"start": 6983
|
2793
|
+
},
|
2794
|
+
{
|
2795
|
+
"length": 20,
|
2796
|
+
"start": 7267
|
2797
|
+
},
|
2798
|
+
{
|
2799
|
+
"length": 20,
|
2800
|
+
"start": 8724
|
2801
|
+
},
|
2802
|
+
{
|
2803
|
+
"length": 20,
|
2804
|
+
"start": 12431
|
2805
|
+
},
|
2806
|
+
{
|
2807
|
+
"length": 20,
|
2808
|
+
"start": 12980
|
2051
2809
|
},
|
2052
2810
|
{
|
2053
2811
|
"length": 20,
|
2054
|
-
"start":
|
2812
|
+
"start": 13286
|
2055
2813
|
},
|
2056
2814
|
{
|
2057
2815
|
"length": 20,
|
2058
|
-
"start":
|
2816
|
+
"start": 13492
|
2059
2817
|
},
|
2060
2818
|
{
|
2061
2819
|
"length": 20,
|
2062
|
-
"start":
|
2820
|
+
"start": 13691
|
2063
2821
|
},
|
2064
2822
|
{
|
2065
2823
|
"length": 20,
|
2066
|
-
"start":
|
2824
|
+
"start": 13816
|
2067
2825
|
},
|
2068
2826
|
{
|
2069
2827
|
"length": 20,
|
2070
|
-
"start":
|
2828
|
+
"start": 14324
|
2071
2829
|
},
|
2072
2830
|
{
|
2073
2831
|
"length": 20,
|
2074
|
-
"start":
|
2832
|
+
"start": 14782
|
2075
2833
|
},
|
2076
2834
|
{
|
2077
2835
|
"length": 20,
|
2078
|
-
"start":
|
2836
|
+
"start": 14907
|
2079
2837
|
},
|
2080
2838
|
{
|
2081
2839
|
"length": 20,
|
2082
|
-
"start":
|
2840
|
+
"start": 15754
|
2083
2841
|
},
|
2084
2842
|
{
|
2085
2843
|
"length": 20,
|
2086
|
-
"start":
|
2844
|
+
"start": 16139
|
2087
2845
|
},
|
2088
2846
|
{
|
2089
2847
|
"length": 20,
|
2090
|
-
"start":
|
2848
|
+
"start": 17908
|
2091
2849
|
},
|
2092
2850
|
{
|
2093
2851
|
"length": 20,
|
2094
|
-
"start":
|
2852
|
+
"start": 18041
|
2095
2853
|
},
|
2096
2854
|
{
|
2097
2855
|
"length": 20,
|
2098
|
-
"start":
|
2856
|
+
"start": 18115
|
2099
2857
|
},
|
2100
2858
|
{
|
2101
2859
|
"length": 20,
|
2102
|
-
"start":
|
2860
|
+
"start": 18447
|
2861
|
+
},
|
2862
|
+
{
|
2863
|
+
"length": 20,
|
2864
|
+
"start": 18583
|
2865
|
+
},
|
2866
|
+
{
|
2867
|
+
"length": 20,
|
2868
|
+
"start": 18720
|
2869
|
+
},
|
2870
|
+
{
|
2871
|
+
"length": 20,
|
2872
|
+
"start": 18866
|
2873
|
+
},
|
2874
|
+
{
|
2875
|
+
"length": 20,
|
2876
|
+
"start": 19432
|
2877
|
+
},
|
2878
|
+
{
|
2879
|
+
"length": 20,
|
2880
|
+
"start": 19460
|
2881
|
+
},
|
2882
|
+
{
|
2883
|
+
"length": 20,
|
2884
|
+
"start": 19596
|
2885
|
+
},
|
2886
|
+
{
|
2887
|
+
"length": 20,
|
2888
|
+
"start": 19793
|
2889
|
+
},
|
2890
|
+
{
|
2891
|
+
"length": 20,
|
2892
|
+
"start": 20542
|
2103
2893
|
}
|
2104
2894
|
]
|
2105
2895
|
},
|
@@ -2107,155 +2897,159 @@
|
|
2107
2897
|
"BlocknumberLib": [
|
2108
2898
|
{
|
2109
2899
|
"length": 20,
|
2110
|
-
"start":
|
2900
|
+
"start": 3127
|
2111
2901
|
},
|
2112
2902
|
{
|
2113
2903
|
"length": 20,
|
2114
|
-
"start":
|
2904
|
+
"start": 3732
|
2115
2905
|
},
|
2116
2906
|
{
|
2117
2907
|
"length": 20,
|
2118
|
-
"start":
|
2908
|
+
"start": 4019
|
2119
2909
|
},
|
2120
2910
|
{
|
2121
2911
|
"length": 20,
|
2122
|
-
"start":
|
2912
|
+
"start": 4391
|
2123
2913
|
},
|
2124
2914
|
{
|
2125
2915
|
"length": 20,
|
2126
|
-
"start":
|
2916
|
+
"start": 4558
|
2127
2917
|
},
|
2128
2918
|
{
|
2129
2919
|
"length": 20,
|
2130
|
-
"start":
|
2920
|
+
"start": 5444
|
2131
2921
|
},
|
2132
2922
|
{
|
2133
2923
|
"length": 20,
|
2134
|
-
"start":
|
2924
|
+
"start": 6023
|
2135
2925
|
},
|
2136
2926
|
{
|
2137
2927
|
"length": 20,
|
2138
|
-
"start":
|
2928
|
+
"start": 7850
|
2139
2929
|
},
|
2140
2930
|
{
|
2141
2931
|
"length": 20,
|
2142
|
-
"start":
|
2932
|
+
"start": 8046
|
2143
2933
|
},
|
2144
2934
|
{
|
2145
2935
|
"length": 20,
|
2146
|
-
"start":
|
2936
|
+
"start": 8277
|
2147
2937
|
},
|
2148
2938
|
{
|
2149
2939
|
"length": 20,
|
2150
|
-
"start":
|
2940
|
+
"start": 8596
|
2151
2941
|
},
|
2152
2942
|
{
|
2153
2943
|
"length": 20,
|
2154
|
-
"start":
|
2944
|
+
"start": 8874
|
2155
2945
|
},
|
2156
2946
|
{
|
2157
2947
|
"length": 20,
|
2158
|
-
"start":
|
2948
|
+
"start": 9341
|
2159
2949
|
},
|
2160
2950
|
{
|
2161
2951
|
"length": 20,
|
2162
|
-
"start":
|
2163
|
-
}
|
2164
|
-
]
|
2165
|
-
},
|
2166
|
-
"contracts/type/Key32.sol": {
|
2167
|
-
"Key32Lib": [
|
2952
|
+
"start": 9914
|
2953
|
+
},
|
2168
2954
|
{
|
2169
2955
|
"length": 20,
|
2170
|
-
"start":
|
2956
|
+
"start": 10249
|
2171
2957
|
},
|
2172
2958
|
{
|
2173
2959
|
"length": 20,
|
2174
|
-
"start":
|
2960
|
+
"start": 10874
|
2175
2961
|
},
|
2176
2962
|
{
|
2177
2963
|
"length": 20,
|
2178
|
-
"start":
|
2964
|
+
"start": 11364
|
2179
2965
|
},
|
2180
2966
|
{
|
2181
2967
|
"length": 20,
|
2182
|
-
"start":
|
2968
|
+
"start": 11575
|
2183
2969
|
},
|
2184
2970
|
{
|
2185
2971
|
"length": 20,
|
2186
|
-
"start":
|
2972
|
+
"start": 11769
|
2187
2973
|
},
|
2188
2974
|
{
|
2189
2975
|
"length": 20,
|
2190
|
-
"start":
|
2976
|
+
"start": 14461
|
2191
2977
|
},
|
2192
2978
|
{
|
2193
2979
|
"length": 20,
|
2194
|
-
"start":
|
2980
|
+
"start": 15435
|
2195
2981
|
},
|
2196
2982
|
{
|
2197
2983
|
"length": 20,
|
2198
|
-
"start":
|
2199
|
-
}
|
2200
|
-
|
2201
|
-
|
2202
|
-
|
2203
|
-
|
2984
|
+
"start": 17549
|
2985
|
+
},
|
2986
|
+
{
|
2987
|
+
"length": 20,
|
2988
|
+
"start": 19251
|
2989
|
+
},
|
2204
2990
|
{
|
2205
2991
|
"length": 20,
|
2206
|
-
"start":
|
2992
|
+
"start": 20161
|
2207
2993
|
},
|
2208
2994
|
{
|
2209
2995
|
"length": 20,
|
2210
|
-
"start":
|
2996
|
+
"start": 20376
|
2211
2997
|
},
|
2212
2998
|
{
|
2213
2999
|
"length": 20,
|
2214
|
-
"start":
|
3000
|
+
"start": 21032
|
2215
3001
|
},
|
2216
3002
|
{
|
2217
3003
|
"length": 20,
|
2218
|
-
"start":
|
3004
|
+
"start": 21445
|
2219
3005
|
},
|
2220
3006
|
{
|
2221
3007
|
"length": 20,
|
2222
|
-
"start":
|
3008
|
+
"start": 21835
|
2223
3009
|
}
|
2224
3010
|
]
|
2225
3011
|
},
|
2226
|
-
"contracts/type/
|
2227
|
-
"
|
3012
|
+
"contracts/type/ChainId.sol": {
|
3013
|
+
"ChainIdLib": [
|
2228
3014
|
{
|
2229
3015
|
"length": 20,
|
2230
|
-
"start":
|
3016
|
+
"start": 8421
|
3017
|
+
},
|
3018
|
+
{
|
3019
|
+
"length": 20,
|
3020
|
+
"start": 19117
|
2231
3021
|
}
|
2232
3022
|
]
|
2233
3023
|
},
|
2234
|
-
"contracts/type/
|
2235
|
-
"
|
3024
|
+
"contracts/type/ObjectType.sol": {
|
3025
|
+
"ObjectTypeLib": [
|
2236
3026
|
{
|
2237
3027
|
"length": 20,
|
2238
|
-
"start":
|
2239
|
-
}
|
3028
|
+
"start": 16683
|
3029
|
+
}
|
3030
|
+
]
|
3031
|
+
},
|
3032
|
+
"contracts/type/Seconds.sol": {
|
3033
|
+
"SecondsLib": [
|
2240
3034
|
{
|
2241
3035
|
"length": 20,
|
2242
|
-
"start":
|
3036
|
+
"start": 12078
|
2243
3037
|
},
|
2244
3038
|
{
|
2245
3039
|
"length": 20,
|
2246
|
-
"start":
|
3040
|
+
"start": 12332
|
2247
3041
|
},
|
2248
3042
|
{
|
2249
3043
|
"length": 20,
|
2250
|
-
"start":
|
3044
|
+
"start": 16014
|
2251
3045
|
},
|
2252
3046
|
{
|
2253
3047
|
"length": 20,
|
2254
|
-
"start":
|
3048
|
+
"start": 16266
|
2255
3049
|
},
|
2256
3050
|
{
|
2257
3051
|
"length": 20,
|
2258
|
-
"start":
|
3052
|
+
"start": 21727
|
2259
3053
|
}
|
2260
3054
|
]
|
2261
3055
|
},
|
@@ -2263,11 +3057,23 @@
|
|
2263
3057
|
"TimestampLib": [
|
2264
3058
|
{
|
2265
3059
|
"length": 20,
|
2266
|
-
"start":
|
3060
|
+
"start": 5039
|
3061
|
+
},
|
3062
|
+
{
|
3063
|
+
"length": 20,
|
3064
|
+
"start": 9139
|
3065
|
+
},
|
3066
|
+
{
|
3067
|
+
"length": 20,
|
3068
|
+
"start": 12106
|
3069
|
+
},
|
3070
|
+
{
|
3071
|
+
"length": 20,
|
3072
|
+
"start": 15578
|
2267
3073
|
},
|
2268
3074
|
{
|
2269
3075
|
"length": 20,
|
2270
|
-
"start":
|
3076
|
+
"start": 16409
|
2271
3077
|
}
|
2272
3078
|
]
|
2273
3079
|
},
|
@@ -2275,7 +3081,15 @@
|
|
2275
3081
|
"UFixedLib": [
|
2276
3082
|
{
|
2277
3083
|
"length": 20,
|
2278
|
-
"start":
|
3084
|
+
"start": 3869
|
3085
|
+
},
|
3086
|
+
{
|
3087
|
+
"length": 20,
|
3088
|
+
"start": 7150
|
3089
|
+
},
|
3090
|
+
{
|
3091
|
+
"length": 20,
|
3092
|
+
"start": 11940
|
2279
3093
|
}
|
2280
3094
|
]
|
2281
3095
|
}
|