Separated WASM projects into WinUI 2 and 3

This commit is contained in:
Arlo Godfrey 2022-02-22 19:14:28 -06:00
Родитель 903b4cbee5
Коммит da230c8c60
39 изменённых файлов: 1094 добавлений и 127 удалений

Просмотреть файл

@ -8,14 +8,14 @@
<TargetFrameworks>netstandard2.0;uap10.0.19041;net6.0-windows10.0.19041.0</TargetFrameworks>
<GenerateLibraryLayout>true</GenerateLibraryLayout>
<EnableDefaultPageItems>false</EnableDefaultPageItems>
<DefineConstants Condition="'$(TargetFramework)' == 'net6.0-windows10.0.19041.0'">WINAPPSDK</DefineConstants>
<DefineConstants Condition="'$(WinUITarget)' == '3.x'">WINAPPSDK</DefineConstants>
</PropertyGroup>
<Target Name="ValidateWinUITarget" Condition="'$(TargetFramework)' == 'netstandard2.0'">
<Message Text="Building $(MSBuildProjectName) using WinUITarget: $(WinUITarget)" />
<Error Condition="'$(WinUITarget)' != '2.x' AND '$(WinUITarget)' != '3.x'"
Text="Property 'WinUITarget' contained an invalid value '$(WinUITarget)'. A value of '2.x' or '3.x' is expected when building an Uno target."/>
</Target>
<ItemGroup>

Просмотреть файл

@ -7,6 +7,7 @@
<TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
<IncludeContentInPack>false</IncludeContentInPack>
<TargetFramework>uap10.0.17763</TargetFramework>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
</PropertyGroup>
<PropertyGroup>

Просмотреть файл

@ -1,5 +1,6 @@
<Project>
<Import Project="../../../../Common/Labs.MultiTarget.props" />
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
<Import Project="$(RepositoryDirectory)\Common\Labs.MultiTarget.props" />
<ItemGroup>
<Page Include="**\*.xaml" Exclude="bin\**\*.xaml;obj\**\*.xaml" />

Просмотреть файл

@ -1,12 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk.Web" TreatAsLocalProperty="TargetFramework">
<Import Project="../../../../Common/Labs.Wasm.props" />
<ItemGroup>
<EmbeddedResource Include="WasmCSS\Fonts.css" />
<EmbeddedResource Include="WasmScripts\AppManifest.js" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\CanvasLayout.Sample\CanvasLayout.Sample.csproj" />
</ItemGroup>
</Project>

Просмотреть файл

@ -1,13 +1,13 @@
<Project Sdk="Microsoft.NET.Sdk.Web" TreatAsLocalProperty="TargetFramework">
<Import Project="../Common/Labs.Wasm.props" />
<Import Project="../../../../Common/Labs.Wasm.props" />
<ItemGroup>
<EmbeddedResource Include="WasmCSS\Fonts.css" />
<EmbeddedResource Include="WasmScripts\AppManifest.js" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<AdditionalProperties>WinUITarget=2.x</AdditionalProperties>
</ProjectReference>
</ItemGroup>

Просмотреть файл

@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk.Web" TreatAsLocalProperty="TargetFramework">
<Import Project="$(RepositoryDirectory)\Common\Labs.Wasm.props" />
<ItemGroup>
<EmbeddedResource Include="WasmCSS\Fonts.css" />
<EmbeddedResource Include="WasmScripts\AppManifest.js" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<AdditionalProperties>WinUITarget=2.x</AdditionalProperties>
</ProjectReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,18 @@
using CommunityToolkit.Labs.Shared;
using System;
using Windows.UI.Xaml;
namespace CanvasLayout.Wasm
{
public class Program
{
private static App _app;
static int Main(string[] args)
{
Windows.UI.Xaml.Application.Start(_ => _app = new App());
return 0;
}
}
}

Просмотреть файл

@ -0,0 +1,27 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:52475/",
"sslPort": 44386
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"CanvasLayout.Wasm": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "https://localhost:5001;http://localhost:5000"
}
}
}

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -0,0 +1,5 @@
var UnoAppManifest = {
splashScreenImage: "Assets/SplashScreen.scale-200.png",
splashScreenColor: "#fff",
displayName: "CommunityToolkit Labs: CanvasLayout Sample"
}

Просмотреть файл

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<!-- Disable compression as we're doing it through pre-compressed files -->
<urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
<staticContent>
<remove fileExtension=".dll" />
<remove fileExtension=".wasm" />
<remove fileExtension=".woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
<mimeMap fileExtension=".clr" mimeType="application/octet-stream" />
<mimeMap fileExtension=".pdb" mimeType="application/octet-stream" />
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff" />
<mimeMap fileExtension=".dat" mimeType="application/octet-stream" />
<!-- Required for PWAs -->
<mimeMap fileExtension=".json" mimeType="application/octet-stream" />
</staticContent>
<rewrite>
<rules>
<rule name="Lookup for pre-compressed brotli file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match brotli requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="br" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_br/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_br/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_br{C:0}" />
</rule>
<rule name="Lookup for pre-compressed gzip file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match gzip requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="gzip" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_gz/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_gz/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_gz{C:0}" />
</rule>
</rules>
<outboundRules>
<rule name="Adjust content encoding for gzip pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_gz/.*$" />
</conditions>
<action type="Rewrite" value="gzip"/>
</rule>
<rule name="Adjust content encoding for brotli pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_br/.*$" />
</conditions>
<action type="Rewrite" value="br"/>
</rule>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>

