diff --git a/exercise/c#/AdventOfCraft.sln b/exercise/c#/AdventOfCraft.sln
new file mode 100644
index 00000000..ef6d991e
--- /dev/null
+++ b/exercise/c#/AdventOfCraft.sln
@@ -0,0 +1,396 @@
+
+Microsoft Visual Studio Solution File, Format Version 12.00
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 1 - Make your production code easier to understand", "Day 1 - Make your production code easier to understand", "{1B18AD70-29A4-4D6F-A9CC-90062090D789}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day01.Tests", "Day01\Day01.Tests\Day01.Tests.csproj", "{E4531F97-7BA3-4EBC-83C9-2D8C692C02CF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day01", "Day01\Day01\Day01.csproj", "{E590BBEB-7AB4-402A-8401-2A1C0F527501}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 2 - One level of indentation", "Day 2 - One level of indentation", "{6D089E60-B349-468E-BC1D-3DC4DC7D6C51}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day02.Tests", "Day02\Day02.Tests\Day02.Tests.csproj", "{F812DB10-5139-4153-8EBD-65E6D9620045}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day02", "Day02\Day02\Day02.csproj", "{67696132-26E4-4883-87BF-60D5705E61D4}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 3 - One dot per line", "Day 3 - One dot per line", "{D17C0749-D555-465F-A07A-826AE7BD025E}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day03", "Day03\Day03\Day03.csproj", "{42078835-3737-4A25-9593-ED589BF80C54}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day03.Tests", "Day03\Day03.Tests\Day03.Tests.csproj", "{C0386FEA-4627-4958-BCA8-62556E25859D}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 4 - Identify the behavior under test and rewrite the tests", "Day 4 - Identify the behavior under test and rewrite the tests", "{10BCF13E-C7CA-4A89-86CD-0E8047139AA8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day04", "Day04\Day04\Day04.csproj", "{C9D0BF2C-224C-4030-90DD-4ECA2D1D3833}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day04.Tests", "Day04\Day04.Tests\Day04.Tests.csproj", "{6E908535-E191-4228-8A9C-E7A06DFD2E11}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 5 - No for loop authorized", "Day 5 - No for loop authorized", "{35D192B7-F9F6-41BB-8163-7595E3ADE21B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day05", "Day05\Day05\Day05.csproj", "{2E6FC488-AF67-4A84-83D5-48BB15164C28}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day05.Tests", "Day05\Day05.Tests\Day05.Tests.csproj", "{B6C9C42F-B182-44D0-A598-9E36F80D2959}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 6 - Parameterize your tests", "Day 6 - Parameterize your tests", "{B4B695B1-9429-4137-8211-691FE187A916}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day06", "Day06\Day06\Day06.csproj", "{71D47553-F3ED-4F49-BA2E-FAA5F73EFEFC}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day06.Tests", "Day06\Day06.Tests\Day06.Tests.csproj", "{5AED5510-8489-4E06-9546-03F904741BE4}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 7 - Simplify the run method by extracting the right behavior", "Day 7 - Simplify the run method by extracting the right behavior", "{23CC6A12-0FD6-429F-AE41-7F74C443B0AB}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day07", "Day07\Day07\Day07.csproj", "{E273A593-626C-4EC4-9708-50A733008690}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day07.Tests", "Day07\Day07.Tests\Day07.Tests.csproj", "{1F07D5D3-6FCE-4D9D-9054-E12DF63A452A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 8 - Using TDD rules write a password validation program", "Day 8 - Using TDD rules write a password validation program", "{8EB0D086-66B2-41DA-9DD0-8B55585E6138}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day08", "Day08\Day08\Day08.csproj", "{0262E2C7-135C-46F7-AEEC-E6FC4B13E7A8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day08.Tests", "Day08\Day08.Tests\Day08.Tests.csproj", "{3372B6EF-31D1-4782-AD74-A04C6F2CE2A6}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 9 - Fix the code", "Day 9 - Fix the code", "{F9C6D3A8-6178-4AD7-888D-9281C7E5CD6F}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day09", "Day09\Day09\Day09.csproj", "{BC5F2985-2BE0-4652-87DD-F3EEB998768B}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day09.Tests", "Day09\Day09.Tests\Day09.Tests.csproj", "{37EFA90F-E88A-41E3-BD14-F1E94972CF86}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 10 - Dot not use if statement", "Day 10 - Dot not use if statement", "{BE5956AD-0A92-4390-B15E-123BD6D348E6}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day10", "Day10\Day10\Day10.csproj", "{F987F3A5-7585-40D7-8CB7-F3B29D99B998}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day10.Tests", "Day10\Day10.Tests\Day10.Tests.csproj", "{5ABAEE51-2C14-4186-AB6F-AF06ADFBCEDE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 11 - Gather a dependency freshness metric", "Day 11 - Gather a dependency freshness metric", "{5731AE6D-76BF-48D1-9B19-4DF9E56D4BD1}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day11", "Day11\Day11\Day11.csproj", "{8F81B45C-9BBF-4B84-8394-CF809539C632}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day11.Tests", "Day11\Day11.Tests\Day11.Tests.csproj", "{6CA9F7F3-9B38-4971-AD52-B7601C4FA808}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 12 - Make your code open for extension", "Day 12 - Make your code open for extension", "{61F6F0AE-8D1E-479E-A878-A0A337EE8E92}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day12", "Day12\Day12\Day12.csproj", "{80DF89DB-365A-4DF2-9A6D-DD852CA5F1BF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day12.Tests", "Day12\Day12.Tests\Day12.Tests.csproj", "{3F424E11-0027-4C49-8868-D7F6018FED21}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 13 - Find a way to eliminate the irrelevant and amplify the essentials of those tests", "Day 13 - Find a way to eliminate the irrelevant and amplify the essentials of those tests", "{3CFC8F6C-2B2A-4FE5-BC2B-DDF3E2AE0B4C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day13", "Day13\Day13\Day13.csproj", "{A79DF0E5-043A-4848-AE8D-A94D66E34156}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day13.Tests", "Day13\Day13.Tests\Day13.Tests.csproj", "{A3400B5F-F984-41BF-8EA7-D9266E102B0A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 14 - Do not use exceptions anymore", "Day 14 - Do not use exceptions anymore", "{5E022707-C82F-403F-8A3E-659271B12E71}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day14", "Day14\Day14\Day14.csproj", "{80CD7AEB-D2EB-48C5-9420-B9C85A18E3D0}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day14.Tests", "Day14\Day14.Tests\Day14.Tests.csproj", "{65BD9353-3CC9-454D-B915-E9388566184A}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 15 - Put a code under tests", "Day 15 - Put a code under tests", "{24662303-5A3F-4356-A8AF-A5E2E866A7E8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day15", "Day15\Day15\Day15.csproj", "{36316272-5E4D-4326-BD3E-3AFA5C221C99}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day15.Tests", "Day15\Day15.Tests\Day15.Tests.csproj", "{534D7E0A-9571-42BD-895F-73D9478A7156}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 16 - Make this code immutable", "Day 16 - Make this code immutable", "{8241AC18-B1E7-4396-BE6F-0F514A8FCE12}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day16", "Day16\Day16\Day16.csproj", "{999AF80D-A39A-4C38-8E22-52AD308E2DE9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day16.Tests", "Day16\Day16.Tests\Day16.Tests.csproj", "{8607CFE8-70E1-42DE-8B87-246E4F1F947F}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 17 - Design one test that has the impact of thousands", "Day 17 - Design one test that has the impact of thousands", "{17352B10-55B2-4E4C-980C-29C1ED192B40}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day17", "Day17\Day17\Day17.csproj", "{EF583C28-D8A4-416E-A311-0C570286D686}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day17.Tests", "Day17\Day17.Tests\Day17.Tests.csproj", "{478BFE02-2699-4150-B31F-407C7DDE1BB1}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 18 - Automatically detect Linguistic Anti-Patterns", "Day 18 - Automatically detect Linguistic Anti-Patterns", "{1E6BFC0D-0B6A-4419-B55C-E52035225B66}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day18", "Day18\Day18\Day18.csproj", "{98920AED-928E-49AA-AEE3-CA64DB29AEA7}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day18.Tests", "Day18\Day18.Tests\Day18.Tests.csproj", "{623BC3DF-0C4E-464F-ADBA-DCA5212C4306}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 19 - Loosing up dead weight", "Day 19 - Loosing up dead weight", "{E96B25E8-46D0-431E-A249-72F093C83372}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day19", "Day19\Day19\Day19.csproj", "{A06B5B1F-1284-4D45-B647-A378830DDF1A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day19.Tests", "Day19\Day19.Tests\Day19.Tests.csproj", "{EE7DC8C1-9049-4DF4-9B34-3F899FD6AB85}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 20 - No more exceptions in our domain", "Day 20 - No more exceptions in our domain", "{E90B121F-C580-4C0E-9958-367EB5EA9706}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day20", "Day20\Day20\Day20.csproj", "{9C4F52C8-39DC-48B2-B4D9-5B4E12B7E904}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day20.Tests", "Day20\Day20.Tests\Day20.Tests.csproj", "{6F3C5CD2-6D5F-4B8E-8227-D1BCC82B2A95}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 21 - Refactor the tests and production code to Output-Based tests ", "Day 21 - Refactor the tests and production code to Output-Based tests ", "{9644433D-8B7D-4C24-A642-13C500107FBF}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day21", "Day21\Day21\Day21.csproj", "{651BEFA9-E0C9-4C27-BC37-D679B2FDD95C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day21.Tests", "Day21\Day21.Tests\Day21.Tests.csproj", "{57F7115A-2E0F-47DE-A0B2-DD043E929B47}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 22 - Design a diamond program using T.D.D and Property-Based Testing", "Day 22 - Design a diamond program using T.D.D and Property-Based Testing", "{470065A1-F961-4E64-8889-52849A9BE2FA}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day22", "Day22\Day22\Day22.csproj", "{A11D1D12-A267-4A94-B020-C86D88A8FD12}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day22.Tests", "Day22\Day22.Tests\Day22.Tests.csproj", "{090A8693-38AF-4AE4-92CF-5987BB9508AE}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 23 - Refactor the code after putting it under test", "Day 23 - Refactor the code after putting it under test", "{E6945681-959A-4F52-B533-15E6130B6193}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day23", "Day23\Day23\Day23.csproj", "{5FB3E705-A670-48F3-95BD-06309D9C145A}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day23.Tests", "Day23\Day23.Tests\Day23.Tests.csproj", "{D461192A-11BF-40B6-8BA8-AED8B49C8C68}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Day 24 - Write the most complicated code you can", "Day 24 - Write the most complicated code you can", "{1103D026-04AE-4E6E-815D-6BAC21DFEA32}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day24", "Day24\Day24\Day24.csproj", "{6030D8E5-29D6-4986-BC81-FD3A065E03F9}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Day24.Tests", "Day24\Day24.Tests\Day24.Tests.csproj", "{1927374A-387D-48A0-B5C1-162BFBD31BBC}"
+EndProject
+Global
+ GlobalSection(SolutionConfigurationPlatforms) = preSolution
+ Debug|Any CPU = Debug|Any CPU
+ Release|Any CPU = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(ProjectConfigurationPlatforms) = postSolution
+ {E4531F97-7BA3-4EBC-83C9-2D8C692C02CF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E4531F97-7BA3-4EBC-83C9-2D8C692C02CF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E4531F97-7BA3-4EBC-83C9-2D8C692C02CF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E4531F97-7BA3-4EBC-83C9-2D8C692C02CF}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E590BBEB-7AB4-402A-8401-2A1C0F527501}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E590BBEB-7AB4-402A-8401-2A1C0F527501}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E590BBEB-7AB4-402A-8401-2A1C0F527501}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E590BBEB-7AB4-402A-8401-2A1C0F527501}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F812DB10-5139-4153-8EBD-65E6D9620045}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F812DB10-5139-4153-8EBD-65E6D9620045}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F812DB10-5139-4153-8EBD-65E6D9620045}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F812DB10-5139-4153-8EBD-65E6D9620045}.Release|Any CPU.Build.0 = Release|Any CPU
+ {67696132-26E4-4883-87BF-60D5705E61D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {67696132-26E4-4883-87BF-60D5705E61D4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {67696132-26E4-4883-87BF-60D5705E61D4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {67696132-26E4-4883-87BF-60D5705E61D4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {42078835-3737-4A25-9593-ED589BF80C54}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {42078835-3737-4A25-9593-ED589BF80C54}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {42078835-3737-4A25-9593-ED589BF80C54}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {42078835-3737-4A25-9593-ED589BF80C54}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C0386FEA-4627-4958-BCA8-62556E25859D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C0386FEA-4627-4958-BCA8-62556E25859D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C0386FEA-4627-4958-BCA8-62556E25859D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C0386FEA-4627-4958-BCA8-62556E25859D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C9D0BF2C-224C-4030-90DD-4ECA2D1D3833}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C9D0BF2C-224C-4030-90DD-4ECA2D1D3833}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C9D0BF2C-224C-4030-90DD-4ECA2D1D3833}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C9D0BF2C-224C-4030-90DD-4ECA2D1D3833}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6E908535-E191-4228-8A9C-E7A06DFD2E11}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6E908535-E191-4228-8A9C-E7A06DFD2E11}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6E908535-E191-4228-8A9C-E7A06DFD2E11}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6E908535-E191-4228-8A9C-E7A06DFD2E11}.Release|Any CPU.Build.0 = Release|Any CPU
+ {2E6FC488-AF67-4A84-83D5-48BB15164C28}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {2E6FC488-AF67-4A84-83D5-48BB15164C28}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {2E6FC488-AF67-4A84-83D5-48BB15164C28}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {2E6FC488-AF67-4A84-83D5-48BB15164C28}.Release|Any CPU.Build.0 = Release|Any CPU
+ {B6C9C42F-B182-44D0-A598-9E36F80D2959}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {B6C9C42F-B182-44D0-A598-9E36F80D2959}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {B6C9C42F-B182-44D0-A598-9E36F80D2959}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {B6C9C42F-B182-44D0-A598-9E36F80D2959}.Release|Any CPU.Build.0 = Release|Any CPU
+ {71D47553-F3ED-4F49-BA2E-FAA5F73EFEFC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {71D47553-F3ED-4F49-BA2E-FAA5F73EFEFC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {71D47553-F3ED-4F49-BA2E-FAA5F73EFEFC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {71D47553-F3ED-4F49-BA2E-FAA5F73EFEFC}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5AED5510-8489-4E06-9546-03F904741BE4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5AED5510-8489-4E06-9546-03F904741BE4}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5AED5510-8489-4E06-9546-03F904741BE4}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5AED5510-8489-4E06-9546-03F904741BE4}.Release|Any CPU.Build.0 = Release|Any CPU
+ {E273A593-626C-4EC4-9708-50A733008690}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {E273A593-626C-4EC4-9708-50A733008690}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {E273A593-626C-4EC4-9708-50A733008690}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {E273A593-626C-4EC4-9708-50A733008690}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1F07D5D3-6FCE-4D9D-9054-E12DF63A452A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1F07D5D3-6FCE-4D9D-9054-E12DF63A452A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1F07D5D3-6FCE-4D9D-9054-E12DF63A452A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1F07D5D3-6FCE-4D9D-9054-E12DF63A452A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {0262E2C7-135C-46F7-AEEC-E6FC4B13E7A8}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {0262E2C7-135C-46F7-AEEC-E6FC4B13E7A8}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {0262E2C7-135C-46F7-AEEC-E6FC4B13E7A8}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {0262E2C7-135C-46F7-AEEC-E6FC4B13E7A8}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3372B6EF-31D1-4782-AD74-A04C6F2CE2A6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3372B6EF-31D1-4782-AD74-A04C6F2CE2A6}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3372B6EF-31D1-4782-AD74-A04C6F2CE2A6}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3372B6EF-31D1-4782-AD74-A04C6F2CE2A6}.Release|Any CPU.Build.0 = Release|Any CPU
+ {BC5F2985-2BE0-4652-87DD-F3EEB998768B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC5F2985-2BE0-4652-87DD-F3EEB998768B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BC5F2985-2BE0-4652-87DD-F3EEB998768B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {BC5F2985-2BE0-4652-87DD-F3EEB998768B}.Release|Any CPU.Build.0 = Release|Any CPU
+ {37EFA90F-E88A-41E3-BD14-F1E94972CF86}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {37EFA90F-E88A-41E3-BD14-F1E94972CF86}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {37EFA90F-E88A-41E3-BD14-F1E94972CF86}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {37EFA90F-E88A-41E3-BD14-F1E94972CF86}.Release|Any CPU.Build.0 = Release|Any CPU
+ {F987F3A5-7585-40D7-8CB7-F3B29D99B998}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {F987F3A5-7585-40D7-8CB7-F3B29D99B998}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {F987F3A5-7585-40D7-8CB7-F3B29D99B998}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {F987F3A5-7585-40D7-8CB7-F3B29D99B998}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5ABAEE51-2C14-4186-AB6F-AF06ADFBCEDE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5ABAEE51-2C14-4186-AB6F-AF06ADFBCEDE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5ABAEE51-2C14-4186-AB6F-AF06ADFBCEDE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5ABAEE51-2C14-4186-AB6F-AF06ADFBCEDE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8F81B45C-9BBF-4B84-8394-CF809539C632}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8F81B45C-9BBF-4B84-8394-CF809539C632}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8F81B45C-9BBF-4B84-8394-CF809539C632}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8F81B45C-9BBF-4B84-8394-CF809539C632}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6CA9F7F3-9B38-4971-AD52-B7601C4FA808}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6CA9F7F3-9B38-4971-AD52-B7601C4FA808}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6CA9F7F3-9B38-4971-AD52-B7601C4FA808}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6CA9F7F3-9B38-4971-AD52-B7601C4FA808}.Release|Any CPU.Build.0 = Release|Any CPU
+ {80DF89DB-365A-4DF2-9A6D-DD852CA5F1BF}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {80DF89DB-365A-4DF2-9A6D-DD852CA5F1BF}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {80DF89DB-365A-4DF2-9A6D-DD852CA5F1BF}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {80DF89DB-365A-4DF2-9A6D-DD852CA5F1BF}.Release|Any CPU.Build.0 = Release|Any CPU
+ {3F424E11-0027-4C49-8868-D7F6018FED21}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {3F424E11-0027-4C49-8868-D7F6018FED21}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {3F424E11-0027-4C49-8868-D7F6018FED21}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {3F424E11-0027-4C49-8868-D7F6018FED21}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A79DF0E5-043A-4848-AE8D-A94D66E34156}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A79DF0E5-043A-4848-AE8D-A94D66E34156}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A79DF0E5-043A-4848-AE8D-A94D66E34156}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A79DF0E5-043A-4848-AE8D-A94D66E34156}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A3400B5F-F984-41BF-8EA7-D9266E102B0A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A3400B5F-F984-41BF-8EA7-D9266E102B0A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A3400B5F-F984-41BF-8EA7-D9266E102B0A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A3400B5F-F984-41BF-8EA7-D9266E102B0A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {80CD7AEB-D2EB-48C5-9420-B9C85A18E3D0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {80CD7AEB-D2EB-48C5-9420-B9C85A18E3D0}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {80CD7AEB-D2EB-48C5-9420-B9C85A18E3D0}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {80CD7AEB-D2EB-48C5-9420-B9C85A18E3D0}.Release|Any CPU.Build.0 = Release|Any CPU
+ {65BD9353-3CC9-454D-B915-E9388566184A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {65BD9353-3CC9-454D-B915-E9388566184A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {65BD9353-3CC9-454D-B915-E9388566184A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {65BD9353-3CC9-454D-B915-E9388566184A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {36316272-5E4D-4326-BD3E-3AFA5C221C99}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {36316272-5E4D-4326-BD3E-3AFA5C221C99}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {36316272-5E4D-4326-BD3E-3AFA5C221C99}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {36316272-5E4D-4326-BD3E-3AFA5C221C99}.Release|Any CPU.Build.0 = Release|Any CPU
+ {534D7E0A-9571-42BD-895F-73D9478A7156}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {534D7E0A-9571-42BD-895F-73D9478A7156}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {534D7E0A-9571-42BD-895F-73D9478A7156}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {534D7E0A-9571-42BD-895F-73D9478A7156}.Release|Any CPU.Build.0 = Release|Any CPU
+ {999AF80D-A39A-4C38-8E22-52AD308E2DE9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {999AF80D-A39A-4C38-8E22-52AD308E2DE9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {999AF80D-A39A-4C38-8E22-52AD308E2DE9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {999AF80D-A39A-4C38-8E22-52AD308E2DE9}.Release|Any CPU.Build.0 = Release|Any CPU
+ {8607CFE8-70E1-42DE-8B87-246E4F1F947F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {8607CFE8-70E1-42DE-8B87-246E4F1F947F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {8607CFE8-70E1-42DE-8B87-246E4F1F947F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {8607CFE8-70E1-42DE-8B87-246E4F1F947F}.Release|Any CPU.Build.0 = Release|Any CPU
+ {EF583C28-D8A4-416E-A311-0C570286D686}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {EF583C28-D8A4-416E-A311-0C570286D686}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {EF583C28-D8A4-416E-A311-0C570286D686}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {EF583C28-D8A4-416E-A311-0C570286D686}.Release|Any CPU.Build.0 = Release|Any CPU
+ {478BFE02-2699-4150-B31F-407C7DDE1BB1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {478BFE02-2699-4150-B31F-407C7DDE1BB1}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {478BFE02-2699-4150-B31F-407C7DDE1BB1}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {478BFE02-2699-4150-B31F-407C7DDE1BB1}.Release|Any CPU.Build.0 = Release|Any CPU
+ {98920AED-928E-49AA-AEE3-CA64DB29AEA7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {98920AED-928E-49AA-AEE3-CA64DB29AEA7}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {98920AED-928E-49AA-AEE3-CA64DB29AEA7}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {98920AED-928E-49AA-AEE3-CA64DB29AEA7}.Release|Any CPU.Build.0 = Release|Any CPU
+ {623BC3DF-0C4E-464F-ADBA-DCA5212C4306}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {623BC3DF-0C4E-464F-ADBA-DCA5212C4306}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {623BC3DF-0C4E-464F-ADBA-DCA5212C4306}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {623BC3DF-0C4E-464F-ADBA-DCA5212C4306}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A06B5B1F-1284-4D45-B647-A378830DDF1A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A06B5B1F-1284-4D45-B647-A378830DDF1A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A06B5B1F-1284-4D45-B647-A378830DDF1A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A06B5B1F-1284-4D45-B647-A378830DDF1A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {EE7DC8C1-9049-4DF4-9B34-3F899FD6AB85}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {EE7DC8C1-9049-4DF4-9B34-3F899FD6AB85}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {EE7DC8C1-9049-4DF4-9B34-3F899FD6AB85}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {EE7DC8C1-9049-4DF4-9B34-3F899FD6AB85}.Release|Any CPU.Build.0 = Release|Any CPU
+ {9C4F52C8-39DC-48B2-B4D9-5B4E12B7E904}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {9C4F52C8-39DC-48B2-B4D9-5B4E12B7E904}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {9C4F52C8-39DC-48B2-B4D9-5B4E12B7E904}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {9C4F52C8-39DC-48B2-B4D9-5B4E12B7E904}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6F3C5CD2-6D5F-4B8E-8227-D1BCC82B2A95}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6F3C5CD2-6D5F-4B8E-8227-D1BCC82B2A95}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6F3C5CD2-6D5F-4B8E-8227-D1BCC82B2A95}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6F3C5CD2-6D5F-4B8E-8227-D1BCC82B2A95}.Release|Any CPU.Build.0 = Release|Any CPU
+ {651BEFA9-E0C9-4C27-BC37-D679B2FDD95C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {651BEFA9-E0C9-4C27-BC37-D679B2FDD95C}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {651BEFA9-E0C9-4C27-BC37-D679B2FDD95C}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {651BEFA9-E0C9-4C27-BC37-D679B2FDD95C}.Release|Any CPU.Build.0 = Release|Any CPU
+ {57F7115A-2E0F-47DE-A0B2-DD043E929B47}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {57F7115A-2E0F-47DE-A0B2-DD043E929B47}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {57F7115A-2E0F-47DE-A0B2-DD043E929B47}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {57F7115A-2E0F-47DE-A0B2-DD043E929B47}.Release|Any CPU.Build.0 = Release|Any CPU
+ {A11D1D12-A267-4A94-B020-C86D88A8FD12}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {A11D1D12-A267-4A94-B020-C86D88A8FD12}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {A11D1D12-A267-4A94-B020-C86D88A8FD12}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {A11D1D12-A267-4A94-B020-C86D88A8FD12}.Release|Any CPU.Build.0 = Release|Any CPU
+ {090A8693-38AF-4AE4-92CF-5987BB9508AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {090A8693-38AF-4AE4-92CF-5987BB9508AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {090A8693-38AF-4AE4-92CF-5987BB9508AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {090A8693-38AF-4AE4-92CF-5987BB9508AE}.Release|Any CPU.Build.0 = Release|Any CPU
+ {5FB3E705-A670-48F3-95BD-06309D9C145A}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {5FB3E705-A670-48F3-95BD-06309D9C145A}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {5FB3E705-A670-48F3-95BD-06309D9C145A}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {5FB3E705-A670-48F3-95BD-06309D9C145A}.Release|Any CPU.Build.0 = Release|Any CPU
+ {D461192A-11BF-40B6-8BA8-AED8B49C8C68}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {D461192A-11BF-40B6-8BA8-AED8B49C8C68}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {D461192A-11BF-40B6-8BA8-AED8B49C8C68}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {D461192A-11BF-40B6-8BA8-AED8B49C8C68}.Release|Any CPU.Build.0 = Release|Any CPU
+ {6030D8E5-29D6-4986-BC81-FD3A065E03F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {6030D8E5-29D6-4986-BC81-FD3A065E03F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {6030D8E5-29D6-4986-BC81-FD3A065E03F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {6030D8E5-29D6-4986-BC81-FD3A065E03F9}.Release|Any CPU.Build.0 = Release|Any CPU
+ {1927374A-387D-48A0-B5C1-162BFBD31BBC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {1927374A-387D-48A0-B5C1-162BFBD31BBC}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {1927374A-387D-48A0-B5C1-162BFBD31BBC}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {1927374A-387D-48A0-B5C1-162BFBD31BBC}.Release|Any CPU.Build.0 = Release|Any CPU
+ EndGlobalSection
+ GlobalSection(NestedProjects) = preSolution
+ {E4531F97-7BA3-4EBC-83C9-2D8C692C02CF} = {1B18AD70-29A4-4D6F-A9CC-90062090D789}
+ {E590BBEB-7AB4-402A-8401-2A1C0F527501} = {1B18AD70-29A4-4D6F-A9CC-90062090D789}
+ {F812DB10-5139-4153-8EBD-65E6D9620045} = {6D089E60-B349-468E-BC1D-3DC4DC7D6C51}
+ {67696132-26E4-4883-87BF-60D5705E61D4} = {6D089E60-B349-468E-BC1D-3DC4DC7D6C51}
+ {42078835-3737-4A25-9593-ED589BF80C54} = {D17C0749-D555-465F-A07A-826AE7BD025E}
+ {C0386FEA-4627-4958-BCA8-62556E25859D} = {D17C0749-D555-465F-A07A-826AE7BD025E}
+ {C9D0BF2C-224C-4030-90DD-4ECA2D1D3833} = {10BCF13E-C7CA-4A89-86CD-0E8047139AA8}
+ {6E908535-E191-4228-8A9C-E7A06DFD2E11} = {10BCF13E-C7CA-4A89-86CD-0E8047139AA8}
+ {2E6FC488-AF67-4A84-83D5-48BB15164C28} = {35D192B7-F9F6-41BB-8163-7595E3ADE21B}
+ {B6C9C42F-B182-44D0-A598-9E36F80D2959} = {35D192B7-F9F6-41BB-8163-7595E3ADE21B}
+ {71D47553-F3ED-4F49-BA2E-FAA5F73EFEFC} = {B4B695B1-9429-4137-8211-691FE187A916}
+ {5AED5510-8489-4E06-9546-03F904741BE4} = {B4B695B1-9429-4137-8211-691FE187A916}
+ {E273A593-626C-4EC4-9708-50A733008690} = {23CC6A12-0FD6-429F-AE41-7F74C443B0AB}
+ {1F07D5D3-6FCE-4D9D-9054-E12DF63A452A} = {23CC6A12-0FD6-429F-AE41-7F74C443B0AB}
+ {0262E2C7-135C-46F7-AEEC-E6FC4B13E7A8} = {8EB0D086-66B2-41DA-9DD0-8B55585E6138}
+ {3372B6EF-31D1-4782-AD74-A04C6F2CE2A6} = {8EB0D086-66B2-41DA-9DD0-8B55585E6138}
+ {BC5F2985-2BE0-4652-87DD-F3EEB998768B} = {F9C6D3A8-6178-4AD7-888D-9281C7E5CD6F}
+ {37EFA90F-E88A-41E3-BD14-F1E94972CF86} = {F9C6D3A8-6178-4AD7-888D-9281C7E5CD6F}
+ {F987F3A5-7585-40D7-8CB7-F3B29D99B998} = {BE5956AD-0A92-4390-B15E-123BD6D348E6}
+ {5ABAEE51-2C14-4186-AB6F-AF06ADFBCEDE} = {BE5956AD-0A92-4390-B15E-123BD6D348E6}
+ {8F81B45C-9BBF-4B84-8394-CF809539C632} = {5731AE6D-76BF-48D1-9B19-4DF9E56D4BD1}
+ {6CA9F7F3-9B38-4971-AD52-B7601C4FA808} = {5731AE6D-76BF-48D1-9B19-4DF9E56D4BD1}
+ {80DF89DB-365A-4DF2-9A6D-DD852CA5F1BF} = {61F6F0AE-8D1E-479E-A878-A0A337EE8E92}
+ {3F424E11-0027-4C49-8868-D7F6018FED21} = {61F6F0AE-8D1E-479E-A878-A0A337EE8E92}
+ {A79DF0E5-043A-4848-AE8D-A94D66E34156} = {3CFC8F6C-2B2A-4FE5-BC2B-DDF3E2AE0B4C}
+ {A3400B5F-F984-41BF-8EA7-D9266E102B0A} = {3CFC8F6C-2B2A-4FE5-BC2B-DDF3E2AE0B4C}
+ {80CD7AEB-D2EB-48C5-9420-B9C85A18E3D0} = {5E022707-C82F-403F-8A3E-659271B12E71}
+ {65BD9353-3CC9-454D-B915-E9388566184A} = {5E022707-C82F-403F-8A3E-659271B12E71}
+ {36316272-5E4D-4326-BD3E-3AFA5C221C99} = {24662303-5A3F-4356-A8AF-A5E2E866A7E8}
+ {534D7E0A-9571-42BD-895F-73D9478A7156} = {24662303-5A3F-4356-A8AF-A5E2E866A7E8}
+ {999AF80D-A39A-4C38-8E22-52AD308E2DE9} = {8241AC18-B1E7-4396-BE6F-0F514A8FCE12}
+ {8607CFE8-70E1-42DE-8B87-246E4F1F947F} = {8241AC18-B1E7-4396-BE6F-0F514A8FCE12}
+ {EF583C28-D8A4-416E-A311-0C570286D686} = {17352B10-55B2-4E4C-980C-29C1ED192B40}
+ {478BFE02-2699-4150-B31F-407C7DDE1BB1} = {17352B10-55B2-4E4C-980C-29C1ED192B40}
+ {98920AED-928E-49AA-AEE3-CA64DB29AEA7} = {1E6BFC0D-0B6A-4419-B55C-E52035225B66}
+ {623BC3DF-0C4E-464F-ADBA-DCA5212C4306} = {1E6BFC0D-0B6A-4419-B55C-E52035225B66}
+ {A06B5B1F-1284-4D45-B647-A378830DDF1A} = {E96B25E8-46D0-431E-A249-72F093C83372}
+ {EE7DC8C1-9049-4DF4-9B34-3F899FD6AB85} = {E96B25E8-46D0-431E-A249-72F093C83372}
+ {9C4F52C8-39DC-48B2-B4D9-5B4E12B7E904} = {E90B121F-C580-4C0E-9958-367EB5EA9706}
+ {6F3C5CD2-6D5F-4B8E-8227-D1BCC82B2A95} = {E90B121F-C580-4C0E-9958-367EB5EA9706}
+ {651BEFA9-E0C9-4C27-BC37-D679B2FDD95C} = {9644433D-8B7D-4C24-A642-13C500107FBF}
+ {57F7115A-2E0F-47DE-A0B2-DD043E929B47} = {9644433D-8B7D-4C24-A642-13C500107FBF}
+ {A11D1D12-A267-4A94-B020-C86D88A8FD12} = {470065A1-F961-4E64-8889-52849A9BE2FA}
+ {090A8693-38AF-4AE4-92CF-5987BB9508AE} = {470065A1-F961-4E64-8889-52849A9BE2FA}
+ {5FB3E705-A670-48F3-95BD-06309D9C145A} = {E6945681-959A-4F52-B533-15E6130B6193}
+ {D461192A-11BF-40B6-8BA8-AED8B49C8C68} = {E6945681-959A-4F52-B533-15E6130B6193}
+ {6030D8E5-29D6-4986-BC81-FD3A065E03F9} = {1103D026-04AE-4E6E-815D-6BAC21DFEA32}
+ {1927374A-387D-48A0-B5C1-162BFBD31BBC} = {1103D026-04AE-4E6E-815D-6BAC21DFEA32}
+ EndGlobalSection
+EndGlobal
diff --git a/exercise/c#/Day01/Day01.Tests/Day01.Tests.csproj b/exercise/c#/Day01/Day01.Tests/Day01.Tests.csproj
new file mode 100644
index 00000000..132fc427
--- /dev/null
+++ b/exercise/c#/Day01/Day01.Tests/Day01.Tests.csproj
@@ -0,0 +1,30 @@
+
+
+
+ net8.0
+ enable
+ enable
+
+ false
+ true
+
+
+
+
+
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
+
+ runtime; build; native; contentfiles; analyzers; buildtransitive
+ all
+
+
+
+
+
+
+
+
diff --git a/exercise/c#/Day01/Day01.Tests/EdibleTests.cs b/exercise/c#/Day01/Day01.Tests/EdibleTests.cs
new file mode 100644
index 00000000..d28188ca
--- /dev/null
+++ b/exercise/c#/Day01/Day01.Tests/EdibleTests.cs
@@ -0,0 +1,40 @@
+using FluentAssertions;
+using Xunit;
+
+namespace Day01.Tests
+{
+ public class EdibleTests
+ {
+ private static readonly DateOnly ExpirationDate = new(2023, 12, 1);
+ private static readonly Guid Inspector = Guid.NewGuid();
+ private static readonly DateOnly NotFreshDate = ExpirationDate.AddDays(7);
+ private static readonly DateOnly FreshDate = ExpirationDate.AddDays(-7);
+
+ public static IEnumerable