diff --git a/src/LINQ/LINQ.sln b/src/LINQ/LINQ.sln
index 39c51b2..d761f63 100644
--- a/src/LINQ/LINQ.sln
+++ b/src/LINQ/LINQ.sln
@@ -23,6 +23,12 @@ Project("{778DAE3C-4631-46EA-AA77-85C1314464D9}") = "netCDF", "..\..\..\sciBASIC
EndProject
Project("{778DAE3C-4631-46EA-AA77-85C1314464D9}") = "dataframework-netcore5", "..\..\..\sciBASIC#\Data\DataFrame\dataframework-netcore5.vbproj", "{4D8ACC26-21FB-4968-8D70-E57BC009E437}"
EndProject
+Project("{778DAE3C-4631-46EA-AA77-85C1314464D9}") = "HDSPack", "..\..\..\sciBASIC#\Data\BinaryData\HDSPack\HDSPack.vbproj", "{C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}"
+EndProject
+Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "RQL", "RQL\RQL.vbproj", "{BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}"
+EndProject
+Project("{778DAE3C-4631-46EA-AA77-85C1314464D9}") = "graph-netcore5", "..\..\..\sciBASIC#\Data_science\Graph\graph-netcore5.vbproj", "{AE10F033-1EE2-44EF-AF06-F1C81411D069}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
BioDeep_database|Any CPU = BioDeep_database|Any CPU
@@ -1431,6 +1437,654 @@ Global
{4D8ACC26-21FB-4968-8D70-E57BC009E437}.Yilia-Release_x64|x64.Build.0 = Release|x64
{4D8ACC26-21FB-4968-8D70-E57BC009E437}.Yilia-Release_x64|x86.ActiveCfg = Release|Any CPU
{4D8ACC26-21FB-4968-8D70-E57BC009E437}.Yilia-Release_x64|x86.Build.0 = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.BioDeep_database|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.BioDeep_database|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.BioDeep_database|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.BioDeep_database|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.BioDeep_database|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.BioDeep_database|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep_UNIX_x64|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep_UNIX_x64|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep_UNIX_x64|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep_UNIX_x64|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep_UNIX_x64|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep_UNIX_x64|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biodeep|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack-Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack-Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack-Debug|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack-Debug|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack-Debug|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Biostack-Debug|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Debug|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Debug|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Debug|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.DEMO|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.DEMO|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.DEMO|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.DEMO|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.DEMO|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.DEMO|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Docker|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Docker|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Docker|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Docker|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Docker|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Docker|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.docs|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.docs|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.docs|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.docs|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.docs|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.docs|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(Release_X64)|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(Release_X64)|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(Release_X64)|x64.ActiveCfg = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(Release_X64)|x64.Build.0 = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(Release_X64)|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(Release_X64)|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(UNIX-Release_X64)|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(UNIX-Release_X64)|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(UNIX-Release_X64)|x64.ActiveCfg = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(UNIX-Release_X64)|x64.Build.0 = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(UNIX-Release_X64)|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GCModeller(UNIX-Release_X64)|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.gcmodeller_desktop|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.gcmodeller_desktop|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.gcmodeller_desktop|x64.ActiveCfg = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.gcmodeller_desktop|x64.Build.0 = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.gcmodeller_desktop|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.gcmodeller_desktop|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GTA5-game-test|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GTA5-game-test|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GTA5-game-test|x64.ActiveCfg = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GTA5-game-test|x64.Build.0 = gcmodeller_desktop|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GTA5-game-test|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.GTA5-game-test|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.installer_x64|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.installer_x64|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.installer_x64|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.installer_x64|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.installer_x64|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.installer_x64|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.LipidSearch|Any CPU.ActiveCfg = LipidSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.LipidSearch|Any CPU.Build.0 = LipidSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.LipidSearch|x64.ActiveCfg = LipidSearch|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.LipidSearch|x64.Build.0 = LipidSearch|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.LipidSearch|x86.ActiveCfg = LipidSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.LipidSearch|x86.Build.0 = LipidSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.MetaCardio|Any CPU.ActiveCfg = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.MetaCardio|Any CPU.Build.0 = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.MetaCardio|x64.ActiveCfg = mzkit|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.MetaCardio|x64.Build.0 = mzkit|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.MetaCardio|x86.ActiveCfg = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.MetaCardio|x86.Build.0 = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mysqli_X64_release|Any CPU.ActiveCfg = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mysqli_X64_release|Any CPU.Build.0 = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mysqli_X64_release|x64.ActiveCfg = mzkit_win32|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mysqli_X64_release|x64.Build.0 = mzkit_win32|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mysqli_X64_release|x86.ActiveCfg = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mysqli_X64_release|x86.Build.0 = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_UnixDocker|Any CPU.ActiveCfg = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_UnixDocker|Any CPU.Build.0 = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_UnixDocker|x64.ActiveCfg = mzkit_win32|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_UnixDocker|x64.Build.0 = mzkit_win32|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_UnixDocker|x86.ActiveCfg = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_UnixDocker|x86.Build.0 = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_win32|Any CPU.ActiveCfg = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_win32|Any CPU.Build.0 = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_win32|x64.ActiveCfg = mzkit_win32|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_win32|x64.Build.0 = mzkit_win32|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_win32|x86.ActiveCfg = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit_win32|x86.Build.0 = mzkit_win32|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit|Any CPU.ActiveCfg = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit|Any CPU.Build.0 = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit|x64.ActiveCfg = mzkit|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit|x64.Build.0 = mzkit|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit|x86.ActiveCfg = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.mzkit|x86.Build.0 = mzkit|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.node-debug|Any CPU.ActiveCfg = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.node-debug|Any CPU.Build.0 = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.node-debug|x64.ActiveCfg = NPSearch|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.node-debug|x64.Build.0 = NPSearch|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.node-debug|x86.ActiveCfg = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.node-debug|x86.Build.0 = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.NPSearch|Any CPU.ActiveCfg = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.NPSearch|Any CPU.Build.0 = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.NPSearch|x64.ActiveCfg = NPSearch|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.NPSearch|x64.Build.0 = NPSearch|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.NPSearch|x86.ActiveCfg = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.NPSearch|x86.Build.0 = NPSearch|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.PlantMAT|Any CPU.ActiveCfg = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.PlantMAT|Any CPU.Build.0 = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.PlantMAT|x64.ActiveCfg = PlantMAT|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.PlantMAT|x64.Build.0 = PlantMAT|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.PlantMAT|x86.ActiveCfg = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.PlantMAT|x86.Build.0 = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.ProteoWizard.d|Any CPU.ActiveCfg = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.ProteoWizard.d|Any CPU.Build.0 = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.ProteoWizard.d|x64.ActiveCfg = PlantMAT|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.ProteoWizard.d|x64.Build.0 = PlantMAT|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.ProteoWizard.d|x86.ActiveCfg = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.ProteoWizard.d|x86.Build.0 = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Publish|Any CPU.ActiveCfg = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Publish|Any CPU.Build.0 = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Publish|x64.ActiveCfg = PlantMAT|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Publish|x64.Build.0 = PlantMAT|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Publish|x86.ActiveCfg = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Publish|x86.Build.0 = PlantMAT|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.R-dotnet|Any CPU.ActiveCfg = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.R-dotnet|Any CPU.Build.0 = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.R-dotnet|x64.ActiveCfg = Rsharp_app_release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.R-dotnet|x64.Build.0 = Rsharp_app_release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.R-dotnet|x86.ActiveCfg = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.R-dotnet|x86.Build.0 = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Release|Any CPU.Build.0 = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Release|x64.ActiveCfg = Release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Release|x64.Build.0 = Release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Release|x86.ActiveCfg = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Release|x86.Build.0 = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Rsharp_app_release|Any CPU.ActiveCfg = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Rsharp_app_release|Any CPU.Build.0 = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Rsharp_app_release|x64.ActiveCfg = Rsharp_app_release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Rsharp_app_release|x64.Build.0 = Rsharp_app_release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Rsharp_app_release|x86.ActiveCfg = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Rsharp_app_release|x86.Build.0 = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.RsharpDev|Any CPU.ActiveCfg = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.RsharpDev|Any CPU.Build.0 = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.RsharpDev|x64.ActiveCfg = Rsharp_app_release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.RsharpDev|x64.Build.0 = Rsharp_app_release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.RsharpDev|x86.ActiveCfg = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.RsharpDev|x86.Build.0 = Rsharp_app_release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.sciBASIC.NET-test-release|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.sciBASIC.NET-test-release|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.sciBASIC.NET-test-release|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.sciBASIC.NET-test-release|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.sciBASIC.NET-test-release|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.sciBASIC.NET-test-release|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Surveillance-of-infectious-diseases|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Surveillance-of-infectious-diseases|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Surveillance-of-infectious-diseases|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Surveillance-of-infectious-diseases|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Surveillance-of-infectious-diseases|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Surveillance-of-infectious-diseases|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.test|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.test|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.test|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.test|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.test|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.test|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.vcellkit|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.vcellkit|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.vcellkit|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.vcellkit|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.vcellkit|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.vcellkit|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Voyager1|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Voyager1|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Voyager1|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Voyager1|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Voyager1|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Voyager1|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.WebAssembly|Any CPU.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.WebAssembly|Any CPU.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.WebAssembly|x64.ActiveCfg = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.WebAssembly|x64.Build.0 = Debug|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.WebAssembly|x86.ActiveCfg = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.WebAssembly|x86.Build.0 = Debug|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Yilia-Release_x64|Any CPU.ActiveCfg = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Yilia-Release_x64|Any CPU.Build.0 = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Yilia-Release_x64|x64.ActiveCfg = Release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Yilia-Release_x64|x64.Build.0 = Release|x64
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Yilia-Release_x64|x86.ActiveCfg = Release|Any CPU
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D}.Yilia-Release_x64|x86.Build.0 = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.BioDeep_database|Any CPU.ActiveCfg = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.BioDeep_database|Any CPU.Build.0 = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.BioDeep_database|x64.ActiveCfg = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.BioDeep_database|x64.Build.0 = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.BioDeep_database|x86.ActiveCfg = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.BioDeep_database|x86.Build.0 = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep_UNIX_x64|Any CPU.ActiveCfg = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep_UNIX_x64|Any CPU.Build.0 = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep_UNIX_x64|x64.ActiveCfg = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep_UNIX_x64|x64.Build.0 = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep_UNIX_x64|x86.ActiveCfg = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep_UNIX_x64|x86.Build.0 = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep|Any CPU.ActiveCfg = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep|Any CPU.Build.0 = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep|x64.ActiveCfg = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep|x64.Build.0 = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep|x86.ActiveCfg = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biodeep|x86.Build.0 = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack|Any CPU.ActiveCfg = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack|Any CPU.Build.0 = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack|x64.ActiveCfg = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack|x64.Build.0 = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack|x86.ActiveCfg = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack|x86.Build.0 = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack-Debug|Any CPU.ActiveCfg = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack-Debug|Any CPU.Build.0 = Biostack|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack-Debug|x64.ActiveCfg = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack-Debug|x64.Build.0 = Biostack|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack-Debug|x86.ActiveCfg = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Biostack-Debug|x86.Build.0 = Biostack|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Debug|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Debug|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Debug|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Debug|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.DEMO|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.DEMO|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.DEMO|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.DEMO|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.DEMO|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.DEMO|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Docker|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Docker|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Docker|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Docker|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Docker|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Docker|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.docs|Any CPU.ActiveCfg = docs|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.docs|Any CPU.Build.0 = docs|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.docs|x64.ActiveCfg = docs|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.docs|x64.Build.0 = docs|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.docs|x86.ActiveCfg = docs|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.docs|x86.Build.0 = docs|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(Release_X64)|Any CPU.ActiveCfg = GCModeller(Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(Release_X64)|Any CPU.Build.0 = GCModeller(Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(Release_X64)|x64.ActiveCfg = GCModeller(Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(Release_X64)|x64.Build.0 = GCModeller(Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(Release_X64)|x86.ActiveCfg = GCModeller(Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(Release_X64)|x86.Build.0 = GCModeller(Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(UNIX-Release_X64)|Any CPU.ActiveCfg = GCModeller(UNIX-Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(UNIX-Release_X64)|Any CPU.Build.0 = GCModeller(UNIX-Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(UNIX-Release_X64)|x64.ActiveCfg = GCModeller(UNIX-Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(UNIX-Release_X64)|x64.Build.0 = GCModeller(UNIX-Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(UNIX-Release_X64)|x86.ActiveCfg = GCModeller(UNIX-Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GCModeller(UNIX-Release_X64)|x86.Build.0 = GCModeller(UNIX-Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.gcmodeller_desktop|Any CPU.ActiveCfg = GCModeller(UNIX-Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.gcmodeller_desktop|Any CPU.Build.0 = GCModeller(UNIX-Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.gcmodeller_desktop|x64.ActiveCfg = GCModeller(UNIX-Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.gcmodeller_desktop|x64.Build.0 = GCModeller(UNIX-Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.gcmodeller_desktop|x86.ActiveCfg = GCModeller(UNIX-Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.gcmodeller_desktop|x86.Build.0 = GCModeller(UNIX-Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GTA5-game-test|Any CPU.ActiveCfg = GCModeller(UNIX-Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GTA5-game-test|Any CPU.Build.0 = GCModeller(UNIX-Release_X64)|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GTA5-game-test|x64.ActiveCfg = GCModeller(UNIX-Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GTA5-game-test|x64.Build.0 = GCModeller(UNIX-Release_X64)|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GTA5-game-test|x86.ActiveCfg = GCModeller(UNIX-Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.GTA5-game-test|x86.Build.0 = GCModeller(UNIX-Release_X64)|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.installer_x64|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.installer_x64|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.installer_x64|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.installer_x64|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.installer_x64|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.installer_x64|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.LipidSearch|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.LipidSearch|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.LipidSearch|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.LipidSearch|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.LipidSearch|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.LipidSearch|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.MetaCardio|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.MetaCardio|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.MetaCardio|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.MetaCardio|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.MetaCardio|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.MetaCardio|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mysqli_X64_release|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mysqli_X64_release|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mysqli_X64_release|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mysqli_X64_release|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mysqli_X64_release|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mysqli_X64_release|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_UnixDocker|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_UnixDocker|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_UnixDocker|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_UnixDocker|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_UnixDocker|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_UnixDocker|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_win32|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_win32|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_win32|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_win32|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_win32|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit_win32|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.mzkit|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.node-debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.node-debug|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.node-debug|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.node-debug|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.node-debug|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.node-debug|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.NPSearch|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.NPSearch|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.NPSearch|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.NPSearch|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.NPSearch|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.NPSearch|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.PlantMAT|Any CPU.ActiveCfg = Publish|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.PlantMAT|Any CPU.Build.0 = Publish|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.PlantMAT|x64.ActiveCfg = Publish|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.PlantMAT|x64.Build.0 = Publish|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.PlantMAT|x86.ActiveCfg = Publish|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.PlantMAT|x86.Build.0 = Publish|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.ProteoWizard.d|Any CPU.ActiveCfg = Publish|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.ProteoWizard.d|Any CPU.Build.0 = Publish|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.ProteoWizard.d|x64.ActiveCfg = Publish|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.ProteoWizard.d|x64.Build.0 = Publish|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.ProteoWizard.d|x86.ActiveCfg = Publish|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.ProteoWizard.d|x86.Build.0 = Publish|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Publish|Any CPU.ActiveCfg = Publish|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Publish|Any CPU.Build.0 = Publish|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Publish|x64.ActiveCfg = Publish|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Publish|x64.Build.0 = Publish|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Publish|x86.ActiveCfg = Publish|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Publish|x86.Build.0 = Publish|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.R-dotnet|Any CPU.ActiveCfg = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.R-dotnet|Any CPU.Build.0 = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.R-dotnet|x64.ActiveCfg = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.R-dotnet|x64.Build.0 = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.R-dotnet|x86.ActiveCfg = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.R-dotnet|x86.Build.0 = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Release|Any CPU.Build.0 = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Release|x64.ActiveCfg = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Release|x64.Build.0 = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Release|x86.ActiveCfg = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Release|x86.Build.0 = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Rsharp_app_release|Any CPU.ActiveCfg = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Rsharp_app_release|Any CPU.Build.0 = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Rsharp_app_release|x64.ActiveCfg = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Rsharp_app_release|x64.Build.0 = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Rsharp_app_release|x86.ActiveCfg = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Rsharp_app_release|x86.Build.0 = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.RsharpDev|Any CPU.ActiveCfg = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.RsharpDev|Any CPU.Build.0 = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.RsharpDev|x64.ActiveCfg = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.RsharpDev|x64.Build.0 = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.RsharpDev|x86.ActiveCfg = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.RsharpDev|x86.Build.0 = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.sciBASIC.NET-test-release|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.sciBASIC.NET-test-release|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.sciBASIC.NET-test-release|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.sciBASIC.NET-test-release|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.sciBASIC.NET-test-release|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.sciBASIC.NET-test-release|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Surveillance-of-infectious-diseases|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Surveillance-of-infectious-diseases|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Surveillance-of-infectious-diseases|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Surveillance-of-infectious-diseases|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Surveillance-of-infectious-diseases|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Surveillance-of-infectious-diseases|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.test|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.test|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.test|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.test|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.test|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.test|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.vcellkit|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.vcellkit|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.vcellkit|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.vcellkit|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.vcellkit|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.vcellkit|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Voyager1|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Voyager1|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Voyager1|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Voyager1|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Voyager1|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Voyager1|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.WebAssembly|Any CPU.ActiveCfg = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.WebAssembly|Any CPU.Build.0 = Debug|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.WebAssembly|x64.ActiveCfg = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.WebAssembly|x64.Build.0 = Debug|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.WebAssembly|x86.ActiveCfg = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.WebAssembly|x86.Build.0 = Debug|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Yilia-Release_x64|Any CPU.ActiveCfg = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Yilia-Release_x64|Any CPU.Build.0 = Release|Any CPU
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Yilia-Release_x64|x64.ActiveCfg = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Yilia-Release_x64|x64.Build.0 = Release|x64
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Yilia-Release_x64|x86.ActiveCfg = Release|x86
+ {BC922A27-9BC3-4E7E-BE3D-55FC03FB4160}.Yilia-Release_x64|x86.Build.0 = Release|x86
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.BioDeep_database|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.BioDeep_database|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.BioDeep_database|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.BioDeep_database|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.BioDeep_database|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.BioDeep_database|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep_UNIX_x64|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep_UNIX_x64|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep_UNIX_x64|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep_UNIX_x64|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep_UNIX_x64|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep_UNIX_x64|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biodeep|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack-Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack-Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack-Debug|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack-Debug|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack-Debug|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Biostack-Debug|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Debug|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Debug|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Debug|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Debug|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Debug|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.DEMO|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.DEMO|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.DEMO|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.DEMO|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.DEMO|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.DEMO|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Docker|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Docker|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Docker|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Docker|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Docker|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Docker|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.docs|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.docs|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.docs|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.docs|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.docs|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.docs|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(Release_X64)|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(Release_X64)|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(Release_X64)|x64.ActiveCfg = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(Release_X64)|x64.Build.0 = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(Release_X64)|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(Release_X64)|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(UNIX-Release_X64)|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(UNIX-Release_X64)|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(UNIX-Release_X64)|x64.ActiveCfg = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(UNIX-Release_X64)|x64.Build.0 = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(UNIX-Release_X64)|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GCModeller(UNIX-Release_X64)|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.gcmodeller_desktop|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.gcmodeller_desktop|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.gcmodeller_desktop|x64.ActiveCfg = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.gcmodeller_desktop|x64.Build.0 = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.gcmodeller_desktop|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.gcmodeller_desktop|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GTA5-game-test|Any CPU.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GTA5-game-test|Any CPU.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GTA5-game-test|x64.ActiveCfg = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GTA5-game-test|x64.Build.0 = gcmodeller_desktop|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GTA5-game-test|x86.ActiveCfg = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.GTA5-game-test|x86.Build.0 = gcmodeller_desktop|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.installer_x64|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.installer_x64|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.installer_x64|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.installer_x64|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.installer_x64|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.installer_x64|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.LipidSearch|Any CPU.ActiveCfg = LipidSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.LipidSearch|Any CPU.Build.0 = LipidSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.LipidSearch|x64.ActiveCfg = LipidSearch|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.LipidSearch|x64.Build.0 = LipidSearch|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.LipidSearch|x86.ActiveCfg = LipidSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.LipidSearch|x86.Build.0 = LipidSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.MetaCardio|Any CPU.ActiveCfg = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.MetaCardio|Any CPU.Build.0 = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.MetaCardio|x64.ActiveCfg = mzkit|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.MetaCardio|x64.Build.0 = mzkit|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.MetaCardio|x86.ActiveCfg = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.MetaCardio|x86.Build.0 = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mysqli_X64_release|Any CPU.ActiveCfg = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mysqli_X64_release|Any CPU.Build.0 = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mysqli_X64_release|x64.ActiveCfg = mzkit_win32|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mysqli_X64_release|x64.Build.0 = mzkit_win32|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mysqli_X64_release|x86.ActiveCfg = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mysqli_X64_release|x86.Build.0 = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_UnixDocker|Any CPU.ActiveCfg = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_UnixDocker|Any CPU.Build.0 = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_UnixDocker|x64.ActiveCfg = mzkit_win32|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_UnixDocker|x64.Build.0 = mzkit_win32|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_UnixDocker|x86.ActiveCfg = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_UnixDocker|x86.Build.0 = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_win32|Any CPU.ActiveCfg = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_win32|Any CPU.Build.0 = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_win32|x64.ActiveCfg = mzkit_win32|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_win32|x64.Build.0 = mzkit_win32|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_win32|x86.ActiveCfg = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit_win32|x86.Build.0 = mzkit_win32|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit|Any CPU.ActiveCfg = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit|Any CPU.Build.0 = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit|x64.ActiveCfg = mzkit|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit|x64.Build.0 = mzkit|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit|x86.ActiveCfg = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.mzkit|x86.Build.0 = mzkit|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.node-debug|Any CPU.ActiveCfg = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.node-debug|Any CPU.Build.0 = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.node-debug|x64.ActiveCfg = NPSearch|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.node-debug|x64.Build.0 = NPSearch|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.node-debug|x86.ActiveCfg = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.node-debug|x86.Build.0 = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.NPSearch|Any CPU.ActiveCfg = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.NPSearch|Any CPU.Build.0 = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.NPSearch|x64.ActiveCfg = NPSearch|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.NPSearch|x64.Build.0 = NPSearch|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.NPSearch|x86.ActiveCfg = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.NPSearch|x86.Build.0 = NPSearch|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.PlantMAT|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.PlantMAT|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.PlantMAT|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.PlantMAT|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.PlantMAT|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.PlantMAT|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.ProteoWizard.d|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.ProteoWizard.d|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.ProteoWizard.d|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.ProteoWizard.d|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.ProteoWizard.d|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.ProteoWizard.d|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Publish|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Publish|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Publish|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Publish|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Publish|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Publish|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.R-dotnet|Any CPU.ActiveCfg = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.R-dotnet|Any CPU.Build.0 = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.R-dotnet|x64.ActiveCfg = Rsharp_app_release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.R-dotnet|x64.Build.0 = Rsharp_app_release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.R-dotnet|x86.ActiveCfg = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.R-dotnet|x86.Build.0 = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Release|Any CPU.ActiveCfg = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Release|Any CPU.Build.0 = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Release|x64.ActiveCfg = Release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Release|x64.Build.0 = Release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Release|x86.ActiveCfg = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Release|x86.Build.0 = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Rsharp_app_release|Any CPU.ActiveCfg = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Rsharp_app_release|Any CPU.Build.0 = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Rsharp_app_release|x64.ActiveCfg = Rsharp_app_release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Rsharp_app_release|x64.Build.0 = Rsharp_app_release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Rsharp_app_release|x86.ActiveCfg = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Rsharp_app_release|x86.Build.0 = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.RsharpDev|Any CPU.ActiveCfg = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.RsharpDev|Any CPU.Build.0 = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.RsharpDev|x64.ActiveCfg = Rsharp_app_release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.RsharpDev|x64.Build.0 = Rsharp_app_release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.RsharpDev|x86.ActiveCfg = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.RsharpDev|x86.Build.0 = Rsharp_app_release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.sciBASIC.NET-test-release|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.sciBASIC.NET-test-release|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.sciBASIC.NET-test-release|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.sciBASIC.NET-test-release|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.sciBASIC.NET-test-release|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.sciBASIC.NET-test-release|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Surveillance-of-infectious-diseases|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Surveillance-of-infectious-diseases|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Surveillance-of-infectious-diseases|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Surveillance-of-infectious-diseases|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Surveillance-of-infectious-diseases|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Surveillance-of-infectious-diseases|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.test|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.test|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.test|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.test|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.test|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.test|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.vcellkit|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.vcellkit|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.vcellkit|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.vcellkit|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.vcellkit|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.vcellkit|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Voyager1|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Voyager1|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Voyager1|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Voyager1|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Voyager1|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Voyager1|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.WebAssembly|Any CPU.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.WebAssembly|Any CPU.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.WebAssembly|x64.ActiveCfg = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.WebAssembly|x64.Build.0 = Debug|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.WebAssembly|x86.ActiveCfg = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.WebAssembly|x86.Build.0 = Debug|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Yilia-Release_x64|Any CPU.ActiveCfg = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Yilia-Release_x64|Any CPU.Build.0 = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Yilia-Release_x64|x64.ActiveCfg = Release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Yilia-Release_x64|x64.Build.0 = Release|x64
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Yilia-Release_x64|x86.ActiveCfg = Release|Any CPU
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069}.Yilia-Release_x64|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@@ -1442,6 +2096,8 @@ Global
{62C4D50C-CF02-4F49-80A6-170BF92C331E} = {35B74108-8BAF-41B8-83E9-A4E316B36A41}
{F93A76C1-68C1-45E6-A465-8947DB9D52DE} = {35B74108-8BAF-41B8-83E9-A4E316B36A41}
{4D8ACC26-21FB-4968-8D70-E57BC009E437} = {35B74108-8BAF-41B8-83E9-A4E316B36A41}
+ {C1413834-6EBA-4668-B3E4-9DFA1EDB9A5D} = {35B74108-8BAF-41B8-83E9-A4E316B36A41}
+ {AE10F033-1EE2-44EF-AF06-F1C81411D069} = {FFF8BF41-A214-4F26-A8AF-EA056F90324D}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {A07D8780-C331-42B3-9C13-0DAF3412F233}
diff --git a/src/LINQ/RQL/API/Repository.vb b/src/LINQ/RQL/API/Repository.vb
deleted file mode 100644
index 4f5ca75..0000000
--- a/src/LINQ/RQL/API/Repository.vb
+++ /dev/null
@@ -1,151 +0,0 @@
-#Region "Microsoft.VisualBasic::6d3e9296d9ac0a069e27b1d7b70e1a55, LINQ\RQL\API\Repository.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Class Repository
- '
- ' Properties: Repository
- '
- ' Constructor: (+1 Overloads) Sub New
- '
- ' Function: __innerQuery, GetEnumerator, IEnumerable_GetEnumerator, ToString, (+2 Overloads) Where
- '
- ' Sub: (+2 Overloads) Dispose
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports Microsoft.VisualBasic.Serialization.JSON
-Imports sciBASIC.ComputingServices.RQL.Linq
-
-Namespace API
-
- '''
- ''' RQL Client API.
- '''
- '''
- ''' 数据对象在申明创建之后并没有立即执行,而是在调用迭代器之后才会执行查询
- '''
- Public Class Repository(Of T)
- Implements IDisposable
- Implements IEnumerable(Of T)
-
- Public ReadOnly Property Repository As String
-
- '''
- '''
- '''
- '''
- ''' URL, examples as: http://Linq.gcmodeller.org/kegg/ssdb
- '''
- ''' Where, the remote server http://Linq.gcmodeller.org implements the RQL services.
- ''' And the repository resource name on the server is "/kegg/ssdb"
- '''
- Sub New(source As String)
- Repository = source
- End Sub
-
- Public Overrides Function ToString() As String
- Return Repository
- End Function
-
- '''
- ''' 在这里会打开一个新的查询
- '''
- ''' 断言
- '''
- Public Function Where(assertions As String) As LinqEntry
- Return __innerQuery(Repository & "?where=" & assertions)
- End Function
-
- Public Function Where(predication As Func(Of T, Boolean)) As LinqEntry
-
- End Function
-
- Private Shared Function __innerQuery(url As String) As LinqEntry
- Dim source As String = url.GetRequest
- Dim linq As LinqEntry = source.LoadJSON(Of LinqEntry)
- Return linq
- End Function
-
-#Region "Implements IEnumerable(Of T)"
-
- Public Iterator Function GetEnumerator() As IEnumerator(Of T) Implements IEnumerable(Of T).GetEnumerator
- For Each x As T In __innerQuery(Repository).AsLinq(Of T)
- If Not disposedValue Then
- Yield x
- Else
- Exit For
- End If
- Next
- End Function
-
- Private Iterator Function IEnumerable_GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator
- Yield GetEnumerator()
- End Function
-#End Region
-
-#Region "IDisposable Support"
- Private disposedValue As Boolean ' To detect redundant calls
-
- ' IDisposable
- Protected Overridable Sub Dispose(disposing As Boolean)
- If Not Me.disposedValue Then
- If disposing Then
- ' TODO: dispose managed state (managed objects).
- End If
-
- ' TODO: free unmanaged resources (unmanaged objects) and override Finalize() below.
- ' TODO: set large fields to null.
- End If
- Me.disposedValue = True
- End Sub
-
- ' TODO: override Finalize() only if Dispose(disposing As Boolean) above has code to free unmanaged resources.
- 'Protected Overrides Sub Finalize()
- ' ' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above.
- ' Dispose(False)
- ' MyBase.Finalize()
- 'End Sub
-
- ' This code added by Visual Basic to correctly implement the disposable pattern.
- Public Sub Dispose() Implements IDisposable.Dispose
- ' Do not change this code. Put cleanup code in Dispose(disposing As Boolean) above.
- Dispose(True)
- ' TODO: uncomment the following line if Finalize() is overridden above.
- ' GC.SuppressFinalize(Me)
- End Sub
-#End Region
- End Class
-End Namespace
diff --git a/src/LINQ/RQL/RESTProvider.vb b/src/LINQ/RQL/RESTProvider.vb
deleted file mode 100644
index 628e066..0000000
--- a/src/LINQ/RQL/RESTProvider.vb
+++ /dev/null
@@ -1,152 +0,0 @@
-#Region "Microsoft.VisualBasic::dd553a93cc90f92987add8b7a99d52b6, LINQ\RQL\RESTProvider.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Class RESTProvider
- '
- ' Properties: LinqProvider
- '
- ' Constructor: (+2 Overloads) Sub New
- '
- ' Function: __helps, __httpProcessor, AddLinq
- '
- ' Sub: __apiInvoke, handleGETRequest, handleOtherMethod, handlePOSTRequest, handlePUTMethod
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports System.IO
-Imports System.Net.Sockets
-Imports Microsoft.VisualBasic.Net.Http
-Imports Microsoft.VisualBasic.Serialization.JSON
-Imports sciBASIC.ComputingServices.Linq.Framework.Provider
-Imports sciBASIC.ComputingServices.RQL.Linq
-Imports SMRUCC.WebCloud.HTTPInternal.Core
-
-'''
-''' 在线查询服务提供模块,在这个模块之中只负责进行url参数的解析工作
-'''
-Public Class RESTProvider : Inherits HttpServer
-
- Public ReadOnly Property LinqProvider As LinqAPI
-
- '''
- '''
- '''
- '''
- ''' 需要在这里将url转换为Long以进行protocol的绑定操作
- Sub New(portal As Integer, repo As Linq.Repository)
- Call MyBase.New(portal)
- Me.LinqProvider = New LinqAPI(repo)
- End Sub
-
- Sub New()
- Call Me.New(80, Repository.LoadDefault)
- End Sub
-
- Public Function AddLinq(url As String, resource As String, handle As GetLinqResource) As Boolean
- Try
- Call LinqProvider.Repository.AddLinq(url, resource, handle)
- Catch ex As Exception
- ex = New Exception(url, ex)
- ex = New Exception(resource, ex)
- Call App.LogException(ex)
- Return False
- End Try
-
- Return True
- End Function
-
- '''
- ''' http://linq.gcmodeller.org/kegg/pathways?where=test_expr(pathway)
- ''' 测试条件里面的对象实例的标识符使用资源url里面的最后一个标识符为变量名
- ''' 测试条件表达式使用VisualBasic的语法
- ''' 测试条件必须以where起头开始
- '''
- '''
- ''' 返回一个网络终点IpEndPoint
- Public Overrides Sub handleGETRequest(p As HttpProcessor)
- If p.IsWWWRoot Then
- Call p.WriteLine(__helps) ' 返回帮助信息
- Else
- Call __apiInvoke(p)
- End If
- End Sub
-
- Private Function __helps() As String
-
- End Function
-
- Private Sub __apiInvoke(p As HttpProcessor)
- Dim url As String = p.http_url
- Dim pos As Integer = InStr(url, "?")
- Dim args As String = ""
-
- If pos = 0 Then
- ' expr为空
- Else
- args = Mid(url, pos + 1).Trim ' 参数里面可能含有转意字符,还需要进行转意
- args = args.UrlDecode
- url = Mid(url, 1, pos - 1).ToLower
- End If
-
- Call p.writeSuccess(1024)
-
- Select Case url
- Case "/move_next.vb"
- Call p.WriteLine(LinqProvider.MoveNext(args.QueryStringParameters))
- Case "/helps"
- Call p.WriteLine(__helps)
- Case "/close.vb"
- Call p.WriteLine(LinqProvider.Free(args.QueryStringParameters))
- Case Else ' 打开linq查询
- Dim Linq As LinqEntry = LinqProvider.OpenQuery(url, args)
- Call p.outputStream.WriteLine(Linq.GetJson)
- End Select
- End Sub
-
- Public Overrides Sub handlePOSTRequest(p As HttpProcessor, inputData$)
- Call p.writeFailure(HTTP_RFC.RFC_METHOD_NOT_ALLOWED, "Method not allowed!")
- End Sub
-
- Protected Overrides Function __httpProcessor(client As TcpClient) As HttpProcessor
- Return New HttpProcessor(client, Me, 128 * 1024 * 1024)
- End Function
-
- Public Overrides Sub handleOtherMethod(p As HttpProcessor)
- End Sub
-
- Public Overrides Sub handlePUTMethod(p As HttpProcessor, inputData$)
- Throw New NotImplementedException()
- End Sub
-End Class
diff --git a/src/LINQ/RQL/RQL.vbproj b/src/LINQ/RQL/RQL.vbproj
index 660a568..74da151 100644
--- a/src/LINQ/RQL/RQL.vbproj
+++ b/src/LINQ/RQL/RQL.vbproj
@@ -243,11 +243,6 @@
-
-
-
-
-
True
@@ -263,10 +258,6 @@
Settings.settings
True
-
-
-
-
@@ -288,21 +279,17 @@
-
- {fbfc1455-b232-4f16-afc7-4054a8b864ab}
- SMRUCC.WebCloud.HTTPInternal
+
+ {62c4d50c-cf02-4f49-80a6-170bf92c331e}
+ binarydata-netcore5
-
- {fecce1fd-e1d4-49e3-a668-60bb5e7aed99}
- 47-dotnet_Microsoft.VisualBasic
+
+ {c1413834-6eba-4668-b3e4-9dfa1edb9a5d}
+ HDSPack
-
- {87383048-1b31-49b7-9fb7-0ded1b80ace8}
- ComputingServices
-
-
- {0a9b9fa6-e12d-48fd-b979-9f021a591e69}
- LINQ
+
+ {ef075a21-793b-45ed-9c38-ad5d04744aec}
+ Core
diff --git a/src/LINQ/RQL/Repository/LinqAPI.vb b/src/LINQ/RQL/Repository/LinqAPI.vb
deleted file mode 100644
index 68e3e54..0000000
--- a/src/LINQ/RQL/Repository/LinqAPI.vb
+++ /dev/null
@@ -1,121 +0,0 @@
-#Region "Microsoft.VisualBasic::22586192046998227a38d880c5be5068, LINQ\RQL\Repository\LinqAPI.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Class LinqAPI
- '
- ' Properties: Repository
- '
- ' Constructor: (+1 Overloads) Sub New
- ' Function: Free, MoveNext, OpenQuery
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports System.Collections.Specialized
-Imports Microsoft.VisualBasic.Net
-Imports Microsoft.VisualBasic.Scripting.Runtime
-Imports Microsoft.VisualBasic.SecurityString.MD5Hash
-Imports Microsoft.VisualBasic.Serialization.JSON
-Imports sciBASIC.ComputingServices.TaskHost
-
-Namespace Linq
-
- '''
- ''' 对外部提供Linq查询服务的WebApp
- '''
- Public Class LinqAPI : Inherits LinqPool
-
- Public ReadOnly Property Repository As Repository
-
- '''
- ''' {hashCode.tolower, linq_uid}
- '''
- ReadOnly __uidMaps As New Dictionary(Of String, String)
-
- Sub New(repo As Repository)
- Me.Repository = repo
- End Sub
-
- '''
- '''
- '''
- ''' 数据源的引用位置
- ''' 查询参数
- '''
- Public Overloads Function OpenQuery(url As String, args As String) As LinqEntry
- Dim source As IEnumerable = Repository.GetRepository(url, args) ' expr为空的话,则没有where测试,则返回所有数据
- Dim type As Type = Repository.GetType(url) ' 得到元素的类型信息
- Dim linq As IPEndPoint = OpenQuery(source, type)
- Dim result As New LinqEntry(type) With {
- .Linq = linq,
- .uid = (linq.ToString & Now.ToString).GetMd5Hash.ToLower
- }
- Call __uidMaps.Add(result.uid, result.Linq.ToString)
- Return result
- End Function
-
- '''
- ''' Linq数据源的MD5哈希值
- '''
- Const uid As String = "uid"
- Const n As String = "n"
-
- '''
- '''
- '''
- ''' uid,n
- '''
- Public Function MoveNext(args As NameValueCollection) As String
- Dim uid As String = args(LinqAPI.uid)
- Dim n As Integer = CastInteger(args(LinqAPI.n))
- Dim linq As LinqProvider = GetLinq(__uidMaps(uid))
- Dim source As Object = linq.Moves(n)
- Dim json As String = JsonContract.GetObjectJson(source, linq.BaseType)
- Return json
- End Function
-
- '''
- ''' 释放掉一个Linq查询的资源
- '''
- '''
- '''
- Public Overloads Function Free(args As NameValueCollection) As String
- Dim uid As String = args(LinqAPI.uid)
- Call MyBase.Free(__uidMaps(uid))
- Call __uidMaps.Remove(uid)
- Return True
- End Function
- End Class
-End Namespace
diff --git a/src/LINQ/RQL/Repository/LinqEntry.vb b/src/LINQ/RQL/Repository/LinqEntry.vb
deleted file mode 100644
index f765b4a..0000000
--- a/src/LINQ/RQL/Repository/LinqEntry.vb
+++ /dev/null
@@ -1,83 +0,0 @@
-#Region "Microsoft.VisualBasic::b34a9134d5bda3ea760382bb122a5d71, LINQ\RQL\Repository\LinqEntry.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Class LinqEntry
- '
- ' Properties: Linq, uid
- '
- ' Constructor: (+2 Overloads) Sub New
- ' Function: AsLinq, LinqReader
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports Microsoft.VisualBasic.Net
-Imports Microsoft.VisualBasic.Scripting
-Imports sciBASIC.ComputingServices.TaskHost
-
-Namespace Linq
-
- '''
- ''' 类型信息是所查询的对象的类型信息
- '''
- Public Class LinqEntry : Inherits MetaData.TypeInfo
-
- '''
- ''' 唯一标识当前的这个查询的哈希值
- '''
- '''
- Public Property uid As String
- '''
- ''' 除了使用上面的uid进行url查询,也可以使用这个地址来使用socket查询,具体的协议已经封装在
- '''
- '''
- Public Property Linq As IPEndPoint
-
- Sub New()
- End Sub
-
- Sub New(info As Type)
- Call MyBase.New(info)
- End Sub
-
- Public Function AsLinq(Of T)() As ILinq(Of T)
- Return New ILinq(Of T)(Linq)
- End Function
-
- Public Function LinqReader() As ILinqReader
- Return New ILinqReader(Linq, Me.GetType)
- End Function
- End Class
-End Namespace
diff --git a/src/LINQ/RQL/Repository/Repository.vb b/src/LINQ/RQL/Repository/Repository.vb
deleted file mode 100644
index 12967c4..0000000
--- a/src/LINQ/RQL/Repository/Repository.vb
+++ /dev/null
@@ -1,159 +0,0 @@
-#Region "Microsoft.VisualBasic::9e0d798a2737cffa02d6e70216354955, LINQ\RQL\Repository\Repository.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Class Repository
- '
- ' Properties: DefaultFile, Models
- '
- ' Constructor: (+2 Overloads) Sub New
- '
- ' Function: [GetType], GetRepository, ISaveHandle_Save, LoadDefault, LoadFile
- ' Save
- '
- ' Sub: AddLinq
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports System.Text
-Imports System.Text.RegularExpressions
-Imports Microsoft.VisualBasic.ComponentModel
-Imports Microsoft.VisualBasic.Language
-Imports Microsoft.VisualBasic.Serialization.JSON.JsonContract
-Imports Microsoft.VisualBasic.Text
-Imports sciBASIC.ComputingServices.Linq.Framework.DynamicCode
-Imports sciBASIC.ComputingServices.Linq.Framework.Provider
-Imports sciBASIC.ComputingServices.Linq.Framework.Provider.ImportsAPI
-Imports sciBASIC.ComputingServices.RQL.StorageTek
-
-Namespace Linq
-
- '''
- ''' Repository database
- '''
- Public Class Repository : Implements ISaveHandle
-
- '''
- ''' {lower_case.url, type_info}
- '''
- '''
- Public Property Models As New Dictionary(Of String, EntityProvider)
-
- ReadOnly __types As TypeRegistry
- ReadOnly __api As APIProvider
- ReadOnly __compiler As DynamicCompiler
-
- Sub New()
- __api = APIProvider.LoadDefault
- __types = TypeRegistry.LoadDefault
- __compiler = New DynamicCompiler(__types, __api)
- End Sub
-
- Sub New(compiler As DynamicCompiler)
- __compiler = compiler
- __api = compiler.ApiProvider
- __types = compiler.EntityProvider
- End Sub
-
- Public Sub AddLinq(url As Value(Of String), resource As String, Linq As GetLinqResource)
- Dim res As EntityProvider = LinqSource.Source(resource, Linq)
- If Models.ContainsKey(url = (+url).ToLower) Then
- Call Models.Remove(url)
- End If
- Call Models.Add(url, res)
- End Sub
-
- '''
- '''
- '''
- ''' 大小写不敏感,不需要额外的处理
- '''
- Public Function GetRepository(url As String, Optional where As String = "") As IEnumerable
- Dim api As EntityProvider = Models(url.ToLower)
-
- If String.IsNullOrEmpty(where) Then
- Return api.GetRepository
- Else
- Dim prefix As String = Regex.Match(where, "^\s*where\s*=", RegexOptions.IgnoreCase Or RegexOptions.Multiline).Value
- If Not String.IsNullOrEmpty(prefix) Then
- where = Mid(where, prefix.Length + 1)
- End If
-
- Return api.LinqWhere(where, __compiler)
- End If
- End Function
-
- '''
- ''' 获取得到的是集合之中的元素的类型
- '''
- '''
- '''
- Public Overloads Function [GetType](url As String) As Type
- Dim api As EntityProvider = Models(url.ToLower)
- Return api.GetType
- End Function
-
- Public Shared Function LoadFile(url As String) As Repository
- Try
- Return LoadJsonFile(Of Repository)(url)
- Catch ex As Exception
- ex = New Exception(url, ex)
- Call App.LogException(ex)
-
- Dim __new As New Repository
- Call __new.Save(url, Encodings.ASCII)
- Return __new
- End Try
- End Function
-
- Public Shared Function LoadDefault() As Repository
- Return LoadFile(DefaultFile)
- End Function
-
- Public Shared ReadOnly Property DefaultFile As String =
- App.ProductSharedDIR & "/RQL.Provider.json"
-
- Private Function ISaveHandle_Save(Path As String, encoding As Encoding) As Boolean Implements ISaveHandle.Save
- If String.IsNullOrEmpty(Path) Then
- Path = DefaultFile
- End If
- Return Me.GetJson.SaveTo(Path, encoding)
- End Function
-
- Public Function Save(Path As String, Optional encoding As Encodings = Encodings.UTF8) As Boolean Implements ISaveHandle.Save
- Return ISaveHandle_Save(Path, encoding.CodePage)
- End Function
- End Class
-End Namespace
diff --git a/src/LINQ/RQL/StorageTek/API.vb b/src/LINQ/RQL/StorageTek/API.vb
deleted file mode 100644
index 6cb3cf7..0000000
--- a/src/LINQ/RQL/StorageTek/API.vb
+++ /dev/null
@@ -1,133 +0,0 @@
-#Region "Microsoft.VisualBasic::36588f403fe091d67737baddedfd90de, LINQ\RQL\StorageTek\API.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Module API
- '
- ' Properties: InternalAPIs
- '
- ' Constructor: (+1 Overloads) Sub New
- ' Function: __loadJSON, DIRJson, DIRRepository, DIRXml, JsonList
- ' XmlList
- '
- ' Delegate Function
- '
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports Microsoft.VisualBasic.Serialization.JSON.JsonContract
-Imports Microsoft.VisualBasic
-
-Namespace StorageTek
-
- '''
- ''' 系统自有的存储API
- '''
- Public Module API
-
- '''
- ''' 系统自带的存储API
- '''
- '''
- Public ReadOnly Property InternalAPIs As Dictionary(Of StorageTeks, IRepository)
-
- Sub New()
- InternalAPIs = New Dictionary(Of StorageTeks, IRepository) From {
- _
- {StorageTeks.Json, AddressOf JsonList},
- {StorageTeks.Xml, AddressOf XmlList},
- {StorageTeks.DIR Or StorageTeks.Json, AddressOf DIRJson},
- {StorageTeks.DIR Or StorageTeks.Xml, AddressOf DIRXml}
- }
- End Sub
-
- '''
- '''
- '''
- '''
- ''' 单个元素的类型
- '''
- Public Function XmlList(url As String, type As Type) As IEnumerable
- Dim listType As Type = GetType(List(Of )).MakeGenericType(type)
- Dim obj As Object = url.LoadXml(type)
- Dim source = DirectCast(obj, IEnumerable)
- Return source
- End Function
-
- Public Function JsonList(url As String, type As Type) As IEnumerable
- Dim listType As Type = GetType(List(Of )).MakeGenericType(type)
- Dim json As String = IO.File.ReadAllText(url)
- Dim source As Object = LoadObject(json, type)
- Return DirectCast(source, IEnumerable)
- End Function
-
- '''
- ''' 实体对象单独保存在一个json文件之中
- '''
- '''
- '''
- '''
- Public Function DIRJson(url As String, type As Type) As IEnumerable
- Return DIRRepository(url, type, AddressOf __loadJSON, "json")
- End Function
-
- Private Function __loadJSON(url As String, type As Type) As Object
- Try
- Dim json As String = IO.File.ReadAllText(url)
- Return LoadObject(json, type)
- Catch ex As Exception
- ex = New Exception(url, ex)
- Call App.LogException(ex)
- Return Nothing
- End Try
- End Function
-
- Private Function DIRRepository(url As String, type As Type, repo As IRepository, ext As String) As IEnumerable
- Dim DIR As IO.DirectoryInfo = FileIO.FileSystem.GetDirectoryInfo(url)
- Dim LQuery As IEnumerable = From f As IO.FileInfo
- In DIR.EnumerateFiles
- Let iExt As String = f.FullName.Split("."c).Last
- Where String.Equals(iExt, ext, StringComparison.OrdinalIgnoreCase)
- Select repo(f.FullName, type)
- Return LQuery
- End Function
-
- Public Function DIRXml(url As String, type As Type) As IEnumerable
- Return DIRRepository(url, type, AddressOf LoadXml, "xml")
- End Function
- End Module
-
- Public Delegate Function IRepository(url As String, type As Type) As IEnumerable
-End Namespace
diff --git a/src/LINQ/RQL/StorageTek/EntityProvider.vb b/src/LINQ/RQL/StorageTek/EntityProvider.vb
deleted file mode 100644
index f0a1a54..0000000
--- a/src/LINQ/RQL/StorageTek/EntityProvider.vb
+++ /dev/null
@@ -1,109 +0,0 @@
-#Region "Microsoft.VisualBasic::4a78e6e2ba51853e82ea495ba548192c, LINQ\RQL\StorageTek\EntityProvider.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Class EntityProvider
- '
- ' Properties: MapFileIO, Tek
- '
- ' Constructor: (+2 Overloads) Sub New
- ' Function: __internalRepository, GetRepository, LinqWhere, ToString
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports sciBASIC.ComputingServices.Linq.Framework.DynamicCode
-Imports sciBASIC.ComputingServices.Linq.Framework.Provider
-Imports sciBASIC.ComputingServices.Linq.LDM.Statements.Tokens
-Imports sciBASIC.ComputingServices.Linq.LDM.Statements.Tokens.WhereClosure
-
-Namespace StorageTek
-
- '''
- ''' 实体对象,实际上这个模块最主要的功能就是提供数据源的读取方法
- '''
- Public Class EntityProvider : Inherits TypeEntry
-
- '''
- ''' 存储的方法
- '''
- '''
- Public Property Tek As StorageTeks
- '''
- ''' 映射的实际的存储位置
- '''
- '''
- Public Property MapFileIO As String
-
- Sub New()
- End Sub
-
- Sub New(Linq As TypeEntry, res As String)
- Call MyBase.New(Linq)
- Tek = StorageTeks.Linq
- MapFileIO = res
- End Sub
-
- Public Function GetRepository() As IEnumerable
- If Tek = StorageTeks.Linq Then ' 使用的是Linq数据源
- Dim hwnd As GetLinqResource = Me.GetHandle
- Return hwnd(MapFileIO)
- Else
- Return __internalRepository()
- End If
- End Function
-
- '''
- ''' 系统的自有的数据源方法
- '''
- '''
- Private Function __internalRepository() As IEnumerable
- Dim api As IRepository = StorageTek.API.InternalAPIs(Tek) ' 在这里是系统的自有的数据源方法
- Dim type As Type = Me.TypeId.GetType ' 得到元素类型的信息
- Dim source As IEnumerable = api(MapFileIO, type)
- Return source
- End Function
-
- Public Overrides Function ToString() As String
- Return $"[{Tek.ToString}] {MapFileIO} //{MyBase.ToString}"
- End Function
-
- Public Function LinqWhere(where As String, compiler As DynamicCompiler) As IEnumerable
- Dim type As Type = Me.GetType
- Dim test As Predicate(Of Object) = WhereClosure.CreateLinqWhere(where, type, compiler)
- Dim LQuery = (From x As Object In GetRepository() Where True = test(x) Select x)
- Return LQuery
- End Function
- End Class
-End Namespace
diff --git a/src/LINQ/RQL/StorageTek/LinqSource.vb b/src/LINQ/RQL/StorageTek/LinqSource.vb
deleted file mode 100644
index ba7ef31..0000000
--- a/src/LINQ/RQL/StorageTek/LinqSource.vb
+++ /dev/null
@@ -1,69 +0,0 @@
-#Region "Microsoft.VisualBasic::73f1ed0dd0d3dc2f8577ce1e60a5b5ef, LINQ\RQL\StorageTek\LinqSource.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Module LinqSource
- '
- ' Function: Source
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Imports System.Reflection
-Imports sciBASIC.ComputingServices.Linq.Framework.Provider
-
-Namespace StorageTek
-
- Public Module LinqSource
-
- Const NO_LINQ As String = "The target function pointer handle have not defined any Linq source entry yet..."
-
- '''
- ''' 生成Linq数据源
- '''
- '''
- '''
- '''
- Public Function Source(res As String, handle As GetLinqResource) As EntityProvider
- Dim mINFO As MethodInfo = handle.Method
- Dim Linq As TypeEntry = TypeRegistry.ParsingEntry(mINFO)
- If Linq Is Nothing Then
- Dim ex As New Exception(NO_LINQ)
- ex = New DataException(mINFO.GetFullName(True), ex)
- Throw ex
- End If
- Return New EntityProvider(Linq, res)
- End Function
- End Module
-End Namespace
diff --git a/src/LINQ/RQL/StorageTek/StorageTeks.vb b/src/LINQ/RQL/StorageTek/StorageTeks.vb
deleted file mode 100644
index 6e1654d..0000000
--- a/src/LINQ/RQL/StorageTek/StorageTeks.vb
+++ /dev/null
@@ -1,83 +0,0 @@
-#Region "Microsoft.VisualBasic::ebb40df87e60993346cb906951d1412c, LINQ\RQL\StorageTek\StorageTeks.vb"
-
- ' Author:
- '
- ' asuka (amethyst.asuka@gcmodeller.org)
- ' xie (genetics@smrucc.org)
- ' xieguigang (xie.guigang@live.com)
- '
- ' Copyright (c) 2018 GPL3 Licensed
- '
- '
- ' GNU GENERAL PUBLIC LICENSE (GPL3)
- '
- '
- ' This program is free software: you can redistribute it and/or modify
- ' it under the terms of the GNU General Public License as published by
- ' the Free Software Foundation, either version 3 of the License, or
- ' (at your option) any later version.
- '
- ' This program is distributed in the hope that it will be useful,
- ' but WITHOUT ANY WARRANTY; without even the implied warranty of
- ' MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- ' GNU General Public License for more details.
- '
- ' You should have received a copy of the GNU General Public License
- ' along with this program. If not, see .
-
-
-
- ' /********************************************************************************/
-
- ' Summaries:
-
- ' Enum StorageTeks
- '
- ' Linq
- '
- '
- '
- '
- '
- '
- ' /********************************************************************************/
-
-#End Region
-
-Namespace StorageTek
-
- '''
- ''' Entity storage technology.(实体对象所存储的方法)
- '''
- Public Enum StorageTeks As Integer
- '''
- ''' 使用的是Linq数据源
- '''
- Linq
- '''
- ''' Individual files in a directory.(以单独的文件的形式保存在一个文件夹之中)
- '''
- DIR = 2
- '''
- ''' Csv rows.(Csv文件的行映射为某一个实体对象)(需要外部插件)
- '''
- Tabular = 4
- '''
- ''' Xml文件之中的List之中的某一个对象映射为某一个实体对象
- '''
- Xml = 8
- '''
- ''' Json文件之中的list之中的某一个对象映射为某一个实体对象
- '''
- Json = 16
- '''
- ''' 实体对象是存储在MySQL数据库的某一张表之中的.(需要外部插件)
- '''
- SQL = 32
- '''
- ''' 二进制类型的数据源
- '''
- ''' 例如图片,声音,视频等
- Binary = 64
- End Enum
-End Namespace