<?xml version="1.0"?>
<doc>
    <assembly>
        <name>VSIXInstaller</name>
    </assembly>
    <members>
        <member name="F:Microsoft.Internal.Performance.CodeMarkers.State.Enabled">
            <summary>
            The atom is present. CodeMarkers are enabled.
            </summary>
        </member>
        <member name="F:Microsoft.Internal.Performance.CodeMarkers.State.Disabled">
            <summary>
            The atom is not present, but InitPerformanceDll has not yet been called.
            </summary>
        </member>
        <member name="F:Microsoft.Internal.Performance.CodeMarkers.State.DisabledDueToDllImportException">
            <summary>
            Disabled because the CodeMarkers transport DLL could not be found or
            an import failed to resolve.
            </summary>
        </member>
        <member name="P:Microsoft.Internal.Performance.CodeMarkers.IsEnabled">
            <summary>
            Are CodeMarkers enabled? Note that even if IsEnabled returns false, CodeMarkers
            may still be enabled later in another component.
            </summary>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.CodeMarker(System.Int32)">
            <summary>
            Sends a code marker event
            </summary>
            <param name="nTimerID">The code marker event ID</param>
            <returns>true if the code marker was successfully sent, false if code markers are
            not enabled or an error occurred.</returns>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.CodeMarkerEx(System.Int32,System.Byte[])">
            <summary>
            Sends a code marker event with additional user data
            </summary>
            <param name="nTimerID">The code marker event ID</param>
            <param name="aBuff">User data buffer. May not be null.</param>
            <returns>true if the code marker was successfully sent, false if code markers are
            not enabled or an error occurred.</returns>
            <exception cref="T:System.ArgumentNullException">aBuff was null</exception>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.SetStateDLLException">
            <summary>
            Used by ManagedPerfTrack.cs to report errors accessing the DLL.
            </summary>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.CodeMarkerEx(System.Int32,System.Guid)">
            <summary>
            Sends a code marker event with additional Guid user data
            </summary>
            <param name="nTimerID">The code marker event ID</param>
            <param name="guidData">The additional Guid to include with the event</param>
            <returns>true if the code marker was successfully sent, false if code markers are
            not enabled or an error occurred.</returns>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.CodeMarkerEx(System.Int32,System.String)">
            <summary>
            Sends a code marker event with additional String user data
            </summary>
            <param name="nTimerID">The code marker event ID</param>
            <param name="stringData">The additional String to include with the event</param>
            <returns>true if the code marker was successfully sent, false if code markers are
            not enabled or an error occurred.</returns>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.StringToBytesZeroTerminated(System.String)">
            <summary>
            Converts a string into a byte buffer including a zero terminator (needed for proper ETW message formatting)
            </summary>
            <param name="stringData">String to be converted to bytes</param>
            <returns></returns>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.CodeMarkerEx(System.Int32,System.UInt32)">
            <summary>
            Sends a code marker event with additional DWORD user data
            </summary>
            <param name="nTimerID">The code marker event ID</param>
            <param name="uintData">The additional DWORD to include with the event</param>
            <returns>true if the code marker was successfully sent, false if code markers are
            not enabled or an error occurred.</returns>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.CodeMarkerEx(System.Int32,System.UInt64)">
            <summary>
            Sends a code marker event with additional QWORD user data
            </summary>
            <param name="nTimerID">The code marker event ID</param>
            <param name="ulongData">The additional QWORD to include with the event</param>
            <returns>true if the code marker was successfully sent, false if code markers are
            not enabled or an error occurred.</returns>
        </member>
        <member name="M:Microsoft.Internal.Performance.CodeMarkers.UsePrivateCodeMarkers(System.String,Microsoft.Win32.RegistryView)">
            <summary>
            Checks the registry to see if code markers are enabled
            </summary>
            <param name="regRoot">The registry root</param>
            <param name="registryView">The registry view.</param>
            <returns>Whether CodeMarkers are enabled in the registry</returns>
        </member>
        <member name="T:Microsoft.Internal.Performance.CodeMarkerStartEnd">
            <summary>
            Use CodeMarkerStartEnd in a using clause when you need to bracket an
            operation with a start/end CodeMarker event pair.  If you are using correlated
            codemarkers and providing your own event manifest, include two GUIDs (the correlation
            "marker" and the correlation ID itself) as the very first fields.
            </summary>
        </member>
        <member name="T:Microsoft.Internal.Performance.CodeMarkerExStartEnd">
            <summary>
            Use CodeMarkerExStartEnd in a using clause when you need to bracket an
            operation with a start/end CodeMarker event pair.  If you are using correlated
            codemarkers and providing your own event manifest, include two GUIDs (the correlation
            "marker" and the correlation ID itself) as the very first fields.
            </summary>
        </member>
        <member name="T:VSIXInstaller.App">
            <summary>
            Interaction logic for App.xaml
            </summary>
            <summary>
            App
            </summary>
        </member>
        <member name="M:VSIXInstaller.App.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="M:VSIXInstaller.App.Main">
            <summary>
            Application Entry Point.
            </summary>
        </member>
        <member name="M:VSIXInstaller.BatchSetupEngineInstaller.BatchInstall(System.Collections.Generic.IReadOnlyList{VSIXInstaller.SupportedVSSKU},System.Collections.Generic.IEnumerable{VSIXInstaller.ExtensionDataInstall})">
            <summary>
            Batch install using the setup engine.
            </summary>
            <param name="targetSkus">The SKUs to target</param>
            <param name="extensionsToInstall">The extensions to install</param>
        </member>
        <member name="M:VSIXInstaller.BlockingProcessHelper.GetBlockingProcesses(System.Collections.Generic.IEnumerable{VSIXInstaller.SupportedVSSKU},System.Boolean@)">
            <summary>
            Gets the list of processes that block installation changes in the specified target SKUs.
            </summary>
        </member>
        <member name="M:VSIXInstaller.BlockingProcessHelper.IsVSNgenRunnerProcess(System.String)">
            <summary>
            Checks if the given process name is VSNgenRunner
            </summary>
            <param name="processName">The process name to check</param>
            <returns>True if the process is VSNgenRunner; otherwise false</returns>
        </member>
        <member name="M:VSIXInstaller.BlockingProcessHelper.SignalVSNgenRunnerToStop">
            <summary>
            Signals VSNgenRunner to stop safely via the global event
            </summary>
        </member>
        <member name="M:VSIXInstaller.BlockingProcessHelper.IsBlockingProcess(System.String,System.String,System.Collections.Generic.IList{System.String},System.Boolean,System.Boolean@)">
            <summary>
            Block if the process is called "devenv" for extension SDKs or if the process is under one of the targeted SKU paths.
            </summary>
        </member>
        <member name="P:VSIXInstaller.CommandLineData.AppidCulture">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.AppidInstallPath">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.AppidName">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.CallingProcessId">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.CanOverwriteFiles">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.DowngradableVsixIds">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.InstallableVsixPaths">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.InstallAsUserToken">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.InstallInstanceIdsFlag">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.InstallIds">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.InstallInstanceIds">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsAdminInstall">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsRepairOverridden">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsSilent">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.PrerequisitesRequired">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.RootSuffix">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.ShouldExpandExtensionPack">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.SkipDotNetCheck">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.SkipCertCheck">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.ShutdownBlockingProcess">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.TargetSKUName">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.TargetSKUVersion">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.UninstallableVsixIds">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.NoOpFail">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.AllowUnsignedExtensions">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.EnableUpdates">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsSingleIntanceIdInstall">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsInstanceIdInstall">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsGettingInstallPathsFromSKUNameAndVersion">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsGettingInstallPathsFromAppIdInstallPath">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsGettingInstallPathsFromInstallIDs">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.CommandLineData.IsGettingInstallPathsFromVSIX">
            <inheritdoc />
        </member>
        <member name="T:VSIXInstaller.CommandLine.CommandLineHandler">
            <summary>
            This class takes arguments passed to the VSIX Installer and calls the appropriate methods to the Argument Consumer.
            </summary>
        </member>
        <member name="T:VSIXInstaller.CommandLine.IArgumentConsumer">
            <summary>
            This interface consumes values passed in the command line arguments for the VSIX installer.
            </summary>
        </member>
        <member name="M:VSIXInstaller.CommandLine.IArgumentConsumer.SetShutdownBlockingProcess(System.Boolean)">
            <summary>
            Determine if the VSIXInstaller can shutdown the blocking process
            </summary>
            <param name="shutdownVSProcess">Should the blocking process be shutdown?</param>
        </member>
        <member name="M:VSIXInstaller.CommandLine.IArgumentConsumer.SetShouldProcessExtensionPack(System.Boolean)">
            <summary>
            Determine if the extension pack should be expanded
            </summary>
            <param name="shouldProcessExtensionPack"></param>
        </member>
        <member name="M:VSIXInstaller.CommandLine.IArgumentConsumer.SetNoOpFail(System.Boolean)">
            <summary>
            Determine if the operation should no-op if it fails
            </summary>
            <param name="noOp">The value to set</param>
        </member>
        <member name="M:VSIXInstaller.CommandLine.InstallerCommandLineHandler.HandleCommandLineArguments(System.Collections.Generic.IEnumerable{System.String},VSIXInstaller.CommandLine.IArgumentConsumer,System.IServiceProvider)">
            <summary>
            Takes arguments meant for the VSIX Installer, parses them, and calls the appropriate methods on the argument 
            consumer. Throws if any of the arguments are invalid.
            Arguments are split into 3 groups as follows:
            1. Flag arguments:
               Format: -(argument) or /(argument)
               Possible values:
                - /a or /admin: Run as Administrator
                - /q or /quiet: Run quietly
                - /nr or /norepair: Override the ability to repair
                - /aue or /allowunsignedextensions: indicates that any setup interop cmds which result from the invocation of vsixinstaller will add allowunsignedextensions to that cmd.
            2. Value arguments:
               Format: -(key):(value) or /(key):(value)
               Possible values:
               - /s:(sku) or /skuname:(sku) Install the VSIX to this sku
               - /v:(version) or /skuversion:(version) Install the VSIX to this version of VS
               - /l:(file) or /log:(file) or /logfile:(file) Specifies a path to which to write the log
               - /u:(file) or /uninstall:(file) Specifies a VSIX to uninstall
               - /ownerhwnd:(hwnd) HWND of the parent process
               - /installdatapath:(datapath) Where to put the install data
               - /installids:(ids) Ids is a semi-colon separated list of install ids
               - /appidinstallpath:(appidpath) Install the VSIX to the VS installed at this path
               - /appidname:(name) A localized name of the AppId to install this VSIX to
               - /installas:(token) A token representing the user that we should install as. Valid only on per-user installs.
               - /callingprocessid:(PID) The PID for the process that called us, used in auto-elevation scenarios
               - /instanceIds: A comma separated list of instance ids that the install/uninstall should target. An empty list indicates the install should target all available instances
            3. Path to the VSIX
               This is just a path to the VSIX
               
            Example: /s:Community /v:15.0 C:/test/myvsix.vsix
            </summary>
            <param name="rawArgs">The args passed to the VSIX Installer.</param>
            <param name="consumer">The object that is to consume the arguments.</param>
            <param name="serviceProvider">The serviceProvider</param>
        </member>
        <member name="M:VSIXInstaller.CommandLineParser.VSIXInstaller#CommandLine#IArgumentConsumer#SetShouldProcessExtensionPack(System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.CommandLineParser.VSIXInstaller#CommandLine#IArgumentConsumer#SetShutdownBlockingProcess(System.Boolean)">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.AppidCulture">
            <summary>
            A string identifying the culture which the VSIX installer should run under
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.AppidInstallPath">
            <summary>
            The installation path of the SKU (product) you want to target for the install.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.AppidName">
            <summary>
            The name of the application to which to install or uninstall
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.CallingProcessId">
            <summary>
            The process id of the calling process
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.CanOverwriteFiles">
            <summary>
            Can overwrite existing files
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.DowngradableVsixIds">
            <summary>
            The list of VSIXs to downgrade
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.InstallableVsixPaths">
            <summary>
            The list of VSIXs to install
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.InstallAsUserToken">
            <summary>
            The token to run as
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.InstallInstanceIdsFlag">
            <summary>
            Is the target instance provided
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.InstallIds">
            <summary>
            The target instance id
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.InstallInstanceIds">
            <summary>
            List of instance IDS into which the extension and its dependencies are installed or uninstalled.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsAdminInstall">
            <summary>
            The extension will be installed to the admin extensions location
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsRepairOverridden">
            <summary>
            Can the repair to overridden
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsSilent">
            <summary>
            Suppresses the UI
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.ShouldExpandExtensionPack">
            <summary>
            Determine if the extension pack should be expanded
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.PrerequisitesRequired">
            <summary>
            Installs the extension only to instances where all prerequisites are met
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.RootSuffix">
            <summary>
            A root-suffix to be used for the install
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.SkipDotNetCheck">
            <summary>
            Skip the .Net Framework check
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.SkipCertCheck">
            <summary>
            Skip the cert check for the VSIX
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.ShutdownBlockingProcess">
            <summary>
            Force shutdown the blocking process when UI is being suppressed
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.TargetSKUName">
            <summary>
            The name of the SKU to which to install or uninstall the extension
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.TargetSKUVersion">
            <summary>
            The version of the application to which to install or uninstall the extension.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.UninstallableVsixIds">
            <summary>
            The list of SKU to uninstall
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.NoOpFail">
            <summary>
            Should the operation no-op if it fails
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.AllowUnsignedExtensions">
            <summary>
            Should allow unsigned extensions flag be passed to any required setup interop cmds.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsSingleIntanceIdInstall">
            <summary>
            Is it targetting single instance
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsInstanceIdInstall">
            <summary>
            Is an instance provided
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsGettingInstallPathsFromSKUNameAndVersion">
            <summary>
            Is the path derived from skuname and skuversion?
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsGettingInstallPathsFromAppIdInstallPath">
            <summary>
            Is the path derived from AppidName and AppidInstallPath
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsGettingInstallPathsFromInstallIDs">
            <summary>
            Is the path derived from InstallIds
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.IsGettingInstallPathsFromVSIX">
            <summary>
            Is the path derived from VSIX
            </summary>
        </member>
        <member name="P:VSIXInstaller.ICommandLineData.EnableUpdates">
            <summary>
            Is enabling updates requested
            </summary>
        </member>
        <member name="M:VSIXInstaller.Common.ApplySizeFromSourceAndNavigate(System.Windows.Controls.Page,System.Windows.Controls.Page)">
            <summary>
            Navigates from the <paramref name="sourcePage" /> to the <paramref name="targetPage" />.
            Sets the height and width of <paramref name="targetPage" /> to the actual height and width of the <paramref name="sourcePage" />.
            </summary>
        </member>
        <member name="T:VSIXInstaller.CreateProcessCommand">
            <summary>
            Starts a new process for a specific target
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "T:VSIXInstaller.AdditionalInformation" -->
        <member name="T:VSIXInstaller.AdditionalInformationDetail">
            <summary>
            Additional details about an <see cref="T:VSIXInstaller.InstallResult" />
            </summary>
        </member>
        <member name="T:VSIXInstaller.ErrorInformation">
            <summary>
            Tracks error and whether or not it has been shown
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionData.#ctor(System.Collections.Generic.IEnumerable{VSIXInstaller.ExtensionDataInstall},System.Collections.Generic.IEnumerable{VSIXInstaller.ExtensionDataUninstall},System.Collections.Generic.IEnumerable{VSIXInstaller.ExtensionDataDowngrade},System.Collections.Generic.IEnumerable{VSIXInstaller.SkuData},VSIXInstaller.StateData)">
            <summary>
            Constructor
            </summary>
            <param name="installableExtensions">The extensions to install</param>
            <param name="uninstallableExtensions">The extensions to uninstall</param>
            <param name="downgradableExtensions">The extension to dowwngrade</param>
            <param name="targetsSkus">The SKUs to taget</param>
            <param name="stateData">The stateData</param>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.ChangeType">
            <summary>
            Determines the kind of change that will be made.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.InstallableExtensions">
            <summary>
            List of extensions to be installed into the target SKUs.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.CommandLineData">
            <summary>
            Gets the data passed in through commandline
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.StateData">
            <summary>
            Get the state Data
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.TargetSkus">
            <summary>
            List of SKUs targeted by install and uninstall operations.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.UninstallableExtensions">
            <summary>
            List of extensions to be uninstalled from the target SKUs.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.DowngradableExtensions">
            <summary>
            List of extensions to be downgraded in the target SKUs.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.CanBatchForSetupEngine">
            <summary>
            Only batch install if the following are all true:
            1. They are all VSIX v3 package
            2. None are SDK extension
            3. None are alpha pack
            4. This is admin install
            5. Target VS 15.0 and above
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.ChangeCount">
            <summary>
            Number of packages that has changed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.SatisfiedInstallableExtensions">
            <summary>
            List of installable + actionable extensions
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.SatisfiedUninstallableExtensions">
            <summary>
            List of uninstallable + actionable extensions
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.SatisfiedDowngradeableExtensions">
            <summary>
            List of downgradable + actionable extensions
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionData.DetermineChangeType(System.Int32,System.Int32,System.Int32,System.Boolean,System.Boolean)">
            <summary>
            Determine the type of change 
            </summary>
            <param name="installableCount">The number of extensions to install</param>
            <param name="uninstallableCount">The number of extensions to uninstall</param>
            <param name="downgradableCount">The number of extensions to downgrade</param>
            <param name="isGettingInstallPathsFromAppIdInstallPath">Get install from the AppId install path</param>
            <returns>Return the changetype</returns>
        </member>
        <member name="P:VSIXInstaller.ExtensionData.HasActionableExtensionPack">
            <summary>
            Is there any extension pack that is actionable.
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionDataBase.#ctor(System.String)">
            <summary>
            Constructor
            </summary>
            <param name="extensionPackParentName">The name of the parent extension pack</param>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataBase.IsPartOfExtensionPack">
            <summary>
            Is this extension part of an Extension Pack
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataBase.ExtensionPackParentName">
            <summary>
            The name of the parent extension pack
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionDataDowngrade.#ctor(System.String,VSIXInstaller.NotDowngradeableReason)">
            <summary>
            Constructor
            </summary>
            <param name="vsixId">The id of the VSIX</param>
            <param name="notDowngradeableReason">The reason for no doing the downgrade</param>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataDowngrade.VsixId">
            <summary>
            Get the VsixId 
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataDowngrade.NotDowngradeableReason">
            <summary>
            Determines if this extension is downgradable and if not, contains the reason why
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataInstall.Extension">
            <summary>
            Object representing the installable extension.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataInstall.InstallablePackages">
            <summary>
            List of packages that will be installed.
            </summary>
            <remarks>
            Only applicable in the multi extension scenario.
            </remarks>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataInstall.NotInstallableReason">
            <summary>
            Determines if this extension is installable and if not, contains the reason why
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionDataUninstall.#ctor(VSIXInstaller.MarkupRawExtensionData,VSIXInstaller.NotUninstallableReason,System.Boolean)">
            <summary>
            Constructor
            </summary>
            <param name="vsixData">The raw extension data</param>
            <param name="notUninstallableReason">The reason for not uninstalling</param>
            <param name="isExtensionSdk">Is this a extension sdk</param>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataUninstall.VsixId">
            <summary>
            The VSIX id
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataUninstall.IsExtensionSDK">
            <summary>
            Is this extension sdk
            </summary>
        </member>
        <member name="P:VSIXInstaller.ExtensionDataUninstall.NotUninstallableReason">
            <summary>
            The reason the VSIX is uninstallable.
            </summary>
        </member>
        <member name="P:VSIXInstaller.InstallResult.AppName">
            <summary>
            The name of the SKU targetted
            </summary>
        </member>
        <member name="P:VSIXInstaller.InstallResult.ExtensionName">
            <summary>
            The name of the extension applied
            </summary>
        </member>
        <member name="P:VSIXInstaller.InstallResult.Succeeded">
            <summary>
            Was the application successful
            </summary>
        </member>
        <member name="P:VSIXInstaller.InstallResult.AdditionalInformation">
            <summary>
            Additional information
            </summary>
        </member>
        <member name="P:VSIXInstaller.InstallResult.Extension">
            <summary>
            The extension associated with the result
            </summary>
        </member>
        <member name="M:VSIXInstaller.InstallResultWithExtensionGrouping.#ctor(System.String)">
            <summary>
            Constructor
            </summary>
            <param name="extensionName"></param>
        </member>
        <member name="P:VSIXInstaller.InstallResultWithExtensionGrouping.ExtensionName">
            <summary>
            The name of the extension to group by
            </summary>
        </member>
        <member name="P:VSIXInstaller.InstallResultWithExtensionGrouping.SKUs">
            <summary>
            The SKU targetted
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.RestartInformation">
            <summary>
            Handle process restart
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.DuplicatedUserToken">
            <summary>
            The Window token
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.CmdLineData">
            <summary>
            The command line object model
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.ServiceProvider">
            <summary>
            The service provider
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.AtleastOneModificationSucceeded">
            <summary>
            Is there at least VSIX being updated?
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.ClientConfigurationRequiresUpdate">
            <summary>
            Did any modification happen for an extension which allows client role?
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.AtLeastOneAllUsersModificationSucceeded">
            <summary>
            Is there at least one all-users/per-machine VSIX being modified.
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.SuccessfulExtensionModifications">
            <summary>
            The list of extensions that has been updated
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.ChangeCount">
            <summary>
            The number of extensions changed
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.CancellationTokenSource">
            <summary>
            The cancel token
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.AppRunOperation">
            <summary>
            The operation event for the vsixinstaller
            </summary>
        </member>
        <member name="P:VSIXInstaller.IStateData.AllowIncrementalMajorVersionDependencies">
            <summary>
            Determines if incremental major version dependencies are allowed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.MarkupRawExtensionData.Id">
            <summary>
            The id for the extension - can be path or vsixid
            </summary>
        </member>
        <member name="P:VSIXInstaller.MarkupRawExtensionData.ExtensionPackParentName">
            <summary>
            The id of the parent - can be path or vsixid
            </summary>
        </member>
        <member name="M:VSIXInstaller.SkuData.Merge(VSIXInstaller.SkuData)">
            <summary>
            Merges the object specified by <paramref name="data" /> into the current object.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SkuData.InstallablePackages">
            <summary>
            List of packages that will be installed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SkuData.SatisfiesExtensions">
            <summary>
            Determines if all extensions targeting this SKU can have their dependencies satisfied.
            </summary>
            <remarks>
            Only applicable in the single extension installation scenario.
            </remarks>
        </member>
        <member name="P:VSIXInstaller.SkuData.Sku">
            <summary>
            Object representing a targeted SKU.
            </summary>
        </member>
        <member name="P:VSIXInstaller.StateData.CmdLineData">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.RestartInformation">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.DuplicatedUserToken">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.ServiceProvider">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.AtleastOneModificationSucceeded">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.AtLeastOneAllUsersModificationSucceeded">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.ClientConfigurationRequiresUpdate">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.SuccessfulExtensionModifications">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.ChangeCount">
            <inheritdoc />
        </member>
        <member name="P:VSIXInstaller.StateData.CancellationTokenSource">
            <inheritdoc />
        </member>
        <member name="T:VSIXInstaller.EngineComparer">
            <summary>
            Used to compare extension engines to eliminate multiple engine instantiation.
            </summary>
        </member>
        <member name="M:VSIXInstaller.EngineComparer.Equals(Microsoft.VisualStudio.ExtensionManager.IExtensionEngine,Microsoft.VisualStudio.ExtensionManager.IExtensionEngine)">
            <summary>
            An extension engine must be equal if it is for the same install, thus we compare install dirs.
            </summary>        
        </member>
        <member name="M:VSIXInstaller.EngineComparer.GetHashCode(Microsoft.VisualStudio.ExtensionManager.IExtensionEngine)">
            <summary>
            Use hashcode of the install dir to be consistent with how we do equals.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VsixInstallerEngineHost.AppName">
            <summary>
            Product name of the host we are running in
            </summary>
        </member>
        <member name="M:VSIXInstaller.VsixInstallerEngineHost.DisablePerMachineExtension(Microsoft.VisualStudio.ExtensionManager.IInstalledExtension)">
            <summary>
            Adds the extension to the excluded directories list.
            </summary>
            <param name="extension">The per-machine extension to disable</param>
        </member>
        <member name="M:VSIXInstaller.VsixInstallerEngineHost.DisablePerMachineExtension(System.String)">
            <summary>
            Adds the extension to the excluded directories list.
            </summary>
            <param name="extension">The extension to disable</param>
        </member>
        <member name="M:VSIXInstaller.VsixInstallerEngineHost.EnablePerMachineExtension(Microsoft.VisualStudio.ExtensionManager.IInstalledExtension)">
            <summary>
            Removes the extension to the excluded directories list.
            </summary>
            <param name="extension">The extension to enable</param>
        </member>
        <member name="P:VSIXInstaller.VsixInstallerEngineHost.ExcludedLocations">
            <summary>
            Paths for any directories excluded from loading extensions, MEF parts, templates, etc.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VsixInstallerEngineHost.AddToExclusionList(System.String)">
            <summary>
            Adds an extension to ExcludedDirectories.lst
            </summary>
        </member>
        <member name="M:VSIXInstaller.VsixInstallerEngineHost.RemoveFromExclusionList(System.String)">
            <summary>
            Removes an extension to the in-memory copy of ExcludedDirectories.lst, without saving it to disk.
            </summary>
        </member>
        <member name="T:VSIXInstaller.FeatureFlagSingleton">
            <summary>
            The class to handle getting the feature flag settings
            </summary>
        </member>
        <member name="M:VSIXInstaller.FeatureFlagSingleton.IsVSIXV1BlockEnabled(System.Threading.CancellationToken)">
            <summary>
            Is the VSIXV1 blocked enabled.
            </summary>
            <param name="cancellationToken">The cancellation token</param>
            <returns>True if the block is enabled</returns>
        </member>
        <member name="P:VSIXInstaller.LiveText.AutomationHelpers.WpfSupportsLiveRegions">
            <summary>
            Indicates whether WPF natively supports live regions
            </summary>
        </member>
        <member name="M:VSIXInstaller.LiveText.AutomationHelpers.RaiseLiveRegionChangedEvent(System.Windows.UIElement)">
            <summary>
            Raises a <see cref="F:VSIXInstaller.LiveText.AutomationHelpers.LiveRegionChangedEvent" /> for <paramref name="element" />.
            </summary>
            <param name="element">The element to raise the event for</param>
        </member>
        <member name="T:VSIXInstaller.LiveText.AutomationLiveSetting">
            <summary>
            Describes the notification characteristics of a particular live region
            </summary>
        </member>
        <member name="F:VSIXInstaller.LiveText.AutomationLiveSetting.Off">
            <summary>
            The element does not send notifications if the content of the live region has changed.
            </summary>
        </member>
        <member name="F:VSIXInstaller.LiveText.AutomationLiveSetting.Polite">
            <summary>
            The element sends non-interruptive notifications if the content of the live region has
            changed. With this setting, UI Automation clients and assistive technologies are expected 
            to not interrupt the user to inform of changes to the live region.
            </summary>
        </member>
        <member name="F:VSIXInstaller.LiveText.AutomationLiveSetting.Assertive">
            <summary>
            The element sends interruptive notifications if the content of the live region has changed. 
            With this setting, UI Automation clients and assistive technologies are expected to interrupt 
            the user to inform of changes to the live region.
            </summary>
        </member>
        <member name="T:VSIXInstaller.LiveText.CustomAutomationEvent">
            <summary>
            An automation event not (yet) supported by WPF.
            </summary>
        </member>
        <member name="T:VSIXInstaller.LiveText.CustomAutomationEvents">
            <summary>
            Automation events not (yet) natively supported by WPF
            </summary>
        </member>
        <member name="M:VSIXInstaller.LiveText.CustomAutomationEvents.RaiseCustomAutomationEvent(VSIXInstaller.LiveText.ICustomAutomationEventSource,VSIXInstaller.LiveText.CustomAutomationEvent)">
            <summary>
            Raises a custom event for automation.  Use this extension instead of 
            AutomationPeer.RaiseAutomationEvent(AutomationEvents eventId) when you
            need to raise an automation event that's not natively supported by WPF.
            </summary>
            <param name="customEvent">The event to raise</param>
        </member>
        <member name="M:VSIXInstaller.LiveText.CustomAutomationEvents.RaiseLiveRegionChangedEvent(System.Windows.UIElement)">
            <summary>
            Raises a <see cref="F:VSIXInstaller.LiveText.CustomAutomationEvents.LiveRegionChangedEvent" /> for <paramref name="element" />.
            The element's automation peer must implement <see cref="T:VSIXInstaller.LiveText.ICustomAutomationEventSource" />.
            </summary>
            <param name="element">The element to raise the event for</param>
        </member>
        <member name="T:VSIXInstaller.LiveText.CustomAutomationIdentifier">
            <summary>
            A base class for automation identifiers not (yet) supported by WPF
            </summary>
        </member>
        <member name="M:VSIXInstaller.LiveText.CustomAutomationIdentifier.CreateAutomationIdentifier``1(System.Int32,System.String)">
            <summary>
            Creates an automation identifier.  AutomationIdentifier constructors are internal
            to PresentationCore so we do this via reflection.
            </summary>
            <param name="id">The id of the event</param>
            <param name="programmaticName">The programmatic name of the event</param>
            <returns>The new automation identifier</returns>
        </member>
        <member name="T:VSIXInstaller.LiveText.CustomAutomationProperties">
            <summary>
            Automation properties not (yet) natively supported by WPF
            </summary>
        </member>
        <member name="F:VSIXInstaller.LiveText.CustomAutomationProperties.LiveSettingProperty">
            <summary>
            LiveSetting Property
            </summary>
        </member>
        <member name="M:VSIXInstaller.LiveText.CustomAutomationProperties.MaybeAddProperty(System.Collections.Hashtable,System.Int32,System.Type,System.String)">
            <summary>
            Adds support for a custom automation property to AutomationPeer.
            </summary>
            <param name="s_propertyInfo">The AutomationPeer's s_propertyInfo table</param>
            <param name="propertyId">The ID of the custom automation property</param>
            <param name="delegateType">The value type of <paramref name="s_propertyInfo" /></param>
            <param name="getterMethodName">The name of this class's getter method for <paramref name="propertyId" /></param>
        </member>
        <member name="M:VSIXInstaller.LiveText.CustomAutomationProperties.GetLiveSettingAutomationProperty(System.Windows.Automation.Peers.AutomationPeer)">
            <summary>
            The AutomationPeer-friendly accessor method for the LiveSetting automation attached property
            </summary>
            <param name="peer">The automation peer</param>
            <returns>The value of the CustomAutomationProperties.LiveSetting property attached to the peer's owner</returns>
        </member>
        <member name="T:VSIXInstaller.LiveText.CustomAutomationProperty">
            <summary>
            An automation property not (yet) supported by WPF.
            </summary>
        </member>
        <member name="M:VSIXInstaller.LiveText.ICustomAutomationEventSource.GetProvider">
            <summary>
            Returns the raw element provider for an automation peer that acts as a custom
            automation event source.
            </summary>
        </member>
        <member name="T:VSIXInstaller.LiveText.LiveTextBlock">
            <summary>
            A text block designed for supporting live region accessiblity text. The
            default live setting is Polite to avoid pestering screen reader users.
            </summary>
            <example>
            &lt;LiveTextBlock Text="Text to display and read" /&gt;
            </example>
            <example>
            &lt;LiveTextBlock Text="Text to display" LiveText="Text to read" /&gt;
            </example>
        </member>
        <member name="P:VSIXInstaller.Logger.FilePath">
            <summary>
            The path to the log file used by VSIXInstaller or AutoUpdate apps.
            </summary>
        </member>
        <member name="M:VSIXInstaller.Logger.InitializeLogger(System.String,System.Boolean)">
            <summary>
            Allows an external caller to specify the log file used by VSIXInstaller. This function will
            close any open log files and create a new logger.
            </summary>
            <param name="filename">The name that should be used for the log file. Pass <value>null</value> to have a
            randomly generated name. This must be a filename or a relative path under %TEMP%. Invalid filenames will cause
            a randomly generated filename to be used.</param>
            <param name="reInitialized">True if the logger should be re-initialized, false otherwise. Default is true.</param>
        </member>
        <member name="M:VSIXInstaller.Logger.WriteLogHeader">
            <summary>
            Always write out our file version number and the command line parameters for better diagnostics in the vsixinstaller.
            </summary>
        </member>
        <member name="M:VSIXInstaller.OperationLogger.#ctor(System.String)">
            <summary>
            Constructor - write out the begin operation marker
            </summary>
            <param name="message"></param>
        </member>
        <member name="M:VSIXInstaller.OperationLogger.Dispose">
            <summary>
            When disposing, write out the end operation marker
            </summary>
        </member>
        <member name="T:VSIXInstaller.MemorySettingsManager.MemorySettingsManager">
            <summary>
            Settings manager that stores its information in memory.
            Used when installing Extension SDKs, as they are not installed to any particular
            AppId.
            </summary>
        </member>
        <member name="M:VSIXInstaller.MemorySettingsManager.MemorySettingsManager.Dispose">
            <summary>
            Nothing to dispose, but required by interface.
            </summary>
        </member>
        <member name="P:VSIXInstaller.MemorySettingsManager.MemorySettingsManager.InstallPath">
            <summary>
            Returns null for Extension SDKs, as they are not installed to any particular AppID.
            </summary>
        </member>
        <member name="T:VSIXInstaller.MemorySettingsManager.MemoryWritableSettingsStore">
            <summary>
            Writable settings store that stores its information in memory.
            Used when installing Extension SDKs, as they are not installed to any
            particular AppId.
            </summary>
        </member>
        <member name="T:VSIXInstaller.ProcessRestartInformation">
            <summary>
            Tracks information on whether or not an application restart is required. 
            There are 3 data points tracked:
              1. Elevation: the application must restart elevated
              2. EnginePath: the application should be run from the engine path
              3. Installer: the application should be run as the Visual Studio installer
            A client can request an exception be issued if a restart is required.
            </summary>
        </member>
        <member name="M:VSIXInstaller.ProcessRestartInformation.RequestElevatedRestart(System.Boolean)">
            <summary>
            Determines whether or not the application needs to be restarted elevated.
            Elevation is required iff input parameter is true and the process is not already elevated.
            </summary>
            <param name="isElevationRequired">Indicates whether or not the application requires elevation</param>
            <returns>True if elevation is required and the process is not already elevated; otherwise false</returns>
        </member>
        <member name="M:VSIXInstaller.ProcessRestartInformation.RequestRestartFromEnginePath(System.Boolean)">
            <summary>
            Determines whether or not the application needs to be restarted from the engine path.
            </summary>
            <param name="isEnginePathRequired"></param>
            <returns>True if the process must be started from theEngine path and is running from an instance path; otherwise false</returns>
        </member>
        <member name="M:VSIXInstaller.ProcessRestartInformation.RequestRestartToVisualStudioInstaller(System.Collections.Generic.IList{VSIXInstaller.SupportedVSSKU})">
            <summary>
            Determines whether or not the application needs to be restarted as the Visual Studio installer.
            </summary>
            <param name="skusRequested">Targets requested to be installed into</param>
            <returns>True if at least one valid instance is discovered, false otherwise.</returns>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.stateData">
            <summary>
            The state data
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.ChangeType">
            <summary>
            Determines the kind of change that will be made.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.IsAdminInstall">
            <summary>
            Determines if installation operations should be made per-instance.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.ShouldOverwriteFiles">
            <summary>
            Determines if installation operations should be allowed to overwrite existing files.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.ShouldSkipCertCheck">
            <summary>
            Determines if cert validation should be skip.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.RootSuffix">
            <summary>
            Gets the root suffix.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.InstallableExtensions">
            <summary>
            List of extensions to be installed into the target SKUs.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.UninstallableExtensions">
            <summary>
            List of extensions to be uninstalled from the target SKUs.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SelectedChangesContext.DowngradableExtensions">
            <summary>
            List of extensions to be downgraded in the target SKUs.
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.#ctor(System.IServiceProvider)">
            <summary>
            Constructor
            </summary>
            <param name="serviceProvider">The service provider</param>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.ExpandExtensionPackToInstall(VSIXInstaller.IStateData,System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.ExpandExtensionPackToUnInstall(VSIXInstaller.IStateData)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.IsExtensionPack(VSIXInstaller.IStateData,System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.IsExtensionPack(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataInstall})">
            <summary>
            Determine if the VSIX is an extension pack
            </summary>
            <param name="extensions">The extensions to evaluate</param>
            <returns>Determine if the VSIX is an extension pack</returns>
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.HasChildExtensions(System.Collections.Generic.IEnumerable{System.String})">
            <summary>
            Determine if the extension pack has any children reference
            </summary>
            <param name="vsixIds">The children list</param>
            <returns>True if the extension has a children</returns>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.AcquireExtensionPack(System.Collections.Generic.IList{System.String},VSIXInstaller.IStateData,System.Boolean)">
            <summary>
            Acquire extensions and packed extensions locally
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackService.GetExtensionByVsixId(System.Collections.Generic.List{System.String},System.String,Microsoft.VisualStudio.ExtensionManager.IExtensionEngine,System.Collections.Generic.List{VSIXInstaller.MarkupRawExtensionData},System.Threading.CancellationToken)">
            <remark>
            When the cancel event is raised, we will stop the download
            </remark>
        </member>
        <member name="M:VSIXInstaller.ExtensionService.GetInstallableData(System.String,System.String,System.Boolean,VSIXInstaller.IStateData,System.Collections.Generic.IEnumerable{VSIXInstaller.SkuData}@)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.HandleExtensibilityType(System.Nullable{Microsoft.VisualStudio.ExtensionManager.ExtensionType},System.Collections.Generic.IList{VSIXInstaller.SupportedVSSKU},VSIXInstaller.ProcessRestartInformation,System.String)">
             <summary>
             Inspects <see cref="F:Microsoft.VisualStudio.ExtensionManager.ExtensionType.VisualStudioExtensibility" /> extensions and triggers a restart to the Visual Studio installer if required.
             </summary>
             <param name="extensionType">The type of extension being handled</param>
             <param name="validSKUs">The SKUs that are being considered for operating on the extension</param>
             <param name="restartInfo"><see cref="T:VSIXInstaller.ProcessRestartInformation" /> state for requesting a restart to the VS Installer, if required</param>
             <param name="extensionPackParentName">Name of the parent extension pack the extension belongs to, if any</param>
             <exception cref="T:VSIXInstaller.NoApplicableSKUsException">Thrown if a <see cref="F:Microsoft.VisualStudio.ExtensionManager.ExtensionType.VisualStudioExtensibility" /> extension is passed with an extension pack parent provided</exception>
             <remarks>
             Visual Studio Installer does not support extension packs and VSIX Installer can't reason properly about Extensibility extensions.
            
             The logic of this function is:
             1. Only handle if this is an Extensibility extension and we don't have any valid SKUs to operate on
             2. If it's part of an extension pack, throw <see cref="T:VSIXInstaller.NoApplicableSKUsException" />
             3. If the VS Installer can handle it, request a restart by throwing <see cref="T:Microsoft.VisualStudio.ExtensionManager.RequiresInstallerException" />
             4. If the VS Installer can't handle it, throw <see cref="T:VSIXInstaller.NoApplicableSKUsException" />
             </remarks>
        </member>
        <member name="M:VSIXInstaller.ExtensionService.GetExtensionEngineForApplicableSKU(VSIXInstaller.ICommandLineData,VSIXInstaller.SupportedVSSKU,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.Collections.Generic.List{VSIXInstaller.SupportedVSSKU})">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.GetExtensionEngineForApplicableSKU(VSIXInstaller.ICommandLineData,VSIXInstaller.SupportedVSSKU,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.Collections.Generic.List{VSIXInstaller.SupportedVSSKU},System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.InitializeSupportedSKUs(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.GetProperToken(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.ShouldUseAlternateUserToken(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.GetSkusFromInstanceIds(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.IsVSIXInstallable(VSIXInstaller.ICommandLineData,System.Boolean,Microsoft.VisualStudio.ExtensionManager.IInstalledExtension,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.Boolean)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.IsExperimentalInstall(Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,Microsoft.VisualStudio.ExtensionManager.IInstalledExtension,Microsoft.VisualStudio.ExtensionManager.InstallFlags)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.GetVSGalleryRepo(Microsoft.VisualStudio.ExtensionManager.IExtensionEngine)">
            <inheritdoc />
        </member>
        <member name="M:VSIXInstaller.ExtensionService.CheckForExperimental(VSIXInstaller.ICommandLineData,Microsoft.VisualStudio.ExtensionManager.IInstalledExtension,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.String@)">
            <summary>
            Checks if the installableExtension can be applied, given the installedExtension. Accounts for experimental installs.
            </summary>
            <param name="installedExtension">The currently installed extension</param>
            <param name="installableExtension">The candidate extension</param>
            <param name="logMessage">A message to add to the log if the candidate extension can not be applied</param>
            <param name="installAsExperimental"></param>
            <returns></returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionPackService.ExpandExtensionPackToInstall(VSIXInstaller.IStateData,System.Boolean)">
            <summary>
            Acquire the VSIX referenced in the extension pack
            </summary>
            <param name="stateData">The state information</param>
            <param name="isRepairSupported">Does the visx support repair</param>
            <returns>Return a <see cref="T:VSIXInstaller.MarkupRawExtensionData" /> instance</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionPackService.ExpandExtensionPackToUnInstall(VSIXInstaller.IStateData)">
            <summary>
            Expand the VSIX referenced in the extension pack
            </summary>
            <param name="stateData">The state information</param>
            <returns>Return a <see cref="T:VSIXInstaller.MarkupRawExtensionData" /> instance</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionPackService.IsExtensionPack(VSIXInstaller.IStateData,System.Boolean)">
            <summary>
            Determine if the VSIX is an extension pack
            </summary>
            <param name="stateData">The state information</param>
            <param name="isRepairSupported">Does the visx support repair</param>
            <returns>Determine if the VSIX is an extension pack</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetInstallableData(System.String,System.String,System.Boolean,VSIXInstaller.IStateData,System.Collections.Generic.IEnumerable{VSIXInstaller.SkuData}@)">
            <summary>
            Create the InstallExtensionData object from a VSIX
            </summary>
            <param name="vsixPath">The path to the VSIX</param>
            <param name="extensionPackParentName">The name of the extension parent</param>
            <param name="isRepairSupported">Is the VSIX repairable</param>
            <param name="stateData">The state information</param>
            <param name="skuData">The SKU lists that the VSIX targets</param>
            <returns>The <see cref="T:VSIXInstaller.ExtensionDataInstall" /> object</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetExtensionEngineForApplicableSKU(VSIXInstaller.ICommandLineData,VSIXInstaller.SupportedVSSKU,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.Collections.Generic.List{VSIXInstaller.SupportedVSSKU})">
            <summary>
            Get the extension for the applicable SKU
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="supportedSKU">The SKU to check against</param>
            <param name="installableExtension">The extension to install</param>
            <param name="applicableSKUs">The list of applicable SKUs</param>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetExtensionEngineForApplicableSKU(VSIXInstaller.ICommandLineData,VSIXInstaller.SupportedVSSKU,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.Collections.Generic.List{VSIXInstaller.SupportedVSSKU},System.Boolean)">
            <summary>
            Get the extension for the applicable SKU
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="supportedSKU">The SKU to check against</param>
            <param name="installableExtension">The extension to install</param>
            <param name="applicableSKUs">The list of applicable SKUs</param>
            <param name="isRepairSupported">Is the VSIX repairable</param>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.InitializeSupportedSKUs(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <summary>
            Initialize the SKUs
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="duplicatedUserToken">The Windows account token</param>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetProperToken(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <summary>
            Get the appropriate Windows account token
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="duplicatedUserToken">The Windows account token</param>
            <returns></returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.ShouldUseAlternateUserToken(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <summary>
            Determine if we should use alternate token
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="duplicatedUserToken"></param>
            <returns></returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetSkusFromInstanceIds(VSIXInstaller.ICommandLineData,System.IntPtr)">
            <summary>
            Filter the list of user provided instanceIds to only the installed SKUs
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="duplicatedUserToken">User token</param>
            <returns>The list of SKUs that is actually installed</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetSupportedSkusForUninstallAndDowngrade(VSIXInstaller.IStateData)">
            <summary>
            Get the Supported SKUs for uninstall and downgrade
            </summary>
            <param name="stateData">The state information</param>
            <returns>Return the list of supported SKUs</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.IsVSIXInstallable(VSIXInstaller.ICommandLineData,System.Boolean,Microsoft.VisualStudio.ExtensionManager.IInstalledExtension,Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,System.Boolean)">
            <summary>
            Determine if the extension is installable
            </summary>
            <param name="cmdLineData">The command line OM</param>
            <param name="alreadyInstalled">Is the package already installed?</param>
            <param name="installedExtension">The install state of the extension</param>
            <param name="installableExtension">The extension to check</param>
            <param name="isRepairSupported">Does the extension support repair?</param>
            <returns>Is the package installable?</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.IsExperimentalInstall(Microsoft.VisualStudio.ExtensionManager.IInstallableExtension,Microsoft.VisualStudio.ExtensionManager.IInstalledExtension,Microsoft.VisualStudio.ExtensionManager.InstallFlags)">
            <summary>
            Determine if this is an alpha pack
            </summary>
            <param name="candidateExtension">The extension to check</param>
            <param name="installedExtension">The install state of the extension</param>
            <param name="installFlags">The install flags set</param>
            <returns></returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.GetVSGalleryRepo(Microsoft.VisualStudio.ExtensionManager.IExtensionEngine)">
            <summary>
            Get the VSGallery repo
            </summary>
            <returns>Return the repo that support VSGallery</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.ComputeUninstallableExtensions(VSIXInstaller.IStateData,System.Collections.Generic.IDictionary{VSIXInstaller.SupportedVSSKU,VSIXInstaller.SkuData},System.Collections.Generic.IList{VSIXInstaller.MarkupRawExtensionData})">
            <summary>
            Compute the extension objects that are uninstallable
            </summary>
            <param name="stateData">The state information</param>
            <param name="skuDataMapping">The SKUs the extensions are targetting</param>
            <param name="uninstallableVsixIds"></param>
            <returns>The list of extensions that are uninstallable</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.ComputeDowngradableExtensions(VSIXInstaller.IStateData,System.Collections.Generic.IDictionary{VSIXInstaller.SupportedVSSKU,VSIXInstaller.SkuData})">
            <summary>
            Compute the extension objects that are downgrabable
            </summary>
            <param name="stateData">The state information</param>
            <param name="skuDataMapping">The SKUs the extensions are targetting</param>
            <returns>The list of extensions that are downgrabable</returns>
        </member>
        <member name="M:VSIXInstaller.IExtensionService.ComputeInstallableExtensions(VSIXInstaller.IStateData,System.Boolean,System.Boolean,System.Collections.Generic.IDictionary{VSIXInstaller.SupportedVSSKU,VSIXInstaller.SkuData},System.Collections.Generic.IList{VSIXInstaller.MarkupRawExtensionData})">
            <summary>
            Compute the extension objects that are installable
            </summary>
            <param name="stateData">The state information</param>
            <param name="isRepairSupported">Does the extension support repair</param>
            <param name="isExtensionPack">Is this an extension pack</param>
            <param name="skuDataMapping">The SKUs the extensions are targetting</param>
            <param name="installableExtensionsPaths">The paths of the extensions to be installed</param>
            <returns>The list of extensions that are installable</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsManager.#ctor">
            <summary>
            This is ONLY used by the derived MemorySettingsManager as it overrides ALL methods and doesn't need the path 
            or root suffix, it should NOT be used by any derived class that needs to rely in any part on this base class' functionality
            </summary>
        </member>
        <member name="M:VSIXInstaller.SettingsManager.GetReadOnlySettingsStore(Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsScope)">
            <summary>
            Provides the <see cref="T:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.ISettingsStore" /> class for the requested scope which can be used for read-only 
            operations.
            </summary>
            <param name="scope">Requested scope.</param>
            <returns><see cref="T:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.ISettingsStore" /> instance that can be used for accessing the scope.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsManager.GetWritableSettingsStore(Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsScope)">
            <summary>
            Provides the <see cref="T:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.IWritableSettingsStore" /> class for the requested scope which can be used both for
            reading and writing.
            </summary>
            <param name="scope">Requested scope.</param>
            <exception cref="T:System.ArgumentException">If the given scope is not a writable one.</exception>
            <returns><see cref="T:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.IWritableSettingsStore" /> instance that can be used for accessing the scope.</returns>
        </member>
        <member name="P:VSIXInstaller.SettingsManager.InstallPath">
            <summary>
            Provides the path to the install directory for VS
            </summary>
        </member>
        <member name="M:VSIXInstaller.SettingsManager.GetApplicationDataFolder(Microsoft.VisualStudio.ExtensionManager.SettingsStorage.ApplicationDataFolder)">
            <summary>
            Returns the folder that Visual Studio uses for storing various cache, backup, template, etc. files
            </summary>
            <param name="folder">Requested folder.</param>        
            <returns>Full path of the requested folder.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsManager.GetCommonExtensionsSearchPaths">
            <summary>
            Returns the list of folders that Visual Studio uses for installing/discovering machine-wide extensions.
            </summary>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.#ctor">
            <summary>
            NOTE: This should only be used by derived classes (like MemoryWritableSettingsStore) that do not require any base class functionality
            </summary>        
        </member>
        <member name="M:VSIXInstaller.SettingsStore.CollectionExists(System.String)">
            <summary>
            Checks the existance of the collection passed in to this method.
            </summary>
            <param name="collectionPath">Path of the collection.</param>
            <returns>Returns true if the collection exists and false otherwise.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.PropertyExists(System.String,System.String)">
            <summary>
            Checks the existance of the property passed in to this method.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <returns>Returns true if the property exists and false otherwise.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetBoolean(System.String,System.String)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" /> as boolean.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type or if it does 
            not exist.</exception>
            <returns>If the underling integer value for the property is non-zero, it returns true and false otherwise.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetBoolean(System.String,System.String,System.Boolean)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" /> as boolean.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="defaultValue">Value to be returned if the property does not exist.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type.</exception>
            <returns>If the property does not exist, it returns the defaultValue passed in otherwise it returns true if the 
            underling integer value is non-zero and false if it is zero.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetInt32(System.String,System.String)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" />.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type or if it does 
            not exist.</exception>
            <returns>Value of the property. If the value was stored as an signed integer previously then regular type 
            conversion sematics applies.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetInt32(System.String,System.String,System.Int32)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" />.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="defaultValue">Value to be returned if the property does not exist.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type.</exception>
            <returns>If the property does not exist, it returns the defaultValue passed in. If the value was stored as an 
            unsigned integer previously then regular type conversion sematics applies.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetUInt32(System.String,System.String)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" />.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type or if it does 
            not exist.</exception>
            <returns>Value of the property. If the value was stored as an signed integer previously then regular type 
            conversion sematics applies.</returns>
        </member>
        <!-- Badly formed XML comment ignored for member "M:VSIXInstaller.SettingsStore.GetInt64(System.String,System.String)" -->
        <member name="M:VSIXInstaller.SettingsStore.GetInt64(System.String,System.String,System.Int64)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int64" />.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="defaultValue">Value to be returned if the property does not exist.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type.</exception>
            <returns>If the property does not exist, it returns the defaultValue passed in. If the value was stored as an 
            unsigned long previously then regular type conversion sematics applies.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetPropertyCount(System.String)">
            <summary>
            Returns the number of properties under the given collection.
            </summary>
            <param name="collectionPath">Path of the collection.</param>
            <exception cref="T:System.ArgumentException">If the collection does not exist, method throws this exception.</exception>
            <returns>Number of properties is returned.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetPropertyNames(System.String)">
            <summary>
            Returns the names of properties under the given collection.
            </summary>
            <param name="collectionPath">Path of the collection.</param>
            <exception cref="T:System.ArgumentException">If the collection does not exist, method throws this exception.</exception>
            <returns>Names of properties is returned.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetString(System.String,System.String)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.String" />.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type or if it does 
            not exist.</exception>
            <returns>Value of the property.</returns> 
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetString(System.String,System.String,System.String)">
            <summary>
            Returns the value of the requested property whose data type is <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.String" />.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="defaultValue">Value to be returned if the property does not exist.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property is of different type.</exception>
            <returns>If the property does not exist, it returns the defaultValue passed in.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetSubCollectionNames(System.String)">
            <summary>
            Returns the names of sub collections under the given collection.
            </summary>
            <param name="collectionPath">Path of the collection.</param>
            <exception cref="T:System.ArgumentException">If the collection does not exist, method throws this exception.</exception>
            <returns>Names of sub collections is returned.</returns>
        </member>
        <member name="M:VSIXInstaller.SettingsStore.GetPropertyNamesAndValues(System.String,Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType)">
            <summary>
            Returns the type of the requested property.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="type">Type for the value of the property names.</param>
            <exception cref="T:System.ArgumentException">Throws this exception if the property does not exist.</exception>
            <returns>Type of the property.</returns>  
        </member>
        <member name="M:VSIXInstaller.SetupExtensions.GetLaunchableInstances(Microsoft.VisualStudio.Setup.Cache.IQuery)">
            <summary>
            Creates an enumerable of completed product instances.
            </summary>
        </member>
        <member name="M:VSIXInstaller.InstallFlagProcessor.UpdateInstallFlags(Microsoft.VisualStudio.ExtensionManager.InstallFlags@,VSIXInstaller.ICommandLineData)">
            <summary>
            Update the install flag based on command line argument setting
            </summary>
            <param name="installFlags">The flag</param>
            <param name="cmdLineData">The command line arguments list</param>
            <returns>The updated flag</returns>
        </member>
        <member name="M:VSIXInstaller.InstallFlagProcessor.SetFlag(Microsoft.VisualStudio.ExtensionManager.InstallFlags@,System.Boolean,Microsoft.VisualStudio.ExtensionManager.InstallFlags,System.String)">
            <summary>
            Update the InstallFlag
            </summary>
            <param name="installFlags">The flag</param>
            <param name="property">The value to set</param>
            <param name="flag">The specific flag to set</param>
            <param name="message">The message to write out</param>
        </member>
        <member name="T:VSIXInstaller.SilentBlocker">
            <summary>
            Handle all the silent mode blockers
            </summary>
        </member>
        <member name="M:VSIXInstaller.SilentBlocker.EvaluateBlockers(VSIXInstaller.StateData,System.Collections.Generic.IReadOnlyList{VSIXInstaller.SupportedVSSKU},VSIXInstaller.ExtensionData)">
            <summary>
            Evaluate all the blockers
            </summary>
            <param name="stateData">The state data object</param>
            <param name="targetSkus">The sku to target</param>
            <param name="data">The extension</param>
        </member>
        <member name="M:VSIXInstaller.SilentBlocker.VSIXV1OnDev16PlusBlocker(VSIXInstaller.StateData,System.Collections.Generic.IReadOnlyList{VSIXInstaller.SupportedVSSKU},VSIXInstaller.ExtensionData)">
            <summary>
            Block when trying to install VSIXV1 on Dev16+ product
            </summary>
            <param name="stateData">The state data object</param>
            <param name="targetSkus">The SKU the patch is targetting</param>
            <param name="data">The extension data</param>
        </member>
        <member name="F:VSIXInstaller.SupportedSKUs.GlobalSkuVsVersion">
            <summary>
            Global SKU should have same VS Version as that corresponding to the version the VSIX installer is built with
            </summary>
        </member>
        <member name="P:VSIXInstaller.SupportedVSSKU.ExtensionEngine">
            <summary>
            ExtensionEngine for this SKU.
            </summary>
        </member>
        <member name="M:VSIXInstaller.SupportedVSSKU.ExtensionEngine2(Microsoft.VisualStudio.ExtensionManager.ExtensionEngineOptions)">
            <summary>
            ExtensionEngine for this SKU
            </summary>
            <param name="requestedMode"></param>
            <param name="flags"></param>
            <returns></returns>
            <remarks>
            Previous versions less than 'v17.10' of the engine will not have the flag information hence use the available constructor to get the Engine.
            For the version greater than or equal to 'v17.10' use the <see cref="M:VSIXInstaller.SupportedVSSKU.ExtensionEngine2(Microsoft.VisualStudio.ExtensionManager.ExtensionEngineOptions)" /> or <see cref="P:VSIXInstaller.SupportedVSSKU.ExtensionEngine" />. and for  the  version less than 'v17.10' use the <see cref="P:VSIXInstaller.SupportedVSSKU.ExtensionEngine" />.
            </remarks>
        </member>
        <member name="M:VSIXInstaller.SupportedVSSKU.SupportsExtension(Microsoft.VisualStudio.ExtensionManager.IInstallableExtension)">
            <summary>
            Determines if this SKU supports the given extension.
            </summary>
            <note>
            The extension manager already does version checks so this is a place to do more elaborate checks, like checking
            the extensions workload dependencies against the SKUs installed workloads.
            </note>
        </member>
        <member name="M:VSIXInstaller.SupportedVSSKU.InitializeSettingsManager">
            <summary>
            Initialize SettingsManager for the current SKU. Called by SettingsManager getter to JIT initialize.
            </summary>
        </member>
        <member name="M:VSIXInstaller.SupportedVSSKU.InitializeExtensionEngine">
            <summary>
            Initialize ExtensionEngine with the current SettingsManager.
            Will fail if there is no current SettingsManager.
            </summary>
        </member>
        <member name="P:VSIXInstaller.SupportedIntegratedSKU.IsInstalled">
            <summary>
            Determine if the SupportedIntegratedSKU is installed. We consider it installed if:
            1. Its InstallKey exists and contains a non-null value for the ProductDir value
            2. Its AppIdPath exists
            </summary>
        </member>
        <member name="T:VSIXInstaller.GlobalSKU">
            <summary>
            GlobalSKU is used for installing ExtensionSDKs, which are installed globally.
            </summary>
        </member>
        <member name="T:VSIXInstaller.LocationBasedSKU">
            <summary>
            SKU based on provided install location.
            </summary>
        </member>
        <member name="T:VSIXInstaller.VsixInstallerTelemetryLogger">
            <summary>
            This is for VSIXInstaller specific telemetry object
            </summary>
        </member>
        <member name="M:VSIXInstaller.Utilities.UpdateConfigAfterReleasingCacheLockAsync(VSIXInstaller.SupportedVSSKU)">
            <summary>
            This fixes bug #1544299 which happened as a result of the registry not being released during install.
            </summary>
        </member>
        <member name="M:VSIXInstaller.Utilities.HasOnlyDev16plusTarget(System.Collections.Generic.IEnumerable{VSIXInstaller.SupportedVSSKU})">
            <summary>
            Determine if there is only Dev16 and above sku
            </summary>
            <param name="targetSkus">The skus targetted by the extension</param>
            <returns>True is only Dev16 and above sku is installed.</returns>
        </member>
        <member name="M:VSIXInstaller.Utilities.NavigateOrGetReleaseNotes(Microsoft.VisualStudio.ExtensionManager.IExtension)">
            <summary>
            Helper method to navigate to Release Notes of an extension.
            </summary>
            <param name="extension">the extension</param>
            <returns>null, if Release Notes are launched externally or if release notes cannot be created. Otherwise, returns a control displaying the Release Notes.</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackInstallViewModel.#ctor(VSIXInstaller.ViewModel.InstallableExtensionViewModel)">
            <summary>
            Constructor
            </summary>
            <param name="extension">The extension</param>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackInstallViewModel.ChildrenExtensions">
            <summary>
            The children nodes
            </summary>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackInstallViewModel.InstallableExtensionViewModel">
            <summary>
            The instance 
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "M:VSIXInstaller.ViewModel.ExtensionPackInstallViewModel.CreateInstallList(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataInstall})" -->
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackInstallViewModel.ToString">
            <summary>
            Support for narrator
            </summary>
            <returns></returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackInstallViewModel.Initialize">
            <summary>
            Initialize the class
            </summary>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackPageViewModel.#ctor(VSIXInstaller.ExtensionData,VSIXInstaller.ExtensionPackInstallPage)">
            <summary>
            Constructor
            </summary>
            <param name="data">The list of extensions to act on</param>
            <param name="page">The view</param>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackPageViewModel.SubTitle">
            <summary>
            The subtitle of the page
            </summary>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackPageViewModel.ShowInstallTree">
            <summary>
            Should it show the install tree
            </summary>
            <remarks>
            Only show the install tree when there is something to install
            </remarks>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackPageViewModel.ShowUninstallTree">
            <summary>
            Should it show the uninstall tree
            </summary>
            <remark>
            Only show uninstall tree when there is something to uninstall
            </remark>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackPageViewModel.CancelCommand">
            <summary>
            The cancel command
            </summary>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackPageViewModel.InstallCommand">
            <summary>
            The install command.
            </summary>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel.#ctor(VSIXInstaller.ViewModel.UninstallableExtensionViewModel)">
            <summary>
            Constructor
            </summary>
            <param name="extension"></param>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel.ChildrenExtensions">
            <summary>
            The children nodes
            </summary>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel.UninstallableExtensionViewModel">
            <summary>
            The instance 
            </summary>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel.ToString">
            <summary>
            Support for narrator
            </summary>
            <returns></returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel.CreateUninstallList(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataUninstall},System.Collections.Generic.IEnumerable{VSIXInstaller.SkuData})">
            <summary>
            Create the installation list
            </summary>
            <param name="InstallableExtensions"></param>
            <param name="isOnlyOneExtensionProvided">Is this the only extension provided</param>
            <param name="targetSKUs">The sku to target</param>
            <returns>Return the tree</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel.Initialize">
            <summary>
            Initialize the class
            </summary>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackViewModelBase.IsInitiallySelected">
            <summary>
            Determine if the item is initially selected.
            </summary>
        </member>
        <member name="P:VSIXInstaller.ViewModel.ExtensionPackViewModelBase.IsChecked">
            <summary>
            Gets/sets the state of the associated UI toggle (ex. CheckBox).
            The return value is calculated based on the check state of all
            child FooViewModels.  Setting this property to true or false
            will set all children to the same check state, and setting it 
            to any value will cause the parent to verify its check state.
            </summary>
        </member>
        <member name="M:VSIXInstaller.ViewModel.ExtensionPackViewModelBase.SetIsChecked(System.Nullable{System.Boolean},System.Boolean,System.Boolean)">
            <summary>
            Derived class to implement handle the check state
            </summary>
            <param name="value">The check value to update to</param>
            <param name="updateChildren">Should the children be updated</param>
            <param name="updateParent">Should the parent be updated</param>
        </member>
        <member name="T:VSIXInstaller.ViewModel.RelayCommand">
            <summary>
            Base class that implements ICommand interface via delegates.
            </summary>
        </member>
        <member name="M:VSIXInstaller.ViewModel.TreeBridge.BuildInstallTree(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataInstall})">
            <summary>
            Translate into a tree so that we can bind to the treeview
            </summary>
            <param name="installableExtensions">Packages to be installed</param>
            <returns>Return the install tree</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.TreeBridge.BuildUninstallTree(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataUninstall},System.Collections.Generic.IEnumerable{VSIXInstaller.SkuData})">
            <summary>
            Translate into a tree so that we can bind to the treeview
            </summary>
            <param name="uninstallableExtensions">Packages to be uninstalled</param>
            <param name="targetSKUs">The SKUs to target</param>
            <returns>Return the uninstall tree</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.TreeBridge.IsAnyChecked(System.Collections.ObjectModel.ObservableCollection{VSIXInstaller.ViewModel.ExtensionPackInstallViewModel})">
            <summary>
            Determine if any item is selected
            </summary>
            <param name="extensions">The packages shown to user</param>
            <returns>Return if any of the checkbox is selected</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.TreeBridge.IsAnyChecked(System.Collections.ObjectModel.ObservableCollection{VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel})">
            <summary>
            Determine if any item is selected
            </summary>
            <param name="extensions">The packages shown to user</param>
            <returns>Return if any of the checkbox is selected</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.TreeBridge.GetSelectedList(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataInstall},System.Collections.ObjectModel.ObservableCollection{VSIXInstaller.ViewModel.ExtensionPackInstallViewModel})">
            <summary>
            Get the list of items to install
            </summary>
            <param name="installableExtensions">The input list</param>
            <param name="treeInstallableExtensions">The ui selection list</param>
            <returns>The list to install</returns>
        </member>
        <member name="M:VSIXInstaller.ViewModel.TreeBridge.GetSelectedList(System.Collections.Generic.IReadOnlyList{VSIXInstaller.ExtensionDataUninstall},System.Collections.ObjectModel.ObservableCollection{VSIXInstaller.ViewModel.ExtensionPackUninstallViewModel})">
            <summary>
            Get the list of items to uninstall
            </summary>
            <param name="uninstallableExtensions">The input list</param>
            <param name="treeUninstallableExtensions">The ui selection list</param>
            <returns>The list to uninstall</returns>
        </member>
        <member name="T:VSIXInstaller.BlockPage">
            <summary>
            Interaction logic for BlockPage.xaml
            </summary>
            <summary>
            BlockPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.BlockPage.KillBlockingProcesses">
            <summary>
            Kill all blocking processes
            </summary>
            <returns>True if all blocking processes ended; otherwise false.</returns>
        </member>
        <member name="M:VSIXInstaller.BlockPage.StartPolling">
            <summary>
            This method should only be called once so we don't end up in a potential race condition
            where we could request to navigate to the next page twice at the same time.  That could result in
            trying to navigate to the next page it's been navigated to already, causing exceptions to be thrown.
            </summary>
        </member>
        <member name="M:VSIXInstaller.BlockPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.CancelledPage">
            <summary>
            Interaction logic for CancelledPage.xaml
            </summary>
            <summary>
            CancelledPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.CancelledPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.DocumentControl">
            <summary>
            Interaction logic for DocumentControl.xaml
            </summary>
            <summary>
            DocumentControl
            </summary>
        </member>
        <member name="M:VSIXInstaller.DocumentControl.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.ExtensionControl">
            <summary>
            Interaction logic for ExtensionControl.xaml
            </summary>
            <summary>
            ExtensionControl
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionControl.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.ExtensionPackInstallPage">
            <summary>
            Interaction logic for ExtensionPackInstallPage.xaml
            </summary>
            <summary>
            ExtensionPackInstallPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackInstallPage.#ctor(VSIXInstaller.ExtensionData)">
            <summary>
            Constructor
            </summary>
            <param name="data"></param>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackInstallPage.DockPanel_Loaded(System.Object,System.Windows.RoutedEventArgs)">
            <summary>
            This method is use to adjust the width of the tree so that both the parent and child ends at the same pixel. 
            Credit: Andrew Sarratori
            </summary>
        </member>
        <member name="M:VSIXInstaller.ExtensionPackInstallPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.FinishPage">
            <summary>
            Interaction logic for FinishPage.xaml
            </summary>
            <summary>
            FinishPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.FinishPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.InstallProgressPage">
            <summary>
            Interaction logic for InstallProgressPage.xaml
            </summary>
            <summary>
            InstallProgressPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.InstallProgressPage.ExecuteOperationsAsync(System.Threading.CancellationToken)">
            <summary>
            Executes all uninstall, install, and downgrade operations.
            </summary>
        </member>
        <member name="M:VSIXInstaller.InstallProgressPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.LoadingPage">
            <summary>
            Interaction logic for LoadingPage.xaml
            </summary>
            <summary>
            LoadingPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.LoadingPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.MainWindow">
            <summary>
            Interaction logic for MainWindow.xaml
            </summary>
            <summary>
            MainWindow
            </summary>
        </member>
        <member name="M:VSIXInstaller.MainWindow.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.MultipleChangePage">
            <summary>
            Interaction logic for MultipleChangePage.xaml
            </summary>
            <summary>
            MultipleChangePage
            </summary>
        </member>
        <member name="P:VSIXInstaller.MultipleChangePage.AnyNotInstallableSdkExtensions">
            <summary>
            Is true if there are any dependency satisfied non-SDK extensions AND any SDK extensions scheduled for install
            </summary>
        </member>
        <member name="M:VSIXInstaller.MultipleChangePage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.NotNullToVisibilityConverter">
            <summary>
            Determines <see cref="T:System.Windows.Visibility" /> status based on whether or not the value to convert is null
            </summary>
        </member>
        <member name="T:VSIXInstaller.PrerequisitesControl">
            <summary>
            Interaction logic for PrerequisitesControl.xaml
            </summary>
            <summary>
            PrerequisitesControl
            </summary>
        </member>
        <member name="M:VSIXInstaller.PrerequisitesControl.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="T:VSIXInstaller.SingleInstallPage">
            <summary>
            Interaction logic for SingleInstallPage.xaml
            </summary>
            <summary>
            SingleInstallPage
            </summary>
        </member>
        <member name="M:VSIXInstaller.SingleInstallPage.InitializeComponent">
            <summary>
            InitializeComponent
            </summary>
        </member>
        <member name="F:VSIXInstaller.VirtualToggleButton.IsCheckedProperty">
            <summary>
            IsChecked Attached Dependency Property
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.GetIsChecked(System.Windows.DependencyObject)">
            <summary>
            Gets the IsChecked property.  This dependency property 
            indicates whether the toggle button is checked.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.SetIsChecked(System.Windows.DependencyObject,System.Nullable{System.Boolean})">
            <summary>
            Sets the IsChecked property.  This dependency property 
            indicates whether the toggle button is checked.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.OnIsCheckedChanged(System.Windows.DependencyObject,System.Windows.DependencyPropertyChangedEventArgs)">
            <summary>
            Handles changes to the IsChecked property.
            </summary>
        </member>
        <member name="F:VSIXInstaller.VirtualToggleButton.IsThreeStateProperty">
            <summary>
            IsThreeState Attached Dependency Property
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.GetIsThreeState(System.Windows.DependencyObject)">
            <summary>
            Gets the IsThreeState property.  This dependency property 
            indicates whether the control supports two or three states.  
            IsChecked can be set to null as a third state when IsThreeState is true.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.SetIsThreeState(System.Windows.DependencyObject,System.Boolean)">
            <summary>
            Sets the IsThreeState property.  This dependency property 
            indicates whether the control supports two or three states. 
            IsChecked can be set to null as a third state when IsThreeState is true.
            </summary>
        </member>
        <member name="F:VSIXInstaller.VirtualToggleButton.IsVirtualToggleButtonProperty">
            <summary>
            IsVirtualToggleButton Attached Dependency Property
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.GetIsVirtualToggleButton(System.Windows.DependencyObject)">
            <summary>
            Gets the IsVirtualToggleButton property.  This dependency property 
            indicates whether the object to which the property is attached is treated as a VirtualToggleButton.  
            If true, the object will respond to keyboard and mouse input the same way a ToggleButton would.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.SetIsVirtualToggleButton(System.Windows.DependencyObject,System.Boolean)">
            <summary>
            Sets the IsVirtualToggleButton property.  This dependency property 
            indicates whether the object to which the property is attached is treated as a VirtualToggleButton.  
            If true, the object will respond to keyboard and mouse input the same way a ToggleButton would.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.OnIsVirtualToggleButtonChanged(System.Windows.DependencyObject,System.Windows.DependencyPropertyChangedEventArgs)">
            <summary>
            Handles changes to the IsVirtualToggleButton property.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.RaiseCheckedEvent(System.Windows.UIElement)">
            <summary>
            A static helper method to raise the Checked event on a target element.
            </summary>
            <param name="target">UIElement or ContentElement on which to raise the event</param>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.RaiseUncheckedEvent(System.Windows.UIElement)">
            <summary>
            A static helper method to raise the Unchecked event on a target element.
            </summary>
            <param name="target">UIElement or ContentElement on which to raise the event</param>
        </member>
        <member name="M:VSIXInstaller.VirtualToggleButton.RaiseIndeterminateEvent(System.Windows.UIElement)">
            <summary>
            A static helper method to raise the Indeterminate event on a target element.
            </summary>
            <param name="target">UIElement or ContentElement on which to raise the event</param>
        </member>
        <member name="T:VSIXInstaller.VsixV1Handler">
            <summary>
            Determine if VsixV1 extension needs special handling.
            </summary>
        </member>
        <member name="M:VSIXInstaller.VsixV1Handler.ShouldHandle(System.Boolean)">
            <summary>
            Is the condition to handle VsixV1 extension met?
            </summary>
            <param name="hasOnlyDev16AndAbove">Does the extension targets only Dev16 and above?</param>
            <returns>True if the condition is met</returns>
        </member>
        <member name="M:VSIXInstaller.VsixV1Handler.ShouldHandle(System.Collections.Generic.IEnumerable{VSIXInstaller.ExtensionDataInstall})">
            <summary>
            Is the condition to handle VsixV1 extension met?
            </summary>
            <param name="installableExtensions">A list of installable extensions</param>
            <returns>True if the condition is met</returns>
        </member>
        <member name="M:VSIXInstaller.VsixV1Handler.ShouldHandle(System.Boolean,System.Boolean,System.Boolean)">
            <summary>
            Is the condition to handle VsixV1 extension met?
            </summary>
            <param name="hasAny16plusTargetSku">Is there any Dev16 or above installed</param>
            <param name="hasAnyV1Extension">Is there any V1 extension</param>
            <param name="hasAny16MinusTargetSku">Is there any Dev15 installed?</param>
            <returns>True if the condition is met</returns>
        </member>
        <member name="M:VSIXInstaller.WritableSettingsStore.#ctor">
            <summary>
            This should only be used by derived classes (like MemoryWritableSettingsStore) that do not require any base class functionality
            </summary>
        </member>
        <member name="M:VSIXInstaller.WritableSettingsStore.SetBoolean(System.String,System.String,System.Boolean)">
            <summary>
            Updates the value of the specified property to the given Boolean value while setting its data type to 
            <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" />. If the previous data type of the property is different, it overwrites it.
            If the property does not exist it creates one.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="value">New value of the property.</param>
            <exception cref="T:System.ArgumentException">If the collection does not exist, this exception is thrown.</exception>  
        </member>
        <member name="M:VSIXInstaller.WritableSettingsStore.SetUInt32(System.String,System.String,System.UInt32)">
            <summary>
            Updates the value of the specified property to the given unsigned integer value while setting its data type to 
            <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" />. If the previous data type of the property is different, it overwrites it.
            If the property does not exist it creates one.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="value">New value of the property.</param>
        </member>
        <member name="M:VSIXInstaller.WritableSettingsStore.SetInt32(System.String,System.String,System.Int32)">
            <summary>
            Updates the value of the specified property to the given integer value while setting its data type to 
            <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.Int32" />. If the previous data type of the property is different, it overwrites it.
            If the property does not exist it creates one.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="value">New value of the property.</param>
        </member>
        <!-- Badly formed XML comment ignored for member "M:VSIXInstaller.WritableSettingsStore.SetInt64(System.String,System.String,System.Int64)" -->
        <member name="M:VSIXInstaller.WritableSettingsStore.SetString(System.String,System.String,System.String)">
            <summary>
            Updates the value of the specified property to the given string value while setting its data type to 
            <see cref="F:Microsoft.VisualStudio.ExtensionManager.SettingsStorage.SettingsType.String" />. If the previous data type of the property is different, it overwrites it.
            If the property does not exist it creates one.
            </summary>
            <param name="collectionPath">Path of the collection of the property.</param>
            <param name="propertyName">Name of the property.</param>
            <param name="value">New value of the property.</param>
            <exception cref="T:System.ArgumentException">If the collection does not exist, this exception is thrown.</exception> 
        </member>
        <member name="M:VSIXInstaller.WritableSettingsStore.CreateCollection(System.String)">
            <summary>
            Creates the given collection path by creating each nested collection while skipping the ones that already exist. 
            If the full path of collections already exist, the method simply returns.
            </summary>
            <param name="collectionPath">Path of the collection.</param>
            <exception cref="T:System.ArgumentException">If empty string ("") which deis passed to the method it throws this exception.
            </exception>
        </member>
        <member name="M:VSIXInstaller.WritableSettingsStore.DeleteProperty(System.String,System.String)">
            <summary>         
            Deletes the given property from the collection. If the property or the collection does not exist then the method 
            returns false.
            </summary>
            <param name="collectionPath">Collection that contains the property to be deleted.</param>
            <param name="propertyName">Name of the property.</param>
            <returns>Result of the deletion.</returns>
        </member>
        <member name="T:VSIXInstaller.VSIXInstallerResources">
            <summary>
              A strongly-typed resource class, for looking up localized strings, etc.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ResourceManager">
            <summary>
              Returns the cached ResourceManager instance used by this class.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Culture">
            <summary>
              Overrides the current thread's CurrentUICulture property for all
              resource lookups using this strongly typed resource class.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.AlreadyInstalledExtensionUiMessage">
            <summary>
              Looks up a localized string similar to This extension is already installed..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.AppIdInstallPathDoesNotExist">
            <summary>
              Looks up a localized string similar to /appidInstallPath was specified but {0} doesn't exist as a file or a directory..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.AppIdNameNotSpecified">
            <summary>
              Looks up a localized string similar to /appidName not specified. When /appidInstallPath is specified you must also specify /appidName, /skuName and /skuVersion..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.AppNameWithNickname">
            <summary>
              Looks up a localized string similar to {0} ({1}).
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.BlockingProcess">
            <summary>
              Looks up a localized string similar to - {0} (ID {1}).
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.BlockingProcessesCouldNotBeEnded">
            <summary>
              Looks up a localized string similar to Failed to end all blocking processes. VSIX Installer will continue to wait until all processes shut down to continue..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.BlockingProcessesExceptionDescription">
            <summary>
              Looks up a localized string similar to The following processes need to be shut down before executing extension changes:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.BlockingProcessesExceptionDescriptionWithoutArgs">
            <summary>
              Looks up a localized string similar to One or more processes need to be shut down before executing extension changes..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.DowngradeFailureHeader">
            <summary>
              Looks up a localized string similar to Revert Failed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.DowngradeFailureMessage">
            <summary>
              Looks up a localized string similar to The revert was not successful for the selected product. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.DowngradeNoOpFailureMessage">
            <summary>
              Looks up a localized string similar to The revert was not successful for the selected product and it was not performed. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.DowngradeSuccessHeader">
            <summary>
              Looks up a localized string similar to Revert Complete.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.DowngradeSuccessMessage">
            <summary>
              Looks up a localized string similar to '{0}' has been successfully reverted. Please close and restart all open instances of the below applications for changes to take effect..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.error1">
            <summary>
              Looks up a localized resource of type System.Drawing.Bitmap.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorAllExtensionsAlreadyInstalled">
            <summary>
              Looks up a localized string similar to The selected extensions are already installed to the specified SKU..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorAlreadyInstalled">
            <summary>
              Looks up a localized string similar to This extension is already installed to all applicable products..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorAppidInstallPathNotFound">
            <summary>
              Looks up a localized string similar to No product with AppidInstallPath {0} are installed: {1}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorCorruptInstance">
            <summary>
              Looks up a localized string similar to VSIX Installer has encountered a problem. To troubleshoot, follow the steps here: {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorExtensionSdkModificationCausingMultipleTargets">
            <summary>
              Looks up a localized string similar to Please schedule extension SDK modifications separately from other extensions..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorInstallMultipleExtensionsToMultipleSkus">
            <summary>
              Looks up a localized string similar to Modifications of multiple extensions can only be applied to one product at a time..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorInstanceIdNotFound">
            <summary>
              Looks up a localized string similar to No product with instance id(s) {0} are installed..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorMissingReferences">
            <summary>
              Looks up a localized string similar to This extension cannot be installed because the following references are missing:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorMultiTargetVSSDKExtensibilityMismatch">
            <summary>
              Looks up a localized string similar to Combining VSSDK and VisualStudio.Extensibility VSIX packages when targeting multiple instances is not supported. Either target a single instance using the command line, or install the different types of extensions as separate operations..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorNoModificationsCanBeApplied">
            <summary>
              Looks up a localized string similar to No modifications could be applied..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorNonAdmin">
            <summary>
              Looks up a localized string similar to You must have administrative privileges to install using the /admin switch..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorNotDowngradable">
            <summary>
              Looks up a localized string similar to {0} cannot be reverted because it is not part of the catalog or it does not have a lower version in the catalog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ErrorSKUNotFound">
            <summary>
              Looks up a localized string similar to The application '{0}', version {1}, is not installed..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExceptionMessageFormat">
             <summary>
               Looks up a localized string similar to Message: {0}
            StackTrace: {1}
                .
             </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionIncompatibleWithSKU">
            <summary>
              Looks up a localized string similar to Extension "{0}" is incompatible with "{1}" and will not be installed on this Visual Studio instance..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionInvalidCertificate">
            <summary>
              Looks up a localized string similar to Invalid Certificate.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionInvalidSignature">
            <summary>
              Looks up a localized string similar to Invalid Signature.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionInvalidTimestamp">
            <summary>
              Looks up a localized string similar to Invalid Timestamp.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionNoSignature">
            <summary>
              Looks up a localized string similar to None.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionObsoleteCryptographicAlgorithm">
            <summary>
              Looks up a localized string similar to Invalid Signature.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionPackInstallTitle">
            <summary>
              Looks up a localized string similar to The following will be applied to all applicable products:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionsBlocked">
            <summary>
              Looks up a localized string similar to The following extensions are not compatible with Visual Studio. Installation may cause Visual Studio to be unstable.
               {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionSignedBy">
            <summary>
              Looks up a localized string similar to Digital Signature: .
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionsNotCompatible">
             <summary>
               Looks up a localized string similar to The following extensions are not compatible with the selected version of Visual Studio. Installation may cause Visual Studio to be unstable.
            {0}
            Do you want to continue?.
             </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionsNotCompatibleItem">
            <summary>
              Looks up a localized string similar to - {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ExtensionUnSupportedCryptographicAlgorithm">
            <summary>
              Looks up a localized string similar to Invalid Signature.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.FailedToDetermineInstallPath">
            <summary>
              Looks up a localized string similar to Failed to determine install target path..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.FileNotFound">
            <summary>
              Looks up a localized string similar to Path to vsix file '{0}' is invalid or you don't have required access permissions. Please check the path is valid and you have required access permissions..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.GeneralFailureMessage">
            <summary>
              Looks up a localized string similar to The operation was not successful for all the selected products. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.GlobalSku">
            <summary>
              Looks up a localized string similar to Global Location.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InitializingProgressBarText">
            <summary>
              Looks up a localized string similar to Initializing {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InstallFailureHeader">
            <summary>
              Looks up a localized string similar to Install Failed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InstallFailureMessage">
            <summary>
              Looks up a localized string similar to The install of '{0}' was not successful for all the selected products. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InstallNoOpFailureMessage">
            <summary>
              Looks up a localized string similar to The install of '{0}' was not successful for all the selected products and it was not installed. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InstallSuccessHeader">
            <summary>
              Looks up a localized string similar to Install Complete.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InstallSuccessMessage">
            <summary>
              Looks up a localized string similar to '{0}' has been successfully installed. Please close and restart all target application instances for changes to take effect..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InvalidLicenseFormat">
            <summary>
              Looks up a localized string similar to The extension's license file is encoded in an invalid format..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InvalidLogfile">
            <summary>
              Looks up a localized string similar to '{0}' is not an allowed filename. Generating logfile..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InvalidRootSuffix">
            <summary>
              Looks up a localized string similar to Invalid rootSuffix value: {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.InvalidVersionString">
            <summary>
              Looks up a localized string similar to Invalid version string: {0}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.LicenseDialogTitle">
            <summary>
              Looks up a localized string similar to License.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_BeginningInstall">
            <summary>
              Looks up a localized string similar to Beginning to install extension to {0}....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_CancellingInstall">
            <summary>
              Looks up a localized string similar to Cancelling install....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_DowngradeSucceeded">
            <summary>
              Looks up a localized string similar to Successfully reverted {0}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_DowngradingExtension">
            <summary>
              Looks up a localized string similar to Reverting '{0}', version {1} to version {2}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionAlreadyInstalled">
            <summary>
              Looks up a localized string similar to An extension with a matching Identifier is already installed to this product..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionAlreadyInstalledSuccess">
            <summary>
              Looks up a localized string similar to An extension with a matching Identifier is already installed to this product. The extension is installed to {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionDetailsHeader">
            <summary>
              Looks up a localized string similar to Extension Details....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionIsNotExperimental">
            <summary>
              Looks up a localized string similar to The extension with ID '{0}' is not installable as it is not marked Experimental..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionNotInstalled">
            <summary>
              Looks up a localized string similar to The extension with ID '{0}' is not installed to {1}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionPrerequisitesNotInstalled">
            <summary>
              Looks up a localized string similar to The following required prerequisites are not installed to {0}:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionUnsatisfiedPrerequisites">
            <summary>
              Looks up a localized string similar to Extension cannot be installed to the following products due to missing prerequisites:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_ExtensionUpgrade">
            <summary>
              Looks up a localized string similar to The extension will be upgraded from version {0}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_FoundInstalledProduct">
            <summary>
              Looks up a localized string similar to Found installed product - {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_InstallCancelled">
            <summary>
              Looks up a localized string similar to Install was cancelled..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_InstallError">
            <summary>
              Looks up a localized string similar to Install Error : {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_InstallToProductSucceeded">
            <summary>
              Looks up a localized string similar to Install to {0} completed successfully. The extension has been installed to {1}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_Prerequisites">
            <summary>
              Looks up a localized string similar to Prerequisites.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_References">
            <summary>
              Looks up a localized string similar to References.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_RevertingUninstall">
            <summary>
              Looks up a localized string similar to Reverting uninstall of version {0} of the extension..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_RollingBackInstall">
            <summary>
              Looks up a localized string similar to Rolling back install to {0}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_SearchForProducts">
            <summary>
              Looks up a localized string similar to Searching for applicable products....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_SelectedProducts">
            <summary>
              Looks up a localized string similar to The following target products have been selected....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_SignatureDetailsHeader">
            <summary>
              Looks up a localized string similar to Signature Details....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_SupportedIsolatedShells">
            <summary>
              Looks up a localized string similar to Supported Isolated Shells.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_SupportedProducts">
            <summary>
              Looks up a localized string similar to Supported Products.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_UninstallingExtension">
            <summary>
              Looks up a localized string similar to Uninstalling '{0}', version {1}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_UninstallSucceeded">
            <summary>
              Looks up a localized string similar to Successfully uninstalled {0}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_UnsupportedManifestFormat">
            <summary>
              Looks up a localized string similar to This VSIX manifest format is not supported..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.Log_UpgradingExtension">
            <summary>
              Looks up a localized string similar to Upgrading '{0}', version {1} to version {2}..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.LoggerIOError">
            <summary>
              Looks up a localized string similar to Could not write to log file {0}. {1}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.LoggerLaunchError">
            <summary>
              Looks up a localized string similar to Could not launch an appropriate application to show install log. You can find the log in the following path: {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ModifyFailureHeader">
            <summary>
              Looks up a localized string similar to Modifications Failed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ModifyFailureMessage">
            <summary>
              Looks up a localized string similar to Some modifications could not be applied successfully. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ModifyNoOpFailureMessage">
            <summary>
              Looks up a localized string similar to Some modifications could not be applied successfully. Those modifications were not applied. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ModifySuccessHeader">
            <summary>
              Looks up a localized string similar to Modifications Complete.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ModifySuccessMessage">
            <summary>
              Looks up a localized string similar to Your modifications have been successfully applied. Please close and restart all target application instances for changes to take effect..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.MultipleChangesMustTargetSingleInstance">
            <summary>
              Looks up a localized string similar to For multiple installs/uninstalls it is only supported to make changes to a specific appid or instance either by specifying /appidInstallPath, /appName, /skuName and /skuVersion or by specifying a single instance id via /installIds..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.MultipleChangeTitle">
            <summary>
              Looks up a localized string similar to Scheduled tasks for {0}:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.NoApplicableSKUsInstalled">
            <summary>
              Looks up a localized string similar to This extension is not installable on any currently installed products..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.NoSKUsContainExtension">
            <summary>
              Looks up a localized string similar to The extension with ID '{0}' is not installed to any currently installed products..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.NotApplicableExtensionUiMessage">
            <summary>
              Looks up a localized string similar to This extension does not support this edition of Visual Studio..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.NotDowngradeableExtensionUiMessage">
            <summary>
              Looks up a localized string similar to This extension cannot be reverted..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.NotInstallableExtensionSdkUiMessage">
            <summary>
              Looks up a localized string similar to This extension SDK will not be installed. Please schedule extension SDK modifications separately from other extensions..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.NotInstalledExtensionUiMessage">
            <summary>
              Looks up a localized string similar to This extension is not installed..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressComponentStatusDowngrade">
            <summary>
              Looks up a localized string similar to Reverting {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressComponentStatusDownload">
            <summary>
              Looks up a localized string similar to Downloading {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressComponentStatusDownloadComplete">
            <summary>
              Looks up a localized string similar to Download Complete.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressComponentStatusInstall">
            <summary>
              Looks up a localized string similar to Installing {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressComponentStatusUninstall">
            <summary>
              Looks up a localized string similar to Uninstalling {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressHeaderDowngrading">
            <summary>
              Looks up a localized string similar to Reverting {0}....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressHeaderInstalling">
            <summary>
              Looks up a localized string similar to Installing {0}....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressHeaderModifying">
            <summary>
              Looks up a localized string similar to Modifying {0}....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressHeaderUninstalling">
            <summary>
              Looks up a localized string similar to Uninstalling {0}....
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressOperationStatusDowngrade">
            <summary>
              Looks up a localized string similar to Reverting {0}:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressOperationStatusInstall">
            <summary>
              Looks up a localized string similar to Installing {0}:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressOperationStatusUninstall">
            <summary>
              Looks up a localized string similar to Uninstalling {0}:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressProductStatus">
            <summary>
              Looks up a localized string similar to Modifying {0}:.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.ProgressRollingBack">
            <summary>
              Looks up a localized string similar to Rolling back changes.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.RevertUninstallFailed">
             <summary>
               Looks up a localized string similar to RevertUninstall failed
            {0}.
             </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.SetupInstanceNotLaunchable">
            <summary>
              Looks up a localized string similar to Found setup instance {0} but not in launchable state..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.SetupInstancePendingReboot">
            <summary>
              Looks up a localized string similar to Setup instance {0} requires a reboot. Reboot the machine and try again..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.SetupInstanceUnavailable">
            <summary>
              Looks up a localized string similar to Could not get Setup Instance for path: {0}.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.SkuNameNotSpecified">
            <summary>
              Looks up a localized string similar to /skuName not specified. When /appidInstallPath is specified you must also specify /appidName, /skuName and /skuVersion..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.SkuVersionNotSpecified">
            <summary>
              Looks up a localized string similar to /skuVersion not specified. When /appidInstallPath is specified you must also specify /appidName, /skuName and /skuVersion..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.success1">
            <summary>
              Looks up a localized resource of type System.Drawing.Bitmap.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UnableToDetermineAction">
            <summary>
              Looks up a localized string similar to Unable to determine action. You must specify a path to a VSIX to install or the /uninstall command line argument..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UninstallFailureHeader">
            <summary>
              Looks up a localized string similar to Uninstall Failed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UninstallFailureMessage">
            <summary>
              Looks up a localized string similar to The uninstall of '{0}' was not successful for the selected product. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UninstallNoOpFailureMessage">
            <summary>
              Looks up a localized string similar to The uninstall of '{0}' was not successful for the selected product and it was not uninstalled. For more information, click on the install log link at the bottom of the dialog..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UninstallSuccessHeader">
            <summary>
              Looks up a localized string similar to Uninstall Complete.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UninstallSuccessMessage">
            <summary>
              Looks up a localized string similar to '{0}' has been successfully uninstalled. Please close and restart all open instances of the below applications for changes to take effect..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UnresolvedReferenceDoesNotExist">
            <summary>
              Looks up a localized string similar to The prerequisite specified does not exist.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UnresolvedReferenceInvalidVersion">
            <summary>
              Looks up a localized string similar to The prerequisite version specified is invalid.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UnresolvedReferenceVersionDoesNotMatch">
            <summary>
              Looks up a localized string similar to The prerequisite version specified does not match the version installed.
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UnsatisfiedExtensionUiMessage">
            <summary>
              Looks up a localized string similar to This extension contains prerequisites that could not be found..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.UpdatingConfiguration">
            <summary>
              Looks up a localized string similar to Updating configuration for {0}.
            </summary>
        </member>
        <!-- Badly formed XML comment ignored for member "P:VSIXInstaller.VSIXInstallerResources.Usage" -->
        <member name="P:VSIXInstaller.VSIXInstallerResources.VSCodeExtensionSpecified">
            <summary>
              Looks up a localized string similar to One or more extensions are for Visual Studio Code. Try installing them in Visual Studio Code..
            </summary>
        </member>
        <member name="P:VSIXInstaller.VSIXInstallerResources.warning">
            <summary>
              Looks up a localized resource of type System.Drawing.Bitmap.
            </summary>
        </member>
        <member name="T:XamlGeneratedNamespace.GeneratedInternalTypeHelper">
            <summary>
            GeneratedInternalTypeHelper
            </summary>
        </member>
        <member name="M:XamlGeneratedNamespace.GeneratedInternalTypeHelper.CreateInstance(System.Type,System.Globalization.CultureInfo)">
            <summary>
            CreateInstance
            </summary>
        </member>
        <member name="M:XamlGeneratedNamespace.GeneratedInternalTypeHelper.GetPropertyValue(System.Reflection.PropertyInfo,System.Object,System.Globalization.CultureInfo)">
            <summary>
            GetPropertyValue
            </summary>
        </member>
        <member name="M:XamlGeneratedNamespace.GeneratedInternalTypeHelper.SetPropertyValue(System.Reflection.PropertyInfo,System.Object,System.Object,System.Globalization.CultureInfo)">
            <summary>
            SetPropertyValue
            </summary>
        </member>
        <member name="M:XamlGeneratedNamespace.GeneratedInternalTypeHelper.CreateDelegate(System.Type,System.Object,System.String)">
            <summary>
            CreateDelegate
            </summary>
        </member>
        <member name="M:XamlGeneratedNamespace.GeneratedInternalTypeHelper.AddEventHandler(System.Reflection.EventInfo,System.Object,System.Delegate)">
            <summary>
            AddEventHandler
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.ConstantExpectedAttribute">
            <summary>
            Indicates that the specified method parameter expects a constant.
            </summary>
            <remarks>
            This can be used to inform tooling that a constant should be used as an argument for the annotated parameter.
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.ConstantExpectedAttribute.Min">
            <summary>
            Indicates the minimum bound of the expected constant, inclusive.
            </summary>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.ConstantExpectedAttribute.Max">
            <summary>
            Indicates the maximum bound of the expected constant, inclusive.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DisallowNullAttribute">
            <summary>
            Specifies that null is disallowed as an input even if the corresponding type allows it.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnAttribute">
            <summary>
            Applied to a method that will never return under any circumstance.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute">
            <summary>
            Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.#ctor(System.Boolean)">
            <summary>
            Initializes the attribute with the specified parameter value.
            </summary>
            <param name="parameterValue">
            The condition parameter value. Code after the method will be considered unreachable
            by diagnostics if the argument to the associated parameter matches this value.
            </param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.DoesNotReturnIfAttribute.ParameterValue">
            <summary>
            Gets the condition parameter value.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.ExperimentalAttribute">
            <summary>
            Indicates that an API is experimental and it may change in the future.
            </summary>
            <remarks>
            This attribute allows call sites to be flagged with a diagnostic that indicates that an experimental
            feature is used. Authors can use this attribute to ship preview features in their assemblies.
            </remarks>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.ExperimentalAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Diagnostics.CodeAnalysis.ExperimentalAttribute" /> class,
            specifying the ID that the compiler will use when reporting a use of the API the attribute applies to.
            </summary>
            <param name="diagnosticId">The ID that the compiler will use when reporting a use of the API the attribute applies to.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.ExperimentalAttribute.DiagnosticId">
            <summary>
            Gets the ID that the compiler will use when reporting a use of the API the attribute applies to.
            </summary>
            <value>The unique diagnostic ID.</value>
            <remarks>
            The diagnostic ID is shown in build output for warnings and errors.
            <para>This property represents the unique ID that can be used to suppress the warnings or errors, if needed.</para>
            </remarks>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.ExperimentalAttribute.UrlFormat">
            <summary>
            Gets or sets the URL for corresponding documentation.
            The API accepts a format string instead of an actual URL, creating a generic URL that includes the diagnostic ID.
            </summary>
            <value>The format string that represents a URL to corresponding documentation.</value>
            <remarks>An example format string is <c>https://contoso.com/obsoletion-warnings/{0}</c>.</remarks>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullAttribute">
            <summary>
            Specifies that an output may be null even if the corresponding type disallows it.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute">
            <summary>
            Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue" />, the parameter may be null even if the corresponding type disallows it.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.#ctor(System.Boolean)">
            <summary>
            Initializes the attribute with the specified return value condition.
            </summary>
            <param name="returnValue">The return value condition. If the method returns this value, the associated parameter may be null.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MaybeNullWhenAttribute.ReturnValue">
            <summary>
            Gets the return value condition.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute">
            <summary>
            Specifies that the method or property will ensure that the listed field and property members have not-null values.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String)">
            <summary>
            Initializes the attribute with a field or property member.
            </summary>
            <param name="member">The field or property member that is promised to be not-null.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.#ctor(System.String[])">
            <summary>
            Initializes the attribute with the list of field and property members.
            </summary>
            <param name="members">The list of field and property members that are promised to be not-null.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullAttribute.Members">
            <summary>
            Gets field or property member names.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute">
            <summary>
            Specifies that the method or property will ensure that the listed field and property
            members have not-null values when returning with the specified return value condition.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String)">
            <summary>
            Initializes the attribute with the specified return value condition and a field or property member.
            </summary>
            <param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param>
            <param name="member">The field or property member that is promised to be not-null.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.#ctor(System.Boolean,System.String[])">
            <summary>
            Initializes the attribute with the specified return value condition and list of field and property members.
            </summary>
            <param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param>
            <param name="members">The list of field and property members that are promised to be not-null.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.ReturnValue">
            <summary>
            Gets the return value condition.
            </summary>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.MemberNotNullWhenAttribute.Members">
            <summary>
            Gets field or property member names.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullAttribute">
            <summary>
            Specifies that an output will not be null even if the corresponding type allows it.
            Specifies that an input argument was not null when the call returns.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute">
            <summary>
            Specifies that the output will be non-null if the named parameter is non-null.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.#ctor(System.String)">
            <summary>
            Initializes the attribute with the associated parameter name.
            </summary>
            <param name="parameterName">The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.NotNullIfNotNullAttribute.ParameterName">
            <summary>
            Gets the associated parameter name.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute">
            <summary>
            Specifies that when a method returns <see cref="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue" />, the parameter will not be null even if the corresponding type allows it.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.#ctor(System.Boolean)">
            <summary>
            Initializes the attribute with the specified return value condition.
            </summary>
            <param name="returnValue">The return value condition. If the method returns this value, the associated parameter will not be null.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.NotNullWhenAttribute.ReturnValue">
            <summary>Gets the return value condition.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.SetsRequiredMembersAttribute">
            <summary>
            Specifies that this constructor sets all required members for the current type,
            and callers do not need to set any required members themselves.
            </summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute">
            <summary>
            Specifies the syntax used in a string.
            </summary>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.#ctor(System.String)">
            <summary>
            Initializes the <see cref="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute" /> with the identifier of the syntax used.
            </summary>
            <param name="syntax">The syntax identifier.</param>
        </member>
        <member name="M:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.#ctor(System.String,System.Object[])">
            <summary>Initializes the <see cref="T:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute" /> with the identifier of the syntax used.</summary>
            <param name="syntax">The syntax identifier.</param>
            <param name="arguments">Optional arguments associated with the specific syntax employed.</param>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Syntax">
            <summary>Gets the identifier of the syntax used.</summary>
        </member>
        <member name="P:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Arguments">
            <summary>Optional arguments associated with the specific syntax employed.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.CompositeFormat">
            <summary>The syntax identifier for strings containing composite formats for string formatting.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.DateOnlyFormat">
            <summary>The syntax identifier for strings containing date format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.DateTimeFormat">
            <summary>The syntax identifier for strings containing date and time format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.EnumFormat">
            <summary>The syntax identifier for strings containing <see cref="T:System.Enum" /> format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.GuidFormat">
            <summary>The syntax identifier for strings containing <see cref="T:System.Guid" /> format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Json">
            <summary>The syntax identifier for strings containing JavaScript Object Notation (JSON).</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.NumericFormat">
            <summary>The syntax identifier for strings containing numeric format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Regex">
            <summary>The syntax identifier for strings containing regular expressions.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.TimeOnlyFormat">
            <summary>The syntax identifier for strings containing time format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.TimeSpanFormat">
            <summary>The syntax identifier for strings containing <see cref="T:System.TimeSpan" /> format specifiers.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Uri">
            <summary>The syntax identifier for strings containing URIs.</summary>
        </member>
        <member name="F:System.Diagnostics.CodeAnalysis.StringSyntaxAttribute.Xml">
            <summary>The syntax identifier for strings containing XML.</summary>
        </member>
        <member name="T:System.Diagnostics.CodeAnalysis.UnscopedRefAttribute">
            <summary>
            Used to indicate a byref escapes and is not scoped.
            </summary>
            <remarks>
            <para>
            There are several cases where the C# compiler treats a <see langword="ref" /> as implicitly
            <see langword="scoped" /> - where the compiler does not allow the <see langword="ref" /> to escape the method.
            </para>
            <para>
            For example:
            <list type="number">
                <item><see langword="this" /> for <see langword="struct" /> instance methods.</item>
                <item><see langword="ref" /> parameters that refer to <see langword="ref" /> <see langword="struct" /> types.</item>
                <item><see langword="out" /> parameters.</item>
            </list>
            </para>
            <para>
            This attribute is used in those instances where the <see langword="ref" /> should be allowed to escape.
            </para>
            <para>
            Applying this attribute, in any form, has impact on consumers of the applicable API. It is necessary for
            API authors to understand the lifetime implications of applying this attribute and how it may impact their users.
            </para>
            </remarks>
        </member>
        <member name="T:System.Index">
            <summary>Represent a type can be used to index a collection either from the start or the end.</summary>
            <remarks>
            Index is used by the C# compiler to support the new index syntax
            <code>
            int[] someArray = new int[5] { 1, 2, 3, 4, 5 } ;
            int lastElement = someArray[^1]; // lastElement = 5
            </code>
            </remarks>
        </member>
        <member name="M:System.Index.#ctor(System.Int32,System.Boolean)">
            <summary>Construct an Index using a value and indicating if the index is from the start or from the end.</summary>
            <param name="value">The index value. it has to be zero or positive number.</param>
            <param name="fromEnd">Indicating if the index is from the start or from the end.</param>
            <remarks>
            If the Index constructed from the end, index value 1 means pointing at the last element and index value 0 means pointing at beyond last element.
            </remarks>
        </member>
        <member name="P:System.Index.Start">
            <summary>Create an Index pointing at first element.</summary>
        </member>
        <member name="P:System.Index.End">
            <summary>Create an Index pointing at beyond last element.</summary>
        </member>
        <member name="M:System.Index.FromStart(System.Int32)">
            <summary>Create an Index from the start at the position indicated by the value.</summary>
            <param name="value">The index value from the start.</param>
        </member>
        <member name="M:System.Index.FromEnd(System.Int32)">
            <summary>Create an Index from the end at the position indicated by the value.</summary>
            <param name="value">The index value from the end.</param>
        </member>
        <member name="P:System.Index.Value">
            <summary>Returns the index value.</summary>
        </member>
        <member name="P:System.Index.IsFromEnd">
            <summary>Indicates whether the index is from the start or the end.</summary>
        </member>
        <member name="M:System.Index.GetOffset(System.Int32)">
            <summary>Calculate the offset from the start using the giving collection length.</summary>
            <param name="length">The length of the collection that the Index will be used with. length has to be a positive value</param>
            <remarks>
            For performance reason, we don't validate the input length parameter and the returned offset value against negative values.
            we don't validate either the returned offset is greater than the input length.
            It is expected Index will be used with collections which always have non negative length/count. If the returned offset is negative and
            then used to index a collection will get out of range exception which will be same affect as the validation.
            </remarks>
        </member>
        <member name="M:System.Index.Equals(System.Object)">
            <summary>Indicates whether the current Index object is equal to another object of the same type.</summary>
            <param name="value">An object to compare with this object</param>
        </member>
        <member name="M:System.Index.Equals(System.Index)">
            <summary>Indicates whether the current Index object is equal to another Index object.</summary>
            <param name="other">An object to compare with this object</param>
        </member>
        <member name="M:System.Index.GetHashCode">
            <summary>Returns the hash code for this instance.</summary>
        </member>
        <member name="M:System.Index.op_Implicit(System.Int32)~System.Index">
            <summary>Converts integer number to an Index.</summary>
        </member>
        <member name="M:System.Index.ToString">
            <summary>Converts the value of the current Index object to its equivalent string representation.</summary>
        </member>
        <member name="T:System.Range">
            <summary>Represent a range has start and end indexes.</summary>
            <remarks>
            Range is used by the C# compiler to support the range syntax.
            <code>
            int[] someArray = new int[5] { 1, 2, 3, 4, 5 };
            int[] subArray1 = someArray[0..2]; // { 1, 2 }
            int[] subArray2 = someArray[1..^0]; // { 2, 3, 4, 5 }
            </code>
            </remarks>
        </member>
        <member name="P:System.Range.Start">
            <summary>Represent the inclusive start index of the Range.</summary>
        </member>
        <member name="P:System.Range.End">
            <summary>Represent the exclusive end index of the Range.</summary>
        </member>
        <member name="M:System.Range.#ctor(System.Index,System.Index)">
            <summary>Construct a Range object using the start and end indexes.</summary>
            <param name="start">Represent the inclusive start index of the range.</param>
            <param name="end">Represent the exclusive end index of the range.</param>
        </member>
        <member name="M:System.Range.Equals(System.Object)">
            <summary>Indicates whether the current Range object is equal to another object of the same type.</summary>
            <param name="value">An object to compare with this object</param>
        </member>
        <member name="M:System.Range.Equals(System.Range)">
            <summary>Indicates whether the current Range object is equal to another Range object.</summary>
            <param name="other">An object to compare with this object</param>
        </member>
        <member name="M:System.Range.GetHashCode">
            <summary>Returns the hash code for this instance.</summary>
        </member>
        <member name="M:System.Range.ToString">
            <summary>Converts the value of the current Range object to its equivalent string representation.</summary>
        </member>
        <member name="M:System.Range.StartAt(System.Index)">
            <summary>Create a Range object starting from start index to the end of the collection.</summary>
        </member>
        <member name="M:System.Range.EndAt(System.Index)">
            <summary>Create a Range object starting from first element in the collection to the end Index.</summary>
        </member>
        <member name="P:System.Range.All">
            <summary>Create a Range object starting from first element to the end.</summary>
        </member>
        <member name="M:System.Range.GetOffsetAndLength(System.Int32)">
            <summary>Calculate the start offset and length of range object using a collection length.</summary>
            <param name="length">The length of the collection that the range will be used with. length has to be a positive value.</param>
            <remarks>
            For performance reason, we don't validate the input length parameter against negative values.
            It is expected Range will be used with collections which always have non negative length/count.
            We validate the range is inside the length scope though.
            </remarks>
        </member>
        <member name="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute">
            <summary>
            An attribute that allows parameters to receive the expression of other parameters.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute" /> class.
            </summary>
            <param name="parameterName">The condition parameter value.</param>
        </member>
        <member name="P:System.Runtime.CompilerServices.CallerArgumentExpressionAttribute.ParameterName">
            <summary>
            Gets the parameter name the expression is retrieved from.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CollectionBuilderAttribute.#ctor(System.Type,System.String)">
            <summary>
            Initialize the attribute to refer to the <paramref name="methodName" /> method on the <paramref name="builderType" /> type.
            </summary>
            <param name="builderType">The type of the builder to use to construct the collection.</param>
            <param name="methodName">The name of the method on the builder to use to construct the collection.</param>
            <remarks>
            <paramref name="methodName" /> must refer to a static method that accepts a single parameter of
            type <see cref="T:System.ReadOnlySpan`1" /> and returns an instance of the collection being built containing
            a copy of the data from that span.  In future releases of .NET, additional patterns may be supported.
            </remarks>
        </member>
        <member name="P:System.Runtime.CompilerServices.CollectionBuilderAttribute.BuilderType">
            <summary>
            Gets the type of the builder to use to construct the collection.
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.CollectionBuilderAttribute.MethodName">
            <summary>
            Gets the name of the method on the builder to use to construct the collection.
            </summary>
            <remarks>
            This should match the metadata name of the target method.
            For example, this might be ".ctor" if targeting the type's constructor.
            </remarks>
        </member>
        <member name="T:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute">
            <summary>
            Indicates that compiler support for a particular feature is required for the location where this attribute is applied.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.#ctor(System.String)">
            <summary>
            Creates a new instance of the <see cref="T:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute" /> type.
            </summary>
            <param name="featureName">The name of the feature to indicate.</param>
        </member>
        <member name="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName">
            <summary>
            The name of the compiler feature.
            </summary>
        </member>
        <member name="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.IsOptional">
            <summary>
            If true, the compiler can choose to allow access to the location where this attribute is applied if it does not understand <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName" />.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.RefStructs">
            <summary>
            The <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName" /> used for the ref structs C# feature.
            </summary>
        </member>
        <member name="F:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.RequiredMembers">
            <summary>
            The <see cref="P:System.Runtime.CompilerServices.CompilerFeatureRequiredAttribute.FeatureName" /> used for the required members C# feature.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute">
            <summary>
            Indicates which arguments to a method involving an interpolated string handler should be passed to that handler.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute" /> class.
            </summary>
            <param name="argument">The name of the argument that should be passed to the handler.</param>
            <remarks><see langword="null" /> may be used as the name of the receiver in an instance method.</remarks>
        </member>
        <member name="M:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.#ctor(System.String[])">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute" /> class.
            </summary>
            <param name="arguments">The names of the arguments that should be passed to the handler.</param>
            <remarks><see langword="null" /> may be used as the name of the receiver in an instance method.</remarks>
        </member>
        <member name="P:System.Runtime.CompilerServices.InterpolatedStringHandlerArgumentAttribute.Arguments">
            <summary>
            Gets the names of the arguments that should be passed to the handler.
            </summary>
            <remarks><see langword="null" /> may be used as the name of the receiver in an instance method.</remarks>
        </member>
        <member name="T:System.Runtime.CompilerServices.InterpolatedStringHandlerAttribute">
            <summary>
            Indicates the attributed type is to be used as an interpolated string handler.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.IsExternalInit">
            <summary>
            Reserved to be used by the compiler for tracking metadata.
            This class should not be used by developers in source code.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.ModuleInitializerAttribute">
             <summary>
             Used to indicate to the compiler that a method should be called
             in its containing module's initializer.
             </summary>
             <remarks>
             When one or more valid methods
             with this attribute are found in a compilation, the compiler will
             emit a module initializer which calls each of the attributed methods.
            
             Certain requirements are imposed on any method targeted with this attribute:
             - The method must be `static`.
             - The method must be an ordinary member method, as opposed to a property accessor, constructor, local function, etc.
             - The method must be parameterless.
             - The method must return `void`.
             - The method must not be generic or be contained in a generic type.
             - The method's effective accessibility must be `internal` or `public`.
            
             The specification for module initializers in the .NET runtime can be found here:
             https://github.com/dotnet/runtime/blob/main/docs/design/specs/Ecma-335-Augments.md#module-initializer
             </remarks>
        </member>
        <member name="T:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute">
            <summary>
            Specifies the priority of a member in overload resolution. When unspecified, the default priority is 0.
            </summary>
        </member>
        <member name="M:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute" /> class.
            </summary>
            <param name="priority">The priority of the attributed member. Higher numbers are prioritized, lower numbers are deprioritized. 0 is the default if no attribute is present.</param>
        </member>
        <member name="P:System.Runtime.CompilerServices.OverloadResolutionPriorityAttribute.Priority">
            <summary>
            The priority of the member.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.ParamCollectionAttribute">
            <summary>
            Indicates that a method will allow a variable number of arguments in its invocation.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.RequiredMemberAttribute">
            <summary>
            Specifies that a type has required members or that a member is required.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.RequiresLocationAttribute">
            <summary>
            Reserved for use by a compiler for tracking metadata.
            This attribute should not be used by developers in source code.
            </summary>
        </member>
        <member name="T:System.Runtime.CompilerServices.SkipLocalsInitAttribute">
            <summary>
            Used to indicate to the compiler that the <c>.locals init</c> flag should not be set in method headers.
            </summary>
        </member>
        <member name="M:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute" /> class.
            </summary>
        </member>
        <member name="M:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute" /> class with the specified message.
            </summary>
            <param name="message">An optional message associated with this attribute instance.</param>
        </member>
        <member name="P:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.Message">
            <summary>
            Returns the optional message associated with this attribute instance.
            </summary>
        </member>
        <member name="P:System.Runtime.Versioning.RequiresPreviewFeaturesAttribute.Url">
            <summary>
            Returns the optional URL associated with this attribute instance.
            </summary>
        </member>
    </members>
<Signature xmlns="http://www.w3.org/2000/09/xmldsig#"><SignedInfo><CanonicalizationMethod Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /><SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256" /><Reference URI=""><Transforms><Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature" /><Transform Algorithm="http://www.w3.org/TR/2001/REC-xml-c14n-20010315" /></Transforms><DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256" /><DigestValue>KSkw+g49WQkcw6PXw9d5qrJSYM00ipGz5g6FnXOblvo=</DigestValue></Reference></SignedInfo><SignatureValue>irZbBtk5kJCX53Tq+lOwDNa/AmtdLkPgtsUgpQwLP5q/YQKTMMlteYOBU7zrbmhIWLfGWmwoCWOPlu4VTpNwPK5whVc+kYkh2yEaUcIQMPbVpTn70h/2F6XE0l8DYUncZZBF9XXENE500YlkEKK2Fr44co2f1KEqXmzADz0i5m6EGoi3vLu1AYuzYxX1M7AC7ZDnkjSyg1fFHsJW8ya7FKP4vy232/0co8Trdad7B75B2fCXtS9stDr/U4aV14sit/b9FL7WSCubmMvfL2yndKW1SRFp+2GodYiyvXUl0BbIPt2TX+K2W58+HBU/+0BN40NG4R2+TH1Aylh9gY4xdg==</SignatureValue><KeyInfo><KeyValue><RSAKeyValue><Modulus>7XpKjCg5837MnNU9UKR3xba/q5Iq/JXcyzypjF20Q6LlVwLLwX3ehPNrT4+GM2kpbhg0KF9zaTCqKCnlRY4zUat+8sk/4dUEyzAfHaZrGf+9FDPlP7GMb7dT1lsS4zDSF6swfD4xuoux9mBYJOGDoXxknpL581td3SwLX4w9MIsERD7wjZYpUc+16BXXuSjtNXhYlnrXoePKlDqlGgJCM5wuFwd7BXdS1lJrqVxytOUHyUpp3ovamSQWE7fGYQKxg4e50J/mNYzgN6AYglCeJ9QjGlnQ4a4HTLrtNuqFgG3wt6a6pFJ/C1qdvB/tki3rTRuSkGWcL8t2XJ+/j0BpeQ==</Modulus><Exponent>AQAB</Exponent></RSAKeyValue></KeyValue><X509Data><X509Certificate>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</X509Certificate><X509Certificate>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</X509Certificate><X509Certificate>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</X509Certificate></X509Data></KeyInfo><Object Id="ts-countersig"><X509Data><X509Certificate>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</X509Certificate><X509Certificate>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</X509Certificate></X509Data><CounterSignature ts-format="cms-timestamp-message" xmlns="http://schemas.microsoft.com/xmldsig/timestamp/2003">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</CounterSignature></Object></Signature></doc>
