@etherisc/gif-next 0.0.2-d408403-475 → 0.0.2-d442a8c-593
Sign up to get free protection for your applications and to get access to all the features.
- package/README.md +239 -39
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.dbg.json +4 -0
- package/artifacts/contracts/distribution/Distribution.sol/Distribution.json +1416 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.dbg.json +4 -0
- package/artifacts/contracts/distribution/DistributionService.sol/DistributionService.json +1349 -0
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +4 -0
- package/artifacts/contracts/distribution/DistributionServiceManager.sol/DistributionServiceManager.json +818 -0
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.dbg.json +4 -0
- package/artifacts/contracts/distribution/IDistributionComponent.sol/IDistributionComponent.json +975 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.dbg.json +4 -0
- package/artifacts/contracts/distribution/IDistributionService.sol/IDistributionService.json +814 -0
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +4 -0
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +778 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +304 -1639
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +650 -0
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +469 -1882
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAdmin.sol/InstanceAdmin.json +708 -0
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceAuthorizationsLib.sol/InstanceAuthorizationsLib.json +204 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +1565 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +1053 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +734 -0
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.dbg.json +4 -0
- package/artifacts/contracts/instance/InstanceStore.sol/InstanceStore.json +3458 -0
- 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 +4 -0
- package/artifacts/contracts/instance/base/Cloneable.sol/Cloneable.json +190 -0
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.dbg.json +4 -0
- package/artifacts/contracts/instance/base/ObjectManager.sol/ObjectManager.json +256 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +129 -0
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{bundle/IBundle.sol → IBundle.sol}/IBundle.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
- package/artifacts/contracts/instance/{base/ModuleBase.sol/ModuleBase.json → module/IComponents.sol/IComponents.json} +2 -2
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{distribution/IDistribution.sol → IDistribution.sol}/IDistribution.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{policy/IPolicy.sol → IPolicy.sol}/IPolicy.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +4 -0
- package/artifacts/contracts/instance/module/{risk/IRisk.sol → IRisk.sol}/IRisk.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/pool/BundleService.sol/BundleService.dbg.json +4 -0
- package/artifacts/contracts/pool/BundleService.sol/BundleService.json +1105 -0
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.dbg.json +4 -0
- package/artifacts/contracts/pool/BundleServiceManager.sol/BundleServiceManager.json +746 -0
- package/artifacts/contracts/pool/IBundleService.sol/IBundleService.dbg.json +4 -0
- package/artifacts/contracts/{instance/service/IProductService.sol/IProductService.json → pool/IBundleService.sol/IBundleService.json} +376 -316
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.dbg.json +4 -0
- package/artifacts/contracts/pool/IPoolComponent.sol/IPoolComponent.json +1154 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.dbg.json +4 -0
- package/artifacts/contracts/pool/IPoolService.sol/IPoolService.json +1065 -0
- package/artifacts/contracts/pool/Pool.sol/Pool.dbg.json +4 -0
- package/artifacts/contracts/pool/Pool.sol/Pool.json +1565 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolService.sol/PoolService.json +1432 -0
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.dbg.json +4 -0
- package/artifacts/contracts/pool/PoolServiceManager.sol/PoolServiceManager.json +738 -0
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.dbg.json +4 -0
- package/artifacts/contracts/product/ApplicationService.sol/ApplicationService.json +834 -0
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ApplicationServiceManager.sol/ApplicationServiceManager.json +722 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.dbg.json +4 -0
- package/artifacts/contracts/product/ClaimService.sol/ClaimService.json +1278 -0
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ClaimServiceManager.sol/ClaimServiceManager.json +810 -0
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.dbg.json +4 -0
- package/artifacts/contracts/product/IApplicationService.sol/IApplicationService.json +499 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.dbg.json +4 -0
- package/artifacts/contracts/product/IClaimService.sol/IClaimService.json +759 -0
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.dbg.json +4 -0
- package/artifacts/contracts/product/IPolicyService.sol/IPolicyService.json +707 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.dbg.json +4 -0
- package/artifacts/contracts/product/IPricingService.sol/IPricingService.json +536 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.dbg.json +4 -0
- package/artifacts/contracts/product/IProductComponent.sol/IProductComponent.json +995 -0
- package/artifacts/contracts/product/IProductService.sol/IProductService.dbg.json +4 -0
- package/artifacts/contracts/{instance/base/InstanceBase.sol/InstanceBase.json → product/IProductService.sol/IProductService.json} +188 -177
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyService.sol/PolicyService.json +1146 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/PolicyServiceManager.sol/PolicyServiceManager.json +754 -0
- package/artifacts/contracts/product/PricingService.sol/PricingService.dbg.json +4 -0
- package/artifacts/contracts/product/PricingService.sol/PricingService.json +983 -0
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/PricingServiceManager.sol/PricingServiceManager.json +778 -0
- package/artifacts/contracts/product/Product.sol/Product.dbg.json +4 -0
- package/artifacts/contracts/product/Product.sol/Product.json +1397 -0
- package/artifacts/contracts/product/ProductService.sol/ProductService.dbg.json +4 -0
- package/artifacts/contracts/product/ProductService.sol/ProductService.json +679 -0
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.dbg.json +4 -0
- package/artifacts/contracts/product/ProductServiceManager.sol/ProductServiceManager.json +694 -0
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +199 -12
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +678 -77
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +1110 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +4 -0
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +52 -0
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +865 -107
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryAdmin.sol/RegistryAdmin.json +407 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +1415 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +4 -0
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +709 -0
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +4 -0
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +1292 -0
- package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.dbg.json +4 -0
- package/artifacts/contracts/registry/ServiceAuthorizationsLib.sol/ServiceAuthorizationsLib.json +137 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +4 -0
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +661 -0
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.dbg.json +4 -0
- package/artifacts/contracts/shared/AccessManagerCustom.sol/AccessManagerCustom.json +1193 -0
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.dbg.json +4 -0
- package/artifacts/contracts/shared/AccessManagerExtended.sol/AccessManagerExtended.json +1715 -0
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.dbg.json +4 -0
- package/artifacts/contracts/shared/AccessManagerExtendedInitializeable.sol/AccessManagerExtendedInitializeable.json +1728 -0
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.dbg.json +4 -0
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisable.sol/AccessManagerExtendedWithDisable.json +1806 -0
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.dbg.json +4 -0
- package/artifacts/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol/AccessManagerExtendedWithDisableInitializeable.json +1824 -0
- package/artifacts/contracts/shared/Component.sol/Component.dbg.json +4 -0
- package/artifacts/contracts/shared/Component.sol/Component.json +896 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentService.sol/ComponentService.json +1475 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentServiceManager.sol/ComponentServiceManager.json +788 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.dbg.json +4 -0
- package/artifacts/contracts/shared/ComponentVerifyingService.sol/ComponentVerifyingService.json +526 -0
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.json +41 -3
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.dbg.json +4 -0
- package/artifacts/contracts/shared/IAccessManagerExtended.sol/IAccessManagerExtended.json +1562 -0
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.dbg.json +4 -0
- package/artifacts/contracts/shared/IAccessManagerExtendedWithDisable.sol/IAccessManagerExtendedWithDisable.json +1600 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponent.sol/IComponent.json +631 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.dbg.json +4 -0
- package/artifacts/contracts/shared/IComponentService.sol/IComponentService.json +860 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/IInstanceLinkedComponent.sol/IInstanceLinkedComponent.json +705 -0
- package/artifacts/contracts/shared/IKeyValueStore.sol/IKeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/{instance/base → shared}/IKeyValueStore.sol/IKeyValueStore.json +77 -169
- package/artifacts/contracts/shared/ILifecycle.sol/ILifecycle.dbg.json +4 -0
- package/artifacts/contracts/{instance/base → shared}/ILifecycle.sol/ILifecycle.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +4 -0
- package/artifacts/contracts/{instance/module/component/IComponent.sol/IComponentModule.json → shared/INftOwnable.sol/INftOwnable.json} +66 -52
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.json +207 -0
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.json +91 -31
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/{registry → shared}/IRegistryLinked.sol/IRegistryLinked.json +13 -2
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +4 -0
- package/artifacts/contracts/{instance/service/IDistributionService.sol/IDistributionService.json → shared/IService.sol/IService.json} +162 -154
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +16 -125
- 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/InstanceLinkedComponent.sol/InstanceLinkedComponent.dbg.json +4 -0
- package/artifacts/contracts/shared/InstanceLinkedComponent.sol/InstanceLinkedComponent.json +1036 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.dbg.json +4 -0
- package/artifacts/contracts/shared/KeyValueStore.sol/KeyValueStore.json +571 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.dbg.json +4 -0
- package/artifacts/contracts/shared/Lifecycle.sol/Lifecycle.json +194 -0
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.dbg.json +4 -0
- package/artifacts/contracts/shared/NftIdSetManager.sol/NftIdSetManager.json +306 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +4 -0
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +244 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +4 -0
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +320 -0
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +4 -0
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +617 -0
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +255 -23
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +4 -0
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +71 -0
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +4 -0
- package/artifacts/contracts/{registry/IChainNft.sol/IChainNft.json → shared/Service.sol/Service.json} +260 -218
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +4 -0
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +150 -0
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +4 -0
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +129 -0
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +29 -115
- 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 +4 -0
- package/artifacts/contracts/staking/IStakingService.sol/IStakingService.json +993 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/StakeManagerLib.sol/StakeManagerLib.json +444 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.dbg.json +4 -0
- package/artifacts/contracts/staking/Staking.sol/Staking.json +2045 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingManager.sol/StakingManager.json +777 -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 +4 -0
- package/artifacts/contracts/staking/StakingService.sol/StakingService.json +1324 -0
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingServiceManager.sol/StakingServiceManager.json +726 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.dbg.json +4 -0
- package/artifacts/contracts/staking/StakingStore.sol/StakingStore.json +2189 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.dbg.json +4 -0
- package/artifacts/contracts/staking/TargetManagerLib.sol/TargetManagerLib.json +571 -0
- package/artifacts/contracts/type/AddressSet.sol/LibAddressSet.dbg.json +4 -0
- package/artifacts/contracts/{types → type}/AddressSet.sol/LibAddressSet.json +3 -3
- package/artifacts/contracts/type/Amount.sol/AmountLib.dbg.json +4 -0
- package/artifacts/contracts/type/Amount.sol/AmountLib.json +345 -0
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.dbg.json +4 -0
- package/artifacts/contracts/type/Blocknumber.sol/BlocknumberLib.json +225 -0
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/ClaimId.sol/ClaimIdLib.json +179 -0
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.dbg.json +4 -0
- package/artifacts/contracts/type/DistributorType.sol/DistributorTypeLib.json +104 -0
- package/artifacts/contracts/type/Fee.sol/FeeLib.dbg.json +4 -0
- package/artifacts/contracts/type/Fee.sol/FeeLib.json +312 -0
- package/artifacts/contracts/type/Key32.sol/Key32Lib.dbg.json +4 -0
- package/artifacts/contracts/type/Key32.sol/Key32Lib.json +125 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/NftId.sol/NftIdLib.json +209 -0
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.dbg.json +4 -0
- package/artifacts/contracts/type/NftIdSet.sol/LibNftIdSet.json +33 -0
- package/artifacts/contracts/type/ObjectType.sol/ObjectTypeLib.dbg.json +4 -0
- package/artifacts/contracts/{types → type}/ObjectType.sol/ObjectTypeLib.json +3 -3
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/PayoutId.sol/PayoutIdLib.json +209 -0
- package/artifacts/contracts/type/Referral.sol/ReferralLib.dbg.json +4 -0
- package/artifacts/contracts/type/Referral.sol/ReferralLib.json +142 -0
- package/artifacts/contracts/type/RiskId.sol/RiskIdLib.dbg.json +4 -0
- package/artifacts/contracts/{types → type}/RiskId.sol/RiskIdLib.json +5 -5
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.dbg.json +4 -0
- package/artifacts/contracts/type/RoleId.sol/RoleIdLib.json +156 -0
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.dbg.json +4 -0
- package/artifacts/contracts/type/Seconds.sol/SecondsLib.json +198 -0
- package/artifacts/contracts/type/StateId.sol/StateIdLib.dbg.json +4 -0
- package/artifacts/contracts/{types → type}/StateId.sol/StateIdLib.json +3 -3
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.dbg.json +4 -0
- package/artifacts/contracts/type/Timestamp.sol/TimestampLib.json +280 -0
- package/artifacts/contracts/type/UFixed.sol/MathLib.dbg.json +4 -0
- package/artifacts/contracts/{types/ChainId.sol/ChainIdLib.json → type/UFixed.sol/MathLib.json} +4 -4
- package/artifacts/contracts/type/UFixed.sol/UFixedLib.dbg.json +4 -0
- package/artifacts/contracts/{types/UFixed.sol/UFixedMathLib.json → type/UFixed.sol/UFixedLib.json} +4 -4
- package/artifacts/contracts/type/Version.sol/VersionLib.dbg.json +4 -0
- package/artifacts/contracts/type/Version.sol/VersionLib.json +177 -0
- package/artifacts/contracts/type/Version.sol/VersionPartLib.dbg.json +4 -0
- package/artifacts/contracts/type/Version.sol/VersionPartLib.json +49 -0
- package/contracts/distribution/Distribution.sol +261 -0
- package/contracts/distribution/DistributionService.sol +298 -0
- package/contracts/distribution/DistributionServiceManager.sol +42 -0
- package/contracts/distribution/IDistributionComponent.sol +66 -0
- package/contracts/distribution/IDistributionService.sol +81 -0
- package/contracts/instance/BundleManager.sol +126 -0
- package/contracts/instance/IInstance.sol +72 -46
- package/contracts/instance/IInstanceService.sol +81 -0
- package/contracts/instance/Instance.sol +220 -59
- package/contracts/instance/InstanceAdmin.sol +331 -0
- package/contracts/instance/InstanceAuthorizationsLib.sol +349 -0
- package/contracts/instance/InstanceReader.sol +365 -0
- package/contracts/instance/InstanceService.sol +362 -0
- package/contracts/instance/InstanceServiceManager.sol +44 -0
- package/contracts/instance/InstanceStore.sol +260 -0
- package/contracts/instance/base/BalanceStore.sol +118 -0
- package/contracts/instance/base/Cloneable.sol +51 -0
- package/contracts/instance/base/ObjectManager.sol +82 -0
- package/contracts/instance/module/IAccess.sol +46 -0
- package/contracts/instance/module/IBundle.sol +20 -0
- package/contracts/instance/module/IComponents.sol +52 -0
- package/contracts/instance/module/IDistribution.sol +42 -0
- package/contracts/instance/module/IPolicy.sol +84 -0
- package/contracts/instance/module/IRisk.sol +11 -0
- package/contracts/{test/Usdc.sol → mock/Dip.sol} +5 -5
- package/contracts/pool/BundleService.sol +296 -0
- package/contracts/pool/BundleServiceManager.sol +42 -0
- package/contracts/pool/IBundleService.sol +106 -0
- package/contracts/pool/IPoolComponent.sol +112 -0
- package/contracts/pool/IPoolService.sol +150 -0
- package/contracts/pool/Pool.sol +299 -0
- package/contracts/pool/PoolService.sol +453 -0
- package/contracts/pool/PoolServiceManager.sol +42 -0
- package/contracts/product/ApplicationService.sol +254 -0
- package/contracts/product/ApplicationServiceManager.sol +38 -0
- package/contracts/product/ClaimService.sol +442 -0
- package/contracts/product/ClaimServiceManager.sol +38 -0
- package/contracts/product/IApplicationService.sol +62 -0
- package/contracts/product/IClaimService.sol +93 -0
- package/contracts/product/IPolicyService.sol +78 -0
- package/contracts/product/IPricingService.sol +39 -0
- package/contracts/product/IProductComponent.sol +42 -0
- package/contracts/product/IProductService.sol +33 -0
- package/contracts/product/PolicyService.sol +475 -0
- package/contracts/product/PolicyServiceManager.sol +42 -0
- package/contracts/product/PricingService.sol +301 -0
- package/contracts/product/PricingServiceManager.sol +42 -0
- package/contracts/product/Product.sol +377 -0
- package/contracts/product/ProductService.sol +124 -0
- package/contracts/product/ProductServiceManager.sol +42 -0
- package/contracts/registry/ChainNft.sol +95 -37
- package/contracts/registry/IRegistry.sol +95 -28
- package/contracts/registry/IRegistryService.sol +69 -0
- package/contracts/registry/ITransferInterceptor.sol +7 -0
- package/contracts/registry/Registry.sol +476 -282
- package/contracts/registry/RegistryAdmin.sol +237 -0
- package/contracts/registry/RegistryService.sol +266 -0
- package/contracts/registry/RegistryServiceManager.sol +58 -0
- package/contracts/registry/ReleaseManager.sol +599 -0
- package/contracts/registry/ServiceAuthorizationsLib.sol +173 -0
- package/contracts/registry/TokenRegistry.sol +315 -0
- package/contracts/shared/AccessManagerCustom.sol +736 -0
- package/contracts/shared/AccessManagerExtended.sol +470 -0
- package/contracts/shared/AccessManagerExtendedInitializeable.sol +13 -0
- package/contracts/shared/AccessManagerExtendedWithDisable.sol +137 -0
- package/contracts/shared/AccessManagerExtendedWithDisableInitializeable.sol +14 -0
- package/contracts/shared/Component.sol +278 -0
- package/contracts/shared/ComponentService.sol +596 -0
- package/contracts/shared/ComponentServiceManager.sol +35 -0
- package/contracts/shared/ComponentVerifyingService.sol +111 -0
- package/contracts/shared/ERC165.sol +15 -9
- package/contracts/shared/IAccessManagerExtended.sol +74 -0
- package/contracts/shared/IAccessManagerExtendedWithDisable.sol +18 -0
- package/contracts/shared/IComponent.sol +70 -0
- package/contracts/shared/IComponentService.sol +91 -0
- package/contracts/shared/IInstanceLinkedComponent.sol +46 -0
- package/contracts/shared/IKeyValueStore.sol +53 -0
- package/contracts/{instance/base → shared}/ILifecycle.sol +4 -4
- package/contracts/shared/INftOwnable.sol +23 -0
- package/contracts/shared/IPolicyHolder.sol +45 -0
- package/contracts/shared/IRegisterable.sol +10 -19
- package/contracts/shared/IRegistryLinked.sol +11 -0
- package/contracts/shared/IService.sol +18 -0
- package/contracts/shared/IVersionable.sol +38 -37
- package/contracts/shared/InitializableCustom.sol +177 -0
- package/contracts/shared/InstanceLinkedComponent.sol +144 -0
- package/contracts/shared/KeyValueStore.sol +127 -0
- package/contracts/{instance/base → shared}/Lifecycle.sol +29 -8
- package/contracts/shared/NftIdSetManager.sol +65 -0
- package/contracts/shared/NftOwnable.sol +107 -0
- package/contracts/shared/PolicyHolder.sol +102 -0
- package/contracts/shared/ProxyManager.sol +199 -0
- package/contracts/shared/Registerable.sol +54 -65
- package/contracts/shared/RegistryLinked.sol +43 -0
- package/contracts/shared/Service.sol +77 -0
- package/contracts/shared/TokenHandler.sol +58 -0
- package/contracts/shared/UpgradableProxyWithAdmin.sol +16 -0
- package/contracts/shared/Versionable.sol +38 -68
- package/contracts/staking/IStaking.sol +168 -0
- package/contracts/staking/IStakingService.sol +149 -0
- package/contracts/staking/StakeManagerLib.sol +179 -0
- package/contracts/staking/Staking.sol +551 -0
- package/contracts/staking/StakingManager.sol +54 -0
- package/contracts/staking/StakingReader.sol +187 -0
- package/contracts/staking/StakingService.sol +406 -0
- package/contracts/staking/StakingServiceManager.sol +45 -0
- package/contracts/staking/StakingStore.sol +572 -0
- package/contracts/staking/TargetManagerLib.sol +207 -0
- package/contracts/{types → type}/AddressSet.sol +1 -1
- package/contracts/type/Amount.sol +128 -0
- package/contracts/{types → type}/Blocknumber.sol +21 -3
- package/contracts/type/ClaimId.sol +75 -0
- package/contracts/type/DistributorType.sol +55 -0
- package/contracts/type/Fee.sol +66 -0
- package/contracts/{types → type}/Key32.sol +8 -3
- package/contracts/{types → type}/NftId.sol +21 -15
- package/contracts/type/NftIdSet.sol +62 -0
- package/contracts/{types → type}/ObjectType.sol +53 -15
- package/contracts/type/PayoutId.sol +82 -0
- package/contracts/type/Referral.sol +89 -0
- package/contracts/{types → type}/RiskId.sol +1 -1
- package/contracts/type/RoleId.sol +143 -0
- package/contracts/type/Seconds.sol +81 -0
- package/contracts/{types → type}/StateId.sol +29 -7
- package/contracts/{types → type}/Timestamp.sol +22 -13
- package/contracts/{types → type}/UFixed.sol +129 -12
- package/contracts/{types → type}/Version.sol +15 -2
- package/package.json +6 -5
- package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.dbg.json +0 -4
- package/artifacts/contracts/components/BaseComponent.sol/BaseComponent.json +0 -174
- package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +0 -4
- package/artifacts/contracts/components/Distribution.sol/Distribution.json +0 -405
- package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IBaseComponent.sol/IBaseComponent.json +0 -174
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +0 -340
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +0 -487
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +0 -4
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +0 -370
- package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +0 -4
- package/artifacts/contracts/components/Pool.sol/Pool.json +0 -578
- package/artifacts/contracts/components/Product.sol/Product.dbg.json +0 -4
- package/artifacts/contracts/components/Product.sol/Product.json +0 -444
- package/artifacts/contracts/experiment/errors/Require.sol/Require.dbg.json +0 -4
- package/artifacts/contracts/experiment/errors/Require.sol/Require.json +0 -105
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.dbg.json +0 -4
- package/artifacts/contracts/experiment/errors/Revert.sol/Revert.json +0 -105
- package/artifacts/contracts/experiment/inheritance/A.sol/A.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/A.sol/A.json +0 -128
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/A.sol/AShared.json +0 -42
- package/artifacts/contracts/experiment/inheritance/B.sol/B.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/B.sol/B.json +0 -76
- package/artifacts/contracts/experiment/inheritance/C.sol/C.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/C.sol/C.json +0 -89
- package/artifacts/contracts/experiment/inheritance/IA.sol/IA.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IA.sol/IA.json +0 -128
- package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IA.sol/ISharedA.json +0 -37
- package/artifacts/contracts/experiment/inheritance/IB.sol/IB.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IB.sol/IB.json +0 -50
- package/artifacts/contracts/experiment/inheritance/IC.sol/IC.dbg.json +0 -4
- package/artifacts/contracts/experiment/inheritance/IC.sol/IC.json +0 -63
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/Dummy.sol/LifeCycleModule.json +0 -59
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISM.json +0 -124
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/ISM.sol/ISMEE.json +0 -74
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/SM.sol/SM.json +0 -124
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.dbg.json +0 -4
- package/artifacts/contracts/experiment/statemachine/SimpleStateMachine.sol/SimpleStateMachine.json +0 -207
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.dbg.json +0 -4
- package/artifacts/contracts/experiment/types/TypeA.sol/TypeALib.json +0 -10
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.dbg.json +0 -4
- package/artifacts/contracts/experiment/types/TypeB.sol/TypeBLib.json +0 -10
- package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.dbg.json +0 -4
- package/artifacts/contracts/instance/IInstanceLinked.sol/IInstanceLinked.json +0 -24
- package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ComponentServiceBase.sol/ComponentServiceBase.json +0 -300
- package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/base/IInstanceBase.sol/IInstanceBase.json +0 -113
- 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/IService.sol/IService.dbg.json +0 -4
- package/artifacts/contracts/instance/base/IService.sol/IService.json +0 -300
- package/artifacts/contracts/instance/base/InstanceBase.sol/InstanceBase.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 -710
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +0 -4
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +0 -169
- package/artifacts/contracts/instance/base/ModuleBase.sol/ModuleBase.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.dbg.json +0 -4
- package/artifacts/contracts/instance/base/ServiceBase.sol/ServiceBase.json +0 -300
- package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/Access.sol/AccessModule.json +0 -333
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccess.json +0 -10
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/access/IAccess.sol/IAccessModule.json +0 -333
- package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/bundle/BundleModule.sol/BundleModule.json +0 -297
- package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundle.dbg.json +0 -4
- package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/bundle/IBundle.sol/IBundleModule.json +0 -297
- package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/component/ComponentModule.sol/ComponentModule.json +0 -117
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.dbg.json +0 -4
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponent.json +0 -10
- package/artifacts/contracts/instance/module/component/IComponent.sol/IComponentModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/distribution/DistributionModule.sol/DistributionModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/distribution/DistributionModule.sol/DistributionModule.json +0 -10
- package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistribution.dbg.json +0 -4
- package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistributionModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/distribution/IDistribution.sol/IDistributionModule.json +0 -10
- package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicy.dbg.json +0 -4
- package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/policy/IPolicy.sol/IPolicyModule.json +0 -284
- package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/policy/PolicyModule.sol/PolicyModule.json +0 -284
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.dbg.json +0 -4
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPool.json +0 -10
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/pool/IPoolModule.sol/IPoolModule.json +0 -144
- package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/pool/PoolModule.sol/PoolModule.json +0 -144
- package/artifacts/contracts/instance/module/risk/IRisk.sol/IRisk.dbg.json +0 -4
- package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/risk/IRisk.sol/IRiskModule.json +0 -113
- package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/risk/RiskModule.sol/RiskModule.json +0 -131
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasury.json +0 -10
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/ITreasury.sol/ITreasuryModule.json +0 -511
- package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/TokenHandler.sol/TokenHandler.json +0 -76
- package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.dbg.json +0 -4
- package/artifacts/contracts/instance/module/treasury/TreasuryModule.sol/TreasuryModule.json +0 -511
- package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/ComponentOwnerService.sol/ComponentOwnerService.json +0 -531
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +0 -420
- package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/IComponentOwnerService.sol/IComponentOwnerService.json +0 -364
- package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +0 -440
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +0 -543
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +0 -4
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +0 -858
- package/artifacts/contracts/registry/IChainNft.sol/IChainNft.dbg.json +0 -4
- package/artifacts/contracts/registry/IRegistryLinked.sol/IRegistryLinked.dbg.json +0 -4
- package/artifacts/contracts/shared/IOwnable.sol/IOwnable.dbg.json +0 -4
- package/artifacts/contracts/shared/IOwnable.sol/IOwnable.json +0 -24
- package/artifacts/contracts/test/TestDistribution.sol/TestDistribution.dbg.json +0 -4
- package/artifacts/contracts/test/TestDistribution.sol/TestDistribution.json +0 -405
- package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +0 -4
- package/artifacts/contracts/test/TestFee.sol/TestFee.json +0 -119
- package/artifacts/contracts/test/TestPool.sol/TestPool.dbg.json +0 -4
- package/artifacts/contracts/test/TestPool.sol/TestPool.json +0 -578
- package/artifacts/contracts/test/TestProduct.sol/TestProduct.dbg.json +0 -4
- package/artifacts/contracts/test/TestProduct.sol/TestProduct.json +0 -575
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +0 -4
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +0 -137
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +0 -4
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +0 -116
- package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +0 -4
- package/artifacts/contracts/test/TestService.sol/TestService.json +0 -379
- package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +0 -4
- package/artifacts/contracts/test/TestToken.sol/TestUsdc.json +0 -338
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +0 -4
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +0 -218
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +0 -4
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +0 -206
- package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +0 -4
- package/artifacts/contracts/test/Usdc.sol/USDC.json +0 -338
- package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +0 -4
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +0 -4
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +0 -174
- package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +0 -4
- package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +0 -4
- package/artifacts/contracts/types/Fee.sol/FeeLib.json +0 -257
- package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +0 -4
- package/artifacts/contracts/types/Key32.sol/Key32Lib.json +0 -111
- package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +0 -4
- package/artifacts/contracts/types/NftId.sol/NftIdLib.json +0 -153
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +0 -4
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +0 -10
- package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +0 -4
- package/artifacts/contracts/types/ReferralId.sol/ReferralIdLib.dbg.json +0 -4
- package/artifacts/contracts/types/ReferralId.sol/ReferralIdLib.json +0 -99
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +0 -4
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +0 -4
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +0 -30
- package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +0 -4
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +0 -4
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +0 -236
- package/artifacts/contracts/types/UFixed.sol/UFixedMathLib.dbg.json +0 -4
- package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +0 -4
- package/artifacts/contracts/types/Version.sol/VersionLib.json +0 -139
- package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +0 -4
- package/artifacts/contracts/types/Version.sol/VersionPartLib.json +0 -30
- package/contracts/components/BaseComponent.sol +0 -94
- package/contracts/components/Distribution.sol +0 -132
- package/contracts/components/IBaseComponent.sol +0 -19
- package/contracts/components/IDistributionComponent.sol +0 -48
- package/contracts/components/IPoolComponent.sol +0 -71
- package/contracts/components/IProductComponent.sol +0 -38
- package/contracts/components/Pool.sol +0 -235
- package/contracts/components/Product.sol +0 -227
- package/contracts/experiment/errors/Require.sol +0 -38
- package/contracts/experiment/errors/Revert.sol +0 -44
- package/contracts/experiment/inheritance/A.sol +0 -53
- package/contracts/experiment/inheritance/B.sol +0 -28
- package/contracts/experiment/inheritance/C.sol +0 -34
- package/contracts/experiment/inheritance/IA.sol +0 -13
- package/contracts/experiment/inheritance/IB.sol +0 -10
- package/contracts/experiment/inheritance/IC.sol +0 -12
- package/contracts/experiment/statemachine/Dummy.sol +0 -27
- package/contracts/experiment/statemachine/ISM.sol +0 -25
- package/contracts/experiment/statemachine/README.md +0 -112
- package/contracts/experiment/statemachine/SM.sol +0 -57
- package/contracts/experiment/statemachine/SimpleStateMachine.sol +0 -31
- package/contracts/experiment/types/TypeA.sol +0 -47
- package/contracts/experiment/types/TypeB.sol +0 -29
- package/contracts/instance/IInstanceLinked.sol +0 -8
- package/contracts/instance/base/ComponentServiceBase.sol +0 -42
- package/contracts/instance/base/IInstanceBase.sol +0 -22
- package/contracts/instance/base/IKeyValueStore.sol +0 -50
- package/contracts/instance/base/IService.sol +0 -15
- package/contracts/instance/base/InstanceBase.sol +0 -91
- package/contracts/instance/base/KeyValueStore.sol +0 -161
- package/contracts/instance/base/ModuleBase.sol +0 -57
- package/contracts/instance/base/ServiceBase.sol +0 -37
- package/contracts/instance/module/access/Access.sol +0 -149
- package/contracts/instance/module/access/IAccess.sol +0 -53
- package/contracts/instance/module/bundle/BundleModule.sol +0 -134
- package/contracts/instance/module/bundle/IBundle.sol +0 -53
- package/contracts/instance/module/component/ComponentModule.sol +0 -70
- package/contracts/instance/module/component/IComponent.sol +0 -28
- package/contracts/instance/module/distribution/DistributionModule.sol +0 -17
- package/contracts/instance/module/distribution/IDistribution.sol +0 -10
- package/contracts/instance/module/policy/IPolicy.sol +0 -63
- package/contracts/instance/module/policy/PolicyModule.sol +0 -91
- package/contracts/instance/module/pool/IPoolModule.sol +0 -40
- package/contracts/instance/module/pool/PoolModule.sol +0 -90
- package/contracts/instance/module/risk/IRisk.sol +0 -26
- package/contracts/instance/module/risk/RiskModule.sol +0 -62
- package/contracts/instance/module/treasury/ITreasury.sol +0 -82
- package/contracts/instance/module/treasury/TokenHandler.sol +0 -48
- package/contracts/instance/module/treasury/TreasuryModule.sol +0 -138
- package/contracts/instance/service/ComponentOwnerService.sol +0 -157
- package/contracts/instance/service/DistributionService.sol +0 -59
- package/contracts/instance/service/IComponentOwnerService.sol +0 -22
- package/contracts/instance/service/IDistributionService.sol +0 -12
- package/contracts/instance/service/IPoolService.sol +0 -37
- package/contracts/instance/service/IProductService.sol +0 -107
- package/contracts/instance/service/PoolService.sol +0 -149
- package/contracts/instance/service/ProductService.sol +0 -509
- package/contracts/registry/IChainNft.sol +0 -21
- package/contracts/registry/IRegistryLinked.sol +0 -8
- package/contracts/shared/IOwnable.sol +0 -6
- package/contracts/test/TestDistribution.sol +0 -21
- package/contracts/test/TestFee.sol +0 -25
- package/contracts/test/TestPool.sol +0 -25
- package/contracts/test/TestProduct.sol +0 -72
- package/contracts/test/TestRegisterable.sol +0 -19
- package/contracts/test/TestRoleId.sol +0 -14
- package/contracts/test/TestService.sol +0 -32
- package/contracts/test/TestToken.sol +0 -26
- package/contracts/test/TestVersion.sol +0 -44
- package/contracts/test/TestVersionable.sol +0 -17
- package/contracts/types/ChainId.sol +0 -38
- package/contracts/types/Fee.sol +0 -56
- package/contracts/types/NftIdSet.sol +0 -60
- package/contracts/types/ReferralId.sol +0 -48
- package/contracts/types/RoleId.sol +0 -38
@@ -0,0 +1,788 @@
|
|
1
|
+
{
|
2
|
+
"_format": "hh-sol-artifact-1",
|
3
|
+
"contractName": "ComponentServiceManager",
|
4
|
+
"sourceName": "contracts/shared/ComponentServiceManager.sol",
|
5
|
+
"abi": [
|
6
|
+
{
|
7
|
+
"inputs": [
|
8
|
+
{
|
9
|
+
"internalType": "address",
|
10
|
+
"name": "registryAddress",
|
11
|
+
"type": "address"
|
12
|
+
}
|
13
|
+
],
|
14
|
+
"stateMutability": "nonpayable",
|
15
|
+
"type": "constructor"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"inputs": [
|
19
|
+
{
|
20
|
+
"internalType": "NftId",
|
21
|
+
"name": "nftId",
|
22
|
+
"type": "uint96"
|
23
|
+
}
|
24
|
+
],
|
25
|
+
"name": "ErrorNftOwnableAlreadyLinked",
|
26
|
+
"type": "error"
|
27
|
+
},
|
28
|
+
{
|
29
|
+
"inputs": [
|
30
|
+
{
|
31
|
+
"internalType": "address",
|
32
|
+
"name": "contractAddress",
|
33
|
+
"type": "address"
|
34
|
+
}
|
35
|
+
],
|
36
|
+
"name": "ErrorNftOwnableContractNotRegistered",
|
37
|
+
"type": "error"
|
38
|
+
},
|
39
|
+
{
|
40
|
+
"inputs": [],
|
41
|
+
"name": "ErrorNftOwnableInitialOwnerZero",
|
42
|
+
"type": "error"
|
43
|
+
},
|
44
|
+
{
|
45
|
+
"inputs": [
|
46
|
+
{
|
47
|
+
"internalType": "address",
|
48
|
+
"name": "account",
|
49
|
+
"type": "address"
|
50
|
+
}
|
51
|
+
],
|
52
|
+
"name": "ErrorNftOwnableNotOwner",
|
53
|
+
"type": "error"
|
54
|
+
},
|
55
|
+
{
|
56
|
+
"inputs": [
|
57
|
+
{
|
58
|
+
"internalType": "address",
|
59
|
+
"name": "registryAddress",
|
60
|
+
"type": "address"
|
61
|
+
}
|
62
|
+
],
|
63
|
+
"name": "ErrorNotRegistry",
|
64
|
+
"type": "error"
|
65
|
+
},
|
66
|
+
{
|
67
|
+
"inputs": [],
|
68
|
+
"name": "ErrorProxyManagerAlreadyDeployed",
|
69
|
+
"type": "error"
|
70
|
+
},
|
71
|
+
{
|
72
|
+
"inputs": [
|
73
|
+
{
|
74
|
+
"internalType": "Version",
|
75
|
+
"name": "nextVersion",
|
76
|
+
"type": "uint24"
|
77
|
+
}
|
78
|
+
],
|
79
|
+
"name": "ErrorProxyManagerNextVersionNotIncreasing",
|
80
|
+
"type": "error"
|
81
|
+
},
|
82
|
+
{
|
83
|
+
"inputs": [],
|
84
|
+
"name": "ErrorProxyManagerNotYetDeployed",
|
85
|
+
"type": "error"
|
86
|
+
},
|
87
|
+
{
|
88
|
+
"inputs": [],
|
89
|
+
"name": "ErrorProxyManagerZeroVersion",
|
90
|
+
"type": "error"
|
91
|
+
},
|
92
|
+
{
|
93
|
+
"inputs": [],
|
94
|
+
"name": "InvalidInitialization",
|
95
|
+
"type": "error"
|
96
|
+
},
|
97
|
+
{
|
98
|
+
"inputs": [],
|
99
|
+
"name": "NotInitializing",
|
100
|
+
"type": "error"
|
101
|
+
},
|
102
|
+
{
|
103
|
+
"anonymous": false,
|
104
|
+
"inputs": [
|
105
|
+
{
|
106
|
+
"indexed": false,
|
107
|
+
"internalType": "uint64",
|
108
|
+
"name": "version",
|
109
|
+
"type": "uint64"
|
110
|
+
}
|
111
|
+
],
|
112
|
+
"name": "Initialized",
|
113
|
+
"type": "event"
|
114
|
+
},
|
115
|
+
{
|
116
|
+
"anonymous": false,
|
117
|
+
"inputs": [
|
118
|
+
{
|
119
|
+
"indexed": true,
|
120
|
+
"internalType": "address",
|
121
|
+
"name": "proxy",
|
122
|
+
"type": "address"
|
123
|
+
},
|
124
|
+
{
|
125
|
+
"indexed": false,
|
126
|
+
"internalType": "address",
|
127
|
+
"name": "initialImplementation",
|
128
|
+
"type": "address"
|
129
|
+
}
|
130
|
+
],
|
131
|
+
"name": "LogProxyManagerVersionableDeployed",
|
132
|
+
"type": "event"
|
133
|
+
},
|
134
|
+
{
|
135
|
+
"anonymous": false,
|
136
|
+
"inputs": [
|
137
|
+
{
|
138
|
+
"indexed": true,
|
139
|
+
"internalType": "address",
|
140
|
+
"name": "proxy",
|
141
|
+
"type": "address"
|
142
|
+
},
|
143
|
+
{
|
144
|
+
"indexed": false,
|
145
|
+
"internalType": "address",
|
146
|
+
"name": "upgradedImplementation",
|
147
|
+
"type": "address"
|
148
|
+
}
|
149
|
+
],
|
150
|
+
"name": "LogProxyManagerVersionableUpgraded",
|
151
|
+
"type": "event"
|
152
|
+
},
|
153
|
+
{
|
154
|
+
"inputs": [],
|
155
|
+
"name": "NFT_OWNABLE_STORAGE_LOCATION_V1",
|
156
|
+
"outputs": [
|
157
|
+
{
|
158
|
+
"internalType": "bytes32",
|
159
|
+
"name": "",
|
160
|
+
"type": "bytes32"
|
161
|
+
}
|
162
|
+
],
|
163
|
+
"stateMutability": "view",
|
164
|
+
"type": "function"
|
165
|
+
},
|
166
|
+
{
|
167
|
+
"inputs": [
|
168
|
+
{
|
169
|
+
"internalType": "address",
|
170
|
+
"name": "initialImplementation",
|
171
|
+
"type": "address"
|
172
|
+
},
|
173
|
+
{
|
174
|
+
"internalType": "bytes",
|
175
|
+
"name": "initializationData",
|
176
|
+
"type": "bytes"
|
177
|
+
}
|
178
|
+
],
|
179
|
+
"name": "deploy",
|
180
|
+
"outputs": [
|
181
|
+
{
|
182
|
+
"internalType": "contract IVersionable",
|
183
|
+
"name": "versionable",
|
184
|
+
"type": "address"
|
185
|
+
}
|
186
|
+
],
|
187
|
+
"stateMutability": "nonpayable",
|
188
|
+
"type": "function"
|
189
|
+
},
|
190
|
+
{
|
191
|
+
"inputs": [
|
192
|
+
{
|
193
|
+
"internalType": "address",
|
194
|
+
"name": "initialImplementation",
|
195
|
+
"type": "address"
|
196
|
+
},
|
197
|
+
{
|
198
|
+
"internalType": "bytes",
|
199
|
+
"name": "initializationData",
|
200
|
+
"type": "bytes"
|
201
|
+
},
|
202
|
+
{
|
203
|
+
"internalType": "bytes32",
|
204
|
+
"name": "salt",
|
205
|
+
"type": "bytes32"
|
206
|
+
}
|
207
|
+
],
|
208
|
+
"name": "deployDetermenistic",
|
209
|
+
"outputs": [
|
210
|
+
{
|
211
|
+
"internalType": "contract IVersionable",
|
212
|
+
"name": "versionable",
|
213
|
+
"type": "address"
|
214
|
+
}
|
215
|
+
],
|
216
|
+
"stateMutability": "nonpayable",
|
217
|
+
"type": "function"
|
218
|
+
},
|
219
|
+
{
|
220
|
+
"inputs": [],
|
221
|
+
"name": "getComponentService",
|
222
|
+
"outputs": [
|
223
|
+
{
|
224
|
+
"internalType": "contract ComponentService",
|
225
|
+
"name": "",
|
226
|
+
"type": "address"
|
227
|
+
}
|
228
|
+
],
|
229
|
+
"stateMutability": "view",
|
230
|
+
"type": "function"
|
231
|
+
},
|
232
|
+
{
|
233
|
+
"inputs": [
|
234
|
+
{
|
235
|
+
"internalType": "address",
|
236
|
+
"name": "proxyOwner",
|
237
|
+
"type": "address"
|
238
|
+
},
|
239
|
+
{
|
240
|
+
"internalType": "bytes",
|
241
|
+
"name": "deployData",
|
242
|
+
"type": "bytes"
|
243
|
+
}
|
244
|
+
],
|
245
|
+
"name": "getDeployData",
|
246
|
+
"outputs": [
|
247
|
+
{
|
248
|
+
"internalType": "bytes",
|
249
|
+
"name": "data",
|
250
|
+
"type": "bytes"
|
251
|
+
}
|
252
|
+
],
|
253
|
+
"stateMutability": "pure",
|
254
|
+
"type": "function"
|
255
|
+
},
|
256
|
+
{
|
257
|
+
"inputs": [],
|
258
|
+
"name": "getNftId",
|
259
|
+
"outputs": [
|
260
|
+
{
|
261
|
+
"internalType": "NftId",
|
262
|
+
"name": "",
|
263
|
+
"type": "uint96"
|
264
|
+
}
|
265
|
+
],
|
266
|
+
"stateMutability": "view",
|
267
|
+
"type": "function"
|
268
|
+
},
|
269
|
+
{
|
270
|
+
"inputs": [],
|
271
|
+
"name": "getOwner",
|
272
|
+
"outputs": [
|
273
|
+
{
|
274
|
+
"internalType": "address",
|
275
|
+
"name": "",
|
276
|
+
"type": "address"
|
277
|
+
}
|
278
|
+
],
|
279
|
+
"stateMutability": "view",
|
280
|
+
"type": "function"
|
281
|
+
},
|
282
|
+
{
|
283
|
+
"inputs": [],
|
284
|
+
"name": "getProxy",
|
285
|
+
"outputs": [
|
286
|
+
{
|
287
|
+
"internalType": "contract UpgradableProxyWithAdmin",
|
288
|
+
"name": "",
|
289
|
+
"type": "address"
|
290
|
+
}
|
291
|
+
],
|
292
|
+
"stateMutability": "view",
|
293
|
+
"type": "function"
|
294
|
+
},
|
295
|
+
{
|
296
|
+
"inputs": [],
|
297
|
+
"name": "getRegistry",
|
298
|
+
"outputs": [
|
299
|
+
{
|
300
|
+
"internalType": "contract IRegistry",
|
301
|
+
"name": "",
|
302
|
+
"type": "address"
|
303
|
+
}
|
304
|
+
],
|
305
|
+
"stateMutability": "view",
|
306
|
+
"type": "function"
|
307
|
+
},
|
308
|
+
{
|
309
|
+
"inputs": [
|
310
|
+
{
|
311
|
+
"internalType": "bytes",
|
312
|
+
"name": "upgradeData",
|
313
|
+
"type": "bytes"
|
314
|
+
}
|
315
|
+
],
|
316
|
+
"name": "getUpgradeData",
|
317
|
+
"outputs": [
|
318
|
+
{
|
319
|
+
"internalType": "bytes",
|
320
|
+
"name": "data",
|
321
|
+
"type": "bytes"
|
322
|
+
}
|
323
|
+
],
|
324
|
+
"stateMutability": "pure",
|
325
|
+
"type": "function"
|
326
|
+
},
|
327
|
+
{
|
328
|
+
"inputs": [],
|
329
|
+
"name": "getVersion",
|
330
|
+
"outputs": [
|
331
|
+
{
|
332
|
+
"internalType": "Version",
|
333
|
+
"name": "",
|
334
|
+
"type": "uint24"
|
335
|
+
}
|
336
|
+
],
|
337
|
+
"stateMutability": "view",
|
338
|
+
"type": "function"
|
339
|
+
},
|
340
|
+
{
|
341
|
+
"inputs": [
|
342
|
+
{
|
343
|
+
"internalType": "uint256",
|
344
|
+
"name": "idx",
|
345
|
+
"type": "uint256"
|
346
|
+
}
|
347
|
+
],
|
348
|
+
"name": "getVersion",
|
349
|
+
"outputs": [
|
350
|
+
{
|
351
|
+
"internalType": "Version",
|
352
|
+
"name": "",
|
353
|
+
"type": "uint24"
|
354
|
+
}
|
355
|
+
],
|
356
|
+
"stateMutability": "view",
|
357
|
+
"type": "function"
|
358
|
+
},
|
359
|
+
{
|
360
|
+
"inputs": [],
|
361
|
+
"name": "getVersionCount",
|
362
|
+
"outputs": [
|
363
|
+
{
|
364
|
+
"internalType": "uint256",
|
365
|
+
"name": "",
|
366
|
+
"type": "uint256"
|
367
|
+
}
|
368
|
+
],
|
369
|
+
"stateMutability": "view",
|
370
|
+
"type": "function"
|
371
|
+
},
|
372
|
+
{
|
373
|
+
"inputs": [
|
374
|
+
{
|
375
|
+
"internalType": "Version",
|
376
|
+
"name": "_version",
|
377
|
+
"type": "uint24"
|
378
|
+
}
|
379
|
+
],
|
380
|
+
"name": "getVersionInfo",
|
381
|
+
"outputs": [
|
382
|
+
{
|
383
|
+
"components": [
|
384
|
+
{
|
385
|
+
"internalType": "Version",
|
386
|
+
"name": "version",
|
387
|
+
"type": "uint24"
|
388
|
+
},
|
389
|
+
{
|
390
|
+
"internalType": "address",
|
391
|
+
"name": "implementation",
|
392
|
+
"type": "address"
|
393
|
+
},
|
394
|
+
{
|
395
|
+
"internalType": "address",
|
396
|
+
"name": "activatedBy",
|
397
|
+
"type": "address"
|
398
|
+
},
|
399
|
+
{
|
400
|
+
"internalType": "Timestamp",
|
401
|
+
"name": "activatedAt",
|
402
|
+
"type": "uint40"
|
403
|
+
},
|
404
|
+
{
|
405
|
+
"internalType": "Blocknumber",
|
406
|
+
"name": "activatedIn",
|
407
|
+
"type": "uint32"
|
408
|
+
}
|
409
|
+
],
|
410
|
+
"internalType": "struct ProxyManager.VersionInfo",
|
411
|
+
"name": "",
|
412
|
+
"type": "tuple"
|
413
|
+
}
|
414
|
+
],
|
415
|
+
"stateMutability": "view",
|
416
|
+
"type": "function"
|
417
|
+
},
|
418
|
+
{
|
419
|
+
"inputs": [],
|
420
|
+
"name": "initializeERC165",
|
421
|
+
"outputs": [],
|
422
|
+
"stateMutability": "nonpayable",
|
423
|
+
"type": "function"
|
424
|
+
},
|
425
|
+
{
|
426
|
+
"inputs": [
|
427
|
+
{
|
428
|
+
"internalType": "address",
|
429
|
+
"name": "initialOwner",
|
430
|
+
"type": "address"
|
431
|
+
},
|
432
|
+
{
|
433
|
+
"internalType": "address",
|
434
|
+
"name": "registryAddress",
|
435
|
+
"type": "address"
|
436
|
+
}
|
437
|
+
],
|
438
|
+
"name": "initializeNftOwnable",
|
439
|
+
"outputs": [],
|
440
|
+
"stateMutability": "nonpayable",
|
441
|
+
"type": "function"
|
442
|
+
},
|
443
|
+
{
|
444
|
+
"inputs": [
|
445
|
+
{
|
446
|
+
"internalType": "address",
|
447
|
+
"name": "registry",
|
448
|
+
"type": "address"
|
449
|
+
}
|
450
|
+
],
|
451
|
+
"name": "initializeProxyManager",
|
452
|
+
"outputs": [],
|
453
|
+
"stateMutability": "nonpayable",
|
454
|
+
"type": "function"
|
455
|
+
},
|
456
|
+
{
|
457
|
+
"inputs": [
|
458
|
+
{
|
459
|
+
"internalType": "address",
|
460
|
+
"name": "registryAddress",
|
461
|
+
"type": "address"
|
462
|
+
}
|
463
|
+
],
|
464
|
+
"name": "initializeRegistryLinked",
|
465
|
+
"outputs": [],
|
466
|
+
"stateMutability": "nonpayable",
|
467
|
+
"type": "function"
|
468
|
+
},
|
469
|
+
{
|
470
|
+
"inputs": [],
|
471
|
+
"name": "linkToProxy",
|
472
|
+
"outputs": [
|
473
|
+
{
|
474
|
+
"internalType": "NftId",
|
475
|
+
"name": "",
|
476
|
+
"type": "uint96"
|
477
|
+
}
|
478
|
+
],
|
479
|
+
"stateMutability": "nonpayable",
|
480
|
+
"type": "function"
|
481
|
+
},
|
482
|
+
{
|
483
|
+
"inputs": [],
|
484
|
+
"name": "linkToRegisteredNftId",
|
485
|
+
"outputs": [
|
486
|
+
{
|
487
|
+
"internalType": "NftId",
|
488
|
+
"name": "nftId",
|
489
|
+
"type": "uint96"
|
490
|
+
}
|
491
|
+
],
|
492
|
+
"stateMutability": "nonpayable",
|
493
|
+
"type": "function"
|
494
|
+
},
|
495
|
+
{
|
496
|
+
"inputs": [
|
497
|
+
{
|
498
|
+
"internalType": "bytes4",
|
499
|
+
"name": "interfaceId",
|
500
|
+
"type": "bytes4"
|
501
|
+
}
|
502
|
+
],
|
503
|
+
"name": "registerInterface",
|
504
|
+
"outputs": [],
|
505
|
+
"stateMutability": "nonpayable",
|
506
|
+
"type": "function"
|
507
|
+
},
|
508
|
+
{
|
509
|
+
"inputs": [
|
510
|
+
{
|
511
|
+
"internalType": "bytes4",
|
512
|
+
"name": "interfaceId",
|
513
|
+
"type": "bytes4"
|
514
|
+
}
|
515
|
+
],
|
516
|
+
"name": "supportsInterface",
|
517
|
+
"outputs": [
|
518
|
+
{
|
519
|
+
"internalType": "bool",
|
520
|
+
"name": "",
|
521
|
+
"type": "bool"
|
522
|
+
}
|
523
|
+
],
|
524
|
+
"stateMutability": "view",
|
525
|
+
"type": "function"
|
526
|
+
},
|
527
|
+
{
|
528
|
+
"inputs": [
|
529
|
+
{
|
530
|
+
"internalType": "address",
|
531
|
+
"name": "newImplementation",
|
532
|
+
"type": "address"
|
533
|
+
},
|
534
|
+
{
|
535
|
+
"internalType": "bytes",
|
536
|
+
"name": "upgradeData",
|
537
|
+
"type": "bytes"
|
538
|
+
}
|
539
|
+
],
|
540
|
+
"name": "upgrade",
|
541
|
+
"outputs": [
|
542
|
+
{
|
543
|
+
"internalType": "contract IVersionable",
|
544
|
+
"name": "versionable",
|
545
|
+
"type": "address"
|
546
|
+
}
|
547
|
+
],
|
548
|
+
"stateMutability": "nonpayable",
|
549
|
+
"type": "function"
|
550
|
+
}
|
551
|
+
],
|
552
|
+
"bytecode": "0x60806040523480156200001157600080fd5b506040516200a1973803806200a197833981016040819052620000349162000b60565b806200004081620000d4565b506000604051620000519062000b44565b604051809103906000f0801580156200006e573d6000803e3d6000fd5b50604080516001600160a01b0385166020820152308183015281518082038301815260609091019091529091506000620000a98383620001f4565b600580546001600160a01b0319166001600160a01b03929092169190911790555062000d0592505050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000810460ff1615906001600160401b03166000811580156200011f5750825b90506000826001600160401b031660011480156200013c5750303b155b9050811580156200014b575080155b156200016a5760405163f92ee8a960e01b815260040160405180910390fd5b84546001600160401b031916600117855583156200019957845460ff60401b1916680100000000000000001785555b620001a5338762000390565b8315620001ec57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b60006200020062000429565b6001600160a01b0316336001600160a01b031614620002395760405163086391f760e31b81523360048201526024015b60405180910390fd5b600454156200025b5760405163402b135f60e11b815260040160405180910390fd5b60006200026762000429565b905030848162000278848762000582565b604051620002869062000b52565b620002949392919062000bda565b604051809103906000f080158015620002b1573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b03929092169182179055604080516303639b8b60e21b8152905191945062000344918591630d8e6e2c9160048083019260209291908290030181865afa15801562000316573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200033c919062000c11565b8684620005dc565b6002546040516001600160a01b038781168252909116907f78922e3fa1abc96399973cb25528ba892214b57da9d1a573937c460d9f5eb4759060200160405180910390a2505092915050565b6200039a62000993565b620003a581620009e4565b620003af62000afc565b6001600160a01b038216620003d75760405163f17ef42d60e01b815260040160405180910390fd5b507f07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f0080546001600160601b03166c010000000000000000000000006001600160a01b0390931692909202919091179055565b6000807f07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f0080546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015620004ac573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620004d2919062000c38565b1562000563576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801562000537573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200055d919062000b60565b91505090565b546c0100000000000000000000000090046001600160a01b0316919050565b60606349bb9e4b60e01b8383604051602401620005a192919062000c5c565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915290505b92915050565b6200065e8373__$8eede297b65ed5a56eb3f84d8232ae93f5$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af41580156200062b573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000651919062000c11565b62ffffff90811691161490565b156200067d576040516348c618db60e01b815260040160405180910390fd5b60045415620007e85760048054620006989060019062000c8a565b81548110620006ab57620006ab62000cac565b60009182526020909120600a80830490910154604051635560100760e01b8152919092066003026101000a90910462ffffff16600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__90635560100790602401602060405180830381865af415801562000720573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000746919062000cc2565b604051635560100760e01b815262ffffff8516600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__90635560100790602401602060405180830381865af41580156200079b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007c1919062000cc2565b11620007e857604051633e614b6d60e11b815262ffffff8416600482015260240162000230565b600480546001810182556000829052600a8082047f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01805462ffffff808916600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b038086166020848101919091529085168383015281516356db0c1960e11b815291519293606085019373__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9363adb6183293818401939092918290030181865af4158015620008bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620008e2919062000cdc565b64ffffffffff90811682524363ffffffff90811660209384015262ffffff968716600090815260038452604090819020855181549587015199166001600160b81b03199095169490941763010000006001600160a01b03998a1602178455840151600190930180546060860151608090960151949098166001600160c81b031990981697909717600160a01b94909216939093021763ffffffff60c81b1916600160c81b9190921602179092555050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a005468010000000000000000900460ff16620009e257604051631afcd79f60e31b815260040160405180910390fd5b565b620009ee62000993565b806001600160a01b03163b60000362000a265760405163fdeac91f60e01b81526001600160a01b038216600482015260240162000230565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263e607072160e01b60048201526301ffc9a790602401602060405180830381865afa92505050801562000aa3575060408051601f3d908101601f1916820190925262000aa09181019062000c38565b60015b62000acd5760405163fdeac91f60e01b81526001600160a01b038216600482015260240162000230565b8062000af85760405163fdeac91f60e01b81526001600160a01b038316600482015260240162000230565b5050565b62000b0662000993565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b615b31806200373783390190565b610f2f806200926883390190565b60006020828403121562000b7357600080fd5b81516001600160a01b038116811462000b8b57600080fd5b9392505050565b6000815180845260005b8181101562000bba5760208185018101518683018201520162000b9c565b506000602082860101526020601f19601f83011685010191505092915050565b6001600160a01b0384811682528316602082015260606040820181905260009062000c089083018462000b92565b95945050505050565b60006020828403121562000c2457600080fd5b815162ffffff8116811462000b8b57600080fd5b60006020828403121562000c4b57600080fd5b8151801515811462000b8b57600080fd5b6001600160a01b038316815260406020820181905260009062000c829083018462000b92565b949350505050565b81810381811115620005d657634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b60006020828403121562000cd557600080fd5b5051919050565b60006020828403121562000cef57600080fd5b815164ffffffffff8116811462000b8b57600080fd5b612a228062000d156000396000f3fe60806040523480156200001157600080fd5b5060043610620001695760003560e01c8063675393bf11620000d3578063ada9652e1162000086578063ada9652e1462000439578063b88da7591462000450578063c987336c1462000467578063e97fac05146200047e578063f7c34ee01462000495578063fd0c63d914620004ac57600080fd5b8063675393bf14620003ca57806367b9cc4a14620003e1578063893d20e814620003f35780638e9afce614620003fd578063933a9ce81462000414578063946dfcfe146200042657600080fd5b80631775564d116200012c5780631775564d146200023e578063214cdb80146200026457806336fc697e146200027b5780634d459c9014620002855780635ab1bd531462000398578063644c45e014620003aa57600080fd5b806301ffc9a7146200016e578063058f7a9714620001b357806307484e8014620001cc5780630d8e6e2c14620001fc578063138461e0146200021b575b600080fd5b6200019e6200017f36600462001645565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b620001ca620001c43660046200168e565b620004b6565b005b620001e3620001dd36600462001759565b620005cf565b6040516001600160a01b039091168152602001620001aa565b6200020662000771565b60405162ffffff9091168152602001620001aa565b62000225620007e7565b6040516001600160601b039091168152602001620001aa565b620002556200024f366004620017b8565b620007f4565b604051620001aa919062001856565b620001ca6200027536600462001645565b6200084e565b620001ca6200087d565b6200033a620002963660046200187d565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525062ffffff908116600090815260036020908152604091829020825160a0810184528154948516815263010000009094046001600160a01b03908116928501929092526001015490811691830191909152600160a01b810464ffffffffff166060830152600160c81b900463ffffffff16608082015290565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001620001aa565b6001546001600160a01b0316620001e3565b600080516020620029cd833981519152546001600160601b031662000225565b620001ca620003db3660046200168e565b620008c5565b6005546001600160a01b0316620001e3565b620001e3620009de565b620002556200040e3660046200189d565b62000b1d565b6002546001600160a01b0316620001e3565b6004545b604051908152602001620001aa565b6200042a600080516020620029cd83398151915281565b6200020662000461366004620018de565b62000b72565b620001e362000478366004620017b8565b62000bb6565b620001e36200048f366004620017b8565b62000df4565b620001ca620004a6366004620018f8565b62000f8c565b620002256200100b565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015620004fd5750825b905060008267ffffffffffffffff1660011480156200051b5750303b155b9050811580156200052a575080155b15620005495760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156200057457845460ff60401b1916600160401b1785555b62000580338762000f8c565b8315620005c757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b6000620005db620009de565b6001600160a01b0316336001600160a01b031614620006145760405163086391f760e31b81523360048201526024015b60405180910390fd5b60045415620006365760405163402b135f60e11b815260040160405180910390fd5b600062000642620009de565b905030838682620006548589620007f4565b604051620006629062001637565b620006709392919062001936565b8190604051809103906000f590508015801562000691573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b03929092169182179055604080516303639b8b60e21b8152905191945062000724918591630d8e6e2c9160048083019260209291908290030181865afa158015620006f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200071c91906200196d565b878462001025565b6002546040516001600160a01b038881168252909116907f78922e3fa1abc96399973cb25528ba892214b57da9d1a573937c460d9f5eb4759060200160405180910390a250509392505050565b600254604080516303639b8b60e21b815290516000926001600160a01b031691630d8e6e2c9160048083019260209291908290030181865afa158015620007bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007e291906200196d565b905090565b6000620007e230620013dc565b60606349bb9e4b60e01b8383604051602401620008139291906200198d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915290505b92915050565b62000858620015eb565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b62000887620015eb565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b620008cf620015eb565b806001600160a01b03163b600003620009075760405163fdeac91f60e01b81526001600160a01b03821660048201526024016200060b565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263e607072160e01b60048201526301ffc9a790602401602060405180830381865afa92505050801562000984575060408051601f3d908101601f191682019092526200098191810190620019b3565b60015b620009ae5760405163fdeac91f60e01b81526001600160a01b03821660048201526024016200060b565b80620009d95760405163fdeac91f60e01b81526001600160a01b03831660048201526024016200060b565b505b50565b600080600080516020620029cd83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af415801562000a50573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a769190620019b3565b1562000b07576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801562000adb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b019190620019d7565b91505090565b54600160601b90046001600160a01b0316919050565b606063329d6e7460e01b8260405160240162000b3a919062001856565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915292915050565b60006004828154811062000b8a5762000b8a620019f7565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b600062000bc2620009de565b6001600160a01b0316336001600160a01b03161462000bf75760405163086391f760e31b81523360048201526024016200060b565b60045460000362000c1b5760405163366dfd2160e21b815260040160405180910390fd5b600062000c27620009de565b9050600062000c3e6002546001600160a01b031690565b6001600160a01b0316638b3240a06040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000c7e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ca49190620019d7565b6002549091506001600160a01b03908116908216639623609d828862000cca8962000b1d565b6040518463ffffffff1660e01b815260040162000cea9392919062001936565b600060405180830381600087803b15801562000d0557600080fd5b505af115801562000d1a573d6000803e3d6000fd5b50505050600260009054906101000a90046001600160a01b0316935062000da7846001600160a01b0316630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000d79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d9f91906200196d565b878562001025565b6002546040516001600160a01b038881168252909116907f1356a2c922be684528fa1759d1808395e5c5010181dd333cdb6f03e2d8545b659060200160405180910390a250505092915050565b600062000e00620009de565b6001600160a01b0316336001600160a01b03161462000e355760405163086391f760e31b81523360048201526024016200060b565b6004541562000e575760405163402b135f60e11b815260040160405180910390fd5b600062000e63620009de565b905030848162000e748487620007f4565b60405162000e829062001637565b62000e909392919062001936565b604051809103906000f08015801562000ead573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b03929092169182179055604080516303639b8b60e21b8152905191945062000f40918591630d8e6e2c9160048083019260209291908290030181865afa15801562000f12573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f3891906200196d565b868462001025565b6002546040516001600160a01b038781168252909116907f78922e3fa1abc96399973cb25528ba892214b57da9d1a573937c460d9f5eb4759060200160405180910390a2505092915050565b62000f96620015eb565b62000fa181620008c5565b62000fab6200087d565b6001600160a01b03821662000fd35760405163f17ef42d60e01b815260040160405180910390fd5b50600080516020620029cd83398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b600254600090620007e2906001600160a01b0316620013dc565b620010a78373__$8eede297b65ed5a56eb3f84d8232ae93f5$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af415801562001074573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200109a91906200196d565b62ffffff90811691161490565b15620010c6576040516348c618db60e01b815260040160405180910390fd5b60045415620012315760048054620010e19060019062001a0d565b81548110620010f457620010f4620019f7565b60009182526020909120600a80830490910154604051635560100760e01b8152919092066003026101000a90910462ffffff16600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__90635560100790602401602060405180830381865af415801562001169573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200118f919062001a2f565b604051635560100760e01b815262ffffff8516600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__90635560100790602401602060405180830381865af4158015620011e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200120a919062001a2f565b116200123157604051633e614b6d60e11b815262ffffff841660048201526024016200060b565b600480546001810182556000829052600a8082047f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01805462ffffff808916600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b038086166020848101919091529085168383015281516356db0c1960e11b815291519293606085019373__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9363adb6183293818401939092918290030181865af415801562001305573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200132b919062001a49565b64ffffffffff90811682524363ffffffff90811660209384015262ffffff968716600090815260038452604090819020855181549587015199166001600160b81b03199095169490941763010000006001600160a01b03998a1602178455840151600190930180546060860151608090960151949098166001600160c81b031990981697909717600160a01b94909216939093021763ffffffff60c81b1916600160c81b9190921602179092555050565b600080600080516020620029cd83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156200144e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620014749190620019b3565b15620014a25780546040516301ab8b6760e21b81526001600160601b0390911660048201526024016200060b565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa158015620014f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200151d9190620019b3565b620015475760405163b9304b0d60e01b81526001600160a01b03841660048201526024016200060b565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038581166004830152919091169063d272ac1e90602401602060405180830381865afa1580156200159c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015c2919062001a72565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166200163557604051631afcd79f60e31b815260040160405180910390fd5b565b610f2f8062001a9e83390190565b6000602082840312156200165857600080fd5b81356001600160e01b0319811681146200167157600080fd5b9392505050565b6001600160a01b0381168114620009db57600080fd5b600060208284031215620016a157600080fd5b8135620016718162001678565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620016d657600080fd5b813567ffffffffffffffff80821115620016f457620016f4620016ae565b604051601f8301601f19908116603f011681019082821181831017156200171f576200171f620016ae565b816040528381528660208588010111156200173957600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000606084860312156200176f57600080fd5b83356200177c8162001678565b9250602084013567ffffffffffffffff8111156200179957600080fd5b620017a786828701620016c4565b925050604084013590509250925092565b60008060408385031215620017cc57600080fd5b8235620017d98162001678565b9150602083013567ffffffffffffffff811115620017f657600080fd5b6200180485828601620016c4565b9150509250929050565b6000815180845260005b81811015620018365760208185018101518683018201520162001818565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006200167160208301846200180e565b62ffffff81168114620009db57600080fd5b6000602082840312156200189057600080fd5b813562001671816200186b565b600060208284031215620018b057600080fd5b813567ffffffffffffffff811115620018c857600080fd5b620018d684828501620016c4565b949350505050565b600060208284031215620018f157600080fd5b5035919050565b600080604083850312156200190c57600080fd5b8235620019198162001678565b915060208301356200192b8162001678565b809150509250929050565b6001600160a01b0384811682528316602082015260606040820181905260009062001964908301846200180e565b95945050505050565b6000602082840312156200198057600080fd5b815162001671816200186b565b6001600160a01b0383168152604060208201819052600090620018d6908301846200180e565b600060208284031215620019c657600080fd5b815180151581146200167157600080fd5b600060208284031215620019ea57600080fd5b8151620016718162001678565b634e487b7160e01b600052603260045260246000fd5b818103818111156200084857634e487b7160e01b600052601160045260246000fd5b60006020828403121562001a4257600080fd5b5051919050565b60006020828403121562001a5c57600080fd5b815164ffffffffff811681146200167157600080fd5b60006020828403121562001a8557600080fd5b81516001600160601b03811681146200167157600080fdfe60a06040523480156200001157600080fd5b5060405162000f2f38038062000f2f8339810160408190526200003491620003e1565b8282828281620000458282620000b0565b50508160405162000056906200037a565b6001600160a01b039091168152602001604051809103906000f08015801562000083573d6000803e3d6000fd5b506001600160a01b0316608052620000a46200009e60805190565b62000116565b505050505050620004df565b620000bb8262000188565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620001085762000103828262000208565b505050565b6200011262000285565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200015860008051602062000f0f833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a16200018581620002a7565b50565b806001600160a01b03163b600003620001c457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002279190620004c1565b600060405180830381855af49150503d806000811462000264576040519150601f19603f3d011682016040523d82523d6000602084013e62000269565b606091505b5090925090506200027c858383620002ea565b95945050505050565b3415620002a55760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002d357604051633173bdd160e11b815260006004820152602401620001bb565b8060008051602062000f0f833981519152620001e7565b6060826200030357620002fd8262000350565b62000349565b81511580156200031b57506001600160a01b0384163b155b156200034657604051639996b31560e01b81526001600160a01b0385166004820152602401620001bb565b50805b9392505050565b805115620003615780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b61052480620009eb83390190565b80516001600160a01b0381168114620003a057600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003d8578181015183820152602001620003be565b50506000910152565b600080600060608486031215620003f757600080fd5b620004028462000388565b9250620004126020850162000388565b60408501519092506001600160401b03808211156200043057600080fd5b818601915086601f8301126200044557600080fd5b8151818111156200045a576200045a620003a5565b604051601f8201601f19908116603f01168101908382118183101715620004855762000485620003a5565b816040528281528960208487010111156200049f57600080fd5b620004b2836020830160208801620003bb565b80955050505050509250925092565b60008251620004d5818460208701620003bb565b9190910192915050565b6080516104eb620005006000396000818160370152607401526104eb6000f3fe60806040526004361061001e5760003560e01c80638b3240a014610028575b610026610072565b005b34801561003457600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006040516001600160a01b03909116815260200160405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633036100df576000356001600160e01b03191663278f794360e11b146100d5576040516334ad5dbb60e21b815260040160405180910390fd5b6100dd6100ec565b565b6100dd61011b565b905090565b6000806100fc3660048184610376565b81019061010991906103b6565b91509150610117828261012b565b5050565b6100dd610126610186565b6101b9565b610134826101dd565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561017e576101798282610259565b505050565b6101176102cf565b60006100e77f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b3660008037600080366000845af43d6000803e8080156101d8573d6000f35b3d6000fd5b806001600160a01b03163b60000361021857604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102769190610486565b600060405180830381855af49150503d80600081146102b1576040519150601f19603f3d011682016040523d82523d6000602084013e6102b6565b606091505b50915091506102c68583836102ee565b95945050505050565b34156100dd5760405163b398979f60e01b815260040160405180910390fd5b606082610303576102fe8261034d565b610346565b815115801561031a57506001600160a01b0384163b155b1561034357604051639996b31560e01b81526001600160a01b038516600482015260240161020f565b50805b9392505050565b80511561035d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561038657600080fd5b8386111561039357600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103c957600080fd5b82356001600160a01b03811681146103e057600080fd5b9150602083013567ffffffffffffffff808211156103fd57600080fd5b818501915085601f83011261041157600080fd5b813581811115610423576104236103a0565b604051601f8201601f19908116603f0116810190838211818310171561044b5761044b6103a0565b8160405282815288602084870101111561046457600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104a7576020818601810151858301520161048d565b50600092019182525091905056fea26469706673582212207fc3be0b67ab5a6f6fd34205d4d385e237910f1b59dc83ca95e83dbffe6cde3f64736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220cb46d8eee562c2068d4d3afab9e2a7f48be119bb61a6a1c3d7ef6ba5a8aff09464736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610307ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00a2646970667358221220402cf40c3e0935816c259f14215fa5bdcde70bffc3d206ef20c600c4a6b87dd164736f6c6343000814003360806040523480156200001157600080fd5b506200001c62000022565b620000d6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000735760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d35780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b615a4b80620000e66000396000f3fe60806040523480156200001157600080fd5b5060043610620002615760003560e01c806374933c2f1162000149578063be495be511620000c7578063deaa59df1162000086578063deaa59df146200055a578063dfd92f8a1462000571578063e618053f14620002e3578063f7c34ee0146200057b578063f83d08ba14620002fa57600080fd5b8063be495be5146200050f578063bf7e214f1462000519578063c142a3031462000539578063d56cd3d5146200036d578063d7740ee1146200055057600080fd5b80638e32e97911620001145780638e32e97914620004ad5780638fb3603714620004c4578063a69df4b514620002fa578063ada9652e14620004e8578063b68d180914620004ff57600080fd5b806374933c2f146200036d5780637a9e5e4b146200048c578063893d20e814620004a357806389fad8a214620002e357600080fd5b8063329d6e7411620001e3578063644c45e011620001a2578063644c45e0146200041057806367438c501462000430578063675393bf146200044757806367ba1c10146200045e5780636e172807146200047557600080fd5b8063329d6e74146200039b57806336fc697e14620003b257806337a897ee14620003bc57806349bb9e4b14620003d35780635ab1bd5314620003ea57600080fd5b8063138461e01162000230578063138461e014620002fc5780631eff4b22146200031f578063214cdb80146200035657806325e451d3146200036d57806327bb7a33146200038457600080fd5b806301ffc9a714620002665780630d8e6e2c14620002ab5780630fec111c14620002ca57806311a1467714620002e3575b600080fd5b620002966200027736600462004288565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b620002b562000592565b60405162ffffff9091168152602001620002a2565b620002d46200061f565b604051620002a2919062004308565b620002fa620002f4366004620043c2565b620007bf565b005b62000306620007d5565b6040516001600160601b039091168152602001620002a2565b620003477f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b604051908152602001620002a2565b620002fa6200036736600462004288565b620007e2565b620002fa6200037e366004620043c2565b62000811565b620002fa62000395366004620045d6565b62000821565b620002fa620003ac3660046200467c565b620008cc565b620002fa62000a23565b620002fa620003cd366004620046e7565b62000a6b565b620002fa620003e436600462004718565b62000db7565b6001546001600160a01b03165b6040516001600160a01b039091168152602001620002a2565b600080516020620059b6833981519152546001600160601b031662000306565b620002fa6200044136600462004763565b62000eb2565b620002fa62000458366004620047b5565b62000f36565b620002fa6200046f366004620046e7565b62001053565b620002fa6200048636600462004763565b620013f1565b620002fa6200049d366004620047b5565b62001443565b620003f7620014e5565b620002fa620004be366004620047d5565b62001624565b620004ce62001873565b6040516001600160e01b03199091168152602001620002a2565b62000347600080516020620059b683398151915281565b60405160648152602001620002a2565b620002fa620018b0565b600080516020620059d6833981519152546001600160a01b0316620003f7565b620002fa6200054a3660046200481c565b620019fc565b620002fa62001dcc565b620002fa6200056b366004620047b5565b62001ff0565b620002fa620022b3565b620002fa6200058c36600462004869565b62002491565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$8eede297b65ed5a56eb3f84d8232ae93f5$__90632efe011390606401602060405180830381865af4158015620005f4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200061a9190620048a7565b905090565b620006296200411b565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30090506040518060e0016040528073__$94a2c899be079b00d952d0d84fffaa5c34$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af4158015620006a3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620006c99190620048e0565b6001600160601b0390811682528354908116602083015260ff600160601b820481166040840152600160681b909104161515606082015230608082015260a00162000713620014e5565b6001600160a01b03168152602001826001018054620007329062004900565b80601f0160208091040260200160405190810160405280929190818152602001828054620007609062004900565b8015620007b15780601f106200078557610100808354040283529160200191620007b1565b820191906000526020600020905b8154815290600101906020018083116200079357829003601f168201915b505050505081525091505090565b620007cf60008585858562002510565b50505050565b60006200061a306200293f565b620007ec62002b4e565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b620007cf60018585858562002510565b6200082b62002b4e565b62000837828762002491565b7f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0387166cffffffffffffffffffffffffff1990911617600160601b60ff8716021760ff60681b1916600160681b851515021781557f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa301620008c2838262004986565b5050505050505050565b73__$8eede297b65ed5a56eb3f84d8232ae93f5$__63a123b37c620008f062000592565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af415801562000931573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000957919062004a75565b600080516020620059f68339815191528054600160401b900460ff16806200098c575080546001600160401b03808416911610155b15620009ab5760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155620009d78362002b87565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b62000a2d62002b4e565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b60008062000a7a607862002b91565b925050915060008062000af2836001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000ac5573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000aeb919062004a95565b8562002d3e565b91509150600073__$58e11c6004c5796aaa8c56e718245e69a2$__632b324dc08360800151896040518363ffffffff1660e01b815260040162000b3792919062004ab5565b602060405180830381865af415801562000b55573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b7b919062004ae9565b62000bc45762000bb9836040518060400160405280600f81526020016e446973747269627574696f6e46656560881b81525084608001518a62002e47565b506080810186905260015b60a082015160405162acc93760e61b815273__$58e11c6004c5796aaa8c56e718245e69a2$__91632b324dc09162000c0291908a9060040162004ab5565b602060405180830381865af415801562000c20573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000c46919062004ae9565b62000c9d5762000c92836040518060400160405280601781526020017f4d696e446973747269627574696f6e4f776e65724665650000000000000000008152508460a001518962002e47565b5060a0810185905260015b801562000dae57836001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000ce3573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d09919062004a95565b6001600160a01b031663b5b3d9f9848460ff6040518463ffffffff1660e01b815260040162000d3b9392919062004be8565b600060405180830381600087803b15801562000d5657600080fd5b505af115801562000d6b573d6000803e3d6000fd5b50506040516001600160601b03881681527f37bea7afe3960b639e98d9161b22f53a172300df8ec6ee71fd0a5321dcecd59b925060200190505b60405180910390a15b50505050505050565b600080516020620059f68339815191528054600160401b810460ff1615906001600160401b031660008115801562000dec5750825b90506000826001600160401b0316600114801562000e095750303b155b90508115801562000e18575080155b1562000e375760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831562000e6257845460ff60401b1916600160401b1785555b62000e6e878762002e9c565b831562000dae57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200162000da5565b62000f316001848473__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af415801562000f04573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f2a9190620048e0565b8562002510565b505050565b62000f4062002b4e565b806001600160a01b03163b60000362000f7c5760405163fdeac91f60e01b81526001600160a01b03821660048201526024015b60405180910390fd5b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263e607072160e01b60048201526301ffc9a790602401602060405180830381865afa92505050801562000ff9575060408051601f3d908101601f1916820190925262000ff69181019062004ae9565b60015b620010235760405163fdeac91f60e01b81526001600160a01b038216600482015260240162000f73565b806200104e5760405163fdeac91f60e01b81526001600160a01b038316600482015260240162000f73565b505b50565b60008062001062606e62002b91565b92505091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015620010a8573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620010ce919062004a95565b6040516302d764c760e21b81526001600160601b03851660048201526001600160a01b039190911690630b5d931c9060240161020060405180830381865afa1580156200111f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001145919062004c4d565b9050600073__$58e11c6004c5796aaa8c56e718245e69a2$__632b324dc08360400151886040518363ffffffff1660e01b81526004016200118892919062004ab5565b602060405180830381865af4158015620011a6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620011cc919062004ae9565b620012105762001205846040518060400160405280600a81526020016950726f6475637446656560b01b81525084604001518962002e47565b506040810185905260015b606082015160405162acc93760e61b815273__$58e11c6004c5796aaa8c56e718245e69a2$__91632b324dc0916200124e9190899060040162004ab5565b602060405180830381865af41580156200126c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001292919062004ae9565b620012d957620012ce846040518060400160405280600d81526020016c50726f63657373696e6746656560981b81525084606001518862002e47565b506060810184905260015b8015620013e957826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200131f573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001345919062004a95565b6001600160a01b031663b5b3d9f9858460ff6040518463ffffffff1660e01b8152600401620013779392919062004be8565b600060405180830381600087803b1580156200139257600080fd5b505af1158015620013a7573d6000803e3d6000fd5b50506040516001600160601b03871681527f385da3b17e82d72dd7e4cbe895c7d7d3fbb4c8768e0866dd69f44581a0ded2bc9250602001905060405180910390a15b505050505050565b62000f316000848473__$3bac17678db7ae928afa209f2f44deec9c$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af415801562000f04573d6000803e3d6000fd5b3362001465600080516020620059d6833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b031614620014a25760405162d1953b60e31b81526001600160a01b038216600482015260240162000f73565b816001600160a01b03163b600003620014da576040516361798f2f60e11b81526001600160a01b038316600482015260240162000f73565b6200104e826200302a565b600080600080516020620059b683398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af415801562001557573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200157d919062004ae9565b156200160e576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015620015e2573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001608919062004a95565b91505090565b54600160601b90046001600160a01b0316919050565b6200162e62002b4e565b620016b383846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001672573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620016989190620048e0565b603c6000856040518060200160405280600081525062000821565b6001600160a01b03821615620016d457620016ce826200308c565b6200184f565b6000620016e96001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$b659da7d8a6d2d32aa6c1e17da23dc2174$__90638e4ad86c90602401602060405180830381865af41580156200174a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001770919062004d3c565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015620017b6573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620017dc919062004a95565b90506200184d816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001821573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001847919062004a95565b6200308c565b505b62001861634a531f3360e01b620007e2565b62000f3163b68d180960e01b620007e2565b600080516020620059d6833981519152805460009190600160a01b900460ff16620018a057600062001608565b638fb3603760e01b91505090565b565b604080516002808252606082018352339260009291906020830190803683375050604080516002808252606082019092529293506000929150602082015b6060815260200190600190039081620018ee57905050905062001910620030a1565b8260008151811062001926576200192662004d5c565b6001600160401b039092166020928302919091019091015262001950635b5a095d60e11b6200311c565b8160008151811062001966576200196662004d5c565b60200260200101819052506200197b62003173565b8260018151811062001991576200199162004d5c565b6001600160401b0390921660209283029190910190910152620019bb637c07103960e11b6200311c565b81600181518110620019d157620019d162004d5c565b6020026020010181905250620013e983620019ea607890565b620019f4620030a1565b8585620031b0565b60008062001a0b608c62002b91565b925050915060008062001a56836001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000ac5573d6000803e3d6000fd5b91509150600073__$58e11c6004c5796aaa8c56e718245e69a2$__632b324dc08360c001518a6040518363ffffffff1660e01b815260040162001a9b92919062004ab5565b602060405180830381865af415801562001ab9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001adf919062004ae9565b62001b205762001b158360405180604001604052806007815260200166506f6f6c46656560c81b8152508460c001518b62002e47565b5060c0810187905260015b60e082015160405162acc93760e61b815273__$58e11c6004c5796aaa8c56e718245e69a2$__91632b324dc09162001b5e91908b9060040162004ab5565b602060405180830381865af415801562001b7c573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001ba2919062004ae9565b62001be65762001bdb836040518060400160405280600a8152602001695374616b696e6746656560b01b8152508460e001518a62002e47565b5060e0810186905260015b61010082015160405162acc93760e61b815273__$58e11c6004c5796aaa8c56e718245e69a2$__91632b324dc09162001c2591908a9060040162004ab5565b602060405180830381865af415801562001c43573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001c69919062004ae9565b62001cb35762001ca7836040518060400160405280600e81526020016d506572666f726d616e636546656560901b8152508461010001518962002e47565b50610100810185905260015b8015620008c257836001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa15801562001cf9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001d1f919062004a95565b6001600160a01b031663b5b3d9f9848460ff6040518463ffffffff1660e01b815260040162001d519392919062004be8565b600060405180830381600087803b15801562001d6c57600080fd5b505af115801562001d81573d6000803e3d6000fd5b50506040516001600160601b03881681527f7a446b749117c015e0932e31190fc133582c9c5151e31209479cc9d21941f0359250602001905060405180910390a15050505050505050565b604080516002808252606082018352339260009291906020830190803683375050604080516002808252606082019092529293506000929150602082015b606081526020019060019003908162001e0a57905050905062001e2c62003695565b8260008151811062001e425762001e4262004d5c565b6001600160401b039092166020928302919091019091015262001e6c634133c3b360e11b6200311c565b8160008151811062001e825762001e8262004d5c565b602002602001018190525062001e97620036d0565b8260018151811062001ead5762001ead62004d5c565b6001600160401b039092166020928302919091019091015262001ed7639e2177a760e01b6200311c565b8160018151811062001eed5762001eed62004d5c565b602002602001018190525060008062001f1b8562001f09608c90565b62001f1362003695565b8787620031b0565b9250925050816001600160a01b0316637892982382876001600160a01b03166385ba83446040518163ffffffff1660e01b81526004016101c060405180830381865afa15801562001f70573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062001f96919062004d72565b6040518363ffffffff1660e01b815260040162001fb592919062004e4c565b600060405180830381600087803b15801562001fd057600080fd5b505af115801562001fe5573d6000803e3d6000fd5b505050505050505050565b60008062001fff606462002b91565b92505091506000816001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801562002045573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200206b919062004a95565b60405163f0ea17c360e01b81526001600160601b03851660048201526001600160a01b03919091169063f0ea17c390602401600060405180830381865afa158015620020bb573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620020e5919081019062004f78565b60808101519091506001600160a01b038516620021155760405163cda6051f60e01b815260040160405180910390fd5b6001600160a01b0381166200213d5760405163149cf9c560e21b815260040160405180910390fd5b806001600160a01b0316856001600160a01b031603620021705760405163e5bf1f2160e01b815260040160405180910390fd5b8482608001906001600160a01b031690816001600160a01b031681525050826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa158015620021cd573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620021f3919062004a95565b6001600160a01b03166303c099ac858460ff6040518463ffffffff1660e01b81526004016200222593929190620050db565b600060405180830381600087803b1580156200224057600080fd5b505af115801562002255573d6000803e3d6000fd5b5050604080516001600160601b03881681526001600160a01b03858116602083015289168183015290517ff2d80db4913d045b4cad17a65741b11f822efa2652c369fcb3e44324260773c39350908190036060019150a15050505050565b6040805160018082528183019092523391600091906020808301908036833750506040805160018082528183019092529293506000929150602082015b6060815260200190600190039081620022f0579050509050620023126200370d565b8260008151811062002328576200232862004d5c565b6001600160401b039092166020928302919091019091015262002352635b5a095d60e11b6200311c565b8160008151811062002368576200236862004d5c565b60200260200101819052506000806000620023988662002386606e90565b620023906200370d565b8888620031b0565b9250925092506000866001600160a01b031663c108bd4c6040518163ffffffff1660e01b815260040161020060405180830381865afa158015620023e0573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002406919062004c4d565b60405163a6a67b1f60e01b81529091506001600160a01b0384169063a6a67b1f9062002439908590859060040162005112565b600060405180830381600087803b1580156200245457600080fd5b505af115801562002469573d6000803e3d6000fd5b505050506200247f848483600001518562003749565b62000dae848483602001518562003749565b6200249b62002b4e565b620024a68162000f36565b620024b062000a23565b6001600160a01b038216620024d85760405163f17ef42d60e01b815260040160405180910390fd5b50600080516020620059b683398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b60006200251e83836200388c565b9050851562002737576040516330b8415f60e01b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af415801562002580573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620025a6919062004ae9565b156200262c57604051639f8151e560e01b81526001600160601b038086166004830152821660248201526001600160a01b03861690639f8151e5906044016020604051808303816000875af115801562002604573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200262a9190620048e0565b505b6040516330b8415f60e01b81526001600160601b038316600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af415801562002685573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620026ab919062004ae9565b15620027315760405163e80c61ed60e01b81526001600160601b038086166004830152831660248201526001600160a01b0386169063e80c61ed906044016020604051808303816000875af115801562002709573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200272f9190620048e0565b505b620013e9565b6040516330b8415f60e01b81526001600160601b038216600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af415801562002790573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620027b6919062004ae9565b156200283c5760405163b0628dc360e01b81526001600160601b038086166004830152821660248201526001600160a01b0386169063b0628dc3906044016020604051808303816000875af115801562002814573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200283a9190620048e0565b505b6040516330b8415f60e01b81526001600160601b038316600482015273__$3bac17678db7ae928afa209f2f44deec9c$__906330b8415f90602401602060405180830381865af415801562002895573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620028bb919062004ae9565b15620013e9576040516314cc21b560e21b81526001600160601b038086166004830152831660248201526001600160a01b0386169063533086d4906044016020604051808303816000875af115801562002919573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000dae9190620048e0565b600080600080516020620059b683398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af4158015620029b1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620029d7919062004ae9565b1562002a055780546040516301ab8b6760e21b81526001600160601b03909116600482015260240162000f73565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa15801562002a5a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002a80919062004ae9565b62002aaa5760405163b9304b0d60e01b81526001600160a01b038416600482015260240162000f73565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038581166004830152919091169063d272ac1e90602401602060405180830381865afa15801562002aff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002b259190620048e0565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b600080516020620059f683398151915254600160401b900460ff16620018ae57604051631afcd79f60e31b815260040160405180910390fd5b6200026162002b4e565b600062002b9d6200411b565b600062002bb26001546001600160a01b031690565b604051636939560f60e11b81523360048201526001600160a01b03919091169063d272ac1e90602401602060405180830381865afa15801562002bf9573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c1f9190620048e0565b925062002c2d83856200391d565b8092508193505050806001600160a01b031663e5f6cd276040518163ffffffff1660e01b8152600401602060405180830381865afa15801562002c74573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002c9a919062004a95565b608083015160405163a166aa8960e01b81526001600160a01b03918216600482015291169063a166aa8990602401602060405180830381865afa15801562002ce6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002d0c919062004ae9565b1562002d3757604051637d71120960e11b81526001600160601b038416600482015260240162000f73565b9193909250565b600062002d4a62004159565b60405163f0ea17c360e01b81526001600160601b03841660048201526001600160a01b0385169063f0ea17c390602401600060405180830381865afa15801562002d98573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262002dc2919081019062004f78565b602001516040516302d764c760e21b81526001600160601b03821660048201529092506001600160a01b03851690630b5d931c9060240161020060405180830381865afa15801562002e18573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062002e3e919062004c4d565b90509250929050565b81516020808401518351918401516040517f52d1fb99d890f3b2be95c262d870f89c22614249751b9fe6124d341bedbd70db9462002e8e948a948a94929390929062005132565b60405180910390a150505050565b600080516020620059f68339815191528054600160401b810460ff1615906001600160401b031660008115801562002ed15750825b90506000826001600160401b0316600114801562002eee5750303b155b90508115801562002efd575080155b1562002f1c5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff19166001178555831562002f4757845460ff60401b1916600160401b1785555b6000808780602001905181019062002f6091906200517b565b909250905062002f738260008b62001624565b62002f85602862003adc565b62003adc565b600280546001600160a01b0319166001600160a01b039290921691909117905562002fb262002f7f604690565b600380546001600160a01b0319166001600160a01b039290921691909117905562002fe46354b2763760e01b620007e2565b5050831562000dae57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200162000da5565b600080516020620059d683398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b6200309662002b4e565b620010508162003bf8565b6040516368aebf7b60e01b81526002600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__906368aebf7b906024015b602060405180830381865af4158015620030f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200061a919062004a75565b60408051600180825281830190925260609160208083019080368337019050509050818160008151811062003155576200315562004d5c565b6001600160e01b031990921660209283029190910190910152919050565b6040516368aebf7b60e01b81526108fc600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__906368aebf7b90602401620030d8565b600080600080600080620031c68b8b8b62003c0d565b60025460405163d943342d60e01b815293965091945092506001600160a01b03169063d943342d90620032229085908e9086906004016001600160a01b03938416815260ff929092166020830152909116604082015260600190565b6000604051808303816000875af115801562003242573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200326c9190810190620051af565b600001519350816001600160a01b031663138461e06040518163ffffffff1660e01b81526004016020604051808303816000875af1158015620032b3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620032d99190620048e0565b50826001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa15801562003319573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200333f919062004a95565b9550826001600160a01b031663d4cda0d86040518163ffffffff1660e01b8152600401602060405180830381865afa15801562003380573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620033a6919062004a95565b94506000826001600160a01b03166390edbd356040518163ffffffff1660e01b8152600401600060405180830381865afa158015620033e9573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262003413919081019062004f78565b9050806040015160405162003428906200427a565b6001600160a01b039091168152602001604051809103906000f08015801562003455573d6000803e3d6000fd5b5081606001906001600160a01b031690816001600160a01b031681525050856001600160a01b0316634846003a846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015620034c1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620034e79190620048e0565b836040518363ffffffff1660e01b81526004016200350792919062005295565b600060405180830381600087803b1580156200352257600080fd5b505af115801562003537573d6000803e3d6000fd5b50505050600360009054906101000a90046001600160a01b03166001600160a01b031663dd38b49e856001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa1580156200359e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620035c49190620048e0565b8e866001600160a01b03166317d7de7c6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562003604573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526200362e9190810190620052b9565b8c8e6040518663ffffffff1660e01b81526004016200365295949392919062005337565b600060405180830381600087803b1580156200366d57600080fd5b505af115801562003682573d6000803e3d6000fd5b5050505050505050955095509592505050565b6040516368aebf7b60e01b815260048082015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__906368aebf7b90602401620030d8565b6040516368aebf7b60e01b815261096a600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__906368aebf7b90602401620030d8565b6040516368aebf7b60e01b81526005600482015260009073__$1d92393fa9ccd763988368ce8a1cb90d26$__906368aebf7b90602401620030d8565b604051630a4d29dd60e31b81526001600160601b038316600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906352694ee890602401602060405180830381865af4158015620037a2573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620037c8919062004ae9565b620007cf5760405163f0ea17c360e01b81526001600160601b03831660048201526000906001600160a01b0386169063f0ea17c390602401600060405180830381865afa1580156200381e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262003848919081019062004f78565b6001600160601b038316602082015260405162f0266b60e21b81529091506001600160a01b038516906303c099ac9062001fb5908690859060ff90600401620050db565b60405163274acb3560e01b81526001600160601b0380841660048301528216602482015260009073__$3bac17678db7ae928afa209f2f44deec9c$__9063274acb3590604401602060405180830381865af4158015620038f0573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620039169190620048e0565b9392505050565b620039276200411b565b6000806200393d6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03871660048201529091506001600160a01b0382169063a48f42e090602401600060405180830381865afa1580156200398e573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620039b89190810190620051af565b925060ff841660641462003a1a57604083015160ff85811691161462003a1457604080840151905163b83d92cb60e01b81526001600160601b038716600482015260ff8087166024830152909116604482015260640162000f73565b62003ac3565b62003a37836040015162003a2c606e90565b60ff90811691161490565b8062003a50575062003a50836040015162003a2c608c90565b8062003a69575062003a69836040015162003a2c607890565b8062003a82575062003a82836040015162003a2c608290565b62003ac357604080840151905163b83d92cb60e01b81526001600160601b038716600482015260ff8087166024830152909116604482015260640162000f73565b62003ad2836020015162004082565b9150509250929050565b600062003af16001546001600160a01b031690565b6001600160a01b031663d39e60438362003b0a62000592565b60405163c9e66e2960e01b815262ffffff909116600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__9063c9e66e2990602401602060405180830381865af415801562003b60573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003b86919062004d3c565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa15801562003bcc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003bf2919062004a95565b92915050565b62003c0262002b4e565b62001050816200302a565b6040516301ffc9a760e01b8152639a29895960e01b6004820152600090849082906001600160a01b038316906301ffc9a790602401602060405180830381865afa15801562003c60573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003c86919062004ae9565b62003cb0576040516359bff0e360e11b81526001600160a01b038716600482015260240162000f73565b6000826001600160a01b0316630fec111c6040518163ffffffff1660e01b8152600401600060405180830381865afa15801562003cf1573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405262003d1b9190810190620051af565b905062003d3381604001518760ff9081169116141590565b1562003d75576040808201519051634a2e948760e11b81526001600160a01b038916600482015260ff8089166024830152909116604482015260640162000f73565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038981166004830152919091169063d272ac1e90602401602060405180830381865afa15801562003dca573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003df09190620048e0565b6040516330b8415f60e01b81526001600160601b03909116600482015273__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af415801562003e4a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003e70919062004ae9565b1562003e9b576040516322e6526160e11b81526001600160a01b038816600482015260240162000f73565b62003eaa816020015162004082565b93508060a0015191506000846001600160a01b031663e5f6cd276040518163ffffffff1660e01b8152600401602060405180830381865afa15801562003ef4573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003f1a919062004a95565b604051631517388760e21b81526001600160401b03881660048201526001600160a01b03919091169063d1f856ee9073__$1d92393fa9ccd763988368ce8a1cb90d26$__9063545ce21c90602401602060405180830381865af415801562003f86573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062003fac919062004a75565b6040516001600160e01b031960e084901b1681526001600160401b0390911660048201526001600160a01b03861660248201526044016040805180830381865afa15801562003fff573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062004025919062005413565b5090508062004077576020820151604051636af540d960e01b81526001600160601b0390911660048201526001600160401b03871660248201526001600160a01b038416604482015260640162000f73565b505093509350939050565b6000620040976001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015620040e7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052620041119190810190620051af565b6080015192915050565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b60405180610120016040528060006001600160601b0316815260200160006001600160601b03168152602001620041a3604051806040016040528060008152602001600081525090565b8152602001620041c6604051806040016040528060008152602001600081525090565b8152602001620041e9604051806040016040528060008152602001600081525090565b81526020016200420c604051806040016040528060008152602001600081525090565b81526020016200422f604051806040016040528060008152602001600081525090565b815260200162004252604051806040016040528060008152602001600081525090565b815260200162004275604051806040016040528060008152602001600081525090565b905290565b610566806200545083390190565b6000602082840312156200429b57600080fd5b81356001600160e01b0319811681146200391657600080fd5b60005b83811015620042d1578181015183820152602001620042b7565b50506000910152565b60008151808452620042f4816020860160208601620042b4565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a08301516200437260c08401826001600160a01b03169052565b5060c083015160e0808401526200438e610100840182620042da565b949350505050565b6001600160a01b03811681146200105057600080fd5b6001600160601b03811681146200105057600080fd5b60008060008060808587031215620043d957600080fd5b8435620043e68162004396565b93506020850135620043f881620043ac565b925060408501356200440a81620043ac565b915060608501356200441c81620043ac565b939692955090935050565b60ff811681146200105057600080fd5b80151581146200105057600080fd5b634e487b7160e01b600052604160045260246000fd5b604080519081016001600160401b038111828210171562004481576200448162004446565b60405290565b60405161012081016001600160401b038111828210171562004481576200448162004446565b60405161016081016001600160401b038111828210171562004481576200448162004446565b60405160c081016001600160401b038111828210171562004481576200448162004446565b60405160e081016001600160401b038111828210171562004481576200448162004446565b604051601f8201601f191681016001600160401b038111828210171562004548576200454862004446565b604052919050565b60006001600160401b038211156200456c576200456c62004446565b50601f01601f191660200190565b600082601f8301126200458c57600080fd5b8135620045a36200459d8262004550565b6200451d565b818152846020838601011115620045b957600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c08789031215620045f057600080fd5b8635620045fd8162004396565b955060208701356200460f81620043ac565b94506040870135620046218162004427565b93506060870135620046338162004437565b92506080870135620046458162004396565b915060a08701356001600160401b038111156200466157600080fd5b6200466f89828a016200457a565b9150509295509295509295565b6000602082840312156200468f57600080fd5b81356001600160401b03811115620046a657600080fd5b6200438e848285016200457a565b600060408284031215620046c757600080fd5b620046d16200445c565b9050813581526020820135602082015292915050565b60008060808385031215620046fb57600080fd5b620047078484620046b4565b915062002e3e8460408501620046b4565b600080604083850312156200472c57600080fd5b8235620047398162004396565b915060208301356001600160401b038111156200475557600080fd5b62003ad2858286016200457a565b6000806000606084860312156200477957600080fd5b8335620047868162004396565b925060208401356200479881620043ac565b91506040840135620047aa81620043ac565b809150509250925092565b600060208284031215620047c857600080fd5b8135620039168162004396565b600080600060608486031215620047eb57600080fd5b8335620047f88162004396565b925060208401356200480a8162004396565b91506040840135620047aa8162004396565b600080600060c084860312156200483257600080fd5b6200483e8585620046b4565b92506200484f8560408601620046b4565b9150620048608560808601620046b4565b90509250925092565b600080604083850312156200487d57600080fd5b82356200488a8162004396565b915060208301356200489c8162004396565b809150509250929050565b600060208284031215620048ba57600080fd5b815162ffffff811681146200391657600080fd5b8051620048db81620043ac565b919050565b600060208284031215620048f357600080fd5b81516200391681620043ac565b600181811c908216806200491557607f821691505b6020821081036200493657634e487b7160e01b600052602260045260246000fd5b50919050565b601f82111562000f3157600081815260208120601f850160051c81016020861015620049655750805b601f850160051c820191505b81811015620013e95782815560010162004971565b81516001600160401b03811115620049a257620049a262004446565b620049ba81620049b3845462004900565b846200493c565b602080601f831160018114620049f25760008415620049d95750858301515b600019600386901b1c1916600185901b178555620013e9565b600085815260208120601f198616915b8281101562004a235788860151825594840194600190910190840162004a02565b508582101562004a425787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160401b03811681146200105057600080fd5b8051620048db8162004a52565b60006020828403121562004a8857600080fd5b8151620039168162004a52565b60006020828403121562004aa857600080fd5b8151620039168162004396565b82518152602080840151818301528251604083015282015160608201526080810162003916565b8051620048db8162004437565b60006020828403121562004afc57600080fd5b8151620039168162004437565b6001600160601b038151168252602081015162004b3160208401826001600160601b03169052565b50604081015162004b4f604084018280518252602090810151910152565b50606081015180516080840152602081015160a0840152506080810151805160c0840152602081015160e08401525060a081015161010062004b9d8185018380518252602090810151910152565b60c0830151805161014086015260209081015161016086015260e084015180516101808701528101516101a086015292015180516101c0850152909101516101e09092019190915250565b6001600160601b0384168152610240810162004c08602083018562004b09565b60ff8316610220830152949350505050565b60006040828403121562004c2d57600080fd5b62004c376200445c565b9050815181526020820151602082015292915050565b6000610200828403121562004c6157600080fd5b62004c6b62004487565b62004c7683620048ce565b815262004c8660208401620048ce565b602082015262004c9a846040850162004c1a565b604082015262004cae846080850162004c1a565b606082015262004cc28460c0850162004c1a565b608082015261010062004cd88582860162004c1a565b60a083015262004ced85610140860162004c1a565b60c083015262004d0285610180860162004c1a565b60e083015262004d17856101c0860162004c1a565b908201529392505050565b8051620048db8162004396565b8051620048db8162004427565b60006020828403121562004d4f57600080fd5b8151620039168162004427565b634e487b7160e01b600052603260045260246000fd5b60006101c0828403121562004d8657600080fd5b62004d90620044ad565b62004d9b83620048ce565b815262004dab6020840162004a68565b602082015262004dbe60408401620048ce565b604082015262004dd16060840162004adc565b606082015262004de46080840162004adc565b608082015262004df760a0840162004adc565b60a082015260c083015160c082015260e083015160e082015261010062004e218582860162004c1a565b9082015261014062004e368585830162004c1a565b61012083015262004d1785610180860162004c1a565b6001600160601b03838116825282511660208201526101e0810160208301516001600160401b03811660408401525060408301516001600160601b0381166060840152506060830151801515608084015250608083015180151560a08401525060a083015180151560c08401525060c083015160e083015260e083015161010081818501528085015191505061012062004ef28185018380518252602090810151910152565b8401518051610160850152602081015161018085015290505061014083015180516101a084015260208101516101c0840152509392505050565b600082601f83011262004f3e57600080fd5b815162004f4f6200459d8262004550565b81815284602083860101111562004f6557600080fd5b6200438e826020830160208701620042b4565b60006020828403121562004f8b57600080fd5b81516001600160401b038082111562004fa357600080fd5b9083019060c0828603121562004fb857600080fd5b62004fc2620044d3565b82518281111562004fd257600080fd5b62004fe08782860162004f2c565b82525062004ff160208401620048ce565b6020820152620050046040840162004d22565b6040820152620050176060840162004d22565b60608201526200502a6080840162004d22565b608082015260a0830151828111156200504257600080fd5b620050508782860162004f2c565b60a08301525095945050505050565b6000815160c084526200507660c0850182620042da565b90506001600160601b036020840151166020850152604083015160018060a01b038082166040870152806060860151166060870152806080860151166080870152505060a083015184820360a0860152620050d28282620042da565b95945050505050565b6001600160601b0384168152606060208201526000620050ff60608301856200505f565b905060ff83166040830152949350505050565b6001600160601b0383168152610220810162003916602083018462004b09565b6001600160601b038716815260c0602082015260006200515660c0830188620042da565b90508560408301528460608301528360808301528260a0830152979650505050505050565b600080604083850312156200518f57600080fd5b82516200519c8162004396565b60208401519092506200489c8162004396565b600060208284031215620051c257600080fd5b81516001600160401b0380821115620051da57600080fd5b9083019060e08286031215620051ef57600080fd5b620051f9620044f8565b6200520483620048ce565b81526200521460208401620048ce565b6020820152620052276040840162004d2f565b60408201526200523a6060840162004adc565b60608201526200524d6080840162004d22565b60808201526200526060a0840162004d22565b60a082015260c0830151828111156200527857600080fd5b620052868782860162004f2c565b60c08301525095945050505050565b6001600160601b03831681526040602082015260006200438e60408301846200505f565b600060208284031215620052cc57600080fd5b81516001600160401b03811115620052e357600080fd5b6200438e8482850162004f2c565b600081518084526020808501945080840160005b838110156200532c5781516001600160401b03168752958201959082019060010162005305565b509495945050505050565b6001600160601b03861681526000602060018060a01b0387168184015260a060408401526200536a60a0840187620042da565b8381036060850152855180825282820190600581901b830184018489016000805b84811015620053ec57868403601f19018652825180518086529089019089860190845b81811015620053d65783516001600160e01b0319168352928b0192918b0191600101620053ae565b505096890196945050918701916001016200538b565b5050508681036080880152620054038189620052f1565b9c9b505050505050505050505050565b600080604083850312156200542757600080fd5b8251620054348162004437565b602084015190925063ffffffff811681146200489c57600080fdfe608060405234801561001057600080fd5b5060405161056638038061056683398101604081905261002f91610054565b600080546001600160a01b0319166001600160a01b0392909216919091179055610084565b60006020828403121561006657600080fd5b81516001600160a01b038116811461007d57600080fd5b9392505050565b6104d3806100936000396000f3fe608060405234801561001057600080fd5b50600436106100415760003560e01c806321df0da7146100465780638d7271c314610065578063c661667d1461007a575b600080fd5b600054604080516001600160a01b039092168252519081900360200190f35b61007861007336600461039c565b61008d565b005b6100786100883660046103f0565b61011f565b60405163046e44af60e11b81526001600160601b03821660048201526101199085908590859073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e906024015b602060405180830381865af41580156100f0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906101149190610433565b610179565b50505050565b60005460405163046e44af60e11b81526001600160601b0383166004820152610174916001600160a01b0316908590859073__$3bac17678db7ae928afa209f2f44deec9c$__906308dc895e906024016100d3565b505050565b604080516001600160a01b038581166024830152848116604483015260648083018590528351808403909101815260849092019092526020810180516001600160e01b03166323b872dd60e01b179052610119918691906000906101df90841683610232565b90508051600014158015610204575080806020019051810190610202919061044c565b155b1561017457604051635274afe760e01b81526001600160a01b03841660048201526024015b60405180910390fd5b606061024083836000610247565b9392505050565b60608147101561026c5760405163cd78605960e01b8152306004820152602401610229565b600080856001600160a01b03168486604051610288919061046e565b60006040518083038185875af1925050503d80600081146102c5576040519150601f19603f3d011682016040523d82523d6000602084013e6102ca565b606091505b50915091506102da8683836102e4565b9695505050505050565b6060826102f9576102f482610340565b610240565b815115801561031057506001600160a01b0384163b155b1561033957604051639996b31560e01b81526001600160a01b0385166004820152602401610229565b5080610240565b8051156103505780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b80356001600160a01b038116811461038057600080fd5b919050565b80356001600160601b038116811461038057600080fd5b600080600080608085870312156103b257600080fd5b6103bb85610369565b93506103c960208601610369565b92506103d760408601610369565b91506103e560608601610385565b905092959194509250565b60008060006060848603121561040557600080fd5b61040e84610369565b925061041c60208501610369565b915061042a60408501610385565b90509250925092565b60006020828403121561044557600080fd5b5051919050565b60006020828403121561045e57600080fd5b8151801515811461024057600080fd5b6000825160005b8181101561048f5760208186018101518583015201610475565b50600092019182525091905056fea26469706673582212209807ba37f960191da7fc92045bb7e0c4e727926f77e78d1cce4b3e3395aa9c6864736f6c6343000814003307ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a26469706673582212207a1287ec1ea9927ecce1b3bcf06a1e9a808b9ce8db78aa4afe73400389a8a06364736f6c6343000814003360a06040523480156200001157600080fd5b5060405162000f2f38038062000f2f8339810160408190526200003491620003e1565b8282828281620000458282620000b0565b50508160405162000056906200037a565b6001600160a01b039091168152602001604051809103906000f08015801562000083573d6000803e3d6000fd5b506001600160a01b0316608052620000a46200009e60805190565b62000116565b505050505050620004df565b620000bb8262000188565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620001085762000103828262000208565b505050565b6200011262000285565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200015860008051602062000f0f833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a16200018581620002a7565b50565b806001600160a01b03163b600003620001c457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002279190620004c1565b600060405180830381855af49150503d806000811462000264576040519150601f19603f3d011682016040523d82523d6000602084013e62000269565b606091505b5090925090506200027c858383620002ea565b95945050505050565b3415620002a55760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002d357604051633173bdd160e11b815260006004820152602401620001bb565b8060008051602062000f0f833981519152620001e7565b6060826200030357620002fd8262000350565b62000349565b81511580156200031b57506001600160a01b0384163b155b156200034657604051639996b31560e01b81526001600160a01b0385166004820152602401620001bb565b50805b9392505050565b805115620003615780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b61052480620009eb83390190565b80516001600160a01b0381168114620003a057600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003d8578181015183820152602001620003be565b50506000910152565b600080600060608486031215620003f757600080fd5b620004028462000388565b9250620004126020850162000388565b60408501519092506001600160401b03808211156200043057600080fd5b818601915086601f8301126200044557600080fd5b8151818111156200045a576200045a620003a5565b604051601f8201601f19908116603f01168101908382118183101715620004855762000485620003a5565b816040528281528960208487010111156200049f57600080fd5b620004b2836020830160208801620003bb565b80955050505050509250925092565b60008251620004d5818460208701620003bb565b9190910192915050565b6080516104eb620005006000396000818160370152607401526104eb6000f3fe60806040526004361061001e5760003560e01c80638b3240a014610028575b610026610072565b005b34801561003457600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006040516001600160a01b03909116815260200160405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633036100df576000356001600160e01b03191663278f794360e11b146100d5576040516334ad5dbb60e21b815260040160405180910390fd5b6100dd6100ec565b565b6100dd61011b565b905090565b6000806100fc3660048184610376565b81019061010991906103b6565b91509150610117828261012b565b5050565b6100dd610126610186565b6101b9565b610134826101dd565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561017e576101798282610259565b505050565b6101176102cf565b60006100e77f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b3660008037600080366000845af43d6000803e8080156101d8573d6000f35b3d6000fd5b806001600160a01b03163b60000361021857604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102769190610486565b600060405180830381855af49150503d80600081146102b1576040519150601f19603f3d011682016040523d82523d6000602084013e6102b6565b606091505b50915091506102c68583836102ee565b95945050505050565b34156100dd5760405163b398979f60e01b815260040160405180910390fd5b606082610303576102fe8261034d565b610346565b815115801561031a57506001600160a01b0384163b155b1561034357604051639996b31560e01b81526001600160a01b038516600482015260240161020f565b50805b9392505050565b80511561035d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561038657600080fd5b8386111561039357600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103c957600080fd5b82356001600160a01b03811681146103e057600080fd5b9150602083013567ffffffffffffffff808211156103fd57600080fd5b818501915085601f83011261041157600080fd5b813581811115610423576104236103a0565b604051601f8201601f19908116603f0116810190838211818310171561044b5761044b6103a0565b8160405282815288602084870101111561046457600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104a7576020818601810151858301520161048d565b50600092019182525091905056fea26469706673582212207fc3be0b67ab5a6f6fd34205d4d385e237910f1b59dc83ca95e83dbffe6cde3f64736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220cb46d8eee562c2068d4d3afab9e2a7f48be119bb61a6a1c3d7ef6ba5a8aff09464736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d6103",
|
553
|
+
"deployedBytecode": "0x60806040523480156200001157600080fd5b5060043610620001695760003560e01c8063675393bf11620000d3578063ada9652e1162000086578063ada9652e1462000439578063b88da7591462000450578063c987336c1462000467578063e97fac05146200047e578063f7c34ee01462000495578063fd0c63d914620004ac57600080fd5b8063675393bf14620003ca57806367b9cc4a14620003e1578063893d20e814620003f35780638e9afce614620003fd578063933a9ce81462000414578063946dfcfe146200042657600080fd5b80631775564d116200012c5780631775564d146200023e578063214cdb80146200026457806336fc697e146200027b5780634d459c9014620002855780635ab1bd531462000398578063644c45e014620003aa57600080fd5b806301ffc9a7146200016e578063058f7a9714620001b357806307484e8014620001cc5780630d8e6e2c14620001fc578063138461e0146200021b575b600080fd5b6200019e6200017f36600462001645565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b620001ca620001c43660046200168e565b620004b6565b005b620001e3620001dd36600462001759565b620005cf565b6040516001600160a01b039091168152602001620001aa565b6200020662000771565b60405162ffffff9091168152602001620001aa565b62000225620007e7565b6040516001600160601b039091168152602001620001aa565b620002556200024f366004620017b8565b620007f4565b604051620001aa919062001856565b620001ca6200027536600462001645565b6200084e565b620001ca6200087d565b6200033a620002963660046200187d565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091525062ffffff908116600090815260036020908152604091829020825160a0810184528154948516815263010000009094046001600160a01b03908116928501929092526001015490811691830191909152600160a01b810464ffffffffff166060830152600160c81b900463ffffffff16608082015290565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a001620001aa565b6001546001600160a01b0316620001e3565b600080516020620029cd833981519152546001600160601b031662000225565b620001ca620003db3660046200168e565b620008c5565b6005546001600160a01b0316620001e3565b620001e3620009de565b620002556200040e3660046200189d565b62000b1d565b6002546001600160a01b0316620001e3565b6004545b604051908152602001620001aa565b6200042a600080516020620029cd83398151915281565b6200020662000461366004620018de565b62000b72565b620001e362000478366004620017b8565b62000bb6565b620001e36200048f366004620017b8565b62000df4565b620001ca620004a6366004620018f8565b62000f8c565b620002256200100b565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a008054600160401b810460ff16159067ffffffffffffffff16600081158015620004fd5750825b905060008267ffffffffffffffff1660011480156200051b5750303b155b9050811580156200052a575080155b15620005495760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156200057457845460ff60401b1916600160401b1785555b62000580338762000f8c565b8315620005c757845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b505050505050565b6000620005db620009de565b6001600160a01b0316336001600160a01b031614620006145760405163086391f760e31b81523360048201526024015b60405180910390fd5b60045415620006365760405163402b135f60e11b815260040160405180910390fd5b600062000642620009de565b905030838682620006548589620007f4565b604051620006629062001637565b620006709392919062001936565b8190604051809103906000f590508015801562000691573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b03929092169182179055604080516303639b8b60e21b8152905191945062000724918591630d8e6e2c9160048083019260209291908290030181865afa158015620006f6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200071c91906200196d565b878462001025565b6002546040516001600160a01b038881168252909116907f78922e3fa1abc96399973cb25528ba892214b57da9d1a573937c460d9f5eb4759060200160405180910390a250509392505050565b600254604080516303639b8b60e21b815290516000926001600160a01b031691630d8e6e2c9160048083019260209291908290030181865afa158015620007bc573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620007e291906200196d565b905090565b6000620007e230620013dc565b60606349bb9e4b60e01b8383604051602401620008139291906200198d565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915290505b92915050565b62000858620015eb565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b62000887620015eb565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b620008cf620015eb565b806001600160a01b03163b600003620009075760405163fdeac91f60e01b81526001600160a01b03821660048201526024016200060b565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263e607072160e01b60048201526301ffc9a790602401602060405180830381865afa92505050801562000984575060408051601f3d908101601f191682019092526200098191810190620019b3565b60015b620009ae5760405163fdeac91f60e01b81526001600160a01b03821660048201526024016200060b565b80620009d95760405163fdeac91f60e01b81526001600160a01b03831660048201526024016200060b565b505b50565b600080600080516020620029cd83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af415801562000a50573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000a769190620019b3565b1562000b07576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801562000adb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000b019190620019d7565b91505090565b54600160601b90046001600160a01b0316919050565b606063329d6e7460e01b8260405160240162000b3a919062001856565b60408051601f198184030181529190526020810180516001600160e01b03166001600160e01b03199093169290921790915292915050565b60006004828154811062000b8a5762000b8a620019f7565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b600062000bc2620009de565b6001600160a01b0316336001600160a01b03161462000bf75760405163086391f760e31b81523360048201526024016200060b565b60045460000362000c1b5760405163366dfd2160e21b815260040160405180910390fd5b600062000c27620009de565b9050600062000c3e6002546001600160a01b031690565b6001600160a01b0316638b3240a06040518163ffffffff1660e01b81526004016020604051808303816000875af115801562000c7e573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000ca49190620019d7565b6002549091506001600160a01b03908116908216639623609d828862000cca8962000b1d565b6040518463ffffffff1660e01b815260040162000cea9392919062001936565b600060405180830381600087803b15801562000d0557600080fd5b505af115801562000d1a573d6000803e3d6000fd5b50505050600260009054906101000a90046001600160a01b0316935062000da7846001600160a01b0316630d8e6e2c6040518163ffffffff1660e01b8152600401602060405180830381865afa15801562000d79573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000d9f91906200196d565b878562001025565b6002546040516001600160a01b038881168252909116907f1356a2c922be684528fa1759d1808395e5c5010181dd333cdb6f03e2d8545b659060200160405180910390a250505092915050565b600062000e00620009de565b6001600160a01b0316336001600160a01b03161462000e355760405163086391f760e31b81523360048201526024016200060b565b6004541562000e575760405163402b135f60e11b815260040160405180910390fd5b600062000e63620009de565b905030848162000e748487620007f4565b60405162000e829062001637565b62000e909392919062001936565b604051809103906000f08015801562000ead573d6000803e3d6000fd5b50600280546001600160a01b0319166001600160a01b03929092169182179055604080516303639b8b60e21b8152905191945062000f40918591630d8e6e2c9160048083019260209291908290030181865afa15801562000f12573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019062000f3891906200196d565b868462001025565b6002546040516001600160a01b038781168252909116907f78922e3fa1abc96399973cb25528ba892214b57da9d1a573937c460d9f5eb4759060200160405180910390a2505092915050565b62000f96620015eb565b62000fa181620008c5565b62000fab6200087d565b6001600160a01b03821662000fd35760405163f17ef42d60e01b815260040160405180910390fd5b50600080516020620029cd83398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b600254600090620007e2906001600160a01b0316620013dc565b620010a78373__$8eede297b65ed5a56eb3f84d8232ae93f5$__6304b8f6c56040518163ffffffff1660e01b8152600401602060405180830381865af415801562001074573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200109a91906200196d565b62ffffff90811691161490565b15620010c6576040516348c618db60e01b815260040160405180910390fd5b60045415620012315760048054620010e19060019062001a0d565b81548110620010f457620010f4620019f7565b60009182526020909120600a80830490910154604051635560100760e01b8152919092066003026101000a90910462ffffff16600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__90635560100790602401602060405180830381865af415801562001169573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200118f919062001a2f565b604051635560100760e01b815262ffffff8516600482015273__$8eede297b65ed5a56eb3f84d8232ae93f5$__90635560100790602401602060405180830381865af4158015620011e4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200120a919062001a2f565b116200123157604051633e614b6d60e11b815262ffffff841660048201526024016200060b565b600480546001810182556000829052600a8082047f8a35acfbc15ff81a39ae7d344fd709f28e8600b4aa8c65c6b64bfe7fe36bd19b01805462ffffff808916600394909506939093026101000a848102930219169190911790556040805160a0810182529182526001600160a01b038086166020848101919091529085168383015281516356db0c1960e11b815291519293606085019373__$91d01b1eccbca8d6f94a5eb2a0acb040e9$__9363adb6183293818401939092918290030181865af415801562001305573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200132b919062001a49565b64ffffffffff90811682524363ffffffff90811660209384015262ffffff968716600090815260038452604090819020855181549587015199166001600160b81b03199095169490941763010000006001600160a01b03998a1602178455840151600190930180546060860151608090960151949098166001600160c81b031990981697909717600160a01b94909216939093021763ffffffff60c81b1916600160c81b9190921602179092555050565b600080600080516020620029cd83398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$94a2c899be079b00d952d0d84fffaa5c34$__906330b8415f90602401602060405180830381865af41580156200144e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620014749190620019b3565b15620014a25780546040516301ab8b6760e21b81526001600160601b0390911660048201526024016200060b565b6001546001600160a01b031660405163c3c5a54760e01b81526001600160a01b038581166004830152919091169063c3c5a54790602401602060405180830381865afa158015620014f7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906200151d9190620019b3565b620015475760405163b9304b0d60e01b81526001600160a01b03841660048201526024016200060b565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038581166004830152919091169063d272ac1e90602401602060405180830381865afa1580156200159c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190620015c2919062001a72565b81546bffffffffffffffffffffffff19166001600160601b039190911690811790915592915050565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a0054600160401b900460ff166200163557604051631afcd79f60e31b815260040160405180910390fd5b565b610f2f8062001a9e83390190565b6000602082840312156200165857600080fd5b81356001600160e01b0319811681146200167157600080fd5b9392505050565b6001600160a01b0381168114620009db57600080fd5b600060208284031215620016a157600080fd5b8135620016718162001678565b634e487b7160e01b600052604160045260246000fd5b600082601f830112620016d657600080fd5b813567ffffffffffffffff80821115620016f457620016f4620016ae565b604051601f8301601f19908116603f011681019082821181831017156200171f576200171f620016ae565b816040528381528660208588010111156200173957600080fd5b836020870160208301376000602085830101528094505050505092915050565b6000806000606084860312156200176f57600080fd5b83356200177c8162001678565b9250602084013567ffffffffffffffff8111156200179957600080fd5b620017a786828701620016c4565b925050604084013590509250925092565b60008060408385031215620017cc57600080fd5b8235620017d98162001678565b9150602083013567ffffffffffffffff811115620017f657600080fd5b6200180485828601620016c4565b9150509250929050565b6000815180845260005b81811015620018365760208185018101518683018201520162001818565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006200167160208301846200180e565b62ffffff81168114620009db57600080fd5b6000602082840312156200189057600080fd5b813562001671816200186b565b600060208284031215620018b057600080fd5b813567ffffffffffffffff811115620018c857600080fd5b620018d684828501620016c4565b949350505050565b600060208284031215620018f157600080fd5b5035919050565b600080604083850312156200190c57600080fd5b8235620019198162001678565b915060208301356200192b8162001678565b809150509250929050565b6001600160a01b0384811682528316602082015260606040820181905260009062001964908301846200180e565b95945050505050565b6000602082840312156200198057600080fd5b815162001671816200186b565b6001600160a01b0383168152604060208201819052600090620018d6908301846200180e565b600060208284031215620019c657600080fd5b815180151581146200167157600080fd5b600060208284031215620019ea57600080fd5b8151620016718162001678565b634e487b7160e01b600052603260045260246000fd5b818103818111156200084857634e487b7160e01b600052601160045260246000fd5b60006020828403121562001a4257600080fd5b5051919050565b60006020828403121562001a5c57600080fd5b815164ffffffffff811681146200167157600080fd5b60006020828403121562001a8557600080fd5b81516001600160601b03811681146200167157600080fdfe60a06040523480156200001157600080fd5b5060405162000f2f38038062000f2f8339810160408190526200003491620003e1565b8282828281620000458282620000b0565b50508160405162000056906200037a565b6001600160a01b039091168152602001604051809103906000f08015801562000083573d6000803e3d6000fd5b506001600160a01b0316608052620000a46200009e60805190565b62000116565b505050505050620004df565b620000bb8262000188565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a2805115620001085762000103828262000208565b505050565b6200011262000285565b5050565b7f7e644d79422f17c01e4894b5f4f588d331ebfa28653d42ae832dc59e38c9798f6200015860008051602062000f0f833981519152546001600160a01b031690565b604080516001600160a01b03928316815291841660208301520160405180910390a16200018581620002a7565b50565b806001600160a01b03163b600003620001c457604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b807f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc5b80546001600160a01b0319166001600160a01b039290921691909117905550565b6060600080846001600160a01b031684604051620002279190620004c1565b600060405180830381855af49150503d806000811462000264576040519150601f19603f3d011682016040523d82523d6000602084013e62000269565b606091505b5090925090506200027c858383620002ea565b95945050505050565b3415620002a55760405163b398979f60e01b815260040160405180910390fd5b565b6001600160a01b038116620002d357604051633173bdd160e11b815260006004820152602401620001bb565b8060008051602062000f0f833981519152620001e7565b6060826200030357620002fd8262000350565b62000349565b81511580156200031b57506001600160a01b0384163b155b156200034657604051639996b31560e01b81526001600160a01b0385166004820152602401620001bb565b50805b9392505050565b805115620003615780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b61052480620009eb83390190565b80516001600160a01b0381168114620003a057600080fd5b919050565b634e487b7160e01b600052604160045260246000fd5b60005b83811015620003d8578181015183820152602001620003be565b50506000910152565b600080600060608486031215620003f757600080fd5b620004028462000388565b9250620004126020850162000388565b60408501519092506001600160401b03808211156200043057600080fd5b818601915086601f8301126200044557600080fd5b8151818111156200045a576200045a620003a5565b604051601f8201601f19908116603f01168101908382118183101715620004855762000485620003a5565b816040528281528960208487010111156200049f57600080fd5b620004b2836020830160208801620003bb565b80955050505050509250925092565b60008251620004d5818460208701620003bb565b9190910192915050565b6080516104eb620005006000396000818160370152607401526104eb6000f3fe60806040526004361061001e5760003560e01c80638b3240a014610028575b610026610072565b005b34801561003457600080fd5b507f00000000000000000000000000000000000000000000000000000000000000006040516001600160a01b03909116815260200160405180910390f35b7f00000000000000000000000000000000000000000000000000000000000000006001600160a01b031633036100df576000356001600160e01b03191663278f794360e11b146100d5576040516334ad5dbb60e21b815260040160405180910390fd5b6100dd6100ec565b565b6100dd61011b565b905090565b6000806100fc3660048184610376565b81019061010991906103b6565b91509150610117828261012b565b5050565b6100dd610126610186565b6101b9565b610134826101dd565b6040516001600160a01b038316907fbc7cd75a20ee27fd9adebab32041f755214dbc6bffa90cc0225b39da2e5c2d3b90600090a280511561017e576101798282610259565b505050565b6101176102cf565b60006100e77f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc546001600160a01b031690565b3660008037600080366000845af43d6000803e8080156101d8573d6000f35b3d6000fd5b806001600160a01b03163b60000361021857604051634c9c8ce360e01b81526001600160a01b03821660048201526024015b60405180910390fd5b7f360894a13ba1a3210667c828492db98dca3e2076cc3735a920a3ca505d382bbc80546001600160a01b0319166001600160a01b0392909216919091179055565b6060600080846001600160a01b0316846040516102769190610486565b600060405180830381855af49150503d80600081146102b1576040519150601f19603f3d011682016040523d82523d6000602084013e6102b6565b606091505b50915091506102c68583836102ee565b95945050505050565b34156100dd5760405163b398979f60e01b815260040160405180910390fd5b606082610303576102fe8261034d565b610346565b815115801561031a57506001600160a01b0384163b155b1561034357604051639996b31560e01b81526001600160a01b038516600482015260240161020f565b50805b9392505050565b80511561035d5780518082602001fd5b604051630a12f52160e11b815260040160405180910390fd5b6000808585111561038657600080fd5b8386111561039357600080fd5b5050820193919092039150565b634e487b7160e01b600052604160045260246000fd5b600080604083850312156103c957600080fd5b82356001600160a01b03811681146103e057600080fd5b9150602083013567ffffffffffffffff808211156103fd57600080fd5b818501915085601f83011261041157600080fd5b813581811115610423576104236103a0565b604051601f8201601f19908116603f0116810190838211818310171561044b5761044b6103a0565b8160405282815288602084870101111561046457600080fd5b8260208601602083013760006020848301015280955050505050509250929050565b6000825160005b818110156104a7576020818601810151858301520161048d565b50600092019182525091905056fea26469706673582212207fc3be0b67ab5a6f6fd34205d4d385e237910f1b59dc83ca95e83dbffe6cde3f64736f6c63430008140033608060405234801561001057600080fd5b5060405161052438038061052483398101604081905261002f916100be565b806001600160a01b03811661005e57604051631e4fbdf760e01b81526000600482015260240160405180910390fd5b6100678161006e565b50506100ee565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6000602082840312156100d057600080fd5b81516001600160a01b03811681146100e757600080fd5b9392505050565b610427806100fd6000396000f3fe60806040526004361061004a5760003560e01c8063715018a61461004f5780638da5cb5b146100665780639623609d14610093578063ad3cb1cc146100a6578063f2fde38b146100e4575b600080fd5b34801561005b57600080fd5b50610064610104565b005b34801561007257600080fd5b506000546040516001600160a01b0390911681526020015b60405180910390f35b6100646100a1366004610272565b610118565b3480156100b257600080fd5b506100d7604051806040016040528060058152602001640352e302e360dc1b81525081565b60405161008a919061038e565b3480156100f057600080fd5b506100646100ff3660046103a8565b610187565b61010c6101ca565b61011660006101f7565b565b6101206101ca565b60405163278f794360e11b81526001600160a01b03841690634f1ef28690349061015090869086906004016103c5565b6000604051808303818588803b15801561016957600080fd5b505af115801561017d573d6000803e3d6000fd5b5050505050505050565b61018f6101ca565b6001600160a01b0381166101be57604051631e4fbdf760e01b8152600060048201526024015b60405180910390fd5b6101c7816101f7565b50565b6000546001600160a01b031633146101165760405163118cdaa760e01b81523360048201526024016101b5565b600080546001600160a01b038381166001600160a01b0319831681178455604051919092169283917f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e09190a35050565b6001600160a01b03811681146101c757600080fd5b634e487b7160e01b600052604160045260246000fd5b60008060006060848603121561028757600080fd5b833561029281610247565b925060208401356102a281610247565b9150604084013567ffffffffffffffff808211156102bf57600080fd5b818601915086601f8301126102d357600080fd5b8135818111156102e5576102e561025c565b604051601f8201601f19908116603f0116810190838211818310171561030d5761030d61025c565b8160405282815289602084870101111561032657600080fd5b8260208601602083013760006020848301015280955050505050509250925092565b6000815180845260005b8181101561036e57602081850181015186830182015201610352565b506000602082860101526020601f19601f83011685010191505092915050565b6020815260006103a16020830184610348565b9392505050565b6000602082840312156103ba57600080fd5b81356103a181610247565b6001600160a01b03831681526040602082018190526000906103e990830184610348565b94935050505056fea2646970667358221220cb46d8eee562c2068d4d3afab9e2a7f48be119bb61a6a1c3d7ef6ba5a8aff09464736f6c63430008140033b53127684a568b3173ae13b9f8a6016e243e63b6e8ee1178d6a717850b5d610307ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00a2646970667358221220402cf40c3e0935816c259f14215fa5bdcde70bffc3d206ef20c600c4a6b87dd164736f6c63430008140033",
|
554
|
+
"linkReferences": {
|
555
|
+
"contracts/type/Amount.sol": {
|
556
|
+
"AmountLib": [
|
557
|
+
{
|
558
|
+
"length": 20,
|
559
|
+
"start": 18137
|
560
|
+
},
|
561
|
+
{
|
562
|
+
"length": 20,
|
563
|
+
"start": 19480
|
564
|
+
},
|
565
|
+
{
|
566
|
+
"length": 20,
|
567
|
+
"start": 23906
|
568
|
+
},
|
569
|
+
{
|
570
|
+
"length": 20,
|
571
|
+
"start": 24167
|
572
|
+
},
|
573
|
+
{
|
574
|
+
"length": 20,
|
575
|
+
"start": 24434
|
576
|
+
},
|
577
|
+
{
|
578
|
+
"length": 20,
|
579
|
+
"start": 24695
|
580
|
+
},
|
581
|
+
{
|
582
|
+
"length": 20,
|
583
|
+
"start": 28882
|
584
|
+
},
|
585
|
+
{
|
586
|
+
"length": 20,
|
587
|
+
"start": 36277
|
588
|
+
},
|
589
|
+
{
|
590
|
+
"length": 20,
|
591
|
+
"start": 36434
|
592
|
+
}
|
593
|
+
]
|
594
|
+
},
|
595
|
+
"contracts/type/Fee.sol": {
|
596
|
+
"FeeLib": [
|
597
|
+
{
|
598
|
+
"length": 20,
|
599
|
+
"start": 17175
|
600
|
+
},
|
601
|
+
{
|
602
|
+
"length": 20,
|
603
|
+
"start": 17396
|
604
|
+
},
|
605
|
+
{
|
606
|
+
"length": 20,
|
607
|
+
"start": 18792
|
608
|
+
},
|
609
|
+
{
|
610
|
+
"length": 20,
|
611
|
+
"start": 19008
|
612
|
+
},
|
613
|
+
{
|
614
|
+
"length": 20,
|
615
|
+
"start": 21115
|
616
|
+
},
|
617
|
+
{
|
618
|
+
"length": 20,
|
619
|
+
"start": 21328
|
620
|
+
},
|
621
|
+
{
|
622
|
+
"length": 20,
|
623
|
+
"start": 21527
|
624
|
+
}
|
625
|
+
]
|
626
|
+
},
|
627
|
+
"contracts/type/NftId.sol": {
|
628
|
+
"NftIdLib": [
|
629
|
+
{
|
630
|
+
"length": 20,
|
631
|
+
"start": 1137
|
632
|
+
},
|
633
|
+
{
|
634
|
+
"length": 20,
|
635
|
+
"start": 5930
|
636
|
+
},
|
637
|
+
{
|
638
|
+
"length": 20,
|
639
|
+
"start": 8488
|
640
|
+
},
|
641
|
+
{
|
642
|
+
"length": 20,
|
643
|
+
"start": 15992
|
644
|
+
},
|
645
|
+
{
|
646
|
+
"length": 20,
|
647
|
+
"start": 19769
|
648
|
+
},
|
649
|
+
{
|
650
|
+
"length": 20,
|
651
|
+
"start": 24979
|
652
|
+
},
|
653
|
+
{
|
654
|
+
"length": 20,
|
655
|
+
"start": 28548
|
656
|
+
},
|
657
|
+
{
|
658
|
+
"length": 20,
|
659
|
+
"start": 30252
|
660
|
+
}
|
661
|
+
]
|
662
|
+
},
|
663
|
+
"contracts/type/RoleId.sol": {
|
664
|
+
"RoleIdLib": [
|
665
|
+
{
|
666
|
+
"length": 20,
|
667
|
+
"start": 26839
|
668
|
+
},
|
669
|
+
{
|
670
|
+
"length": 20,
|
671
|
+
"start": 27050
|
672
|
+
},
|
673
|
+
{
|
674
|
+
"length": 20,
|
675
|
+
"start": 28362
|
676
|
+
},
|
677
|
+
{
|
678
|
+
"length": 20,
|
679
|
+
"start": 28423
|
680
|
+
},
|
681
|
+
{
|
682
|
+
"length": 20,
|
683
|
+
"start": 28483
|
684
|
+
},
|
685
|
+
{
|
686
|
+
"length": 20,
|
687
|
+
"start": 30568
|
688
|
+
}
|
689
|
+
]
|
690
|
+
},
|
691
|
+
"contracts/type/Timestamp.sol": {
|
692
|
+
"TimestampLib": [
|
693
|
+
{
|
694
|
+
"length": 20,
|
695
|
+
"start": 2177
|
696
|
+
},
|
697
|
+
{
|
698
|
+
"length": 20,
|
699
|
+
"start": 8159
|
700
|
+
}
|
701
|
+
]
|
702
|
+
},
|
703
|
+
"contracts/type/Version.sol": {
|
704
|
+
"VersionLib": [
|
705
|
+
{
|
706
|
+
"length": 20,
|
707
|
+
"start": 1507
|
708
|
+
},
|
709
|
+
{
|
710
|
+
"length": 20,
|
711
|
+
"start": 1765
|
712
|
+
},
|
713
|
+
{
|
714
|
+
"length": 20,
|
715
|
+
"start": 1888
|
716
|
+
},
|
717
|
+
{
|
718
|
+
"length": 20,
|
719
|
+
"start": 7489
|
720
|
+
},
|
721
|
+
{
|
722
|
+
"length": 20,
|
723
|
+
"start": 7747
|
724
|
+
},
|
725
|
+
{
|
726
|
+
"length": 20,
|
727
|
+
"start": 7870
|
728
|
+
},
|
729
|
+
{
|
730
|
+
"length": 20,
|
731
|
+
"start": 15830
|
732
|
+
},
|
733
|
+
{
|
734
|
+
"length": 20,
|
735
|
+
"start": 16619
|
736
|
+
},
|
737
|
+
{
|
738
|
+
"length": 20,
|
739
|
+
"start": 29506
|
740
|
+
}
|
741
|
+
],
|
742
|
+
"VersionPartLib": [
|
743
|
+
{
|
744
|
+
"length": 20,
|
745
|
+
"start": 20268
|
746
|
+
}
|
747
|
+
]
|
748
|
+
}
|
749
|
+
},
|
750
|
+
"deployedLinkReferences": {
|
751
|
+
"contracts/type/NftId.sol": {
|
752
|
+
"NftIdLib": [
|
753
|
+
{
|
754
|
+
"length": 20,
|
755
|
+
"start": 2581
|
756
|
+
},
|
757
|
+
{
|
758
|
+
"length": 20,
|
759
|
+
"start": 5139
|
760
|
+
}
|
761
|
+
]
|
762
|
+
},
|
763
|
+
"contracts/type/Timestamp.sol": {
|
764
|
+
"TimestampLib": [
|
765
|
+
{
|
766
|
+
"length": 20,
|
767
|
+
"start": 4810
|
768
|
+
}
|
769
|
+
]
|
770
|
+
},
|
771
|
+
"contracts/type/Version.sol": {
|
772
|
+
"VersionLib": [
|
773
|
+
{
|
774
|
+
"length": 20,
|
775
|
+
"start": 4140
|
776
|
+
},
|
777
|
+
{
|
778
|
+
"length": 20,
|
779
|
+
"start": 4398
|
780
|
+
},
|
781
|
+
{
|
782
|
+
"length": 20,
|
783
|
+
"start": 4521
|
784
|
+
}
|
785
|
+
]
|
786
|
+
}
|
787
|
+
}
|
788
|
+
}
|