Просмотреть файл

@ -0,0 +1,18 @@
<Project Sdk="Microsoft.NET.Sdk.Web" TreatAsLocalProperty="TargetFramework">
<Import Project="$(RepositoryDirectory)\Common\Labs.Wasm.props" />
<ItemGroup>
<EmbeddedResource Include="WasmCSS\Fonts.css" />
<EmbeddedResource Include="WasmScripts\AppManifest.js" />
</ItemGroup>
<PropertyGroup>
<DefineConstants>$(DefineConstants);WINAPPSDK;</DefineConstants>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<AdditionalProperties>WinUITarget=3.x</AdditionalProperties>
</ProjectReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,18 @@
using CommunityToolkit.Labs.Shared;
using System;
using Windows.UI.Xaml;
namespace CanvasLayout.Wasm
{
public class Program
{
private static App _app;
static int Main(string[] args)
{
Windows.UI.Xaml.Application.Start(_ => _app = new App());
return 0;
}
}
}

Просмотреть файл

@ -0,0 +1,27 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:52475/",
"sslPort": 44386
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"CanvasLayout.Wasm": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "https://localhost:5001;http://localhost:5000"
}
}
}

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -0,0 +1,5 @@
var UnoAppManifest = {
splashScreenImage: "Assets/SplashScreen.scale-200.png",
splashScreenColor: "#fff",
displayName: "CommunityToolkit Labs: CanvasLayout Sample"
}

Просмотреть файл

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<!-- Disable compression as we're doing it through pre-compressed files -->
<urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
<staticContent>
<remove fileExtension=".dll" />
<remove fileExtension=".wasm" />
<remove fileExtension=".woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
<mimeMap fileExtension=".clr" mimeType="application/octet-stream" />
<mimeMap fileExtension=".pdb" mimeType="application/octet-stream" />
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff" />
<mimeMap fileExtension=".dat" mimeType="application/octet-stream" />
<!-- Required for PWAs -->
<mimeMap fileExtension=".json" mimeType="application/octet-stream" />
</staticContent>
<rewrite>
<rules>
<rule name="Lookup for pre-compressed brotli file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match brotli requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="br" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_br/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_br/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_br{C:0}" />
</rule>
<rule name="Lookup for pre-compressed gzip file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match gzip requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="gzip" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_gz/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_gz/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_gz{C:0}" />
</rule>
</rules>
<outboundRules>
<rule name="Adjust content encoding for gzip pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_gz/.*$" />
</conditions>
<action type="Rewrite" value="gzip"/>
</rule>
<rule name="Adjust content encoding for brotli pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_br/.*$" />
</conditions>
<action type="Rewrite" value="br"/>
</rule>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>

Просмотреть файл

@ -1,5 +1,6 @@
<Project>
<Import Project="../../../Common/Labs.MultiTarget.props" />
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
<Import Project="$(RepositoryDirectory)\Common\Labs.MultiTarget.props" />
<PropertyGroup>
<RootNamespace>CommunityToolkit.Labs.Uwp</RootNamespace>

Просмотреть файл

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Build.props', '$(MSBuildThisFileDirectory)../'))" />
<Import Project="$(RepositoryDirectory)\Common\Labs.Uwp.props" />
<PropertyGroup>
<RootNamespace>CommunityToolkit.Labs.Uwp</RootNamespace>
<AssemblyName>CommunityToolkit.Labs.Uwp</AssemblyName>
<ProjectGuid>{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}</ProjectGuid>
</PropertyGroup>
<ItemGroup>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<Content Include="Properties\Default.rd.xml" />
</ItemGroup>
<ItemGroup>
<AppxManifest Include="Package.appxmanifest">
<SubType>Designer</SubType>
</AppxManifest>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<Project>{a14189c0-39a8-4fbe-bf86-a78a94654c48}</Project>
<Name>CanvasLayout.Sample</Name>
</ProjectReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
IgnorableNamespaces="uap mp">
<Identity
Name="CommunityToolkit.Labs.Samples.Uwp"
Publisher="CN=CommunityToolkit"
Version="1.0.0.0" />
<mp:PhoneIdentity PhoneProductId="0b7f1f39-b49e-4d5a-b495-13c60832c27f" PhonePublisherId="00000000-0000-0000-0000-000000000000"/>
<Properties>
<DisplayName>CommunityToolkit Labs Sample App</DisplayName>
<PublisherDisplayName>CommunityToolkit</PublisherDisplayName>
<Logo>Assets\StoreLogo.png</Logo>
</Properties>
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />
</Dependencies>
<Resources>
<Resource Language="x-generate"/>
</Resources>
<Applications>
<Application Id="App"
Executable="$targetnametoken$.exe"
EntryPoint="CommunityToolkit.Labs.Shared.App">
<uap:VisualElements
DisplayName="CommunityToolkit Labs Sample App"
Square150x150Logo="Assets\Square150x150Logo.png"
Square44x44Logo="Assets\Square44x44Logo.png"
Description="CommunityToolkit Labs Samples"
BackgroundColor="transparent">
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png"/>
<uap:SplashScreen Image="Assets\SplashScreen.png" />
</uap:VisualElements>
</Application>
</Applications>
<Capabilities>
<Capability Name="internetClient" />
</Capabilities>
</Package>

