@etherisc/gif-next 0.0.2-9105e58-225 → 0.0.2-917cede-703
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -83
- package/artifacts/contracts/components/Component.sol/Component.dbg.json +1 -1
- package/artifacts/contracts/components/Component.sol/Component.json +78 -100
- package/artifacts/contracts/components/Distribution.sol/Distribution.dbg.json +1 -1
- package/artifacts/contracts/components/Distribution.sol/Distribution.json +139 -194
- package/artifacts/contracts/components/IComponent.sol/IComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IComponent.sol/IComponent.json +156 -64
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IDistributionComponent.sol/IDistributionComponent.json +169 -143
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IPoolComponent.sol/IPoolComponent.json +353 -176
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.dbg.json +1 -1
- package/artifacts/contracts/components/IProductComponent.sol/IProductComponent.json +162 -138
- package/artifacts/contracts/components/Pool.sol/Pool.dbg.json +1 -1
- package/artifacts/contracts/components/Pool.sol/Pool.json +291 -248
- package/artifacts/contracts/components/Product.sol/Product.dbg.json +1 -1
- package/artifacts/contracts/components/Product.sol/Product.json +83 -173
- package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.dbg.json +4 -0
- package/artifacts/contracts/instance/AccessManagerUpgradeableInitializeable.sol/AccessManagerUpgradeableInitializeable.json +1206 -0
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.dbg.json +1 -1
- package/artifacts/contracts/instance/BundleManager.sol/BundleManager.json +64 -50
- package/artifacts/contracts/instance/Cloneable.sol/Cloneable.dbg.json +1 -1
- package/artifacts/contracts/instance/Cloneable.sol/Cloneable.json +5 -0
- package/artifacts/contracts/instance/IInstance.sol/IInstance.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstance.sol/IInstance.json +527 -400
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/IInstanceService.sol/IInstanceService.json +166 -181
- package/artifacts/contracts/instance/Instance.sol/Instance.dbg.json +1 -1
- package/artifacts/contracts/instance/Instance.sol/Instance.json +500 -623
- package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceAccessManager.sol/InstanceAccessManager.json +472 -126
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceReader.sol/InstanceReader.json +253 -236
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceService.sol/InstanceService.json +300 -384
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/InstanceServiceManager.sol/InstanceServiceManager.json +246 -84
- package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.dbg.json +1 -1
- package/artifacts/contracts/instance/ObjectManager.sol/ObjectManager.json +8 -13
- package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ComponentService.sol/ComponentService.json +71 -166
- package/artifacts/contracts/instance/base/IKeyValueStore.sol/IKeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/ILifecycle.sol/ILifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.dbg.json +1 -1
- package/artifacts/contracts/instance/base/KeyValueStore.sol/KeyValueStore.json +40 -10
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.dbg.json +1 -1
- package/artifacts/contracts/instance/base/Lifecycle.sol/Lifecycle.json +36 -11
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IAccess.sol/IAccess.json +56 -73
- package/artifacts/contracts/instance/module/IBundle.sol/IBundle.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.dbg.json +4 -0
- package/artifacts/contracts/instance/module/IComponents.sol/IComponents.json +10 -0
- package/artifacts/contracts/instance/module/IDistribution.sol/IDistribution.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IPolicy.sol/IPolicy.dbg.json +1 -1
- package/artifacts/contracts/instance/module/IRisk.sol/IRisk.dbg.json +1 -1
- package/artifacts/contracts/instance/module/ISetup.sol/ISetup.dbg.json +1 -1
- package/artifacts/contracts/instance/module/ITreasury.sol/ITreasury.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ApplicationService.sol/ApplicationService.json +266 -253
- package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ApplicationServiceManager.sol/ApplicationServiceManager.json +214 -76
- package/artifacts/contracts/instance/service/BundleService.sol/BundleService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/BundleService.sol/BundleService.json +409 -386
- package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/BundleServiceManager.sol/BundleServiceManager.json +249 -71
- package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ClaimService.sol/ClaimService.json +338 -230
- package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ClaimServiceManager.sol/ClaimServiceManager.json +225 -63
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/DistributionService.sol/DistributionService.json +883 -233
- package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/DistributionServiceManager.sol/DistributionServiceManager.json +308 -78
- package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IApplicationService.sol/IApplicationService.json +196 -181
- package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IBundleService.sol/IBundleService.json +233 -296
- package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IClaimService.sol/IClaimService.json +231 -177
- package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IDistributionService.sol/IDistributionService.json +594 -134
- package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IPolicyService.sol/IPolicyService.json +405 -190
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IPoolService.sol/IPoolService.json +583 -109
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/IProductService.sol/IProductService.json +68 -141
- package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/PolicyService.sol/PolicyService.json +525 -296
- package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/PolicyServiceManager.sol/PolicyServiceManager.json +228 -86
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/PoolService.sol/PoolService.json +734 -206
- package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/PoolServiceManager.sol/PoolServiceManager.json +234 -68
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ProductService.sol/ProductService.json +107 -222
- package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.dbg.json +1 -1
- package/artifacts/contracts/instance/service/ProductServiceManager.sol/ProductServiceManager.json +191 -73
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.dbg.json +1 -1
- package/artifacts/contracts/registry/ChainNft.sol/ChainNft.json +15 -2
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistry.sol/IRegistry.json +19 -0
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/IRegistryService.sol/IRegistryService.json +0 -163
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.dbg.json +1 -1
- package/artifacts/contracts/registry/ITransferInterceptor.sol/ITransferInterceptor.json +18 -0
- package/artifacts/contracts/registry/Registry.sol/Registry.dbg.json +1 -1
- package/artifacts/contracts/registry/Registry.sol/Registry.json +31 -12
- package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryAccessManager.sol/RegistryAccessManager.json +2 -2
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryService.sol/RegistryService.json +24 -221
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.dbg.json +1 -1
- package/artifacts/contracts/registry/RegistryServiceManager.sol/RegistryServiceManager.json +184 -70
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.dbg.json +1 -1
- package/artifacts/contracts/registry/ReleaseManager.sol/ReleaseManager.json +23 -11
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.dbg.json +1 -1
- package/artifacts/contracts/registry/TokenRegistry.sol/TokenRegistry.json +2 -2
- package/artifacts/contracts/shared/ContractDeployerLib.sol/ContractDeployerLib.dbg.json +1 -1
- package/artifacts/contracts/shared/ERC165.sol/ERC165.dbg.json +1 -1
- package/artifacts/contracts/shared/INftOwnable.sol/INftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/IPolicyHolder.sol/IPolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegisterable.sol/IRegisterable.dbg.json +1 -1
- package/artifacts/contracts/shared/IRegistryLinked.sol/IRegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.dbg.json +1 -1
- package/artifacts/contracts/shared/IService.sol/IService.json +68 -141
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.dbg.json +1 -1
- package/artifacts/contracts/shared/IVersionable.sol/IVersionable.json +0 -150
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.dbg.json +1 -1
- package/artifacts/contracts/shared/NftOwnable.sol/NftOwnable.json +2 -2
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.dbg.json +1 -1
- package/artifacts/contracts/shared/PolicyHolder.sol/PolicyHolder.json +2 -2
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.dbg.json +1 -1
- package/artifacts/contracts/shared/ProxyManager.sol/ProxyManager.json +169 -53
- package/artifacts/contracts/shared/Registerable.sol/Registerable.dbg.json +1 -1
- package/artifacts/contracts/shared/Registerable.sol/Registerable.json +5 -16
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.dbg.json +1 -1
- package/artifacts/contracts/shared/RegistryLinked.sol/RegistryLinked.json +2 -2
- package/artifacts/contracts/shared/Service.sol/Service.dbg.json +1 -1
- package/artifacts/contracts/shared/Service.sol/Service.json +82 -161
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.dbg.json +1 -1
- package/artifacts/contracts/shared/TokenHandler.sol/TokenHandler.json +2 -2
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.dbg.json +1 -1
- package/artifacts/contracts/shared/UpgradableProxyWithAdmin.sol/UpgradableProxyWithAdmin.json +2 -2
- package/artifacts/contracts/shared/Versionable.sol/Versionable.dbg.json +1 -1
- package/artifacts/contracts/shared/Versionable.sol/Versionable.json +0 -150
- package/artifacts/contracts/test/TestFee.sol/TestFee.dbg.json +1 -1
- package/artifacts/contracts/test/TestFee.sol/TestFee.json +2 -2
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.dbg.json +1 -1
- package/artifacts/contracts/test/TestRegisterable.sol/TestRegisterable.json +6 -17
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.dbg.json +1 -1
- package/artifacts/contracts/test/TestRoleId.sol/TestRoleId.json +6 -6
- package/artifacts/contracts/test/TestService.sol/TestService.dbg.json +1 -1
- package/artifacts/contracts/test/TestService.sol/TestService.json +100 -211
- package/artifacts/contracts/test/TestToken.sol/TestUsdc.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersion.sol/TestVersion.json +2 -2
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.dbg.json +1 -1
- package/artifacts/contracts/test/TestVersionable.sol/TestVersionable.json +6 -188
- package/artifacts/contracts/test/Usdc.sol/USDC.dbg.json +1 -1
- package/artifacts/contracts/types/AddressSet.sol/LibAddressSet.dbg.json +1 -1
- package/artifacts/contracts/types/Amount.sol/AmountLib.dbg.json +4 -0
- package/artifacts/contracts/types/Amount.sol/AmountLib.json +209 -0
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.dbg.json +1 -1
- package/artifacts/contracts/types/Blocknumber.sol/BlocknumberLib.json +2 -2
- package/artifacts/contracts/types/ChainId.sol/ChainIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/ClaimId.sol/ClaimIdLib.json +83 -4
- package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.dbg.json +1 -1
- package/artifacts/contracts/types/DistributorType.sol/DistributorTypeLib.json +2 -2
- package/artifacts/contracts/types/Fee.sol/FeeLib.dbg.json +1 -1
- package/artifacts/contracts/types/Fee.sol/FeeLib.json +40 -9
- package/artifacts/contracts/types/Key32.sol/Key32Lib.dbg.json +1 -1
- package/artifacts/contracts/types/Key32.sol/Key32Lib.json +2 -2
- package/artifacts/contracts/types/NftId.sol/NftIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/NftId.sol/NftIdLib.json +17 -4
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.dbg.json +1 -1
- package/artifacts/contracts/types/NftIdSet.sol/LibNftIdSet.json +2 -2
- package/artifacts/contracts/types/NumberId.sol/NumberIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.dbg.json +1 -1
- package/artifacts/contracts/types/ObjectType.sol/ObjectTypeLib.json +2 -2
- package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/PayoutId.sol/PayoutIdLib.json +116 -7
- package/artifacts/contracts/types/Referral.sol/ReferralLib.dbg.json +1 -1
- package/artifacts/contracts/types/Referral.sol/ReferralLib.json +23 -4
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/RiskId.sol/RiskIdLib.json +2 -2
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/RoleId.sol/RoleIdLib.json +2 -2
- package/artifacts/contracts/types/Seconds.sol/SecondsLib.dbg.json +4 -0
- package/artifacts/contracts/types/Seconds.sol/SecondsLib.json +124 -0
- package/artifacts/contracts/types/StateId.sol/StateIdLib.dbg.json +1 -1
- package/artifacts/contracts/types/StateId.sol/StateIdLib.json +2 -2
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.dbg.json +1 -1
- package/artifacts/contracts/types/Timestamp.sol/TimestampLib.json +38 -7
- package/artifacts/contracts/types/UFixed.sol/MathLib.dbg.json +1 -1
- package/artifacts/contracts/types/UFixed.sol/MathLib.json +2 -2
- package/artifacts/contracts/types/UFixed.sol/UFixedLib.dbg.json +1 -1
- package/artifacts/contracts/types/UFixed.sol/UFixedLib.json +2 -2
- package/artifacts/contracts/types/Version.sol/VersionLib.dbg.json +1 -1
- package/artifacts/contracts/types/Version.sol/VersionLib.json +2 -2
- package/artifacts/contracts/types/Version.sol/VersionPartLib.dbg.json +1 -1
- package/artifacts/contracts/types/Version.sol/VersionPartLib.json +2 -2
- package/contracts/components/Component.sol +99 -88
- package/contracts/components/Distribution.sol +22 -46
- package/contracts/components/IComponent.sol +40 -19
- package/contracts/components/IDistributionComponent.sol +1 -30
- package/contracts/components/IPoolComponent.sol +73 -47
- package/contracts/components/IProductComponent.sol +3 -2
- package/contracts/components/Pool.sol +178 -130
- package/contracts/components/Product.sol +157 -71
- package/contracts/instance/AccessManagerUpgradeableInitializeable.sol +13 -0
- package/contracts/instance/BundleManager.sol +10 -9
- package/contracts/instance/Cloneable.sol +7 -2
- package/contracts/instance/IInstance.sol +37 -27
- package/contracts/instance/IInstanceService.sol +18 -9
- package/contracts/instance/Instance.sol +117 -98
- package/contracts/instance/InstanceAccessManager.sol +388 -158
- package/contracts/instance/InstanceReader.sol +36 -12
- package/contracts/instance/InstanceService.sol +193 -191
- package/contracts/instance/ObjectManager.sol +6 -8
- package/contracts/instance/base/ComponentService.sol +17 -30
- package/contracts/instance/base/KeyValueStore.sol +13 -5
- package/contracts/instance/base/Lifecycle.sol +23 -6
- package/contracts/instance/module/IAccess.sol +21 -14
- package/contracts/instance/module/IBundle.sol +8 -5
- package/contracts/instance/module/IComponents.sol +41 -0
- package/contracts/instance/module/IDistribution.sol +2 -0
- package/contracts/instance/module/IPolicy.sol +37 -7
- package/contracts/instance/module/ISetup.sol +7 -21
- package/contracts/instance/service/ApplicationService.sol +137 -50
- package/contracts/instance/service/BundleService.sol +228 -83
- package/contracts/instance/service/ClaimService.sol +114 -26
- package/contracts/instance/service/DistributionService.sol +225 -71
- package/contracts/instance/service/IApplicationService.sol +9 -13
- package/contracts/instance/service/IBundleService.sol +74 -26
- package/contracts/instance/service/IClaimService.sol +46 -15
- package/contracts/instance/service/IDistributionService.sol +37 -3
- package/contracts/instance/service/IPolicyService.sol +69 -21
- package/contracts/instance/service/IPoolService.sol +85 -3
- package/contracts/instance/service/PolicyService.sol +301 -230
- package/contracts/instance/service/PolicyServiceManager.sol +1 -1
- package/contracts/instance/service/PoolService.sol +245 -18
- package/contracts/instance/service/ProductService.sol +31 -54
- package/contracts/instance/service/ProductServiceManager.sol +1 -1
- package/contracts/registry/ChainNft.sol +8 -0
- package/contracts/registry/IRegistry.sol +2 -0
- package/contracts/registry/IRegistryService.sol +4 -3
- package/contracts/registry/ITransferInterceptor.sol +1 -0
- package/contracts/registry/Registry.sol +23 -20
- package/contracts/registry/RegistryService.sol +15 -16
- package/contracts/registry/ReleaseManager.sol +26 -33
- package/contracts/registry/TokenRegistry.sol +1 -6
- package/contracts/shared/IService.sol +4 -4
- package/contracts/shared/IVersionable.sol +4 -47
- package/contracts/shared/ProxyManager.sol +89 -22
- package/contracts/shared/Registerable.sol +2 -6
- package/contracts/shared/Service.sol +29 -17
- package/contracts/shared/TokenHandler.sol +11 -5
- package/contracts/shared/Versionable.sol +1 -90
- package/contracts/test/TestService.sol +1 -1
- package/contracts/types/Amount.sol +70 -0
- package/contracts/types/Blocknumber.sol +1 -0
- package/contracts/types/ClaimId.sol +25 -2
- package/contracts/types/Fee.sol +13 -5
- package/contracts/types/NftId.sol +8 -0
- package/contracts/types/ObjectType.sol +6 -5
- package/contracts/types/PayoutId.sol +33 -5
- package/contracts/types/Referral.sol +4 -0
- package/contracts/types/RoleId.sol +13 -6
- package/contracts/types/Seconds.sol +54 -0
- package/contracts/types/StateId.sol +7 -2
- package/contracts/types/Timestamp.sol +18 -13
- package/contracts/types/UFixed.sol +1 -0
- package/contracts/types/Version.sol +1 -0
- package/package.json +1 -1
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.dbg.json +0 -4
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Cloner.json +0 -66
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.dbg.json +0 -4
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock1.json +0 -24
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.dbg.json +0 -4
- package/artifacts/contracts/experiment/cloning/Cloner.sol/Mock2.json +0 -42
- 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/contracts/experiment/cloning/Cloner.sol +0 -47
- 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/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
@@ -7,16 +7,75 @@
|
|
7
7
|
"inputs": [
|
8
8
|
{
|
9
9
|
"internalType": "address",
|
10
|
-
"name": "
|
10
|
+
"name": "authority",
|
11
|
+
"type": "address"
|
12
|
+
}
|
13
|
+
],
|
14
|
+
"name": "AccessManagedInvalidAuthority",
|
15
|
+
"type": "error"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"inputs": [
|
19
|
+
{
|
20
|
+
"internalType": "address",
|
21
|
+
"name": "caller",
|
22
|
+
"type": "address"
|
23
|
+
},
|
24
|
+
{
|
25
|
+
"internalType": "uint32",
|
26
|
+
"name": "delay",
|
27
|
+
"type": "uint32"
|
28
|
+
}
|
29
|
+
],
|
30
|
+
"name": "AccessManagedRequiredDelay",
|
31
|
+
"type": "error"
|
32
|
+
},
|
33
|
+
{
|
34
|
+
"inputs": [
|
35
|
+
{
|
36
|
+
"internalType": "address",
|
37
|
+
"name": "caller",
|
11
38
|
"type": "address"
|
39
|
+
}
|
40
|
+
],
|
41
|
+
"name": "AccessManagedUnauthorized",
|
42
|
+
"type": "error"
|
43
|
+
},
|
44
|
+
{
|
45
|
+
"inputs": [
|
46
|
+
{
|
47
|
+
"internalType": "NftId",
|
48
|
+
"name": "bundleNftId",
|
49
|
+
"type": "uint96"
|
12
50
|
},
|
13
51
|
{
|
14
52
|
"internalType": "NftId",
|
15
|
-
"name": "
|
53
|
+
"name": "bundlePoolNftId",
|
54
|
+
"type": "uint96"
|
55
|
+
},
|
56
|
+
{
|
57
|
+
"internalType": "NftId",
|
58
|
+
"name": "poolNftId",
|
59
|
+
"type": "uint96"
|
60
|
+
}
|
61
|
+
],
|
62
|
+
"name": "ErrorApplicationServiceBundlePoolMismatch",
|
63
|
+
"type": "error"
|
64
|
+
},
|
65
|
+
{
|
66
|
+
"inputs": [
|
67
|
+
{
|
68
|
+
"internalType": "NftId",
|
69
|
+
"name": "callerNftId",
|
16
70
|
"type": "uint96"
|
71
|
+
},
|
72
|
+
{
|
73
|
+
"internalType": "ObjectType",
|
74
|
+
"name": "callerType",
|
75
|
+
"type": "uint8"
|
17
76
|
}
|
18
77
|
],
|
19
|
-
"name": "
|
78
|
+
"name": "ErrorApplicationServiceNotProduct",
|
20
79
|
"type": "error"
|
21
80
|
},
|
22
81
|
{
|
@@ -164,28 +223,6 @@
|
|
164
223
|
"name": "ErrorNotRegistry",
|
165
224
|
"type": "error"
|
166
225
|
},
|
167
|
-
{
|
168
|
-
"inputs": [
|
169
|
-
{
|
170
|
-
"internalType": "address",
|
171
|
-
"name": "registryAddress",
|
172
|
-
"type": "address"
|
173
|
-
}
|
174
|
-
],
|
175
|
-
"name": "ErrorRegisterableNotRegistry",
|
176
|
-
"type": "error"
|
177
|
-
},
|
178
|
-
{
|
179
|
-
"inputs": [
|
180
|
-
{
|
181
|
-
"internalType": "NftId",
|
182
|
-
"name": "applicationNftId",
|
183
|
-
"type": "uint96"
|
184
|
-
}
|
185
|
-
],
|
186
|
-
"name": "IApplicationServicePolicyNotApplied",
|
187
|
-
"type": "error"
|
188
|
-
},
|
189
226
|
{
|
190
227
|
"inputs": [],
|
191
228
|
"name": "InvalidInitialization",
|
@@ -201,12 +238,12 @@
|
|
201
238
|
"inputs": [
|
202
239
|
{
|
203
240
|
"indexed": false,
|
204
|
-
"internalType": "
|
205
|
-
"name": "
|
206
|
-
"type": "
|
241
|
+
"internalType": "address",
|
242
|
+
"name": "authority",
|
243
|
+
"type": "address"
|
207
244
|
}
|
208
245
|
],
|
209
|
-
"name": "
|
246
|
+
"name": "AuthorityUpdated",
|
210
247
|
"type": "event"
|
211
248
|
},
|
212
249
|
{
|
@@ -214,24 +251,12 @@
|
|
214
251
|
"inputs": [
|
215
252
|
{
|
216
253
|
"indexed": false,
|
217
|
-
"internalType": "
|
254
|
+
"internalType": "uint64",
|
218
255
|
"name": "version",
|
219
|
-
"type": "
|
220
|
-
},
|
221
|
-
{
|
222
|
-
"indexed": false,
|
223
|
-
"internalType": "address",
|
224
|
-
"name": "implementation",
|
225
|
-
"type": "address"
|
226
|
-
},
|
227
|
-
{
|
228
|
-
"indexed": false,
|
229
|
-
"internalType": "address",
|
230
|
-
"name": "activatedBy",
|
231
|
-
"type": "address"
|
256
|
+
"type": "uint64"
|
232
257
|
}
|
233
258
|
],
|
234
|
-
"name": "
|
259
|
+
"name": "Initialized",
|
235
260
|
"type": "event"
|
236
261
|
},
|
237
262
|
{
|
@@ -303,8 +328,26 @@
|
|
303
328
|
"stateMutability": "nonpayable",
|
304
329
|
"type": "function"
|
305
330
|
},
|
331
|
+
{
|
332
|
+
"inputs": [],
|
333
|
+
"name": "authority",
|
334
|
+
"outputs": [
|
335
|
+
{
|
336
|
+
"internalType": "address",
|
337
|
+
"name": "",
|
338
|
+
"type": "address"
|
339
|
+
}
|
340
|
+
],
|
341
|
+
"stateMutability": "view",
|
342
|
+
"type": "function"
|
343
|
+
},
|
306
344
|
{
|
307
345
|
"inputs": [
|
346
|
+
{
|
347
|
+
"internalType": "NftId",
|
348
|
+
"name": "productNftId",
|
349
|
+
"type": "uint96"
|
350
|
+
},
|
308
351
|
{
|
309
352
|
"internalType": "RiskId",
|
310
353
|
"name": "riskId",
|
@@ -316,9 +359,9 @@
|
|
316
359
|
"type": "uint256"
|
317
360
|
},
|
318
361
|
{
|
319
|
-
"internalType": "
|
362
|
+
"internalType": "Seconds",
|
320
363
|
"name": "lifetime",
|
321
|
-
"type": "
|
364
|
+
"type": "uint40"
|
322
365
|
},
|
323
366
|
{
|
324
367
|
"internalType": "bytes",
|
@@ -339,29 +382,86 @@
|
|
339
382
|
"name": "calculatePremium",
|
340
383
|
"outputs": [
|
341
384
|
{
|
342
|
-
"
|
343
|
-
|
344
|
-
|
345
|
-
|
346
|
-
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
385
|
+
"components": [
|
386
|
+
{
|
387
|
+
"internalType": "uint256",
|
388
|
+
"name": "netPremiumAmount",
|
389
|
+
"type": "uint256"
|
390
|
+
},
|
391
|
+
{
|
392
|
+
"internalType": "uint256",
|
393
|
+
"name": "fullPremiumAmount",
|
394
|
+
"type": "uint256"
|
395
|
+
},
|
396
|
+
{
|
397
|
+
"internalType": "uint256",
|
398
|
+
"name": "premiumAmount",
|
399
|
+
"type": "uint256"
|
400
|
+
},
|
401
|
+
{
|
402
|
+
"internalType": "uint256",
|
403
|
+
"name": "productFeeFixAmount",
|
404
|
+
"type": "uint256"
|
405
|
+
},
|
406
|
+
{
|
407
|
+
"internalType": "uint256",
|
408
|
+
"name": "poolFeeFixAmount",
|
409
|
+
"type": "uint256"
|
410
|
+
},
|
411
|
+
{
|
412
|
+
"internalType": "uint256",
|
413
|
+
"name": "bundleFeeFixAmount",
|
414
|
+
"type": "uint256"
|
415
|
+
},
|
416
|
+
{
|
417
|
+
"internalType": "uint256",
|
418
|
+
"name": "distributionFeeFixAmount",
|
419
|
+
"type": "uint256"
|
420
|
+
},
|
421
|
+
{
|
422
|
+
"internalType": "uint256",
|
423
|
+
"name": "productFeeVarAmount",
|
424
|
+
"type": "uint256"
|
425
|
+
},
|
426
|
+
{
|
427
|
+
"internalType": "uint256",
|
428
|
+
"name": "poolFeeVarAmount",
|
429
|
+
"type": "uint256"
|
430
|
+
},
|
431
|
+
{
|
432
|
+
"internalType": "uint256",
|
433
|
+
"name": "bundleFeeVarAmount",
|
434
|
+
"type": "uint256"
|
435
|
+
},
|
436
|
+
{
|
437
|
+
"internalType": "uint256",
|
438
|
+
"name": "distributionFeeVarAmount",
|
439
|
+
"type": "uint256"
|
440
|
+
},
|
441
|
+
{
|
442
|
+
"internalType": "uint256",
|
443
|
+
"name": "distributionOwnerFeeFixAmount",
|
444
|
+
"type": "uint256"
|
445
|
+
},
|
446
|
+
{
|
447
|
+
"internalType": "uint256",
|
448
|
+
"name": "distributionOwnerFeeVarAmount",
|
449
|
+
"type": "uint256"
|
450
|
+
},
|
451
|
+
{
|
452
|
+
"internalType": "uint256",
|
453
|
+
"name": "commissionAmount",
|
454
|
+
"type": "uint256"
|
455
|
+
},
|
456
|
+
{
|
457
|
+
"internalType": "uint256",
|
458
|
+
"name": "discountAmount",
|
459
|
+
"type": "uint256"
|
460
|
+
}
|
461
|
+
],
|
462
|
+
"internalType": "struct IPolicy.Premium",
|
463
|
+
"name": "premium",
|
464
|
+
"type": "tuple"
|
365
465
|
}
|
366
466
|
],
|
367
467
|
"stateMutability": "view",
|
@@ -385,9 +485,9 @@
|
|
385
485
|
"type": "uint256"
|
386
486
|
},
|
387
487
|
{
|
388
|
-
"internalType": "
|
488
|
+
"internalType": "Seconds",
|
389
489
|
"name": "lifetime",
|
390
|
-
"type": "
|
490
|
+
"type": "uint40"
|
391
491
|
},
|
392
492
|
{
|
393
493
|
"internalType": "NftId",
|
@@ -479,19 +579,6 @@
|
|
479
579
|
"stateMutability": "view",
|
480
580
|
"type": "function"
|
481
581
|
},
|
482
|
-
{
|
483
|
-
"inputs": [],
|
484
|
-
"name": "getInitializedVersion",
|
485
|
-
"outputs": [
|
486
|
-
{
|
487
|
-
"internalType": "uint64",
|
488
|
-
"name": "",
|
489
|
-
"type": "uint64"
|
490
|
-
}
|
491
|
-
],
|
492
|
-
"stateMutability": "view",
|
493
|
-
"type": "function"
|
494
|
-
},
|
495
582
|
{
|
496
583
|
"inputs": [],
|
497
584
|
"name": "getInstanceService",
|
@@ -505,19 +592,6 @@
|
|
505
592
|
"stateMutability": "view",
|
506
593
|
"type": "function"
|
507
594
|
},
|
508
|
-
{
|
509
|
-
"inputs": [],
|
510
|
-
"name": "getMajorVersion",
|
511
|
-
"outputs": [
|
512
|
-
{
|
513
|
-
"internalType": "VersionPart",
|
514
|
-
"name": "majorVersion",
|
515
|
-
"type": "uint8"
|
516
|
-
}
|
517
|
-
],
|
518
|
-
"stateMutability": "view",
|
519
|
-
"type": "function"
|
520
|
-
},
|
521
595
|
{
|
522
596
|
"inputs": [],
|
523
597
|
"name": "getNftId",
|
@@ -596,84 +670,6 @@
|
|
596
670
|
"stateMutability": "pure",
|
597
671
|
"type": "function"
|
598
672
|
},
|
599
|
-
{
|
600
|
-
"inputs": [
|
601
|
-
{
|
602
|
-
"internalType": "uint256",
|
603
|
-
"name": "idx",
|
604
|
-
"type": "uint256"
|
605
|
-
}
|
606
|
-
],
|
607
|
-
"name": "getVersion",
|
608
|
-
"outputs": [
|
609
|
-
{
|
610
|
-
"internalType": "Version",
|
611
|
-
"name": "",
|
612
|
-
"type": "uint24"
|
613
|
-
}
|
614
|
-
],
|
615
|
-
"stateMutability": "view",
|
616
|
-
"type": "function"
|
617
|
-
},
|
618
|
-
{
|
619
|
-
"inputs": [],
|
620
|
-
"name": "getVersionCount",
|
621
|
-
"outputs": [
|
622
|
-
{
|
623
|
-
"internalType": "uint256",
|
624
|
-
"name": "",
|
625
|
-
"type": "uint256"
|
626
|
-
}
|
627
|
-
],
|
628
|
-
"stateMutability": "view",
|
629
|
-
"type": "function"
|
630
|
-
},
|
631
|
-
{
|
632
|
-
"inputs": [
|
633
|
-
{
|
634
|
-
"internalType": "Version",
|
635
|
-
"name": "_version",
|
636
|
-
"type": "uint24"
|
637
|
-
}
|
638
|
-
],
|
639
|
-
"name": "getVersionInfo",
|
640
|
-
"outputs": [
|
641
|
-
{
|
642
|
-
"components": [
|
643
|
-
{
|
644
|
-
"internalType": "Version",
|
645
|
-
"name": "version",
|
646
|
-
"type": "uint24"
|
647
|
-
},
|
648
|
-
{
|
649
|
-
"internalType": "address",
|
650
|
-
"name": "implementation",
|
651
|
-
"type": "address"
|
652
|
-
},
|
653
|
-
{
|
654
|
-
"internalType": "address",
|
655
|
-
"name": "activatedBy",
|
656
|
-
"type": "address"
|
657
|
-
},
|
658
|
-
{
|
659
|
-
"internalType": "Timestamp",
|
660
|
-
"name": "activatedAt",
|
661
|
-
"type": "uint40"
|
662
|
-
},
|
663
|
-
{
|
664
|
-
"internalType": "Blocknumber",
|
665
|
-
"name": "activatedIn",
|
666
|
-
"type": "uint32"
|
667
|
-
}
|
668
|
-
],
|
669
|
-
"internalType": "struct IVersionable.VersionInfo",
|
670
|
-
"name": "",
|
671
|
-
"type": "tuple"
|
672
|
-
}
|
673
|
-
],
|
674
|
-
"stateMutability": "view",
|
675
|
-
"type": "function"
|
676
|
-
},
|
677
673
|
{
|
678
674
|
"inputs": [],
|
679
675
|
"name": "initializeERC165",
|
@@ -728,7 +724,7 @@
|
|
728
724
|
},
|
729
725
|
{
|
730
726
|
"internalType": "bytes",
|
731
|
-
"name": "
|
727
|
+
"name": "registryData",
|
732
728
|
"type": "bytes"
|
733
729
|
}
|
734
730
|
],
|
@@ -757,6 +753,11 @@
|
|
757
753
|
"name": "registry",
|
758
754
|
"type": "address"
|
759
755
|
},
|
756
|
+
{
|
757
|
+
"internalType": "address",
|
758
|
+
"name": "authority",
|
759
|
+
"type": "address"
|
760
|
+
},
|
760
761
|
{
|
761
762
|
"internalType": "address",
|
762
763
|
"name": "initialOwner",
|
@@ -770,11 +771,6 @@
|
|
770
771
|
},
|
771
772
|
{
|
772
773
|
"inputs": [
|
773
|
-
{
|
774
|
-
"internalType": "address",
|
775
|
-
"name": "implementation",
|
776
|
-
"type": "address"
|
777
|
-
},
|
778
774
|
{
|
779
775
|
"internalType": "address",
|
780
776
|
"name": "activatedBy",
|
@@ -792,19 +788,13 @@
|
|
792
788
|
"type": "function"
|
793
789
|
},
|
794
790
|
{
|
795
|
-
"inputs": [
|
796
|
-
|
797
|
-
"internalType": "Version",
|
798
|
-
"name": "_version",
|
799
|
-
"type": "uint24"
|
800
|
-
}
|
801
|
-
],
|
802
|
-
"name": "isInitialized",
|
791
|
+
"inputs": [],
|
792
|
+
"name": "isConsumingScheduledOp",
|
803
793
|
"outputs": [
|
804
794
|
{
|
805
|
-
"internalType": "
|
795
|
+
"internalType": "bytes4",
|
806
796
|
"name": "",
|
807
|
-
"type": "
|
797
|
+
"type": "bytes4"
|
808
798
|
}
|
809
799
|
],
|
810
800
|
"stateMutability": "view",
|
@@ -867,6 +857,19 @@
|
|
867
857
|
"stateMutability": "nonpayable",
|
868
858
|
"type": "function"
|
869
859
|
},
|
860
|
+
{
|
861
|
+
"inputs": [
|
862
|
+
{
|
863
|
+
"internalType": "address",
|
864
|
+
"name": "newAuthority",
|
865
|
+
"type": "address"
|
866
|
+
}
|
867
|
+
],
|
868
|
+
"name": "setAuthority",
|
869
|
+
"outputs": [],
|
870
|
+
"stateMutability": "nonpayable",
|
871
|
+
"type": "function"
|
872
|
+
},
|
870
873
|
{
|
871
874
|
"inputs": [
|
872
875
|
{
|
@@ -888,16 +891,6 @@
|
|
888
891
|
},
|
889
892
|
{
|
890
893
|
"inputs": [
|
891
|
-
{
|
892
|
-
"internalType": "address",
|
893
|
-
"name": "implementation",
|
894
|
-
"type": "address"
|
895
|
-
},
|
896
|
-
{
|
897
|
-
"internalType": "address",
|
898
|
-
"name": "activatedBy",
|
899
|
-
"type": "address"
|
900
|
-
},
|
901
894
|
{
|
902
895
|
"internalType": "bytes",
|
903
896
|
"name": "data",
|
@@ -910,54 +903,54 @@
|
|
910
903
|
"type": "function"
|
911
904
|
}
|
912
905
|
],
|
913
|
-
"bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000d6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000735760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d35780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b61352e80620000e66000396000f3fe608060405234801561001057600080fd5b50600436106101f05760003560e01c8063644c45e01161010f578063b88da759116100a2578063e6eea2c511610071578063e6eea2c5146105b0578063ea866572146105c7578063f21de1e814610468578063f7c34ee0146105da57600080fd5b8063b88da75914610585578063caf4e3d414610598578063cc9fc59a146105a0578063cde749f4146105a857600080fd5b80639cdaa7f9116100de5780639cdaa7f914610500578063ada9652e1461053b578063b3c6501514610550578063b68d18091461057057600080fd5b8063644c45e0146104a0578063675393bf146104be578063893d20e8146104d1578063946dfcfe146104d957600080fd5b806327bb7a33116101875780634f421333116101565780634f4213331461043f578063536ef74b146104525780635ab1bd5314610468578063603ccaad1461048d57600080fd5b806327bb7a33146102f85780632a9040181461030b57806336fc697e1461031e5780634d459c901461032657600080fd5b8063138461e0116101c3578063138461e0146102935780631647f91e1461029d5780631eff4b22146102b0578063214cdb80146102e557600080fd5b806301ffc9a7146101f557806302131850146102375780630d8e6e2c146102625780630fec111c1461027e575b600080fd5b610222610203366004612523565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61024a6102453660046126e8565b6105ed565b6040516001600160601b03909116815260200161022e565b61026a6108a9565b60405162ffffff909116815260200161022e565b610286610933565b60405161022e91906127d2565b61029b610acf565b005b61029b6102ab36600461285d565b610cd6565b6102d77f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b60405190815260200161022e565b61029b6102f3366004612523565b610ddf565b61029b6103063660046128db565b610e0c565b61029b61031936600461285d565b610e9f565b61029b610ff9565b6103e2610334366004612984565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091526000805160206134d983398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a00161022e565b61022261044d366004612984565b61103f565b61024a6104603660046129a1565b600092915050565b6001546001600160a01b03165b6040516001600160a01b03909116815260200161022e565b61029b61049b3660046129da565b6110f2565b600080516020613499833981519152546001600160601b031661024a565b61029b6104cc3660046129f7565b611178565b610475611286565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed901546102d7565b61051361050e366004612a14565b6113bd565b604080519586526020860194909452928401919091526060830152608082015260a00161022e565b6102d760008051602061349983398151915281565b61055861149a565b6040516001600160401b03909116815260200161022e565b60d25b60405160ff909116815260200161022e565b61026a610593366004612a9c565b6114bb565b61047561150c565b6104756115a9565b6105736115d3565b61029b6105be366004612ab5565b50505050505050565b61029b6105d5366004612b34565b611656565b61029b6105e8366004612b34565b6116c9565b600080806105fb606e611740565b9150915061060761150c565b6001600160a01b0316635c992fed6040518060e00160405280610628600090565b6001600160601b039081168252865116602082015260400160d360ff16815260200160001515815260200160006001600160a01b031681526020018d6001600160a01b03168152602001604051806020016040528060008152508152506040518263ffffffff1660e01b81526004016106a191906127d2565b6020604051808303816000875af11580156106c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e49190612b72565b925060006106f68a8a8a888b8b6113bd565b505050509050600060405180610200016040528085600001516001600160601b03168152602001896001600160601b03168152602001886001600160c01b03191681526020018c6001600160c01b03191681526020018b8152602001838152602001600081526020018a8152602001878152602001604051806020016040528060008152508152602001600061ffff168152602001600061ffff168152602001600081526020016107a5600090565b64ffffffffff16815260006020820181905260409182015251600162f5f7fb60e01b031981529091506001600160a01b0384169063ff0a0805906107ef9088908590600401612b8f565b600060405180830381600087803b15801561080957600080fd5b505af115801561081d573d6000803e3d6000fd5b50505050826001600160a01b0316630fad0eb186610839600a90565b6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401600060405180830381600087803b15801561088257600080fd5b505af1158015610896573d6000803e3d6000fd5b5050505050505050979650505050505050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af415801561090a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092e9190612cf8565b905090565b61093b6124e5565b604080516080810182527f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b038116835260ff600160601b820481166020850152600160681b909104161515928201929092527f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30180546000939160608401916109cb90612d15565b80601f01602080910402602001604051908101604052809291908181526020018280546109f790612d15565b8015610a445780601f10610a1957610100808354040283529160200191610a44565b820191906000526020600020905b815481529060010190602001808311610a2757829003601f168201915b50505050508152505090506040518060e00160405280610a62600090565b6001600160601b0316815260200182600001516001600160601b03168152602001826020015160ff168152602001826040015115158152602001306001600160a01b03168152602001610ab3611286565b6001600160a01b03168152602001826060015181525091505090565b600060008051602061349983398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610b3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b629190612d5a565b15610b935780546040516301ab8b6760e21b81526001600160601b0390911660048201526024015b60405180910390fd5b30610ba66001546001600160a01b031690565b60405163c3c5a54760e01b81526001600160a01b038381166004830152919091169063c3c5a54790602401602060405180830381865afa158015610bee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c129190612d5a565b610c3a5760405163b9304b0d60e01b81526001600160a01b0382166004820152602401610b8a565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038381166004830152919091169063d272ac1e90602401602060405180830381865afa158015610c8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb29190612b72565b82546bffffffffffffffffffffffff19166001600160601b03919091161790915550565b6000805160206134b98339815191528054600160401b810460ff1615906001600160401b0316600081158015610d095750825b90506000826001600160401b03166001148015610d255750303b155b905081158015610d33575080155b15610d515760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d7b57845460ff60401b1916600160401b1785555b610d8588886119b7565b610d8f8787611c56565b8315610dd557845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610de7611d81565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b610e14611d81565b610e1e82876116c9565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0388166cffffffffffffffffffffffffff1990911617600160601b60ff8816021760ff60681b1916600160681b86151502178155905060018101610e8e8382612dc2565b506105be6303fb044760e21b610ddf565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c610ec16108a9565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f259190612e81565b6000805160206134b98339815191528054600160401b900460ff1680610f58575080546001600160401b03808416911610155b15610f765760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610fa185856119b7565b610faa83611dba565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b611001611d81565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b6000806000805160206134d983398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af41580156110c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110eb9190612eaa565b1192915050565b60006110fe606e611740565b9150506001600160a01b038116630fad0eb18360146040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401600060405180830381600087803b15801561115c57600080fd5b505af1158015611170573d6000803e3d6000fd5b505050505050565b611180611d81565b806001600160a01b03163b6000036111b65760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610b8a565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263230c0c8160e11b60048201526301ffc9a790602401602060405180830381865afa925050508015611230575060408051601f3d908101601f1916820190925261122d91810190612d5a565b60015b6112585760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610b8a565b806112815760405163fdeac91f60e01b81526001600160a01b0383166004820152602401610b8a565b505b50565b60008060008051602061349983398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af41580156112f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131a9190612d5a565b156113a7576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801561137d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a19190612ece565b91505090565b54600160601b90046001600160a01b0316919050565b6000806000806000806113ce611dc2565b90506000816001600160a01b0316635e78426b8d8f8e8e6040518563ffffffff1660e01b81526004016114049493929190612eeb565b602060405180830381865afa158015611421573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114459190612eaa565b905061145381838b8b611de1565b9850919650945092506114668582612f26565b96506114728385612f26565b61147c9088612f26565b96506114888688612f26565b96505050965096509650965096915050565b600061092e6000805160206134b9833981519152546001600160401b031690565b60006000805160206134d983398151915260010182815481106114e0576114e0612f47565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000806115216001546001600160a01b031690565b6001600160a01b031663d39e604360285b61153a6115d3565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa15801561157f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a39190612ece565b92915050565b6000806115be6001546001600160a01b031690565b6001600160a01b031663d39e60436046611532565b60006115dd6108a9565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af4158015611632573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092e9190612f68565b61165e611d81565b600060d261166a6115d3565b6040805160ff938416602082015292909116908201526060016040516020818303038152906040529050600061169f8461247a565b905060006116b28583603c848888610e0c565b6116c2637b6a51fd60e01b610ddf565b5050505050565b6116d1611d81565b6116da81611178565b6116e2610ff9565b6001600160a01b0382166117095760405163f17ef42d60e01b815260040160405180910390fd5b5060008051602061349983398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b6117486124e5565b60008061175d6001546001600160a01b031690565b6040516308b09a5f60e41b81523360048201529091506001600160a01b03821690638b09a5f090602401600060405180830381865afa1580156117a4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117cc9190810190612fca565b92506117e283604001518560ff90811691161490565b6118245760405162461bcd60e51b815260206004820152601360248201527213d0929150d517d516541157d2539590531251606a1b6044820152606401610b8a565b60208301516040516305247a1760e51b81526001600160601b0390911660048201526000906001600160a01b0383169063a48f42e090602401600060405180830381865afa15801561187a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118a29190810190612fca565b6080015190508092506000836001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061190f9190612ece565b6080860151604051629b7b3560e61b81526001600160a01b0391821660048201529192508216906326decd4090602401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190612d5a565b156119af57608085015160405163d53987e560e01b81526001600160a01b039091166004820152602401610b8a565b505050915091565b6119bf611d81565b6000805160206134d983398151915260006119ef6000805160206134b9833981519152546001600160401b031690565b905060006119fb6108a9565b9050816001600160401b0316600103611a285760028301805462ffffff191662ffffff8316179055611a76565b600283015462ffffff90811690821611611a765760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b6044820152606401610b8a565b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015611b2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b4e91906130b1565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf6890610fea9083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6000805160206134b98339815191528054600160401b810460ff1615906001600160401b0316600081158015611c895750825b90506000826001600160401b03166001148015611ca55750303b155b905081158015611cb3575080155b15611cd15760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611cfb57845460ff60401b1916600160401b1785555b60008087806020019051810190611d1291906130cc565b9092509050611d21828a611656565b611d316325ba904560e11b610ddf565b505083156105be57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a150505050505050565b6000805160206134b983398151915254600160401b900460ff16611db857604051631afcd79f60e31b815260040160405180910390fd5b565b6101f0611d81565b6000611dcc6124e5565b611dd6606e611740565b506080015192915050565b600080600080600080886001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4c9190612ece565b9050806001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eb09190612ece565b9150506000886001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f179190612b72565b604051634793b4ab60e01b81526001600160601b038a1660048201529091506000906001600160a01b03841690634793b4ab90602401600060405180830381865afa158015611f6a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f929190810190613149565b80519091506001600160601b03838116911614611ffc5760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5052532d3033353a42554e444c455f504f4f4c5f4d49534d4154604482015261086960f31b6064820152608401610b8a565b6000836001600160a01b03166390af70648c6001600160a01b03166251884a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561204a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206e9190612b72565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161024060405180830381865afa1580156120b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120d79190613229565b60a081015160405163012ebd8360e21b8152815160048201526020909101516024820152604481018e905290915073__$a23651848365a6a5ca15f07b4331037f48$__906304baf60c906064016040805180830381865af4158015612140573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121649190613320565b506040516355e343a960e01b81526001600160601b0385166004820152909850600091506001600160a01b038516906355e343a9906024016101c060405180830381865afa1580156121ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121de9190613344565b60e081015160405163012ebd8360e21b8152815160048201526020909101516024820152604481018e905290915073__$a23651848365a6a5ca15f07b4331037f48$__906304baf60c906064016040805180830381865af4158015612247573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061226b9190613320565b50809750505060008a6001600160a01b031663db6dcc956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122d59190612b72565b604051639ad69c6760e01b81526001600160601b03821660048201529091506000906001600160a01b03861690639ad69c679060240160a060405180830381865afa158015612328573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061234c9190613415565b604080820151905163012ebd8360e21b8152815160048201526020909101516024820152604481018f905290915073__$a23651848365a6a5ca15f07b4331037f48$__906304baf60c906064016040805180830381865af41580156123b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123d99190613320565b5060208481015160405163012ebd8360e21b8152815160048201529101516024820152604481018f905290965073__$a23651848365a6a5ca15f07b4331037f48$__92506304baf60c91506064016040805180830381865af4158015612443573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124679190613320565b5080955050505050945094509450949050565b604051636939560f60e11b81526001600160a01b0382166004820181905260009163d272ac1e90602401602060405180830381865afa1580156124c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a39190612b72565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b60006020828403121561253557600080fd5b81356001600160e01b03198116811461254d57600080fd5b9392505050565b6001600160a01b038116811461128357600080fd5b6001600160c01b03198116811461128357600080fd5b6001600160601b038116811461128357600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b03811182821017156125cc576125cc612594565b60405290565b60405161012081016001600160401b03811182821017156125cc576125cc612594565b60405161018081016001600160401b03811182821017156125cc576125cc612594565b60405161016081016001600160401b03811182821017156125cc576125cc612594565b604051601f8201601f191681016001600160401b038111828210171561266357612663612594565b604052919050565b60006001600160401b0382111561268457612684612594565b50601f01601f191660200190565b600082601f8301126126a357600080fd5b81356126b66126b18261266b565b61263b565b8181528460208386010111156126cb57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600060e0888a03121561270357600080fd5b873561270e81612554565b9650602088013561271e81612569565b95506040880135945060608801359350608088013561273c8161257f565b925060a088013561274c81612569565b915060c08801356001600160401b0381111561276757600080fd5b6127738a828b01612692565b91505092959891949750929550565b60005b8381101561279d578181015183820152602001612785565b50506000910152565b600081518084526127be816020860160208601612782565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a083015161283b60c08401826001600160a01b03169052565b5060c083015160e0808401526128556101008401826127a6565b949350505050565b60008060006060848603121561287257600080fd5b833561287d81612554565b9250602084013561288d81612554565b915060408401356001600160401b038111156128a857600080fd5b6128b486828701612692565b9150509250925092565b60ff8116811461128357600080fd5b801515811461128357600080fd5b60008060008060008060c087890312156128f457600080fd5b86356128ff81612554565b9550602087013561290f8161257f565b9450604087013561291f816128be565b9350606087013561292f816128cd565b9250608087013561293f81612554565b915060a08701356001600160401b0381111561295a57600080fd5b61296689828a01612692565b9150509295509295509295565b62ffffff8116811461128357600080fd5b60006020828403121561299657600080fd5b813561254d81612973565b600080604083850312156129b457600080fd5b82356129bf8161257f565b915060208301356129cf8161257f565b809150509250929050565b6000602082840312156129ec57600080fd5b813561254d8161257f565b600060208284031215612a0957600080fd5b813561254d81612554565b60008060008060008060c08789031215612a2d57600080fd5b8635612a3881612569565b9550602087013594506040870135935060608701356001600160401b03811115612a6157600080fd5b612a6d89828a01612692565b9350506080870135612a7e8161257f565b915060a0870135612a8e81612569565b809150509295509295509295565b600060208284031215612aae57600080fd5b5035919050565b600080600080600080600060e0888a031215612ad057600080fd5b8735612adb8161257f565b96506020880135612aeb81612569565b95506040880135612afb8161257f565b94506060880135612b0b81612569565b93506080880135925060a0880135915060c08801356001600160401b0381111561276757600080fd5b60008060408385031215612b4757600080fd5b8235612b5281612554565b915060208301356129cf81612554565b8051612b6d8161257f565b919050565b600060208284031215612b8457600080fd5b815161254d8161257f565b6001600160601b038316815260406020820152612bb86040820183516001600160601b03169052565b60006020830151612bd460608401826001600160601b03169052565b5060408301516001600160c01b0319811660808401525060608301516001600160c01b0319811660a084015250608083015160c083015260a083015160e083015260c0830151610100818185015260e08501519150610120828186015281860151925061020091506101408281870152612c526102408701856127a6565b9350818701519150610160603f198786030181880152612c7285846127a6565b94508188015192506101809150612c8e8288018461ffff169052565b87015191506101a0612ca58782018461ffff169052565b908701516101c0878101919091529087015191506101e0612cce8188018464ffffffffff169052565b9087015164ffffffffff908116938701939093528601519182166102208601525050949350505050565b600060208284031215612d0a57600080fd5b815161254d81612973565b600181811c90821680612d2957607f821691505b602082108103612d4957634e487b7160e01b600052602260045260246000fd5b50919050565b8051612b6d816128cd565b600060208284031215612d6c57600080fd5b815161254d816128cd565b601f821115612dbd57600081815260208120601f850160051c81016020861015612d9e5750805b601f850160051c820191505b8181101561117057828155600101612daa565b505050565b81516001600160401b03811115612ddb57612ddb612594565b612def81612de98454612d15565b84612d77565b602080601f831160018114612e245760008415612e0c5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b82811015612e5357888601518255948401946001909101908401612e34565b5085821015612e715787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215612e9357600080fd5b81516001600160401b038116811461254d57600080fd5b600060208284031215612ebc57600080fd5b5051919050565b8051612b6d81612554565b600060208284031215612ee057600080fd5b815161254d81612554565b8481526001600160401b0360c01b84166020820152826040820152608060608201526000612f1c60808301846127a6565b9695505050505050565b808201808211156115a357634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8051612b6d816128be565b600060208284031215612f7a57600080fd5b815161254d816128be565b600082601f830112612f9657600080fd5b8151612fa46126b18261266b565b818152846020838601011115612fb957600080fd5b612855826020830160208701612782565b600060208284031215612fdc57600080fd5b81516001600160401b0380821115612ff357600080fd5b9083019060e0828603121561300757600080fd5b61300f6125aa565b61301883612b62565b815261302660208401612b62565b602082015261303760408401612f5d565b604082015261304860608401612d4f565b606082015261305960808401612ec3565b608082015261306a60a08401612ec3565b60a082015260c08301518281111561308157600080fd5b61308d87828601612f85565b60c08301525095945050505050565b805164ffffffffff81168114612b6d57600080fd5b6000602082840312156130c357600080fd5b61254d8261309c565b600080604083850312156130df57600080fd5b82516130ea81612554565b60208401519092506129cf81612554565b60006040828403121561310d57600080fd5b604051604081018181106001600160401b038211171561312f5761312f612594565b604052825181526020928301519281019290925250919050565b60006020828403121561315b57600080fd5b81516001600160401b038082111561317257600080fd5b90830190610140828603121561318757600080fd5b61318f6125d2565b61319883612b62565b81526131a786602085016130fb565b60208201526060830151828111156131be57600080fd5b6131ca87828601612f85565b6040830152506080830151606082015260a0830151608082015260c083015160a082015260e083015160c0820152610100915061320882840161309c565b60e082015261321a610120840161309c565b91810191909152949350505050565b6000610240828403121561323c57600080fd5b6132446125f5565b61324d83612ec3565b815261325b60208401612ec3565b602082015261326c60408401612b62565b604082015261327d60608401612b62565b606082015261328f84608085016130fb565b60808201526132a18460c085016130fb565b60a08201526101006132b5858286016130fb565b60c08301526101406132c9868287016130fb565b60e08401526132dc8661018087016130fb565b828401526132ee866101c087016130fb565b6101208401526133016102008601612d4f565b90830152506133136102208401612ec3565b6101608201529392505050565b6000806040838503121561333357600080fd5b505080516020909101519092909150565b60006101c0828403121561335757600080fd5b61335f612618565b61336883612b62565b815261337660208401612ec3565b602082015261338760408401612d4f565b604082015261339860608401612d4f565b60608201526133a960808401612d4f565b608082015260a083015160a082015260c083015160c08201526133cf8460e085016130fb565b60e08201526101206133e3858286016130fb565b6101008301526133f78561016086016130fb565b908201526134086101a08401612ec3565b6101408201529392505050565b600060a0828403121561342757600080fd5b604051608081018181106001600160401b038211171561344957613449612594565b60405282516134578161257f565b8152602083015161346781612554565b602082015261347984604085016130fb565b6040820152608083015161348c81612554565b6060820152939250505056fe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a264697066735822122045a3294cb1aef6579a75f1ad15b152c5d3cee8422304870cc5236407e5ffd9b964736f6c63430008140033",
|
914
|
-
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101f05760003560e01c8063644c45e01161010f578063b88da759116100a2578063e6eea2c511610071578063e6eea2c5146105b0578063ea866572146105c7578063f21de1e814610468578063f7c34ee0146105da57600080fd5b8063b88da75914610585578063caf4e3d414610598578063cc9fc59a146105a0578063cde749f4146105a857600080fd5b80639cdaa7f9116100de5780639cdaa7f914610500578063ada9652e1461053b578063b3c6501514610550578063b68d18091461057057600080fd5b8063644c45e0146104a0578063675393bf146104be578063893d20e8146104d1578063946dfcfe146104d957600080fd5b806327bb7a33116101875780634f421333116101565780634f4213331461043f578063536ef74b146104525780635ab1bd5314610468578063603ccaad1461048d57600080fd5b806327bb7a33146102f85780632a9040181461030b57806336fc697e1461031e5780634d459c901461032657600080fd5b8063138461e0116101c3578063138461e0146102935780631647f91e1461029d5780631eff4b22146102b0578063214cdb80146102e557600080fd5b806301ffc9a7146101f557806302131850146102375780630d8e6e2c146102625780630fec111c1461027e575b600080fd5b610222610203366004612523565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61024a6102453660046126e8565b6105ed565b6040516001600160601b03909116815260200161022e565b61026a6108a9565b60405162ffffff909116815260200161022e565b610286610933565b60405161022e91906127d2565b61029b610acf565b005b61029b6102ab36600461285d565b610cd6565b6102d77f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b60405190815260200161022e565b61029b6102f3366004612523565b610ddf565b61029b6103063660046128db565b610e0c565b61029b61031936600461285d565b610e9f565b61029b610ff9565b6103e2610334366004612984565b6040805160a0810182526000808252602082018190529181018290526060810182905260808101919091526000805160206134d983398151915262ffffff92831660009081526020918252604090819020815160a0810183528154958616815263010000009095046001600160a01b03908116938601939093526001015491821690840152600160a01b810464ffffffffff166060840152600160c81b900463ffffffff1660808301525090565b60408051825162ffffff1681526020808401516001600160a01b039081169183019190915283830151169181019190915260608083015164ffffffffff169082015260809182015163ffffffff169181019190915260a00161022e565b61022261044d366004612984565b61103f565b61024a6104603660046129a1565b600092915050565b6001546001600160a01b03165b6040516001600160a01b03909116815260200161022e565b61029b61049b3660046129da565b6110f2565b600080516020613499833981519152546001600160601b031661024a565b61029b6104cc3660046129f7565b611178565b610475611286565b7f4f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed901546102d7565b61051361050e366004612a14565b6113bd565b604080519586526020860194909452928401919091526060830152608082015260a00161022e565b6102d760008051602061349983398151915281565b61055861149a565b6040516001600160401b03909116815260200161022e565b60d25b60405160ff909116815260200161022e565b61026a610593366004612a9c565b6114bb565b61047561150c565b6104756115a9565b6105736115d3565b61029b6105be366004612ab5565b50505050505050565b61029b6105d5366004612b34565b611656565b61029b6105e8366004612b34565b6116c9565b600080806105fb606e611740565b9150915061060761150c565b6001600160a01b0316635c992fed6040518060e00160405280610628600090565b6001600160601b039081168252865116602082015260400160d360ff16815260200160001515815260200160006001600160a01b031681526020018d6001600160a01b03168152602001604051806020016040528060008152508152506040518263ffffffff1660e01b81526004016106a191906127d2565b6020604051808303816000875af11580156106c0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906106e49190612b72565b925060006106f68a8a8a888b8b6113bd565b505050509050600060405180610200016040528085600001516001600160601b03168152602001896001600160601b03168152602001886001600160c01b03191681526020018c6001600160c01b03191681526020018b8152602001838152602001600081526020018a8152602001878152602001604051806020016040528060008152508152602001600061ffff168152602001600061ffff168152602001600081526020016107a5600090565b64ffffffffff16815260006020820181905260409182015251600162f5f7fb60e01b031981529091506001600160a01b0384169063ff0a0805906107ef9088908590600401612b8f565b600060405180830381600087803b15801561080957600080fd5b505af115801561081d573d6000803e3d6000fd5b50505050826001600160a01b0316630fad0eb186610839600a90565b6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401600060405180830381600087803b15801561088257600080fd5b505af1158015610896573d6000803e3d6000fd5b5050505050505050979650505050505050565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af415801561090a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092e9190612cf8565b905090565b61093b6124e5565b604080516080810182527f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b038116835260ff600160601b820481166020850152600160681b909104161515928201929092527f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30180546000939160608401916109cb90612d15565b80601f01602080910402602001604051908101604052809291908181526020018280546109f790612d15565b8015610a445780601f10610a1957610100808354040283529160200191610a44565b820191906000526020600020905b815481529060010190602001808311610a2757829003601f168201915b50505050508152505090506040518060e00160405280610a62600090565b6001600160601b0316815260200182600001516001600160601b03168152602001826020015160ff168152602001826040015115158152602001306001600160a01b03168152602001610ab3611286565b6001600160a01b03168152602001826060015181525091505090565b600060008051602061349983398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610b3e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610b629190612d5a565b15610b935780546040516301ab8b6760e21b81526001600160601b0390911660048201526024015b60405180910390fd5b30610ba66001546001600160a01b031690565b60405163c3c5a54760e01b81526001600160a01b038381166004830152919091169063c3c5a54790602401602060405180830381865afa158015610bee573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610c129190612d5a565b610c3a5760405163b9304b0d60e01b81526001600160a01b0382166004820152602401610b8a565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038381166004830152919091169063d272ac1e90602401602060405180830381865afa158015610c8e573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610cb29190612b72565b82546bffffffffffffffffffffffff19166001600160601b03919091161790915550565b6000805160206134b98339815191528054600160401b810460ff1615906001600160401b0316600081158015610d095750825b90506000826001600160401b03166001148015610d255750303b155b905081158015610d33575080155b15610d515760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610d7b57845460ff60401b1916600160401b1785555b610d8588886119b7565b610d8f8787611c56565b8315610dd557845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b5050505050505050565b610de7611d81565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b610e14611d81565b610e1e82876116c9565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0388166cffffffffffffffffffffffffff1990911617600160601b60ff8816021760ff60681b1916600160681b86151502178155905060018101610e8e8382612dc2565b506105be6303fb044760e21b610ddf565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c610ec16108a9565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af4158015610f01573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f259190612e81565b6000805160206134b98339815191528054600160401b900460ff1680610f58575080546001600160401b03808416911610155b15610f765760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610fa185856119b7565b610faa83611dba565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a15050505050565b611001611d81565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b6000806000805160206134d983398151915262ffffff84166000908152602091909152604090819020600101549051631bbffab160e21b8152600160c81b90910463ffffffff16600482015273__$5f476116ae21c5294e0c0761c07efa7e1c$__90636effeac490602401602060405180830381865af41580156110c7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906110eb9190612eaa565b1192915050565b60006110fe606e611740565b9150506001600160a01b038116630fad0eb18360146040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401600060405180830381600087803b15801561115c57600080fd5b505af1158015611170573d6000803e3d6000fd5b505050505050565b611180611d81565b806001600160a01b03163b6000036111b65760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610b8a565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b815263230c0c8160e11b60048201526301ffc9a790602401602060405180830381865afa925050508015611230575060408051601f3d908101601f1916820190925261122d91810190612d5a565b60015b6112585760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610b8a565b806112815760405163fdeac91f60e01b81526001600160a01b0383166004820152602401610b8a565b505b50565b60008060008051602061349983398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af41580156112f6573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061131a9190612d5a565b156113a7576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa15801561137d573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113a19190612ece565b91505090565b54600160601b90046001600160a01b0316919050565b6000806000806000806113ce611dc2565b90506000816001600160a01b0316635e78426b8d8f8e8e6040518563ffffffff1660e01b81526004016114049493929190612eeb565b602060405180830381865afa158015611421573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114459190612eaa565b905061145381838b8b611de1565b9850919650945092506114668582612f26565b96506114728385612f26565b61147c9088612f26565b96506114888688612f26565b96505050965096509650965096915050565b600061092e6000805160206134b9833981519152546001600160401b031690565b60006000805160206134d983398151915260010182815481106114e0576114e0612f47565b90600052602060002090600a91828204019190066003029054906101000a900462ffffff169050919050565b6000806115216001546001600160a01b031690565b6001600160a01b031663d39e604360285b61153a6115d3565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa15801561157f573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a39190612ece565b92915050565b6000806115be6001546001600160a01b031690565b6001600160a01b031663d39e60436046611532565b60006115dd6108a9565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af4158015611632573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061092e9190612f68565b61165e611d81565b600060d261166a6115d3565b6040805160ff938416602082015292909116908201526060016040516020818303038152906040529050600061169f8461247a565b905060006116b28583603c848888610e0c565b6116c2637b6a51fd60e01b610ddf565b5050505050565b6116d1611d81565b6116da81611178565b6116e2610ff9565b6001600160a01b0382166117095760405163f17ef42d60e01b815260040160405180910390fd5b5060008051602061349983398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b6117486124e5565b60008061175d6001546001600160a01b031690565b6040516308b09a5f60e41b81523360048201529091506001600160a01b03821690638b09a5f090602401600060405180830381865afa1580156117a4573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526117cc9190810190612fca565b92506117e283604001518560ff90811691161490565b6118245760405162461bcd60e51b815260206004820152601360248201527213d0929150d517d516541157d2539590531251606a1b6044820152606401610b8a565b60208301516040516305247a1760e51b81526001600160601b0390911660048201526000906001600160a01b0383169063a48f42e090602401600060405180830381865afa15801561187a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526118a29190810190612fca565b6080015190508092506000836001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa1580156118eb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061190f9190612ece565b6080860151604051629b7b3560e61b81526001600160a01b0391821660048201529192508216906326decd4090602401602060405180830381865afa15801561195c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119809190612d5a565b156119af57608085015160405163d53987e560e01b81526001600160a01b039091166004820152602401610b8a565b505050915091565b6119bf611d81565b6000805160206134d983398151915260006119ef6000805160206134b9833981519152546001600160401b031690565b905060006119fb6108a9565b9050816001600160401b0316600103611a285760028301805462ffffff191662ffffff8316179055611a76565b600283015462ffffff90811690821611611a765760405162461bcd60e51b815260206004820152600f60248201526e24a72b20a624a2102b22a929a4a7a760891b6044820152606401610b8a565b6001808401805491820181556000908152602090819020600a808404909101805462ffffff808716600394909606939093026101000a858102930219169190911790556040805160a0810182529283526001600160a01b038089168484015287168382015280516356db0c1960e11b81529051606084019273__$d53880c81dc91c20799140d711e5ab8718$__9263adb6183292600480830193928290030181865af4158015611b2a573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611b4e91906130b1565b64ffffffffff1681526020014363ffffffff90811690915262ffffff8084166000908152602087815260409182902085518154928701516001600160a01b039081166301000000026001600160b81b0319909416919095161791909117815584820151600190910180546060870151608090970151909516600160c81b0263ffffffff60c81b1964ffffffffff909716600160a01b026001600160c81b031990961692909416919091179390931793909316179055517fad0a0fc10465a8dd9da3ad5f43e1a7fff4b4578551c76f0ae8deb844f0d0bf6890610fea9083908890889062ffffff9390931683526001600160a01b03918216602084015216604082015260600190565b6000805160206134b98339815191528054600160401b810460ff1615906001600160401b0316600081158015611c895750825b90506000826001600160401b03166001148015611ca55750303b155b905081158015611cb3575080155b15611cd15760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315611cfb57845460ff60401b1916600160401b1785555b60008087806020019051810190611d1291906130cc565b9092509050611d21828a611656565b611d316325ba904560e11b610ddf565b505083156105be57845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a150505050505050565b6000805160206134b983398151915254600160401b900460ff16611db857604051631afcd79f60e31b815260040160405180910390fd5b565b6101f0611d81565b6000611dcc6124e5565b611dd6606e611740565b506080015192915050565b600080600080600080886001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e28573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e4c9190612ece565b9050806001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611e8c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611eb09190612ece565b9150506000886001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015611ef3573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611f179190612b72565b604051634793b4ab60e01b81526001600160601b038a1660048201529091506000906001600160a01b03841690634793b4ab90602401600060405180830381865afa158015611f6a573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f929190810190613149565b80519091506001600160601b03838116911614611ffc5760405162461bcd60e51b815260206004820152602260248201527f4552524f523a5052532d3033353a42554e444c455f504f4f4c5f4d49534d4154604482015261086960f31b6064820152608401610b8a565b6000836001600160a01b03166390af70648c6001600160a01b03166251884a6040518163ffffffff1660e01b8152600401602060405180830381865afa15801561204a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061206e9190612b72565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161024060405180830381865afa1580156120b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120d79190613229565b60a081015160405163012ebd8360e21b8152815160048201526020909101516024820152604481018e905290915073__$a23651848365a6a5ca15f07b4331037f48$__906304baf60c906064016040805180830381865af4158015612140573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121649190613320565b506040516355e343a960e01b81526001600160601b0385166004820152909850600091506001600160a01b038516906355e343a9906024016101c060405180830381865afa1580156121ba573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121de9190613344565b60e081015160405163012ebd8360e21b8152815160048201526020909101516024820152604481018e905290915073__$a23651848365a6a5ca15f07b4331037f48$__906304baf60c906064016040805180830381865af4158015612247573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061226b9190613320565b50809750505060008a6001600160a01b031663db6dcc956040518163ffffffff1660e01b8152600401602060405180830381865afa1580156122b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122d59190612b72565b604051639ad69c6760e01b81526001600160601b03821660048201529091506000906001600160a01b03861690639ad69c679060240160a060405180830381865afa158015612328573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061234c9190613415565b604080820151905163012ebd8360e21b8152815160048201526020909101516024820152604481018f905290915073__$a23651848365a6a5ca15f07b4331037f48$__906304baf60c906064016040805180830381865af41580156123b5573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123d99190613320565b5060208481015160405163012ebd8360e21b8152815160048201529101516024820152604481018f905290965073__$a23651848365a6a5ca15f07b4331037f48$__92506304baf60c91506064016040805180830381865af4158015612443573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906124679190613320565b5080955050505050945094509450949050565b604051636939560f60e11b81526001600160a01b0382166004820181905260009163d272ac1e90602401602060405180830381865afa1580156124c1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906115a39190612b72565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915290565b60006020828403121561253557600080fd5b81356001600160e01b03198116811461254d57600080fd5b9392505050565b6001600160a01b038116811461128357600080fd5b6001600160c01b03198116811461128357600080fd5b6001600160601b038116811461128357600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b03811182821017156125cc576125cc612594565b60405290565b60405161012081016001600160401b03811182821017156125cc576125cc612594565b60405161018081016001600160401b03811182821017156125cc576125cc612594565b60405161016081016001600160401b03811182821017156125cc576125cc612594565b604051601f8201601f191681016001600160401b038111828210171561266357612663612594565b604052919050565b60006001600160401b0382111561268457612684612594565b50601f01601f191660200190565b600082601f8301126126a357600080fd5b81356126b66126b18261266b565b61263b565b8181528460208386010111156126cb57600080fd5b816020850160208301376000918101602001919091529392505050565b600080600080600080600060e0888a03121561270357600080fd5b873561270e81612554565b9650602088013561271e81612569565b95506040880135945060608801359350608088013561273c8161257f565b925060a088013561274c81612569565b915060c08801356001600160401b0381111561276757600080fd5b6127738a828b01612692565b91505092959891949750929550565b60005b8381101561279d578181015183820152602001612785565b50506000910152565b600081518084526127be816020860160208601612782565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a083015161283b60c08401826001600160a01b03169052565b5060c083015160e0808401526128556101008401826127a6565b949350505050565b60008060006060848603121561287257600080fd5b833561287d81612554565b9250602084013561288d81612554565b915060408401356001600160401b038111156128a857600080fd5b6128b486828701612692565b9150509250925092565b60ff8116811461128357600080fd5b801515811461128357600080fd5b60008060008060008060c087890312156128f457600080fd5b86356128ff81612554565b9550602087013561290f8161257f565b9450604087013561291f816128be565b9350606087013561292f816128cd565b9250608087013561293f81612554565b915060a08701356001600160401b0381111561295a57600080fd5b61296689828a01612692565b9150509295509295509295565b62ffffff8116811461128357600080fd5b60006020828403121561299657600080fd5b813561254d81612973565b600080604083850312156129b457600080fd5b82356129bf8161257f565b915060208301356129cf8161257f565b809150509250929050565b6000602082840312156129ec57600080fd5b813561254d8161257f565b600060208284031215612a0957600080fd5b813561254d81612554565b60008060008060008060c08789031215612a2d57600080fd5b8635612a3881612569565b9550602087013594506040870135935060608701356001600160401b03811115612a6157600080fd5b612a6d89828a01612692565b9350506080870135612a7e8161257f565b915060a0870135612a8e81612569565b809150509295509295509295565b600060208284031215612aae57600080fd5b5035919050565b600080600080600080600060e0888a031215612ad057600080fd5b8735612adb8161257f565b96506020880135612aeb81612569565b95506040880135612afb8161257f565b94506060880135612b0b81612569565b93506080880135925060a0880135915060c08801356001600160401b0381111561276757600080fd5b60008060408385031215612b4757600080fd5b8235612b5281612554565b915060208301356129cf81612554565b8051612b6d8161257f565b919050565b600060208284031215612b8457600080fd5b815161254d8161257f565b6001600160601b038316815260406020820152612bb86040820183516001600160601b03169052565b60006020830151612bd460608401826001600160601b03169052565b5060408301516001600160c01b0319811660808401525060608301516001600160c01b0319811660a084015250608083015160c083015260a083015160e083015260c0830151610100818185015260e08501519150610120828186015281860151925061020091506101408281870152612c526102408701856127a6565b9350818701519150610160603f198786030181880152612c7285846127a6565b94508188015192506101809150612c8e8288018461ffff169052565b87015191506101a0612ca58782018461ffff169052565b908701516101c0878101919091529087015191506101e0612cce8188018464ffffffffff169052565b9087015164ffffffffff908116938701939093528601519182166102208601525050949350505050565b600060208284031215612d0a57600080fd5b815161254d81612973565b600181811c90821680612d2957607f821691505b602082108103612d4957634e487b7160e01b600052602260045260246000fd5b50919050565b8051612b6d816128cd565b600060208284031215612d6c57600080fd5b815161254d816128cd565b601f821115612dbd57600081815260208120601f850160051c81016020861015612d9e5750805b601f850160051c820191505b8181101561117057828155600101612daa565b505050565b81516001600160401b03811115612ddb57612ddb612594565b612def81612de98454612d15565b84612d77565b602080601f831160018114612e245760008415612e0c5750858301515b600019600386901b1c1916600185901b178555611170565b600085815260208120601f198616915b82811015612e5357888601518255948401946001909101908401612e34565b5085821015612e715787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b600060208284031215612e9357600080fd5b81516001600160401b038116811461254d57600080fd5b600060208284031215612ebc57600080fd5b5051919050565b8051612b6d81612554565b600060208284031215612ee057600080fd5b815161254d81612554565b8481526001600160401b0360c01b84166020820152826040820152608060608201526000612f1c60808301846127a6565b9695505050505050565b808201808211156115a357634e487b7160e01b600052601160045260246000fd5b634e487b7160e01b600052603260045260246000fd5b8051612b6d816128be565b600060208284031215612f7a57600080fd5b815161254d816128be565b600082601f830112612f9657600080fd5b8151612fa46126b18261266b565b818152846020838601011115612fb957600080fd5b612855826020830160208701612782565b600060208284031215612fdc57600080fd5b81516001600160401b0380821115612ff357600080fd5b9083019060e0828603121561300757600080fd5b61300f6125aa565b61301883612b62565b815261302660208401612b62565b602082015261303760408401612f5d565b604082015261304860608401612d4f565b606082015261305960808401612ec3565b608082015261306a60a08401612ec3565b60a082015260c08301518281111561308157600080fd5b61308d87828601612f85565b60c08301525095945050505050565b805164ffffffffff81168114612b6d57600080fd5b6000602082840312156130c357600080fd5b61254d8261309c565b600080604083850312156130df57600080fd5b82516130ea81612554565b60208401519092506129cf81612554565b60006040828403121561310d57600080fd5b604051604081018181106001600160401b038211171561312f5761312f612594565b604052825181526020928301519281019290925250919050565b60006020828403121561315b57600080fd5b81516001600160401b038082111561317257600080fd5b90830190610140828603121561318757600080fd5b61318f6125d2565b61319883612b62565b81526131a786602085016130fb565b60208201526060830151828111156131be57600080fd5b6131ca87828601612f85565b6040830152506080830151606082015260a0830151608082015260c083015160a082015260e083015160c0820152610100915061320882840161309c565b60e082015261321a610120840161309c565b91810191909152949350505050565b6000610240828403121561323c57600080fd5b6132446125f5565b61324d83612ec3565b815261325b60208401612ec3565b602082015261326c60408401612b62565b604082015261327d60608401612b62565b606082015261328f84608085016130fb565b60808201526132a18460c085016130fb565b60a08201526101006132b5858286016130fb565b60c08301526101406132c9868287016130fb565b60e08401526132dc8661018087016130fb565b828401526132ee866101c087016130fb565b6101208401526133016102008601612d4f565b90830152506133136102208401612ec3565b6101608201529392505050565b6000806040838503121561333357600080fd5b505080516020909101519092909150565b60006101c0828403121561335757600080fd5b61335f612618565b61336883612b62565b815261337660208401612ec3565b602082015261338760408401612d4f565b604082015261339860608401612d4f565b60608201526133a960808401612d4f565b608082015260a083015160a082015260c083015160c08201526133cf8460e085016130fb565b60e08201526101206133e3858286016130fb565b6101008301526133f78561016086016130fb565b908201526134086101a08401612ec3565b6101408201529392505050565b600060a0828403121561342757600080fd5b604051608081018181106001600160401b038211171561344957613449612594565b60405282516134578161257f565b8152602083015161346781612554565b602082015261347984604085016130fb565b6040820152608083015161348c81612554565b6060820152939250505056fe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a004f61291a8ac3d020d0a7d919a76b8592aa88385744dee3f8b4f3873b969ed900a264697066735822122045a3294cb1aef6579a75f1ad15b152c5d3cee8422304870cc5236407e5ffd9b964736f6c63430008140033",
|
906
|
+
"bytecode": "0x60806040523480156200001157600080fd5b506200001c62000022565b620000d6565b7ff0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00805468010000000000000000900460ff1615620000735760405163f92ee8a960e01b815260040160405180910390fd5b80546001600160401b0390811614620000d35780546001600160401b0319166001600160401b0390811782556040519081527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a15b50565b613f1780620000e66000396000f3fe608060405234801561001057600080fd5b50600436106101cf5760003560e01c8063675393bf11610104578063b68d1809116100a2578063d8396c6b11610071578063d8396c6b14610432578063e6eea2c514610445578063f21de1e814610308578063f7c34ee01461045c57600080fd5b8063b68d1809146103f5578063bf7e214f14610404578063caf4e3d414610422578063cc9fc59a1461042a57600080fd5b8063893d20e8116100de578063893d20e8146103a45780638e32e979146103ac5780638fb36037146103bf578063ada9652e146103e057600080fd5b8063675393bf1461035e57806370e314e8146103715780637a9e5e4b1461039157600080fd5b8063329d6e7411610171578063536ef74b1161014b578063536ef74b146102da5780635ab1bd5314610308578063603ccaad1461032d578063644c45e01461034057600080fd5b8063329d6e74146102ac57806336fc697e146102bf57806349bb9e4b146102c757600080fd5b8063138461e0116101ad578063138461e0146102475780631eff4b2214610251578063214cdb801461028657806327bb7a331461029957600080fd5b806301ffc9a7146101d45780630d8e6e2c146102165780630fec111c14610232575b600080fd5b6102016101e2366004612c6c565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61021e61046f565b60405162ffffff909116815260200161020d565b61023a6104f9565b60405161020d9190612ce6565b61024f6106ad565b005b6102787f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b60405190815260200161020d565b61024f610294366004612c6c565b6108b4565b61024f6102a7366004612f27565b6108e1565b61024f6102ba366004612fbf565b61096d565b61024f610aba565b61024f6102d5366004612ff3565b610b00565b6102f06102e8366004613042565b600092915050565b6040516001600160601b03909116815260200161020d565b6001546001600160a01b03165b6040516001600160a01b03909116815260200161020d565b61024f61033b36600461307b565b610bfe565b600080516020613e82833981519152546001600160601b03166102f0565b61024f61036c366004613098565b610c8b565b61038461037f3660046130de565b610d99565b60405161020d919061321b565b61024f61039f366004613098565b610e57565b610315610ef1565b61024f6103ba36600461322a565b611028565b6103c7611261565b6040516001600160e01b0319909116815260200161020d565b610278600080516020613e8283398151915281565b60405160d2815260200161020d565b600080516020613ea2833981519152546001600160a01b0316610315565b610315611299565b6103156112a5565b6102f0610440366004613275565b6112b1565b61024f610453366004613318565b50505050505050565b61024f61046a366004613397565b611569565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156104d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f491906133c5565b905090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915260007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa3006040805160808101825282546001600160601b038116825260ff600160601b820481166020840152600160681b909104161515918101919091526001820180549192916060840191906105a9906133ea565b80601f01602080910402602001604051908101604052809291908181526020018280546105d5906133ea565b80156106225780601f106105f757610100808354040283529160200191610622565b820191906000526020600020905b81548152906001019060200180831161060557829003601f168201915b50505050508152505090506040518060e00160405280610640600090565b6001600160601b0316815260200182600001516001600160601b03168152602001826020015160ff168152602001826040015115158152602001306001600160a01b03168152602001610691610ef1565b6001600160a01b03168152602001826060015181525091505090565b6000600080516020613e8283398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af415801561071c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107409190613434565b156107715780546040516301ab8b6760e21b81526001600160601b0390911660048201526024015b60405180910390fd5b306107846001546001600160a01b031690565b60405163c3c5a54760e01b81526001600160a01b038381166004830152919091169063c3c5a54790602401602060405180830381865afa1580156107cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f09190613434565b6108185760405163b9304b0d60e01b81526001600160a01b0382166004820152602401610768565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038381166004830152919091169063d272ac1e90602401602060405180830381865afa15801561086c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610890919061345c565b82546bffffffffffffffffffffffff19166001600160601b03919091161790915550565b6108bc6115e0565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b6108e96115e0565b6108f38287611569565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0388166cffffffffffffffffffffffffff1990911617600160601b60ff8816021760ff60681b1916600160681b8615150217815590506001810161096383826134bf565b5050505050505050565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c61098f61046f565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af41580156109cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f3919061359e565b600080516020613ec28339815191528054600160401b900460ff1680610a26575080546001600160401b03808416911610155b15610a445760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610a6e83611619565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b610ac26115e0565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b600080516020613ec28339815191528054600160401b810460ff1615906001600160401b0316600081158015610b335750825b90506000826001600160401b03166001148015610b4f5750303b155b905081158015610b5d575080155b15610b7b5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610ba557845460ff60401b1916600160401b1785555b610baf8787611621565b831561045357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a150505050505050565b6000610c0a606e61185f565b92505050806001600160a01b0316630fad0eb183610c26601490565b6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401600060405180830381600087803b158015610c6f57600080fd5b505af1158015610c83573d6000803e3d6000fd5b505050505050565b610c936115e0565b806001600160a01b03163b600003610cc95760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610768565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b8152630a3888e560e31b60048201526301ffc9a790602401602060405180830381865afa925050508015610d43575060408051601f3d908101601f19168201909252610d4091810190613434565b60015b610d6b5760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610768565b80610d945760405163fdeac91f60e01b81526001600160a01b0383166004820152602401610768565b505b50565b610da1612bf6565b6000610dac89611a8f565b6001600160a01b0316632f0e8dd3888a89896040518563ffffffff1660e01b8152600401610ddd94939291906135bb565b602060405180830381865afa158015610dfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1e91906135fd565b9050610e3481610e2d8b611a8f565b8686611b80565b9150610e4a82610e438b611a8f565b8686612101565b9998505050505050505050565b33610e77600080516020613ea2833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b031614610eb25760405162d1953b60e31b81526001600160a01b0382166004820152602401610768565b816001600160a01b03163b600003610ee8576040516361798f2f60e11b81526001600160a01b0383166004820152602401610768565b610d94826128c6565b600080600080516020613e8283398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610f61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f859190613434565b15611012576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015610fe8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100c9190613621565b91505090565b54600160601b90046001600160a01b0316919050565b6110306115e0565b6110b083846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015611072573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611096919061345c565b603c600085604051806020016040528060008152506108e1565b6001600160a01b038216156110cd576110c882612927565b61123c565b60006110e16001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$9dab98ad7ae1a426029e5739f922230a41$__90638e4ad86c90602401602060405180830381865af4158015611141573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111659190613649565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156111aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ce9190613621565b905061123a816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611211573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112359190613621565b612927565b505b61124c634a531f3360e01b6108b4565b61125c63b68d180960e01b6108b4565b505050565b600080516020613ea2833981519152805460009190600160a01b900460ff1661128b57600061100c565b638fb3603760e01b91505090565b60006104f46028612938565b60006104f46046612938565b600080806112bf606e61185f565b92505091506112cc611299565b6001600160a01b0316635c992fed6040518060e001604052806112ed600090565b6001600160601b03168152602001856001600160601b0316815260200161131260d390565b60ff16815260200160001515815260200160006001600160a01b031681526020018d6001600160a01b03168152602001604051806020016040528060008152508152506040518263ffffffff1660e01b81526004016113719190612ce6565b6020604051808303816000875af1158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b4919061345c565b925060006113c7838b8b8b898c8c610d99565b90506000604051806102000160405280856001600160601b03168152602001896001600160601b03168152602001886001600160c01b03191681526020018c6001600160c01b03191681526020018b815260200183604001518152602001600081526020018a64ffffffffff168152602001878152602001604051806020016040528060008152508152602001600061ffff168152602001600061ffff16815260200173__$ea4dcf94bcd4a5d2e83a2341ef616bff8d$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156114b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d7919061345c565b6001600160601b03168152600060208201819052604080830182905260609092015251635239541960e11b81529091506001600160a01b0384169063a472a832906115289088908590600401613666565b600060405180830381600087803b15801561154257600080fd5b505af1158015611556573d6000803e3d6000fd5b5050505050505050979650505050505050565b6115716115e0565b61157a81610c8b565b611582610aba565b6001600160a01b0382166115a95760405163f17ef42d60e01b815260040160405180910390fd5b50600080516020613e8283398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b600080516020613ec283398151915254600160401b900460ff1661161757604051631afcd79f60e31b815260040160405180910390fd5b565b6101cf6115e0565b600080516020613ec28339815191528054600160401b810460ff1615906001600160401b03166000811580156116545750825b90506000826001600160401b031660011480156116705750303b155b90508115801561167e575080155b1561169c5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156116c657845460ff60401b1916600160401b1785555b600080878060200190518101906116dd91906137eb565b90925090506116ee8260008b611028565b6116fe6303eb373d60e51b6108b4565b6001546001600160a01b031663d39e6043607861171961046f565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af415801561176e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117929190613649565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156117d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117fb9190613621565b600280546001600160a01b0319166001600160a01b03929092169190911790555050831561045357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602001610bed565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c08201526000806118ab6001546001600160a01b031690565b6040516308b09a5f60e41b81523360048201529091506001600160a01b03821690638b09a5f090602401600060405180830381865afa1580156118f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261191a919081019061385f565b925061193083604001518660ff90811691161490565b6119725760405162461bcd60e51b815260206004820152601360248201527213d0929150d517d516541157d2539590531251606a1b6044820152606401610768565b826000015193506119868360200151612a4b565b9150816001600160a01b031663e5f6cd276040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119ea9190613621565b6080840151604051629b7b3560e61b81526001600160a01b0391821660048201529116906326decd4090602401602060405180830381865afa158015611a34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a589190613434565b15611a8757608083015160405163d53987e560e01b81526001600160a01b039091166004820152602401610768565b509193909250565b600080611aa46001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03851660048201529091506000906001600160a01b0383169063a48f42e090602401600060405180830381865afa158015611af7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611b1f919081019061385f565b9050611b3d8160400151611b31606e90565b60ff9081169116141590565b15611b7557604080820151905163071e34f560e21b81526001600160601b038616600482015260ff9091166024820152604401610768565b608001519392505050565b611b88612bf6565b600080856001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bc9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bed9190613621565b9050806001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c519190613621565b9150506000856001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cb8919061345c565b9050604051806101e00160405280888152602001888152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525092506000826001600160a01b03166390af7064886001600160a01b03166251884a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d9f919061345c565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161014060405180830381865afa158015611de4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e08919061397f565b905060008160800151602001519050808560600181815250508085602001818151611e339190613a27565b9052505060405163f0ea17c360e01b81526001600160601b0383166004820152600091506001600160a01b0384169063f0ea17c390602401600060405180830381865afa158015611e88573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611eb09190810190613a48565b60c001519050600081806020019051810190611ecc9190613afb565b6101400151602001519050808560800181815250508085602001818151611ef39190613a27565b90525050604051634793b4ab60e01b81526001600160601b0387166004820152600091506001600160a01b03841690634793b4ab90602401600060405180830381865afa158015611f48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f709190810190613be5565b80519091506001600160601b03838116911614611fbe5780516040516319c01eff60e01b81526001600160601b03808916600483015291821660248201529083166044820152606401610768565b60208082015181015160a086018190529085018051829190611fe1908390613a27565b9150818152505050506000826001600160a01b0316639ad69c67886001600160a01b031663db6dcc956040518163ffffffff1660e01b8152600401602060405180830381865afa158015612039573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061205d919061345c565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161010060405180830381865afa1580156120a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120c69190613ce1565b905060008160600151602001519050808560c001818152505080856020018181516120f19190613a27565b9052509398975050505050505050565b612109612bf6565b600080856001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa15801561214a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061216e9190613621565b9050806001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d29190613621565b9150506000856001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015612215573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612239919061345c565b90506000876000015190506000836001600160a01b03166390af7064896001600160a01b03166251884a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612292573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122b6919061345c565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161014060405180830381865afa1580156122fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231f919061397f565b905060006123ab73__$5ac3274b8cf1e01ea223bf093142af05b0$__6345ebb61e856040518263ffffffff1660e01b815260040161235f91815260200190565b602060405180830381865af415801561237c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a091906135fd565b608084015151612ae0565b604051632255341b60e11b8152600481019190915273__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af41580156123fc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061242091906135fd565b60e08b0181905260208b018051919250829161243d908390613a27565b9052505060405163f0ea17c360e01b81526001600160601b0384166004820152600091506001600160a01b0385169063f0ea17c390602401600060405180830381865afa158015612492573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526124ba9190810190613a48565b60c0015190506000818060200190518101906124d69190613afb565b6101400151516040516322f5db0f60e11b8152600481018590529091506000906125609073__$5ac3274b8cf1e01ea223bf093142af05b0$__906345ebb61e90602401602060405180830381865af4158015612536573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061255a91906135fd565b83612ae0565b604051632255341b60e11b8152600481019190915273__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af41580156125b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d591906135fd565b6101008c0181905260208c01805191925082916125f3908390613a27565b90525050604051634793b4ab60e01b81526001600160601b0389166004820152600092506001600160a01b0386169150634793b4ab90602401600060405180830381865afa158015612649573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126719190810190613be5565b80519091506001600160601b038481169116146126bf5780516040516319c01eff60e01b81526001600160601b03808a16600483015291821660248201529084166044820152606401610768565b6040516322f5db0f60e11b8152600481018390526000906127459073__$5ac3274b8cf1e01ea223bf093142af05b0$__906345ebb61e90602401602060405180830381865af4158015612716573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061273a91906135fd565b602084015151612ae0565b604051632255341b60e11b8152600481019190915273__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af4158015612796573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ba91906135fd565b6101208b0181905260208b01805191925082916127d8908390613a27565b905250506002546040805163db6dcc9560e01b815290516001600160a01b03928316935063219a3195928b169163db6dcc959160048083019260209291908290030181865afa15801561282f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612853919061345c565b878b6040518463ffffffff1660e01b815260040161287393929190613d82565b6101e060405180830381865afa158015612891573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128b59190613db0565b97508793505050505b949350505050565b600080516020613ea283398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b61292f6115e0565b610d9681612afc565b600061294c6001546001600160a01b031690565b6001600160a01b031663d39e60438361296361046f565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af41580156129b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129dc9190613649565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015612a21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a459190613621565b92915050565b6000612a5f6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015612aae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ad6919081019061385f565b6080015192915050565b6000612af58383670de0b6b3a7640000612b0d565b9392505050565b612b046115e0565b610d96816128c6565b6000808060001985870985870292508281108382030391505080600003612b4757838281612b3d57612b3d613e6b565b0492505050612af5565b808411612b8e5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610768565b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b604051806101e001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215612c7e57600080fd5b81356001600160e01b031981168114612af557600080fd5b60005b83811015612cb1578181015183820152602001612c99565b50506000910152565b60008151808452612cd2816020860160208601612c96565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a0830151612d4f60c08401826001600160a01b03169052565b5060c083015160e0808401526128be610100840182612cba565b6001600160a01b0381168114610d9657600080fd5b6001600160601b0381168114610d9657600080fd5b60ff81168114610d9657600080fd5b8015158114610d9657600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715612de857612de8612db0565b60405290565b60405161010081016001600160401b0381118282101715612de857612de8612db0565b6040516101a081016001600160401b0381118282101715612de857612de8612db0565b60405161012081016001600160401b0381118282101715612de857612de8612db0565b6040516101e081016001600160401b0381118282101715612de857612de8612db0565b604051601f8201601f191681016001600160401b0381118282101715612ea257612ea2612db0565b604052919050565b60006001600160401b03821115612ec357612ec3612db0565b50601f01601f191660200190565b600082601f830112612ee257600080fd5b8135612ef5612ef082612eaa565b612e7a565b818152846020838601011115612f0a57600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c08789031215612f4057600080fd5b8635612f4b81612d69565b95506020870135612f5b81612d7e565b94506040870135612f6b81612d93565b93506060870135612f7b81612da2565b92506080870135612f8b81612d69565b915060a08701356001600160401b03811115612fa657600080fd5b612fb289828a01612ed1565b9150509295509295509295565b600060208284031215612fd157600080fd5b81356001600160401b03811115612fe757600080fd5b6128be84828501612ed1565b6000806040838503121561300657600080fd5b823561301181612d69565b915060208301356001600160401b0381111561302c57600080fd5b61303885828601612ed1565b9150509250929050565b6000806040838503121561305557600080fd5b823561306081612d7e565b9150602083013561307081612d7e565b809150509250929050565b60006020828403121561308d57600080fd5b8135612af581612d7e565b6000602082840312156130aa57600080fd5b8135612af581612d69565b6001600160c01b031981168114610d9657600080fd5b64ffffffffff81168114610d9657600080fd5b600080600080600080600060e0888a0312156130f957600080fd5b873561310481612d7e565b96506020880135613114816130b5565b955060408801359450606088013561312b816130cb565b935060808801356001600160401b0381111561314657600080fd5b6131528a828b01612ed1565b93505060a088013561316381612d7e565b915060c0880135613173816130b5565b8091505092959891949750929550565b805182526020808201519083015260408082015190830152606080820151908301526080808201519083015260a0808201519083015260c0808201519083015260e08082015190830152610100808201519083015261012080820151908301526101408082015190830152610160808201519083015261018080820151908301526101a080820151908301526101c090810151910152565b6101e08101612a458284613183565b60008060006060848603121561323f57600080fd5b833561324a81612d69565b9250602084013561325a81612d69565b9150604084013561326a81612d69565b809150509250925092565b600080600080600080600060e0888a03121561329057600080fd5b873561329b81612d69565b965060208801356132ab816130b5565b95506040880135945060608801356132c2816130cb565b935060808801356132d281612d7e565b925060a08801356132e2816130b5565b915060c08801356001600160401b038111156132fd57600080fd5b6133098a828b01612ed1565b91505092959891949750929550565b600080600080600080600060e0888a03121561333357600080fd5b873561333e81612d7e565b9650602088013561334e816130b5565b9550604088013561335e81612d7e565b9450606088013561336e816130b5565b93506080880135925060a0880135915060c08801356001600160401b038111156132fd57600080fd5b600080604083850312156133aa57600080fd5b82356133b581612d69565b9150602083013561307081612d69565b6000602082840312156133d757600080fd5b815162ffffff81168114612af557600080fd5b600181811c908216806133fe57607f821691505b60208210810361341e57634e487b7160e01b600052602260045260246000fd5b50919050565b805161342f81612da2565b919050565b60006020828403121561344657600080fd5b8151612af581612da2565b805161342f81612d7e565b60006020828403121561346e57600080fd5b8151612af581612d7e565b601f82111561125c57600081815260208120601f850160051c810160208610156134a05750805b601f850160051c820191505b81811015610c83578281556001016134ac565b81516001600160401b038111156134d8576134d8612db0565b6134ec816134e684546133ea565b84613479565b602080601f83116001811461352157600084156135095750858301515b600019600386901b1c1916600185901b178555610c83565b600085815260208120601f198616915b8281101561355057888601518255948401946001909101908401613531565b508582101561356e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160401b0381168114610d9657600080fd5b805161342f8161357e565b6000602082840312156135b057600080fd5b8151612af58161357e565b8481526001600160401b0360c01b8416602082015264ffffffffff831660408201526080606082015260006135f36080830184612cba565b9695505050505050565b60006020828403121561360f57600080fd5b5051919050565b805161342f81612d69565b60006020828403121561363357600080fd5b8151612af581612d69565b805161342f81612d93565b60006020828403121561365b57600080fd5b8151612af581612d93565b6001600160601b03831681526040602082015261368f6040820183516001600160601b03169052565b600060208301516136ab60608401826001600160601b03169052565b5060408301516001600160c01b0319811660808401525060608301516001600160c01b0319811660a084015250608083015160c083015260a083015160e083015260c0830151610100818185015260e085015191506101206137158186018464ffffffffff169052565b81860151925061020091506101408281870152613736610240870185612cba565b9350818701519150610160603f1987860301818801526137568584612cba565b945081880151925061018091506137728288018461ffff169052565b87015191506101a06137898782018461ffff169052565b9087015191506101c0906137a7878301846001600160601b03169052565b87015191506101e06137c18782018464ffffffffff169052565b9087015164ffffffffff908116938701939093528601519182166102208601525050949350505050565b600080604083850312156137fe57600080fd5b825161380981612d69565b602084015190925061307081612d69565b600082601f83011261382b57600080fd5b8151613839612ef082612eaa565b81815284602083860101111561384e57600080fd5b6128be826020830160208701612c96565b60006020828403121561387157600080fd5b81516001600160401b038082111561388857600080fd5b9083019060e0828603121561389c57600080fd5b6138a4612dc6565b6138ad83613451565b81526138bb60208401613451565b60208201526138cc6040840161363e565b60408201526138dd60608401613424565b60608201526138ee60808401613616565b60808201526138ff60a08401613616565b60a082015260c08301518281111561391657600080fd5b6139228782860161381a565b60c08301525095945050505050565b60006040828403121561394357600080fd5b604051604081018181106001600160401b038211171561396557613965612db0565b604052825181526020928301519281019290925250919050565b6000610140828403121561399257600080fd5b61399a612dee565b6139a383613616565b81526139b160208401613616565b60208201526139c260408401613451565b60408201526139d360608401613451565b60608201526139e58460808501613931565b60808201526139f78460c08501613931565b60a0820152613a096101008401613424565b60c0820152613a1b6101208401613616565b60e08201529392505050565b80820180821115612a4557634e487b7160e01b600052601160045260246000fd5b600060208284031215613a5a57600080fd5b81516001600160401b0380821115613a7157600080fd5b9083019060e08286031215613a8557600080fd5b613a8d612dc6565b825182811115613a9c57600080fd5b613aa88782860161381a565b825250613ab760208401613616565b6020820152613ac860408401613616565b6040820152613ad960608401613616565b6060820152613aea60808401613451565b60808201526138ff60a08401613451565b60006102008284031215613b0e57600080fd5b613b16612e11565b613b1f83613451565b8152613b2d60208401613593565b6020820152604083015160408201526060830151606082015260808301516080820152613b5c60a08401613424565b60a0820152613b6d60c08401613424565b60c0820152613b7e60e08401613424565b60e082015261010083810151908201526101208084015190820152610140613ba885828601613931565b90820152610180613bbb85858301613931565b610160830152613bcf856101c08601613931565b908201529392505050565b805161342f816130cb565b600060208284031215613bf757600080fd5b81516001600160401b0380821115613c0e57600080fd5b908301906101408286031215613c2357600080fd5b613c2b612e34565b613c3483613451565b8152613c438660208501613931565b6020820152606083015182811115613c5a57600080fd5b613c668782860161381a565b604083015250613c7860808401613451565b6060820152613c8960a08401613451565b6080820152613c9a60c08401613451565b60a0820152613cab60e08401613bda565b60c08201526101009150613cc0828401613bda565b60e0820152613cd26101208401613bda565b91810191909152949350505050565b60006101008284031215613cf457600080fd5b60405160c081018181106001600160401b0382111715613d1657613d16612db0565b6040528251613d2481612d7e565b81526020830151613d3481612d69565b6020820152613d468460408501613931565b6040820152613d588460808501613931565b606082015260c0830151613d6b81612d69565b608082015260e0929092015160a083015250919050565b6001600160601b03841681526001600160c01b03198316602082015261022081016128be6040830184613183565b60006101e08284031215613dc357600080fd5b613dcb612e57565b825181526020808401519082015260408084015190820152606080840151908201526080808401519082015260a0808401519082015260c0808401519082015260e08084015190820152610100808401519082015261012080840151908201526101408084015190820152610160808401519082015261018080840151908201526101a080840151908201526101c0928301519281019290925250919050565b634e487b7160e01b600052601260045260246000fdfe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220ee18101b974af42eeb2fd52426487abd9677a945ae2054e7822fe9be6731f2ee64736f6c63430008140033",
|
907
|
+
"deployedBytecode": "0x608060405234801561001057600080fd5b50600436106101cf5760003560e01c8063675393bf11610104578063b68d1809116100a2578063d8396c6b11610071578063d8396c6b14610432578063e6eea2c514610445578063f21de1e814610308578063f7c34ee01461045c57600080fd5b8063b68d1809146103f5578063bf7e214f14610404578063caf4e3d414610422578063cc9fc59a1461042a57600080fd5b8063893d20e8116100de578063893d20e8146103a45780638e32e979146103ac5780638fb36037146103bf578063ada9652e146103e057600080fd5b8063675393bf1461035e57806370e314e8146103715780637a9e5e4b1461039157600080fd5b8063329d6e7411610171578063536ef74b1161014b578063536ef74b146102da5780635ab1bd5314610308578063603ccaad1461032d578063644c45e01461034057600080fd5b8063329d6e74146102ac57806336fc697e146102bf57806349bb9e4b146102c757600080fd5b8063138461e0116101ad578063138461e0146102475780631eff4b2214610251578063214cdb801461028657806327bb7a331461029957600080fd5b806301ffc9a7146101d45780630d8e6e2c146102165780630fec111c14610232575b600080fd5b6102016101e2366004612c6c565b6001600160e01b03191660009081526020819052604090205460ff1690565b60405190151581526020015b60405180910390f35b61021e61046f565b60405162ffffff909116815260200161020d565b61023a6104f9565b60405161020d9190612ce6565b61024f6106ad565b005b6102787f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30081565b60405190815260200161020d565b61024f610294366004612c6c565b6108b4565b61024f6102a7366004612f27565b6108e1565b61024f6102ba366004612fbf565b61096d565b61024f610aba565b61024f6102d5366004612ff3565b610b00565b6102f06102e8366004613042565b600092915050565b6040516001600160601b03909116815260200161020d565b6001546001600160a01b03165b6040516001600160a01b03909116815260200161020d565b61024f61033b36600461307b565b610bfe565b600080516020613e82833981519152546001600160601b03166102f0565b61024f61036c366004613098565b610c8b565b61038461037f3660046130de565b610d99565b60405161020d919061321b565b61024f61039f366004613098565b610e57565b610315610ef1565b61024f6103ba36600461322a565b611028565b6103c7611261565b6040516001600160e01b0319909116815260200161020d565b610278600080516020613e8283398151915281565b60405160d2815260200161020d565b600080516020613ea2833981519152546001600160a01b0316610315565b610315611299565b6103156112a5565b6102f0610440366004613275565b6112b1565b61024f610453366004613318565b50505050505050565b61024f61046a366004613397565b611569565b604051632efe011360e01b815260036004820152600060248201819052604482018190529073__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__90632efe011390606401602060405180830381865af41580156104d0573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906104f491906133c5565b905090565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a082019290925260c081019190915260007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa3006040805160808101825282546001600160601b038116825260ff600160601b820481166020840152600160681b909104161515918101919091526001820180549192916060840191906105a9906133ea565b80601f01602080910402602001604051908101604052809291908181526020018280546105d5906133ea565b80156106225780601f106105f757610100808354040283529160200191610622565b820191906000526020600020905b81548152906001019060200180831161060557829003601f168201915b50505050508152505090506040518060e00160405280610640600090565b6001600160601b0316815260200182600001516001600160601b03168152602001826020015160ff168152602001826040015115158152602001306001600160a01b03168152602001610691610ef1565b6001600160a01b03168152602001826060015181525091505090565b6000600080516020613e8283398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af415801561071c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107409190613434565b156107715780546040516301ab8b6760e21b81526001600160601b0390911660048201526024015b60405180910390fd5b306107846001546001600160a01b031690565b60405163c3c5a54760e01b81526001600160a01b038381166004830152919091169063c3c5a54790602401602060405180830381865afa1580156107cc573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906107f09190613434565b6108185760405163b9304b0d60e01b81526001600160a01b0382166004820152602401610768565b6001546001600160a01b0316604051636939560f60e11b81526001600160a01b038381166004830152919091169063d272ac1e90602401602060405180830381865afa15801561086c573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610890919061345c565b82546bffffffffffffffffffffffff19166001600160601b03919091161790915550565b6108bc6115e0565b6001600160e01b0319166000908152602081905260409020805460ff19166001179055565b6108e96115e0565b6108f38287611569565b60007f6548007c3f4340f82f348c576c0ff69f4f529cadd5ad41f96aae61abceeaa30080546001600160601b0388166cffffffffffffffffffffffffff1990911617600160601b60ff8816021760ff60681b1916600160681b8615150217815590506001810161096383826134bf565b5050505050505050565b73__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__63a123b37c61098f61046f565b6040516001600160e01b031960e084901b16815262ffffff9091166004820152602401602060405180830381865af41580156109cf573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906109f3919061359e565b600080516020613ec28339815191528054600160401b900460ff1680610a26575080546001600160401b03808416911610155b15610a445760405163f92ee8a960e01b815260040160405180910390fd5b805468ffffffffffffffffff19166001600160401b03831617600160401b178155610a6e83611619565b805460ff60401b191681556040516001600160401b03831681527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d29060200160405180910390a1505050565b610ac26115e0565b6301ffc9a760e01b60009081526020527f67be87c3ff9960ca1e9cfac5cab2ff4747269cf9ed20c9b7306235ac35a491c5805460ff19166001179055565b600080516020613ec28339815191528054600160401b810460ff1615906001600160401b0316600081158015610b335750825b90506000826001600160401b03166001148015610b4f5750303b155b905081158015610b5d575080155b15610b7b5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff191660011785558315610ba557845460ff60401b1916600160401b1785555b610baf8787611621565b831561045357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d2906020015b60405180910390a150505050505050565b6000610c0a606e61185f565b92505050806001600160a01b0316630fad0eb183610c26601490565b6040516001600160e01b031960e085901b1681526001600160601b03909216600483015260ff166024820152604401600060405180830381600087803b158015610c6f57600080fd5b505af1158015610c83573d6000803e3d6000fd5b505050505050565b610c936115e0565b806001600160a01b03163b600003610cc95760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610768565b600180546001600160a01b0319166001600160a01b0383169081179091556040516301ffc9a760e01b8152630a3888e560e31b60048201526301ffc9a790602401602060405180830381865afa925050508015610d43575060408051601f3d908101601f19168201909252610d4091810190613434565b60015b610d6b5760405163fdeac91f60e01b81526001600160a01b0382166004820152602401610768565b80610d945760405163fdeac91f60e01b81526001600160a01b0383166004820152602401610768565b505b50565b610da1612bf6565b6000610dac89611a8f565b6001600160a01b0316632f0e8dd3888a89896040518563ffffffff1660e01b8152600401610ddd94939291906135bb565b602060405180830381865afa158015610dfa573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610e1e91906135fd565b9050610e3481610e2d8b611a8f565b8686611b80565b9150610e4a82610e438b611a8f565b8686612101565b9998505050505050505050565b33610e77600080516020613ea2833981519152546001600160a01b031690565b6001600160a01b0316816001600160a01b031614610eb25760405162d1953b60e31b81526001600160a01b0382166004820152602401610768565b816001600160a01b03163b600003610ee8576040516361798f2f60e11b81526001600160a01b0383166004820152602401610768565b610d94826128c6565b600080600080516020613e8283398151915280546040516330b8415f60e01b81526001600160601b03909116600482015290915073__$6facc32ab6029a5f5de2a1d5e55ea9da0e$__906330b8415f90602401602060405180830381865af4158015610f61573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610f859190613434565b15611012576001546001600160a01b03168154604051631c5da14d60e11b81526001600160601b0390911660048201526001600160a01b0391909116906338bb429a90602401602060405180830381865afa158015610fe8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061100c9190613621565b91505090565b54600160601b90046001600160a01b0316919050565b6110306115e0565b6110b083846001600160a01b031663644c45e06040518163ffffffff1660e01b8152600401602060405180830381865afa158015611072573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611096919061345c565b603c600085604051806020016040528060008152506108e1565b6001600160a01b038216156110cd576110c882612927565b61123c565b60006110e16001546001600160a01b031690565b6001600160a01b031663d39e60436028604051632392b61b60e21b81526003600482015273__$9dab98ad7ae1a426029e5739f922230a41$__90638e4ad86c90602401602060405180830381865af4158015611141573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111659190613649565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156111aa573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111ce9190613621565b905061123a816001600160a01b031663bf7e214f6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611211573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906112359190613621565b612927565b505b61124c634a531f3360e01b6108b4565b61125c63b68d180960e01b6108b4565b505050565b600080516020613ea2833981519152805460009190600160a01b900460ff1661128b57600061100c565b638fb3603760e01b91505090565b60006104f46028612938565b60006104f46046612938565b600080806112bf606e61185f565b92505091506112cc611299565b6001600160a01b0316635c992fed6040518060e001604052806112ed600090565b6001600160601b03168152602001856001600160601b0316815260200161131260d390565b60ff16815260200160001515815260200160006001600160a01b031681526020018d6001600160a01b03168152602001604051806020016040528060008152508152506040518263ffffffff1660e01b81526004016113719190612ce6565b6020604051808303816000875af1158015611390573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113b4919061345c565b925060006113c7838b8b8b898c8c610d99565b90506000604051806102000160405280856001600160601b03168152602001896001600160601b03168152602001886001600160c01b03191681526020018c6001600160c01b03191681526020018b815260200183604001518152602001600081526020018a64ffffffffff168152602001878152602001604051806020016040528060008152508152602001600061ffff168152602001600061ffff16815260200173__$ea4dcf94bcd4a5d2e83a2341ef616bff8d$__63bc1b392d6040518163ffffffff1660e01b8152600401602060405180830381865af41580156114b3573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906114d7919061345c565b6001600160601b03168152600060208201819052604080830182905260609092015251635239541960e11b81529091506001600160a01b0384169063a472a832906115289088908590600401613666565b600060405180830381600087803b15801561154257600080fd5b505af1158015611556573d6000803e3d6000fd5b5050505050505050979650505050505050565b6115716115e0565b61157a81610c8b565b611582610aba565b6001600160a01b0382166115a95760405163f17ef42d60e01b815260040160405180910390fd5b50600080516020613e8283398151915280546001600160601b0316600160601b6001600160a01b0390931692909202919091179055565b600080516020613ec283398151915254600160401b900460ff1661161757604051631afcd79f60e31b815260040160405180910390fd5b565b6101cf6115e0565b600080516020613ec28339815191528054600160401b810460ff1615906001600160401b03166000811580156116545750825b90506000826001600160401b031660011480156116705750303b155b90508115801561167e575080155b1561169c5760405163f92ee8a960e01b815260040160405180910390fd5b845467ffffffffffffffff1916600117855583156116c657845460ff60401b1916600160401b1785555b600080878060200190518101906116dd91906137eb565b90925090506116ee8260008b611028565b6116fe6303eb373d60e51b6108b4565b6001546001600160a01b031663d39e6043607861171961046f565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af415801561176e573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117929190613649565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa1580156117d7573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906117fb9190613621565b600280546001600160a01b0319166001600160a01b03929092169190911790555050831561045357845460ff60401b19168555604051600181527fc7f505b2f371ae2175ee4913f4499e1f2633a7b5936321eed1cdaeb6115181d290602001610bed565b6040805160e08101825260008082526020820181905291810182905260608082018390526080820183905260a0820183905260c08201526000806118ab6001546001600160a01b031690565b6040516308b09a5f60e41b81523360048201529091506001600160a01b03821690638b09a5f090602401600060405180830381865afa1580156118f2573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f1916820160405261191a919081019061385f565b925061193083604001518660ff90811691161490565b6119725760405162461bcd60e51b815260206004820152601360248201527213d0929150d517d516541157d2539590531251606a1b6044820152606401610768565b826000015193506119868360200151612a4b565b9150816001600160a01b031663e5f6cd276040518163ffffffff1660e01b8152600401602060405180830381865afa1580156119c6573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119ea9190613621565b6080840151604051629b7b3560e61b81526001600160a01b0391821660048201529116906326decd4090602401602060405180830381865afa158015611a34573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611a589190613434565b15611a8757608083015160405163d53987e560e01b81526001600160a01b039091166004820152602401610768565b509193909250565b600080611aa46001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03851660048201529091506000906001600160a01b0383169063a48f42e090602401600060405180830381865afa158015611af7573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611b1f919081019061385f565b9050611b3d8160400151611b31606e90565b60ff9081169116141590565b15611b7557604080820151905163071e34f560e21b81526001600160601b038616600482015260ff9091166024820152604401610768565b608001519392505050565b611b88612bf6565b600080856001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa158015611bc9573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611bed9190613621565b9050806001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c2d573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611c519190613621565b9150506000856001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015611c94573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611cb8919061345c565b9050604051806101e00160405280888152602001888152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525092506000826001600160a01b03166390af7064886001600160a01b03166251884a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015611d7b573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611d9f919061345c565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161014060405180830381865afa158015611de4573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190611e08919061397f565b905060008160800151602001519050808560600181815250508085602001818151611e339190613a27565b9052505060405163f0ea17c360e01b81526001600160601b0383166004820152600091506001600160a01b0384169063f0ea17c390602401600060405180830381865afa158015611e88573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611eb09190810190613a48565b60c001519050600081806020019051810190611ecc9190613afb565b6101400151602001519050808560800181815250508085602001818151611ef39190613a27565b90525050604051634793b4ab60e01b81526001600160601b0387166004820152600091506001600160a01b03841690634793b4ab90602401600060405180830381865afa158015611f48573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052611f709190810190613be5565b80519091506001600160601b03838116911614611fbe5780516040516319c01eff60e01b81526001600160601b03808916600483015291821660248201529083166044820152606401610768565b60208082015181015160a086018190529085018051829190611fe1908390613a27565b9150818152505050506000826001600160a01b0316639ad69c67886001600160a01b031663db6dcc956040518163ffffffff1660e01b8152600401602060405180830381865afa158015612039573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061205d919061345c565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161010060405180830381865afa1580156120a2573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906120c69190613ce1565b905060008160600151602001519050808560c001818152505080856020018181516120f19190613a27565b9052509398975050505050505050565b612109612bf6565b600080856001600160a01b031663de7b5d146040518163ffffffff1660e01b8152600401602060405180830381865afa15801561214a573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061216e9190613621565b9050806001600160a01b03166302cd30716040518163ffffffff1660e01b8152600401602060405180830381865afa1580156121ae573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906121d29190613621565b9150506000856001600160a01b0316631bdd6b766040518163ffffffff1660e01b8152600401602060405180830381865afa158015612215573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612239919061345c565b90506000876000015190506000836001600160a01b03166390af7064896001600160a01b03166251884a6040518163ffffffff1660e01b8152600401602060405180830381865afa158015612292573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906122b6919061345c565b6040516001600160e01b031960e084901b1681526001600160601b03909116600482015260240161014060405180830381865afa1580156122fb573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061231f919061397f565b905060006123ab73__$5ac3274b8cf1e01ea223bf093142af05b0$__6345ebb61e856040518263ffffffff1660e01b815260040161235f91815260200190565b602060405180830381865af415801561237c573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906123a091906135fd565b608084015151612ae0565b604051632255341b60e11b8152600481019190915273__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af41580156123fc573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061242091906135fd565b60e08b0181905260208b018051919250829161243d908390613a27565b9052505060405163f0ea17c360e01b81526001600160601b0384166004820152600091506001600160a01b0385169063f0ea17c390602401600060405180830381865afa158015612492573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526124ba9190810190613a48565b60c0015190506000818060200190518101906124d69190613afb565b6101400151516040516322f5db0f60e11b8152600481018590529091506000906125609073__$5ac3274b8cf1e01ea223bf093142af05b0$__906345ebb61e90602401602060405180830381865af4158015612536573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061255a91906135fd565b83612ae0565b604051632255341b60e11b8152600481019190915273__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af41580156125b1573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906125d591906135fd565b6101008c0181905260208c01805191925082916125f3908390613a27565b90525050604051634793b4ab60e01b81526001600160601b0389166004820152600092506001600160a01b0386169150634793b4ab90602401600060405180830381865afa158015612649573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f191682016040526126719190810190613be5565b80519091506001600160601b038481169116146126bf5780516040516319c01eff60e01b81526001600160601b03808a16600483015291821660248201529084166044820152606401610768565b6040516322f5db0f60e11b8152600481018390526000906127459073__$5ac3274b8cf1e01ea223bf093142af05b0$__906345ebb61e90602401602060405180830381865af4158015612716573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061273a91906135fd565b602084015151612ae0565b604051632255341b60e11b8152600481019190915273__$5ac3274b8cf1e01ea223bf093142af05b0$__906344aa683690602401602060405180830381865af4158015612796573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906127ba91906135fd565b6101208b0181905260208b01805191925082916127d8908390613a27565b905250506002546040805163db6dcc9560e01b815290516001600160a01b03928316935063219a3195928b169163db6dcc959160048083019260209291908290030181865afa15801561282f573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612853919061345c565b878b6040518463ffffffff1660e01b815260040161287393929190613d82565b6101e060405180830381865afa158015612891573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906128b59190613db0565b97508793505050505b949350505050565b600080516020613ea283398151915280546001600160a01b0383166001600160a01b03199091168117825560408051918252517f2f658b440c35314f52658ea8a740e05b284cdc84dc9ae01e891f21b8933e7cad9181900360200190a15050565b61292f6115e0565b610d9681612afc565b600061294c6001546001600160a01b031690565b6001600160a01b031663d39e60438361296361046f565b60405163c9e66e2960e01b815262ffffff909116600482015273__$c0fcb9c1c2e971ebe3d8745a7e2c5cc364$__9063c9e66e2990602401602060405180830381865af41580156129b8573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906129dc9190613649565b6040516001600160e01b031960e085901b16815260ff928316600482015291166024820152604401602060405180830381865afa158015612a21573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190612a459190613621565b92915050565b6000612a5f6001546001600160a01b031690565b6040516305247a1760e51b81526001600160601b03841660048201526001600160a01b03919091169063a48f42e090602401600060405180830381865afa158015612aae573d6000803e3d6000fd5b505050506040513d6000823e601f3d908101601f19168201604052612ad6919081019061385f565b6080015192915050565b6000612af58383670de0b6b3a7640000612b0d565b9392505050565b612b046115e0565b610d96816128c6565b6000808060001985870985870292508281108382030391505080600003612b4757838281612b3d57612b3d613e6b565b0492505050612af5565b808411612b8e5760405162461bcd60e51b81526020600482015260156024820152744d6174683a206d756c446976206f766572666c6f7760581b6044820152606401610768565b600084868809600260036001881981018916988990049182028318808302840302808302840302808302840302808302840302808302840302918202909203026000889003889004909101858311909403939093029303949094049190911702949350505050565b604051806101e001604052806000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081526020016000815260200160008152602001600081525090565b600060208284031215612c7e57600080fd5b81356001600160e01b031981168114612af557600080fd5b60005b83811015612cb1578181015183820152602001612c99565b50506000910152565b60008151808452612cd2816020860160208601612c96565b601f01601f19169290920160200192915050565b6020815260006001600160601b038084511660208401528060208501511660408401525060ff604084015116606083015260608301511515608083015260018060a01b0360808401511660a083015260a0830151612d4f60c08401826001600160a01b03169052565b5060c083015160e0808401526128be610100840182612cba565b6001600160a01b0381168114610d9657600080fd5b6001600160601b0381168114610d9657600080fd5b60ff81168114610d9657600080fd5b8015158114610d9657600080fd5b634e487b7160e01b600052604160045260246000fd5b60405160e081016001600160401b0381118282101715612de857612de8612db0565b60405290565b60405161010081016001600160401b0381118282101715612de857612de8612db0565b6040516101a081016001600160401b0381118282101715612de857612de8612db0565b60405161012081016001600160401b0381118282101715612de857612de8612db0565b6040516101e081016001600160401b0381118282101715612de857612de8612db0565b604051601f8201601f191681016001600160401b0381118282101715612ea257612ea2612db0565b604052919050565b60006001600160401b03821115612ec357612ec3612db0565b50601f01601f191660200190565b600082601f830112612ee257600080fd5b8135612ef5612ef082612eaa565b612e7a565b818152846020838601011115612f0a57600080fd5b816020850160208301376000918101602001919091529392505050565b60008060008060008060c08789031215612f4057600080fd5b8635612f4b81612d69565b95506020870135612f5b81612d7e565b94506040870135612f6b81612d93565b93506060870135612f7b81612da2565b92506080870135612f8b81612d69565b915060a08701356001600160401b03811115612fa657600080fd5b612fb289828a01612ed1565b9150509295509295509295565b600060208284031215612fd157600080fd5b81356001600160401b03811115612fe757600080fd5b6128be84828501612ed1565b6000806040838503121561300657600080fd5b823561301181612d69565b915060208301356001600160401b0381111561302c57600080fd5b61303885828601612ed1565b9150509250929050565b6000806040838503121561305557600080fd5b823561306081612d7e565b9150602083013561307081612d7e565b809150509250929050565b60006020828403121561308d57600080fd5b8135612af581612d7e565b6000602082840312156130aa57600080fd5b8135612af581612d69565b6001600160c01b031981168114610d9657600080fd5b64ffffffffff81168114610d9657600080fd5b600080600080600080600060e0888a0312156130f957600080fd5b873561310481612d7e565b96506020880135613114816130b5565b955060408801359450606088013561312b816130cb565b935060808801356001600160401b0381111561314657600080fd5b6131528a828b01612ed1565b93505060a088013561316381612d7e565b915060c0880135613173816130b5565b8091505092959891949750929550565b805182526020808201519083015260408082015190830152606080820151908301526080808201519083015260a0808201519083015260c0808201519083015260e08082015190830152610100808201519083015261012080820151908301526101408082015190830152610160808201519083015261018080820151908301526101a080820151908301526101c090810151910152565b6101e08101612a458284613183565b60008060006060848603121561323f57600080fd5b833561324a81612d69565b9250602084013561325a81612d69565b9150604084013561326a81612d69565b809150509250925092565b600080600080600080600060e0888a03121561329057600080fd5b873561329b81612d69565b965060208801356132ab816130b5565b95506040880135945060608801356132c2816130cb565b935060808801356132d281612d7e565b925060a08801356132e2816130b5565b915060c08801356001600160401b038111156132fd57600080fd5b6133098a828b01612ed1565b91505092959891949750929550565b600080600080600080600060e0888a03121561333357600080fd5b873561333e81612d7e565b9650602088013561334e816130b5565b9550604088013561335e81612d7e565b9450606088013561336e816130b5565b93506080880135925060a0880135915060c08801356001600160401b038111156132fd57600080fd5b600080604083850312156133aa57600080fd5b82356133b581612d69565b9150602083013561307081612d69565b6000602082840312156133d757600080fd5b815162ffffff81168114612af557600080fd5b600181811c908216806133fe57607f821691505b60208210810361341e57634e487b7160e01b600052602260045260246000fd5b50919050565b805161342f81612da2565b919050565b60006020828403121561344657600080fd5b8151612af581612da2565b805161342f81612d7e565b60006020828403121561346e57600080fd5b8151612af581612d7e565b601f82111561125c57600081815260208120601f850160051c810160208610156134a05750805b601f850160051c820191505b81811015610c83578281556001016134ac565b81516001600160401b038111156134d8576134d8612db0565b6134ec816134e684546133ea565b84613479565b602080601f83116001811461352157600084156135095750858301515b600019600386901b1c1916600185901b178555610c83565b600085815260208120601f198616915b8281101561355057888601518255948401946001909101908401613531565b508582101561356e5787850151600019600388901b60f8161c191681555b5050505050600190811b01905550565b6001600160401b0381168114610d9657600080fd5b805161342f8161357e565b6000602082840312156135b057600080fd5b8151612af58161357e565b8481526001600160401b0360c01b8416602082015264ffffffffff831660408201526080606082015260006135f36080830184612cba565b9695505050505050565b60006020828403121561360f57600080fd5b5051919050565b805161342f81612d69565b60006020828403121561363357600080fd5b8151612af581612d69565b805161342f81612d93565b60006020828403121561365b57600080fd5b8151612af581612d93565b6001600160601b03831681526040602082015261368f6040820183516001600160601b03169052565b600060208301516136ab60608401826001600160601b03169052565b5060408301516001600160c01b0319811660808401525060608301516001600160c01b0319811660a084015250608083015160c083015260a083015160e083015260c0830151610100818185015260e085015191506101206137158186018464ffffffffff169052565b81860151925061020091506101408281870152613736610240870185612cba565b9350818701519150610160603f1987860301818801526137568584612cba565b945081880151925061018091506137728288018461ffff169052565b87015191506101a06137898782018461ffff169052565b9087015191506101c0906137a7878301846001600160601b03169052565b87015191506101e06137c18782018464ffffffffff169052565b9087015164ffffffffff908116938701939093528601519182166102208601525050949350505050565b600080604083850312156137fe57600080fd5b825161380981612d69565b602084015190925061307081612d69565b600082601f83011261382b57600080fd5b8151613839612ef082612eaa565b81815284602083860101111561384e57600080fd5b6128be826020830160208701612c96565b60006020828403121561387157600080fd5b81516001600160401b038082111561388857600080fd5b9083019060e0828603121561389c57600080fd5b6138a4612dc6565b6138ad83613451565b81526138bb60208401613451565b60208201526138cc6040840161363e565b60408201526138dd60608401613424565b60608201526138ee60808401613616565b60808201526138ff60a08401613616565b60a082015260c08301518281111561391657600080fd5b6139228782860161381a565b60c08301525095945050505050565b60006040828403121561394357600080fd5b604051604081018181106001600160401b038211171561396557613965612db0565b604052825181526020928301519281019290925250919050565b6000610140828403121561399257600080fd5b61399a612dee565b6139a383613616565b81526139b160208401613616565b60208201526139c260408401613451565b60408201526139d360608401613451565b60608201526139e58460808501613931565b60808201526139f78460c08501613931565b60a0820152613a096101008401613424565b60c0820152613a1b6101208401613616565b60e08201529392505050565b80820180821115612a4557634e487b7160e01b600052601160045260246000fd5b600060208284031215613a5a57600080fd5b81516001600160401b0380821115613a7157600080fd5b9083019060e08286031215613a8557600080fd5b613a8d612dc6565b825182811115613a9c57600080fd5b613aa88782860161381a565b825250613ab760208401613616565b6020820152613ac860408401613616565b6040820152613ad960608401613616565b6060820152613aea60808401613451565b60808201526138ff60a08401613451565b60006102008284031215613b0e57600080fd5b613b16612e11565b613b1f83613451565b8152613b2d60208401613593565b6020820152604083015160408201526060830151606082015260808301516080820152613b5c60a08401613424565b60a0820152613b6d60c08401613424565b60c0820152613b7e60e08401613424565b60e082015261010083810151908201526101208084015190820152610140613ba885828601613931565b90820152610180613bbb85858301613931565b610160830152613bcf856101c08601613931565b908201529392505050565b805161342f816130cb565b600060208284031215613bf757600080fd5b81516001600160401b0380821115613c0e57600080fd5b908301906101408286031215613c2357600080fd5b613c2b612e34565b613c3483613451565b8152613c438660208501613931565b6020820152606083015182811115613c5a57600080fd5b613c668782860161381a565b604083015250613c7860808401613451565b6060820152613c8960a08401613451565b6080820152613c9a60c08401613451565b60a0820152613cab60e08401613bda565b60c08201526101009150613cc0828401613bda565b60e0820152613cd26101208401613bda565b91810191909152949350505050565b60006101008284031215613cf457600080fd5b60405160c081018181106001600160401b0382111715613d1657613d16612db0565b6040528251613d2481612d7e565b81526020830151613d3481612d69565b6020820152613d468460408501613931565b6040820152613d588460808501613931565b606082015260c0830151613d6b81612d69565b608082015260e0929092015160a083015250919050565b6001600160601b03841681526001600160c01b03198316602082015261022081016128be6040830184613183565b60006101e08284031215613dc357600080fd5b613dcb612e57565b825181526020808401519082015260408084015190820152606080840151908201526080808401519082015260a0808401519082015260c0808401519082015260e08084015190820152610100808401519082015261012080840151908201526101408084015190820152610160808401519082015261018080840151908201526101a080840151908201526101c0928301519281019290925250919050565b634e487b7160e01b600052601260045260246000fdfe07ebcf49758b6ed3af50fa146bec0abe157c0218fe65dc0874c286e9d5da4f00f3177357ab46d8af007ab3fdb9af81da189e1068fefdc0073dca88a2cab40a00f0c57e16840df040f15088dc2f81fe391c3923bec73e23a9662efc9c229c6a00a2646970667358221220ee18101b974af42eeb2fd52426487abd9677a945ae2054e7822fe9be6731f2ee64736f6c63430008140033",
|
915
908
|
"linkReferences": {
|
916
|
-
"contracts/types/
|
917
|
-
"
|
909
|
+
"contracts/types/Amount.sol": {
|
910
|
+
"AmountLib": [
|
918
911
|
{
|
919
912
|
"length": 20,
|
920
|
-
"start":
|
913
|
+
"start": 5458
|
921
914
|
}
|
922
915
|
]
|
923
916
|
},
|
924
|
-
"contracts/types/
|
925
|
-
"
|
917
|
+
"contracts/types/NftId.sol": {
|
918
|
+
"NftIdLib": [
|
926
919
|
{
|
927
920
|
"length": 20,
|
928
|
-
"start":
|
921
|
+
"start": 1992
|
929
922
|
},
|
930
923
|
{
|
931
924
|
"length": 20,
|
932
|
-
"start":
|
925
|
+
"start": 4109
|
926
|
+
}
|
927
|
+
]
|
928
|
+
},
|
929
|
+
"contracts/types/UFixed.sol": {
|
930
|
+
"UFixedLib": [
|
931
|
+
{
|
932
|
+
"length": 20,
|
933
|
+
"start": 9230
|
933
934
|
},
|
934
935
|
{
|
935
936
|
"length": 20,
|
936
|
-
"start":
|
937
|
+
"start": 9384
|
937
938
|
},
|
938
939
|
{
|
939
940
|
"length": 20,
|
940
|
-
"start":
|
941
|
-
}
|
942
|
-
]
|
943
|
-
},
|
944
|
-
"contracts/types/NftId.sol": {
|
945
|
-
"NftIdLib": [
|
941
|
+
"start": 9698
|
942
|
+
},
|
946
943
|
{
|
947
944
|
"length": 20,
|
948
|
-
"start":
|
945
|
+
"start": 9821
|
949
946
|
},
|
950
947
|
{
|
951
948
|
"length": 20,
|
952
|
-
"start":
|
953
|
-
}
|
954
|
-
]
|
955
|
-
},
|
956
|
-
"contracts/types/Timestamp.sol": {
|
957
|
-
"TimestampLib": [
|
949
|
+
"start": 10178
|
950
|
+
},
|
958
951
|
{
|
959
952
|
"length": 20,
|
960
|
-
"start":
|
953
|
+
"start": 10306
|
961
954
|
}
|
962
955
|
]
|
963
956
|
},
|
@@ -965,65 +958,75 @@
|
|
965
958
|
"VersionLib": [
|
966
959
|
{
|
967
960
|
"length": 20,
|
968
|
-
"start":
|
961
|
+
"start": 1404
|
969
962
|
},
|
970
963
|
{
|
971
964
|
"length": 20,
|
972
|
-
"start":
|
965
|
+
"start": 2645
|
973
966
|
},
|
974
967
|
{
|
975
968
|
"length": 20,
|
976
|
-
"start":
|
969
|
+
"start": 6170
|
970
|
+
},
|
971
|
+
{
|
972
|
+
"length": 20,
|
973
|
+
"start": 10852
|
974
|
+
}
|
975
|
+
],
|
976
|
+
"VersionPartLib": [
|
977
|
+
{
|
978
|
+
"length": 20,
|
979
|
+
"start": 4589
|
977
980
|
}
|
978
981
|
]
|
979
982
|
}
|
980
983
|
},
|
981
984
|
"deployedLinkReferences": {
|
982
|
-
"contracts/types/
|
983
|
-
"
|
985
|
+
"contracts/types/Amount.sol": {
|
986
|
+
"AmountLib": [
|
984
987
|
{
|
985
988
|
"length": 20,
|
986
|
-
"start":
|
989
|
+
"start": 5228
|
987
990
|
}
|
988
991
|
]
|
989
992
|
},
|
990
|
-
"contracts/types/
|
991
|
-
"
|
993
|
+
"contracts/types/NftId.sol": {
|
994
|
+
"NftIdLib": [
|
992
995
|
{
|
993
996
|
"length": 20,
|
994
|
-
"start":
|
997
|
+
"start": 1762
|
995
998
|
},
|
996
999
|
{
|
997
1000
|
"length": 20,
|
998
|
-
"start":
|
1001
|
+
"start": 3879
|
1002
|
+
}
|
1003
|
+
]
|
1004
|
+
},
|
1005
|
+
"contracts/types/UFixed.sol": {
|
1006
|
+
"UFixedLib": [
|
1007
|
+
{
|
1008
|
+
"length": 20,
|
1009
|
+
"start": 9000
|
999
1010
|
},
|
1000
1011
|
{
|
1001
1012
|
"length": 20,
|
1002
|
-
"start":
|
1013
|
+
"start": 9154
|
1003
1014
|
},
|
1004
1015
|
{
|
1005
1016
|
"length": 20,
|
1006
|
-
"start":
|
1007
|
-
}
|
1008
|
-
]
|
1009
|
-
},
|
1010
|
-
"contracts/types/NftId.sol": {
|
1011
|
-
"NftIdLib": [
|
1017
|
+
"start": 9468
|
1018
|
+
},
|
1012
1019
|
{
|
1013
1020
|
"length": 20,
|
1014
|
-
"start":
|
1021
|
+
"start": 9591
|
1015
1022
|
},
|
1016
1023
|
{
|
1017
1024
|
"length": 20,
|
1018
|
-
"start":
|
1019
|
-
}
|
1020
|
-
]
|
1021
|
-
},
|
1022
|
-
"contracts/types/Timestamp.sol": {
|
1023
|
-
"TimestampLib": [
|
1025
|
+
"start": 9948
|
1026
|
+
},
|
1024
1027
|
{
|
1025
1028
|
"length": 20,
|
1026
|
-
"start":
|
1029
|
+
"start": 10076
|
1027
1030
|
}
|
1028
1031
|
]
|
1029
1032
|
},
|
@@ -1031,15 +1034,25 @@
|
|
1031
1034
|
"VersionLib": [
|
1032
1035
|
{
|
1033
1036
|
"length": 20,
|
1034
|
-
"start":
|
1037
|
+
"start": 1174
|
1038
|
+
},
|
1039
|
+
{
|
1040
|
+
"length": 20,
|
1041
|
+
"start": 2415
|
1035
1042
|
},
|
1036
1043
|
{
|
1037
1044
|
"length": 20,
|
1038
|
-
"start":
|
1045
|
+
"start": 5940
|
1039
1046
|
},
|
1040
1047
|
{
|
1041
1048
|
"length": 20,
|
1042
|
-
"start":
|
1049
|
+
"start": 10622
|
1050
|
+
}
|
1051
|
+
],
|
1052
|
+
"VersionPartLib": [
|
1053
|
+
{
|
1054
|
+
"length": 20,
|
1055
|
+
"start": 4359
|
1043
1056
|
}
|
1044
1057
|
]
|
1045
1058
|
}
|