diff --git a/dxfeed-graal-net-api.sln b/dxfeed-graal-net-api.sln
index 6b6e004e..26145b42 100644
--- a/dxfeed-graal-net-api.sln
+++ b/dxfeed-graal-net-api.sln
@@ -4,56 +4,76 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeed.Graal.Net", "src\DxF
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeed.Graal.Net.Tools", "src\DxFeed.Graal.Net.Tools\DxFeed.Graal.Net.Tools.csproj", "{1F8765D9-1ED0-40EC-8239-B3E9F7BDF38C}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{D8A3B3E7-CFFD-4113-862D-B9E9E7FF0BA5}"
+EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeed.Graal.Net.Tests", "tests\DxFeed.Graal.Net.Tests\DxFeed.Graal.Net.Tests.csproj", "{7F07BB95-9DB6-4331-BCCF-FBF441F8F3E2}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Samples", "Samples", "{C4490D74-2970-4A1B-8178-A724A06B140A}"
+ ProjectSection(SolutionItems) = preProject
+ samples\Directory.Build.props = samples\Directory.Build.props
+ samples\dxfeed.properties = samples\dxfeed.properties
+ EndProjectSection
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PrintQuoteEvents", "samples\PrintQuoteEvents\PrintQuoteEvents.csproj", "{73597E04-D8A8-4991-A759-7F886CBE2A8F}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "API", "API", "{BABA2486-F8A5-4608-A79F-D03247FE2332}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeedConnect", "samples\DxFeedConnect\DxFeedConnect.csproj", "{2A8B6037-09FF-40DC-868F-A0ED54A46287}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AuthSample", "samples\API\AuthSample\AuthSample.csproj", "{B9088D14-10F6-4D88-876D-062B9F6494AB}"
EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Tests", "Tests", "{D8A3B3E7-CFFD-4113-862D-B9E9E7FF0BA5}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConnectSample", "samples\API\ConnectSample\ConnectSample.csproj", "{2A8B6037-09FF-40DC-868F-A0ED54A46287}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WriteTapeFile", "samples\WriteTapeFile\WriteTapeFile.csproj", "{F06FDF6E-6BE8-4A72-A834-62AB1BAA6B7A}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PrintQuoteEventsSample", "samples\API\PrintQuoteEventsSample\PrintQuoteEventsSample.csproj", "{73597E04-D8A8-4991-A759-7F886CBE2A8F}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConvertTapeFile", "samples\ConvertTapeFile\ConvertTapeFile.csproj", "{F9369083-EB43-455F-8944-07246E4FE6AC}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "QuoteAndTradeSample", "samples\API\QuoteAndTradeSample\QuoteAndTradeSample.csproj", "{ECD5E041-0FBF-475E-82A6-DE6384EF25A0}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeedFileParser", "samples\DxFeedFileParser\DxFeedFileParser.csproj", "{62ED5ABC-B2A7-4CE3-8AE1-25AF185B47E9}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ReconnectSample", "samples\API\ReconnectSample\ReconnectSample.csproj", "{C457D53F-A033-465C-B250-A6CC60D02F98}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeedSample", "samples\DxFeedSample\DxFeedSample.csproj", "{ECD5E041-0FBF-475E-82A6-DE6384EF25A0}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Candle", "Candle", "{F7C44172-08CC-4CF9-97A8-01460C2AB759}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CandleSample", "samples\CandleSample\CandleSample.csproj", "{CECAB17A-9DBE-4A4E-8556-5747AB170714}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CandleDataSample", "samples\Candle\CandleDataSample\CandleDataSample.csproj", "{2567935E-FEFB-470A-BF17-7A883735C4BF}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeedIpfConnect", "samples\DxFeedIpfConnect\DxFeedIpfConnect.csproj", "{62206DAF-999F-437A-AC18-1217ED14EB52}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CandleSample", "samples\Candle\CandleSample\CandleSample.csproj", "{CECAB17A-9DBE-4A4E-8556-5747AB170714}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeedLiveIpfSample", "samples\DxFeedLiveIpfSample\DxFeedLiveIpfSample.csproj", "{C2F0FF7C-4675-4D5F-AE90-0E8DA33A1EB8}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FetchDailyCandlesSample", "samples\Candle\FetchDailyCandlesSample\FetchDailyCandlesSample.csproj", "{0797D7A4-3572-457B-AAD9-3F26098D4BDD}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FetchDailyCandles", "samples\FetchDailyCandles\FetchDailyCandles.csproj", "{0797D7A4-3572-457B-AAD9-3F26098D4BDD}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Console", "Console", "{6E5A386D-1FB6-45BE-A80E-E29CA4AC697E}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScheduleSample", "samples\ScheduleSample\ScheduleSample.csproj", "{119E7BB3-4B97-4824-9CA7-0D4C9B57590D}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LastEventConsoleSample", "samples\Console\LastEventConsoleSample\LastEventConsoleSample.csproj", "{0CD0E240-687A-46A7-B343-BA8A6549A216}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DxFeedReconnectSample", "samples\DxFeedReconnectSample\DxFeedReconnectSample.csproj", "{C457D53F-A033-465C-B250-A6CC60D02F98}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "File", "File", "{D3E3A3FE-5F34-40DE-A8F2-7640F7C77BD2}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SimpleAuthSample", "samples\SimpleAuthSample\SimpleAuthSample.csproj", "{B9088D14-10F6-4D88-876D-062B9F6494AB}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ConvertTapeFileSample", "samples\File\ConvertTapeFileSample\ConvertTapeFileSample.csproj", "{F9369083-EB43-455F-8944-07246E4FE6AC}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CandleDataResponseReader", "samples\CandleDataResponseReader\CandleDataResponseReader.csproj", "{2567935E-FEFB-470A-BF17-7A883735C4BF}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "FileParserSample", "samples\File\FileParserSample\FileParserSample.csproj", "{62ED5ABC-B2A7-4CE3-8AE1-25AF185B47E9}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MarketDepthModelSample", "samples\UI\MarketDepthModelSample\MarketDepthModelSample.csproj", "{930B1039-B76C-42C5-AD0F-9FA1A1FC9D84}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "WriteTapeFileSample", "samples\File\WriteTapeFileSample\WriteTapeFileSample.csproj", "{F06FDF6E-6BE8-4A72-A834-62AB1BAA6B7A}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CandleChartSample", "samples\UI\CandleChartSample\CandleChartSample.csproj", "{B74E8A86-1AB7-4B36-AED3-292CDD95BF90}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "IPF", "IPF", "{01C0CC82-3B56-434C-B133-4CAA5B3BFE70}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IpfLiveSample", "samples\IPF\IpfLiveSample\IpfLiveSample.csproj", "{C2F0FF7C-4675-4D5F-AE90-0E8DA33A1EB8}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IpfSample", "samples\IPF\IpfSample\IpfSample.csproj", "{62206DAF-999F-437A-AC18-1217ED14EB52}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IncOrderSnapshotSample", "samples\IncOrderSnapshotSample\IncOrderSnapshotSample.csproj", "{9B758A5C-8AA1-4560-A7CF-EF375B9A1E4C}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "OptionChainSample", "samples\IPF\OptionChainSample\OptionChainSample.csproj", "{7E7BF3A7-C564-4B82-AAD6-6C1D1BCE3F19}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultipleMarketDepthSample", "samples\MultipleMarketDepthSample\MultipleMarketDepthSample.csproj", "{C8F5013F-7F40-46D2-92AD-6B593524A1D0}"
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Model", "Model", "{2D069CF7-FE52-487B-8AF9-1A7EB0B296FD}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "IncOrderSnapshotSample", "samples\Model\IncOrderSnapshotSample\IncOrderSnapshotSample.csproj", "{9B758A5C-8AA1-4560-A7CF-EF375B9A1E4C}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MultipleMarketDepthSample", "samples\Model\MultipleMarketDepthSample\MultipleMarketDepthSample.csproj", "{C8F5013F-7F40-46D2-92AD-6B593524A1D0}"
+EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Schedule", "Schedule", "{774DD1AE-2931-44CC-8AF2-F28955230507}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ScheduleSample", "samples\Schedule\ScheduleSample\ScheduleSample.csproj", "{119E7BB3-4B97-4824-9CA7-0D4C9B57590D}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "UI", "UI", "{5F74BD34-C2D4-436B-8243-FB0F3BB9F0AC}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "DXFeedOptionChain", "samples\DXFeedOptionChain\DXFeedOptionChain.csproj", "{7E7BF3A7-C564-4B82-AAD6-6C1D1BCE3F19}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "CandleChartSample", "samples\UI\CandleChartSample\CandleChartSample.csproj", "{B74E8A86-1AB7-4B36-AED3-292CDD95BF90}"
EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "LastEventConsoleSample", "samples\LastEventConsoleSample\LastEventConsoleSample.csproj", "{0CD0E240-687A-46A7-B343-BA8A6549A216}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MarketDepthModelSample", "samples\UI\MarketDepthModelSample\MarketDepthModelSample.csproj", "{930B1039-B76C-42C5-AD0F-9FA1A1FC9D84}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "PriceLevelBookSample", "samples\UI\PriceLevelBookSample\PriceLevelBookSample.csproj", "{A5B1FE68-8943-4340-BFEC-6D1B40823493}"
EndProject
+Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Simple", "Simple", "{55801FC9-1025-47A2-8365-E996DB66D6DC}"
+EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
@@ -158,28 +178,36 @@ Global
{A5B1FE68-8943-4340-BFEC-6D1B40823493}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(NestedProjects) = preSolution
- {73597E04-D8A8-4991-A759-7F886CBE2A8F} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {2A8B6037-09FF-40DC-868F-A0ED54A46287} = {C4490D74-2970-4A1B-8178-A724A06B140A}
{7F07BB95-9DB6-4331-BCCF-FBF441F8F3E2} = {D8A3B3E7-CFFD-4113-862D-B9E9E7FF0BA5}
- {F06FDF6E-6BE8-4A72-A834-62AB1BAA6B7A} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {F9369083-EB43-455F-8944-07246E4FE6AC} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {62ED5ABC-B2A7-4CE3-8AE1-25AF185B47E9} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {ECD5E041-0FBF-475E-82A6-DE6384EF25A0} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {CECAB17A-9DBE-4A4E-8556-5747AB170714} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {62206DAF-999F-437A-AC18-1217ED14EB52} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {C2F0FF7C-4675-4D5F-AE90-0E8DA33A1EB8} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {0797D7A4-3572-457B-AAD9-3F26098D4BDD} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {119E7BB3-4B97-4824-9CA7-0D4C9B57590D} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {C457D53F-A033-465C-B250-A6CC60D02F98} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {B9088D14-10F6-4D88-876D-062B9F6494AB} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {2567935E-FEFB-470A-BF17-7A883735C4BF} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {9B758A5C-8AA1-4560-A7CF-EF375B9A1E4C} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {C8F5013F-7F40-46D2-92AD-6B593524A1D0} = {C4490D74-2970-4A1B-8178-A724A06B140A}
{5F74BD34-C2D4-436B-8243-FB0F3BB9F0AC} = {C4490D74-2970-4A1B-8178-A724A06B140A}
{B74E8A86-1AB7-4B36-AED3-292CDD95BF90} = {5F74BD34-C2D4-436B-8243-FB0F3BB9F0AC}
{930B1039-B76C-42C5-AD0F-9FA1A1FC9D84} = {5F74BD34-C2D4-436B-8243-FB0F3BB9F0AC}
- {7E7BF3A7-C564-4B82-AAD6-6C1D1BCE3F19} = {C4490D74-2970-4A1B-8178-A724A06B140A}
- {0CD0E240-687A-46A7-B343-BA8A6549A216} = {C4490D74-2970-4A1B-8178-A724A06B140A}
{A5B1FE68-8943-4340-BFEC-6D1B40823493} = {5F74BD34-C2D4-436B-8243-FB0F3BB9F0AC}
+ {55801FC9-1025-47A2-8365-E996DB66D6DC} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {BABA2486-F8A5-4608-A79F-D03247FE2332} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {6E5A386D-1FB6-45BE-A80E-E29CA4AC697E} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {01C0CC82-3B56-434C-B133-4CAA5B3BFE70} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {774DD1AE-2931-44CC-8AF2-F28955230507} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {2A8B6037-09FF-40DC-868F-A0ED54A46287} = {BABA2486-F8A5-4608-A79F-D03247FE2332}
+ {ECD5E041-0FBF-475E-82A6-DE6384EF25A0} = {BABA2486-F8A5-4608-A79F-D03247FE2332}
+ {0CD0E240-687A-46A7-B343-BA8A6549A216} = {6E5A386D-1FB6-45BE-A80E-E29CA4AC697E}
+ {7E7BF3A7-C564-4B82-AAD6-6C1D1BCE3F19} = {01C0CC82-3B56-434C-B133-4CAA5B3BFE70}
+ {C2F0FF7C-4675-4D5F-AE90-0E8DA33A1EB8} = {01C0CC82-3B56-434C-B133-4CAA5B3BFE70}
+ {62206DAF-999F-437A-AC18-1217ED14EB52} = {01C0CC82-3B56-434C-B133-4CAA5B3BFE70}
+ {119E7BB3-4B97-4824-9CA7-0D4C9B57590D} = {774DD1AE-2931-44CC-8AF2-F28955230507}
+ {C457D53F-A033-465C-B250-A6CC60D02F98} = {BABA2486-F8A5-4608-A79F-D03247FE2332}
+ {D3E3A3FE-5F34-40DE-A8F2-7640F7C77BD2} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {F7C44172-08CC-4CF9-97A8-01460C2AB759} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {2D069CF7-FE52-487B-8AF9-1A7EB0B296FD} = {C4490D74-2970-4A1B-8178-A724A06B140A}
+ {F9369083-EB43-455F-8944-07246E4FE6AC} = {D3E3A3FE-5F34-40DE-A8F2-7640F7C77BD2}
+ {F06FDF6E-6BE8-4A72-A834-62AB1BAA6B7A} = {D3E3A3FE-5F34-40DE-A8F2-7640F7C77BD2}
+ {62ED5ABC-B2A7-4CE3-8AE1-25AF185B47E9} = {D3E3A3FE-5F34-40DE-A8F2-7640F7C77BD2}
+ {9B758A5C-8AA1-4560-A7CF-EF375B9A1E4C} = {2D069CF7-FE52-487B-8AF9-1A7EB0B296FD}
+ {C8F5013F-7F40-46D2-92AD-6B593524A1D0} = {2D069CF7-FE52-487B-8AF9-1A7EB0B296FD}
+ {2567935E-FEFB-470A-BF17-7A883735C4BF} = {F7C44172-08CC-4CF9-97A8-01460C2AB759}
+ {CECAB17A-9DBE-4A4E-8556-5747AB170714} = {F7C44172-08CC-4CF9-97A8-01460C2AB759}
+ {0797D7A4-3572-457B-AAD9-3F26098D4BDD} = {F7C44172-08CC-4CF9-97A8-01460C2AB759}
+ {B9088D14-10F6-4D88-876D-062B9F6494AB} = {BABA2486-F8A5-4608-A79F-D03247FE2332}
+ {73597E04-D8A8-4991-A759-7F886CBE2A8F} = {BABA2486-F8A5-4608-A79F-D03247FE2332}
EndGlobalSection
EndGlobal
diff --git a/samples/API/AuthSample/AuthSample.csproj b/samples/API/AuthSample/AuthSample.csproj
new file mode 100644
index 00000000..61718a1f
--- /dev/null
+++ b/samples/API/AuthSample/AuthSample.csproj
@@ -0,0 +1,3 @@
+
+
+
diff --git a/samples/SimpleAuthSample/Program.cs b/samples/API/AuthSample/Program.cs
similarity index 100%
rename from samples/SimpleAuthSample/Program.cs
rename to samples/API/AuthSample/Program.cs
diff --git a/samples/API/ConnectSample/ConnectSample.csproj b/samples/API/ConnectSample/ConnectSample.csproj
new file mode 100644
index 00000000..61718a1f
--- /dev/null
+++ b/samples/API/ConnectSample/ConnectSample.csproj
@@ -0,0 +1,3 @@
+
+
+
diff --git a/samples/DxFeedConnect/Program.cs b/samples/API/ConnectSample/Program.cs
similarity index 98%
rename from samples/DxFeedConnect/Program.cs
rename to samples/API/ConnectSample/Program.cs
index 66fa225e..f2f768f1 100644
--- a/samples/DxFeedConnect/Program.cs
+++ b/samples/API/ConnectSample/Program.cs
@@ -24,7 +24,7 @@ private static void PrintUsage()
var eventTypeNames = ReflectionUtil.CreateTypesString(DXEndpoint.GetEventTypes());
var usageString = $@"
Usage:
-DxFeedConnect
[