Просмотреть файл

@ -0,0 +1,29 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("CommunityToolkit.Labs")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("CommunityToolkit.Labs")]
[assembly: AssemblyCopyright("Copyright © 2021")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
[assembly: ComVisible(false)]

Просмотреть файл

@ -0,0 +1,31 @@
<!--
This file contains Runtime Directives used by .NET Native. The defaults here are suitable for most
developers. However, you can modify these parameters to modify the behavior of the .NET Native
optimizer.
Runtime Directives are documented at https://go.microsoft.com/fwlink/?LinkID=391919
To fully enable reflection for App1.MyClass and all of its public/private members
<Type Name="App1.MyClass" Dynamic="Required All"/>
To enable dynamic creation of the specific instantiation of AppClass<T> over System.Int32
<TypeInstantiation Name="App1.AppClass" Arguments="System.Int32" Activate="Required Public" />
Using the Namespace directive to apply reflection policy to all the types in a particular namespace
<Namespace Name="DataClasses.ViewModels" Serialize="All" />
-->
<Directives xmlns="http://schemas.microsoft.com/netfx/2013/01/metadata">
<Application>
<!--
An Assembly element with Name="*Application*" applies to all assemblies in
the application package. The asterisks are not wildcards.
-->
<Assembly Name="*Application*" Dynamic="Required All" />
<!-- Add your application specific runtime directives here. -->
</Application>
</Directives>

Просмотреть файл

@ -0,0 +1,14 @@
<Project Sdk="Microsoft.NET.Sdk.Web" TreatAsLocalProperty="TargetFramework">
<Import Project="$(RepositoryDirectory)/Common/Labs.Wasm.props" />
<ItemGroup>
<EmbeddedResource Include="WasmCSS\Fonts.css" />
<EmbeddedResource Include="WasmScripts\AppManifest.js" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<AdditionalProperties>WinUITarget=2.x</AdditionalProperties>
</ProjectReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,18 @@
using CommunityToolkit.Labs.Shared;
using System;
using Windows.UI.Xaml;
namespace CommunityToolkit.Labs.Wasm
{
public class Program
{
private static App _app;
static int Main(string[] args)
{
Windows.UI.Xaml.Application.Start(_ => _app = new App());
return 0;
}
}
}

Просмотреть файл

@ -0,0 +1,27 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:52475/",
"sslPort": 44386
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"CommunityToolkit.Labs.Wasm": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "https://localhost:5001;http://localhost:5000"
}
}
}

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -0,0 +1,5 @@
var UnoAppManifest = {
splashScreenImage: "Assets/SplashScreen.scale-200.png",
splashScreenColor: "#fff",
displayName: "CommunityToolkit Labs Sample App"
}

Просмотреть файл

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<!-- Disable compression as we're doing it through pre-compressed files -->
<urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
<staticContent>
<remove fileExtension=".dll" />
<remove fileExtension=".wasm" />
<remove fileExtension=".woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
<mimeMap fileExtension=".clr" mimeType="application/octet-stream" />
<mimeMap fileExtension=".pdb" mimeType="application/octet-stream" />
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff" />
<mimeMap fileExtension=".dat" mimeType="application/octet-stream" />
<!-- Required for PWAs -->
<mimeMap fileExtension=".json" mimeType="application/octet-stream" />
</staticContent>
<rewrite>
<rules>
<rule name="Lookup for pre-compressed brotli file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match brotli requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="br" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_br/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_br/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_br{C:0}" />
</rule>
<rule name="Lookup for pre-compressed gzip file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match gzip requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="gzip" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_gz/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_gz/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_gz{C:0}" />
</rule>
</rules>
<outboundRules>
<rule name="Adjust content encoding for gzip pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_gz/.*$" />
</conditions>
<action type="Rewrite" value="gzip"/>
</rule>
<rule name="Adjust content encoding for brotli pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_br/.*$" />
</conditions>
<action type="Rewrite" value="br"/>
</rule>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>

Просмотреть файл

