diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e4dda88..36e7ce7 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -34,6 +34,15 @@ jobs:
run: dotnet test --no-build --verbosity normal
- name: Pack
run: dotnet pack -c Release /p:BuildNumber=${{ github.run_number }}
+ - name: Test Template
+ run: |
+ dotnet new install ./artifacts/BytecodeAlliance.Componentize.DotNet.Templates.*.nupkg
+ mkdir ${{ runner.temp }}/projects
+ pushd ${{ runner.temp }}/projects
+ dotnet new componentize.wasi.cli -o test
+ cd test
+ dotnet build
+ popd
# must use windows to generate package https://github.com/bytecodealliance/componentize-dotnet/issues/41
# only need one package published https://github.com/actions/upload-artifact?tab=readme-ov-file#not-uploading-to-the-same-artifact
- name: Upload artifacts
diff --git a/templates/BytecodeAlliance.Componentize.DotNet.Templates.csproj b/templates/BytecodeAlliance.Componentize.DotNet.Templates.csproj
new file mode 100644
index 0000000..72ad77f
--- /dev/null
+++ b/templates/BytecodeAlliance.Componentize.DotNet.Templates.csproj
@@ -0,0 +1,45 @@
+
+
+
+ BytecodeAlliance.Componentize.DotNet.Templates
+ Templates for Componentize-dotnet
+ Bytecode Alliance Developers
+ Provides templates for Templates for Componentize-dotnet
+ Apache-2.0 WITH LLVM-exception
+ webassembly, .net, wasm
+ https://github.com/bytecodealliance/componentize-dotnet
+ https://github.com/bytecodealliance/componentize-dotnet
+ true
+ https://github.com/bytecodealliance/componentize-dotnet/releases/tag/$(PackageVersion)
+
+
+
+
+ Template
+ net9.0
+ true
+ false
+ content
+ $(NoWarn);NU5128
+ true
+ README.md
+
+
+
+ false
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/templates/content/wasi-cli/.template.config/template.json b/templates/content/wasi-cli/.template.config/template.json
new file mode 100644
index 0000000..18386a5
--- /dev/null
+++ b/templates/content/wasi-cli/.template.config/template.json
@@ -0,0 +1,36 @@
+{
+ "$schema": "http://json.schemastore.org/template",
+ "author": "Bytecode Alliance Developers",
+ "classifications": [
+ "wasi",
+ "wasm",
+ "Console"
+ ],
+ "identity": "BytecodeAlliance.Componentize.DotNet.Templates.Console",
+ "name": "Componentize-dotnet wasi console template",
+ "shortName": "componentize.wasi.cli",
+ "sourceName": "wasi-cli",
+ "tags": {
+ "language": "C#",
+ "type": "project"
+ },
+ "symbols": {
+ "platform": {
+ "type": "bind",
+ "binding": "env:OS",
+ "defaultValue": "linux"
+ }
+ },
+ "postActions": [
+ {
+ "description": "Welcome to Componetize dotnet",
+ "manualInstructions": [
+ {
+ "text": "To get started run `dotnet build` inside your new project. Learn more at https://github.com/bytecodealliance/componentize-dotnet."
+ }
+ ],
+ "actionId": "AC1156F7-BB77-4DB8-B28F-24EEBCCA1E5C",
+ "continueOnError": true
+ }
+ ]
+}
\ No newline at end of file
diff --git a/templates/content/wasi-cli/Program.cs b/templates/content/wasi-cli/Program.cs
new file mode 100644
index 0000000..408632e
--- /dev/null
+++ b/templates/content/wasi-cli/Program.cs
@@ -0,0 +1,2 @@
+// See https://aka.ms/new-console-template for more information
+Console.WriteLine("Hello, world from compontize-dotnet!");
diff --git a/templates/content/wasi-cli/nuget.config b/templates/content/wasi-cli/nuget.config
new file mode 100644
index 0000000..caa4ee8
--- /dev/null
+++ b/templates/content/wasi-cli/nuget.config
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
+
diff --git a/templates/content/wasi-cli/wasi-cli.csproj b/templates/content/wasi-cli/wasi-cli.csproj
new file mode 100644
index 0000000..51af1c4
--- /dev/null
+++ b/templates/content/wasi-cli/wasi-cli.csproj
@@ -0,0 +1,21 @@
+
+
+
+ Exe
+ net9.0
+ wasi_cli
+ enable
+ enable
+ wasi-wasm
+ false
+ true
+ true
+ true
+
+
+
+
+
+
+
+
diff --git a/wasm-component-sdk.sln b/wasm-component-sdk.sln
index 0cc2361..ec68827 100644
--- a/wasm-component-sdk.sln
+++ b/wasm-component-sdk.sln
@@ -48,56 +48,164 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "E2ETest", "E2ETest", "{B3F6
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "PackageTest", "test\E2ETest\PackageTest\PackageTest.csproj", "{777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "templates", "templates", "{808186BE-9BD0-DD1D-D574-36EEAD1E7F8F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BytecodeAlliance.Componentize.DotNet.Templates", "templates\BytecodeAlliance.Componentize.DotNet.Templates.csproj", "{16F33B39-83C5-4E6C-89D3-CF2B9385AC28}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
+ Debug|x64 = Debug|x64
+ Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
+ Release|x64 = Release|x64
+ Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{FB68D5A1-89AA-47AB-B397-F93FF529995C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{FB68D5A1-89AA-47AB-B397-F93FF529995C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Debug|x64.Build.0 = Debug|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Debug|x86.Build.0 = Debug|Any CPU
{FB68D5A1-89AA-47AB-B397-F93FF529995C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{FB68D5A1-89AA-47AB-B397-F93FF529995C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Release|x64.ActiveCfg = Release|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Release|x64.Build.0 = Release|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Release|x86.ActiveCfg = Release|Any CPU
+ {FB68D5A1-89AA-47AB-B397-F93FF529995C}.Release|x86.Build.0 = Release|Any CPU
{7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Debug|x64.Build.0 = Debug|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Debug|x86.Build.0 = Debug|Any CPU
{7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Release|Any CPU.Build.0 = Release|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Release|x64.ActiveCfg = Release|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Release|x64.Build.0 = Release|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Release|x86.ActiveCfg = Release|Any CPU
+ {7D4CD1D4-4DD2-418F-9E46-FF4140293B63}.Release|x86.Build.0 = Release|Any CPU
{5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Debug|x64.Build.0 = Debug|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Debug|x86.Build.0 = Debug|Any CPU
{5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Release|Any CPU.ActiveCfg = Release|Any CPU
{5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Release|x64.ActiveCfg = Release|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Release|x64.Build.0 = Release|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Release|x86.ActiveCfg = Release|Any CPU
+ {5A906283-BA3B-4335-A5FA-0DFDEB771D84}.Release|x86.Build.0 = Release|Any CPU
{09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Debug|x64.Build.0 = Debug|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Debug|x86.Build.0 = Debug|Any CPU
{09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Release|Any CPU.ActiveCfg = Release|Any CPU
{09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Release|Any CPU.Build.0 = Release|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Release|x64.ActiveCfg = Release|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Release|x64.Build.0 = Release|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Release|x86.ActiveCfg = Release|Any CPU
+ {09E495AF-959E-4B3C-90FC-7E6CD5869F27}.Release|x86.Build.0 = Release|Any CPU
{D6691373-08CB-466F-A230-A038BD82D6CD}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D6691373-08CB-466F-A230-A038BD82D6CD}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Debug|x64.Build.0 = Debug|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Debug|x86.Build.0 = Debug|Any CPU
{D6691373-08CB-466F-A230-A038BD82D6CD}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D6691373-08CB-466F-A230-A038BD82D6CD}.Release|Any CPU.Build.0 = Release|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Release|x64.ActiveCfg = Release|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Release|x64.Build.0 = Release|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Release|x86.ActiveCfg = Release|Any CPU
+ {D6691373-08CB-466F-A230-A038BD82D6CD}.Release|x86.Build.0 = Release|Any CPU
{20ED9DCE-3911-4382-BE1A-14BA3382A930}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{20ED9DCE-3911-4382-BE1A-14BA3382A930}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Debug|x64.Build.0 = Debug|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Debug|x86.Build.0 = Debug|Any CPU
{20ED9DCE-3911-4382-BE1A-14BA3382A930}.Release|Any CPU.ActiveCfg = Release|Any CPU
{20ED9DCE-3911-4382-BE1A-14BA3382A930}.Release|Any CPU.Build.0 = Release|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Release|x64.ActiveCfg = Release|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Release|x64.Build.0 = Release|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Release|x86.ActiveCfg = Release|Any CPU
+ {20ED9DCE-3911-4382-BE1A-14BA3382A930}.Release|x86.Build.0 = Release|Any CPU
{9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Debug|x64.Build.0 = Debug|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Debug|x86.Build.0 = Debug|Any CPU
{9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Release|x64.ActiveCfg = Release|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Release|x64.Build.0 = Release|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Release|x86.ActiveCfg = Release|Any CPU
+ {9B56CBAA-3E96-4ABD-A7E2-A986ADFD3408}.Release|x86.Build.0 = Release|Any CPU
{9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Debug|x64.Build.0 = Debug|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Debug|x86.Build.0 = Debug|Any CPU
{9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Release|Any CPU.ActiveCfg = Release|Any CPU
{9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Release|x64.ActiveCfg = Release|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Release|x64.Build.0 = Release|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Release|x86.ActiveCfg = Release|Any CPU
+ {9176AC70-039F-43B5-BA3D-CDF9FE1D3BFB}.Release|x86.Build.0 = Release|Any CPU
{BBF34708-0583-4708-AB93-CECADB446B8B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{BBF34708-0583-4708-AB93-CECADB446B8B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Debug|x64.Build.0 = Debug|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Debug|x86.Build.0 = Debug|Any CPU
{BBF34708-0583-4708-AB93-CECADB446B8B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{BBF34708-0583-4708-AB93-CECADB446B8B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Release|x64.ActiveCfg = Release|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Release|x64.Build.0 = Release|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Release|x86.ActiveCfg = Release|Any CPU
+ {BBF34708-0583-4708-AB93-CECADB446B8B}.Release|x86.Build.0 = Release|Any CPU
{2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Debug|x64.Build.0 = Debug|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Debug|x86.Build.0 = Debug|Any CPU
{2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Release|x64.ActiveCfg = Release|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Release|x64.Build.0 = Release|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Release|x86.ActiveCfg = Release|Any CPU
+ {2BAB8E09-C4EC-40D3-9378-5BFB6620B26B}.Release|x86.Build.0 = Release|Any CPU
{777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Debug|x64.Build.0 = Debug|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Debug|x86.Build.0 = Debug|Any CPU
{777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Release|Any CPU.ActiveCfg = Release|Any CPU
{777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Release|Any CPU.Build.0 = Release|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Release|x64.ActiveCfg = Release|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Release|x64.Build.0 = Release|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Release|x86.ActiveCfg = Release|Any CPU
+ {777FE7FE-1B1A-4848-BE4A-7670A92DEBCC}.Release|x86.Build.0 = Release|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Debug|x64.ActiveCfg = Debug|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Debug|x64.Build.0 = Debug|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Debug|x86.Build.0 = Debug|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Release|Any CPU.Build.0 = Release|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Release|x64.ActiveCfg = Release|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Release|x64.Build.0 = Release|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Release|x86.ActiveCfg = Release|Any CPU
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -121,6 +229,7 @@ Global
{BAA8D48E-411B-4135-9E4F-5B01F5CF3C62} = {A1E6722B-B184-4AB8-9629-E6A5E76EE9CA}
{B3F60B5E-F19A-4E69-91B5-51053E6BBF5A} = {A1E6722B-B184-4AB8-9629-E6A5E76EE9CA}
{777FE7FE-1B1A-4848-BE4A-7670A92DEBCC} = {B3F60B5E-F19A-4E69-91B5-51053E6BBF5A}
+ {16F33B39-83C5-4E6C-89D3-CF2B9385AC28} = {808186BE-9BD0-DD1D-D574-36EEAD1E7F8F}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {1F033B40-BF0A-4D81-B1D6-84080B73D385}