<?xml version="1.0" encoding="utf-8"?>
<Project Sdk="MSBuild.Sdk.Extras">

  <PropertyGroup>
    <TargetFramework>net472</TargetFramework>
    <OutputType>WinExe</OutputType>
    <LangVersion>8.0</LangVersion>
    <GenerateAssemblyInfo>False</GenerateAssemblyInfo>
    <AutoGenerateBindingRedirects>false</AutoGenerateBindingRedirects>
    <GenerateSupportedRuntime>false</GenerateSupportedRuntime>
    <EnableDefaultItems>false</EnableDefaultItems>
    <UseWpf>true</UseWpf>
    <ExtrasEnableDefaultPageItems>false</ExtrasEnableDefaultPageItems>
    <ExtrasEnableDefaultResourceItems>false</ExtrasEnableDefaultResourceItems>

    <RootNamespace>ICSharpCode.ILSpy</RootNamespace>

    <AllowUnsafeBlocks>True</AllowUnsafeBlocks>

    <ApplicationIcon>Images\ILSpy-Large.ico</ApplicationIcon>

    <SignAssembly>True</SignAssembly>
    <AssemblyOriginatorKeyFile>..\ICSharpCode.Decompiler\ICSharpCode.Decompiler.snk</AssemblyOriginatorKeyFile>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)' == 'Debug'">
    <DebugType>full</DebugType>
    <DebugSymbols>true</DebugSymbols>
    <CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
  </PropertyGroup>

  <PropertyGroup Condition="'$(Configuration)' == 'Release'">
    <DebugType>pdbonly</DebugType>
    <DebugSymbols>true</DebugSymbols>
  </PropertyGroup>

  <PropertyGroup>
    <CodeAnalysisRuleSet>..\ICSharpCode.Decompiler\ICSharpCode.Decompiler.ruleset</CodeAnalysisRuleSet>
  </PropertyGroup>

  <ItemGroup>
    <Reference Include="Microsoft.CSharp" />
    <Reference Include="PresentationCore" />
    <Reference Include="PresentationFramework" />
    <Reference Include="System.IO.Compression" />
    <Reference Include="System.Windows.Forms" />
    <Reference Include="System.Xaml" />
    <Reference Include="WindowsBase" />
  </ItemGroup>

  <ItemGroup>
    <PackageReference Include="AvalonEdit" Version="6.1.0-preview1" />
    <PackageReference Include="Dirkster.AvalonDock" Version="3.6.1" />
    <PackageReference Include="Microsoft.VisualStudio.Composition" Version="16.3.7" />
    <PackageReference Include="System.Composition" Version="1.3.0" />
    <PackageReference Include="Mono.Cecil" Version="0.10.3" />
    <PackageReference Include="OSVersionHelper" Version="1.0.11" />
    <PackageReference Include="DataGridExtensions" Version="2.1.1" />
    <PackageReference Include="System.Reflection.Metadata" Version="1.8.1" />
    <PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="4.7.0" />
    <PackageReference Include="Microsoft.Xaml.Behaviors.Wpf" Version="1.1.19" />
  </ItemGroup>

  <ItemGroup>
    <ProjectReference Include="..\ICSharpCode.Decompiler\ICSharpCode.Decompiler.csproj" />
    <ProjectReference Include="..\SharpTreeView\ICSharpCode.TreeView.csproj" />
  </ItemGroup>

  <ItemGroup Condition="'$(Configuration)' == 'Debug'">
    <PackageReference Include="Microsoft.DiaSymReader.Converter.Xml" Version="1.1.0-beta1-63314-01" />
  </ItemGroup>
    
  <ItemGroup>
    <ApplicationDefinition Include="App.xaml" />
  </ItemGroup>

  <ItemGroup>
    <Compile Include="..\ICSharpCode.Decompiler.PdbProvider.Cecil\MonoCecilDebugInfoProvider.cs" Link="DebugInfo\MonoCecilDebugInfoProvider.cs" />
    <Compile Include="AboutPage.cs" />
    <Compile Include="Analyzers\AnalyzerContext.cs" />
    <Compile Include="Analyzers\AnalyzerScope.cs" />
    <Compile Include="Analyzers\Builtin\AttributeAppliedToAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\EventImplementedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\EventOverriddenByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\MethodImplementedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\MemberImplementsInterfaceAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\MethodOverriddenByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\MethodVirtualUsedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\MethodUsedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\MethodUsesAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\PropertyImplementedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\PropertyOverriddenByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\TypeExposedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\TypeInstantiatedByAnalyzer.cs" />
    <Compile Include="Analyzers\Builtin\TypeUsedByAnalyzer.cs" />
    <Compile Include="Analyzers\IAnalyzer.cs" />
    <Compile Include="Analyzers\AnalyzerTreeView.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedAccessorTreeNode.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedEventTreeNode.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedMethodTreeNode.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedPropertyTreeNode.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedModuleTreeNode.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedTypeTreeNode.cs" />
    <Compile Include="App.xaml.cs">
      <DependentUpon>App.xaml</DependentUpon>
    </Compile>
    <Compile Include="AssemblyList.cs" />
    <Compile Include="AssemblyListManager.cs" />
    <Compile Include="AvalonEdit\ITextMarker.cs" />
    <Compile Include="AvalonEdit\TextMarkerService.cs" />
    <Compile Include="Commands\DecompileInNewViewCommand.cs" />
    <Compile Include="Commands\CheckForUpdatesCommand.cs" />
    <Compile Include="Commands\BrowseBackCommand.cs" />
    <Compile Include="Commands\BrowseForwardCommand.cs" />
    <Compile Include="CommandLineArguments.cs" />
    <Compile Include="Commands\DelegateCommand.cs" />
    <Compile Include="Commands\DecompileCommand.cs" />
    <Compile Include="Commands\DisassembleAllCommand.cs" />
    <Compile Include="Commands\ExitCommand.cs" />
    <Compile Include="Commands\CommandWrapper.cs" />
    <Compile Include="Metadata\GoToTokenCommand.cs" />
    <Compile Include="Commands\ILSpyCommands.cs" />
    <Compile Include="Commands\IProtocolHandler.cs" />
    <Compile Include="Commands\ManageAssemblyListsCommand.cs" />
    <Compile Include="Commands\Pdb2XmlCommand.cs" />
    <Compile Include="Commands\RemoveAssembliesWithLoadErrors.cs" />
    <Compile Include="Commands\SelectPdbContextMenuEntry.cs" />
    <Compile Include="Commands\ShowCFGContextMenuEntry.cs" />
    <Compile Include="Commands\ShowDebugSteps.cs" />
    <Compile Include="Commands\SortAssemblyListCommand.cs" />
    <Compile Include="Controls\BoolToVisibilityConverter.cs" />
    <Compile Include="Controls\CustomDialog.cs" />
    <Compile Include="Controls\GridViewColumnAutoSize.cs" />
    <Compile Include="Controls\MarkupExtensions.cs" />
    <Compile Include="Controls\ResourceObjectTable.xaml.cs">
      <DependentUpon>ResourceObjectTable.xaml</DependentUpon>
    </Compile>
    <Compile Include="Commands\DecompileAllCommand.cs" />
    <Compile Include="Commands\ExportCommandAttribute.cs" />
    <Compile Include="Controls\ExtensionMethods.cs" />
    <Compile Include="Controls\SearchBox.cs" />
    <Compile Include="Controls\SortableGridViewColumn.cs" />
    <Compile Include="Controls\XamlResourceExtension.cs" />
    <Compile Include="EntityReference.cs" />
    <Compile Include="Metadata\CorTables\FieldRVATableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\FieldMarshalTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\NestedClassTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ImplMapTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\PropertyMapTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\EventMapTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\InterfaceImplTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ClassLayoutTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\LocalConstantTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\ImportScopeTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\LocalVariableTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\LocalScopeTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\CustomDebugInformationTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\StateMachineMethodTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\MethodDebugInformationTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DebugTables\DocumentTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\FlagsFilterControl.xaml.cs" />
    <Compile Include="Metadata\FlagsTooltip.xaml.cs" />
    <Compile Include="Metadata\HexFilterControl.xaml.cs" />
    <Compile Include="Metadata\MetaDataGrid.cs" />
    <Compile Include="Metadata\MetadataProtocolHandler.cs" />
    <Compile Include="Metadata\MetadataTableTreeNode.cs" />
    <Compile Include="Metadata\DebugMetadataTreeNode.cs" />
    <Compile Include="ViewModels\LegacyToolPaneModel.cs" />
    <Compile Include="ViewModels\ManageAssemblyListsViewModel.cs" />
    <Compile Include="ViewModels\ViewModelBase.cs" />
    <Compile Include="Views\CreateListDialog.xaml.cs">
      <DependentUpon>CreateListDialog.xaml</DependentUpon>
    </Compile>
    <Compile Include="DebugInfo\DebugInfoUtils.cs" />
    <Compile Include="DebugInfo\PortableDebugInfoProvider.cs" />
    <Compile Include="Views\DebugSteps.xaml.cs">
      <DependentUpon>DebugSteps.xaml</DependentUpon>
    </Compile>
    <Compile Include="Docking\ActiveTabPageConverter.cs" />
    <Compile Include="Docking\CloseAllDocumentsCommand.cs" />
    <Compile Include="ViewModels\AssemblyListPaneModel.cs" />
    <Compile Include="Docking\DockLayoutSettings.cs" />
    <Compile Include="ViewModels\TabPageModel.cs" />
    <Compile Include="Docking\PaneCollection.cs" />
    <Compile Include="ViewModels\PaneModel.cs" />
    <Compile Include="Docking\PaneStyleSelector.cs" />
    <Compile Include="Docking\PaneTemplateSelector.cs" />
    <Compile Include="ViewModels\DebugStepsPaneModel.cs" />
    <Compile Include="ViewModels\AnalyzerPaneModel.cs" />
    <Compile Include="ViewModels\SearchPaneModel.cs" />
    <Compile Include="ViewModels\ToolPaneModel.cs" />
    <Compile Include="ILSpyTraceListener.cs" />
    <Compile Include="DecompilationOptions.cs" />
    <Compile Include="ExtensionMethods.cs" />
    <Compile Include="FilterSettings.cs" />
    <Compile Include="GuessFileType.cs" />
    <Compile Include="ContextMenuEntry.cs" />
    <Compile Include="Languages\CSharpBracketSearcher.cs" />
    <Compile Include="Languages\CSharpILMixedLanguage.cs" />
    <Compile Include="Languages\CSharpLanguage.cs" />
    <Compile Include="Languages\CSharpLexer.cs" />
    <Compile Include="Languages\CSharpHighlightingTokenWriter.cs" />
    <Compile Include="ILSpySettings.cs" />
    <Compile Include="Images\AccessOverlayIcon.cs" />
    <Compile Include="Images\MemberIcon.cs" />
    <Compile Include="Images\TypeIcon.cs" />
    <Compile Include="ISmartTextOutput.cs" />
    <Compile Include="Images\Images.cs" />
    <Compile Include="Languages\ILAstLanguage.cs" />
    <Compile Include="Languages\ILLanguage.cs" />
    <Compile Include="Languages\IResourceFileHandler.cs" />
    <Compile Include="Languages\Language.cs" />
    <Compile Include="Languages\Languages.cs" />
    <Compile Include="Metadata\CorTables\MethodImplTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Options\DecompilerSettingsPanel.xaml.cs" />
    <Compile Include="Properties\Resources.Designer.cs">
      <DesignTime>True</DesignTime>
      <AutoGen>True</AutoGen>
      <DependentUpon>Resources.resx</DependentUpon>
    </Compile>
    <Compile Include="Search\AbstractEntitySearchStrategy.cs" />
    <Compile Include="Search\NamespaceSearchStrategy.cs" />
    <Compile Include="Search\AssemblySearchStrategy.cs" />
    <Compile Include="Metadata\CorTables\AssemblyRefTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\AssemblyTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ConstantTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\CustomAttributeTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\DeclSecurityTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\EventTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ExportedTypeTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\FieldLayoutTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\FieldTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\FileTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\GenericParamConstraintTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\GenericParamTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ManifestResourceTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\MemberRefTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\MethodSemanticsTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\MethodSpecTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\MethodTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ModuleRefTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ModuleTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\ParamTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\PropertyTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\StandAloneSigTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\TypeDefTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\TypeRefTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\CorTables\TypeSpecTableTreeNode.cs">
      <SubType>Code</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Compile>
    <Compile Include="Metadata\DataDirectoriesTreeNode.cs" />
    <Compile Include="Metadata\DosHeaderTreeNode.cs" />
    <Compile Include="Metadata\CoffHeaderTreeNode.cs" />
    <Compile Include="Metadata\Helpers.cs" />
    <Compile Include="Metadata\MetadataTableViews.xaml.cs" />
    <Compile Include="Metadata\MetadataTreeNode.cs" />
    <Compile Include="Metadata\OptionalHeaderTreeNode.cs" />
    <Compile Include="Search\LiteralSearchStrategy.cs" />
    <Compile Include="LoadedAssembly.cs" />
    <Compile Include="LoadedAssemblyExtensions.cs" />
    <Compile Include="LoadedNugetPackage.cs" />
    <Compile Include="Search\MemberSearchStrategy.cs" />
    <Compile Include="Search\MetadataTokenSearchStrategy.cs" />
    <Compile Include="NativeMethods.cs" />
    <Compile Include="NavigationHistory.cs" />
    <Compile Include="NavigationState.cs" />
    <Compile Include="Commands\OpenCommand.cs" />
    <Compile Include="Commands\OpenFromGacCommand.cs" />
    <Compile Include="Views\NugetPackageBrowserDialog.xaml.cs">
      <DependentUpon>NugetPackageBrowserDialog.xaml</DependentUpon>
    </Compile>
    <Compile Include="Views\OpenFromGacDialog.xaml.cs">
      <DependentUpon>OpenFromGacDialog.xaml</DependentUpon>
    </Compile>
    <Compile Include="Controls\ResourceStringTable.xaml.cs">
      <DependentUpon>ResourceStringTable.xaml</DependentUpon>
    </Compile>
    <Compile Include="Views\ManageAssemblyListsDialog.xaml.cs" />
    <Compile Include="Options\DisplaySettings.cs" />
    <Compile Include="Options\DisplaySettingsPanel.xaml.cs">
      <DependentUpon>DisplaySettingsPanel.xaml</DependentUpon>
    </Compile>
    <Compile Include="Options\MiscSettings.cs" />
    <Compile Include="Options\MiscSettingsPanel.xaml.cs">
      <DependentUpon>MiscSettingsPanel.xaml</DependentUpon>
    </Compile>
    <Compile Include="Options\OptionsDialog.xaml.cs">
      <DependentUpon>OptionsDialog.xaml</DependentUpon>
    </Compile>
    <Compile Include="Properties\AssemblyInfo.cs" />
    <Compile Include="Commands\RefreshCommand.cs" />
    <Compile Include="Commands\SaveCommand.cs" />
    <Compile Include="Search\ResourceSearchStrategy.cs" />
    <Compile Include="Search\SearchPane.cs">
      <DependentUpon>SearchPane.xaml</DependentUpon>
    </Compile>
    <Compile Include="Commands\SimpleCommand.cs" />
    <Compile Include="Search\AbstractSearchStrategy.cs" />
    <Compile Include="Search\SearchResult.cs" />
    <Compile Include="SolutionWriter.cs" />
    <Compile Include="TaskHelper.cs" />
    <Compile Include="TextView\BracketHighlightRenderer.cs" />
    <Compile Include="TextView\EditorCommands.cs" />
    <Compile Include="TextView\FoldingCommands.cs" />
    <Compile Include="Commands\SaveCodeContextMenuEntry.cs" />
    <Compile Include="TextView\DocumentationUIBuilder.cs" />
    <Compile Include="Analyzers\AnalyzeCommand.cs" />
    <Compile Include="Analyzers\Builtin\FieldAccessAnalyzer.cs" />
    <Compile Include="Analyzers\TreeNodes\AnalyzedFieldTreeNode.cs" />
    <Compile Include="Analyzers\AnalyzerEntityTreeNode.cs" />
    <Compile Include="Analyzers\AnalyzerSearchTreeNode.cs" />
    <Compile Include="Analyzers\AnalyzerTreeNode.cs" />
    <Compile Include="Analyzers\RemoveAnalyzeContextMenuEntry.cs" />
    <Compile Include="TreeNodes\BaseTypesEntryNode.cs" />
    <Compile Include="Commands\CopyFullyQualifiedNameContextMenuEntry.cs" />
    <Compile Include="TreeNodes\DerivedTypesEntryNode.cs" />
    <Compile Include="TreeNodes\FilterResult.cs" />
    <Compile Include="Commands\GeneratePdbContextMenuEntry.cs" />
    <Compile Include="TreeNodes\IMemberTreeNode.cs" />
    <Compile Include="TreeNodes\NaturalStringComparer.cs" />
    <Compile Include="TreeNodes\ResourceNodes\CursorResourceEntryNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\IconResourceEntryNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\ImageListResourceEntryNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\ImageResourceEntryNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\IResourceNodeFactory.cs" />
    <Compile Include="TreeNodes\ResourceNodes\ResourceEntryNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\ResourcesFileTreeNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\ResourceTreeNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\XamlResourceNode.cs" />
    <Compile Include="TreeNodes\ResourceNodes\XmlResourceNode.cs" />
    <Compile Include="Commands\SearchMsdnContextMenuEntry.cs" />
    <Compile Include="Analyzers\Builtin\TypeExtensionMethodsAnalyzer.cs" />
    <Compile Include="Docking\DockWorkspace.cs" />
    <EmbeddedResource Include="..\doc\ILSpyAboutPage.txt" />
    <EmbeddedResource Include="..\doc\ILSpyAboutPage_zh_Hans.txt" />
    <EmbeddedResource Include="..\doc\third-party-notices.txt" />
    <EmbeddedResource Include="..\doc\license.txt">
      <Link>license.txt</Link>
    </EmbeddedResource>
    <EmbeddedResource Include="Properties\Resources.resx">
      <Generator>PublicResXFileCodeGenerator</Generator>
      <LastGenOutput>Resources.Designer.cs</LastGenOutput>
    </EmbeddedResource>
    <EmbeddedResource Include="Properties\Resources.zh-Hans.resx" />
    <Resource Include="Images\ILSpy.ico" />
    <EmbeddedResource Include="TextView\CSharp-Mode.xshd" />
    <EmbeddedResource Include="TextView\ILAsm-Mode.xshd" />
    <EmbeddedResource Include="TextView\Asm-Mode.xshd" />
    <None Include="app.config" />
    <None Include="app.manifest" />
    <None Include="Properties\app.config.template" />
    <None Include="Properties\AssemblyInfo.template.cs" />
    <None Include="Properties\launchSettings.json" />
    <Compile Include="Properties\WPFAssemblyInfo.cs" />
    <Compile Include="MainWindow.xaml.cs">
      <DependentUpon>MainWindow.xaml</DependentUpon>
    </Compile>
    <Compile Include="SessionSettings.cs" />
    <Compile Include="TextView\CaretHighlightAdorner.cs" />
    <Compile Include="TextView\DecompilerTextView.cs">
      <DependentUpon>DecompilerTextView.xaml</DependentUpon>
    </Compile>
    <Compile Include="TextView\OutputLengthExceededException.cs" />
    <Compile Include="TextView\ReferenceElementGenerator.cs" />
    <Compile Include="TextView\AvalonEditTextOutput.cs" />
    <Compile Include="TextView\UIElementGenerator.cs" />
    <Compile Include="TreeNodes\AssemblyListTreeNode.cs" />
    <Compile Include="TreeNodes\AssemblyReferenceTreeNode.cs" />
    <Compile Include="TreeNodes\AssemblyTreeNode.cs" />
    <Compile Include="TreeNodes\BaseTypesTreeNode.cs" />
    <Compile Include="TreeNodes\DerivedTypesTreeNode.cs" />
    <Compile Include="TreeNodes\EventTreeNode.cs" />
    <Compile Include="TreeNodes\FieldTreeNode.cs" />
    <Compile Include="TreeNodes\ILSpyTreeNode.cs" />
    <Compile Include="TreeNodes\MethodTreeNode.cs" />
    <Compile Include="TreeNodes\ModuleReferenceTreeNode.cs" />
    <Compile Include="TreeNodes\NamespaceTreeNode.cs" />
    <Compile Include="TreeNodes\PropertyTreeNode.cs" />
    <Compile Include="TreeNodes\ReferenceFolderTreeNode.cs" />
    <Compile Include="TreeNodes\ResourceListTreeNode.cs" />
    <Compile Include="TreeNodes\ThreadingSupport.cs" />
    <Compile Include="TreeNodes\TypeTreeNode.cs" />
  </ItemGroup>

  <ItemGroup>
    <Page Include="Controls\ResourceObjectTable.xaml" />
    <Page Include="Controls\ResourceStringTable.xaml" />
    <Page Include="Controls\SearchBoxStyle.xaml" />
    <Page Include="Metadata\FlagsFilterControl.xaml" />
    <Page Include="Metadata\FlagsTooltip.xaml" />
    <Page Include="Metadata\HexFilterControl.xaml" />
    <Page Include="Views\CreateListDialog.xaml" />
    <Page Include="Views\DebugSteps.xaml" />
    <Page Include="Images\Assembly.xaml" />
    <Page Include="Images\AssemblyList.xaml" />
    <Page Include="Images\AssemblyListGAC.xaml" />
    <Page Include="Images\AssemblyWarning.xaml" />
    <Page Include="Images\Back.xaml" />
    <Page Include="Images\Class.xaml" />
    <Page Include="Images\Close.xaml" />
    <Page Include="Images\CollapseAll.xaml" />
    <Page Include="Images\Constructor.xaml" />
    <Page Include="Images\Copy.xaml" />
    <Page Include="Images\Delegate.xaml" />
    <Page Include="Images\Delete.xaml" />
    <Page Include="Images\Enum.xaml" />
    <Page Include="Images\EnumValue.xaml" />
    <Page Include="Images\Event.xaml" />
    <Page Include="Images\ExtensionMethod.xaml" />
    <Page Include="Images\Field.xaml" />
    <Page Include="Images\FieldReadOnly.xaml" />
    <Page Include="Images\FindAssembly.xaml" />
    <Page Include="Images\Folder.Closed.xaml" />
    <Page Include="Images\Folder.Open.xaml" />
    <Page Include="Images\Forward.xaml" />
    <Page Include="Images\Indexer.xaml" />
    <Page Include="Images\Interface.xaml" />
    <Page Include="Images\Library.xaml" />
    <Page Include="Images\Literal.xaml" />
    <Page Include="Images\Method.xaml" />
    <Page Include="Images\Namespace.xaml" />
    <Page Include="Images\OK.xaml" />
    <Page Include="Images\Open.xaml" />
    <Page Include="Images\Operator.xaml" />
    <Page Include="Images\OverlayCompilerControlled.xaml" />
    <Page Include="Images\OverlayInternal.xaml" />
    <Page Include="Images\OverlayPrivate.xaml" />
    <Page Include="Images\OverlayPrivateProtected.xaml" />
    <Page Include="Images\OverlayProtected.xaml" />
    <Page Include="Images\OverlayProtectedInternal.xaml" />
    <Page Include="Images\OverlayStatic.xaml" />
    <Page Include="Images\PInvokeMethod.xaml" />
    <Page Include="Images\Property.xaml" />
    <Page Include="Images\ReferenceFolder.xaml" />
    <Page Include="Images\Refresh.xaml" />
    <Page Include="Images\Resource.xaml" />
    <Page Include="Images\ResourceImage.xaml" />
    <Page Include="Images\ResourceResourcesFile.xaml" />
    <Page Include="Images\ResourceXml.xaml" />
    <Page Include="Images\ResourceXsd.xaml" />
    <Page Include="Images\ResourceXsl.xaml" />
    <Page Include="Images\ResourceXslt.xaml" />
    <Page Include="Images\Save.xaml" />
    <Page Include="Images\Search.xaml" />
    <Page Include="Images\SearchMsdn.xaml" />
    <Page Include="Images\ShowAll.xaml" />
    <Page Include="Images\ShowPrivateInternal.xaml" />
    <Page Include="Images\ShowPublicOnly.xaml" />
    <Page Include="Images\Sort.xaml" />
    <Page Include="Images\Struct.xaml" />
    <Page Include="Images\SubTypes.xaml" />
    <Page Include="Images\SuperTypes.xaml" />
    <Page Include="Images\ViewCode.xaml" />
    <Page Include="Images\VirtualMethod.xaml" />
    <Page Include="Images\Warning.xaml" />
    <Page Include="MainWindow.xaml" />
    <Page Include="Metadata\MetadataTableViews.xaml" />
    <Page Include="Views\OpenFromGacDialog.xaml" />
    <Page Include="Views\ManageAssemblyListsDialog.xaml" />
    <Page Include="Views\NugetPackageBrowserDialog.xaml" />
    <Page Include="Options\DecompilerSettingsPanel.xaml" />
    <Page Include="Options\DisplaySettingsPanel.xaml" />
    <Page Include="Options\MiscSettingsPanel.xaml" />
    <Page Include="Options\OptionsDialog.xaml" />
    <Page Include="Search\SearchPane.xaml" />
    <Page Include="TextView\DecompilerTextView.xaml" />
    <Page Include="themes\generic.xaml" />
  </ItemGroup>

  <ItemGroup>
    <Page Update="@(Page)" SubType="Designer" Generator="MSBuild:Compile" />
    <Page Update="Metadata\FlagsFilterControl.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Metadata\FlagsTooltip.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Metadata\HexFilterControl.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Metadata\MetadataTableViews.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Assembly.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\AssemblyWarning.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\AssemblyList.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\AssemblyListGAC.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Back.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Class.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Close.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\CollapseAll.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Constructor.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Copy.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Delegate.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Delete.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Enum.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\EnumValue.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Event.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ExtensionMethod.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Field.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\FieldReadOnly.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\FindAssembly.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Folder.Closed.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Folder.Open.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Forward.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Indexer.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Interface.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Library.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Literal.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Method.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OK.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Open.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Operator.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayCompilerControlled.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayInternal.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayPrivate.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayPrivateProtected.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayProtected.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayProtectedInternal.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\OverlayStatic.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\PInvokeMethod.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Property.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ReferenceFolder.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Refresh.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Resource.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ResourceImage.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ResourceResourcesFile.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ResourceXml.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ResourceXsd.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ResourceXsl.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ResourceXslt.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Save.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Search.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\SearchMsdn.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ShowAll.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ShowPrivateInternal.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ShowPublicOnly.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Sort.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Struct.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\SubTypes.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\SuperTypes.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\ViewCode.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\VirtualMethod.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Images\Warning.xaml">
      <SubType>Designer</SubType>
      <Generator>MSBuild:Compile</Generator>
    </Page>
    <Page Update="Options\DecompilerSettingsPanel.xaml">
      <Generator>MSBuild:Compile</Generator>
    </Page>
  </ItemGroup>

  <ItemGroup>
    <None Include="Search\SearchPane.xaml" />
    <None Include="@(Resource)" />
  </ItemGroup>

  <PropertyGroup>
    <VCBasePath>$(MSBuildToolsPath)\..\..\..\VC\</VCBasePath>
    <VCToolsVersionPropsFileNameDefault>Microsoft.VCToolsVersion.default.props</VCToolsVersionPropsFileNameDefault>
    <!-- This is necessary as long as AppVeyor does not offer Visual Studio 2019 RC or later -->
    <VCToolsVersionPropsFileNameVS2019Preview>Microsoft.VCToolsVersion.v142.default.props</VCToolsVersionPropsFileNameVS2019Preview>
    <VCToolsVersionPropsFile>$(VCBasePath)Auxiliary\Build\$(VCToolsVersionPropsFileNameDefault)</VCToolsVersionPropsFile> 
    <VCToolsVersionPropsFile Condition="!Exists('$(VCToolsVersionPropsFile)')">$(VCBasePath)Auxiliary\Build\$(VCToolsVersionPropsFileNameVS2019Preview)</VCToolsVersionPropsFile> 
  </PropertyGroup>

  <Import Project="$(VCToolsVersionPropsFile)" Condition="Exists('$(VCToolsVersionPropsFile)')" />

  <ItemGroup>
    <SortResXInput Include="Properties\*.resx" />
    <SortResXInput Include="..\ILSpy.AddIn\*.resx" />
    <SortResXInput Include="..\ILSpy.ReadyToRun\Properties\*.resx" />
    <SortResXStamp Include="obj\sort-resx.stamp" />
  </ItemGroup>

  <Target Name="SortResX" BeforeTargets="BeforeBuild" Inputs="@(SortResXInput)" Outputs="@(SortResXStamp)">
    <PropertyGroup Condition=" '$(OS)' == 'Windows_NT' ">
      <SortResX>powershell -NoProfile -ExecutionPolicy Bypass -File BuildTools/sort-resx.ps1</SortResX>
    </PropertyGroup>
    <Exec WorkingDirectory=".." Command="$(SortResX)" Timeout="60000" />
    <Touch Files="@(SortResXStamp)" AlwaysCreate="true" />
  </Target>

  <Target Name="ApplyStackExtension" AfterTargets="PostBuildEvent">
    <Exec Condition="'$(VCToolsVersion)'!=''" Command="&quot;$(VCBasePath)Tools\MSVC\$(VCToolsVersion)\bin\Hostx64\x64\editbin.exe&quot; /stack:16777216 &quot;$(TargetPath)&quot;&#xD;&#xA;EXIT 0" />
    <Exec Command="&quot;$(TargetFrameworkSDKToolsDirectory)sn.exe&quot; -R &quot;$(TargetPath)&quot; &quot;$(SolutionDir)\ICSharpCode.Decompiler\ICSharpCode.Decompiler.snk&quot;" />
  </Target>
</Project>