@ -0,0 +1,30 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<RootNamepace>CommunityToolkit.Labs.WinAppSdk</RootNamepace>
<ApplicationManifest>app.manifest</ApplicationManifest>
</PropertyGroup>
<Import Project="$(RepositoryDirectory)/Common/Labs.WinAppSdk.props" />
<ItemGroup>
<PackageReference Include="Microsoft.WindowsAppSDK" Version="1.0.0" />
<PackageReference Include="Microsoft.Windows.SDK.BuildTools" Version="10.0.22000.194" />
<Manifest Include="$(ApplicationManifest)" />
</ItemGroup>
<!-- Defining the "Msix" ProjectCapability here allows the Single-project MSIX Packaging
Tools extension to be activated for this project even if the Windows App SDK Nuget
package has not yet been restored -->
<ItemGroup Condition="'$(DisableMsixProjectCapabilityAddedByProject)'!='true' and '$(EnablePreviewMsixTooling)'=='true'">
<ProjectCapability Include="Msix" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="$(RepositoryDirectory)\Common\CommunityToolkit.Labs.Core\CommunityToolkit.Labs.Core.csproj" SetTargetFramework="TargetFramework=netstandard2.0">
<Project>{210476d6-42cc-4d01-b027-478145bea8fe}</Project>
<Name>CommunityToolkit.Labs.Core</Name>
</ProjectReference>
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj" />
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,49 @@
<?xml version="1.0" encoding="utf-8"?>
<Package
xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10"
xmlns:uap="http://schemas.microsoft.com/appx/manifest/uap/windows10"
xmlns:rescap="http://schemas.microsoft.com/appx/manifest/foundation/windows10/restrictedcapabilities"
IgnorableNamespaces="uap rescap">
<Identity
Name="CommunityToolkit.Labs.Samples.WinAppSdk"
Publisher="CN=CommunityToolkit"
Version="1.0.0.0" />
<Properties>
<DisplayName>CommunityToolkit Labs Sample App</DisplayName>
<PublisherDisplayName>CommunityToolkit</PublisherDisplayName>
<Logo>Assets\StoreLogo.png</Logo>
</Properties>
<Dependencies>
<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.17763.0" MaxVersionTested="10.0.19041.0" />
<TargetDeviceFamily Name="Windows.Desktop" MinVersion="10.0.17763.0" MaxVersionTested="10.0.19041.0" />
</Dependencies>
<Resources>
<Resource Language="x-generate"/>
</Resources>
<Applications>
<Application Id="App"
Executable="$targetnametoken$.exe"
EntryPoint="$targetentrypoint$">
<uap:VisualElements
DisplayName="CommunityToolkit Labs Sample App"
Square150x150Logo="Assets\Square150x150Logo.png"
Square44x44Logo="Assets\Square44x44Logo.png"
Description="CommunityToolkit Labs Samples"
BackgroundColor="transparent">
<uap:DefaultTile Wide310x150Logo="Assets\Wide310x150Logo.png"/>
<uap:SplashScreen Image="Assets\SplashScreen.png" />
</uap:VisualElements>
</Application>
</Applications>
<Capabilities>
<rescap:Capability Name="runFullTrust" />
<Capability Name="internetClient" />
</Capabilities>
</Package>

Просмотреть файл

@ -0,0 +1,10 @@
{
"profiles": {
"Local machine (Packaged)": {
"commandName": "MsixPackage"
},
"Local machine (Unpackaged)": {
"commandName": "Project"
}
}
}

Просмотреть файл

@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="1.0.0.0" name="CommunityToolkit.Labs.Shared.app"/>
<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<!-- The combination of below two tags have the following effect:
1) Per-Monitor for >= Windows 10 Anniversary Update
2) System < Windows 10 Anniversary Update
-->
<dpiAware xmlns="http://schemas.microsoft.com/SMI/2005/WindowsSettings">true/PM</dpiAware>
<dpiAwareness xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">PerMonitorV2, PerMonitor</dpiAwareness>
</windowsSettings>
</application>
</assembly>

Просмотреть файл

@ -0,0 +1,18 @@
<Project Sdk="Microsoft.NET.Sdk.Web" TreatAsLocalProperty="TargetFramework">
<Import Project="$(RepositoryDirectory)\Common\Labs.Wasm.props" />
<ItemGroup>
<EmbeddedResource Include="WasmCSS\Fonts.css" />
<EmbeddedResource Include="WasmScripts\AppManifest.js" />
</ItemGroup>
<PropertyGroup>
<DefineConstants>$(DefineConstants);WINAPPSDK;</DefineConstants>
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="$(RepositoryDirectory)\Labs\CanvasLayout\samples\CanvasLayout.Sample\CanvasLayout.Sample.csproj">
<AdditionalProperties>WinUITarget=3.x</AdditionalProperties>
</ProjectReference>
</ItemGroup>
</Project>

Просмотреть файл

@ -0,0 +1,18 @@
using CommunityToolkit.Labs.Shared;
using System;
using Windows.UI.Xaml;
namespace CommunityToolkit.Labs.Wasm
{
public class Program
{
private static App _app;
static int Main(string[] args)
{
Windows.UI.Xaml.Application.Start(_ => _app = new App());
return 0;
}
}
}

