@etherisc/gif-next 0.0.2-c00cf5d-513 → 0.0.2-c04bff4-304
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +49 -4
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessAdmin.sol/AccessAdmin.json +1253 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.dbg.json +4 -0
- package/artifacts/contracts/authorization/AccessManagerCloneable.sol/AccessManagerCloneable.json +1206 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/Authorization.sol/Authorization.json +358 -0
- package/artifacts/contracts/authorization/IAccess.sol/IAccess.dbg.json +4 -0
- package/artifacts/contracts/{instance/module/ISetup.sol/ISetup.json → authorization/IAccess.sol/IAccess.json} +2 -2
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAccessAdmin.sol/IAccessAdmin.json +1032 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IAuthorization.sol/IAuthorization.json +258 -0
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IModuleAuthorization.sol/IModuleAuthorization.json +290 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/IServiceAuthorization.sol/IServiceAuthorization.json +148 -0
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ModuleAuthorization.sol/ModuleAuthorization.json +390 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.dbg.json +4 -0
- package/artifacts/contracts/authorization/ServiceAuthorization.sol/ServiceAuthorization.json +190 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistribution.sol/BasicDistribution.json +1342 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.dbg.json +4 -0
- package/artifacts/contracts/distribution/BasicDistributionAuthorization.sol/BasicDistributionAuthorization.json +410 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +160 -543
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +272 -455
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +75 -143
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +169 -263
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +186 -94
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleDistribution.sol/SimpleDistribution.json +1411 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleOracle.sol/SimpleOracle.json +1171 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimplePool.sol/SimplePool.json +1517 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.dbg.json +4 -0
- package/artifacts/contracts/examples/unpermissioned/SimpleProduct.sol/SimpleProduct.json +1978 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleSet.sol/BundleSet.json +703 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +71 -85
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +190 -49
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +65 -227
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +1218 -284
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAuthorizationV3.sol/InstanceAuthorizationV3.json +601 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +592 -316
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +246 -196
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +65 -109
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +1112 -372
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.dbg.json +4 -0
- package/artifacts/contracts/instance/base/BalanceStore.sol/BalanceStore.json +318 -0
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +0 -53
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectCounter.sol/ObjectCounter.json +10 -0
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectLifecycle.sol/ObjectLifecycle.json +182 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectSet.sol/ObjectSet.json +181 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
- 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 +4 -0
- package/artifacts/contracts/mock/Dip.sol/Dip.json +376 -0
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracle.sol/BasicOracle.json +979 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.dbg.json +4 -0
- package/artifacts/contracts/oracle/BasicOracleAuthorization.sol/BasicOracleAuthorization.json +418 -0
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracle.sol/IOracle.json +52 -0
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracleComponent.sol/IOracleComponent.json +765 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.dbg.json +4 -0
- package/artifacts/contracts/oracle/IOracleService.sol/IOracleService.json +675 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.dbg.json +4 -0
- package/artifacts/contracts/oracle/Oracle.sol/Oracle.json +871 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.dbg.json +4 -0
- package/artifacts/contracts/oracle/OracleService.sol/OracleService.json +922 -0
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/oracle/OracleServiceManager.sol/OracleServiceManager.json +679 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPool.sol/BasicPool.json +1248 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.dbg.json +4 -0
- package/artifacts/contracts/pool/BasicPoolAuthorization.sol/BasicPoolAuthorization.json +410 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +414 -359
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +121 -117
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.json +204 -32
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +180 -366
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +340 -219
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/pool/Pool.sol/Pool.json +204 -596
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +394 -574
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +51 -139
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +84 -289
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +54 -106
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProduct.sol/BasicProduct.json +1096 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.dbg.json +4 -0
- package/artifacts/contracts/product/BasicProductAuthorization.sol/BasicProductAuthorization.json +410 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +225 -305
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +79 -123
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +25 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +134 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +217 -83
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +1 -1
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +83 -44
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +270 -183
- package/artifacts/contracts/product/IRiskService.sol/IRiskService.dbg.json +4 -0
- package/artifacts/contracts/product/{IProductService.sol/IProductService.json → IRiskService.sol/IRiskService.json} +15 -57
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +239 -435
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +66 -162
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +1 -1
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +184 -347
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +80 -124
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/product/Product.sol/Product.json +286 -449
- package/artifacts/contracts/product/RiskService.sol/RiskService.dbg.json +4 -0
- package/artifacts/contracts/product/RiskService.sol/RiskService.json +583 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/RiskServiceManager.sol/RiskServiceManager.json +651 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +59 -16
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +308 -39
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +42 -73
- 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 +718 -74
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +1682 -113
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +195 -137
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +45 -93
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseLifecycle.sol/ReleaseLifecycle.json +164 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseRegistry.sol/ReleaseRegistry.json +1169 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.dbg.json +4 -0
- package/artifacts/contracts/registry/ServiceAuthorizationV3.sol/ServiceAuthorizationV3.json +214 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +314 -136
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/shared/Component.sol/Component.json +88 -295
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1125 -207
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +753 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +427 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +76 -107
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +1033 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +700 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +12 -16
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
- package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -6
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.json +7 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +0 -24
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +7 -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 +20 -1
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableCustom.sol/InitializableCustom.json +39 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.dbg.json +4 -0
- package/artifacts/contracts/shared/InitializableERC165.sol/InitializableERC165.json +53 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +793 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +497 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +133 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.dbg.json +4 -0
- package/artifacts/contracts/shared/NftIdSet.sol/NftIdSet.json +306 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +32 -70
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +4 -118
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +16 -110
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -15
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +13 -125
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +362 -7
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandlerDeployerLib.sol/TokenHandlerDeployerLib.json +108 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.dbg.json +4 -0
- package/artifacts/contracts/staking/IStaking.sol/IStaking.json +1438 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +566 -54
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +440 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.json +1828 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingLifecycle.sol/StakingLifecycle.json +164 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +714 -0
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingReader.sol/StakingReader.json +592 -0
- package/artifacts/contracts/staking/StakingService.sol/StakingService.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +636 -191
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +1 -1
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +65 -97
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2242 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +607 -0
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.json +2 -2
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +1 -1
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +97 -4
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +53 -2
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +4 -4
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +4 -4
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +39 -34
- 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/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +47 -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 +149 -2
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +4 -4
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +4 -4
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/RequestId.sol/RequestIdLib.json +204 -0
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.json +4 -4
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +219 -6
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +1 -1
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +124 -2
- package/artifacts/contracts/type/Selector.sol/SelectorLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorLib.json +129 -0
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.dbg.json +4 -0
- package/artifacts/contracts/type/Selector.sol/SelectorSetLib.json +10 -0
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/type/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/type/String.sol/StrLib.dbg.json +4 -0
- package/artifacts/contracts/type/String.sol/StrLib.json +132 -0
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +36 -4
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/MathLib.json +9 -3
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.json +58 -2
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionLib.json +2 -2
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +21 -2
- package/artifacts/contracts/upgradeability/IVersionable.sol/IVersionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/IVersionable.sol/IVersionable.json +1 -1
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/ProxyManager.sol/ProxyManager.json +566 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/upgradeability/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
- package/artifacts/contracts/upgradeability/Versionable.sol/Versionable.dbg.json +4 -0
- package/artifacts/contracts/{shared → upgradeability}/Versionable.sol/Versionable.json +1 -1
- package/contracts/authorization/AccessAdmin.sol +589 -0
- package/contracts/authorization/AccessManagerCloneable.sol +16 -0
- package/contracts/authorization/Authorization.sol +217 -0
- package/contracts/authorization/IAccess.sol +48 -0
- package/contracts/authorization/IAccessAdmin.sol +136 -0
- package/contracts/authorization/IAuthorization.sol +54 -0
- package/contracts/authorization/IModuleAuthorization.sol +21 -0
- package/contracts/authorization/IServiceAuthorization.sol +38 -0
- package/contracts/authorization/ModuleAuthorization.sol +78 -0
- package/contracts/authorization/ServiceAuthorization.sol +90 -0
- package/contracts/distribution/BasicDistribution.sol +138 -0
- package/contracts/distribution/BasicDistributionAuthorization.sol +47 -0
- package/contracts/distribution/Distribution.sol +163 -153
- package/contracts/distribution/DistributionService.sol +132 -147
- package/contracts/distribution/DistributionServiceManager.sol +2 -5
- package/contracts/distribution/IDistributionComponent.sol +28 -47
- package/contracts/distribution/IDistributionService.sol +24 -10
- package/contracts/examples/unpermissioned/SimpleDistribution.sol +50 -0
- package/contracts/examples/unpermissioned/SimpleOracle.sol +137 -0
- package/contracts/examples/unpermissioned/SimplePool.sol +76 -0
- package/contracts/examples/unpermissioned/SimpleProduct.sol +351 -0
- package/contracts/instance/{BundleManager.sol → BundleSet.sol} +23 -23
- package/contracts/instance/IInstance.sol +24 -40
- package/contracts/instance/IInstanceService.sol +44 -24
- package/contracts/instance/Instance.sol +112 -117
- package/contracts/instance/InstanceAdmin.sol +221 -266
- package/contracts/instance/InstanceAuthorizationV3.sol +204 -0
- package/contracts/instance/InstanceReader.sol +114 -52
- package/contracts/instance/InstanceService.sol +280 -112
- package/contracts/instance/InstanceServiceManager.sol +2 -6
- package/contracts/instance/InstanceStore.sol +142 -66
- package/contracts/instance/base/BalanceStore.sol +123 -0
- package/contracts/instance/base/Cloneable.sol +2 -25
- package/contracts/instance/base/ObjectCounter.sol +21 -0
- package/contracts/instance/base/ObjectLifecycle.sol +111 -0
- package/contracts/instance/base/{ObjectManager.sol → ObjectSet.sol} +11 -14
- package/contracts/instance/module/IBundle.sol +1 -4
- package/contracts/instance/module/IComponents.sol +15 -10
- package/contracts/instance/module/IDistribution.sol +0 -1
- package/contracts/instance/module/IPolicy.sol +29 -23
- package/contracts/mock/Dip.sol +26 -0
- package/contracts/oracle/BasicOracle.sol +48 -0
- package/contracts/oracle/BasicOracleAuthorization.sol +46 -0
- package/contracts/oracle/IOracle.sol +36 -0
- package/contracts/oracle/IOracleComponent.sol +33 -0
- package/contracts/oracle/IOracleService.sol +65 -0
- package/contracts/oracle/Oracle.sol +167 -0
- package/contracts/oracle/OracleService.sol +279 -0
- package/contracts/oracle/OracleServiceManager.sol +39 -0
- package/contracts/pool/BasicPool.sol +166 -0
- package/contracts/pool/BasicPoolAuthorization.sol +58 -0
- package/contracts/pool/BundleService.sol +256 -202
- package/contracts/pool/BundleServiceManager.sol +2 -5
- package/contracts/pool/IBundleService.sol +35 -19
- package/contracts/pool/IPoolComponent.sol +10 -66
- package/contracts/pool/IPoolService.sol +79 -33
- package/contracts/pool/Pool.sol +169 -145
- package/contracts/pool/PoolService.sol +319 -214
- package/contracts/pool/PoolServiceManager.sol +2 -5
- package/contracts/product/ApplicationService.sol +139 -78
- package/contracts/product/ApplicationServiceManager.sol +2 -2
- package/contracts/product/BasicProduct.sol +53 -0
- package/contracts/product/BasicProductAuthorization.sol +43 -0
- package/contracts/product/ClaimService.sol +136 -92
- package/contracts/product/ClaimServiceManager.sol +2 -2
- package/contracts/product/IApplicationService.sol +2 -1
- package/contracts/product/IClaimService.sol +32 -3
- package/contracts/product/IPolicyService.sol +31 -38
- package/contracts/product/IPricingService.sol +10 -8
- package/contracts/product/IProductComponent.sol +10 -12
- package/contracts/product/{IProductService.sol → IRiskService.sol} +2 -9
- package/contracts/product/PolicyService.sol +389 -194
- package/contracts/product/PolicyServiceManager.sol +2 -5
- package/contracts/product/PricingService.sol +99 -74
- package/contracts/product/PricingServiceManager.sol +2 -5
- package/contracts/product/Product.sol +177 -131
- package/contracts/product/RiskService.sol +97 -0
- package/contracts/product/RiskServiceManager.sol +39 -0
- package/contracts/registry/ChainNft.sol +72 -32
- package/contracts/registry/IRegistry.sol +76 -21
- package/contracts/registry/IRegistryService.sol +15 -5
- package/contracts/registry/Registry.sol +412 -175
- package/contracts/registry/RegistryAdmin.sol +399 -76
- package/contracts/registry/RegistryService.sol +53 -33
- package/contracts/registry/RegistryServiceManager.sol +4 -11
- package/contracts/registry/ReleaseLifecycle.sol +27 -0
- package/contracts/registry/ReleaseRegistry.sol +491 -0
- package/contracts/registry/ServiceAuthorizationV3.sol +199 -0
- package/contracts/registry/TokenRegistry.sol +261 -64
- package/contracts/shared/Component.sol +145 -148
- package/contracts/shared/ComponentService.sol +590 -91
- package/contracts/shared/ComponentServiceManager.sol +35 -0
- package/contracts/shared/ComponentVerifyingService.sol +117 -0
- package/contracts/shared/IComponent.sol +21 -41
- package/contracts/shared/IComponentService.sol +108 -0
- package/contracts/shared/IInstanceLinkedComponent.sol +49 -0
- package/contracts/{instance/base → shared}/IKeyValueStore.sol +7 -6
- package/contracts/{instance/base → shared}/ILifecycle.sol +3 -4
- package/contracts/shared/INftOwnable.sol +1 -1
- package/contracts/shared/IPolicyHolder.sol +0 -4
- package/contracts/shared/IService.sol +9 -2
- package/contracts/shared/InitializableCustom.sol +177 -0
- package/contracts/shared/{ERC165.sol → InitializableERC165.sol} +4 -4
- package/contracts/shared/InstanceLinkedComponent.sol +172 -0
- package/contracts/{instance/base → shared}/KeyValueStore.sol +36 -74
- package/contracts/shared/Lifecycle.sol +77 -0
- package/contracts/shared/NftIdSet.sol +65 -0
- package/contracts/shared/NftOwnable.sol +10 -20
- package/contracts/shared/PolicyHolder.sol +10 -48
- package/contracts/shared/Registerable.sol +6 -6
- package/contracts/shared/RegistryLinked.sol +3 -2
- package/contracts/shared/Service.sol +37 -27
- package/contracts/shared/TokenHandler.sol +112 -8
- package/contracts/shared/TokenHandlerDeployerLib.sol +12 -0
- package/contracts/staking/IStaking.sol +168 -0
- package/contracts/staking/IStakingService.sol +105 -47
- package/contracts/staking/StakeManagerLib.sol +224 -0
- package/contracts/staking/Staking.sol +498 -0
- package/contracts/staking/StakingLifecycle.sol +23 -0
- package/contracts/staking/StakingManager.sol +50 -0
- package/contracts/staking/StakingReader.sol +183 -0
- package/contracts/staking/StakingService.sol +285 -47
- package/contracts/staking/StakingServiceManager.sol +9 -5
- package/contracts/staking/StakingStore.sol +605 -0
- package/contracts/staking/TargetManagerLib.sol +211 -0
- package/contracts/type/AddressSet.sol +1 -1
- package/contracts/type/Amount.sol +29 -3
- package/contracts/type/Blocknumber.sol +26 -3
- package/contracts/type/Fee.sol +17 -16
- package/contracts/type/NftId.sol +14 -16
- package/contracts/type/NftIdSet.sol +1 -1
- package/contracts/type/ObjectType.sol +175 -62
- package/contracts/type/Referral.sol +2 -1
- package/contracts/type/RequestId.sol +75 -0
- package/contracts/type/RiskId.sol +1 -1
- package/contracts/type/RoleId.sol +104 -69
- package/contracts/type/Seconds.sol +48 -1
- package/contracts/type/Selector.sol +102 -0
- package/contracts/type/StateId.sol +28 -2
- package/contracts/type/String.sol +53 -0
- package/contracts/type/Timestamp.sol +17 -3
- package/contracts/type/UFixed.sol +34 -9
- package/contracts/type/Version.sol +4 -2
- package/contracts/{shared → upgradeability}/ProxyManager.sol +6 -8
- package/contracts/{shared → upgradeability}/UpgradableProxyWithAdmin.sol +1 -3
- package/package.json +8 -5
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +0 -4
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +0 -778
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +0 -4
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +0 -188
- package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +0 -4
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +0 -4
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +0 -581
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -194
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +0 -256
- package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +0 -4
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +0 -4
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.json +0 -10
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +0 -891
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +0 -4
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +0 -715
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +0 -4
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +0 -1058
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +0 -1193
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +0 -1715
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +0 -1728
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +0 -1806
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +0 -4
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +0 -1824
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +0 -4
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +0 -73
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +0 -1562
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +0 -4
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +0 -1600
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +0 -4
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +0 -4
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +0 -630
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +0 -4
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +0 -129
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +0 -4
- package/contracts/instance/InstanceAuthorizationsLib.sol +0 -320
- package/contracts/instance/base/Lifecycle.sol +0 -121
- package/contracts/instance/module/ISetup.sol +0 -33
- package/contracts/instance/module/ITreasury.sol +0 -23
- package/contracts/product/ProductService.sol +0 -212
- package/contracts/product/ProductServiceManager.sol +0 -42
- package/contracts/registry/ReleaseManager.sol +0 -462
- package/contracts/shared/AccessManagerCustom.sol +0 -736
- package/contracts/shared/AccessManagerExtended.sol +0 -469
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +0 -13
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +0 -137
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +0 -14
- package/contracts/shared/IAccessManagerExtended.sol +0 -74
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +0 -18
- /package/contracts/{shared → upgradeability}/IVersionable.sol +0 -0
- /package/contracts/{shared → upgradeability}/Versionable.sol +0 -0
@@ -44,20 +44,20 @@
|
|
44
44
|
{
|
45
45
|
"inputs": [
|
46
46
|
{
|
47
|
-
"internalType": "
|
48
|
-
"name": "
|
49
|
-
"type": "
|
47
|
+
"internalType": "NftId",
|
48
|
+
"name": "componentNftId",
|
49
|
+
"type": "uint96"
|
50
50
|
}
|
51
51
|
],
|
52
|
-
"name": "
|
52
|
+
"name": "ErrorComponentVerifyingServiceComponentIsLocked",
|
53
53
|
"type": "error"
|
54
54
|
},
|
55
55
|
{
|
56
56
|
"inputs": [
|
57
57
|
{
|
58
|
-
"internalType": "
|
59
|
-
"name": "
|
60
|
-
"type": "
|
58
|
+
"internalType": "NftId",
|
59
|
+
"name": "componentNftId",
|
60
|
+
"type": "uint96"
|
61
61
|
},
|
62
62
|
{
|
63
63
|
"internalType": "ObjectType",
|
@@ -66,107 +66,107 @@
|
|
66
66
|
},
|
67
67
|
{
|
68
68
|
"internalType": "ObjectType",
|
69
|
-
"name": "
|
69
|
+
"name": "actualType",
|
70
70
|
"type": "uint8"
|
71
71
|
}
|
72
72
|
],
|
73
|
-
"name": "
|
73
|
+
"name": "ErrorComponentVerifyingServiceComponentTypeInvalid",
|
74
74
|
"type": "error"
|
75
75
|
},
|
76
76
|
{
|
77
77
|
"inputs": [
|
78
78
|
{
|
79
79
|
"internalType": "NftId",
|
80
|
-
"name": "
|
80
|
+
"name": "nftId",
|
81
81
|
"type": "uint96"
|
82
|
-
}
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
87
|
-
|
82
|
+
}
|
83
|
+
],
|
84
|
+
"name": "ErrorNftOwnableAlreadyLinked",
|
85
|
+
"type": "error"
|
86
|
+
},
|
87
|
+
{
|
88
|
+
"inputs": [
|
88
89
|
{
|
89
90
|
"internalType": "address",
|
90
|
-
"name": "
|
91
|
+
"name": "contractAddress",
|
91
92
|
"type": "address"
|
92
93
|
}
|
93
94
|
],
|
94
|
-
"name": "
|
95
|
+
"name": "ErrorNftOwnableContractNotRegistered",
|
96
|
+
"type": "error"
|
97
|
+
},
|
98
|
+
{
|
99
|
+
"inputs": [],
|
100
|
+
"name": "ErrorNftOwnableInitialOwnerZero",
|
95
101
|
"type": "error"
|
96
102
|
},
|
97
103
|
{
|
98
104
|
"inputs": [
|
99
105
|
{
|
100
106
|
"internalType": "address",
|
101
|
-
"name": "
|
107
|
+
"name": "account",
|
102
108
|
"type": "address"
|
103
|
-
},
|
104
|
-
{
|
105
|
-
"internalType": "ObjectType",
|
106
|
-
"name": "requiredType",
|
107
|
-
"type": "uint8"
|
108
|
-
},
|
109
|
-
{
|
110
|
-
"internalType": "ObjectType",
|
111
|
-
"name": "componentType",
|
112
|
-
"type": "uint8"
|
113
109
|
}
|
114
110
|
],
|
115
|
-
"name": "
|
111
|
+
"name": "ErrorNftOwnableNotOwner",
|
116
112
|
"type": "error"
|
117
113
|
},
|
118
114
|
{
|
119
115
|
"inputs": [
|
120
116
|
{
|
121
117
|
"internalType": "address",
|
122
|
-
"name": "
|
118
|
+
"name": "registryAddress",
|
123
119
|
"type": "address"
|
124
120
|
}
|
125
121
|
],
|
126
|
-
"name": "
|
122
|
+
"name": "ErrorNotRegistry",
|
127
123
|
"type": "error"
|
128
124
|
},
|
129
125
|
{
|
130
126
|
"inputs": [
|
131
127
|
{
|
132
128
|
"internalType": "address",
|
133
|
-
"name": "
|
129
|
+
"name": "policyOwner",
|
134
130
|
"type": "address"
|
135
131
|
},
|
136
132
|
{
|
137
133
|
"internalType": "address",
|
138
|
-
"name": "
|
134
|
+
"name": "tokenHandler",
|
139
135
|
"type": "address"
|
140
136
|
},
|
141
137
|
{
|
142
|
-
"internalType": "
|
143
|
-
"name": "
|
144
|
-
"type": "
|
145
|
-
}
|
146
|
-
],
|
147
|
-
"name": "ErrorComponentServiceSenderNotOwner",
|
148
|
-
"type": "error"
|
149
|
-
},
|
150
|
-
{
|
151
|
-
"inputs": [
|
138
|
+
"internalType": "uint256",
|
139
|
+
"name": "premiumAmount",
|
140
|
+
"type": "uint256"
|
141
|
+
},
|
152
142
|
{
|
153
|
-
"internalType": "
|
154
|
-
"name": "
|
155
|
-
"type": "
|
143
|
+
"internalType": "uint256",
|
144
|
+
"name": "allowance",
|
145
|
+
"type": "uint256"
|
156
146
|
}
|
157
147
|
],
|
158
|
-
"name": "
|
148
|
+
"name": "ErrorPolicyServiceAllowanceInsufficient",
|
159
149
|
"type": "error"
|
160
150
|
},
|
161
151
|
{
|
162
152
|
"inputs": [
|
163
153
|
{
|
164
154
|
"internalType": "address",
|
165
|
-
"name": "
|
155
|
+
"name": "policyOwner",
|
166
156
|
"type": "address"
|
157
|
+
},
|
158
|
+
{
|
159
|
+
"internalType": "uint256",
|
160
|
+
"name": "premiumAmount",
|
161
|
+
"type": "uint256"
|
162
|
+
},
|
163
|
+
{
|
164
|
+
"internalType": "uint256",
|
165
|
+
"name": "balance",
|
166
|
+
"type": "uint256"
|
167
167
|
}
|
168
168
|
],
|
169
|
-
"name": "
|
169
|
+
"name": "ErrorPolicyServiceBalanceInsufficient",
|
170
170
|
"type": "error"
|
171
171
|
},
|
172
172
|
{
|
@@ -187,7 +187,7 @@
|
|
187
187
|
"type": "uint256"
|
188
188
|
}
|
189
189
|
],
|
190
|
-
"name": "
|
190
|
+
"name": "ErrorPolicyServiceInsufficientAllowance",
|
191
191
|
"type": "error"
|
192
192
|
},
|
193
193
|
{
|
@@ -203,7 +203,7 @@
|
|
203
203
|
"type": "uint16"
|
204
204
|
}
|
205
205
|
],
|
206
|
-
"name": "
|
206
|
+
"name": "ErrorPolicyServiceOpenClaims",
|
207
207
|
"type": "error"
|
208
208
|
},
|
209
209
|
{
|
@@ -214,7 +214,7 @@
|
|
214
214
|
"type": "uint96"
|
215
215
|
}
|
216
216
|
],
|
217
|
-
"name": "
|
217
|
+
"name": "ErrorPolicyServicePolicyAlreadyActivated",
|
218
218
|
"type": "error"
|
219
219
|
},
|
220
220
|
{
|
@@ -223,14 +223,9 @@
|
|
223
223
|
"internalType": "NftId",
|
224
224
|
"name": "policyNftId",
|
225
225
|
"type": "uint96"
|
226
|
-
},
|
227
|
-
{
|
228
|
-
"internalType": "Timestamp",
|
229
|
-
"name": "expiredAt",
|
230
|
-
"type": "uint40"
|
231
226
|
}
|
232
227
|
],
|
233
|
-
"name": "
|
228
|
+
"name": "ErrorPolicyServicePolicyAlreadyClosed",
|
234
229
|
"type": "error"
|
235
230
|
},
|
236
231
|
{
|
@@ -239,9 +234,19 @@
|
|
239
234
|
"internalType": "NftId",
|
240
235
|
"name": "policyNftId",
|
241
236
|
"type": "uint96"
|
237
|
+
},
|
238
|
+
{
|
239
|
+
"internalType": "Timestamp",
|
240
|
+
"name": "lowerLimit",
|
241
|
+
"type": "uint40"
|
242
|
+
},
|
243
|
+
{
|
244
|
+
"internalType": "Timestamp",
|
245
|
+
"name": "expiredAt",
|
246
|
+
"type": "uint40"
|
242
247
|
}
|
243
248
|
],
|
244
|
-
"name": "
|
249
|
+
"name": "ErrorPolicyServicePolicyExpirationTooEarly",
|
245
250
|
"type": "error"
|
246
251
|
},
|
247
252
|
{
|
@@ -252,61 +257,60 @@
|
|
252
257
|
"type": "uint96"
|
253
258
|
},
|
254
259
|
{
|
255
|
-
"internalType": "
|
256
|
-
"name": "
|
257
|
-
"type": "
|
260
|
+
"internalType": "Timestamp",
|
261
|
+
"name": "upperLimit",
|
262
|
+
"type": "uint40"
|
263
|
+
},
|
264
|
+
{
|
265
|
+
"internalType": "Timestamp",
|
266
|
+
"name": "expiredAt",
|
267
|
+
"type": "uint40"
|
258
268
|
}
|
259
269
|
],
|
260
|
-
"name": "
|
270
|
+
"name": "ErrorPolicyServicePolicyExpirationTooLate",
|
261
271
|
"type": "error"
|
262
272
|
},
|
263
273
|
{
|
264
274
|
"inputs": [
|
265
275
|
{
|
266
276
|
"internalType": "NftId",
|
267
|
-
"name": "
|
277
|
+
"name": "policyNftId",
|
268
278
|
"type": "uint96"
|
269
|
-
}
|
270
|
-
],
|
271
|
-
"name": "ErrorNftOwnableAlreadyLinked",
|
272
|
-
"type": "error"
|
273
|
-
},
|
274
|
-
{
|
275
|
-
"inputs": [
|
279
|
+
},
|
276
280
|
{
|
277
|
-
"internalType": "
|
278
|
-
"name": "
|
279
|
-
"type": "
|
281
|
+
"internalType": "Timestamp",
|
282
|
+
"name": "expiredAt",
|
283
|
+
"type": "uint40"
|
280
284
|
}
|
281
285
|
],
|
282
|
-
"name": "
|
283
|
-
"type": "error"
|
284
|
-
},
|
285
|
-
{
|
286
|
-
"inputs": [],
|
287
|
-
"name": "ErrorNftOwnableInitialOwnerZero",
|
286
|
+
"name": "ErrorPolicyServicePolicyHasNotExpired",
|
288
287
|
"type": "error"
|
289
288
|
},
|
290
289
|
{
|
291
290
|
"inputs": [
|
292
291
|
{
|
293
|
-
"internalType": "
|
294
|
-
"name": "
|
295
|
-
"type": "
|
292
|
+
"internalType": "NftId",
|
293
|
+
"name": "policyNftId",
|
294
|
+
"type": "uint96"
|
296
295
|
}
|
297
296
|
],
|
298
|
-
"name": "
|
297
|
+
"name": "ErrorPolicyServicePolicyNotActivated",
|
299
298
|
"type": "error"
|
300
299
|
},
|
301
300
|
{
|
302
301
|
"inputs": [
|
303
302
|
{
|
304
|
-
"internalType": "
|
305
|
-
"name": "
|
306
|
-
"type": "
|
303
|
+
"internalType": "NftId",
|
304
|
+
"name": "policyNftId",
|
305
|
+
"type": "uint96"
|
306
|
+
},
|
307
|
+
{
|
308
|
+
"internalType": "StateId",
|
309
|
+
"name": "state",
|
310
|
+
"type": "uint8"
|
307
311
|
}
|
308
312
|
],
|
309
|
-
"name": "
|
313
|
+
"name": "ErrorPolicyServicePolicyNotActive",
|
310
314
|
"type": "error"
|
311
315
|
},
|
312
316
|
{
|
@@ -345,12 +349,18 @@
|
|
345
349
|
"inputs": [
|
346
350
|
{
|
347
351
|
"internalType": "NftId",
|
348
|
-
"name": "
|
352
|
+
"name": "applicationNftId",
|
349
353
|
"type": "uint96"
|
350
|
-
}
|
354
|
+
}
|
355
|
+
],
|
356
|
+
"name": "ErrorPolicyServicePolicyStateNotCollateralized",
|
357
|
+
"type": "error"
|
358
|
+
},
|
359
|
+
{
|
360
|
+
"inputs": [
|
351
361
|
{
|
352
|
-
"internalType": "
|
353
|
-
"name": "
|
362
|
+
"internalType": "NftId",
|
363
|
+
"name": "policyNftId",
|
354
364
|
"type": "uint96"
|
355
365
|
}
|
356
366
|
],
|
@@ -389,14 +399,9 @@
|
|
389
399
|
"internalType": "Amount",
|
390
400
|
"name": "premiumAmount",
|
391
401
|
"type": "uint96"
|
392
|
-
},
|
393
|
-
{
|
394
|
-
"internalType": "Amount",
|
395
|
-
"name": "premiumPaidAmount",
|
396
|
-
"type": "uint96"
|
397
402
|
}
|
398
403
|
],
|
399
|
-
"name": "
|
404
|
+
"name": "ErrorPolicyServicePremiumNotPaid",
|
400
405
|
"type": "error"
|
401
406
|
},
|
402
407
|
{
|
@@ -466,12 +471,31 @@
|
|
466
471
|
"inputs": [
|
467
472
|
{
|
468
473
|
"indexed": false,
|
469
|
-
"internalType": "
|
470
|
-
"name": "
|
471
|
-
"type": "
|
474
|
+
"internalType": "NftId",
|
475
|
+
"name": "policyNftId",
|
476
|
+
"type": "uint96"
|
477
|
+
}
|
478
|
+
],
|
479
|
+
"name": "LogPolicyServicePolicyDeclined",
|
480
|
+
"type": "event"
|
481
|
+
},
|
482
|
+
{
|
483
|
+
"anonymous": false,
|
484
|
+
"inputs": [
|
485
|
+
{
|
486
|
+
"indexed": false,
|
487
|
+
"internalType": "NftId",
|
488
|
+
"name": "policyNftId",
|
489
|
+
"type": "uint96"
|
490
|
+
},
|
491
|
+
{
|
492
|
+
"indexed": false,
|
493
|
+
"internalType": "Timestamp",
|
494
|
+
"name": "expiredAt",
|
495
|
+
"type": "uint40"
|
472
496
|
}
|
473
497
|
],
|
474
|
-
"name": "
|
498
|
+
"name": "LogPolicyServicePolicyExpirationUpdated",
|
475
499
|
"type": "event"
|
476
500
|
},
|
477
501
|
{
|
@@ -531,30 +555,6 @@
|
|
531
555
|
"stateMutability": "view",
|
532
556
|
"type": "function"
|
533
557
|
},
|
534
|
-
{
|
535
|
-
"inputs": [
|
536
|
-
{
|
537
|
-
"internalType": "UFixed",
|
538
|
-
"name": "collateralizationLevel",
|
539
|
-
"type": "uint256"
|
540
|
-
},
|
541
|
-
{
|
542
|
-
"internalType": "Amount",
|
543
|
-
"name": "sumInsuredAmount",
|
544
|
-
"type": "uint96"
|
545
|
-
}
|
546
|
-
],
|
547
|
-
"name": "calculateRequiredCollateral",
|
548
|
-
"outputs": [
|
549
|
-
{
|
550
|
-
"internalType": "Amount",
|
551
|
-
"name": "collateralAmount",
|
552
|
-
"type": "uint96"
|
553
|
-
}
|
554
|
-
],
|
555
|
-
"stateMutability": "pure",
|
556
|
-
"type": "function"
|
557
|
-
},
|
558
558
|
{
|
559
559
|
"inputs": [
|
560
560
|
{
|
@@ -572,21 +572,16 @@
|
|
572
572
|
"inputs": [
|
573
573
|
{
|
574
574
|
"internalType": "NftId",
|
575
|
-
"name": "
|
575
|
+
"name": "policyNftId",
|
576
576
|
"type": "uint96"
|
577
577
|
},
|
578
|
-
{
|
579
|
-
"internalType": "bool",
|
580
|
-
"name": "requirePremiumPayment",
|
581
|
-
"type": "bool"
|
582
|
-
},
|
583
578
|
{
|
584
579
|
"internalType": "Timestamp",
|
585
580
|
"name": "activateAt",
|
586
581
|
"type": "uint40"
|
587
582
|
}
|
588
583
|
],
|
589
|
-
"name": "
|
584
|
+
"name": "collectPremium",
|
590
585
|
"outputs": [],
|
591
586
|
"stateMutability": "nonpayable",
|
592
587
|
"type": "function"
|
@@ -595,7 +590,7 @@
|
|
595
590
|
"inputs": [
|
596
591
|
{
|
597
592
|
"internalType": "NftId",
|
598
|
-
"name": "
|
593
|
+
"name": "applicationNftId",
|
599
594
|
"type": "uint96"
|
600
595
|
},
|
601
596
|
{
|
@@ -604,7 +599,7 @@
|
|
604
599
|
"type": "uint40"
|
605
600
|
}
|
606
601
|
],
|
607
|
-
"name": "
|
602
|
+
"name": "createPolicy",
|
608
603
|
"outputs": [],
|
609
604
|
"stateMutability": "nonpayable",
|
610
605
|
"type": "function"
|
@@ -613,7 +608,7 @@
|
|
613
608
|
"inputs": [
|
614
609
|
{
|
615
610
|
"internalType": "NftId",
|
616
|
-
"name": "
|
611
|
+
"name": "applicationNftId",
|
617
612
|
"type": "uint96"
|
618
613
|
}
|
619
614
|
],
|
@@ -628,10 +623,21 @@
|
|
628
623
|
"internalType": "NftId",
|
629
624
|
"name": "policyNftId",
|
630
625
|
"type": "uint96"
|
626
|
+
},
|
627
|
+
{
|
628
|
+
"internalType": "Timestamp",
|
629
|
+
"name": "expireAt",
|
630
|
+
"type": "uint40"
|
631
631
|
}
|
632
632
|
],
|
633
633
|
"name": "expire",
|
634
|
-
"outputs": [
|
634
|
+
"outputs": [
|
635
|
+
{
|
636
|
+
"internalType": "Timestamp",
|
637
|
+
"name": "expiredAt",
|
638
|
+
"type": "uint40"
|
639
|
+
}
|
640
|
+
],
|
635
641
|
"stateMutability": "nonpayable",
|
636
642
|
"type": "function"
|
637
643
|
},
|
@@ -641,7 +647,7 @@
|
|
641
647
|
"outputs": [
|
642
648
|
{
|
643
649
|
"internalType": "ObjectType",
|
644
|
-
"name": "",
|
650
|
+
"name": "serviceDomain",
|
645
651
|
"type": "uint8"
|
646
652
|
}
|
647
653
|
],
|
@@ -698,19 +704,6 @@
|
|
698
704
|
"stateMutability": "view",
|
699
705
|
"type": "function"
|
700
706
|
},
|
701
|
-
{
|
702
|
-
"inputs": [],
|
703
|
-
"name": "getInstanceService",
|
704
|
-
"outputs": [
|
705
|
-
{
|
706
|
-
"internalType": "contract InstanceService",
|
707
|
-
"name": "",
|
708
|
-
"type": "address"
|
709
|
-
}
|
710
|
-
],
|
711
|
-
"stateMutability": "view",
|
712
|
-
"type": "function"
|
713
|
-
},
|
714
707
|
{
|
715
708
|
"inputs": [],
|
716
709
|
"name": "getNftId",
|
@@ -752,15 +745,15 @@
|
|
752
745
|
},
|
753
746
|
{
|
754
747
|
"inputs": [],
|
755
|
-
"name": "
|
748
|
+
"name": "getRoleId",
|
756
749
|
"outputs": [
|
757
750
|
{
|
758
|
-
"internalType": "
|
759
|
-
"name": "",
|
760
|
-
"type": "
|
751
|
+
"internalType": "RoleId",
|
752
|
+
"name": "serviceRoleId",
|
753
|
+
"type": "uint64"
|
761
754
|
}
|
762
755
|
],
|
763
|
-
"stateMutability": "
|
756
|
+
"stateMutability": "pure",
|
764
757
|
"type": "function"
|
765
758
|
},
|
766
759
|
{
|
@@ -776,105 +769,6 @@
|
|
776
769
|
"stateMutability": "pure",
|
777
770
|
"type": "function"
|
778
771
|
},
|
779
|
-
{
|
780
|
-
"inputs": [],
|
781
|
-
"name": "initializeERC165",
|
782
|
-
"outputs": [],
|
783
|
-
"stateMutability": "nonpayable",
|
784
|
-
"type": "function"
|
785
|
-
},
|
786
|
-
{
|
787
|
-
"inputs": [
|
788
|
-
{
|
789
|
-
"internalType": "address",
|
790
|
-
"name": "initialOwner",
|
791
|
-
"type": "address"
|
792
|
-
},
|
793
|
-
{
|
794
|
-
"internalType": "address",
|
795
|
-
"name": "registryAddress",
|
796
|
-
"type": "address"
|
797
|
-
}
|
798
|
-
],
|
799
|
-
"name": "initializeNftOwnable",
|
800
|
-
"outputs": [],
|
801
|
-
"stateMutability": "nonpayable",
|
802
|
-
"type": "function"
|
803
|
-
},
|
804
|
-
{
|
805
|
-
"inputs": [
|
806
|
-
{
|
807
|
-
"internalType": "address",
|
808
|
-
"name": "registryAddress",
|
809
|
-
"type": "address"
|
810
|
-
},
|
811
|
-
{
|
812
|
-
"internalType": "NftId",
|
813
|
-
"name": "parentNftId",
|
814
|
-
"type": "uint96"
|
815
|
-
},
|
816
|
-
{
|
817
|
-
"internalType": "ObjectType",
|
818
|
-
"name": "objectType",
|
819
|
-
"type": "uint8"
|
820
|
-
},
|
821
|
-
{
|
822
|
-
"internalType": "bool",
|
823
|
-
"name": "isInterceptor",
|
824
|
-
"type": "bool"
|
825
|
-
},
|
826
|
-
{
|
827
|
-
"internalType": "address",
|
828
|
-
"name": "initialOwner",
|
829
|
-
"type": "address"
|
830
|
-
},
|
831
|
-
{
|
832
|
-
"internalType": "bytes",
|
833
|
-
"name": "registryData",
|
834
|
-
"type": "bytes"
|
835
|
-
}
|
836
|
-
],
|
837
|
-
"name": "initializeRegisterable",
|
838
|
-
"outputs": [],
|
839
|
-
"stateMutability": "nonpayable",
|
840
|
-
"type": "function"
|
841
|
-
},
|
842
|
-
{
|
843
|
-
"inputs": [
|
844
|
-
{
|
845
|
-
"internalType": "address",
|
846
|
-
"name": "registryAddress",
|
847
|
-
"type": "address"
|
848
|
-
}
|
849
|
-
],
|
850
|
-
"name": "initializeRegistryLinked",
|
851
|
-
"outputs": [],
|
852
|
-
"stateMutability": "nonpayable",
|
853
|
-
"type": "function"
|
854
|
-
},
|
855
|
-
{
|
856
|
-
"inputs": [
|
857
|
-
{
|
858
|
-
"internalType": "address",
|
859
|
-
"name": "registry",
|
860
|
-
"type": "address"
|
861
|
-
},
|
862
|
-
{
|
863
|
-
"internalType": "address",
|
864
|
-
"name": "authority",
|
865
|
-
"type": "address"
|
866
|
-
},
|
867
|
-
{
|
868
|
-
"internalType": "address",
|
869
|
-
"name": "initialOwner",
|
870
|
-
"type": "address"
|
871
|
-
}
|
872
|
-
],
|
873
|
-
"name": "initializeService",
|
874
|
-
"outputs": [],
|
875
|
-
"stateMutability": "nonpayable",
|
876
|
-
"type": "function"
|
877
|
-
},
|
878
772
|
{
|
879
773
|
"inputs": [
|
880
774
|
{
|
@@ -907,44 +801,18 @@
|
|
907
801
|
"type": "function"
|
908
802
|
},
|
909
803
|
{
|
910
|
-
"inputs": [
|
911
|
-
|
912
|
-
"internalType": "address",
|
913
|
-
"name": "nftOwnableAddress",
|
914
|
-
"type": "address"
|
915
|
-
}
|
916
|
-
],
|
917
|
-
"name": "linkToNftOwnable",
|
804
|
+
"inputs": [],
|
805
|
+
"name": "linkToRegisteredNftId",
|
918
806
|
"outputs": [
|
919
807
|
{
|
920
808
|
"internalType": "NftId",
|
921
|
-
"name": "",
|
809
|
+
"name": "nftId",
|
922
810
|
"type": "uint96"
|
923
811
|
}
|
924
812
|
],
|
925
813
|
"stateMutability": "nonpayable",
|
926
814
|
"type": "function"
|
927
815
|
},
|
928
|
-
{
|
929
|
-
"inputs": [],
|
930
|
-
"name": "linkToRegisteredNftId",
|
931
|
-
"outputs": [],
|
932
|
-
"stateMutability": "nonpayable",
|
933
|
-
"type": "function"
|
934
|
-
},
|
935
|
-
{
|
936
|
-
"inputs": [
|
937
|
-
{
|
938
|
-
"internalType": "bytes4",
|
939
|
-
"name": "interfaceId",
|
940
|
-
"type": "bytes4"
|
941
|
-
}
|
942
|
-
],
|
943
|
-
"name": "registerInterface",
|
944
|
-
"outputs": [],
|
945
|
-
"stateMutability": "nonpayable",
|
946
|
-
"type": "function"
|
947
|
-
},
|
948
816
|
{
|
949
817
|
"inputs": [
|
950
818
|
{
|
@@ -991,86 +859,54 @@
|
|
991
859
|
"type": "function"
|
992
860
|
}
|
993
861
|
],
|
994
|
-
"bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000d6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000735760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d35780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b6151da80620000e66000396000f3fe608060405234801561001057600080fd5b50600436106101e55760003560e01c80635ab1bd531161010f578063a4f60839116100a2578063bf7e214f11610071578063bf7e214f14610462578063caf4e3d414610480578063cc9fc59a14610488578063f7c34ee01461049057600080fd5b8063a4f6083914610418578063ada9652e1461042b578063b68d180914610440578063bbfbbfba1461044f57600080fd5b8063893d20e8116100de578063893d20e8146103ce5780638e32e979146103d65780638fb36037146103e95780639ffcede91461040a57600080fd5b80635ab1bd5314610365578063644c45e01461038a578063675393bf146103a85780637a9e5e4b146103bb57600080fd5b8063214cdb80116101875780633d3cf023116101565780633d3cf0231461030357806340be23761461031457806349bb9e4b1461033f5780634d5e16a91461035257600080fd5b8063214cdb80146102c257806327bb7a33146102d5578063329d6e74146102e857806336fc697e146102fb57600080fd5b80630fec111c116101c35780630fec111c1461025d578063138461e0146102725780631c8179721461027a5780631eff4b221461028d57600080fd5b806301ffc9a7146101ea5780630aaba8e81461022c5780630d8e6e2c14610241575b600080fd5b6102176101f8366004613f3d565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61023f61023a366004613f7c565b6104a3565b005b6102496109ed565b60405162ffffff9091168152602001610223565b610265610a77565b6040516102239190613fe9565b61023f610b98565b61023f61028836600461408d565b610ba1565b6102b47f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610223565b61023f6102d0366004613f3d565b61101b565b61023f6102e3366004614250565b611048565b61023f6102f63660046142e8565b6110ed565b61023f61123a565b61023f610311366004613f7c565b50565b61032761032236600461431c565b611280565b6040516001600160601b039091168152602001610223565b61023f61034d366004614339565b6112ce565b61023f610360366004614388565b6113cd565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610223565b600080516020615145833981519152546001600160601b0316610327565b61023f6103b636600461431c565b6116ac565b61023f6103c936600461431c565b6117b9565b610372611853565b61023f6103e43660046143c1565b61198a565b6103f1611bc3565b6040516001600160e01b03199091168152602001610223565b61023f6101e5366004613f7c565b610327610426366004614401565b611bfb565b6102b460008051602061514583398151915281565b60405160d38152602001610223565b61023f61045d366004614388565b611d83565b600080516020615165833981519152546001600160a01b0316610372565b610372612149565b610372612155565b61023f61049e366004614426565b612161565b60006104af606e6121d8565b925050506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105179190614454565b60405163bd7d9d8560e01b81526001600160601b03851660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa15801561056a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059291908101906144fe565b6101c081015160405163790a38ad60e01b815264ffffffffff909116600482015290915073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af41580156105f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061691906146b4565b15610644576040516308cbe08b60e21b81526001600160601b03851660048201526024015b60405180910390fd5b604051639096a1f360e01b81526001600160601b03851660048201526000906001600160a01b03841690639096a1f390602401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b891906146dc565b90506106cd8160645b60ff9081169116141590565b156106ff57604051634de91cf360e11b81526001600160601b038616600482015260ff8216602482015260440161063b565b610200820151604051638d38cd4b60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__90638d38cd4b90602401602060405180830381865af415801561075c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078091906146b4565b156107a957604051634b80547760e11b81526001600160601b038616600482015260240161063b565b6107bb8260a001518360c0015161237b565b6107fd5760a082015160c08301516040516348d5f6c560e01b81526001600160601b03808916600483015292831660248201529116604482015260640161063b565b61016082015161ffff16156108415761016082015160405163a5bb07ed60e01b81526001600160601b038716600482015261ffff909116602482015260440161063b565b73__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801561088a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ae91906146f9565b64ffffffffff1661020083015260065460405163a8de511760e01b81526001600160a01b039091169063a8de5117906108ef908790899087906004016148a3565b600060405180830381600087803b15801561090957600080fd5b505af115801561091d573d6000803e3d6000fd5b50505050836001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa15801561095f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109839190614454565b6001600160a01b031663985aeba7868460c85b6040518463ffffffff1660e01b81526004016109b4939291906148df565b600060405180830381600087803b1580156109ce57600080fd5b505af11580156109e2573d6000803e3d6000fd5b505050505050505050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af4158015610a4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a729190614914565b905090565b610a7f613eff565b6040805160e081018252600081527f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b038116602084015260ff600160601b8204811694840194909452600160681b90049092161515606082015230608082015260a08101610af4611853565b6001600160a01b03168152602001826001018054610b1190614939565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3d90614939565b8015610b8a5780601f10610b5f57610100808354040283529160200191610b8a565b820191906000526020600020905b815481529060010190602001808311610b6d57829003601f168201915b505050505081525091505090565b61031130612409565b600080610bae606e6121d8565b92505091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190614454565b60405163bd7d9d8560e01b81526001600160601b03881660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa158015610c6a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c9291908101906144fe565b80519091506001600160601b03858116911614610ce0578051604051631a06208360e01b81526001600160601b03808a1660048301529182166024820152908516604482015260640161063b565b604051639096a1f360e01b81526001600160601b0388166004820152610d5c906001600160a01b03841690639096a1f390602401602060405180830381865afa158015610d31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5591906146dc565b600a6106c1565b15610d8557604051631130ddad60e21b81526001600160601b038816600482015260240161063b565b602864ffffffffff861615610e3a57606464ffffffffff8781166101c0850181905260e08501516040516352bcc5a760e11b81526004810192909252909116602482015290915073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af4158015610e08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2c91906146f9565b64ffffffffff166101e08301525b600073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea99190614973565b90508715610ee357610ec0858a8560a0015161260a565b9050610ed48360c001518460a0015161349c565b6001600160601b031660c08401525b846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f459190614454565b6001600160a01b031663985aeba78a85856040518463ffffffff1660e01b8152600401610f74939291906148df565b600060405180830381600087803b158015610f8e57600080fd5b505af1158015610fa2573d6000803e3d6000fd5b5050600654604051631e63871f60e11b81526001600160a01b039091169250633cc70e3e9150610fde9088908a908e9089908890600401614990565b600060405180830381600087803b158015610ff857600080fd5b505af115801561100c573d6000803e3d6000fd5b50505050505050505050505050565b611023613524565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b611050613524565b61105a8287612161565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa3016110e38382614a2c565b5050505050505050565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c61110f6109ed565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801561114f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111739190614aeb565b6000805160206151858339815191528054600160401b900460ff16806111a6575080546001600160401b03808416911610155b156111c45760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b1781556111ee8361355d565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b611242613524565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b600061128a611853565b6001600160a01b0316336001600160a01b0316146112bd5760405163086391f760e31b815233600482015260240161063b565b6112c682612409565b90505b919050565b6000805160206151858339815191528054600160401b810460ff1615906001600160401b03166000811580156113015750825b90506000826001600160401b0316600114801561131d5750303b155b90508115801561132b575080155b156113495760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561137357845460ff60401b1916600160401b1785555b61137d8787613565565b83156113c457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b50505050505050565b60006113d9606e6121d8565b925050506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801561141d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114419190614454565b60405163bd7d9d8560e01b81526001600160601b03861660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa158015611494573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114bc91908101906144fe565b6101c081015160405163790a38ad60e01b815264ffffffffff909116600482015290915073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af415801561151c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154091906146b4565b61158c5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a5052532d3032303a414c52454144595f41435449564154454400604482015260640161063b565b64ffffffffff8481166101c0830181905260e08301516040516352bcc5a760e11b81526004810192909252909116602482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af41580156115fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061161f91906146f9565b64ffffffffff166101e082015260408051631a99b41b60e31b815290516001600160a01b0385169163d4cda0d89160048083019260209291908290030181865afa158015611671573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116959190614454565b6001600160a01b031663985aeba786836064610996565b6116b4613524565b806001600160a01b03163b6000036116ea5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161063b565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b81526312da491160e01b60048201526301ffc9a790602401602060405180830381865afa925050508015611764575060408051601f3d908101601f19168201909252611761918101906146b4565b60015b61178c5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161063b565b806117b55760405163fdeac91f60e01b81526001600160a01b038316600482015260240161063b565b5050565b336117d9600080516020615165833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b0316146118145760405162d1953b60e31b81526001600160a01b038216600482015260240161063b565b816001600160a01b03163b60000361184a576040516361798f2f60e11b81526001600160a01b038316600482015260240161063b565b6117b582613a8c565b60008060008051602061514583398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156118c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118e791906146b4565b15611974576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801561194a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061196e9190614454565b91505090565b54600160601b90046001600160a01b0316919050565b611992613524565b611a1283846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f89190614973565b603c60008560405180602001604052806000815250611048565b6001600160a01b03821615611a2f57611a2a82613aed565b611b9e565b6000611a436001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015611aa3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac791906146dc565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015611b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b309190614454565b9050611b9c816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b979190614454565b613aed565b505b611bae634a531f3360e01b61101b565b611bbe63b68d180960e01b61101b565b505050565b600080516020615165833981519152805460009190600160a01b900460ff16611bed57600061196e565b638fb3603760e01b91505090565b6040516355205f0f60e01b81526001600160601b03821660048201526000908190611c8790859073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af4158015611c5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c829190614b1f565b613afe565b604051632255341b60e11b81526004810182905290915073__$3bac17678db7ae928afa209f2f44deec9c$__90634c41dd969073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015611cf6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d1a9190614b1f565b6040518263ffffffff1660e01b8152600401611d3891815260200190565b602060405180830381865af4158015611d55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d799190614973565b9150505b92915050565b600080611d90606e6121d8565b92505091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df99190614454565b60405163bd7d9d8560e01b81526001600160601b03871660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa158015611e4c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611e7491908101906144fe565b9050611e888160c001518260a0015161237b565b15611ebf5760c0810151604051636cc0f84b60e01b81526001600160601b038089166004830152909116602482015260440161063b565b6000611ed38260a001518360c00151613b13565b90506000611ee285898461260a565b9050611ef28360c001518361349c565b6001600160601b0390811660c08501526003546020850151604051635ed3256760e01b81526001600160a01b038981166004830152918416602482015292841660448401521690635ed3256790606401600060405180830381600087803b158015611f5c57600080fd5b505af1158015611f70573d6000803e3d6000fd5b50505050846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd69190614454565b6001600160a01b031663985aeba7898560ff6040518463ffffffff1660e01b8152600401612006939291906148df565b600060405180830381600087803b15801561202057600080fd5b505af1158015612034573d6000803e3d6000fd5b5050604051638d38cd4b60e01b815264ffffffffff8a16600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9250638d38cd4b9150602401602060405180830381865af415801561208e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120b291906146b4565b801561213a57506101c083015160405163790a38ad60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af4158015612116573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213a91906146b4565b156110e3576110e388886113cd565b6000610a726028613b5e565b6000610a726046613b5e565b612169613524565b612172816116ac565b61217a61123a565b6001600160a01b0382166121a15760405163f17ef42d60e01b815260040160405180910390fd5b5060008051602061514583398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b60006121e2613eff565b60006121f66001546001600160a01b031690565b604051636939560f60e11b81523360048201526001600160a01b03919091169063d272ac1e90602401602060405180830381865afa15801561223c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122609190614973565b925061226c8385613c6b565b8092508193505050806001600160a01b031663e5f6cd276040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122d69190614454565b608083015160405163a166aa8960e01b81526001600160a01b03918216600482015291169063a166aa8990602401602060405180830381865afa158015612321573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061234591906146b4565b1561237457608082015160405163d53987e560e01b81526001600160a01b03909116600482015260240161063b565b9193909250565b60405163c4cade9d60e01b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063c4cade9d90604401602060405180830381865af41580156123de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240291906146b4565b9392505050565b60008060008051602061514583398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015612479573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061249d91906146b4565b156124c95780546040516301ab8b6760e21b81526001600160601b03909116600482015260240161063b565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa15801561251d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061254191906146b4565b6125695760405163b9304b0d60e01b81526001600160a01b038416600482015260240161063b565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038581166004830152919091169063d272ac1e90602401602060405180830381865afa1580156125bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125e19190614973565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b604051630a4d29dd60e31b81526001600160601b038216600482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015612665573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061268991906146b4565b156127025773__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156126d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126fb9190614973565b9050612402565b60006127166001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03861660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015612765573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261278d9190810190614b38565b6020015190506000856001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127f79190614454565b60405163bd7d9d8560e01b81526001600160601b03871660048201526001600160a01b03919091169063bd7d9d8590602401600060405180830381865afa158015612846573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261286e91908101906144fe565b6007546060820151608083015160e084015161010085015160208601516040808801519051637a5ff29d60e11b81529798506000976001600160a01b039097169663f4bfe53a966128cb968c969195909491939092600401614c0a565b6101e060405180830381865afa1580156128e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061290d9190614c72565b60405163046e44af60e11b81526001600160601b038716600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015612968573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061298c9190614b1f565b816040015114612a4b57858573__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd9684604001516040518263ffffffff1660e01b81526004016129d591815260200190565b602060405180830381865af41580156129f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a169190614973565b6040516338b9ad1b60e11b81526001600160601b0393841660048201529183166024830152909116604482015260640161063b565b6000612a5f6001546001600160a01b031690565b604051631c5da14d60e11b81526001600160601b03891660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015612aae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad29190614454565b90506000886001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b389190614454565b60405163242bdc1960e21b81526001600160601b03871660048201526001600160a01b0391909116906390af70649060240161014060405180830381865afa158015612b88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bac9190614d7b565b90506000816020015190508360400151816001600160a01b03166321df0da76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1e9190614454565b604051636eb1769f60e11b81526001600160a01b0386811660048301528481166024830152919091169063dd62ed3e90604401602060405180830381865afa158015612c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c929190614b1f565b1015612cd1576040808501519051636d675c4360e01b81526001600160a01b03808616600483015283166024820152604481019190915260640161063b565b600073__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd968660e001518760600151612d019190614e39565b6040518263ffffffff1660e01b8152600401612d1f91815260200190565b602060405180830381865af4158015612d3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d609190614973565b9050600073__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd96876101c001518861014001518960c00151612d999190614e39565b612da39190614e4c565b6040518263ffffffff1660e01b8152600401612dc191815260200190565b602060405180830381865af4158015612dde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e029190614973565b905060008661010001518760800151612e1b9190614e39565b905060008761012001518860a00151612e349190614e39565b9050600073__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd9683858c60000151612e639190614e39565b612e6d9190614e39565b6040518263ffffffff1660e01b8152600401612e8b91815260200190565b602060405180830381865af4158015612ea8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ecc9190614973565b8951604051632620eecb60e11b815291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd9691612f0a9160040190815260200190565b602060405180830381865af4158015612f27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f4b9190614973565b60e088015160405163c661667d60e01b8152919d50906001600160a01b0388169063c661667d90612f84908c9085908b90600401614e5f565b600060405180830381600087803b158015612f9e57600080fd5b505af1158015612fb2573d6000803e3d6000fd5b505050505060008f6001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061301b9190614454565b6040808a01519051639ad69c6760e01b81526001600160601b0390911660048201526001600160a01b039190911690639ad69c679060240161010060405180830381865afa158015613071573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130959190614e8b565b608081015160405163c661667d60e01b8152919250906001600160a01b0389169063c661667d906130ce908d9085908b90600401614e5f565b600060405180830381600087803b1580156130e857600080fd5b505af11580156130fc573d6000803e3d6000fd5b50505050600560009054906101000a90046001600160a01b03166001600160a01b03166392e5fab68a604001518e604001518e8a6040518563ffffffff1660e01b815260040161314f9493929190614fc4565b600060405180830381600087803b15801561316957600080fd5b505af115801561317d573d6000803e3d6000fd5b50505050505060008f6001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131e79190614454565b606089015160405163f0ea17c360e01b81526001600160601b0390911660048201526001600160a01b03919091169063f0ea17c390602401600060405180830381865afa15801561323c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526132649190810190615007565b6060015160405163c661667d60e01b81529091506001600160a01b0388169063c661667d9061329b908c9085908790600401614e5f565b600060405180830381600087803b1580156132b557600080fd5b505af11580156132c9573d6000803e3d6000fd5b505060065460208e015160405163991cbfb360e01b81526001600160a01b03909216935063991cbfb39250613304918e9087906004016150ba565b600060405180830381600087803b15801561331e57600080fd5b505af1158015613332573d6000803e3d6000fd5b5050505050600061334c613346868461349c565b8761349c565b60405163046e44af60e11b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af41580156133a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133cb9190614b1f565b8a6040015114613489578e73__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd968c604001516040518263ffffffff1660e01b815260040161341391815260200190565b602060405180830381865af4158015613430573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134549190614973565b6040516310c696cd60e31b81526001600160601b0392831660048201529082166024820152908216604482015260640161063b565b5050505050505050505050509392505050565b60405163274acb3560e01b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb35906044015b602060405180830381865af4158015613500573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124029190614973565b60008051602061518583398151915254600160401b900460ff1661355b57604051631afcd79f60e31b815260040160405180910390fd5b565b6101e5613524565b6000805160206151858339815191528054600160401b810460ff1615906001600160401b03166000811580156135985750825b90506000826001600160401b031660011480156135b45750303b155b9050811580156135c2575080155b156135e05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561360a57845460ff60401b1916600160401b1785555b6000808780602001905181019061362191906150ec565b925050915061363182828b61198a565b600061363b6109ed565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af4158015613690573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136b491906146dc565b90506136c86001546001600160a01b031690565b6001600160a01b031663d39e6043608c6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa15801561371e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137429190614454565b600680546001600160a01b0319166001600160a01b039283161790556001541663d39e604360dc6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa1580156137af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137d39190614454565b600380546001600160a01b0319166001600160a01b039283161790556001541663d39e604360d46040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015613840573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138649190614454565b600480546001600160a01b0319166001600160a01b039283161790556001541663d39e604360d26040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa1580156138d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138f59190614454565b600280546001600160a01b0319166001600160a01b039283161790556001541663d39e604360786040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015613962573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139869190614454565b600580546001600160a01b0319166001600160a01b039283161790556001541663d39e604360e66040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa1580156139f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a179190614454565b600780546001600160a01b0319166001600160a01b0392909216919091179055613a4763735cb6bd60e11b61101b565b50505083156113c457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020016113bb565b60008051602061516583398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b613af5613524565b61031181613d6f565b60006124028383670de0b6b3a7640000613d80565b6040516363cf551160e11b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa22906044016134e3565b6000613b726001546001600160a01b031690565b6001600160a01b031663d39e604383613b896109ed565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af4158015613bde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c0291906146dc565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015613c47573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c69190614454565b613c73613eff565b6000613c876001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03861660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015613cd6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cfe9190810190614b38565b9150613d1582604001518460ff9081169116141590565b15613d5957608082015160408084015190516304081d4960e41b81526001600160a01b03909216600483015260ff808616602484015216604482015260640161063b565b613d668260200151613e6a565b90509250929050565b613d77613524565b61031181613a8c565b6000808060001985870985870292508281108382030391505080600003613dba57838281613db057613db061512e565b0492505050612402565b808411613e015760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640161063b565b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b6000613e7e6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015613ecd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613ef59190810190614b38565b6080015192915050565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b600060208284031215613f4f57600080fd5b81356001600160e01b03198116811461240257600080fd5b6001600160601b038116811461031157600080fd5b600060208284031215613f8e57600080fd5b813561240281613f67565b60005b83811015613fb4578181015183820152602001613f9c565b50506000910152565b60008151808452613fd5816020860160208601613f99565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a083015161405260c08401826001600160a01b03169052565b5060c083015160e080840152611d79610100840182613fbd565b801515811461031157600080fd5b64ffffffffff8116811461031157600080fd5b6000806000606084860312156140a257600080fd5b83356140ad81613f67565b925060208401356140bd8161406c565b915060408401356140cd8161407a565b809150509250925092565b6001600160a01b038116811461031157600080fd5b60ff8116811461031157600080fd5b634e487b7160e01b600052604160045260246000fd5b60405161022081016001600160401b0381118282101715614135576141356140fc565b60405290565b60405160e081016001600160401b0381118282101715614135576141356140fc565b6040516101e081016001600160401b0381118282101715614135576141356140fc565b60405161010081016001600160401b0381118282101715614135576141356140fc565b604051601f8201601f191681016001600160401b03811182821017156141cb576141cb6140fc565b604052919050565b60006001600160401b038211156141ec576141ec6140fc565b50601f01601f191660200190565b600082601f83011261420b57600080fd5b813561421e614219826141d3565b6141a3565b81815284602083860101111561423357600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c0878903121561426957600080fd5b8635614274816140d8565b9550602087013561428481613f67565b94506040870135614294816140ed565b935060608701356142a48161406c565b925060808701356142b4816140d8565b915060a08701356001600160401b038111156142cf57600080fd5b6142db89828a016141fa565b9150509295509295509295565b6000602082840312156142fa57600080fd5b81356001600160401b0381111561431057600080fd5b611d79848285016141fa565b60006020828403121561432e57600080fd5b8135612402816140d8565b6000806040838503121561434c57600080fd5b8235614357816140d8565b915060208301356001600160401b0381111561437257600080fd5b61437e858286016141fa565b9150509250929050565b6000806040838503121561439b57600080fd5b82356143a681613f67565b915060208301356143b68161407a565b809150509250929050565b6000806000606084860312156143d657600080fd5b83356143e1816140d8565b925060208401356143f1816140d8565b915060408401356140cd816140d8565b6000806040838503121561441457600080fd5b8235915060208301356143b681613f67565b6000806040838503121561443957600080fd5b8235614444816140d8565b915060208301356143b6816140d8565b60006020828403121561446657600080fd5b8151612402816140d8565b80516112c981613f67565b80516001600160c01b0319811681146112c957600080fd5b80516112c98161407a565b600082601f8301126144b057600080fd5b81516144be614219826141d3565b8181528460208386010111156144d357600080fd5b6144e4826020830160208701613f99565b949350505050565b805161ffff811681146112c957600080fd5b60006020828403121561451057600080fd5b81516001600160401b038082111561452757600080fd5b90830190610220828603121561453c57600080fd5b614544614112565b61454d83614471565b815261455b60208401614471565b602082015261456c6040840161447c565b604082015261457d6060840161447c565b606082015261458e60808401614471565b608082015261459f60a08401614471565b60a08201526145b060c08401614471565b60c08201526145c160e08401614494565b60e082015261010080840151838111156145da57600080fd5b6145e68882870161449f565b828401525050610120808401518381111561460057600080fd5b61460c8882870161449f565b82840152505061014091506146228284016144ec565b8282015261016091506146368284016144ec565b82820152610180915061464a828401614471565b828201526101a0915061465e828401614471565b828201526101c09150614672828401614494565b828201526101e09150614686828401614494565b82820152610200915061469a828401614494565b91810191909152949350505050565b80516112c98161406c565b6000602082840312156146c657600080fd5b81516124028161406c565b80516112c9816140ed565b6000602082840312156146ee57600080fd5b8151612402816140ed565b60006020828403121561470b57600080fd5b81516124028161407a565b80516001600160601b031682526000610220602083015161474260208601826001600160601b03169052565b50604083015161475e60408601826001600160c01b0319169052565b50606083015161477a60608601826001600160c01b0319169052565b50608083015161479560808601826001600160601b03169052565b5060a08301516147b060a08601826001600160601b03169052565b5060c08301516147cb60c08601826001600160601b03169052565b5060e08301516147e460e086018264ffffffffff169052565b506101008084015182828701526147fd83870182613fbd565b9250505061012080840151858303828701526148198382613fbd565b92505050610140808401516148338287018261ffff169052565b50506101608381015161ffff1690850152610180808401516001600160601b03908116918601919091526101a080850151909116908501526101c08084015164ffffffffff908116918601919091526101e080850151821690860152610200938401511692909301919091525090565b6001600160a01b03841681526001600160601b03831660208201526060604082018190526000906148d690830184614716565b95945050505050565b6001600160601b03841681526060602082015260006149016060830185614716565b905060ff83166040830152949350505050565b60006020828403121561492657600080fd5b815162ffffff8116811461240257600080fd5b600181811c9082168061494d57607f821691505b60208210810361496d57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561498557600080fd5b815161240281613f67565b60018060a01b038616815260006001600160601b038087166020840152808616604084015260a060608401526149c960a0840186614716565b91508084166080840152509695505050505050565b601f821115611bbe57600081815260208120601f850160051c81016020861015614a055750805b601f850160051c820191505b81811015614a2457828155600101614a11565b505050505050565b81516001600160401b03811115614a4557614a456140fc565b614a5981614a538454614939565b846149de565b602080601f831160018114614a8e5760008415614a765750858301515b600019600386901b1c1916600185901b178555614a24565b600085815260208120601f198616915b82811015614abd57888601518255948401946001909101908401614a9e565b5085821015614adb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215614afd57600080fd5b81516001600160401b038116811461240257600080fd5b80516112c9816140d8565b600060208284031215614b3157600080fd5b5051919050565b600060208284031215614b4a57600080fd5b81516001600160401b0380821115614b6157600080fd5b9083019060e08286031215614b7557600080fd5b614b7d61413b565b614b8683614471565b8152614b9460208401614471565b6020820152614ba5604084016146d1565b6040820152614bb6606084016146a9565b6060820152614bc760808401614b14565b6080820152614bd860a08401614b14565b60a082015260c083015182811115614bef57600080fd5b614bfb8782860161449f565b60c08301525095945050505050565b60006001600160601b03808a1683526001600160401b0360c01b808a166020850152818916604085015264ffffffffff8816606085015260e06080850152614c5560e0850188613fbd565b9590911660a08401529290921660c0909101525095945050505050565b60006101e08284031215614c8557600080fd5b614c8d61415d565b825181526020808401519082015260408084015190820152606080840151908201526080808401519082015260a0808401519082015260c0808401519082015260e08084015190820152610100808401519082015261012080840151908201526101408084015190820152610160808401519082015261018080840151908201526101a080840151908201526101c0928301519281019290925250919050565b600060408284031215614d3f57600080fd5b604051604081018181106001600160401b0382111715614d6157614d616140fc565b604052825181526020928301519281019290925250919050565b60006101408284031215614d8e57600080fd5b614d96614180565b614d9f83614b14565b8152614dad60208401614b14565b6020820152614dbe60408401614471565b6040820152614dcf60608401614471565b6060820152614de18460808501614d2d565b6080820152614df38460c08501614d2d565b60a0820152614e0561010084016146a9565b60c0820152614e176101208401614b14565b60e08201529392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611d7d57611d7d614e23565b81810381811115611d7d57611d7d614e23565b6001600160a01b0393841681529190921660208201526001600160601b03909116604082015260600190565b60006101008284031215614e9e57600080fd5b60405160c081018181106001600160401b0382111715614ec057614ec06140fc565b6040528251614ece81613f67565b81526020830151614ede816140d8565b6020820152614ef08460408501614d2d565b6040820152614f028460808501614d2d565b606082015260c0830151614f15816140d8565b608082015260e0929092015160a083015250919050565b805182526020808201519083015260408082015190830152606080820151908301526080808201519083015260a0808201519083015260c0808201519083015260e08082015190830152610100808201519083015261012080820151908301526101408082015190830152610160808201519083015261018080820151908301526101a080820151908301526101c090810151910152565b6001600160601b0385811682526001600160c01b031985166020830152610240820190614ff46040840186614f2c565b8084166102208401525095945050505050565b60006020828403121561501957600080fd5b81516001600160401b038082111561503057600080fd5b9083019060e0828603121561504457600080fd5b61504c61413b565b82518281111561505b57600080fd5b6150678782860161449f565b82525061507660208401614b14565b602082015261508760408401614b14565b604082015261509860608401614b14565b60608201526150a960808401614471565b6080820152614bd860a08401614471565b6001600160601b0384811682526102208201906150da6020840186614f2c565b80841661020084015250949350505050565b60008060006060848603121561510157600080fd5b835161510c816140d8565b602085015190935061511d816140d8565b60408501519092506140cd816140d8565b634e487b7160e01b600052601260045260246000fdfe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220062f4087604a82a62b5724481ecd9cb73720884c6c43d1306410bb00f480a35364736f6c63430008140033",
|
995
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101e55760003560e01c80635ab1bd531161010f578063a4f60839116100a2578063bf7e214f11610071578063bf7e214f14610462578063caf4e3d414610480578063cc9fc59a14610488578063f7c34ee01461049057600080fd5b8063a4f6083914610418578063ada9652e1461042b578063b68d180914610440578063bbfbbfba1461044f57600080fd5b8063893d20e8116100de578063893d20e8146103ce5780638e32e979146103d65780638fb36037146103e95780639ffcede91461040a57600080fd5b80635ab1bd5314610365578063644c45e01461038a578063675393bf146103a85780637a9e5e4b146103bb57600080fd5b8063214cdb80116101875780633d3cf023116101565780633d3cf0231461030357806340be23761461031457806349bb9e4b1461033f5780634d5e16a91461035257600080fd5b8063214cdb80146102c257806327bb7a33146102d5578063329d6e74146102e857806336fc697e146102fb57600080fd5b80630fec111c116101c35780630fec111c1461025d578063138461e0146102725780631c8179721461027a5780631eff4b221461028d57600080fd5b806301ffc9a7146101ea5780630aaba8e81461022c5780630d8e6e2c14610241575b600080fd5b6102176101f8366004613f3d565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61023f61023a366004613f7c565b6104a3565b005b6102496109ed565b60405162ffffff9091168152602001610223565b610265610a77565b6040516102239190613fe9565b61023f610b98565b61023f61028836600461408d565b610ba1565b6102b47f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610223565b61023f6102d0366004613f3d565b61101b565b61023f6102e3366004614250565b611048565b61023f6102f63660046142e8565b6110ed565b61023f61123a565b61023f610311366004613f7c565b50565b61032761032236600461431c565b611280565b6040516001600160601b039091168152602001610223565b61023f61034d366004614339565b6112ce565b61023f610360366004614388565b6113cd565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610223565b600080516020615145833981519152546001600160601b0316610327565b61023f6103b636600461431c565b6116ac565b61023f6103c936600461431c565b6117b9565b610372611853565b61023f6103e43660046143c1565b61198a565b6103f1611bc3565b6040516001600160e01b03199091168152602001610223565b61023f6101e5366004613f7c565b610327610426366004614401565b611bfb565b6102b460008051602061514583398151915281565b60405160d38152602001610223565b61023f61045d366004614388565b611d83565b600080516020615165833981519152546001600160a01b0316610372565b610372612149565b610372612155565b61023f61049e366004614426565b612161565b60006104af606e6121d8565b925050506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156104f3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906105179190614454565b60405163bd7d9d8560e01b81526001600160601b03851660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa15801561056a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261059291908101906144fe565b6101c081015160405163790a38ad60e01b815264ffffffffff909116600482015290915073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af41580156105f2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061061691906146b4565b15610644576040516308cbe08b60e21b81526001600160601b03851660048201526024015b60405180910390fd5b604051639096a1f360e01b81526001600160601b03851660048201526000906001600160a01b03841690639096a1f390602401602060405180830381865afa158015610694573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106b891906146dc565b90506106cd8160645b60ff9081169116141590565b156106ff57604051634de91cf360e11b81526001600160601b038616600482015260ff8216602482015260440161063b565b610200820151604051638d38cd4b60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__90638d38cd4b90602401602060405180830381865af415801561075c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061078091906146b4565b156107a957604051634b80547760e11b81526001600160601b038616600482015260240161063b565b6107bb8260a001518360c0015161237b565b6107fd5760a082015160c08301516040516348d5f6c560e01b81526001600160601b03808916600483015292831660248201529116604482015260640161063b565b61016082015161ffff16156108415761016082015160405163a5bb07ed60e01b81526001600160601b038716600482015261ffff909116602482015260440161063b565b73__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af415801561088a573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906108ae91906146f9565b64ffffffffff1661020083015260065460405163a8de511760e01b81526001600160a01b039091169063a8de5117906108ef908790899087906004016148a3565b600060405180830381600087803b15801561090957600080fd5b505af115801561091d573d6000803e3d6000fd5b50505050836001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa15801561095f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109839190614454565b6001600160a01b031663985aeba7868460c85b6040518463ffffffff1660e01b81526004016109b4939291906148df565b600060405180830381600087803b1580156109ce57600080fd5b505af11580156109e2573d6000803e3d6000fd5b505050505050505050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af4158015610a4e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610a729190614914565b905090565b610a7f613eff565b6040805160e081018252600081527f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b038116602084015260ff600160601b8204811694840194909452600160681b90049092161515606082015230608082015260a08101610af4611853565b6001600160a01b03168152602001826001018054610b1190614939565b80601f0160208091040260200160405190810160405280929190818152602001828054610b3d90614939565b8015610b8a5780601f10610b5f57610100808354040283529160200191610b8a565b820191906000526020600020905b815481529060010190602001808311610b6d57829003601f168201915b505050505081525091505090565b61031130612409565b600080610bae606e6121d8565b92505091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610bf3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c179190614454565b60405163bd7d9d8560e01b81526001600160601b03881660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa158015610c6a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052610c9291908101906144fe565b80519091506001600160601b03858116911614610ce0578051604051631a06208360e01b81526001600160601b03808a1660048301529182166024820152908516604482015260640161063b565b604051639096a1f360e01b81526001600160601b0388166004820152610d5c906001600160a01b03841690639096a1f390602401602060405180830381865afa158015610d31573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610d5591906146dc565b600a6106c1565b15610d8557604051631130ddad60e21b81526001600160601b038816600482015260240161063b565b602864ffffffffff861615610e3a57606464ffffffffff8781166101c0850181905260e08501516040516352bcc5a760e11b81526004810192909252909116602482015290915073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af4158015610e08573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e2c91906146f9565b64ffffffffff166101e08301525b600073__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610e85573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610ea99190614973565b90508715610ee357610ec0858a8560a0015161260a565b9050610ed48360c001518460a0015161349c565b6001600160601b031660c08401525b846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610f21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f459190614454565b6001600160a01b031663985aeba78a85856040518463ffffffff1660e01b8152600401610f74939291906148df565b600060405180830381600087803b158015610f8e57600080fd5b505af1158015610fa2573d6000803e3d6000fd5b5050600654604051631e63871f60e11b81526001600160a01b039091169250633cc70e3e9150610fde9088908a908e9089908890600401614990565b600060405180830381600087803b158015610ff857600080fd5b505af115801561100c573d6000803e3d6000fd5b50505050505050505050505050565b611023613524565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b611050613524565b61105a8287612161565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa3016110e38382614a2c565b5050505050505050565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c61110f6109ed565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801561114f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111739190614aeb565b6000805160206151858339815191528054600160401b900460ff16806111a6575080546001600160401b03808416911610155b156111c45760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b1781556111ee8361355d565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b611242613524565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b600061128a611853565b6001600160a01b0316336001600160a01b0316146112bd5760405163086391f760e31b815233600482015260240161063b565b6112c682612409565b90505b919050565b6000805160206151858339815191528054600160401b810460ff1615906001600160401b03166000811580156113015750825b90506000826001600160401b0316600114801561131d5750303b155b90508115801561132b575080155b156113495760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561137357845460ff60401b1916600160401b1785555b61137d8787613565565b83156113c457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b50505050505050565b60006113d9606e6121d8565b925050506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801561141d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114419190614454565b60405163bd7d9d8560e01b81526001600160601b03861660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa158015611494573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526114bc91908101906144fe565b6101c081015160405163790a38ad60e01b815264ffffffffff909116600482015290915073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af415801561151c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061154091906146b4565b61158c5760405162461bcd60e51b815260206004820152601f60248201527f4552524f523a5052532d3032303a414c52454144595f41435449564154454400604482015260640161063b565b64ffffffffff8481166101c0830181905260e08301516040516352bcc5a760e11b81526004810192909252909116602482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af41580156115fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061161f91906146f9565b64ffffffffff166101e082015260408051631a99b41b60e31b815290516001600160a01b0385169163d4cda0d89160048083019260209291908290030181865afa158015611671573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906116959190614454565b6001600160a01b031663985aeba786836064610996565b6116b4613524565b806001600160a01b03163b6000036116ea5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161063b565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b81526312da491160e01b60048201526301ffc9a790602401602060405180830381865afa925050508015611764575060408051601f3d908101601f19168201909252611761918101906146b4565b60015b61178c5760405163fdeac91f60e01b81526001600160a01b038216600482015260240161063b565b806117b55760405163fdeac91f60e01b81526001600160a01b038316600482015260240161063b565b5050565b336117d9600080516020615165833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b0316146118145760405162d1953b60e31b81526001600160a01b038216600482015260240161063b565b816001600160a01b03163b60000361184a576040516361798f2f60e11b81526001600160a01b038316600482015260240161063b565b6117b582613a8c565b60008060008051602061514583398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156118c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906118e791906146b4565b15611974576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801561194a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061196e9190614454565b91505090565b54600160601b90046001600160a01b0316919050565b611992613524565b611a1283846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f89190614973565b603c60008560405180602001604052806000815250611048565b6001600160a01b03821615611a2f57611a2a82613aed565b611b9e565b6000611a436001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015611aa3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611ac791906146dc565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015611b0c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b309190614454565b9050611b9c816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611b73573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b979190614454565b613aed565b505b611bae634a531f3360e01b61101b565b611bbe63b68d180960e01b61101b565b505050565b600080516020615165833981519152805460009190600160a01b900460ff16611bed57600061196e565b638fb3603760e01b91505090565b6040516355205f0f60e01b81526001600160601b03821660048201526000908190611c8790859073__$3bac17678db7ae928afa209f2f44deec9c$__906355205f0f90602401602060405180830381865af4158015611c5e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c829190614b1f565b613afe565b604051632255341b60e11b81526004810182905290915073__$3bac17678db7ae928afa209f2f44deec9c$__90634c41dd969073__$bf7bc340cbb9229ef1de2c568356e67902$__906344aa683690602401602060405180830381865af4158015611cf6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d1a9190614b1f565b6040518263ffffffff1660e01b8152600401611d3891815260200190565b602060405180830381865af4158015611d55573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d799190614973565b9150505b92915050565b600080611d90606e6121d8565b92505091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611dd5573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611df99190614454565b60405163bd7d9d8560e01b81526001600160601b03871660048201529091506000906001600160a01b0383169063bd7d9d8590602401600060405180830381865afa158015611e4c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611e7491908101906144fe565b9050611e888160c001518260a0015161237b565b15611ebf5760c0810151604051636cc0f84b60e01b81526001600160601b038089166004830152909116602482015260440161063b565b6000611ed38260a001518360c00151613b13565b90506000611ee285898461260a565b9050611ef28360c001518361349c565b6001600160601b0390811660c08501526003546020850151604051635ed3256760e01b81526001600160a01b038981166004830152918416602482015292841660448401521690635ed3256790606401600060405180830381600087803b158015611f5c57600080fd5b505af1158015611f70573d6000803e3d6000fd5b50505050846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611fb2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611fd69190614454565b6001600160a01b031663985aeba7898560ff6040518463ffffffff1660e01b8152600401612006939291906148df565b600060405180830381600087803b15801561202057600080fd5b505af1158015612034573d6000803e3d6000fd5b5050604051638d38cd4b60e01b815264ffffffffff8a16600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9250638d38cd4b9150602401602060405180830381865af415801561208e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120b291906146b4565b801561213a57506101c083015160405163790a38ad60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af4158015612116573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061213a91906146b4565b156110e3576110e388886113cd565b6000610a726028613b5e565b6000610a726046613b5e565b612169613524565b612172816116ac565b61217a61123a565b6001600160a01b0382166121a15760405163f17ef42d60e01b815260040160405180910390fd5b5060008051602061514583398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b60006121e2613eff565b60006121f66001546001600160a01b031690565b604051636939560f60e11b81523360048201526001600160a01b03919091169063d272ac1e90602401602060405180830381865afa15801561223c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122609190614973565b925061226c8385613c6b565b8092508193505050806001600160a01b031663e5f6cd276040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122b2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122d69190614454565b608083015160405163a166aa8960e01b81526001600160a01b03918216600482015291169063a166aa8990602401602060405180830381865afa158015612321573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061234591906146b4565b1561237457608082015160405163d53987e560e01b81526001600160a01b03909116600482015260240161063b565b9193909250565b60405163c4cade9d60e01b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063c4cade9d90604401602060405180830381865af41580156123de573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061240291906146b4565b9392505050565b60008060008051602061514583398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015612479573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061249d91906146b4565b156124c95780546040516301ab8b6760e21b81526001600160601b03909116600482015260240161063b565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa15801561251d573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061254191906146b4565b6125695760405163b9304b0d60e01b81526001600160a01b038416600482015260240161063b565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038581166004830152919091169063d272ac1e90602401602060405180830381865afa1580156125bd573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125e19190614973565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b604051630a4d29dd60e31b81526001600160601b038216600482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__906352694ee890602401602060405180830381865af4158015612665573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061268991906146b4565b156127025773__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156126d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906126fb9190614973565b9050612402565b60006127166001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03861660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015612765573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261278d9190810190614b38565b6020015190506000856001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156127d3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127f79190614454565b60405163bd7d9d8560e01b81526001600160601b03871660048201526001600160a01b03919091169063bd7d9d8590602401600060405180830381865afa158015612846573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261286e91908101906144fe565b6007546060820151608083015160e084015161010085015160208601516040808801519051637a5ff29d60e11b81529798506000976001600160a01b039097169663f4bfe53a966128cb968c969195909491939092600401614c0a565b6101e060405180830381865afa1580156128e9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061290d9190614c72565b60405163046e44af60e11b81526001600160601b038716600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af4158015612968573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061298c9190614b1f565b816040015114612a4b57858573__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd9684604001516040518263ffffffff1660e01b81526004016129d591815260200190565b602060405180830381865af41580156129f2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a169190614973565b6040516338b9ad1b60e11b81526001600160601b0393841660048201529183166024830152909116604482015260640161063b565b6000612a5f6001546001600160a01b031690565b604051631c5da14d60e11b81526001600160601b03891660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015612aae573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ad29190614454565b90506000886001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015612b14573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612b389190614454565b60405163242bdc1960e21b81526001600160601b03871660048201526001600160a01b0391909116906390af70649060240161014060405180830381865afa158015612b88573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612bac9190614d7b565b90506000816020015190508360400151816001600160a01b03166321df0da76040518163ffffffff1660e01b8152600401602060405180830381865afa158015612bfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c1e9190614454565b604051636eb1769f60e11b81526001600160a01b0386811660048301528481166024830152919091169063dd62ed3e90604401602060405180830381865afa158015612c6e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612c929190614b1f565b1015612cd1576040808501519051636d675c4360e01b81526001600160a01b03808616600483015283166024820152604481019190915260640161063b565b600073__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd968660e001518760600151612d019190614e39565b6040518263ffffffff1660e01b8152600401612d1f91815260200190565b602060405180830381865af4158015612d3c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612d609190614973565b9050600073__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd96876101c001518861014001518960c00151612d999190614e39565b612da39190614e4c565b6040518263ffffffff1660e01b8152600401612dc191815260200190565b602060405180830381865af4158015612dde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612e029190614973565b905060008661010001518760800151612e1b9190614e39565b905060008761012001518860a00151612e349190614e39565b9050600073__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd9683858c60000151612e639190614e39565b612e6d9190614e39565b6040518263ffffffff1660e01b8152600401612e8b91815260200190565b602060405180830381865af4158015612ea8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612ecc9190614973565b8951604051632620eecb60e11b815291925073__$3bac17678db7ae928afa209f2f44deec9c$__91634c41dd9691612f0a9160040190815260200190565b602060405180830381865af4158015612f27573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612f4b9190614973565b60e088015160405163c661667d60e01b8152919d50906001600160a01b0388169063c661667d90612f84908c9085908b90600401614e5f565b600060405180830381600087803b158015612f9e57600080fd5b505af1158015612fb2573d6000803e3d6000fd5b505050505060008f6001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015612ff7573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061301b9190614454565b6040808a01519051639ad69c6760e01b81526001600160601b0390911660048201526001600160a01b039190911690639ad69c679060240161010060405180830381865afa158015613071573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906130959190614e8b565b608081015160405163c661667d60e01b8152919250906001600160a01b0389169063c661667d906130ce908d9085908b90600401614e5f565b600060405180830381600087803b1580156130e857600080fd5b505af11580156130fc573d6000803e3d6000fd5b50505050600560009054906101000a90046001600160a01b03166001600160a01b03166392e5fab68a604001518e604001518e8a6040518563ffffffff1660e01b815260040161314f9493929190614fc4565b600060405180830381600087803b15801561316957600080fd5b505af115801561317d573d6000803e3d6000fd5b50505050505060008f6001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131c3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906131e79190614454565b606089015160405163f0ea17c360e01b81526001600160601b0390911660048201526001600160a01b03919091169063f0ea17c390602401600060405180830381865afa15801561323c573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526132649190810190615007565b6060015160405163c661667d60e01b81529091506001600160a01b0388169063c661667d9061329b908c9085908790600401614e5f565b600060405180830381600087803b1580156132b557600080fd5b505af11580156132c9573d6000803e3d6000fd5b505060065460208e015160405163991cbfb360e01b81526001600160a01b03909216935063991cbfb39250613304918e9087906004016150ba565b600060405180830381600087803b15801561331e57600080fd5b505af1158015613332573d6000803e3d6000fd5b5050505050600061334c613346868461349c565b8761349c565b60405163046e44af60e11b81526001600160601b038216600482015290915073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af41580156133a7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906133cb9190614b1f565b8a6040015114613489578e73__$3bac17678db7ae928afa209f2f44deec9c$__634c41dd968c604001516040518263ffffffff1660e01b815260040161341391815260200190565b602060405180830381865af4158015613430573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906134549190614973565b6040516310c696cd60e31b81526001600160601b0392831660048201529082166024820152908216604482015260640161063b565b5050505050505050505050509392505050565b60405163274acb3560e01b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb35906044015b602060405180830381865af4158015613500573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124029190614973565b60008051602061518583398151915254600160401b900460ff1661355b57604051631afcd79f60e31b815260040160405180910390fd5b565b6101e5613524565b6000805160206151858339815191528054600160401b810460ff1615906001600160401b03166000811580156135985750825b90506000826001600160401b031660011480156135b45750303b155b9050811580156135c2575080155b156135e05760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561360a57845460ff60401b1916600160401b1785555b6000808780602001905181019061362191906150ec565b925050915061363182828b61198a565b600061363b6109ed565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af4158015613690573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906136b491906146dc565b90506136c86001546001600160a01b031690565b6001600160a01b031663d39e6043608c6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa15801561371e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137429190614454565b600680546001600160a01b0319166001600160a01b039283161790556001541663d39e604360dc6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa1580156137af573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906137d39190614454565b600380546001600160a01b0319166001600160a01b039283161790556001541663d39e604360d46040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015613840573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138649190614454565b600480546001600160a01b0319166001600160a01b039283161790556001541663d39e604360d26040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa1580156138d1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906138f59190614454565b600280546001600160a01b0319166001600160a01b039283161790556001541663d39e604360786040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015613962573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906139869190614454565b600580546001600160a01b0319166001600160a01b039283161790556001541663d39e604360e66040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa1580156139f3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613a179190614454565b600780546001600160a01b0319166001600160a01b0392909216919091179055613a4763735cb6bd60e11b61101b565b50505083156113c457845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020016113bb565b60008051602061516583398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b613af5613524565b61031181613d6f565b60006124028383670de0b6b3a7640000613d80565b6040516363cf551160e11b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063c79eaa22906044016134e3565b6000613b726001546001600160a01b031690565b6001600160a01b031663d39e604383613b896109ed565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af4158015613bde573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190613c0291906146dc565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015613c47573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112c69190614454565b613c73613eff565b6000613c876001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03861660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015613cd6573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613cfe9190810190614b38565b9150613d1582604001518460ff9081169116141590565b15613d5957608082015160408084015190516304081d4960e41b81526001600160a01b03909216600483015260ff808616602484015216604482015260640161063b565b613d668260200151613e6a565b90509250929050565b613d77613524565b61031181613a8c565b6000808060001985870985870292508281108382030391505080600003613dba57838281613db057613db061512e565b0492505050612402565b808411613e015760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b604482015260640161063b565b60008486880960026001871981018816978890046003810283188082028403028082028403028082028403028082028403028082028403029081029092039091026000889003889004909101858311909403939093029303949094049190911702949350505050565b6000613e7e6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015613ecd573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052613ef59190810190614b38565b6080015192915050565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b600060208284031215613f4f57600080fd5b81356001600160e01b03198116811461240257600080fd5b6001600160601b038116811461031157600080fd5b600060208284031215613f8e57600080fd5b813561240281613f67565b60005b83811015613fb4578181015183820152602001613f9c565b50506000910152565b60008151808452613fd5816020860160208601613f99565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a083015161405260c08401826001600160a01b03169052565b5060c083015160e080840152611d79610100840182613fbd565b801515811461031157600080fd5b64ffffffffff8116811461031157600080fd5b6000806000606084860312156140a257600080fd5b83356140ad81613f67565b925060208401356140bd8161406c565b915060408401356140cd8161407a565b809150509250925092565b6001600160a01b038116811461031157600080fd5b60ff8116811461031157600080fd5b634e487b7160e01b600052604160045260246000fd5b60405161022081016001600160401b0381118282101715614135576141356140fc565b60405290565b60405160e081016001600160401b0381118282101715614135576141356140fc565b6040516101e081016001600160401b0381118282101715614135576141356140fc565b60405161010081016001600160401b0381118282101715614135576141356140fc565b604051601f8201601f191681016001600160401b03811182821017156141cb576141cb6140fc565b604052919050565b60006001600160401b038211156141ec576141ec6140fc565b50601f01601f191660200190565b600082601f83011261420b57600080fd5b813561421e614219826141d3565b6141a3565b81815284602083860101111561423357600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c0878903121561426957600080fd5b8635614274816140d8565b9550602087013561428481613f67565b94506040870135614294816140ed565b935060608701356142a48161406c565b925060808701356142b4816140d8565b915060a08701356001600160401b038111156142cf57600080fd5b6142db89828a016141fa565b9150509295509295509295565b6000602082840312156142fa57600080fd5b81356001600160401b0381111561431057600080fd5b611d79848285016141fa565b60006020828403121561432e57600080fd5b8135612402816140d8565b6000806040838503121561434c57600080fd5b8235614357816140d8565b915060208301356001600160401b0381111561437257600080fd5b61437e858286016141fa565b9150509250929050565b6000806040838503121561439b57600080fd5b82356143a681613f67565b915060208301356143b68161407a565b809150509250929050565b6000806000606084860312156143d657600080fd5b83356143e1816140d8565b925060208401356143f1816140d8565b915060408401356140cd816140d8565b6000806040838503121561441457600080fd5b8235915060208301356143b681613f67565b6000806040838503121561443957600080fd5b8235614444816140d8565b915060208301356143b6816140d8565b60006020828403121561446657600080fd5b8151612402816140d8565b80516112c981613f67565b80516001600160c01b0319811681146112c957600080fd5b80516112c98161407a565b600082601f8301126144b057600080fd5b81516144be614219826141d3565b8181528460208386010111156144d357600080fd5b6144e4826020830160208701613f99565b949350505050565b805161ffff811681146112c957600080fd5b60006020828403121561451057600080fd5b81516001600160401b038082111561452757600080fd5b90830190610220828603121561453c57600080fd5b614544614112565b61454d83614471565b815261455b60208401614471565b602082015261456c6040840161447c565b604082015261457d6060840161447c565b606082015261458e60808401614471565b608082015261459f60a08401614471565b60a08201526145b060c08401614471565b60c08201526145c160e08401614494565b60e082015261010080840151838111156145da57600080fd5b6145e68882870161449f565b828401525050610120808401518381111561460057600080fd5b61460c8882870161449f565b82840152505061014091506146228284016144ec565b8282015261016091506146368284016144ec565b82820152610180915061464a828401614471565b828201526101a0915061465e828401614471565b828201526101c09150614672828401614494565b828201526101e09150614686828401614494565b82820152610200915061469a828401614494565b91810191909152949350505050565b80516112c98161406c565b6000602082840312156146c657600080fd5b81516124028161406c565b80516112c9816140ed565b6000602082840312156146ee57600080fd5b8151612402816140ed565b60006020828403121561470b57600080fd5b81516124028161407a565b80516001600160601b031682526000610220602083015161474260208601826001600160601b03169052565b50604083015161475e60408601826001600160c01b0319169052565b50606083015161477a60608601826001600160c01b0319169052565b50608083015161479560808601826001600160601b03169052565b5060a08301516147b060a08601826001600160601b03169052565b5060c08301516147cb60c08601826001600160601b03169052565b5060e08301516147e460e086018264ffffffffff169052565b506101008084015182828701526147fd83870182613fbd565b9250505061012080840151858303828701526148198382613fbd565b92505050610140808401516148338287018261ffff169052565b50506101608381015161ffff1690850152610180808401516001600160601b03908116918601919091526101a080850151909116908501526101c08084015164ffffffffff908116918601919091526101e080850151821690860152610200938401511692909301919091525090565b6001600160a01b03841681526001600160601b03831660208201526060604082018190526000906148d690830184614716565b95945050505050565b6001600160601b03841681526060602082015260006149016060830185614716565b905060ff83166040830152949350505050565b60006020828403121561492657600080fd5b815162ffffff8116811461240257600080fd5b600181811c9082168061494d57607f821691505b60208210810361496d57634e487b7160e01b600052602260045260246000fd5b50919050565b60006020828403121561498557600080fd5b815161240281613f67565b60018060a01b038616815260006001600160601b038087166020840152808616604084015260a060608401526149c960a0840186614716565b91508084166080840152509695505050505050565b601f821115611bbe57600081815260208120601f850160051c81016020861015614a055750805b601f850160051c820191505b81811015614a2457828155600101614a11565b505050505050565b81516001600160401b03811115614a4557614a456140fc565b614a5981614a538454614939565b846149de565b602080601f831160018114614a8e5760008415614a765750858301515b600019600386901b1c1916600185901b178555614a24565b600085815260208120601f198616915b82811015614abd57888601518255948401946001909101908401614a9e565b5085821015614adb5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215614afd57600080fd5b81516001600160401b038116811461240257600080fd5b80516112c9816140d8565b600060208284031215614b3157600080fd5b5051919050565b600060208284031215614b4a57600080fd5b81516001600160401b0380821115614b6157600080fd5b9083019060e08286031215614b7557600080fd5b614b7d61413b565b614b8683614471565b8152614b9460208401614471565b6020820152614ba5604084016146d1565b6040820152614bb6606084016146a9565b6060820152614bc760808401614b14565b6080820152614bd860a08401614b14565b60a082015260c083015182811115614bef57600080fd5b614bfb8782860161449f565b60c08301525095945050505050565b60006001600160601b03808a1683526001600160401b0360c01b808a166020850152818916604085015264ffffffffff8816606085015260e06080850152614c5560e0850188613fbd565b9590911660a08401529290921660c0909101525095945050505050565b60006101e08284031215614c8557600080fd5b614c8d61415d565b825181526020808401519082015260408084015190820152606080840151908201526080808401519082015260a0808401519082015260c0808401519082015260e08084015190820152610100808401519082015261012080840151908201526101408084015190820152610160808401519082015261018080840151908201526101a080840151908201526101c0928301519281019290925250919050565b600060408284031215614d3f57600080fd5b604051604081018181106001600160401b0382111715614d6157614d616140fc565b604052825181526020928301519281019290925250919050565b60006101408284031215614d8e57600080fd5b614d96614180565b614d9f83614b14565b8152614dad60208401614b14565b6020820152614dbe60408401614471565b6040820152614dcf60608401614471565b6060820152614de18460808501614d2d565b6080820152614df38460c08501614d2d565b60a0820152614e0561010084016146a9565b60c0820152614e176101208401614b14565b60e08201529392505050565b634e487b7160e01b600052601160045260246000fd5b80820180821115611d7d57611d7d614e23565b81810381811115611d7d57611d7d614e23565b6001600160a01b0393841681529190921660208201526001600160601b03909116604082015260600190565b60006101008284031215614e9e57600080fd5b60405160c081018181106001600160401b0382111715614ec057614ec06140fc565b6040528251614ece81613f67565b81526020830151614ede816140d8565b6020820152614ef08460408501614d2d565b6040820152614f028460808501614d2d565b606082015260c0830151614f15816140d8565b608082015260e0929092015160a083015250919050565b805182526020808201519083015260408082015190830152606080820151908301526080808201519083015260a0808201519083015260c0808201519083015260e08082015190830152610100808201519083015261012080820151908301526101408082015190830152610160808201519083015261018080820151908301526101a080820151908301526101c090810151910152565b6001600160601b0385811682526001600160c01b031985166020830152610240820190614ff46040840186614f2c565b8084166102208401525095945050505050565b60006020828403121561501957600080fd5b81516001600160401b038082111561503057600080fd5b9083019060e0828603121561504457600080fd5b61504c61413b565b82518281111561505b57600080fd5b6150678782860161449f565b82525061507660208401614b14565b602082015261508760408401614b14565b604082015261509860608401614b14565b60608201526150a960808401614471565b6080820152614bd860a08401614471565b6001600160601b0384811682526102208201906150da6020840186614f2c565b80841661020084015250949350505050565b60008060006060848603121561510157600080fd5b835161510c816140d8565b602085015190935061511d816140d8565b60408501519092506140cd816140d8565b634e487b7160e01b600052601260045260246000fdfe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220062f4087604a82a62b5724481ecd9cb73720884c6c43d1306410bb00f480a35364736f6c63430008140033",
|
862
|
+
"bytecode": "0x6080604052348015600e575f80fd5b5060156019565b60c9565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff161560685760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b039081161460c65780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b615582806100d65f395ff3fe608060405234801561000f575f80fd5b506004361061013d575f3560e01c80636c741e78116100b45780639ffcede9116100795780639ffcede91461031d578063aa5ae5aa14610330578063ada9652e14610343578063b68d180914610357578063bbfbbfba14610366578063bf7e214f14610379575f80fd5b80636c741e78146102985780637a9e5e4b146102b85780637baa9a0b146102cb578063893d20e8146102f45780638fb36037146102fc575f80fd5b80631eff4b22116101055780631eff4b22146101e8578063329d6e741461021d57806349bb9e4b146102305780634d5e16a9146102435780635ab1bd5314610256578063644c45e01461027b575f80fd5b806301ffc9a7146101415780630aaba8e8146101825780630d8e6e2c146101975780630fec111c146101b3578063138461e0146101c8575b5f80fd5b61016d61014f366004614389565b6001600160e01b0319165f9081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b6101956101903660046143c4565b610396565b005b61019f61095e565b60405162ffffff9091168152602001610179565b6101bb6109e5565b604051610179919061440d565b6101d0610b71565b6040516001600160601b039091168152602001610179565b61020f7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610179565b61019561022b366004614610565b610b7b565b61019561023e366004614655565b610cc5565b6101956102513660046146b3565b610dc1565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610179565b5f805160206154ed833981519152546001600160601b03166101d0565b6102a0610f2d565b6040516001600160401b039091168152602001610179565b6101956102c63660046146ea565b611023565b6102de6102d93660046146b3565b6110bf565b60405164ffffffffff9091168152602001610179565b610263611635565b610304611766565b6040516001600160e01b03199091168152602001610179565b61019561032b3660046143c4565b61179b565b61019561033e3660046146b3565b611a8b565b61020f5f805160206154ed83398151915281565b60405160158152602001610179565b6101956103743660046146b3565b61207b565b5f8051602061550d833981519152546001600160a01b0316610263565b5f6103a1600c612558565b925050505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104069190614705565b60405163bd7d9d8560e01b81526001600160601b03851660048201529091505f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015610455573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261047c91908101906147b2565b604051639096a1f360e01b81526001600160601b03861660048201529091505f906001600160a01b03841690639096a1f390602401602060405180830381865afa1580156104cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f0919061495e565b90506104fc81836125f4565b6105325760405163536eb56160e11b81526001600160601b038616600482015260ff821660248201526044015b60405180910390fd5b6101e0820151604051638d38cd4b60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__90638d38cd4b90602401602060405180830381865af415801561058d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105b19190614988565b156105da5760405163bdcc947d60e01b81526001600160601b0386166004820152602401610529565b61014082015161ffff161561061e57610140820151604051637459ec8b60e11b81526001600160601b038716600482015261ffff9091166024820152604401610529565b6040516309c5844f60e01b81526001600160601b03861660048201526001600160a01b038416906309c5844f90602401602060405180830381865afa158015610669573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061068d919061495e565b60408051632c2f8a6760e01b815260ff909216600483015260dc60248301525173__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__91632c2f8a679160448083019260209291908290030181865af41580156106eb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070f9190614988565b6107455760a0820151604051635567446960e11b81526001600160601b0380881660048301529091166024820152604401610529565b600754825160405163f0ea17c360e01b81526001600160601b0390911660048201526001600160a01b03918216916332f9f3df91879187169063f0ea17c3906024015f60405180830381865afa1580156107a1573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107c891908101906149ac565b6040015188866040518563ffffffff1660e01b81526004016107ed9493929190614c2f565b5f604051808303815f87803b158015610804575f80fd5b505af1158015610816573d5f803e3d5ffd5b5050505073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015610861573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108859190614c73565b64ffffffffff166101e083015260408051631a99b41b60e31b815290516001600160a01b0386169163d4cda0d89160048083019260209291908290030181865afa1580156108d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f99190614705565b6001600160a01b031663425d08e2868460c85b6040518463ffffffff1660e01b815260040161092a93929190614c8e565b5f604051808303815f87803b158015610941575f80fd5b505af1158015610953573d5f803e3d5ffd5b505050505050505050565b604051632efe011360e01b8152600360048201525f60248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af41580156109bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e09190614cc2565b905090565b6109ed61434c565b5f7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e0016040528073__$94a2c899be079b00d952d0d84fffaa5c34$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610a63573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a879190614ce4565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a001610acf611635565b6001600160a01b03168152602001826001018054610aec90614cff565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1890614cff565b8015610b635780601f10610b3a57610100808354040283529160200191610b63565b820191905f5260205f20905b815481529060010190602001808311610b4657829003601f168201915b505050505081525091505090565b5f6109e0306126a5565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c610b9d61095e565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610bdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bff9190614d4b565b5f8051602061552d8339815191528054600160401b900460ff1680610c31575080546001600160401b03808416911610155b15610c4f5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610c798361289e565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b5f8051602061552d8339815191528054600160401b810460ff1615906001600160401b03165f81158015610cf65750825b90505f826001600160401b03166001148015610d115750303b155b905081158015610d1f575080155b15610d3d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d6757845460ff60401b1916600160401b1785555b610d7187876128a6565b8315610db857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b50505050505050565b5f610dcc600c612558565b925050505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e0d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e319190614705565b60405163bd7d9d8560e01b81526001600160601b03861660048201529091505f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015610e80573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ea791908101906147b2565b9050610eb4858286612e7f565b9050826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ef2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f169190614705565b6001600160a01b031663425d08e2868360ff61090c565b5f73__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d36015604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015610f98573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbc919061495e565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865af4158015610fff573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e09190614d4b565b336110425f8051602061550d833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b03161461107d5760405162d1953b60e31b81526001600160a01b0382166004820152602401610529565b816001600160a01b03163b5f036110b2576040516361798f2f60e11b81526001600160a01b0383166004820152602401610529565b6110bb82613087565b5050565b5f80806110cc600c612558565b92505091505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801561110e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111329190614705565b60405163bd7d9d8560e01b81526001600160601b03881660048201529091505f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015611181573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526111a891908101906147b2565b90506111b7815f0151856130e7565b156111f3578051604051631a06208360e01b81526001600160601b03808a16600483015291821660248201529085166044820152606401610529565b604051639096a1f360e01b81526001600160601b03881660048201525f906001600160a01b03841690639096a1f390602401602060405180830381865afa158015611240573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611264919061495e565b905061127081836125f4565b6112a15760405163536eb56160e11b81526001600160601b038916600482015260ff82166024820152604401610529565b60405163790a38ad60e01b815264ffffffffff8816600482015287965073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af41580156112f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061131c9190614988565b1561138f5773__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611368573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138c9190614c73565b95505b6101c082015164ffffffffff908116908716106113e6576101c08201516040516372f7b9bd60e11b81526001600160601b038a16600482015264ffffffffff91821660248201529088166044820152606401610529565b6114648673__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611431573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114559190614c73565b64ffffffffff90811691161090565b1561150f578773__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af41580156114b1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114d59190614c73565b604051631c66624d60e01b81526001600160601b03909216600483015264ffffffffff908116602483015288166044820152606401610529565b64ffffffffff86166101c083015260408051631a99b41b60e31b815290516001600160a01b0386169163d4cda0d89160048083019260209291908290030181865afa158015611560573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115849190614705565b6001600160a01b031663425d08e2898460ff6040518463ffffffff1660e01b81526004016115b493929190614c8e565b5f604051808303815f87803b1580156115cb575f80fd5b505af11580156115dd573d5f803e3d5ffd5b5050604080516001600160601b038c16815264ffffffffff8a1660208201527f78c7b2401beaecd3c89e9a37210cba72e9f33e125194b23cb6c42a6d07c4fe14935001905060405180910390a1505050505092915050565b5f805f805160206154ed83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156116a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116c59190614988565b15611750576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015611726573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061174a9190614705565b91505090565b54600160601b90046001600160a01b0316919050565b5f8051602061550d83398151915280545f9190600160a01b900460ff1661178d575f61174a565b638fb3603760e01b91505090565b5f806117a7600c612558565b92505091505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061180d9190614705565b604051639096a1f360e01b81526001600160601b0386166004820152909150611893906001600160a01b03831690639096a1f3906024015b602060405180830381865afa158015611860573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611884919061495e565b600a5b60ff9081169116141590565b156118bc57604051631130ddad60e21b81526001600160601b0385166004820152602401610529565b60405163bd7d9d8560e01b81526001600160601b03851660048201525f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015611908573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261192f91908101906147b2565b905061193e815f0151856130e7565b1561197a578051604051631a06208360e01b81526001600160601b03808816600483015291821660248201529085166044820152606401610529565b826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119da9190614705565b6001600160a01b0316635d4345cc86601e6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff1660248201526044015f604051808303815f87803b158015611a31575f80fd5b505af1158015611a43573d5f803e3d5ffd5b50506040516001600160601b03881681527fa9d1c49a019bf7dc62cfada9540cd302c4fc54f6ed05d99b581074ed70441fae9250602001905060405180910390a15050505050565b5f80611a97600c612558565b92505091505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ad9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611afd9190614705565b604051639096a1f360e01b81526001600160601b0387166004820152909150611b39906001600160a01b03831690639096a1f390602401611845565b15611b6257604051631130ddad60e21b81526001600160601b0386166004820152602401610529565b60405163bd7d9d8560e01b81526001600160601b03861660048201525f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015611bae573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611bd591908101906147b2565b9050611be4815f0151856130e7565b15611c20578051604051631a06208360e01b81526001600160601b03808916600483015291821660248201529085166044820152606401610529565b60075460405163f0ea17c360e01b81526001600160601b03861660048201526001600160a01b03918216916384d1f7cf91869186169063f0ea17c3906024015f60405180830381865afa158015611c79573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611ca091908101906149ac565b6040908101516020860151608087015192516001600160e01b031960e087901b1681526001600160a01b0394851660048201529390911660248401526001600160601b03808a166044850152808c16606485015290811660848401521660a482015260c40160408051808303815f875af1158015611d20573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d449190614d66565b5050611d6085611d515f90565b64ffffffffff90811691161190565b15611d7357611d70868287612e7f565b90505b826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611daf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd39190614705565b6001600160a01b031663425d08e2878360286040518463ffffffff1660e01b8152600401611e0393929190614c8e565b5f604051808303815f87803b158015611e1a575f80fd5b505af1158015611e2c573d5f803e3d5ffd5b50506008546060840151608085015160c086015160e087015160208801516040808a01519051637a5ff29d60e11b81525f99506001600160a01b03909716975063f4bfe53a96611e8a968e9690959094909390929091600401614d93565b61024060405180830381865afa158015611ea6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611eca9190614e10565b9050836001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f08573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f2c9190614705565b6001600160a01b0316634d4a7ae988836040518363ffffffff1660e01b8152600401611f5992919061515d565b5f604051808303815f87803b158015611f70575f80fd5b505af1158015611f82573d5f803e3d5ffd5b50506040516302d764c760e21b81526001600160601b03881660048201525f92506001600160a01b0386169150630b5d931c9060240161020060405180830381865afa158015611fd4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ff891906151c7565b6006548151604086810151905163038f0f2560e11b81526001600160601b0390921660048301526001600160c01b03191660248201529192506001600160a01b03169063071e1e4a906044015f604051808303815f87803b15801561205b575f80fd5b505af115801561206d573d5f803e3d5ffd5b505050505050505050505050565b5f612086600c612558565b925050505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120eb9190614705565b604051639096a1f360e01b81526001600160601b03861660048201529091505f906001600160a01b03831690639096a1f390602401602060405180830381865afa15801561213b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061215f919061495e565b90506121738160285b60ff90811691161490565b61219b5760405163904913a960e01b81526001600160601b0386166004820152602401610529565b6040516309c5844f60e01b81526001600160601b0386166004820152612215906001600160a01b038416906309c5844f90602401602060405180830381865afa1580156121ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061220e919061495e565b60dc612168565b1561223e57604051635b7a826360e01b81526001600160601b0386166004820152602401610529565b60405163bd7d9d8560e01b81526001600160601b03861660048201525f906001600160a01b0384169063bd7d9d85906024015f60405180830381865afa15801561228a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526122b191908101906147b2565b60405163e444c3df60e01b81526001600160601b03881660048201529091505f906001600160a01b0385169063e444c3df9060240161024060405180830381865afa158015612302573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123269190614e10565b90506123348588848461316b565b604051638d38cd4b60e01b815264ffffffffff8716600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__90638d38cd4b90602401602060405180830381865af4158015612388573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123ac9190614988565b156123bf576123bc878388612e7f565b91505b846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241f9190614705565b6001600160a01b031663425d08e2888460ff6040518463ffffffff1660e01b815260040161244f93929190614c8e565b5f604051808303815f87803b158015612466575f80fd5b505af1158015612478573d5f803e3d5ffd5b50505050846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124dc9190614705565b6001600160a01b0316632ae5819d8860dc6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff1660248201526044015f604051808303815f87803b158015612533575f80fd5b505af1158015612545573d5f803e3d5ffd5b50505050610db88488845f015184613356565b5f61256161434c565b5f6125746001546001600160a01b031690565b604051632f2a35f760e11b81523360048201526001600160a01b039190911690635e546bee90602401602060405180830381865afa1580156125b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125dc9190614ce4565b92506125ea838560016134a4565b9395909450915050565b5f612600836028611887565b1561260c57505f61269f565b61268f73__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612656573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267a9190614c73565b836101a0015164ffffffffff90811691161090565b1561269b57505f61269f565b5060015b92915050565b5f805f805160206154ed83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015612711573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127359190614988565b156127615780546040516301ab8b6760e21b81526001600160601b039091166004820152602401610529565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa1580156127b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127d79190614988565b6127ff5760405163b9304b0d60e01b81526001600160a01b0384166004820152602401610529565b6001546001600160a01b0316604051632f2a35f760e11b81526001600160a01b0385811660048301529190911690635e546bee90602401602060405180830381865afa158015612851573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128759190614ce4565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b61013d61373b565b5f8051602061552d8339815191528054600160401b810460ff1615906001600160401b03165f811580156128d75750825b90505f826001600160401b031660011480156128f25750303b155b905081158015612900575080155b1561291e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561294857845460ff60401b1916600160401b1785555b5f808780602001905181019061295e9190615288565b925050915061296e82828b613773565b5f61297761095e565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af41580156129ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ee919061495e565b9050612a026001546001600160a01b031690565b6001600160a01b031663d39e604360146040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612a56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a7a9190614705565b600280546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043601f6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612aee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b129190614705565b600480546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043600b6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612b86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612baa9190614705565b600380546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e604360176040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612c1e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c429190614705565b600580546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043600f6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612cb6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612cda9190614705565b600780546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043600e6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612d4e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d729190614705565b600680546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043601a6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612de6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e0a9190614705565b600880546001600160a01b0319166001600160a01b0392909216919091179055612e3a63b20293b360e01b6138b0565b5050508315610db857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602001610daf565b60408051610200810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e0820181905261010082015261012081018290526101408101829052610160810182905261018081018290526101a081018290526101c081018290526101e08101919091526101a083015160405163790a38ad60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af4158015612f59573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f7d9190614988565b158015612f9957506101a083015164ffffffffff808416911614155b15612fc25760405163f95747d360e01b81526001600160601b0385166004820152602401610529565b6101a083015164ffffffffff838116911603612fdf575081613080565b64ffffffffff8281166101a0850181905260c08501516040516352bcc5a760e11b81526004810192909252909116602482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af415801561304c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130709190614c73565b64ffffffffff166101c084015250815b9392505050565b5f8051602061550d83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b6040516399009c5160e01b81526001600160601b038084166004830152821660248201525f9073__$94a2c899be079b00d952d0d84fffaa5c34$__906399009c5190604401602060405180830381865af4158015613147573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130809190614988565b5f825f015190505f856001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131d39190614705565b90505f6131e082846138dc565b90505f6131f56001546001600160a01b031690565b604051631c5da14d60e11b81526001600160601b03891660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015613242573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906132669190614705565b90506132d7826001600160a01b03166321df0da76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156132a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906132cb9190614705565b83838860a0015161395a565b505061334e81876001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015613319573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061333d9190614705565b848760200151886040015188613b36565b505050505050565b5f61336185846138dc565b90505f6133766001546001600160a01b031690565b604051631c5da14d60e11b81526001600160601b03871660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa1580156133c3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133e79190614705565b90505f805f6133f68988613cb1565b895160208b01516040808d015190516321711b5760e21b81526001600160a01b038c8116600483015280861660248301526001600160601b0394851660448301528088166064830152928416608482015282861660a4820152921660c4830152939750919550935090871691506385c46d5c9060e4015f604051808303815f87803b158015613483575f80fd5b505af1158015613495573d5f803e3d5ffd5b50505050505050505050505050565b6134ac61434c565b5f806134c06001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03881660048201529091506001600160a01b0382169063a48f42e0906024015f60405180830381865afa15801561350d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261353491908101906152d2565b925061354185600b611887565b1561359757604083015160ff86811691161461359257604080840151905163b83d92cb60e01b81526001600160601b038816600482015260ff80881660248301529091166044820152606401610529565b613628565b6135a78360400151612168600c90565b806135bd57506135bd8360400151612168600f90565b806135d357506135d38360400151612168600e90565b806135e957506135e98360400151612168600d90565b61362857604080840151905163b83d92cb60e01b81526001600160601b038816600482015260ff80881660248301529091166044820152606401610529565b6136358360200151613eaa565b9150831561373257816001600160a01b031663311adb686040518163ffffffff1660e01b8152600401602060405180830381865afa158015613679573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061369d9190614705565b6080840151604051629b7b3560e61b81526001600160a01b0391821660048201529116906326decd4090602401602060405180830381865afa1580156136e5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137099190614988565b1561373257604051637d71120960e11b81526001600160601b0387166004820152602401610529565b50935093915050565b5f8051602061552d83398151915254600160401b900460ff1661377157604051631afcd79f60e31b815260040160405180910390fd5b565b61377b61373b565b6137f783846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137df9190614ce4565b60085f8560405180602001604052805f815250613f3a565b6001600160a01b038216156138145761380f82613fdf565b61388b565b5f61381f6002613ff3565b9050613889816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613860573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138849190614705565b613fdf565b505b61389b634a531f3360e01b6138b0565b6138ab63daf9067160e01b6138b0565b505050565b6138b861373b565b6001600160e01b0319165f908152602081905260409020805460ff19166001179055565b60405163f0ea17c360e01b81526001600160601b03821660048201525f906001600160a01b0384169063f0ea17c3906024015f60405180830381865afa158015613928573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261394f91908101906149ac565b606001519392505050565b60405163046e44af60e11b81526001600160601b03821660048201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af41580156139b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139d691906153a2565b6040516370a0823160e01b81526001600160a01b0385811660048301529192505f918716906370a0823190602401602060405180830381865afa158015613a1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a4391906153a2565b604051636eb1769f60e11b81526001600160a01b03868116600483015287811660248301529192505f9188169063dd62ed3e90604401602060405180830381865afa158015613a94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ab891906153a2565b905082821015613af45760405163503edf3960e11b81526001600160a01b03861660048201526024810184905260448101839052606401610529565b82811015610db857604051630afa3e2d60e11b81526001600160a01b038087166004830152871660248201526044810184905260648101829052608401610529565b5f613b418786613cb1565b505050905060035f9054906101000a90046001600160a01b03166001600160a01b03166367438c508787613b7e8661014001518760c001516140f4565b6040516001600160e01b031960e086901b1681526001600160a01b0390931660048401526001600160601b0391821660248401521660448201526064015f604051808303815f87803b158015613bd2575f80fd5b505af1158015613be4573d5f803e3d5ffd5b5050600654604051633ca8687160e11b81526001600160a01b039091169250637950d0e29150613c1c908490879087906004016153b9565b5f604051808303815f87803b158015613c33575f80fd5b505af1158015613c45573d5f803e3d5ffd5b505060075460405163fb3bcd1f60e01b81526001600160a01b03909116925063fb3bcd1f9150613c7b908790869060040161515d565b5f604051808303815f87803b158015613c92575f80fd5b505af1158015613ca4573d5f803e3d5ffd5b5050505050505050505050565b6040516302d764c760e21b81526001600160601b03821660048201525f9081908190819081906001600160a01b03881690630b5d931c9060240161020060405180830381865afa158015613d07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d2b91906151c7565b805160405163f0ea17c360e01b81526001600160601b03821660048201529096509091506001600160a01b0388169063f0ea17c3906024015f60405180830381865afa158015613d7d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613da491908101906149ac565b60800151602082015160405163f0ea17c360e01b81526001600160601b0390911660048201529094506001600160a01b0388169063f0ea17c3906024015f60405180830381865afa158015613dfb573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613e2291908101906149ac565b6080015160405163f0ea17c360e01b81526001600160601b03881660048201529093506001600160a01b0388169063f0ea17c3906024015f60405180830381865afa158015613e73573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613e9a91908101906149ac565b6080015191505092959194509250565b5f613ebd6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e0906024015f60405180830381865afa158015613f09573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613f3091908101906152d2565b6080015192915050565b613f4261373b565b613f4c8287614178565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa301613fd58382615432565b5050505050505050565b613fe761373b565b613ff0816141ee565b50565b5f6140066001546001600160a01b031690565b604051632392b61b60e21b8152600360048201526001600160a01b03919091169063d39e604390849073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015614069573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061408d919061495e565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156140d0573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061269f9190614705565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb3590604401602060405180830381865af4158015614154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130809190614ce4565b61418061373b565b614189816141ff565b614191614307565b6001600160a01b0382166141b85760405163f17ef42d60e01b815260040160405180910390fd5b505f805160206154ed83398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b6141f661373b565b613ff081613087565b61420761373b565b806001600160a01b03163b5f0361423c5760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610529565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b8152632f6da6f960e01b60048201526301ffc9a790602401602060405180830381865afa9250505080156142b6575060408051601f3d908101601f191682019092526142b391810190614988565b60015b6142de5760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610529565b806110bb5760405163fdeac91f60e01b81526001600160a01b0383166004820152602401610529565b61430f61373b565b6301ffc9a760e01b5f9081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b6040805160e0810182525f8082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b5f60208284031215614399575f80fd5b81356001600160e01b031981168114613080575f80fd5b6001600160601b0381168114613ff0575f80fd5b5f602082840312156143d4575f80fd5b8135613080816143b0565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081526001600160601b0382511660208201526001600160601b03602083015116604082015260ff60408301511660608201525f6060830151614455608084018215159052565b5060808301516001600160a01b03811660a08401525060a08301516001600160a01b03811660c08401525060c083015160e0808401526144996101008401826143df565b949350505050565b634e487b7160e01b5f52604160045260245ffd5b60405161020081016001600160401b03811182821017156144d8576144d86144a1565b60405290565b60405160c081016001600160401b03811182821017156144d8576144d86144a1565b60405161024081016001600160401b03811182821017156144d8576144d86144a1565b60405161012081016001600160401b03811182821017156144d8576144d86144a1565b60405160e081016001600160401b03811182821017156144d8576144d86144a1565b604051601f8201601f191681016001600160401b0381118282101715614590576145906144a1565b604052919050565b5f6001600160401b038211156145b0576145b06144a1565b50601f01601f191660200190565b5f82601f8301126145cd575f80fd5b81356145e06145db82614598565b614568565b8181528460208386010111156145f4575f80fd5b816020850160208301375f918101602001919091529392505050565b5f60208284031215614620575f80fd5b81356001600160401b03811115614635575f80fd5b614499848285016145be565b6001600160a01b0381168114613ff0575f80fd5b5f8060408385031215614666575f80fd5b823561467181614641565b915060208301356001600160401b0381111561468b575f80fd5b614697858286016145be565b9150509250929050565b64ffffffffff81168114613ff0575f80fd5b5f80604083850312156146c4575f80fd5b82356146cf816143b0565b915060208301356146df816146a1565b809150509250929050565b5f602082840312156146fa575f80fd5b813561308081614641565b5f60208284031215614715575f80fd5b815161308081614641565b805161472b816143b0565b919050565b80516001600160c01b03198116811461472b575f80fd5b805161472b816146a1565b5f82601f830112614761575f80fd5b8151602083015f6147746145db84614598565b9050828152858383011115614787575f80fd5b8282602083015e5f92810160200192909252509392505050565b805161ffff8116811461472b575f80fd5b5f602082840312156147c2575f80fd5b81516001600160401b038111156147d7575f80fd5b820161020081850312156147e9575f80fd5b6147f16144b5565b6147fa82614720565b815261480860208301614720565b602082015261481960408301614730565b604082015261482a60608301614730565b606082015261483b60808301614720565b608082015261484c60a08301614720565b60a082015261485d60c08301614747565b60c082015260e08201516001600160401b0381111561487a575f80fd5b61488686828501614752565b60e0830152506101008201516001600160401b038111156148a5575f80fd5b6148b186828501614752565b610100830152506148c561012083016147a1565b6101208201526148d861014083016147a1565b6101408201526148eb6101608301614720565b6101608201526148fe6101808301614720565b6101808201526149116101a08301614747565b6101a08201526149246101c08301614747565b6101c08201526149376101e08301614747565b6101e0820152949350505050565b60ff81168114613ff0575f80fd5b805161472b81614945565b5f6020828403121561496e575f80fd5b815161308081614945565b8051801515811461472b575f80fd5b5f60208284031215614998575f80fd5b61308082614979565b805161472b81614641565b5f602082840312156149bc575f80fd5b81516001600160401b038111156149d1575f80fd5b820160c081850312156149e2575f80fd5b6149ea6144de565b81516001600160401b038111156149ff575f80fd5b614a0b86828501614752565b825250614a1a60208301614720565b6020820152614a2b604083016149a1565b6040820152614a3c606083016149a1565b6060820152614a4d608083016149a1565b608082015260a08201516001600160401b03811115614a6a575f80fd5b614a7686828501614752565b60a083015250949350505050565b80516001600160601b031682525f6020820151614aac60208501826001600160601b03169052565b506040820151614ac860408501826001600160c01b0319169052565b506060820151614ae460608501826001600160c01b0319169052565b506080820151614aff60808501826001600160601b03169052565b5060a0820151614b1a60a08501826001600160601b03169052565b5060c0820151614b3360c085018264ffffffffff169052565b5060e082015161020060e0850152614b4f6102008501826143df565b9050610100830151848203610100860152614b6a82826143df565b915050610120830151614b8461012086018261ffff169052565b50610140830151614b9c61014086018261ffff169052565b50610160830151614bb96101608601826001600160601b03169052565b50610180830151614bd66101808601826001600160601b03169052565b506101a0830151614bf16101a086018264ffffffffff169052565b506101c0830151614c0c6101c086018264ffffffffff169052565b506101e0830151614c276101e086018264ffffffffff169052565b509392505050565b6001600160a01b038581168252841660208201526001600160601b03831660408201526080606082018190525f90614c6990830184614a84565b9695505050505050565b5f60208284031215614c83575f80fd5b8151613080816146a1565b6001600160601b0384168152606060208201525f614caf6060830185614a84565b905060ff83166040830152949350505050565b5f60208284031215614cd2575f80fd5b815162ffffff81168114613080575f80fd5b5f60208284031215614cf4575f80fd5b8151613080816143b0565b600181811c90821680614d1357607f821691505b602082108103614d3157634e487b7160e01b5f52602260045260245ffd5b50919050565b6001600160401b0381168114613ff0575f80fd5b5f60208284031215614d5b575f80fd5b815161308081614d37565b5f8060408385031215614d77575f80fd5b8251614d82816143b0565b60208401519092506146df816143b0565b6001600160601b03881681526001600160401b0360c01b871660208201526001600160601b038616604082015264ffffffffff8516606082015260e060808201525f614de260e08301866143df565b6001600160601b039490941660a0830152506001600160c01b03199190911660c09091015295945050505050565b5f610240828403128015614e22575f80fd5b50614e2b614500565b614e3483614720565b8152614e4260208401614720565b6020820152614e5360408401614720565b6040820152614e6460608401614720565b6060820152614e7560808401614720565b6080820152614e8660a08401614720565b60a0820152614e9760c08401614720565b60c0820152614ea860e08401614720565b60e0820152614eba6101008401614720565b610100820152614ecd6101208401614720565b610120820152614ee06101408401614720565b610140820152614ef36101608401614720565b610160820152614f066101808401614720565b610180820152614f196101a08401614720565b6101a0820152614f2c6101c08401614720565b6101c0820152614f3f6101e08401614720565b6101e0820152614f526102008401614720565b610200820152614f656102208401614720565b6102208201529392505050565b80516001600160601b031682526020810151614f9960208401826001600160601b03169052565b506040810151614fb460408401826001600160601b03169052565b506060810151614fcf60608401826001600160601b03169052565b506080810151614fea60808401826001600160601b03169052565b5060a081015161500560a08401826001600160601b03169052565b5060c081015161502060c08401826001600160601b03169052565b5060e081015161503b60e08401826001600160601b03169052565b506101008101516150586101008401826001600160601b03169052565b506101208101516150756101208401826001600160601b03169052565b506101408101516150926101408401826001600160601b03169052565b506101608101516150af6101608401826001600160601b03169052565b506101808101516150cc6101808401826001600160601b03169052565b506101a08101516150e96101a08401826001600160601b03169052565b506101c08101516151066101c08401826001600160601b03169052565b506101e08101516151236101e08401826001600160601b03169052565b506102008101516151406102008401826001600160601b03169052565b506102208101516138ab6102208401826001600160601b03169052565b6001600160601b038316815261026081016130806020830184614f72565b5f6040828403121561518b575f80fd5b604080519081016001600160401b03811182821017156151ad576151ad6144a1565b604052825181526020928301519281019290925250919050565b5f6102008284031280156151d9575f80fd5b506151e2614523565b6151eb83614720565b81526151f960208401614720565b602082015261520b846040850161517b565b604082015261521d846080850161517b565b606082015261522f8460c0850161517b565b608082015261524284610100850161517b565b60a082015261525584610140850161517b565b60c082015261526884610180850161517b565b60e082015261527b846101c0850161517b565b6101008201529392505050565b5f805f6060848603121561529a575f80fd5b83516152a581614641565b60208501519093506152b681614641565b60408501519092506152c781614641565b809150509250925092565b5f602082840312156152e2575f80fd5b81516001600160401b038111156152f7575f80fd5b820160e08185031215615308575f80fd5b615310614546565b61531982614720565b815261532760208301614720565b602082015261533860408301614953565b604082015261534960608301614979565b606082015261535a608083016149a1565b608082015261536b60a083016149a1565b60a082015260c08201516001600160401b03811115615388575f80fd5b61539486828501614752565b60c083015250949350505050565b5f602082840312156153b2575f80fd5b5051919050565b6001600160601b03841681526001600160c01b03198316602082015261028081016144996040830184614f72565b601f8211156138ab57805f5260205f20601f840160051c8101602085101561540c5750805b601f840160051c820191505b8181101561542b575f8155600101615418565b5050505050565b81516001600160401b0381111561544b5761544b6144a1565b61545f816154598454614cff565b846153e7565b6020601f821160018114615491575f831561547a5750848201515b5f19600385901b1c1916600184901b17845561542b565b5f84815260208120601f198516915b828110156154c057878501518255602094850194600190920191016154a0565b50848210156154dd57868401515f19600387901b60f8161c191681555b50505050600190811b0190555056fe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220af43aa8f47628b5fcaf818c9913f500dd064e130f5998e8b62279751fc8fc64b64736f6c634300081a0033",
|
863
|
+
"deployedBytecode": "0x608060405234801561000f575f80fd5b506004361061013d575f3560e01c80636c741e78116100b45780639ffcede9116100795780639ffcede91461031d578063aa5ae5aa14610330578063ada9652e14610343578063b68d180914610357578063bbfbbfba14610366578063bf7e214f14610379575f80fd5b80636c741e78146102985780637a9e5e4b146102b85780637baa9a0b146102cb578063893d20e8146102f45780638fb36037146102fc575f80fd5b80631eff4b22116101055780631eff4b22146101e8578063329d6e741461021d57806349bb9e4b146102305780634d5e16a9146102435780635ab1bd5314610256578063644c45e01461027b575f80fd5b806301ffc9a7146101415780630aaba8e8146101825780630d8e6e2c146101975780630fec111c146101b3578063138461e0146101c8575b5f80fd5b61016d61014f366004614389565b6001600160e01b0319165f9081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b6101956101903660046143c4565b610396565b005b61019f61095e565b60405162ffffff9091168152602001610179565b6101bb6109e5565b604051610179919061440d565b6101d0610b71565b6040516001600160601b039091168152602001610179565b61020f7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001610179565b61019561022b366004614610565b610b7b565b61019561023e366004614655565b610cc5565b6101956102513660046146b3565b610dc1565b6001546001600160a01b03165b6040516001600160a01b039091168152602001610179565b5f805160206154ed833981519152546001600160601b03166101d0565b6102a0610f2d565b6040516001600160401b039091168152602001610179565b6101956102c63660046146ea565b611023565b6102de6102d93660046146b3565b6110bf565b60405164ffffffffff9091168152602001610179565b610263611635565b610304611766565b6040516001600160e01b03199091168152602001610179565b61019561032b3660046143c4565b61179b565b61019561033e3660046146b3565b611a8b565b61020f5f805160206154ed83398151915281565b60405160158152602001610179565b6101956103743660046146b3565b61207b565b5f8051602061550d833981519152546001600160a01b0316610263565b5f6103a1600c612558565b925050505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156103e2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104069190614705565b60405163bd7d9d8560e01b81526001600160601b03851660048201529091505f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015610455573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261047c91908101906147b2565b604051639096a1f360e01b81526001600160601b03861660048201529091505f906001600160a01b03841690639096a1f390602401602060405180830381865afa1580156104cc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906104f0919061495e565b90506104fc81836125f4565b6105325760405163536eb56160e11b81526001600160601b038616600482015260ff821660248201526044015b60405180910390fd5b6101e0820151604051638d38cd4b60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__90638d38cd4b90602401602060405180830381865af415801561058d573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906105b19190614988565b156105da5760405163bdcc947d60e01b81526001600160601b0386166004820152602401610529565b61014082015161ffff161561061e57610140820151604051637459ec8b60e11b81526001600160601b038716600482015261ffff9091166024820152604401610529565b6040516309c5844f60e01b81526001600160601b03861660048201526001600160a01b038416906309c5844f90602401602060405180830381865afa158015610669573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061068d919061495e565b60408051632c2f8a6760e01b815260ff909216600483015260dc60248301525173__$2e1fcf62e7a1b3c2a33bdf2228c171b2be$__91632c2f8a679160448083019260209291908290030181865af41580156106eb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061070f9190614988565b6107455760a0820151604051635567446960e11b81526001600160601b0380881660048301529091166024820152604401610529565b600754825160405163f0ea17c360e01b81526001600160601b0390911660048201526001600160a01b03918216916332f9f3df91879187169063f0ea17c3906024015f60405180830381865afa1580156107a1573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526107c891908101906149ac565b6040015188866040518563ffffffff1660e01b81526004016107ed9493929190614c2f565b5f604051808303815f87803b158015610804575f80fd5b505af1158015610816573d5f803e3d5ffd5b5050505073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015610861573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108859190614c73565b64ffffffffff166101e083015260408051631a99b41b60e31b815290516001600160a01b0386169163d4cda0d89160048083019260209291908290030181865afa1580156108d5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906108f99190614705565b6001600160a01b031663425d08e2868460c85b6040518463ffffffff1660e01b815260040161092a93929190614c8e565b5f604051808303815f87803b158015610941575f80fd5b505af1158015610953573d5f803e3d5ffd5b505050505050505050565b604051632efe011360e01b8152600360048201525f60248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af41580156109bc573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e09190614cc2565b905090565b6109ed61434c565b5f7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e0016040528073__$94a2c899be079b00d952d0d84fffaa5c34$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015610a63573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610a879190614ce4565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a001610acf611635565b6001600160a01b03168152602001826001018054610aec90614cff565b80601f0160208091040260200160405190810160405280929190818152602001828054610b1890614cff565b8015610b635780601f10610b3a57610100808354040283529160200191610b63565b820191905f5260205f20905b815481529060010190602001808311610b4657829003601f168201915b505050505081525091505090565b5f6109e0306126a5565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c610b9d61095e565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610bdb573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610bff9190614d4b565b5f8051602061552d8339815191528054600160401b900460ff1680610c31575080546001600160401b03808416911610155b15610c4f5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610c798361289e565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b5f8051602061552d8339815191528054600160401b810460ff1615906001600160401b03165f81158015610cf65750825b90505f826001600160401b03166001148015610d115750303b155b905081158015610d1f575080155b15610d3d5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d6757845460ff60401b1916600160401b1785555b610d7187876128a6565b8315610db857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15b50505050505050565b5f610dcc600c612558565b925050505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015610e0d573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610e319190614705565b60405163bd7d9d8560e01b81526001600160601b03861660048201529091505f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015610e80573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052610ea791908101906147b2565b9050610eb4858286612e7f565b9050826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015610ef2573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610f169190614705565b6001600160a01b031663425d08e2868360ff61090c565b5f73__$1d92393fa9ccd763988368ce8a1cb90d26$__63dda777d36015604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015610f98573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190610fbc919061495e565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865af4158015610fff573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906109e09190614d4b565b336110425f8051602061550d833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b03161461107d5760405162d1953b60e31b81526001600160a01b0382166004820152602401610529565b816001600160a01b03163b5f036110b2576040516361798f2f60e11b81526001600160a01b0383166004820152602401610529565b6110bb82613087565b5050565b5f80806110cc600c612558565b92505091505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801561110e573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906111329190614705565b60405163bd7d9d8560e01b81526001600160601b03881660048201529091505f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015611181573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526111a891908101906147b2565b90506111b7815f0151856130e7565b156111f3578051604051631a06208360e01b81526001600160601b03808a16600483015291821660248201529085166044820152606401610529565b604051639096a1f360e01b81526001600160601b03881660048201525f906001600160a01b03841690639096a1f390602401602060405180830381865afa158015611240573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611264919061495e565b905061127081836125f4565b6112a15760405163536eb56160e11b81526001600160601b038916600482015260ff82166024820152604401610529565b60405163790a38ad60e01b815264ffffffffff8816600482015287965073__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af41580156112f8573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061131c9190614988565b1561138f5773__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611368573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061138c9190614c73565b95505b6101c082015164ffffffffff908116908716106113e6576101c08201516040516372f7b9bd60e11b81526001600160601b038a16600482015264ffffffffff91821660248201529088166044820152606401610529565b6114648673__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015611431573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114559190614c73565b64ffffffffff90811691161090565b1561150f578773__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af41580156114b1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906114d59190614c73565b604051631c66624d60e01b81526001600160601b03909216600483015264ffffffffff908116602483015288166044820152606401610529565b64ffffffffff86166101c083015260408051631a99b41b60e31b815290516001600160a01b0386169163d4cda0d89160048083019260209291908290030181865afa158015611560573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906115849190614705565b6001600160a01b031663425d08e2898460ff6040518463ffffffff1660e01b81526004016115b493929190614c8e565b5f604051808303815f87803b1580156115cb575f80fd5b505af11580156115dd573d5f803e3d5ffd5b5050604080516001600160601b038c16815264ffffffffff8a1660208201527f78c7b2401beaecd3c89e9a37210cba72e9f33e125194b23cb6c42a6d07c4fe14935001905060405180910390a1505050505092915050565b5f805f805160206154ed83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156116a1573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906116c59190614988565b15611750576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015611726573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061174a9190614705565b91505090565b54600160601b90046001600160a01b0316919050565b5f8051602061550d83398151915280545f9190600160a01b900460ff1661178d575f61174a565b638fb3603760e01b91505090565b5f806117a7600c612558565b92505091505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156117e9573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061180d9190614705565b604051639096a1f360e01b81526001600160601b0386166004820152909150611893906001600160a01b03831690639096a1f3906024015b602060405180830381865afa158015611860573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611884919061495e565b600a5b60ff9081169116141590565b156118bc57604051631130ddad60e21b81526001600160601b0385166004820152602401610529565b60405163bd7d9d8560e01b81526001600160601b03851660048201525f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015611908573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261192f91908101906147b2565b905061193e815f0151856130e7565b1561197a578051604051631a06208360e01b81526001600160601b03808816600483015291821660248201529085166044820152606401610529565b826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119b6573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906119da9190614705565b6001600160a01b0316635d4345cc86601e6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff1660248201526044015f604051808303815f87803b158015611a31575f80fd5b505af1158015611a43573d5f803e3d5ffd5b50506040516001600160601b03881681527fa9d1c49a019bf7dc62cfada9540cd302c4fc54f6ed05d99b581074ed70441fae9250602001905060405180910390a15050505050565b5f80611a97600c612558565b92505091505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ad9573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611afd9190614705565b604051639096a1f360e01b81526001600160601b0387166004820152909150611b39906001600160a01b03831690639096a1f390602401611845565b15611b6257604051631130ddad60e21b81526001600160601b0386166004820152602401610529565b60405163bd7d9d8560e01b81526001600160601b03861660048201525f906001600160a01b0383169063bd7d9d85906024015f60405180830381865afa158015611bae573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611bd591908101906147b2565b9050611be4815f0151856130e7565b15611c20578051604051631a06208360e01b81526001600160601b03808916600483015291821660248201529085166044820152606401610529565b60075460405163f0ea17c360e01b81526001600160601b03861660048201526001600160a01b03918216916384d1f7cf91869186169063f0ea17c3906024015f60405180830381865afa158015611c79573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052611ca091908101906149ac565b6040908101516020860151608087015192516001600160e01b031960e087901b1681526001600160a01b0394851660048201529390911660248401526001600160601b03808a166044850152808c16606485015290811660848401521660a482015260c40160408051808303815f875af1158015611d20573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611d449190614d66565b5050611d6085611d515f90565b64ffffffffff90811691161190565b15611d7357611d70868287612e7f565b90505b826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611daf573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611dd39190614705565b6001600160a01b031663425d08e2878360286040518463ffffffff1660e01b8152600401611e0393929190614c8e565b5f604051808303815f87803b158015611e1a575f80fd5b505af1158015611e2c573d5f803e3d5ffd5b50506008546060840151608085015160c086015160e087015160208801516040808a01519051637a5ff29d60e11b81525f99506001600160a01b03909716975063f4bfe53a96611e8a968e9690959094909390929091600401614d93565b61024060405180830381865afa158015611ea6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611eca9190614e10565b9050836001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015611f08573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611f2c9190614705565b6001600160a01b0316634d4a7ae988836040518363ffffffff1660e01b8152600401611f5992919061515d565b5f604051808303815f87803b158015611f70575f80fd5b505af1158015611f82573d5f803e3d5ffd5b50506040516302d764c760e21b81526001600160601b03881660048201525f92506001600160a01b0386169150630b5d931c9060240161020060405180830381865afa158015611fd4573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190611ff891906151c7565b6006548151604086810151905163038f0f2560e11b81526001600160601b0390921660048301526001600160c01b03191660248201529192506001600160a01b03169063071e1e4a906044015f604051808303815f87803b15801561205b575f80fd5b505af115801561206d573d5f803e3d5ffd5b505050505050505050505050565b5f612086600c612558565b925050505f816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156120c7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906120eb9190614705565b604051639096a1f360e01b81526001600160601b03861660048201529091505f906001600160a01b03831690639096a1f390602401602060405180830381865afa15801561213b573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061215f919061495e565b90506121738160285b60ff90811691161490565b61219b5760405163904913a960e01b81526001600160601b0386166004820152602401610529565b6040516309c5844f60e01b81526001600160601b0386166004820152612215906001600160a01b038416906309c5844f90602401602060405180830381865afa1580156121ea573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061220e919061495e565b60dc612168565b1561223e57604051635b7a826360e01b81526001600160601b0386166004820152602401610529565b60405163bd7d9d8560e01b81526001600160601b03861660048201525f906001600160a01b0384169063bd7d9d85906024015f60405180830381865afa15801561228a573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f191682016040526122b191908101906147b2565b60405163e444c3df60e01b81526001600160601b03881660048201529091505f906001600160a01b0385169063e444c3df9060240161024060405180830381865afa158015612302573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123269190614e10565b90506123348588848461316b565b604051638d38cd4b60e01b815264ffffffffff8716600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__90638d38cd4b90602401602060405180830381865af4158015612388573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906123ac9190614988565b156123bf576123bc878388612e7f565b91505b846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156123fb573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061241f9190614705565b6001600160a01b031663425d08e2888460ff6040518463ffffffff1660e01b815260040161244f93929190614c8e565b5f604051808303815f87803b158015612466575f80fd5b505af1158015612478573d5f803e3d5ffd5b50505050846001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156124b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906124dc9190614705565b6001600160a01b0316632ae5819d8860dc6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff1660248201526044015f604051808303815f87803b158015612533575f80fd5b505af1158015612545573d5f803e3d5ffd5b50505050610db88488845f015184613356565b5f61256161434c565b5f6125746001546001600160a01b031690565b604051632f2a35f760e11b81523360048201526001600160a01b039190911690635e546bee90602401602060405180830381865afa1580156125b8573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906125dc9190614ce4565b92506125ea838560016134a4565b9395909450915050565b5f612600836028611887565b1561260c57505f61269f565b61268f73__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__63adb618326040518163ffffffff1660e01b8152600401602060405180830381865af4158015612656573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061267a9190614c73565b836101a0015164ffffffffff90811691161090565b1561269b57505f61269f565b5060015b92915050565b5f805f805160206154ed83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015612711573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127359190614988565b156127615780546040516301ab8b6760e21b81526001600160601b039091166004820152602401610529565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa1580156127b3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906127d79190614988565b6127ff5760405163b9304b0d60e01b81526001600160a01b0384166004820152602401610529565b6001546001600160a01b0316604051632f2a35f760e11b81526001600160a01b0385811660048301529190911690635e546bee90602401602060405180830381865afa158015612851573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906128759190614ce4565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b61013d61373b565b5f8051602061552d8339815191528054600160401b810460ff1615906001600160401b03165f811580156128d75750825b90505f826001600160401b031660011480156128f25750303b155b905081158015612900575080155b1561291e5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831561294857845460ff60401b1916600160401b1785555b5f808780602001905181019061295e9190615288565b925050915061296e82828b613773565b5f61297761095e565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af41580156129ca573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906129ee919061495e565b9050612a026001546001600160a01b031690565b6001600160a01b031663d39e604360146040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612a56573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612a7a9190614705565b600280546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043601f6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612aee573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612b129190614705565b600480546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043600b6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612b86573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612baa9190614705565b600380546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e604360176040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612c1e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612c429190614705565b600580546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043600f6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612cb6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612cda9190614705565b600780546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043600e6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612d4e573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612d729190614705565b600680546001600160a01b0319166001600160a01b03928316179055600154166001600160a01b031663d39e6043601a6040516001600160e01b031960e084901b16815260ff91821660048201529084166024820152604401602060405180830381865afa158015612de6573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612e0a9190614705565b600880546001600160a01b0319166001600160a01b0392909216919091179055612e3a63b20293b360e01b6138b0565b5050508315610db857845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602001610daf565b60408051610200810182525f8082526020820181905291810182905260608082018390526080820183905260a0820183905260c0820183905260e0820181905261010082015261012081018290526101408101829052610160810182905261018081018290526101a081018290526101c081018290526101e08101919091526101a083015160405163790a38ad60e01b815264ffffffffff909116600482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063790a38ad90602401602060405180830381865af4158015612f59573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190612f7d9190614988565b158015612f9957506101a083015164ffffffffff808416911614155b15612fc25760405163f95747d360e01b81526001600160601b0385166004820152602401610529565b6101a083015164ffffffffff838116911603612fdf575081613080565b64ffffffffff8281166101a0850181905260c08501516040516352bcc5a760e11b81526004810192909252909116602482015273__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9063a5798b4e90604401602060405180830381865af415801561304c573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130709190614c73565b64ffffffffff166101c084015250815b9392505050565b5f8051602061550d83398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b6040516399009c5160e01b81526001600160601b038084166004830152821660248201525f9073__$94a2c899be079b00d952d0d84fffaa5c34$__906399009c5190604401602060405180830381865af4158015613147573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130809190614988565b5f825f015190505f856001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156131af573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906131d39190614705565b90505f6131e082846138dc565b90505f6131f56001546001600160a01b031690565b604051631c5da14d60e11b81526001600160601b03891660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015613242573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906132669190614705565b90506132d7826001600160a01b03166321df0da76040518163ffffffff1660e01b8152600401602060405180830381865afa1580156132a7573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906132cb9190614705565b83838860a0015161395a565b505061334e81876001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015613319573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061333d9190614705565b848760200151886040015188613b36565b505050505050565b5f61336185846138dc565b90505f6133766001546001600160a01b031690565b604051631c5da14d60e11b81526001600160601b03871660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa1580156133c3573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906133e79190614705565b90505f805f6133f68988613cb1565b895160208b01516040808d015190516321711b5760e21b81526001600160a01b038c8116600483015280861660248301526001600160601b0394851660448301528088166064830152928416608482015282861660a4820152921660c4830152939750919550935090871691506385c46d5c9060e4015f604051808303815f87803b158015613483575f80fd5b505af1158015613495573d5f803e3d5ffd5b50505050505050505050505050565b6134ac61434c565b5f806134c06001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03881660048201529091506001600160a01b0382169063a48f42e0906024015f60405180830381865afa15801561350d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261353491908101906152d2565b925061354185600b611887565b1561359757604083015160ff86811691161461359257604080840151905163b83d92cb60e01b81526001600160601b038816600482015260ff80881660248301529091166044820152606401610529565b613628565b6135a78360400151612168600c90565b806135bd57506135bd8360400151612168600f90565b806135d357506135d38360400151612168600e90565b806135e957506135e98360400151612168600d90565b61362857604080840151905163b83d92cb60e01b81526001600160601b038816600482015260ff80881660248301529091166044820152606401610529565b6136358360200151613eaa565b9150831561373257816001600160a01b031663311adb686040518163ffffffff1660e01b8152600401602060405180830381865afa158015613679573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061369d9190614705565b6080840151604051629b7b3560e61b81526001600160a01b0391821660048201529116906326decd4090602401602060405180830381865afa1580156136e5573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137099190614988565b1561373257604051637d71120960e11b81526001600160601b0387166004820152602401610529565b50935093915050565b5f8051602061552d83398151915254600160401b900460ff1661377157604051631afcd79f60e31b815260040160405180910390fd5b565b61377b61373b565b6137f783846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156137bb573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906137df9190614ce4565b60085f8560405180602001604052805f815250613f3a565b6001600160a01b038216156138145761380f82613fdf565b61388b565b5f61381f6002613ff3565b9050613889816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015613860573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906138849190614705565b613fdf565b505b61389b634a531f3360e01b6138b0565b6138ab63daf9067160e01b6138b0565b505050565b6138b861373b565b6001600160e01b0319165f908152602081905260409020805460ff19166001179055565b60405163f0ea17c360e01b81526001600160601b03821660048201525f906001600160a01b0384169063f0ea17c3906024015f60405180830381865afa158015613928573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f1916820160405261394f91908101906149ac565b606001519392505050565b60405163046e44af60e11b81526001600160601b03821660048201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e90602401602060405180830381865af41580156139b2573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906139d691906153a2565b6040516370a0823160e01b81526001600160a01b0385811660048301529192505f918716906370a0823190602401602060405180830381865afa158015613a1f573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613a4391906153a2565b604051636eb1769f60e11b81526001600160a01b03868116600483015287811660248301529192505f9188169063dd62ed3e90604401602060405180830381865afa158015613a94573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613ab891906153a2565b905082821015613af45760405163503edf3960e11b81526001600160a01b03861660048201526024810184905260448101839052606401610529565b82811015610db857604051630afa3e2d60e11b81526001600160a01b038087166004830152871660248201526044810184905260648101829052608401610529565b5f613b418786613cb1565b505050905060035f9054906101000a90046001600160a01b03166001600160a01b03166367438c508787613b7e8661014001518760c001516140f4565b6040516001600160e01b031960e086901b1681526001600160a01b0390931660048401526001600160601b0391821660248401521660448201526064015f604051808303815f87803b158015613bd2575f80fd5b505af1158015613be4573d5f803e3d5ffd5b5050600654604051633ca8687160e11b81526001600160a01b039091169250637950d0e29150613c1c908490879087906004016153b9565b5f604051808303815f87803b158015613c33575f80fd5b505af1158015613c45573d5f803e3d5ffd5b505060075460405163fb3bcd1f60e01b81526001600160a01b03909116925063fb3bcd1f9150613c7b908790869060040161515d565b5f604051808303815f87803b158015613c92575f80fd5b505af1158015613ca4573d5f803e3d5ffd5b5050505050505050505050565b6040516302d764c760e21b81526001600160601b03821660048201525f9081908190819081906001600160a01b03881690630b5d931c9060240161020060405180830381865afa158015613d07573d5f803e3d5ffd5b505050506040513d601f19601f82011682018060405250810190613d2b91906151c7565b805160405163f0ea17c360e01b81526001600160601b03821660048201529096509091506001600160a01b0388169063f0ea17c3906024015f60405180830381865afa158015613d7d573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613da491908101906149ac565b60800151602082015160405163f0ea17c360e01b81526001600160601b0390911660048201529094506001600160a01b0388169063f0ea17c3906024015f60405180830381865afa158015613dfb573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613e2291908101906149ac565b6080015160405163f0ea17c360e01b81526001600160601b03881660048201529093506001600160a01b0388169063f0ea17c3906024015f60405180830381865afa158015613e73573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613e9a91908101906149ac565b6080015191505092959194509250565b5f613ebd6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e0906024015f60405180830381865afa158015613f09573d5f803e3d5ffd5b505050506040513d5f823e601f3d908101601f19168201604052613f3091908101906152d2565b6080015192915050565b613f4261373b565b613f4c8287614178565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa301613fd58382615432565b5050505050505050565b613fe761373b565b613ff0816141ee565b50565b5f6140066001546001600160a01b031690565b604051632392b61b60e21b8152600360048201526001600160a01b03919091169063d39e604390849073__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af4158015614069573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061408d919061495e565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156140d0573d5f803e3d5ffd5b505050506040513d601f19601f8201168201806040525081019061269f9190614705565b60405163274acb3560e01b81526001600160601b038084166004830152821660248201525f9073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb3590604401602060405180830381865af4158015614154573d5f803e3d5ffd5b505050506040513d601f19601f820116820180604052508101906130809190614ce4565b61418061373b565b614189816141ff565b614191614307565b6001600160a01b0382166141b85760405163f17ef42d60e01b815260040160405180910390fd5b505f805160206154ed83398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b6141f661373b565b613ff081613087565b61420761373b565b806001600160a01b03163b5f0361423c5760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610529565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b8152632f6da6f960e01b60048201526301ffc9a790602401602060405180830381865afa9250505080156142b6575060408051601f3d908101601f191682019092526142b391810190614988565b60015b6142de5760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610529565b806110bb5760405163fdeac91f60e01b81526001600160a01b0383166004820152602401610529565b61430f61373b565b6301ffc9a760e01b5f9081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b6040805160e0810182525f8082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b5f60208284031215614399575f80fd5b81356001600160e01b031981168114613080575f80fd5b6001600160601b0381168114613ff0575f80fd5b5f602082840312156143d4575f80fd5b8135613080816143b0565b5f81518084528060208401602086015e5f602082860101526020601f19601f83011685010191505092915050565b602081526001600160601b0382511660208201526001600160601b03602083015116604082015260ff60408301511660608201525f6060830151614455608084018215159052565b5060808301516001600160a01b03811660a08401525060a08301516001600160a01b03811660c08401525060c083015160e0808401526144996101008401826143df565b949350505050565b634e487b7160e01b5f52604160045260245ffd5b60405161020081016001600160401b03811182821017156144d8576144d86144a1565b60405290565b60405160c081016001600160401b03811182821017156144d8576144d86144a1565b60405161024081016001600160401b03811182821017156144d8576144d86144a1565b60405161012081016001600160401b03811182821017156144d8576144d86144a1565b60405160e081016001600160401b03811182821017156144d8576144d86144a1565b604051601f8201601f191681016001600160401b0381118282101715614590576145906144a1565b604052919050565b5f6001600160401b038211156145b0576145b06144a1565b50601f01601f191660200190565b5f82601f8301126145cd575f80fd5b81356145e06145db82614598565b614568565b8181528460208386010111156145f4575f80fd5b816020850160208301375f918101602001919091529392505050565b5f60208284031215614620575f80fd5b81356001600160401b03811115614635575f80fd5b614499848285016145be565b6001600160a01b0381168114613ff0575f80fd5b5f8060408385031215614666575f80fd5b823561467181614641565b915060208301356001600160401b0381111561468b575f80fd5b614697858286016145be565b9150509250929050565b64ffffffffff81168114613ff0575f80fd5b5f80604083850312156146c4575f80fd5b82356146cf816143b0565b915060208301356146df816146a1565b809150509250929050565b5f602082840312156146fa575f80fd5b813561308081614641565b5f60208284031215614715575f80fd5b815161308081614641565b805161472b816143b0565b919050565b80516001600160c01b03198116811461472b575f80fd5b805161472b816146a1565b5f82601f830112614761575f80fd5b8151602083015f6147746145db84614598565b9050828152858383011115614787575f80fd5b8282602083015e5f92810160200192909252509392505050565b805161ffff8116811461472b575f80fd5b5f602082840312156147c2575f80fd5b81516001600160401b038111156147d7575f80fd5b820161020081850312156147e9575f80fd5b6147f16144b5565b6147fa82614720565b815261480860208301614720565b602082015261481960408301614730565b604082015261482a60608301614730565b606082015261483b60808301614720565b608082015261484c60a08301614720565b60a082015261485d60c08301614747565b60c082015260e08201516001600160401b0381111561487a575f80fd5b61488686828501614752565b60e0830152506101008201516001600160401b038111156148a5575f80fd5b6148b186828501614752565b610100830152506148c561012083016147a1565b6101208201526148d861014083016147a1565b6101408201526148eb6101608301614720565b6101608201526148fe6101808301614720565b6101808201526149116101a08301614747565b6101a08201526149246101c08301614747565b6101c08201526149376101e08301614747565b6101e0820152949350505050565b60ff81168114613ff0575f80fd5b805161472b81614945565b5f6020828403121561496e575f80fd5b815161308081614945565b8051801515811461472b575f80fd5b5f60208284031215614998575f80fd5b61308082614979565b805161472b81614641565b5f602082840312156149bc575f80fd5b81516001600160401b038111156149d1575f80fd5b820160c081850312156149e2575f80fd5b6149ea6144de565b81516001600160401b038111156149ff575f80fd5b614a0b86828501614752565b825250614a1a60208301614720565b6020820152614a2b604083016149a1565b6040820152614a3c606083016149a1565b6060820152614a4d608083016149a1565b608082015260a08201516001600160401b03811115614a6a575f80fd5b614a7686828501614752565b60a083015250949350505050565b80516001600160601b031682525f6020820151614aac60208501826001600160601b03169052565b506040820151614ac860408501826001600160c01b0319169052565b506060820151614ae460608501826001600160c01b0319169052565b506080820151614aff60808501826001600160601b03169052565b5060a0820151614b1a60a08501826001600160601b03169052565b5060c0820151614b3360c085018264ffffffffff169052565b5060e082015161020060e0850152614b4f6102008501826143df565b9050610100830151848203610100860152614b6a82826143df565b915050610120830151614b8461012086018261ffff169052565b50610140830151614b9c61014086018261ffff169052565b50610160830151614bb96101608601826001600160601b03169052565b50610180830151614bd66101808601826001600160601b03169052565b506101a0830151614bf16101a086018264ffffffffff169052565b506101c0830151614c0c6101c086018264ffffffffff169052565b506101e0830151614c276101e086018264ffffffffff169052565b509392505050565b6001600160a01b038581168252841660208201526001600160601b03831660408201526080606082018190525f90614c6990830184614a84565b9695505050505050565b5f60208284031215614c83575f80fd5b8151613080816146a1565b6001600160601b0384168152606060208201525f614caf6060830185614a84565b905060ff83166040830152949350505050565b5f60208284031215614cd2575f80fd5b815162ffffff81168114613080575f80fd5b5f60208284031215614cf4575f80fd5b8151613080816143b0565b600181811c90821680614d1357607f821691505b602082108103614d3157634e487b7160e01b5f52602260045260245ffd5b50919050565b6001600160401b0381168114613ff0575f80fd5b5f60208284031215614d5b575f80fd5b815161308081614d37565b5f8060408385031215614d77575f80fd5b8251614d82816143b0565b60208401519092506146df816143b0565b6001600160601b03881681526001600160401b0360c01b871660208201526001600160601b038616604082015264ffffffffff8516606082015260e060808201525f614de260e08301866143df565b6001600160601b039490941660a0830152506001600160c01b03199190911660c09091015295945050505050565b5f610240828403128015614e22575f80fd5b50614e2b614500565b614e3483614720565b8152614e4260208401614720565b6020820152614e5360408401614720565b6040820152614e6460608401614720565b6060820152614e7560808401614720565b6080820152614e8660a08401614720565b60a0820152614e9760c08401614720565b60c0820152614ea860e08401614720565b60e0820152614eba6101008401614720565b610100820152614ecd6101208401614720565b610120820152614ee06101408401614720565b610140820152614ef36101608401614720565b610160820152614f066101808401614720565b610180820152614f196101a08401614720565b6101a0820152614f2c6101c08401614720565b6101c0820152614f3f6101e08401614720565b6101e0820152614f526102008401614720565b610200820152614f656102208401614720565b6102208201529392505050565b80516001600160601b031682526020810151614f9960208401826001600160601b03169052565b506040810151614fb460408401826001600160601b03169052565b506060810151614fcf60608401826001600160601b03169052565b506080810151614fea60808401826001600160601b03169052565b5060a081015161500560a08401826001600160601b03169052565b5060c081015161502060c08401826001600160601b03169052565b5060e081015161503b60e08401826001600160601b03169052565b506101008101516150586101008401826001600160601b03169052565b506101208101516150756101208401826001600160601b03169052565b506101408101516150926101408401826001600160601b03169052565b506101608101516150af6101608401826001600160601b03169052565b506101808101516150cc6101808401826001600160601b03169052565b506101a08101516150e96101a08401826001600160601b03169052565b506101c08101516151066101c08401826001600160601b03169052565b506101e08101516151236101e08401826001600160601b03169052565b506102008101516151406102008401826001600160601b03169052565b506102208101516138ab6102208401826001600160601b03169052565b6001600160601b038316815261026081016130806020830184614f72565b5f6040828403121561518b575f80fd5b604080519081016001600160401b03811182821017156151ad576151ad6144a1565b604052825181526020928301519281019290925250919050565b5f6102008284031280156151d9575f80fd5b506151e2614523565b6151eb83614720565b81526151f960208401614720565b602082015261520b846040850161517b565b604082015261521d846080850161517b565b606082015261522f8460c0850161517b565b608082015261524284610100850161517b565b60a082015261525584610140850161517b565b60c082015261526884610180850161517b565b60e082015261527b846101c0850161517b565b6101008201529392505050565b5f805f6060848603121561529a575f80fd5b83516152a581614641565b60208501519093506152b681614641565b60408501519092506152c781614641565b809150509250925092565b5f602082840312156152e2575f80fd5b81516001600160401b038111156152f7575f80fd5b820160e08185031215615308575f80fd5b615310614546565b61531982614720565b815261532760208301614720565b602082015261533860408301614953565b604082015261534960608301614979565b606082015261535a608083016149a1565b608082015261536b60a083016149a1565b60a082015260c08201516001600160401b03811115615388575f80fd5b61539486828501614752565b60c083015250949350505050565b5f602082840312156153b2575f80fd5b5051919050565b6001600160601b03841681526001600160c01b03198316602082015261028081016144996040830184614f72565b601f8211156138ab57805f5260205f20601f840160051c8101602085101561540c5750805b601f840160051c820191505b8181101561542b575f8155600101615418565b5050505050565b81516001600160401b0381111561544b5761544b6144a1565b61545f816154598454614cff565b846153e7565b6020601f821160018114615491575f831561547a5750848201515b5f19600385901b1c1916600184901b17845561542b565b5f84815260208120601f198516915b828110156154c057878501518255602094850194600190920191016154a0565b50848210156154dd57868401515f19600387901b60f8161c191681555b50505050600190811b0190555056fe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220af43aa8f47628b5fcaf818c9913f500dd064e130f5998e8b62279751fc8fc64b64736f6c634300081a0033",
|
996
864
|
"linkReferences": {
|
997
865
|
"contracts/type/Amount.sol": {
|
998
866
|
"AmountLib": [
|
999
867
|
{
|
1000
868
|
"length": 20,
|
1001
|
-
"start":
|
1002
|
-
},
|
1003
|
-
{
|
1004
|
-
"length": 20,
|
1005
|
-
"start": 7434
|
1006
|
-
},
|
1007
|
-
{
|
1008
|
-
"length": 20,
|
1009
|
-
"start": 7558
|
1010
|
-
},
|
1011
|
-
{
|
1012
|
-
"length": 20,
|
1013
|
-
"start": 9354
|
1014
|
-
},
|
1015
|
-
{
|
1016
|
-
"length": 20,
|
1017
|
-
"start": 10001
|
869
|
+
"start": 14928
|
1018
870
|
},
|
1019
871
|
{
|
1020
872
|
"length": 20,
|
1021
|
-
"start":
|
1022
|
-
}
|
1023
|
-
|
1024
|
-
|
1025
|
-
|
1026
|
-
|
1027
|
-
{
|
1028
|
-
"length": 20,
|
1029
|
-
"start": 10880
|
1030
|
-
},
|
1031
|
-
{
|
1032
|
-
"length": 20,
|
1033
|
-
"start": 11707
|
1034
|
-
},
|
1035
|
-
{
|
1036
|
-
"length": 20,
|
1037
|
-
"start": 11852
|
1038
|
-
},
|
1039
|
-
{
|
1040
|
-
"length": 20,
|
1041
|
-
"start": 12064
|
1042
|
-
},
|
1043
|
-
{
|
1044
|
-
"length": 20,
|
1045
|
-
"start": 12230
|
1046
|
-
},
|
873
|
+
"start": 16882
|
874
|
+
}
|
875
|
+
]
|
876
|
+
},
|
877
|
+
"contracts/type/NftId.sol": {
|
878
|
+
"NftIdLib": [
|
1047
879
|
{
|
1048
880
|
"length": 20,
|
1049
|
-
"start":
|
881
|
+
"start": 2804
|
1050
882
|
},
|
1051
883
|
{
|
1052
884
|
"length": 20,
|
1053
|
-
"start":
|
885
|
+
"start": 5951
|
1054
886
|
},
|
1055
887
|
{
|
1056
888
|
"length": 20,
|
1057
|
-
"start":
|
889
|
+
"start": 10159
|
1058
890
|
},
|
1059
891
|
{
|
1060
892
|
"length": 20,
|
1061
|
-
"start":
|
893
|
+
"start": 12773
|
1062
894
|
}
|
1063
895
|
]
|
1064
896
|
},
|
1065
|
-
"contracts/type/
|
1066
|
-
"
|
897
|
+
"contracts/type/RoleId.sol": {
|
898
|
+
"RoleIdLib": [
|
1067
899
|
{
|
1068
900
|
"length": 20,
|
1069
|
-
"start":
|
1070
|
-
}
|
901
|
+
"start": 4102
|
902
|
+
}
|
903
|
+
]
|
904
|
+
},
|
905
|
+
"contracts/type/StateId.sol": {
|
906
|
+
"StateIdLib": [
|
1071
907
|
{
|
1072
908
|
"length": 20,
|
1073
|
-
"start":
|
909
|
+
"start": 1925
|
1074
910
|
}
|
1075
911
|
]
|
1076
912
|
},
|
@@ -1078,43 +914,43 @@
|
|
1078
914
|
"TimestampLib": [
|
1079
915
|
{
|
1080
916
|
"length": 20,
|
1081
|
-
"start":
|
917
|
+
"start": 1579
|
1082
918
|
},
|
1083
919
|
{
|
1084
920
|
"length": 20,
|
1085
|
-
"start":
|
921
|
+
"start": 2290
|
1086
922
|
},
|
1087
923
|
{
|
1088
924
|
"length": 20,
|
1089
|
-
"start":
|
925
|
+
"start": 5014
|
1090
926
|
},
|
1091
927
|
{
|
1092
928
|
"length": 20,
|
1093
|
-
"start":
|
929
|
+
"start": 5113
|
1094
930
|
},
|
1095
931
|
{
|
1096
932
|
"length": 20,
|
1097
|
-
"start":
|
933
|
+
"start": 5314
|
1098
934
|
},
|
1099
935
|
{
|
1100
936
|
"length": 20,
|
1101
|
-
"start":
|
937
|
+
"start": 5442
|
1102
938
|
},
|
1103
939
|
{
|
1104
940
|
"length": 20,
|
1105
|
-
"start":
|
941
|
+
"start": 9254
|
1106
942
|
},
|
1107
943
|
{
|
1108
944
|
"length": 20,
|
1109
|
-
"start":
|
1110
|
-
}
|
1111
|
-
|
1112
|
-
|
1113
|
-
|
1114
|
-
|
945
|
+
"start": 9959
|
946
|
+
},
|
947
|
+
{
|
948
|
+
"length": 20,
|
949
|
+
"start": 12279
|
950
|
+
},
|
1115
951
|
{
|
1116
952
|
"length": 20,
|
1117
|
-
"start":
|
953
|
+
"start": 12522
|
1118
954
|
}
|
1119
955
|
]
|
1120
956
|
},
|
@@ -1122,25 +958,25 @@
|
|
1122
958
|
"VersionLib": [
|
1123
959
|
{
|
1124
960
|
"length": 20,
|
1125
|
-
"start":
|
961
|
+
"start": 2650
|
1126
962
|
},
|
1127
963
|
{
|
1128
964
|
"length": 20,
|
1129
|
-
"start":
|
965
|
+
"start": 3155
|
1130
966
|
},
|
1131
967
|
{
|
1132
968
|
"length": 20,
|
1133
|
-
"start":
|
1134
|
-
},
|
1135
|
-
{
|
1136
|
-
"length": 20,
|
1137
|
-
"start": 15498
|
969
|
+
"start": 10856
|
1138
970
|
}
|
1139
971
|
],
|
1140
972
|
"VersionPartLib": [
|
1141
973
|
{
|
1142
974
|
"length": 20,
|
1143
|
-
"start":
|
975
|
+
"start": 4150
|
976
|
+
},
|
977
|
+
{
|
978
|
+
"length": 20,
|
979
|
+
"start": 16647
|
1144
980
|
}
|
1145
981
|
]
|
1146
982
|
}
|
@@ -1150,79 +986,47 @@
|
|
1150
986
|
"AmountLib": [
|
1151
987
|
{
|
1152
988
|
"length": 20,
|
1153
|
-
"start":
|
1154
|
-
},
|
1155
|
-
{
|
1156
|
-
"length": 20,
|
1157
|
-
"start": 7204
|
1158
|
-
},
|
1159
|
-
{
|
1160
|
-
"length": 20,
|
1161
|
-
"start": 7328
|
1162
|
-
},
|
1163
|
-
{
|
1164
|
-
"length": 20,
|
1165
|
-
"start": 9124
|
1166
|
-
},
|
1167
|
-
{
|
1168
|
-
"length": 20,
|
1169
|
-
"start": 9771
|
1170
|
-
},
|
1171
|
-
{
|
1172
|
-
"length": 20,
|
1173
|
-
"start": 9872
|
1174
|
-
},
|
1175
|
-
{
|
1176
|
-
"length": 20,
|
1177
|
-
"start": 10542
|
1178
|
-
},
|
1179
|
-
{
|
1180
|
-
"length": 20,
|
1181
|
-
"start": 10650
|
1182
|
-
},
|
1183
|
-
{
|
1184
|
-
"length": 20,
|
1185
|
-
"start": 11477
|
1186
|
-
},
|
1187
|
-
{
|
1188
|
-
"length": 20,
|
1189
|
-
"start": 11622
|
989
|
+
"start": 14714
|
1190
990
|
},
|
1191
991
|
{
|
1192
992
|
"length": 20,
|
1193
|
-
"start":
|
1194
|
-
}
|
1195
|
-
|
1196
|
-
|
1197
|
-
|
1198
|
-
|
993
|
+
"start": 16668
|
994
|
+
}
|
995
|
+
]
|
996
|
+
},
|
997
|
+
"contracts/type/NftId.sol": {
|
998
|
+
"NftIdLib": [
|
1199
999
|
{
|
1200
1000
|
"length": 20,
|
1201
|
-
"start":
|
1001
|
+
"start": 2590
|
1202
1002
|
},
|
1203
1003
|
{
|
1204
1004
|
"length": 20,
|
1205
|
-
"start":
|
1005
|
+
"start": 5737
|
1206
1006
|
},
|
1207
1007
|
{
|
1208
1008
|
"length": 20,
|
1209
|
-
"start":
|
1009
|
+
"start": 9945
|
1210
1010
|
},
|
1211
1011
|
{
|
1212
1012
|
"length": 20,
|
1213
|
-
"start":
|
1013
|
+
"start": 12559
|
1214
1014
|
}
|
1215
1015
|
]
|
1216
1016
|
},
|
1217
|
-
"contracts/type/
|
1218
|
-
"
|
1017
|
+
"contracts/type/RoleId.sol": {
|
1018
|
+
"RoleIdLib": [
|
1219
1019
|
{
|
1220
1020
|
"length": 20,
|
1221
|
-
"start":
|
1222
|
-
}
|
1021
|
+
"start": 3888
|
1022
|
+
}
|
1023
|
+
]
|
1024
|
+
},
|
1025
|
+
"contracts/type/StateId.sol": {
|
1026
|
+
"StateIdLib": [
|
1223
1027
|
{
|
1224
1028
|
"length": 20,
|
1225
|
-
"start":
|
1029
|
+
"start": 1711
|
1226
1030
|
}
|
1227
1031
|
]
|
1228
1032
|
},
|
@@ -1230,43 +1034,43 @@
|
|
1230
1034
|
"TimestampLib": [
|
1231
1035
|
{
|
1232
1036
|
"length": 20,
|
1233
|
-
"start":
|
1037
|
+
"start": 1365
|
1234
1038
|
},
|
1235
1039
|
{
|
1236
1040
|
"length": 20,
|
1237
|
-
"start":
|
1041
|
+
"start": 2076
|
1238
1042
|
},
|
1239
1043
|
{
|
1240
1044
|
"length": 20,
|
1241
|
-
"start":
|
1045
|
+
"start": 4800
|
1242
1046
|
},
|
1243
1047
|
{
|
1244
1048
|
"length": 20,
|
1245
|
-
"start":
|
1049
|
+
"start": 4899
|
1246
1050
|
},
|
1247
1051
|
{
|
1248
1052
|
"length": 20,
|
1249
|
-
"start":
|
1053
|
+
"start": 5100
|
1250
1054
|
},
|
1251
1055
|
{
|
1252
1056
|
"length": 20,
|
1253
|
-
"start":
|
1057
|
+
"start": 5228
|
1254
1058
|
},
|
1255
1059
|
{
|
1256
1060
|
"length": 20,
|
1257
|
-
"start":
|
1061
|
+
"start": 9040
|
1258
1062
|
},
|
1259
1063
|
{
|
1260
1064
|
"length": 20,
|
1261
|
-
"start":
|
1262
|
-
}
|
1263
|
-
|
1264
|
-
|
1265
|
-
|
1266
|
-
|
1065
|
+
"start": 9745
|
1066
|
+
},
|
1067
|
+
{
|
1068
|
+
"length": 20,
|
1069
|
+
"start": 12065
|
1070
|
+
},
|
1267
1071
|
{
|
1268
1072
|
"length": 20,
|
1269
|
-
"start":
|
1073
|
+
"start": 12308
|
1270
1074
|
}
|
1271
1075
|
]
|
1272
1076
|
},
|
@@ -1274,25 +1078,25 @@
|
|
1274
1078
|
"VersionLib": [
|
1275
1079
|
{
|
1276
1080
|
"length": 20,
|
1277
|
-
"start":
|
1278
|
-
},
|
1279
|
-
{
|
1280
|
-
"length": 20,
|
1281
|
-
"start": 4335
|
1081
|
+
"start": 2436
|
1282
1082
|
},
|
1283
1083
|
{
|
1284
1084
|
"length": 20,
|
1285
|
-
"start":
|
1085
|
+
"start": 2941
|
1286
1086
|
},
|
1287
1087
|
{
|
1288
1088
|
"length": 20,
|
1289
|
-
"start":
|
1089
|
+
"start": 10642
|
1290
1090
|
}
|
1291
1091
|
],
|
1292
1092
|
"VersionPartLib": [
|
1293
1093
|
{
|
1294
1094
|
"length": 20,
|
1295
|
-
"start":
|
1095
|
+
"start": 3936
|
1096
|
+
},
|
1097
|
+
{
|
1098
|
+
"length": 20,
|
1099
|
+
"start": 16433
|
1296
1100
|
}
|
1297
1101
|
]
|
1298
1102
|
}
|