Просмотреть файл

@ -0,0 +1,27 @@
{
"iisSettings": {
"windowsAuthentication": false,
"anonymousAuthentication": true,
"iisExpress": {
"applicationUrl": "http://localhost:52475/",
"sslPort": 44386
}
},
"profiles": {
"IIS Express": {
"commandName": "IISExpress",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
}
},
"CommunityToolkit.Labs.Wasm": {
"commandName": "Project",
"launchBrowser": true,
"environmentVariables": {
"ASPNETCORE_ENVIRONMENT": "Development"
},
"applicationUrl": "https://localhost:5001;http://localhost:5000"
}
}
}

Различия файлов скрыты, потому что одна или несколько строк слишком длинны

Просмотреть файл

@ -0,0 +1,5 @@
var UnoAppManifest = {
splashScreenImage: "Assets/SplashScreen.scale-200.png",
splashScreenColor: "#fff",
displayName: "CommunityToolkit Labs Sample App"
}

Просмотреть файл

@ -0,0 +1,78 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<system.web>
<customErrors mode="Off"/>
</system.web>
<system.webServer>
<!-- Disable compression as we're doing it through pre-compressed files -->
<urlCompression doStaticCompression="false" doDynamicCompression="false" dynamicCompressionBeforeCache="false" />
<staticContent>
<remove fileExtension=".dll" />
<remove fileExtension=".wasm" />
<remove fileExtension=".woff" />
<remove fileExtension=".woff2" />
<mimeMap fileExtension=".wasm" mimeType="application/wasm" />
<mimeMap fileExtension=".clr" mimeType="application/octet-stream" />
<mimeMap fileExtension=".pdb" mimeType="application/octet-stream" />
<mimeMap fileExtension=".woff" mimeType="application/font-woff" />
<mimeMap fileExtension=".woff2" mimeType="application/font-woff" />
<mimeMap fileExtension=".dat" mimeType="application/octet-stream" />
<!-- Required for PWAs -->
<mimeMap fileExtension=".json" mimeType="application/octet-stream" />
</staticContent>
<rewrite>
<rules>
<rule name="Lookup for pre-compressed brotli file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match brotli requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="br" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_br/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_br/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_br{C:0}" />
</rule>
<rule name="Lookup for pre-compressed gzip file" stopProcessing="true">
<match url="(.*)$"/>
<conditions>
<!-- Match gzip requests -->
<add input="{HTTP_ACCEPT_ENCODING}" pattern="gzip" />
<!-- Match all but pre-compressed files -->
<add input="{REQUEST_URI}" pattern="^(?!/_compressed_gz/)(.*)$" />
<!-- Check if the pre-compressed file exists on the disk -->
<add input="{DOCUMENT_ROOT}/_compressed_gz/{C:0}" matchType="IsFile" negate="false" />
</conditions>
<action type="Rewrite" url="/_compressed_gz{C:0}" />
</rule>
</rules>
<outboundRules>
<rule name="Adjust content encoding for gzip pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_gz/.*$" />
</conditions>
<action type="Rewrite" value="gzip"/>
</rule>
<rule name="Adjust content encoding for brotli pre-compressed files" enabled="true" stopProcessing="true">
<match serverVariable="RESPONSE_CONTENT_ENCODING" pattern="" />
<conditions>
<add input="{REQUEST_URI}" pattern="/_compressed_br/.*$" />
</conditions>
<action type="Rewrite" value="br"/>
</rule>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>

Просмотреть файл

@ -14,10 +14,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Samples", "Samples", "{9898
EndProject
Project("{D954291E-2A0B-460D-934E-DC6B0785DB48}") = "CommunityToolkit.Labs.Shared", "Common\CommunityToolkit.Labs.Shared\CommunityToolkit.Labs.Shared.shproj", "{9503C27C-55A8-4B66-AA7B-14EFDB940B13}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Labs.Wasm", "CommunityToolkit.Labs.Wasm\CommunityToolkit.Labs.Wasm.csproj", "{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CommunityToolkit.Labs.Uwp", "CommunityToolkit.Labs.Uwp\CommunityToolkit.Labs.Uwp.csproj", "{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "CanvasLayout", "CanvasLayout", "{86E3CC4D-1359-4249-9C5B-C193BF65633D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CanvasLayout.Uwp", "Labs\CanvasLayout\samples\CanvasLayout.Uwp\CanvasLayout.Uwp.csproj", "{3BAAC2DA-7124-460E-A9A9-13138843CD57}"
@ -28,16 +24,30 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CanvasLayout.Sample", "Labs
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Library", "Library", "{EDD2FCF0-74FE-4AB9-B40A-7B2A4E89D59C}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CanvasLayout.Wasm", "Labs\CanvasLayout\samples\CanvasLayout.Wasm\CanvasLayout.Wasm.csproj", "{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Shared", "Shared", "{09003B35-7A35-4BD1-9A26-5CFD02AB88DD}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Labs.Core", "Common\CommunityToolkit.Labs.Core\CommunityToolkit.Labs.Core.csproj", "{210476D6-42CC-4D01-B027-478145BEA8FE}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Labs.WinAppSdk", "CommunityToolkit.Labs.WinAppSdk\CommunityToolkit.Labs.WinAppSdk.csproj", "{05AE3090-DAEE-4629-856B-120034CC4B1A}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CanvasLayout.WinAppSdk", "Labs\CanvasLayout\samples\CanvasLayout.WinAppSdk\CanvasLayout.WinAppSdk.csproj", "{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "xPlatforms", "xPlatforms", "{B8975283-564F-4E97-84D0-166EC54E2D25}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WinUI 3", "WinUI 3", "{B5A77DF7-7C46-40CE-BE12-CA05CA8C1A7A}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "WinUI 2", "WinUI 2", "{5B673E54-4828-4D8F-AEED-76704AD86352}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CommunityToolkit.Labs.Uwp", "Platforms\WinUI2\CommunityToolkit.Labs.Uwp\CommunityToolkit.Labs.Uwp.csproj", "{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Labs.WinAppSdk", "Platforms\WinUI3\CommunityToolkit.Labs.WinAppSdk\CommunityToolkit.Labs.WinAppSdk.csproj", "{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CanvasLayout.WinUI2.Wasm", "Labs\CanvasLayout\samples\CanvasLayout.WinUI2.Wasm\CanvasLayout.WinUI2.Wasm.csproj", "{E7C21BF4-E040-436B-BB9A-B3B1C196B045}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CanvasLayout.WinUI3.Wasm", "Labs\CanvasLayout\samples\CanvasLayout.WinUI3.Wasm\CanvasLayout.WinUI3.Wasm.csproj", "{B6A9EDE9-997E-44EB-A086-68737CA03592}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Labs.WinUI2.Wasm", "Platforms\WinUI2\CommunityToolkit.Labs.WinUI2.Wasm\CommunityToolkit.Labs.WinUI2.Wasm.csproj", "{94036C39-948A-49DC-9826-9CFD3E077168}"
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "CommunityToolkit.Labs.WinUI3.Wasm", "Platforms\WinUI3\CommunityToolkit.Labs.WinUI3.Wasm\CommunityToolkit.Labs.WinUI3.Wasm.csproj", "{B2543E09-84DE-4075-92D8-884A3F7D8025}"
EndProject
Global
GlobalSection(SharedMSBuildProjectFiles) = preSolution
Common\CommunityToolkit.Labs.Shared\CommunityToolkit.Labs.Shared.projitems*{3baac2da-7124-460e-a9a9-13138843cd57}*SharedItemsImports = 4
@ -57,55 +67,6 @@ Global
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|ARM.ActiveCfg = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|ARM.Build.0 = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|ARM64.Build.0 = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|x64.ActiveCfg = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|x64.Build.0 = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|x86.ActiveCfg = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Debug|x86.Build.0 = Debug|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|Any CPU.Build.0 = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|ARM.ActiveCfg = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|ARM.Build.0 = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|ARM64.ActiveCfg = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|ARM64.Build.0 = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|x64.ActiveCfg = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|x64.Build.0 = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|x86.ActiveCfg = Release|Any CPU
{3EBB8552-CE39-4EDC-9ACB-7B4871582FBB}.Release|x86.Build.0 = Release|Any CPU
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|Any CPU.ActiveCfg = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|Any CPU.Build.0 = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|Any CPU.Deploy.0 = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM.ActiveCfg = Debug|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM.Build.0 = Debug|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM.Deploy.0 = Debug|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM64.ActiveCfg = Debug|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM64.Build.0 = Debug|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM64.Deploy.0 = Debug|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x64.ActiveCfg = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x64.Build.0 = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x64.Deploy.0 = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x86.ActiveCfg = Debug|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x86.Build.0 = Debug|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x86.Deploy.0 = Debug|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|Any CPU.ActiveCfg = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|Any CPU.Build.0 = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM.ActiveCfg = Release|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM.Build.0 = Release|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM.Deploy.0 = Release|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM64.ActiveCfg = Release|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM64.Build.0 = Release|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM64.Deploy.0 = Release|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x64.ActiveCfg = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x64.Build.0 = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x64.Deploy.0 = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x86.ActiveCfg = Release|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x86.Build.0 = Release|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x86.Deploy.0 = Release|x86
{3BAAC2DA-7124-460E-A9A9-13138843CD57}.Debug|Any CPU.ActiveCfg = Debug|x64
{3BAAC2DA-7124-460E-A9A9-13138843CD57}.Debug|Any CPU.Build.0 = Debug|x64
{3BAAC2DA-7124-460E-A9A9-13138843CD57}.Debug|Any CPU.Deploy.0 = Debug|x64
@ -175,26 +136,6 @@ Global
{A14189C0-39A8-4FBE-BF86-A78A94654C48}.Release|x64.Build.0 = Release|Any CPU
{A14189C0-39A8-4FBE-BF86-A78A94654C48}.Release|x86.ActiveCfg = Release|Any CPU
{A14189C0-39A8-4FBE-BF86-A78A94654C48}.Release|x86.Build.0 = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|ARM.ActiveCfg = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|ARM.Build.0 = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|ARM64.Build.0 = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|x64.ActiveCfg = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|x64.Build.0 = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|x86.ActiveCfg = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Debug|x86.Build.0 = Debug|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|Any CPU.Build.0 = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|ARM.ActiveCfg = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|ARM.Build.0 = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|ARM64.ActiveCfg = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|ARM64.Build.0 = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|x64.ActiveCfg = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|x64.Build.0 = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|x86.ActiveCfg = Release|Any CPU
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2}.Release|x86.Build.0 = Release|Any CPU
{210476D6-42CC-4D01-B027-478145BEA8FE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{210476D6-42CC-4D01-B027-478145BEA8FE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{210476D6-42CC-4D01-B027-478145BEA8FE}.Debug|ARM.ActiveCfg = Debug|Any CPU
@ -215,35 +156,6 @@ Global
{210476D6-42CC-4D01-B027-478145BEA8FE}.Release|x64.Build.0 = Release|Any CPU
{210476D6-42CC-4D01-B027-478145BEA8FE}.Release|x86.ActiveCfg = Release|Any CPU
{210476D6-42CC-4D01-B027-478145BEA8FE}.Release|x86.Build.0 = Release|Any CPU
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|Any CPU.ActiveCfg = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|Any CPU.Build.0 = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|Any CPU.Deploy.0 = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|ARM.ActiveCfg = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|ARM.Build.0 = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|ARM.Deploy.0 = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|ARM64.ActiveCfg = Debug|arm64
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|ARM64.Build.0 = Debug|arm64
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|ARM64.Deploy.0 = Debug|arm64
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|x64.ActiveCfg = Debug|x64
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|x64.Build.0 = Debug|x64
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|x64.Deploy.0 = Debug|x64
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|x86.ActiveCfg = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|x86.Build.0 = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Debug|x86.Deploy.0 = Debug|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|Any CPU.ActiveCfg = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|Any CPU.Build.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|ARM.ActiveCfg = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|ARM.Build.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|ARM.Deploy.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|ARM64.ActiveCfg = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|ARM64.Build.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|ARM64.Deploy.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|x64.ActiveCfg = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|x64.Build.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|x64.Deploy.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|x86.ActiveCfg = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|x86.Build.0 = Release|x86
{05AE3090-DAEE-4629-856B-120034CC4B1A}.Release|x86.Deploy.0 = Release|x86
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}.Debug|Any CPU.ActiveCfg = Debug|x64
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}.Debug|Any CPU.Build.0 = Debug|x64
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}.Debug|Any CPU.Deploy.0 = Debug|x64
@ -274,6 +186,136 @@ Global
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}.Release|x86.ActiveCfg = Release|x86
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}.Release|x86.Build.0 = Release|x86
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B}.Release|x86.Deploy.0 = Release|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|Any CPU.ActiveCfg = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|Any CPU.Build.0 = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM.ActiveCfg = Debug|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM.Build.0 = Debug|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM64.ActiveCfg = Debug|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|ARM64.Build.0 = Debug|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x64.ActiveCfg = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x64.Build.0 = Debug|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x86.ActiveCfg = Debug|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Debug|x86.Build.0 = Debug|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|Any CPU.ActiveCfg = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|Any CPU.Build.0 = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM.ActiveCfg = Release|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM.Build.0 = Release|ARM
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM64.ActiveCfg = Release|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|ARM64.Build.0 = Release|ARM64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x64.ActiveCfg = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x64.Build.0 = Release|x64
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x86.ActiveCfg = Release|x86
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7}.Release|x86.Build.0 = Release|x86
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|Any CPU.ActiveCfg = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|Any CPU.Build.0 = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|Any CPU.Deploy.0 = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|ARM.ActiveCfg = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|ARM.Build.0 = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|ARM.Deploy.0 = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|ARM64.ActiveCfg = Debug|arm64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|ARM64.Build.0 = Debug|arm64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|ARM64.Deploy.0 = Debug|arm64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|x64.ActiveCfg = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|x64.Build.0 = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|x64.Deploy.0 = Debug|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|x86.ActiveCfg = Debug|x86
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|x86.Build.0 = Debug|x86
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Debug|x86.Deploy.0 = Debug|x86
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|Any CPU.ActiveCfg = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|Any CPU.Build.0 = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|Any CPU.Deploy.0 = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|ARM.ActiveCfg = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|ARM.Build.0 = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|ARM.Deploy.0 = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|ARM64.ActiveCfg = Release|arm64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|ARM64.Build.0 = Release|arm64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|ARM64.Deploy.0 = Release|arm64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|x64.ActiveCfg = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|x64.Build.0 = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|x64.Deploy.0 = Release|x64
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|x86.ActiveCfg = Release|x86
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|x86.Build.0 = Release|x86
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B}.Release|x86.Deploy.0 = Release|x86
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|Any CPU.Build.0 = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|ARM.ActiveCfg = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|ARM.Build.0 = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|ARM64.Build.0 = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|x64.ActiveCfg = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|x64.Build.0 = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|x86.ActiveCfg = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Debug|x86.Build.0 = Debug|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|Any CPU.ActiveCfg = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|Any CPU.Build.0 = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|ARM.ActiveCfg = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|ARM.Build.0 = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|ARM64.ActiveCfg = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|ARM64.Build.0 = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|x64.ActiveCfg = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|x64.Build.0 = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|x86.ActiveCfg = Release|Any CPU
{E7C21BF4-E040-436B-BB9A-B3B1C196B045}.Release|x86.Build.0 = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|ARM.ActiveCfg = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|ARM.Build.0 = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|ARM64.Build.0 = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|x64.ActiveCfg = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|x64.Build.0 = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|x86.ActiveCfg = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Debug|x86.Build.0 = Debug|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|Any CPU.Build.0 = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|ARM.ActiveCfg = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|ARM.Build.0 = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|ARM64.ActiveCfg = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|ARM64.Build.0 = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|x64.ActiveCfg = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|x64.Build.0 = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|x86.ActiveCfg = Release|Any CPU
{B6A9EDE9-997E-44EB-A086-68737CA03592}.Release|x86.Build.0 = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|Any CPU.Build.0 = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|ARM.ActiveCfg = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|ARM.Build.0 = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|ARM64.Build.0 = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|x64.ActiveCfg = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|x64.Build.0 = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|x86.ActiveCfg = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Debug|x86.Build.0 = Debug|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|Any CPU.ActiveCfg = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|Any CPU.Build.0 = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|ARM.ActiveCfg = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|ARM.Build.0 = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|ARM64.ActiveCfg = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|ARM64.Build.0 = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|x64.ActiveCfg = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|x64.Build.0 = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|x86.ActiveCfg = Release|Any CPU
{94036C39-948A-49DC-9826-9CFD3E077168}.Release|x86.Build.0 = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|Any CPU.Build.0 = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|ARM.ActiveCfg = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|ARM.Build.0 = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|ARM64.ActiveCfg = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|ARM64.Build.0 = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|x64.ActiveCfg = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|x64.Build.0 = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|x86.ActiveCfg = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Debug|x86.Build.0 = Debug|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|Any CPU.ActiveCfg = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|Any CPU.Build.0 = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|ARM.ActiveCfg = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|ARM.Build.0 = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|ARM64.ActiveCfg = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|ARM64.Build.0 = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|x64.ActiveCfg = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|x64.Build.0 = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|x86.ActiveCfg = Release|Any CPU
{B2543E09-84DE-4075-92D8-884A3F7D8025}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -284,9 +326,16 @@ Global
{3BAAC2DA-7124-460E-A9A9-13138843CD57} = {86E3CC4D-1359-4249-9C5B-C193BF65633D}
{FE19FFF0-6AB6-4FC7-BFDF-B6499153DCD5} = {EDD2FCF0-74FE-4AB9-B40A-7B2A4E89D59C}
{A14189C0-39A8-4FBE-BF86-A78A94654C48} = {86E3CC4D-1359-4249-9C5B-C193BF65633D}
{E8E5AAAA-B15B-4B35-8673-118F6417B6F2} = {86E3CC4D-1359-4249-9C5B-C193BF65633D}
{210476D6-42CC-4D01-B027-478145BEA8FE} = {09003B35-7A35-4BD1-9A26-5CFD02AB88DD}
{3150A3C5-0DC3-4D6D-9598-1F767A7F323B} = {86E3CC4D-1359-4249-9C5B-C193BF65633D}
{B5A77DF7-7C46-40CE-BE12-CA05CA8C1A7A} = {B8975283-564F-4E97-84D0-166EC54E2D25}
{5B673E54-4828-4D8F-AEED-76704AD86352} = {B8975283-564F-4E97-84D0-166EC54E2D25}
{B3D6DF0B-13DB-493E-9D1A-56343EFEDEA7} = {5B673E54-4828-4D8F-AEED-76704AD86352}
{A183FED9-E4A8-4EC6-BA51-AE5CF5902A8B} = {B5A77DF7-7C46-40CE-BE12-CA05CA8C1A7A}
{E7C21BF4-E040-436B-BB9A-B3B1C196B045} = {86E3CC4D-1359-4249-9C5B-C193BF65633D}
{B6A9EDE9-997E-44EB-A086-68737CA03592} = {86E3CC4D-1359-4249-9C5B-C193BF65633D}
{94036C39-948A-49DC-9826-9CFD3E077168} = {5B673E54-4828-4D8F-AEED-76704AD86352}
{B2543E09-84DE-4075-92D8-884A3F7D8025} = {B5A77DF7-7C46-40CE-BE12-CA05CA8C1A7A}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {1F0A4823-84EF-41AA-BBF9-A07B38DDC555}