From 04eb0c5a33ddb6d8b7e3f1f92c3b79f0a30673bd Mon Sep 17 00:00:00 2001 From: Mapk58 <43153683+Mapk58@users.noreply.github.com> Date: Sun, 11 Nov 2018 17:36:31 +0300 Subject: [PATCH] Add files via upload --- .../EnglishLessons/EnglishLessons.csproj | 81 + FifthLesson/EnglishLessons/Generator.cs | 43 + FifthLesson/EnglishLessons/IMemoryUse.cs | 12 + FifthLesson/EnglishLessons/IUserRepository.cs | 15 + FifthLesson/EnglishLessons/IWordRepository.cs | 15 + FifthLesson/EnglishLessons/Memory.cs | 26 + .../EnglishLessons/MongoUserRepository.cs | 43 + .../EnglishLessons/MongoWordRepository.cs | 40 + .../EnglishLessons/Properties/AssemblyInfo.cs | 36 + FifthLesson/EnglishLessons/RepWord.cs | 21 + FifthLesson/EnglishLessons/Session.cs | 55 + FifthLesson/EnglishLessons/User.cs | 50 + FifthLesson/EnglishLessons/UserWord.cs | 31 + .../EnglishLessons/bin/Debug/DnsClient.dll | Bin 0 -> 90624 bytes .../EnglishLessons/bin/Debug/DnsClient.xml | 3060 +++ .../bin/Debug/EnglishLessons.dll | Bin 0 -> 12288 bytes .../bin/Debug/EnglishLessons.pdb | Bin 0 -> 48640 bytes .../EnglishLessons/bin/Debug/MongoDB.Bson.dll | Bin 0 -> 453632 bytes .../EnglishLessons/bin/Debug/MongoDB.Bson.xml | 21995 ++++++++++++++++ .../bin/Debug/MongoDB.Driver.Core.dll | Bin 0 -> 763392 bytes .../bin/Debug/MongoDB.Driver.Core.xml | 18031 +++++++++++++ .../bin/Debug/MongoDB.Driver.dll | Bin 0 -> 660992 bytes .../bin/Debug/MongoDB.Driver.xml | 19664 ++++++++++++++ .../bin/Debug/Newtonsoft.Json.dll | Bin 0 -> 662528 bytes .../bin/Debug/Newtonsoft.Json.xml | 10912 ++++++++ .../bin/Debug/System.Buffers.dll | Bin 0 -> 27320 bytes ...ime.InteropServices.RuntimeInformation.dll | Bin 0 -> 33248 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 14614 bytes ...lishLessons.csproj.CoreCompileInputs.cache | 1 + ...EnglishLessons.csproj.FileListAbsolute.txt | 19 + ...glishLessons.csprojAssemblyReference.cache | Bin 0 -> 77754 bytes .../obj/Debug/EnglishLessons.dll | Bin 0 -> 12288 bytes .../obj/Debug/EnglishLessons.pdb | Bin 0 -> 48640 bytes FifthLesson/EnglishLessons/packages.config | 10 + .../Controllers/UserController.cs | 41 + .../Controllers/WordController.cs | 43 + .../EnglishLessonsAPI.csproj | 21 + .../EnglishLessonsAPI.csproj.user | 13 + FifthLesson/EnglishLessonsAPI/Program.cs | 24 + .../Properties/launchSettings.json | 30 + FifthLesson/EnglishLessonsAPI/Startup.cs | 47 + .../appsettings.Development.json | 9 + .../EnglishLessonsAPI/appsettings.json | 4 + .../bin/Debug/netcoreapp2.1/DnsClient.dll | Bin 0 -> 90624 bytes .../bin/Debug/netcoreapp2.1/DnsClient.xml | 3060 +++ .../Debug/netcoreapp2.1/EnglishLessons.dll | Bin 0 -> 12288 bytes .../Debug/netcoreapp2.1/EnglishLessons.pdb | Bin 0 -> 48640 bytes .../netcoreapp2.1/EnglishLessonsAPI.deps.json | 5603 ++++ .../Debug/netcoreapp2.1/EnglishLessonsAPI.dll | Bin 0 -> 8192 bytes .../Debug/netcoreapp2.1/EnglishLessonsAPI.pdb | Bin 0 -> 1532 bytes .../EnglishLessonsAPI.runtimeconfig.dev.json | 9 + .../EnglishLessonsAPI.runtimeconfig.json | 12 + .../bin/Debug/netcoreapp2.1/MongoDB.Bson.dll | Bin 0 -> 453632 bytes .../bin/Debug/netcoreapp2.1/MongoDB.Bson.xml | 21995 ++++++++++++++++ .../netcoreapp2.1/MongoDB.Driver.Core.dll | Bin 0 -> 763392 bytes .../netcoreapp2.1/MongoDB.Driver.Core.xml | 18031 +++++++++++++ .../Debug/netcoreapp2.1/MongoDB.Driver.dll | Bin 0 -> 660992 bytes .../Debug/netcoreapp2.1/MongoDB.Driver.xml | 19664 ++++++++++++++ .../EnglishLessonsAPI.AssemblyInfo.cs | 23 + ...EnglishLessonsAPI.AssemblyInfoInputs.cache | 1 + .../EnglishLessonsAPI.RazorAssemblyInfo.cache | 1 + .../EnglishLessonsAPI.RazorAssemblyInfo.cs | 20 + ...shLessonsAPI.RazorTargetAssemblyInfo.cache | 1 + .../EnglishLessonsAPI.assets.cache | Bin 0 -> 119200 bytes ...hLessonsAPI.csproj.CoreCompileInputs.cache | 1 + ...lishLessonsAPI.csproj.FileListAbsolute.txt | 25 + ...shLessonsAPI.csprojAssemblyReference.cache | Bin 0 -> 281596 bytes .../Debug/netcoreapp2.1/EnglishLessonsAPI.dll | Bin 0 -> 8192 bytes .../Debug/netcoreapp2.1/EnglishLessonsAPI.pdb | Bin 0 -> 1532 bytes .../obj/EnglishLessonsAPI.csproj.nuget.cache | 5 + .../EnglishLessonsAPI.csproj.nuget.g.props | 24 + .../EnglishLessonsAPI.csproj.nuget.g.targets | 15 + .../EnglishLessonsAPI/obj/project.assets.json | 12311 +++++++++ .../UserWordTest/EnglishLessonsTest.csproj | 75 + .../UserWordTest/bin/Debug/EnglishLessons.dll | Bin 0 -> 8704 bytes .../UserWordTest/bin/Debug/EnglishLessons.pdb | Bin 0 -> 38400 bytes ...Studio.TestPlatform.MSTest.TestAdapter.dll | Bin 0 -> 130192 bytes ...TestAdapter.PlatformServices.Interface.dll | Bin 0 -> 24720 bytes ...latform.MSTestAdapter.PlatformServices.dll | Bin 0 -> 113296 bytes ....TestPlatform.TestFramework.Extensions.dll | Bin 0 -> 40080 bytes ....TestPlatform.TestFramework.Extensions.xml | 1097 + ...isualStudio.TestPlatform.TestFramework.dll | Bin 0 -> 73384 bytes ...isualStudio.TestPlatform.TestFramework.xml | 4391 +++ .../bin/Debug/Newtonsoft.Json.dll | Bin 0 -> 662528 bytes .../bin/Debug/Newtonsoft.Json.xml | 10912 ++++++++ .../UserWordTest/bin/Debug/UserWordTest.dll | Bin 0 -> 5632 bytes .../UserWordTest/bin/Debug/UserWordTest.pdb | Bin 0 -> 13824 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 34960 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 26256 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 29840 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 14656 bytes ...LessonsTest.csproj.CoreCompileInputs.cache | 1 + ...ishLessonsTest.csproj.FileListAbsolute.txt | 21 + ...hLessonsTest.csprojAssemblyReference.cache | Bin 0 -> 28009 bytes ...serWordTest.csproj.CoreCompileInputs.cache | 1 + .../UserWordTest.csproj.FileListAbsolute.txt | 21 + ...UserWordTest.csprojAssemblyReference.cache | Bin 0 -> 65985 bytes .../UserWordTest/obj/Debug/UserWordTest.dll | Bin 0 -> 5632 bytes .../UserWordTest/obj/Debug/UserWordTest.pdb | Bin 0 -> 13824 bytes FifthLesson/UserWordTest/packages.config | 5 + 100 files changed, 171717 insertions(+) create mode 100644 FifthLesson/EnglishLessons/EnglishLessons.csproj create mode 100644 FifthLesson/EnglishLessons/Generator.cs create mode 100644 FifthLesson/EnglishLessons/IMemoryUse.cs create mode 100644 FifthLesson/EnglishLessons/IUserRepository.cs create mode 100644 FifthLesson/EnglishLessons/IWordRepository.cs create mode 100644 FifthLesson/EnglishLessons/Memory.cs create mode 100644 FifthLesson/EnglishLessons/MongoUserRepository.cs create mode 100644 FifthLesson/EnglishLessons/MongoWordRepository.cs create mode 100644 FifthLesson/EnglishLessons/Properties/AssemblyInfo.cs create mode 100644 FifthLesson/EnglishLessons/RepWord.cs create mode 100644 FifthLesson/EnglishLessons/Session.cs create mode 100644 FifthLesson/EnglishLessons/User.cs create mode 100644 FifthLesson/EnglishLessons/UserWord.cs create mode 100644 FifthLesson/EnglishLessons/bin/Debug/DnsClient.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/DnsClient.xml create mode 100644 FifthLesson/EnglishLessons/bin/Debug/EnglishLessons.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/EnglishLessons.pdb create mode 100644 FifthLesson/EnglishLessons/bin/Debug/MongoDB.Bson.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/MongoDB.Bson.xml create mode 100644 FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.Core.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.Core.xml create mode 100644 FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.xml create mode 100644 FifthLesson/EnglishLessons/bin/Debug/Newtonsoft.Json.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/Newtonsoft.Json.xml create mode 100644 FifthLesson/EnglishLessons/bin/Debug/System.Buffers.dll create mode 100644 FifthLesson/EnglishLessons/bin/Debug/System.Runtime.InteropServices.RuntimeInformation.dll create mode 100644 FifthLesson/EnglishLessons/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.CoreCompileInputs.cache create mode 100644 FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.FileListAbsolute.txt create mode 100644 FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csprojAssemblyReference.cache create mode 100644 FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.dll create mode 100644 FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.pdb create mode 100644 FifthLesson/EnglishLessons/packages.config create mode 100644 FifthLesson/EnglishLessonsAPI/Controllers/UserController.cs create mode 100644 FifthLesson/EnglishLessonsAPI/Controllers/WordController.cs create mode 100644 FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj create mode 100644 FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj.user create mode 100644 FifthLesson/EnglishLessonsAPI/Program.cs create mode 100644 FifthLesson/EnglishLessonsAPI/Properties/launchSettings.json create mode 100644 FifthLesson/EnglishLessonsAPI/Startup.cs create mode 100644 FifthLesson/EnglishLessonsAPI/appsettings.Development.json create mode 100644 FifthLesson/EnglishLessonsAPI/appsettings.json create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.dll create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.xml create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessons.dll create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessons.pdb create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.deps.json create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.dll create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.pdb create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.runtimeconfig.dev.json create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.runtimeconfig.json create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Bson.dll create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Bson.xml create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.Core.dll create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.Core.xml create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.dll create mode 100644 FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.xml create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfo.cs create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfoInputs.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cs create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorTargetAssemblyInfo.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.assets.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.CoreCompileInputs.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.FileListAbsolute.txt create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csprojAssemblyReference.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.dll create mode 100644 FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.pdb create mode 100644 FifthLesson/EnglishLessonsAPI/obj/EnglishLessonsAPI.csproj.nuget.cache create mode 100644 FifthLesson/EnglishLessonsAPI/obj/EnglishLessonsAPI.csproj.nuget.g.props create mode 100644 FifthLesson/EnglishLessonsAPI/obj/EnglishLessonsAPI.csproj.nuget.g.targets create mode 100644 FifthLesson/EnglishLessonsAPI/obj/project.assets.json create mode 100644 FifthLesson/UserWordTest/EnglishLessonsTest.csproj create mode 100644 FifthLesson/UserWordTest/bin/Debug/EnglishLessons.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/EnglishLessons.pdb create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 FifthLesson/UserWordTest/bin/Debug/Newtonsoft.Json.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/Newtonsoft.Json.xml create mode 100644 FifthLesson/UserWordTest/bin/Debug/UserWordTest.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/UserWordTest.pdb create mode 100644 FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 FifthLesson/UserWordTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.CoreCompileInputs.cache create mode 100644 FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.FileListAbsolute.txt create mode 100644 FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csprojAssemblyReference.cache create mode 100644 FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.CoreCompileInputs.cache create mode 100644 FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.FileListAbsolute.txt create mode 100644 FifthLesson/UserWordTest/obj/Debug/UserWordTest.csprojAssemblyReference.cache create mode 100644 FifthLesson/UserWordTest/obj/Debug/UserWordTest.dll create mode 100644 FifthLesson/UserWordTest/obj/Debug/UserWordTest.pdb create mode 100644 FifthLesson/UserWordTest/packages.config diff --git a/FifthLesson/EnglishLessons/EnglishLessons.csproj b/FifthLesson/EnglishLessons/EnglishLessons.csproj new file mode 100644 index 0000000..6d474cc --- /dev/null +++ b/FifthLesson/EnglishLessons/EnglishLessons.csproj @@ -0,0 +1,81 @@ + + + + + Debug + AnyCPU + {DD163CDC-E328-436C-B273-63767E38334A} + Library + Properties + EnglishLessons + EnglishLessons + v4.6.1 + 512 + true + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\DnsClient.1.0.7\lib\net45\DnsClient.dll + + + ..\packages\MongoDB.Bson.2.7.1\lib\net45\MongoDB.Bson.dll + + + ..\packages\MongoDB.Driver.2.7.1\lib\net45\MongoDB.Driver.dll + + + ..\packages\MongoDB.Driver.Core.2.7.1\lib\net45\MongoDB.Driver.Core.dll + + + ..\packages\Newtonsoft.Json.11.0.2\lib\net45\Newtonsoft.Json.dll + + + + ..\packages\System.Buffers.4.3.0\lib\netstandard1.1\System.Buffers.dll + + + + ..\packages\System.Runtime.InteropServices.RuntimeInformation.4.0.0\lib\net45\System.Runtime.InteropServices.RuntimeInformation.dll + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/FifthLesson/EnglishLessons/Generator.cs b/FifthLesson/EnglishLessons/Generator.cs new file mode 100644 index 0000000..c4f845c --- /dev/null +++ b/FifthLesson/EnglishLessons/Generator.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public class Generator + { + public List Start(int count, User user) + { + List toRand = user.ShowInProgress(); + Random rnd = new Random(); + List toShow = new List(); + if (count > toRand.Count) throw new InvalidOperationException(); + for (int i = 0; i < count; i++) + { + int ind = rnd.Next(toRand.Count); + toShow.Add(toRand[ind]); + toRand.RemoveAt(ind); + } + + toRand = user.ShowInProgress(); + + for (int i = 0; i < count; i++) + { + if (rnd.Next(2) == 1) + { + string NewRus = ""; + Random NewInd = new Random(); + do + NewRus = toRand[NewInd.Next(toRand.Count())].Rus; + while (NewRus == toShow[i].Rus); + + toShow[i].Rus = NewRus; + } + } + + return toRand; + } + } +} diff --git a/FifthLesson/EnglishLessons/IMemoryUse.cs b/FifthLesson/EnglishLessons/IMemoryUse.cs new file mode 100644 index 0000000..e007c5e --- /dev/null +++ b/FifthLesson/EnglishLessons/IMemoryUse.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + interface IMemoryUse + { + } +} diff --git a/FifthLesson/EnglishLessons/IUserRepository.cs b/FifthLesson/EnglishLessons/IUserRepository.cs new file mode 100644 index 0000000..693a7fa --- /dev/null +++ b/FifthLesson/EnglishLessons/IUserRepository.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public interface IUserRepository + { + User LoadUser(Guid id); + + void SaveUser(User user); + } +} diff --git a/FifthLesson/EnglishLessons/IWordRepository.cs b/FifthLesson/EnglishLessons/IWordRepository.cs new file mode 100644 index 0000000..92dc55e --- /dev/null +++ b/FifthLesson/EnglishLessons/IWordRepository.cs @@ -0,0 +1,15 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public interface IWordRepository + { + RepWord LoadWord(); + + void SaveWord(RepWord repword); + } +} diff --git a/FifthLesson/EnglishLessons/Memory.cs b/FifthLesson/EnglishLessons/Memory.cs new file mode 100644 index 0000000..09bede3 --- /dev/null +++ b/FifthLesson/EnglishLessons/Memory.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Newtonsoft.Json; +using System.IO; + +namespace EnglishLessons +{ + public class Memory + { + public void Save(Session session) + { + string serialized = JsonConvert.SerializeObject(session); + File.Create("FooBar.txt"); + File.WriteAllText("FooBar.txt", serialized); + } + + public Session Load() + { + string deserialized = File.ReadAllText("FooBar.txt"); + return JsonConvert.DeserializeObject(deserialized); + } + } +} diff --git a/FifthLesson/EnglishLessons/MongoUserRepository.cs b/FifthLesson/EnglishLessons/MongoUserRepository.cs new file mode 100644 index 0000000..c63c2c5 --- /dev/null +++ b/FifthLesson/EnglishLessons/MongoUserRepository.cs @@ -0,0 +1,43 @@ +using MongoDB.Bson.Serialization; +using MongoDB.Driver; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public class MongoUserRepository : IUserRepository + { + private readonly IMongoCollection users; + static MongoUserRepository() + { + BsonClassMap.RegisterClassMap(map => + { + map.AutoMap(); + map.MapMember(user => user.Name); + map.MapMember(user => user.Id); + map.MapMember(user => user._learned); + map.MapMember(user => user._inProgress); + + }); + } + public MongoUserRepository(string connectionString) + { + var mongoClient = new MongoClient(connectionString); + var database = mongoClient.GetDatabase("LOD"); + users = database.GetCollection("MapkUsers"); + } + + public User LoadUser(Guid id) + { + return users.Find(user => user.Id == id).FirstOrDefault(); + } + + public void SaveUser(User user) + { + users.InsertOne(user); + } + } +} diff --git a/FifthLesson/EnglishLessons/MongoWordRepository.cs b/FifthLesson/EnglishLessons/MongoWordRepository.cs new file mode 100644 index 0000000..91bde05 --- /dev/null +++ b/FifthLesson/EnglishLessons/MongoWordRepository.cs @@ -0,0 +1,40 @@ +using MongoDB.Bson.Serialization; +using MongoDB.Driver; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public class MongoWordRepository : IWordRepository + { + private readonly IMongoCollection words; + static MongoWordRepository() + { + BsonClassMap.RegisterClassMap(map => + { + map.AutoMap(); + map.MapMember(word => word.Eng); + map.MapMember(word => word.Rus); + }); + } + public MongoWordRepository(string connectionString) + { + var mongoClient = new MongoClient(connectionString); + var database = mongoClient.GetDatabase("LOD"); + words = database.GetCollection("MapkWords"); + } + + public RepWord LoadWord() + { + return words.Find(word => word.Eng != "123").FirstOrDefault();//добавить рандом (?) + } + + public void SaveWord(RepWord repword) + { + words.InsertOne(repword); + } + } +} diff --git a/FifthLesson/EnglishLessons/Properties/AssemblyInfo.cs b/FifthLesson/EnglishLessons/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8b2c337 --- /dev/null +++ b/FifthLesson/EnglishLessons/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// Общие сведения об этой сборке предоставляются следующим набором +// набора атрибутов. Измените значения этих атрибутов, чтобы изменить сведения, +// связанные со сборкой. +[assembly: AssemblyTitle("EnglishLessons")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("EnglishLessons")] +[assembly: AssemblyCopyright("Copyright © 2018")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Установка значения False для параметра ComVisible делает типы в этой сборке невидимыми +// для компонентов COM. Если необходимо обратиться к типу в этой сборке через +// COM, задайте атрибуту ComVisible значение TRUE для этого типа. +[assembly: ComVisible(false)] + +// Следующий GUID служит для идентификации библиотеки типов, если этот проект будет видимым для COM +[assembly: Guid("dd163cdc-e328-436c-b273-63767e38334a")] + +// Сведения о версии сборки состоят из следующих четырех значений: +// +// Основной номер версии +// Дополнительный номер версии +// Номер сборки +// Редакция +// +// Можно задать все значения или принять номер сборки и номер редакции по умолчанию. +// используя "*", как показано ниже: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/FifthLesson/EnglishLessons/RepWord.cs b/FifthLesson/EnglishLessons/RepWord.cs new file mode 100644 index 0000000..3bc9103 --- /dev/null +++ b/FifthLesson/EnglishLessons/RepWord.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Newtonsoft.Json; + +namespace EnglishLessons +{ + public class RepWord + { + public string Rus { get; set; } + public string Eng { get; } + + public RepWord(string eng, string rus) + { + Rus = rus; + Eng = eng; + } + } +} diff --git a/FifthLesson/EnglishLessons/Session.cs b/FifthLesson/EnglishLessons/Session.cs new file mode 100644 index 0000000..17d3523 --- /dev/null +++ b/FifthLesson/EnglishLessons/Session.cs @@ -0,0 +1,55 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public class Session + { + private List _allWords { get; set; } + private List _users { get; set; } + + private void AddUser(User user) + { + _users.Add(user); + } + + private void AddWord(RepWord word) + { + _allWords.Add(word); + } + + private bool CheckWord(RepWord word) + { + return _allWords.Contains(word); + } + + public void Registration(string name, Guid id) + { + Dictionary toReg = new Dictionary(); + if (_allWords.Count < 10) throw new InvalidOperationException(); + for (int i = 0; i < 10; i++) + { + toReg.Add(_allWords[i].Rus, new UserWord(false, 0, _allWords[i].Eng, _allWords[i].Rus)); + } + AddUser(new User(name, id, new List(), toReg)); + } + + public void Start(User user, int wordCount) + { + Generator Gen = new Generator(); + List toWork = Gen.Start(wordCount, user); + foreach (RepWord a in toWork) + { + bool UserAnswer = true; //вместо true ответ пользователя + if (CheckWord(a) == UserAnswer) + { + user.MarkAsLearned(a.Eng); + } + } + + } + } +} diff --git a/FifthLesson/EnglishLessons/User.cs b/FifthLesson/EnglishLessons/User.cs new file mode 100644 index 0000000..186bb44 --- /dev/null +++ b/FifthLesson/EnglishLessons/User.cs @@ -0,0 +1,50 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public class User + { + public string Name { get; set; } + public Guid Id { get; set; } + public List _learned { get; set; } + public Dictionary _inProgress { get; set; } + + public List ShowLearned() + { + return _learned; + } + + public List ShowInProgress() + { + List toShow = new List(); + foreach (KeyValuePair a in _inProgress) + { + toShow.Add(new RepWord(a.Value.Eng, a.Value.Rus)); + } + + return toShow; + } + + public bool MarkAsLearned(string toMark) + { + if (_inProgress[toMark] == null) return false; + + _learned.Add(_inProgress[toMark]); + _inProgress.Remove(toMark); + + return true; + } + + public User (string name, Guid id, List learned, Dictionary inprogress) + { + Name = name; + Id = id; + _learned = learned; + _inProgress = inprogress; + } + } +} diff --git a/FifthLesson/EnglishLessons/UserWord.cs b/FifthLesson/EnglishLessons/UserWord.cs new file mode 100644 index 0000000..de61cf9 --- /dev/null +++ b/FifthLesson/EnglishLessons/UserWord.cs @@ -0,0 +1,31 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace EnglishLessons +{ + public class UserWord : RepWord + { + public bool Learned { get; private set; } + private int _count { get; set; } + + public void Upgrade() + { + _count++; + if (_count >= 3) Learned = true; + } + + public bool Check (string toCheck) + { + return (base.Rus == toCheck); + } + + public UserWord (bool learned, int count, string eng, string rus) : base(eng, rus) + { + Learned = learned; + _count = count; + } + } +} diff --git a/FifthLesson/EnglishLessons/bin/Debug/DnsClient.dll b/FifthLesson/EnglishLessons/bin/Debug/DnsClient.dll new file mode 100644 index 0000000000000000000000000000000000000000..f6ee091de5376826ae23b73013fd9d10bd408c4e GIT binary patch literal 90624 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 z zl0>DOfs1W>!yx!QgW*Ugpuj$72wb!NW=x1jlaWj-9BkoEz;QZ`vm+T7PR%9FXnlSa zizM{qkT;A0Hvu>1CE>~g;Wh?%)3+Ug_UU%4C6b{=b`-B!(BCi|ZaJ3vC_?fL*a-F& zjKE{&4fOk}u;r|?t4umb>XZbUj^`89CfqUDt`xm+#TD2a1xKFJ;?*Do)1%?6-xG6U z!||3j%hMNYf&S+5fu>ZEqRSKWaAJf<%jH3LECWutCuz`MG)lvPlcib*e%NjL~0@$awmXePi22{kgs9$Fqhw- z;17pKa(?|ed>{VGsXKi3`yb=46crhRpZx_9xE8dV@HY_QA>bdYE8pkhU?Xo$Q}l}> zQVu`9R@9Mx21eNny*cQ}wXnpJnoEv_06h7N4_JC*OSP|dB?F1meFN-NC+yap43Y9# z3VmS-brX^Ew3W#JAhAniigVSr^{~s2p^)7@1q7_d^KTj3-8fkwDZlB_Tsp!%2CLVY zhh*Bqz$~{*ronHYDwf7P>~IDYSQAw8m*Z8t!)a((&>~All-L{S^;ON!wiHugw>ATE z_`x>Pi$nT7!eC|58+gQKv<|oraKxB_qN8oPocfMVWuI8H0gD`~)?SL4LgQj#A@* zfWW-&{0bvch%br6>(3I40{Ck#!Sbq(g9&-LEa)cr7QRQ0>qCb?MHxe8BfyiIL*bhi zrlx3NlmeBDc90f6f-Q_^pirI>XkmJNRZFwg%T$na8056Fi6ufZ_YMb5-gwnIHoNbnV?J^8?KB9lSuoR|Uviw>1ZgJIf@ANhSfok$SDEeZ#USZ%s3?_xpV{svtB$q1(TV-?dNUsC zQ)&qBIJ2YadXsL%ieon_s5mNvZnTu%1{6oS5e7G@I8xDv=oM5PlR$`69J&xIRNkY` zbqJ9u!q6e0x~aH4Imnd`DkfWRFTatiH>%)skz;;dTB6O)*6#~nOABO2z(rg!$9?D> z>ED5;cR3{G=B<%FxgYK>W5ToTG$JDztlV-Z>Y3vRaA%#V_&l}?&2tFai_c?U2N4H} zF#bs9H3?T`cEfkNiS%PpO!s{LN&**`Y<5|XZ-LLB-HjR0kBdEHFiWP9H7=2$4;(_Y z7M*Op&vUU8@t{D2?-QcWQx_>J_>LjpYNo>Ndtp#7g=M4peoab|mjwJ>9rRX)OP_H>!6%k$Uo1%bXF;#S>>2#5?vKYjXO4~7Ul99W1ddA+cmsx#D6 z+l;NMRdt6x`{nbQw`JThOB7xmL;d-&etC~}fJ)2T0lxf`vx%c|dmVA@Rze4K-PG}Y z1T3hqaDm>?(~p+$;1xMtI7CudwcL!ZY^Ohf@JtF3_J)(-x^TcrLS=?>la0Y{Y}3&{ zPX@xwMlbz)r1BsR-vTU%wKt>@>478C_EWq26aX!%&-oAu0zFcT6$KnJ=k$eN43)adAu21Oq zRjtmBnoNgf4ydv|A)T)vQUxsRS#GSyMXh|T;8{AWMN|~a+8cXkK%CtT^&m9jgvvv5e^?gfXX+AgEv`!t%ph&H1bBplrD4)6)EI$<(+2u|Rqg#s5R|LPU7==wKrJTmMWnp$wDoY;MtmJCT#Q*F%vnOzkP3{3-Ls&co+a|+5RdpGiR_xJ z6gE@_`@)l=!ZjKC0mePFt)4Fe>OCy(v0#M_qRg~G#K8uu#}0C8CZ2=D_6Eo`X4ho< zv!Bh{2qKJhY!WuYu-uSE>2l$%YibtAb=frLb|=##{9WJGrac&KkLKC{B5ryzImQU| zZwcafkN3iIl49Y;m2#_o=}X%S$kpLIF(ZNsQqrIIGnyhJD zUz7Eb|HrKN)L`?8ufehk+i(d_s!|Vcl~Vgz2G$Z8q_(mQ1hy#ep_I7zP+9!O57|Kr zT0fRSiMY~c8NGABhOhPI!7_>7(^+uqtB&7bJZ%Fiti2e4;}NLr^X2Y+A&-SJ2vBZp z1oNClYGxHABip;B?IZ35kW`LM zIO*u8-P9)GsyFOnEA`SMi7?;p&9G5PH z$8o94PX7ZVW@am}y#Wo7of1hvRbK=z|0+U;V)1DCGI%&*>cF&m05rudY0|ryrqB6j zzq!wrw-7RyNQ$nlC#X*iHT2}Cm#1A~ItBscV8 zlN?2iP4f7P1?G5kIeocg&+!N?oqPkDLU%@RJfdGTuNHof9r>BlI8qqb| z=?Qcl=-S72Jksw43Cv2la_UzlZ2hi8=29fZ@ZWJ*AqNVGvY}>mH$$C8D#GPq7x}Qi zalq4M3umri*1BxCv58}eY4hZ4r=5O}?rS};$7k?29krG1YwUyDf&UEu zT!1VckZW%>2ej?%qX_ShF}RR^E9emrc)myaGr$O|-@r!~%$@sD&T`Q1#a|o3*&qA( z&p~??e+7LU=A7;0c((`xN+fd?NZI2(d7u=@Tuo9pT@URY!S|E8$(6!aI}5-0>|Ke- zR$g&ptUedO{zO=B2dj=Zv7mxCE9nDD((kEbS%Gi+NbD?=I2_F;mc1BGgXCvo$K+x) z!6!Lu5k3zq8K-Ta&qKT58~G;5yuFfmTAQsV`VmC?9S?OAiFGbE>G7tIDXfX!hUiGL(c$NhveKR|+ATx>XpBcVvBAEsLubFWl zZjELiO{&CEde3O9Z7T6pHf&jK?fQFSwmQjbyH1DsO!fh!#gQV6NV>xHs2xlf)FbsU z)OEIGAX^^K=vp>$ZzB$86D;Ehwg83ze1s{FZvfU0%$McN%p@(Uz!Cb5h{vHqs)gWN z0Pan6^8LgxAB%XOcOvr1KYrJWpwQGG^M=A982&GnDpWwkciJJ)x5#OmY6M&e0giVS z1V~SGyql4ac~400xwfN7V*aqK8pO}W4K$r}bae~_Wp|KgRhM+7!*e^$Y5jd;1SiS6GB#If;oJmCjSS{5{GbA8+CQSp=?r*QUhAvXXrA z&Q0bvgzTVs@g`_qya~!%D4AOk7tFtW)Ac;E!djY%~H%5E6!ZieM`96tD*a4lFd z4N`*LEqQdKjqoMKRw^PVqVoLVDAb;;a*js8Z1Gt>Zt-uYzX3*tjl1pQz&-iKzo|ht zBe=zW+8u2UaW%s$-7mV?}3Dk*x2FY+Z?eg6695@%!3GFjs0DE-E=W# z^J~^ZQO*HeN6-{-1wxeqq)VY3E#f}#%7Io;zp{iGj5*7@TG2ochGu<(f_8A_?Jb&JzeIzI zigb-(C)G;cMce|clgaDs6~Rh8U6nlYiP|dh*3=HB?H2t%%eJt zd7Y|6L;S#_Nf!-t(*g?KY?saJ{SYae*E1o|^gOn@9gSqZPk+PRaLciIUCf?WA7Ia8 z1UIkr3y!9k4%=W%JFG$ZrRC{g(zDD~cIA;2P)86i88S*dmb-l=eL*D7@;$!OqbNR9t{3hHi>>&(0ESebO ze*l7dh%GcL9a}g+mXw#cGC&rW7wcyq`iwyrv^etvXl9xTcej_YnNCA*u)7(7J^Tjx z1p}lsQ?VW(i#5IYjp0aPdP|#DA-LCThMHPf5q&5@A-)$=P}_7PrEXt-#>>lxLH+U} zo}1=tm67@dL`)d0Al>aWi@c7ggQho*L*DwmL`-W^uSRXW1CPZL^r8#^+%CXjk%nLW znxY-MFao$FD;@Z96I!yi)%Jo-{dKiSy+sfw~fQnaih8ZDC*Q%gm8+e~~k9V0bH4;j`l z>|g{O)T*I&`b^y~VhJc;YP91#1Wn`eqH$k*afj{$G%EDU8;{Qt{KfF$kOgtF9KBtj=U73z6 zDN*u$4b%eDvwB1TeC8w7BmoeZn-C+rBA;6fdH0v_Q6 z_kDbeUi1d|g7Q4J3!5Z0ekYuQ4{O*#{S5a})Os4@20q#oOQYvSJWRt89hq)Lu|$yF zO>y#o%%tPS(FC!Ejd&RBvkxwKpx6V*$N3xKn_Dr|ACL3*(35A;y!W&W7XHR~6vFOi z1fJ;AD|leSRFKmPIlL4zohC2JOkfS*5gHY9|A@BkYQ(wu`0xD>#r*%bWRv88@+(WW zXZioRSllqk)g2Kk^@N)W7;(&oAx{pukAg~DD|~*3>QL|Fub{ubh8ps@SkIAp#=KcG zEE#3=|M_(K=#CK`qehJC?1CT+Q0w46z5-(r4h{K9^5ZaL4W4&uYRyR}q{*@67NuT9 z*BE@%JhcdwO*0>S&`~q@hrbSZ4)Pd0V;zqa|t{IA-1ZbZc=FztgbIWHBrtBLgAPT4Xp zqJ}h5{|=FGgu_&hqBWi2cCu1X+aLK>iPkNwkpgxs|Ema>#8E>h1Z&|t}SQ}_})CaX~;D35D=|7OXCX4%S7bz11bbluLoHLj;Rz8T7 zcZ9OJgW<^|C}G`jhKEYptDtQ}ZBDYhqfvVi_31c<|2>MOb4%DRJ+1qr1sm$f**Svr z=OyhoMe?Qu+w`~*HROYh$}y-N8D%(SO9yh}v%)C4byNcXi^EvFsJw!*pdNz*VPutP*Al z>IHhWjmU?yf1;m_-hZ@4n}7}+7HB65DWX?LZy85auR=ihIDOG#paw`TQqM6kGU}A6`L&E2g-^*dzY8S4G3qLj z@HfSCJ+>bHm9qkgRp6*Q&h?V-;C9VX}+#67EiqvlHP zhc{BnZ`Dx}H$&3xHYg>WyYW3Z%6wAL8~A|#CZKzPo>P0&5{XN-G50-cg`kTizdxw8 zfnxzS$-j%q7Nco2KfuNb9=Q``Jg8BrVY5h&mXTo`&^$$V&iDsLvk0rlr#xsX2 ztxpSb*k<8#k*KBVSY#|#H(14jDn-g2R;i#5q|WZN$^_ji<@>f(ZnLg+4L)X7+APr% zQ<%dKt(t>ad&D z>7`>-vszW!1^1GU4~v?WTU}pmsiBi!P)GNEF@)|v;m+;-w7I!@ZttAQ;Q~stxo@IvBe?_5wb5a92@h_0hd&P8kh%p16mNWB9Bf-Onb|O~>iJ z9HM(4h+!U=Fq)NBvd1nr9Q8E0RzkZ1II&$)fLm=hAIyL{fcsG zyBOhS^+*NXITeS)ZK<3G_qON@DD^32ix7UWav9vu%8rM7NBdgHAJama6{Amrocl}3 zIj7RBg4ao(fzQ5?hWEL3FWDAq}(a)v{H#}pnJEZ`psm9 z>xJ^yfeb%eM|Yu1_va$vky?f`BJ-n(XF-#S0cYjPcy7gqMe}+Oh|sMP_l6>dOC;PP z?s#$A#eF@@*cHOFZUnsR zwL*gN;bRv;Wz|1GBG_ticF{`XogFK$-5JDy`$+~#r5 zBb;_$hJ+^YTWVT4rTsYe1nAQ$Uqg6@P<$1n-&jE_I=%7W-5}t{0)+Tp_ zj|Y8z5#6^XJSM_$T-+T(c~#umLYXR@y%L@+;Tht-E0n*Ad!0}=h#L|2S0dqdaeIX_ zRXA_coD#kpv7O2ts_XL;l;RE4r=@Ng%$oVEjWxsaqL;<2nwY8{Qv|ns6y3i}pnJtg zy5Vs}H7wmpELTZs&C$J26w!UXk?!tVx?6<)ZE;^5PRci?l-7(@pS7HX8XiBMuCJAr z`BG&?O|yEYtOo8D^nFUEjXgiA2B~hWA^q1C9L=5iPDc z!2JN<&Ue&=);rj8h)kVUZP zE#V80%Qe;|aOe4Mg8RPnAlzGn&%)gv`UTvYFvC9ID{voo-Y&@NZwU9-=d*%XYhX6E z3L`wevW?LRrwoJHQXl%rX-$m`qz(fH##D!@9B8S7FuFFYQkOltW?aL-W;JWV+ts?> z$T<|8&tO*rZ3AtPZ%rKyH(T3X2sUD_HIO-46$#8 zJ4@XM_peevM_ErGe1^Cqea{tWvJ2tnHmpEY?dVq#W{p|uE+5!?1=T#kAuuxBqhny%~TvhnXCmNG4Mv5)qzC7%;`7nB*n58-|goCf(rLjOScC!znq zEe(7Dcc~MuwbXe*x*z%$gHq*uR>KxAt&OQ`RR!E<>_)_PM2FQjE4!*4;R{Mf){)`hHpc<#_ zkHxgo3x+%a`Y}`KJ~Eo_(n;Vfdu}XZ%Mz{R`Q9XsREJg_4t?}&`@YQ7ca*X0S(`i( zl50oLLWv&njfP7*nbU-Ah1wi?eC#|tM3`^TwIl9C3oO&9=9m%5pry_fv{QX!bO09( zo;2w8fphWV!aohFAJT&d@fS2J{I;oAhb^x4t2YdacAiojRBs#flg@K%L+S&A=5>Cv zHmp82sI&9#+KBqxpqZUd)E240AT4uQ=Zp9}X^BA(bpD~XL{%AdY3C=krK-W8U7g{& z0jkBI$2;rm%2c~S*LM!Di>fgO`9{vDD_4^Z`k?cux(aoGL3eeouB%js8Z@c1yRJ$d zWl&4!*1DKlY|v+&H`i6G;|*Hd`A}VrI?tmjuANlBHmG5808i3Ft&~Dt2G+N!CXLiP zIO^_DC+EY+H!m1>L1;P9$p*zci2Qt*hPYSTj|Ykg+NSQByauSlpxawB_2bpSnlp4?(Pi}$ z)N+GZXA{&KgIH%1R7xY%nT79G-jPGs)=yNAYNVd5uTqoL5S;Qd_rRcA>nE#Y4ca#9 zuKFozRStc(ewx~D&|w{q)bFRBGAPu+{~hZO2951_y#4_7fk7X&KV5&I`b5yP)}i=@zSB8#KOaRKrqr+88bK7xhycmaCf#T2Op&!%BRmUrXs5e^kTq zYPOu(Zc}g69NVx;ooZ0Bcy+^CwLKSiR>Mi^qg>p%4Jmc#I4$Lsy6c_O)u{&6cU{?V zmbwe)B51MD;E8kX_3A!@+9n2Ya`}CYq$ax6(}La!UpD;uhHmv!gN_}2Gte%BPV2k} z=&uH?AKIh3)u)2a30*j}3P@gDRquo=#@^hpL4|PciS`Tc97$AW&_T65YJ(bNP|=80 zz71-;L7nZ7fODEbXODRt=wO3B9W>Y8pymiV2U_n$+*5+|$ljx7PhfsK6-V}s>V83+ zL!Y9@ZB*YkX!Y0^8aAq@4eD(C4bV?Dg3Q-|Ud^F*8qQV$+!Ccs&JX9QQbC)6hSZ;@ z4$%nd{@$=ztu}Eh+dgYJU)^QU?3zBHEjah#==SUCzJ?3bFAX{xaTlsT8`KVTks6Js zapXJ}oEOWpIimA{wy0N3+$rF^L^Vy*oU;(ORXt_UH-Iix;pvRq9CAi4ufI%11)USx zJu29EnW{JFy-_7VFB;C5i|5*xt5*zqqc{NT{=Gqu4XkXuLjB92odX8~jhLZxSU7Nb z{grB}LB|bz9B7?E+lQ_4U8OPx-8&3t+UjzRP-pSRtJU@#YHj?cdR&mM>+4kUemaNF z_KwEuRHZ@xO^yP>pu+M&%6Oo|Ox#HWr!{U@M;k=@+^&`g()PJsonYc>M)ar~l&2A- zSU}h0P!-SLwG%7Q0j3WzhGF z$oYUlN0tyhZqNx+h<<9&eUjfUgAPaA-l^U-=rW1>n?WzvGF_iRXP|cPR3!)MGTbgX z)EabwprIO}K39Qrk)Ta#`QVcq?^Wvr>9*aWo;@gAgJ(4EP)#zNZw?(hx~K6z#jg+3 zb}PmbjWB5ENTTruah$kMO*4oi!+q*tgU%jvAvot~q@HQL5@?-4KN@~zQ3YA3@tf=Z?Rt z@evi8$uj8DKB~$L;<)svYA}ea(MQ#ILEF^)_>RW!s}VAlZBzRX+0pm|b&()#J&&pT z1z~i<9QT-d$RN&!kE>^A>-;zyKB?LcCEBERwLaANjJik=`wDgo>V_OD1G-0$mie4| z${@=8sXFfPyv*m-^MW?1Yr1~Y_@b(vqjMND=!M2zYN|nrL9aCaN-Ywkwf+s+@Z+rg zR%0Q0zwx&^3ULn>f7-aa0Quvu7of`c?+Vc1_**%&Bt9noP7bXto*e&E0h$^Aa~73w zCgBq|{&tpdR?8#KYI($&D~~vHqe-sXV%V;xX~R^j%F79V7W%56Rk+8F* z1|!kmb8$nbl&Qa~l-SGW(5WLf#{Z$#8+2IdD&IfU*@8BO7M7ObzX88kBeCRvs_lZd zsTYgSiT_i*B1o?lKUQyR6s9g8s}BsKE+4B;45BWds6K$bK}^Tm{Y-Tl#M=Fr>N1G6`!6-aAlB}`)hvTpyZ=`63}Ws6 zM;&VrYxh5Dn?baR|EgOJqD}l)-ER+wnp&c4{~7dA7D+*p~`sFIwXhu@k;C192y+2woVqbNj+G6TfEMC z&Y*jW?~gZFBj)QIUhjM+-fZ1ukbmq8@gY{(0v&hu@ZCW781$Fo<@GJrTY~hM)ne5y zBq!_T_wg1hkwbruw_1m56dH{gZ>V*QpmRdgO3KtwYnh3gJmIf#*II4RlY>46I@xf( zHmDD1gCIRW46_~=v`y_A6KWb}sbiV@c8Rspi$qY3i~T2+}2*V5J4IUKTY?ureCq)M!cBBp9<1VxBM%pi_UMlRjN_w#ZeRL_p@RK9fA{y{j5fV zxSrV0YR#oPvuQtTr68@#LDpu&8Ny!XAZu%m^X#UBta}SMXIi}3r*pr!X{I${C6TtX zS=Rmw>hhbAM3L#&4ldZgisrbDbJ44RF-(;?Q64LTRI8tw@Q zIyZFXpa7)2Y~rd~=GwEZJsP3ruW6cX{XK_nZ<=d$9LL;QOBXjCZH*J8OM8qpMaPAH zIH^Y+V;yMFu|-6O<|MIG676rX^P5c;>Flu-uvH3gh2taINuXmc*zPnuR*_Y|aCW&PA}UV}2MvUcS- z&u&^}eN@1?+WOpZZW(-+wb}}-l3Ic;yP8&8Lj-B9*IJWxTxd45UTYnY<2<`*t#w=h z=Q`^Y!?_Wh>#Va3S|?~zF5Tlz>#Xk;r1Pv_8qS`^?1?lpgVZE*6a2~R}{tW8_gF2=XeQeO~ zafbnYZqUl{j0>#J%6zZs3~Q1gEpvmlMaPBCn)FH22J0$=P8PI1m+lM1?J7vO(JEde zGDEw^^{9ELgWehvz+I-P8li0? z&1YLD3etLRwyrju9Qig|HyHHU(8}h`*6jw}(RP=$*}B)DwsEzHdsHLHj02UdrPf;J zMb;!im#eYk+L|x2ZWOdRv}e+^#*3{74Eo!o1AyK%sABM_<}KEr4O%vALj4x&zXq)v zb}LZg8@gW3!`kfNtB&^L3VU5;=7a*IVU+H0SkJt)O#o^ZJ

#dOneb-*zyxp23NauH>^}3hO z??&q{22q!9S*Mb(2A3LUWpLww@BCHM_-nz98K# z)~^lc&DNRCw^)BOXp!&y=3A|Q8T3zQTk~y}lVa}YsC$CX*|%HO2HhUIwfPQfh(XQa z=j=PJF$R_R?ry%znrzTc=fUQ0TL%l$rM=slmd=;xZflM~EbVu!Gf&OOeaG4?NSF2= zYpbAh)EV|;&G%S$81$>akDBkbeke$nc8B$|f^<8qmkj54wbr-8`du#Wr_Fe;P^cv8c1|jk0Oibtu!rzlrJ zZLugScogB2BA(L40-m8CYr}g0ZqI>ll5;O9=SC5X9Go!8d>IpkWdETdAy(*n{pSIq|nBnt& zoiDMg6=~kD=Sj@ayk9>(nJ#y~{AJi|{G4FYQTKteMzS`8F7X5Yc zx3&8k6Pq{Jz2vAqZpS`x_Tr*r`oq^U&B*#;{fQ~D&q>U*;bHwHiCwK$Tlq^K)_2>n zUNw8kcl1Mc>~-|Yas4ej7SLr&j_dE*u}Q=p(Lb_dYhBMQ`mTOjVn%}B({Ef)UQDli zPv_sjn5q3yT`IAw)eoQ{kLoir(!Q^k+G!8wEM4+_y;fp|<_~n!{xr=W=¢^J{X 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/bin/Debug/DnsClient.xml b/FifthLesson/EnglishLessons/bin/Debug/DnsClient.xml new file mode 100644 index 0000000..d6d08fa --- /dev/null +++ b/FifthLesson/EnglishLessons/bin/Debug/DnsClient.xml @@ -0,0 +1,3060 @@ + + + + DnsClient + + + +

+ As defined in https://tools.ietf.org/html/rfc1035#section-5.1 except '()' or '@' or '.' + + + + + Reads an IP address from the next 4 bytes. + + The . + If there are no 4 bytes to read. + + + + The flags of the header's second 16bit value + + + + + A represending an IPv6 . + + A 128 bit IPv6 address is encoded in the data portion of an AAAA + resource record in network byte order(high-order byte first). + + + RFC 3596 + + + + Initializes a new instance of the class. + + + + + + Base class for s transporting an . + + + + + + + Gets the . + + + The address. + + + + + Initializes a new instance of the class. + + The information. + The address. + If is null. + If or is null + + + + + + + A representing an AFS database location. + + RFC 1183 + RFC 5864 + + + + Gets the . + + + The sub type. + + + + + Gets the hostname. + + + The hostname. + + + + + Initializes a new instance of the class. + + The information. + The type. + The name. + If or is null. + + + + + + + Type used by . + + + + + AFS is a registered trademark of Transarc Corporation + + + + + The Distributed Computing Environment + + + + + A represending an IPv4 . + Hosts that have multiple Internet addresses will have multiple A records. + + RFC 1035 + + + + Initializes a new instance of the class. + + + + + + A representing a certification authority authorization. + + The Certification Authority Authorization (CAA) DNS Resource Record + allows a DNS domain name holder to specify one or more Certification + Authorities(CAs) authorized to issue certificates for that domain. + + + CAA Resource Records allow a public Certification Authority to + implement additional controls to reduce the risk of unintended + certificate mis-issue.This document defines the syntax of the CAA + record and rules for processing CAA records by certificate issuers. + + + RFC 6844 + + + + One octet containing the flags. + + + + + The property identifier, a sequence of US-ASCII characters. + + + + + A sequence of octets representing the property value. + Property values are encoded as binary values and MAY employ sub-formats. + + + + + Initializes a new instance of the class. + + The information. + The flags. + The tag. + The value. + If or or is null. + + + + + + + A repesenting the canonical name for an alias. + + RFC 1035 + + + + Gets the canonical name for an alias. + + + The canonical name. + + + + + Initializes a new instance of the class. + + The information. + The canonical name. + If or is null. + + + + + + + Base class for all resource records. + + + + + + Initializes a new instance of the class. + + The information. + If is null. + + + + + + + Same as ToString but offsets the + by . + Set the offset to -32 for example to make it print nicely in consols. + + The offset. + A string representing this instance. + + + + Returns the actual record's value only and not the full object representation. + uses this to compose the full string value of this instance. + + A string representing this record. + + + + The type represents a . + + + + + The domain name used to query. + + + + + Specifies type of resource record. + + + + + Specifies type class of resource record, mostly IN but can be CS, CH or HS . + + + + + The TTL value for the record set by the server. + + + + + Gets the number of bytes for this resource record stored in RDATA + + + + + Initializes a new instance of the class. + + The domain name used by the query. + Type of the record. + The record class. + The time to live. + Length of the raw data. + If is null. + + + + Initializes a new instance of the class. + + The used by the query. + Type of the record. + The record class. + The time to live. + Length of the raw data. + If is null or empty. + + + + A not representing any specifc resource record. + Used if unsupported s are found in the result. + + + + + + Initializes a new instance of the class. + + The information. + If is null. + + + + + + + A used to acquire general information about a host. + + RFC 1035 + RFC 1010 + + + + Gets a string which specifies the CPU type. + + + The cpu. + + + + + Gets a string which specifies the operating system type. + + + The os. + + + + + Initializes a new instance of the class. + + The information. + The cpu. + The os. + If is null. + + + + + + + A represending a domain name which specifies a host which has the specified mailbox. + + RFC 1035 + + + + Gets the domain name which specifies a host which has the specified mailbox. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + A represending a domain name which specifies a mailbox which is a member of the mail group specified by the domain name. + + RFC 1035 + + + + Gets a domain name which specifies a mailbox which is a member of the mail group specified by the domain nam. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + A represending mailbox or mail list information. + + RFC 1035 + + + + Gets the domain name which specifies a mailbox which is responsible for the mailing list or mailbox. + + + The domain name. + + + + + Gets the domain name which specifies a mailbox which is to receive error messages related to the mailing list or mailbox. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The RMAILBX. + The EMAILBX. + If or or is null. + + + + + + + A represending a mailbox rename domain name. + + RFC 1035 + + + + Gets the domain name which specifies a mailbox which is the proper rename of the specified mailbox. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + A represending a mail exchange. + + RFC 1035 + RFC 974 + + + + Gets a 16 bit integer which specifies the preference given to + this RR among others at the same owner. + Lower values are preferred. + + + + + A domain name which specifies a host willing to act as a mail exchange. + + + + + Initializes a new instance of the class. + + The information. + The preference. + Name of the domain. + If or is null. + + + + + + + A represending an authoritative name server. + + RFC 1035 + + + + Gets the domain name which specifies a host which should be authoritative for the specified class and domain. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The name. + If or is null. + + + + + + + Experimental RR, not sure if the implementation is actually correct either (not tested). + + RFC 1035 + + + + Gets any data stored in this record. + + + The byte array. + + + + + Initializes a new instance of the class. + + The information. + Anything. + If or is null. + + + + + + + A DNS resource record represending an IP address. + Hosts that have multiple Internet addresses will have multiple A records. + + + + + + + + A represending a pointer. These RRs are used + in special domains to point to some other location in the domain space. + + + RFC 1035 + + + + Gets the domain name which points to some location in the domain name space. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + The resource record types. The enum contains only the types supported by this library at this moment. + The is used to identify any . + + Resource record types are a subset of . + + + + + + + + A host address. + + RFC 1035 + + + + + An authoritative name server. + + RFC 1035 + + + + + A mail destination (OBSOLETE - use MX). + + RFC 1035 + + + + A mail forwarder (OBSOLETE - use MX). + + RFC 1035 + + + + The canonical name for an alias. + + RFC 1035 + + + + + Marks the start of a zone of authority. + + RFC 1035 + + + + + A mailbox domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A mail group member (EXPERIMENTAL). + + RFC 1035 + + + + + A mailbox rename domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A Null resource record (EXPERIMENTAL). + + RFC 1035 + + + + + A well known service description. + + RFC 3232 + + + + + A domain name pointer. + + RFC 1035 + + + + + Host information. + + RFC 1035 + RFC 1010 + + + + + Mailbox or mail list information. + + RFC 1035 + + + + + Mail exchange. + + RFC 1035 + RFC 974 + + + + + Text resources. + + RFC 1035 + RFC 1464 + + + + + Responsible Person. + + RFC 1183 + + + + + AFS Data Base location. + + RFC 1183 + RFC 5864 + + + + + An IPv6 host address. + + RFC 3596 + + + + + A resource record which specifies the location of the server(s) for a specific protocol and domain. + + RFC 2782 + + + + + Option record. + + RFC 6891 + + + + RRSIG rfc3755. + + RFC 3755 + + + + A Uniform Resource Identifier (URI) resource record. + + RFC 7553 + + + + + A certification authority authorization. + + RFC 6844 + + + + + A represending a responsible person. + + RFC 1183 + + + + Gets a domain name that specifies the mailbox for the responsible person. + + + The mailbox domain. + + + + + Gets a domain name for which TXT RR's exist. + + + The text domain. + + + + + Initializes a new instance of the class. + + The information. + The mailbox domain. + The text domain. + + If or or is null. + + + + + + + + A represending a SOA (Start Of Authority) record. + + RFC 1035 + + + + Gets a 32 bit time value that specifies the upper limit on + the time interval that can elapse before the zone is no + longer authoritative. + + + The expiration. + + + + + Gets the unsigned 32 bit minimum TTL field that should be + exported with any RR from this zone. + + + The minimum TTL. + + + + + Gets the domain name of the name server that was the original or primary source of data for this zone. + + + The doman name. + + + + + Gets a 32 bit time interval before the zone should be refreshed. + + + The refresh time. + + + + + Gets a 32 bit time interval that should elapse before a failed refresh should be retried. + + + The retry time. + + + + + Gets a domain name which specifies the mailbox of the person responsible for this zone. + + + The responsible mailbox domain name. + + + + + Gets the unsigned 32 bit version number of the original copy + of the zone.Zone transfers preserve this value. This value wraps and should be compared using sequence space arithmetic. + + + The serial number. + + + + + Initializes a new instance of the class. + + The information. + Name original domain name. + Name responsible domain name. + The serial number. + The refresh time. + The retry time. + The expire time. + The minimum TTL. + + If or or is null. + + + + + + + + A represending a location of the server(s) for a specific protocol and domain. + + RFC 2782 + + + + Gets the port. + + + The port. + + + + + Gets the priority. + + + The priority. + + + + + Gets the target domain name. + + + The target. + + + + + Gets the weight. + + + The weight. + + + + + Initializes a new instance of the class. + + The information. + The priority. + The weigth. + The port. + The target. + If or is null. + + + + + + + A represending a text resource. + + TXT RRs are used to hold descriptive text. The semantics of the text + depends on the domain where it is found. + + + RFC 1035 + RFC 1464 + + + + Gets the list of TXT values of this resource record in escaped form, valid for root file. + + + See https://tools.ietf.org/html/rfc1035#section-5.1 for escape details. + + + + + Gets the actual UTF8 representation of the text values of this record. + + + + + Initializes a new instance of the class. + + The information. + The values. + The UTF8 values. + + If or or is null. + + + + + + + + A represending a Uniform Resource Identifier (URI) resource. + + RFC 7553 + + + + Gets or sets the target Uri. + + + The target. + + + + + Gets or sets the priority. + + + The priority. + + + + + Gets or sets the weigth. + + + The weigth. + + + + + Initializes a new instance of the class. + + The information. + The priority. + The weight. + The target. + If or is null. + + + + + + + A represending a Well Known Service description. + + + Instead of describing the supported protocols in RFCs, the list is now published on http://www.iana.org/. + + + RFC 3232, the most current update. + + + + Gets the address. + + + The address. + + + + + Gets the Protocol. + + + According to https://tools.ietf.org/html/rfc6335, only ports for TCP, UDP, DCCP and SCTP services will be assigned. + + + + + Gets the binary raw bitmap. + Use to determine which ports are actually configured. + + + + + Gets the list of assigned ports. + + For example, if this list contains port 25, which is assigned to + the SMTP service. This means that a SMTP services + is running on with transport . + + + Port numbers + + + + Initializes a new instance of the class. + + The information. + The address. + The protocol. + The raw data. + + If or or is null. + + + + + + + + Specifies kind of query in this message. + This value is set by the originator of a query and copied into the response. + + + + + A standard query. + + RFC 1035 + + + + An inverse query. + + RFC 3425 + + + + A server status request. + + RFC 1035 + + + + Unassigned value + + + + + Notify query. + + RFC 1996 + + + + Update query. + + RFC 2136 + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Extension methods for the contract. + + The methods implement common queries which are more complex and have some business logic. + + + + + + The GetHostEntry method queries a DNS server for the IP addresses and aliases associated with the . + In case is an , GetHostEntry does a reverse lookup on that first to determine the hostname. + + IP addresses found are returned in . + records are used to populate the .
+ The property will be set to the resolved hostname or . +
+
+ + The following code example uses the method to resolve an IP address or hostname to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The or host name to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
+ + + The GetHostEntryAsync method queries a DNS server for the IP addresses and aliases associated with the . + In case is an , GetHostEntry does a reverse lookup on that first to determine the hostname. + + IP addresses found are returned in . + records are used to populate the .
+ The property will be set to the resolved hostname or . +
+
+ + The following code example uses the method to resolve an IP address or hostname to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The or host name to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
+ + + The GetHostEntry method does a reverse lookup on the IP , + and queries a DNS server for the IP addresses and aliases associated with the resolved hostname. + + IP addresses found are returned in . + records are used to populate the .
+ The property will be set to the resolved hostname of the . +
+
+ + The following code example uses the method to resolve an IP address to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
+ + + The GetHostEntryAsync method does a reverse lookup on the IP , + and queries a DNS server for the IP addresses and aliases associated with the resolved hostname. + + IP addresses found are returned in . + records are used to populate the .
+ The property will be set to the resolved hostname of the . +
+
+ + The following code example uses the method to resolve an IP address to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
+ + + The GetHostName method queries a DNS server to resolve the hostname of the via reverse lookup. + + The instance. + The to resolve. + + The hostname if the reverse lookup was successful or null, in case the host was not found. + If is set to true, this method will throw an instead of returning null! + + If is null. + If no host has been found and is true. + + + + The GetHostNameAsync method queries a DNS server to resolve the hostname of the via reverse lookup. + + The instance. + The to resolve. + + The hostname if the reverse lookup was successful or null, in case the host was not found. + If is set to true, this method will throw an instead of returning null! + + If is null. + If no host has been found and is true. + + + + The ResolveService method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + + The protocol of the service to query for. + Set it to or to not pass any protocol. + + A collection of s. + If or are null. + RFC 2782 + + + + The ResolveServiceAsync method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + + The protocol of the service to query for. + Set it to or to not pass any protocol. + + A collection of s. + If or are null. + RFC 2782 + + + + The ResolveService method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + An optional tag. Must not have any _ prefix. + A collection of s. + If or are null. + RFC 2782 + + + + The ResolveServiceAsync method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + An optional tag. Must not have any _ prefix. + A collection of s. + If or are null. + RFC 2782 + + + + Extends by the property. + + + + + + Gets or sets the port. + + + The port. + + + + + The response returned by any query performed by with all answer sections, header and message information. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The class transports information of the lookup query performed by . + + A list of questions is returned by (although, the list will always contain only one ). + + + + + + Gets the domain name the lookup was runnig for. + + + The name of the query. + + + + + Gets the question class. + + + The question class. + + + + + Gets the type of the question. + + + The type of the question. + + + + + Initializes a new instance of the class. + + The query. + Type of the question. + The question class. + If is null. + + + + Initializes a new instance of the class. + + The query. + Type of the question. + The question class. + If is null. + + + + + + + Returns the information of this instance in a friendly format with an optional . + + The optional offset which can be used for pretty printing. + The string representation of this instance. + + + + Represents a simple request message which can be send through . + + + + + Response codes of the . + + RFC 6895 + + + + No error condition + + RFC 1035 + + + + Format error. The name server was unable to interpret the query. + + RFC 1035 + + + + Server failure. The name server was unable to process this query due to a problem with the name server. + + RFC 1035 + + + + Name Error. Meaningful only for responses from an authoritative name server, + this code signifies that the domain name referenced in the query does not exist. + + RFC 1035 + + + + Not Implemented. The name server does not support the requested kind of query. + + RFC 1035 + + + + Refused. The name server refuses to perform the specified operation for policy reasons. + For example, a name server may not wish to provide the information to the particular requester, + or a name server may not wish to perform a particular operation (e.g., zone transfer) for particular data. + + RFC 1035 + + + + Name Exists when it should not. + + RFC 2136 + + + + Resource record set exists when it should not. + + RFC 2136 + + + + Resource record set that should exist but does not. + + RFC 2136 + + + + Server Not Authoritative for zone / Not Authorized. + + RFC 2136 + RFC 2845 + + + + Name not contained in zone. + + RFC 2136 + + + + Bad OPT Version or TSIG Signature Failure. + + RFC 2671 + RFC 2845 + + + + Key not recognized. + + RFC 2845 + + + + Signature out of time window. + + RFC 2845 + + + + Bad TKEY Mode. + + RFC 2930 + + + + Duplicate key name. + + RFC 2930 + + + + Algorithm not supported. + + RFC 2930 + + + + Bad Truncation. + + RFC 4635 + + + + Bad/missing Server Cookie + + RFC 7873 + + + + Unknown error. + + + + + Indicates a timeout error. Connection to the remote server couldn't be established. + + + + + A DnsClient specific exception transporting additional information about the query causing this exception. + + + + + + Gets the response code. + + + The response code. + + + + + Gets the audit trail if . as set to true, null otherwise. + + + The audit trail. + + + + + Gets a human readable error message. + + + The error message. + + + + + Initializes a new instance of the class + with set to . + + + + + Initializes a new instance of the class + with set to + and a custom . + + + + + Initializes a new instance of the class + with the standard error text for the given . + + + + + Initializes a new instance of the class + with set to + and a custom and inner . + + + + + Initializes a new instance of the class + with a custom and the given . + + + + + Initializes a new instance of the class + with a custom and the given . + + + + + The header section of a . + + + + + Gets the number of additional records in the . + + + The number of additional records. + + + + + Gets the number of answer records in the . + + + The number of answer records. + + + + + Gets a value indicating whether the future use flag is set. + + + The future use flag. + + + + + Gets a value indicating whether this instance has authority answers. + + + true if this instance has authority answers; otherwise, false. + + + + + Gets the identifier. + + + The identifier. + + + + + Gets a value indicating whether the result is authentic data. + + + true if the result is authentic; otherwise, false. + + + + + Gets a value indicating whether checking is disabled. + + + true if checking is disabled; otherwise, false. + + + + + Gets a value indicating whether this instance has a query. + + + true if this instance has a query; otherwise, false. + + + + + Gets the number of name servers. + + + The number of name servers. + + + + + Gets the kind of query defined by . + + + The query kind. + + + + + Gets the number of questions of the . + + + The number of questions. + + + + + Gets a value indicating whether recursion is available on the DNS server. + + + true if recursion is available; otherwise, false. + + + + + Gets the response code. + + + The response code. + + + + + Gets a value indicating whether the result was truncated. + + + true if the result was truncated; otherwise, false. + + + + + Gets a value indicating whether recursion desired flag was set by the request. + + + true if the recursion desired flag was set; otherwise, false. + + + + + Initializes a new instance of the class. + + The identifier. + The flags. + The question count. + The answer count. + The additional count. + The server count. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets the readonly representation of this message which can be returned. + + + + + The type is used to normalize and validate domain names and labels. + + + + + The ACE prefix indicates that the domain name label contains not normally supported characters and that the label has been endoded. + + + + + The maximum lenght in bytes for one label. + + + + + The maximum supported total length in bytes for a domain nanme. The calculation of the actual + bytes this consumes includes all bytes used for to encode it as octet string. + + + + + The root label ".". + + + + + Gets the orginal value. + + + + + Gets the validated and eventually modified value. + + + + + Performs an implicit conversion from to . + + The name. + + The result of the conversion. + + + + + + + + + + + + + + Parses the given and validates all labels. + + + An empty string will be interpreted as root label. + + A domain name. + The representing the given . + If is null. + + + + Transforms names with the to the unicode variant and adds a trailing '.' at the end if not present. + The original value will be kept in this instance in case it is needed. + + + The method does not parse the domain name unless it contains a . + + The value to check. + The representation. + + + + Generic contract to query DNS endpoints. Implemented by . + + + + + Performs a DNS lookup for and . + + The domain name query. + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for , and . + + The domain name query. + The . + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for and . + + The domain name query. + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for , and . + + The domain name query. + The . + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for and . + + The domain name query. + The . + The cancellation token. + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for , and . + + The domain name query. + The . + The . + The cancellation token. + + The which contains the response headers and lists of resource records. + + + + + Does a reverse lookup of the . + + The . + + The which should contain the . + + + + + Does a reverse lookup of the . + + The . + + The which should contain the . + + + + + Does a reverse lookup of the . + + The . + The cancellation token. + + The which should contain the . + + + + + Contract defining the result of a query performed by . + + + + + + + Gets the list of questions. + + + + + Gets a list of additional records. + + + + + Gets a list of all answers, addtional and authority records. + + + + + Gets a list of answer records. + + + + + Gets a list of authority records. + + + + + Gets the audit trail if . as set to true, null otherwise. + + + The audit trail. + + + + + Returns a string value representing the error response code in case an error occured, + otherwise ''. + + + + + A flag indicating if the header contains a response codde other than . + + + + + Gets the header of the response. + + + + + Gets the size of the message. + + + The size of the message. + + + + + Gets the name server which responded with this result. + + + The name server. + + + + + The contract for the LookupClient including all the options. + + The interfaces for the query methods and the lookup client properties are separated so that one can + inject or expose only the without exposing the configuration options. + + + + + + If enabled, each will contain a full documentation of the response in zone file format. + + + + + + Gets or sets a flag indicating if the should use response caching or not. + The cache duration is calculated by the resource record of the response. Usually, the lowest TTL is used. + + + In case the DNS Server returns records with a TTL of zero. The response cannot be cached. + Setting can overwrite this behavior and cache those responses anyways for at least the given duration. + + + + + Gets or sets a which can override the TTL of a resource record in case the + TTL of the record is lower than this minimum value. + + This is useful in cases where the server retruns records with zero TTL. + + This setting gets igonred in case is set to false. + + + + + Gets the list of configured name servers. + + + + + Gets or sets a flag indicating if DNS queries should instruct the DNS server to do recursive lookups, or not. + + The flag indicating if recursion should be used or not. + + + + Gets or sets number of tries to connect to one name server before trying the next one or throwing an exception. + + + Gets or sets the number of retries the client can perform in connection or timeout errors during query operations. + + If set to 0, no retries will be performed. + + + The number of alloed retries before exceptions will bubble up. + + + + Gets or sets a flag indicating if the should throw an if + a query result has a other than . + + If set to false, the 's flag can be expected. + The will contain more information and the transports the + original . + + + If set to true, any query method of will throw an if + the response header indicates an error. The actual code and message can be accessed via and of the . + + + + + + + Gets or sets the timeout in milliseconds. is used for limiting the connection and request time for one operation. + Timeout must be greater than zero and less than . + If set to (or -1), no timeout will be applied. + + + If set too short, queries will more likely result in s. + + Important to note, s will be retried, if are not disabled. + This should help in case one or more configured DNS servers are not reachable or under load for example. + + + + + + Gets or sets a flag indicating if Tcp should not be used in case a Udp response is truncated. + If true, truncated results will potentially yield no answers. + + + + + Gets or sets a flag indicating if Udp should not be used at all. + + Use this only if Udp cannot be used because of your firewall rules for example. + + + + + + The is the main query class of this library and should be used for any kind of DNS lookup query. + + It implements and which contains a number of extension methods, too. + The extension methods internally all invoke the standard queries though. + + + + + + A basic example wihtout specifying any DNS server, which will use the DNS server configured by your local network. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of without specifying any name server. + This will implicitly use the name server(s) configured by the local network adapter. + + + This uses . + The resulting list of name servers is highly dependent on the local network configuration and OS. + + + In the following example, we will create a new without explicitly defining any DNS server. + This will use the DNS server configured by your local network. + + + + + + + + Creates a new instance of with one or more DNS servers identified by their . + The default port 53 will be used for all s provided. + + The (s) to be used by this instance. + + To connect to one or more DNS server using the default port, we can use this overload: + + + + + + + + Create a new instance of with one DNS server defined by and . + + The of the DNS server. + The port of the DNS server. + + In case you want to connect to one specific DNS server which does not run on the default port 53, you can do so like in the following example: + + + + + + + + Creates a new instance of with one or more and port combination + stored in (s). + + The (s) to be used by this instance. + + In this example, we instantiate a new using an and custom port which is different than the default port 53. + + + + + The class also contains pre defined s for the public google DNS servers, which can be used as follows: + + + + + + + + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + Represents a name server instance used by . + Also, comes with some static methods to resolve name servers from the local network configuration. + + + + + The default DNS server port. + + + + + The public google DNS IPv4 endpoint. + + + + + The second public google DNS IPv6 endpoint. + + + + + The public google DNS IPv6 endpoint. + + + + + The second public google DNS IPv6 endpoint. + + + + + Initializes a new instance of the class. + + The endpoint. + + + + Initializes a new instance of the class. + + The endpoint. + If is null. + + + + Gets a value indicating whether this is enabled. + + The instance might get disabled if encounters problems to connect to it. + + + + true if enabled; otherwise, false. + + + + + Gets the endpoint of this instance. + + + The endpoint. + + + + + Gets the size of the supported UDP payload. + + This value might get updated by by reading the options records returned by a query. + + + + The size of the supported UDP payload. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets a list of name servers by iterating over the available network interfaces. + + If is enabled, this method will return the google public dns endpoints if no + local DNS server was found. + + + If set to true local IPv6 sites are skiped. + If set to true the public Google DNS servers are returned if no other servers could be found. + + The list of name servers. + + + + + CLASS fields appear in resource records. + + + + + The Internet. + + + + + The CSNET class (Obsolete - used only for examples in some obsolete RFCs). + + + + + The CHAOS class. + + + + + Hesiod [Dyer 87]. + + + + + The query type field appear in the question part of a query. + Query types are a superset of . + + + + + A host address. + + RFC 1035 + + + + + An authoritative name server. + + RFC 1035 + + + + + A mail destination (OBSOLETE - use MX). + + RFC 1035 + + + + A mail forwarder (OBSOLETE - use MX). + + RFC 1035 + + + + The canonical name for an alias. + + RFC 1035 + + + + + Marks the start of a zone of authority. + + RFC 1035 + + + + + A mailbox domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A mail group member (EXPERIMENTAL). + + RFC 1035 + + + + + A mailbox rename domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A Null resource record (EXPERIMENTAL). + + RFC 1035 + + + + + A well known service description. + + RFC 3232 + + + + + A domain name pointer. + + RFC 1035 + + + + + Host information. + + RFC 1035 + RFC 1010 + + + + + Mailbox or mail list information. + + RFC 1035 + + + + + Mail exchange. + + RFC 1035 + RFC 974 + + + + + Text resources. + + RFC 1035 + RFC 1464 + + + + + Responsible Person. + + RFC 1183 + + + + + AFS Data Base location. + + RFC 1183 + RFC 5864 + + + + + An IPv6 host address. + + RFC 3596 + + + + + A resource record which specifies the location of the server(s) for a specific protocol and domain. + + RFC 2782 + + + + + RRSIG rfc3755. + + RFC 3755 + + + + Generic any query *. + + + + + A Uniform Resource Identifier (URI) resource record. + + RFC 7553 + + + + + A certification authority authorization. + + RFC 6844 + + + + + Used for debugging at the moment, might be removed in a future release. + + + + + The number of byte array allocations. + + + + + The number of byte arrays released. + + + + + The number of resolved queries. + + + + + The number of resolve query tries. + + + + + The number of created clients. + + + + + Helper for reading config files where each row is a key-value data pair. + The input key-values must not have any whitespace within them. + Keys are only matched if they begin a line, with no preceding whitespace. + + + + + Constructs a new RowConfigReader which reads from the given string. + The string to parse through. + + + + + Constructs a new RowConfigReader which reads from the given string. + The string to parse through. + The comparison kind to use. + + + + + Gets the next occurrence of the given key, from the current position of the reader, + or throws if no occurrence of the key exists in the remainder of the string. + + + + + Tries to get the next occurrence of the given key from the current position of the reader. + If successful, returns true and stores the result in 'value'. Otherwise, returns false. + + + + + Gets the next occurrence of the key in the string, and parses it as an Int32. + Throws if the key is not found in the remainder of the string, or if the key + cannot be successfully parsed into an Int32. + + + This is mainly provided as a helper because most Linux config/info files + store integral data. + + + + + Reads the value of the first occurrence of the given key contained in the string given. + + The key-value row configuration string. + The key to find. + The value of the row containing the first occurrence of the key. + + + + Extension methods for . + + + + + Translates a IPv4 or IPv6 into an arpa address. + Used for reverse DNS lookup to get the domain name of the given . + + The address to translate. + The arpa representation of the address. + + + + + + + Extension methods for where T is . + + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s + which have the . + + The records. + The to filter for. + The list of . + + + diff --git a/FifthLesson/EnglishLessons/bin/Debug/EnglishLessons.dll b/FifthLesson/EnglishLessons/bin/Debug/EnglishLessons.dll new file mode 100644 index 0000000000000000000000000000000000000000..ef715257b03bf83e2c6927f409b4d4f54a7c0b11 GIT binary patch literal 12288 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 a=4R?i(EqQ%X8$)I27ase|JR>i1pXUX*mREo literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/bin/Debug/EnglishLessons.pdb b/FifthLesson/EnglishLessons/bin/Debug/EnglishLessons.pdb new file mode 100644 index 0000000000000000000000000000000000000000..8f7ac870eb60fe9c94de37f8e0871fd97d907f30 GIT binary patch literal 48640 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�-7BI#T0qwY{Nu779bxr?4!@eLfuF{$)X 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

#le0U&!4ddIu!rXj7IrzY^0%b zJqV7=PkUg_Ld6gBh1>?#Nx6izEmgkF%V&(TM&{|vO=lD2UR`9?l{)`z4{W+v<*`DQ zxgQ1Nv?(W&Wo+VNtFoWy4fF>1e@dWyKbu@y6)VEuP!=#G+rOpfkg?ZTX|eL7#GzjR z?1K#8@=xbE#GEh_pY3FK6|6qPehMJxcT5k0Ls-!Y!OiG7WbAcCa6JjqF8~r`fCRS! z-U+iva8;RDAh-}9XLJ04zd-*Y{NdSY46}dbk4UJ5EqinW2olD4ik7%ouf2hAzh&6Z zgLqXm!9bG&;lsOBg#ZKVU6p{hq}$IRiSv8>$sS*N3{qTGv2qruRt6}wjpmVk;S#h9 z{~4Kth(+aXQte$0kP5%Uu>Duiq!#l{b`90h%*tDg3ReCE2U>5t2Zc6931rdzkh3W> zs|95nLAgdye*36le`-3mVY|o1hI5hPLy|gb&uH2B(Ic&Bl#c z$Qac0=5(<@s!8i?K`7P_Z=$vaW}5w&30RH&Sb?zuodV*~#EgclFCunb2^TkkVb51z z(a?l6B*ptaO<3BR&_n7Ng&D#&jYO9aq~@pv5R|WSj)HK!>kEe}uJa>EXPC1CGNqMU!1 zfFA$VBB!g7*D4CBwX>ETro7#2Gi|QFXKki?*m2bZ7~kB1}*6bMkE;)f{|1ir*WEANFI5(VcfPOH5}lMasaq^ z`GSZggmW5#{ZG;oqG4z;*J9_9C}U`V{cLQNiKx_w13g46yN@oJumg?MZUoke^6rGK zsz!9!@_k;z54@hmT*1!JbgrmQ$+xcdAiXA%yl0cVDL8K3UVyf~QP)S+ib7;rS!LM= zi=3z`nUDP`eK9Os=q6>AV;=;Rcup;OOj+#2tfURvIckm%K`p7}ifDwO`_o^W6H`yHe=!&#hPK7UmOIX<0XEyQ+nqmacA~$INs~fRd-;lW9d&jTQCz z<8il!{BKa1wocIm?DY_SRVNyfN%%C?w?U0<#*^9l(FodQ^!=E#4{~*-dVWSXVGwmH z(Yh&}eSsCvC6MR^IhkfVL0jv*&6-txt676VvbRPiMzXvg2vk0fKb+ddmGKU(9=HiI zCbFW4tLPZkb2&R4S<6QdKY?`ASPryBg^+r_aDPDCgE8C*l8ErY;t6~=?F=&uHI^;` z?VCXxmCp?K#tx$wLcqZn&IlZ9cx^lw+$$^@?9J^)aIgLtSLPg<2cHP;)wRKdte9da z`8D1^9-EVO~&ZOh(kH7=;dk=M0=QPfulo z%GQz(5>wW=&-!|8eZ)GZz!D7-&e5GY9t@W|KB-x=atMQ2WAsqCWEVpNy=d~AI0R|s z2SMXR9mXi+%YEKKa8D%PqlW|9KTWx#%)=boUWJg?GDa>$M?V6dk(hNnt^$Ma;^iym zL4@eF)(Vt}gkl3juSL5(+W$piN`0%;kI=T+!WcB)BFCq4&{X(~HkyKdCrM!sIJ{;9 zOoSk7G z5#C}G%C$mI*82f!=*&eIE8?6c8C|feqTNzO+f9?KN#X`z9EGg# zm7Zj!AHbkQ|1qrj9g*T;WU(qNyAiIim`0?+@}WK0Sc|@e7`7kao1};A`!uUoRz6C9i6a zDVij46*g{+HQK|9^LAWbC}Ed(Q{u4!hQRuVi%Nze5yzh3$*@_W5MzZc0(+9)JNyqv zS9>aV7Vn9d-6H$hiDI#fU@DG8;$qM6F2dYoY|UB3k0zLCq|B{F9h!i#2jLz__8^Rx zJ%}L69%M1%oFWkpFu1w?It#QyL|o*K7YEtfAl}}VNF~*;SsP|2Fx}0?`{V$dh8=-q zj51U{3blc8Am!{p7!QYKwOfTD6n8cI!)OI2!4mr4q_e^prQ2-v02$&qZ~|QZ^SQZ$ zd;04fPwChuT!Fp3Fc2_hH37O~qcXDB%s4~B-lm<@gnm=*MBZknbT za6**;9PXVClu|Oz4@ul?6_--ul^MWBIq(e`N9K&IVc2CaE z#FNYq7&r4Bh=W}eOPO6I`=k$0Ndp-0SXpA!hDIhVdo(^2i=q-(V6;c#M7KS#yjJX@ z!Qy6c*h881;V6FFQHYpNb0MOAMkmJZZ?bJ%kp@-pATVb~cpSa5P;xnQG zmU>M28+;`fiS`Db$Cq}y^x`ibQ%rz_rAW*;LWqQ`2u55gmQN6$O1aR;6IbO1Lq<{+ z3JVUdj5?zx=7T8Lm(5nS?a{0(Qmk#JK;<0_k7PTHo&#iE!Ely8S`W8E9024E@7 z(G_~Efr?>&134L^#C7fzQ6r$s-UOOl2oiI1j)jISk?Zfk+oABas5JP@W(_}l_%Ra6 zA!!(pi}?Z2Vz3F^6~G<%>9c7*nD#!FH`>TjGIYL+RL>apy%gcV6fAxX?A{igRmxn#aL#1~RMF{+4LnMlJ=6Y*#L!@*D#(}4tAd}Z4IW<`$sVaD4ZSbVp;K{YYQy3gH>`PHm&Z!JgCCCC)QCw9U9IXxV>DDUbN^Nkg zHh4yD@XXraS+&8l8FbgsILpI+i_Hklz8!+R^mml97XZN5g`#vdbh4PW)~Ni6?WA6SC& z$T>?B{Fvow5~QN6wFAl024PzanodFW=$FgUZo$AgptT*_t%ep?DE^uNQ;8MCHoSh~ zk8t7_us^wkQbU_5&Z{^vgBWjdx&eI!HE;1SuC>`7o>jpx=7Laoq|FQ^=Rc?Vcu-#G zlD&H^Ph4R68JV)cLM10nQO!V~U0VjjRH`zpx@zbc=75}(E3E_T;4sty|JCCCS9K6W zVb`i0q}ZaSVP1zKpKmwHAUJ%OpOnfPED0MHF0|sgAsjVwg(II1aET*Jn-&AZ@wN!T z;o2rD`VlKS91BNB;^E}{M|n&vBe@ZD?qV0M3V*LIe0N>=p1Sb&>%#Zeh3~HmKTsEb zurB;VhA{>!{+x$ugFmVbK3tdhk-G4sb>W}Xg@4MhpV`l9gFmmseylG1i@Nao+T@Qj zi1y@~`UVOR{`qU_Yfp09Gf2t(E`ux3`&L2J`yVeHvN1++1>SiwR^Wms zD{w3^b;SORkOVp+gyY34Yk}D3U>nZWcY;o+(n1F}Z^z+s-TgN(Z;TR$dmw?rB^JX> zgn1@a!Ksd%{jrRPp?n-GOcvmEjs4fUv-8iFF zS&0}cxcx~;FjgkyBt#nlzZh`V~4#V1dDvCpLPAg`y1v5)CLCRFaJx9=(C@L-et(#d< zL^ux~0va5f<;Zt8q$=%CE}mn<}Y{HHJ= z2Dg$`(Sw=OhID&YF_T|hnzG8p(0mDTDDBCPnU9w)@(~o-)QFoU@>K71e}`kXB&;Gn zxP>uFIqIL+8wjF>tu=RJ9Rgt{5C;Q}gB%i(9T^oU?wX1cFORlhIYg= zwkN|-7}ch00xvvXDy zbc{Ko^aUbw-abxP(L3*k^xlSB$M{PX&4zFY^}~s%cg#ttN(WfbsvVg_wuC(Bv7=f7 zbPY&Z{Blmq^r|6N22iYn><+fjHIpjjTJ*t?tcRs9O{QM|X9>WT$supzl5oe#oDv-JzCIk34G28WZTP0L>n@Ep{l;oZg5jKP6 zoj8|3l`is=Qqty&Omi7f0;4&-3WF5ui8k;2_aQu@o<_W0{9n|Q@DRj3?kp2EOHx~( z)jec-=@?|v+}Ht{QRzng(@U3)k0fQ9kMi&=N#%m&sw}6aXPVGQ4~Fn3H^q!w7>mgV zPE~~s%*_jjO5O(X#gpJ)YC}ht>JT6|PShY` zMkP*YSh(ZU-Kg^*ZkbSgHKRTa)P;~rDw8p3SdOSJrOl`h-WhYTN*~<8L>Nan0el-1 z=)f;G!;Ix@MPP+F9OJX>Qm^#4mF|V8m3~jjm*uF1yN%+dHyAz{-F%h1dybd(Kh1?< zYb-^e?!X8@Eg=6stX1qjPYTTC&h`wTp~#8iO>qUIFy&EA2+HikE8RT)+qP3ogzQZ` zUR366qg|`p$les8ECw8rs8nMDXBQtmHLTFTrX?B+A$9}W$cSX4sc9oa!H4o^5r@xx z42L#DD9`(>SEwgpONO$Vfn!nDJEU*3rDM6h6cM$Rw-F+PFYvknz0Ob-Jb0tp#Zw0PZHCB@NazZ41y&h$&K{@-*j#5oS)PTp3w#Mm0>{(eqKclvU^+>&vMUudwFf!3k!j!Y~h19?3ve zl#C<60QVWq?1)5AYV3&g;e|fmaIJ}0-)lhQPPVZtUM#s=S>(by8DW#s9!VNq9h8VJ z8^%WYd0`zfLT;H1x@=WBh>&%mN*GbgA;X?4*${K2#eihkHUP<}UM;D8)NJq;_r?<= z(Hx|Emyo%#_YESDqK8caB{B}&!LirO}TmDacd#zx5`1~=91 zw%qKaoDV{Qe*x!iT_4p3R;-UITQ6A1pn&!Bn$kZ))2QkoZ`SG_tL(sPBf`VUt8yoJ zg`A&K#ceU8g6{=w>3WKCwWhhe90}G2BtEbfPusf-;4i3=u zM44!)gNv6-l{J*z#1_6j7ppcGw7#CYp_&o_gMrbwc4;9Q`(>_D$g?C*&pgd942{$z zYgOJ^IumKnU!g2j<3YNC@0#&4J-A=(SPtv9T0m-8%-m{$-NVY>trpq?C=K6oyXXNH z#Pm3(P32@Db4}%BBy&yW{KDz9>FN@u-4e17k6TaLjLs)DQ9W@@a*sc5V$f+S+^+cm z#;{cDl-lx&NnUOy+VmGNLa7nKa1z#eRZWC(Pp#p=e>iX;jS_Y@3V0 zx@V_X+p*Ha%3u!`dM&jvI8?6%q=uukU#tao4@bq2u@>3`C>ypGnjU61E}Q{w{GN=} zKZmK#pvNH8McRmPsx~5|)(Kq}Jj#8Ho!HI#ZPp%wtz><_N)LldW2Y7lYPfz`B}zY6d)4XkK)OuMJkbyKcpU~2=H9Nvx@CR_Re|L)ovsLJUKqSS)U zbU}{*U9oT$L5o{)0VK9!hP=}uiGJo`ob4uh(gU4C(CpTLe1IgLb6v=JuIDqZ=X}?5 z0X-<~h1$JHyKCs8`B}$H;PRiZ@$OvwJi3_OIoy-(_vRCP)cLrULL2>ZxW5zQkRwwkDo z=PgwMOH{{Fxm2yP)hy@pDC-Efi(CmrMp|l@L6Kp-38*5MTrjBVLEBDcv}&#(?vsi}p>))@pySXL*lVGLHH$E8_uGLFG+q|LxN-go31Hhk$Fc!2zl_M+kjcE-k? z9$hh%V%)@rd4^If_6qQexV`~#MQ8WL6{daCqq>xEfv%FT>4BcjlziPTANBdi1zM6+ ziAC6CS8JbwrdIvf#BFAQz=O@|bFi6w)YVth+N!CVwJM)b;5U}7euU}^4j-y}J z@?6Jn4qJKFVUns}l}H1m^i4Hml2;zE&@r zRRfKE5?UrW(4xg&eYE2CP1p`#cOh~cx57i4))ZwKhQ2<(N3jp3HEA`OHPAQavH=>!K+3F zJQC{b++{dR$*8GxQin}W<|gW?HHGK6&vvYlyx>)GuJQXx%iZMl^%Kb5L_AMc`hubQ zveZbQD|Q@bf=c=z)-t8UORsR^loL>@tq6qLs(;J_V(wP=P&_1K5@(!&<)xJ#f|`U( zIa)-6tIopnMKxKiutdh(PO}2H_;`xFd8fO%7~$n=#uSlIDP<~FUUTqr)nBOV;Xh+^ zCiqC<#E2r~T#oGK&D8?s#)$+DwqZN1a4U3jKdQkJoOvG3h{E}bNkc9?24n=DKr~^3mAuYZZL|1G&Vz~vzC}T04 z(6~coqis2ulWWUCZj>zt_SH4gQ(Q~fPY8q+S5f&+e%Q(K}z&dB-l zWfVV^nr*WyXsErtyDq+*0w4zjv%4q}^)zHK`6DyZSf_2N)>zTbN9J=+z_EcqN zj(WYyjB4i4I?^)mEA6X^QH1F3p*>~f@JZ41=4G8*^_o!_tu0PXp86pF0%LR`@*e1c zxY488MA>3ky|H@b++ZusPs4IeD%oz58Rv5oCu!HS{q^Y%`>!eYtN(ZPrOyAcIG9Ae z(`oZp5IP0^C>e4d`VEGOPU;L*ea6EaaZ@cO>)pa7{BHLUgDe+K?qbkDysrr=a zCCnFk=SkFu(X6p*B?E>7)M0&gQuJ8AlV68SP`?d)VNp?Yh+_`B#spX=$N*5kcp$KL z@qihWQr&E%Mj3+veiKjqvwUPBw-c`}0G}7WjL~CRkEhB|p~TdMF9N%G`QS@#-=C+` z;{&Z=Dj&(sP!B^GCO$FL$nzqK(iPbd*2C&k>yod7XkG1&j~G@KBTIfs^|%NCL(VrK z0Ck{mHiB+z1bvGj41+!`Xn012=IxB)cS7r#kN0(!kLi57k=}P2LHuljUx@n&P3Mj# zFn-BVk0*A$b!o-6w+<%uy>&3L@vVc2oo^jXY<+91^9PNkxUUI!VijCR?SUqEVjWzE zClr(RLmAbYT3*tI7u_CU6i6wCzOst9PU}8~R%ZXSO*Mh{dxGtqw z7uUhW!nh75R>rmD#L{?`F}er>JuuCrS%Ao)%rdD8!CdRo^?E8Sabo)5`jD|A6UNF< zKwMYTF90mABml8iSI0mjX5i`=V%1z7!><^Bij|W66k@VJ#-~f0PQ^rxrwQA5CC%~&z^ZJCT+ku6f`bL241?>zn;70gj0mfs`&tU{UzL!O@) z_5$GW6E~eSA%Z z!ft<5ag-jKX7t!OX5ORnm2zl)Q~7B|>Ep;OwdN3-TP9Q2*u%t?0y;(ub#1Bqruc5@ zFkR@=SZF7L7#Kdz5R$M4QnYhBDx{7nPFNvKcM+g?C2Ua`u)Sl@`7o)K7?iH_GKp8}%}<{XO#o3%`B$Aq2ZB|NQZ^B;~hsqvCj zm<06@4*UT1@JM6(`)${q?=?y%gIHC2rq=8%E!};My+7MRq$M?k578DOI9G*dP%fCz zm5Ui#E;OMiT37WJKeL!6Mp!hyis46NtXwxPn3GQAxieL`v=+owW3x@e0qWK#EK4en ziHzM&q%xhKW0W4KEm^lNS?Zd;RC=P)O=szt*e%`k|L;oIAP+AfUs#unGaQ`G#%)OR zcc$qWFU=WD(;%?XGm)lcyfhBdI7#%u#>_Th!d8_qEv=<{<4P~hx_TkspJ`5S$SnJf zdc;owQ9jyl#HAcqfg>RY{Kqrzvw*C2k#%I6%4|1V^-3ghTNM({vCK4Vj@izem}k8) zkdSOcF>YlsVvVdd4C(g)ab^RauBQu|w&7Ex9Um{v2~5Ma>9#2Q(k5eD=&ZoXv`VeU zM&76$!$8R{(QTDCc=MO;aiBwb{C4Zn#xbI_G3fPF(K`_aP`InL%f1$)SbsF^tb+@c zzb@19Rk@|Cs@YQK)=)z`fqwURrCr0)Hc0HjNRpX4UYZk;#`!rVwjm+j$XJjCra%;OPzeWn#jsYxK*sW;y@% zTETMOr=QbU_KCWDMSMkEZvg{!;;Kcod7>W5_`Ow$di2QUH9GGF#P>k*k83Vx5R(3^ zIrmw9(ftWZy*iIU4+})%0kaE1>Tu>Dg^a)c7>mnvY0Q&a7))hnW~)Z*F@7FsUy5== zspnX5D_f(S#?(+{8VV@j>OuZBK{4z@kxJzHpCY1%y9T${*4y16_`BRzy#^F)6KzCO0h%J!FYZX6SdU_no z(vu0QV0BAR#r3Csu36Ib5bV!{%3$*{sL0I_8E-6L*eYM+icYS-iV%&U>ncOSxML@x z1VVxX5hJZSU2PAXygWZuRYzD_=|26vaphyO{p9VYbnp4E>4wf}GG3IsFfNbRPoRB} ze-n>weNE`9Cg?HC1D-_osM==z;vi%aboXyU*M52&cBNlWj;_;;?yF7d?t?-46i;eR zXFf_JbKqpla9*>#MqRnBl{__{Om57(vI$+&zIOr{ncO^eXH&Z4%~PM4R6D-hgr+^l zT2)fgU49JHeYxM0lx}x2yz1Y=9b5Ct)02nZi!*OJKf@@6&c!}K&64XM z#~^Ee1xGTfv)ZSV2|>kPJ%o%5{3t{;$eypmxt)wI*gbP`P|mqL=C;zzr^ zqa)Jw5%E$EtZ02s$}QqYn2$b&$u~>jBa_O3FuC) z|6bjMt_>66rtHdn=QZp9BhcvX`u}YB(VuCLRlWY-RnH(Y9}gMbc+PA?4G6a%%M`=O z*K}S+-gC1W#JNm+=Sl1`6nJjcf_^6m5?1>=(+O2}firI8t`kM>#z?GMNssRCbh(-r z4*<-85t0R5p$1nHa=H9Vs$Mq-lQ;!2%YTPDAZRaQ(2Fd%k^k@`FV>o46GuOA2)~r@V%ot;ISpJU4-vi_?sW|^c2IbS49a@6>uN++NF>)#EaeE#5 zEN+?~B`P+Rz~u**lJGqQ`eM_Do=P=pjcXLm2Z6ZO-Z1ycD4Oe&h@x5evjT0=K;Y+% zdW1S%b6QmduYVJ6-v_r^^`{k$+`u+fIJ3H(^T2d!$bms1Jc)?&c{nu7o{>-DnS@sC zMN_z}?HU%1JMLV@a23p@d(cfH&KDTvD{~bgJeov8GokX$oEKObZH^T)Mm-+7hdN+8 ziZne#zLFb{7kdohVYqhG3iW+#N?_?VcsaQ9d7IujOE%(#lqA&V9azQuVN%8T@{J@OF%g8#$JtB6@eS*0#NJg z45hU=Y^%u45ot*a&@|6}8eH*x%iiBD`QYfKtP}W8E$>rYcp^N5pBe32xG6lVUhOc7 z_u(U7_=hjI;zfKbML!XW9|OGbTeJlLKYZcVO&89Dr~M0;+r^hv3IdCr#JXK!?f$Vp zZCcE$NM=?HVk#_rUPXTTm}hpAOi#Xd)zac^hyl6YYx{R9cBm9YC?3ZYN2nAJcU^FR zWcqUZ?RykAQ>+nKOcQG>g?0ZQUq8HB~W3ZPnZ1+a&kxZaw_U;#7r2U=gaTK;b@xHMadb-!7sD zvoOr8h@>jJJb5KWI8LK{%P?A)e1L+7e7&4sQ4v<;&-J=@zSTadwXFTv@U;Y z$*cJT;31@V2+IpYP3E%I=gxb#xP?mpoez%wpg4_@&`Ac`L-Lh@y$nYMi_z%r8M@QP5L8XaRr%*#l>1dC=K}l087zde8)+Fw`LQS`YdUN?@;o-r_-@Cp4y@ zcY09hVgrT0;SVVM$b;gBn?M2DGeUpqK{+-Qpv(;52v-k6GB51L1ppOBY9zw7*4_xZ zF+?8!-Z{N$5WT1|{$C$d#UICb92YQ)!l4YzQ2u@CpRTet?1Q~=u}HWc7cn{?;YG}@ zNpPqKj}h(;{@9gz5q}1+1`b@Lbh1fQMS6;Gb-tpaxX)8jJS;SD5GionjOo$3ULy4T zfa^8A2%1_MICj!0KIul}PI9LNe0Agj5BH`5!~V1f-OYevUK2RMgD&)HN6iHGsa{mt zFpSeU!P&Nm5ElQamh6!CCpRp~Oh7mft+J|rLQ{2 z_F#3&#PLt*CpgD$Rx5mm(aWS~Xa;ufb!eq+&&QZwsqGaXxgK`_5xwvC^P6-%HXMG} z9+=ll-((KV>(j`Ac|$(62j=x@RvRkuC75sxoVg0s&>&wrwxg!PRLcFRAZus0@WOQ*E1)L-XM1eL5lTGrwpUzs(bN{Rk)EXL}ce?eD3yCy5Zh1cd-)76z)bPeO4fQy9~4q!)ipas%O{CK4X?l}&0<-^|B9mlyeIx=ICy8>ehvG)<9z zH)G4!VqXtGK5m_2-#|4P9~_1fBbMWr)i*IJRJsw_PG3XQhQ4ISl+p{F)gA-wb$D8H zU0-*HVc!fyxf*p{Uk`#`^MmR3&^r5L{LEhZ#2oOd>>|9Wv)V2qS#1}=x#3pe;}P9< zqttnUJD1AZ6W{T0<(Y{?3zb4t<0`ha5BIJz`$`JE#>liH#W_e3_A64EDjKDi+&scc zDRv9Wfsf9q<7tWZ?YO+VoHX!`ZdBQf^tVDDt9dNdT*JqUR zC7iOg%VM7S)kJj{&%2VJ7(x?KIU1MYU-#wKp~acKT6DGC3gL}nEcpgp++Y8DsSK$w zf2SI;|H7fJunx7MXml@G4Zl%JUF7!t`i?^Vx9SkBLtXF+NoHn$6My2l&E4pDKJI!G zLwJZx@rxca540QF#qfI!P>eMbqlCq9MaJ();9saWyrEq^#+d^+d-O&l!+rsyt$iTs ztGqo|ao#Y(sX*Z^14e&b5LJtKb(*Q7q+1-DtfNRwn$8@;8Iua4p zOwP9u7$?_(5mgy#oC@)34K!EN3aA^o*SQ(yzf{`k;wCi~ac)PxEzwjy9_<-PZ{AVh zTo*|?-v(G!p$;s^_?r?io)PN|MY@&06Za#NM0y_X`;SC=G!&O76FOZ%(;6C4&>0Fk zT|=V^Ix{a6W@sqnp*_@YwTJo0Ry#hr{|-5l`YhdyqNqgvZQ*K$DNVbiNh!HjoD20O z-cH9Fjfxewo3!TLHfdY(0aSRp`NE>+PeghjzAv$S;c=1P$KJeX^M!LGyc#~@OZ1EvL3-^FVr1y<|F8}z#>5<;ko;ar{YHI~5?gH$>mjvbOxo>>D z_^uFQ9>v?3x*}2L>bur2+&a?x;?^IWL@H}DCx5DVvSdV1@tZ{5M^JbFVd1Xgqe6wL zid!;+EhK8)TU-5pVRxkW%wM1XRDMOIm*HZV@hOSl<@ZA`7r!b=N2cER$6}6A@8eIn zbP4KEDW3)SssOL`fOCk6X&0Ecc)%G1;%*=S@AQC40&f!F!ya%7ftLyJHy-dkmT63Y zuX;ePTMN|shfDwTfG-iq?h`IeyVT|L_XKVuKpB^op|39HQn|n(GhE7fn2!@UO@IqM z;7Rkh z(F?XSc#0dGk;S!5R5A9*xET&W%Nh7B`V607{4Tm*zkwz8=_q&H4BL3<5TloKFq}o( z0WsphbURkM>$8~W4uj7*9Di)y-PEF^?yrgRPt#i4TYGbVx^d~k1K~Myw>6vKWT&&31^)7?LpG6)q!Ef-MTlep@b-1z>Mv6M;Gg^Ajm07x34W3+o=e2jRpd7w z`^%0C=OX6&`3JU_{tEw#3m(|9xK5=YLOxg6OQHW|=HJiC9}1M)_YWTQPC~JJAoNWSdIO!$+>r8T4!B}_yTcSVypOh*#;wVJq2yxo||J4bz9$9iAGymG*CBY5Dk3%C^b&e+DNaQW96#|##X$|QyF@_nv6?zCt}3RFTJJF}yloV~Fi{o|tfms`aPkPU#Zy?4aiBCoU42*uCB zUs$gIFP!<+J#q5c+B@Ypzg>!BHo+n=Kcm2%1Y-8z|Hu>a3*hPd+jrj0cNe}uaH8}W z7!%nZII3`#0{z+p?Vl?HzIm=O9OkDmlW~bPt=NBR{LOpG0;9O5cG; zcFQ`>}zvGWA-CTA5$d_~XEWJe4&zo!idi28WP(RoHb@MJ9 zUAOkG-ukeP;=eGHYGCo#@E4wetOD@jEuSbBzo{abR1VP#_o>LhjRRK*iKDLHs8TE| zECP%7k;LT+D|1lrs^UW`lAILroqeEinu=WX_xKNmozB0+A5iSP6TiP`LKKlZfyEby zzK24;;ji%rl_@}LFOwGEVI;m`BlchZC;nq0@w0!#A1WTJawM<_gL0f}Dy;j~zWd{% zqblZ{_u>y1d3=o2tgvDq@-4hz3E#1l)eRJC@bnfRHoxpg4%6UpP24e>{d&#R;a z7L!a0wFqfFJ|*$f;@c{cNsAYf0a|n*@&YUIn2`8qF!A%^feMSjBCIuG*PyU&ize0= zcU0A|T|Du4agOqntKtF7Yq3I{-I@5cu=ajy;z^;qd}`vC#f=m?fyEn1H?GhxX;1vB zxLRe(q{TZJ`4%l9T6;e?Bk_!o_-MI6x8-`zfP#Bp#2{77DE3-ahY10??Jyt=x-EsGY@(* zp${l%!GqpJC=T~YVM`AxQulcUUE)D+ATCahh`YT9y`IqJ3c9lgrHw>kUj>y5E0?is zUnO)a1>N1lT}S993c8mE{R*M&3c8;M{W78N;SYEi_Mq1i`m%x^?xTMAG3z%~zfuMh0@fUMVs5S_kq10CR8;pO+WcIKJcCUTt2ftFyJMp9g$`!;sJTUtAT!r-oOysz&unJ zF3{)m0UzkI^mQNTGyg>&INQtpOdmMM1AfW}&h>!9KG61n+xftEwsFgz_kn>WF0jW3 zMm%892ex@YZmZq0d%)lMz-|xtBOf@!19AtgllOW+&O{nG+XJ5K1LwHF+zA?Ot_NAB zA+`tEt9@$HIR@RSeQK)PIa)kD%G22?Yro^9*zIlrhJG>oUXfrq3y?9XKib|R=L4NB z9RcmNe*mOx=~(m%e9-{HN}X{{wHCV6^977*qHgz9VPZ>z4@Ik#aLw^(Sc7dHbep)h z$!w+zX@lB+CbDSIyeUB3SBk(;P*z5fUfLy6S0Q$f&{c@p<6KC#0u>)dLl-#VN5s&v zxDH{Jsz?DYaPo@u(r%HO4zX6_|t=UKputpNI#dOHw! zl>mL?JDO${&J&<-Ww(I9k^p@pyG;l@Sb$jk>uGT&fjbM(H?iv=a7cg$dYBOcX~`Kb z`382}&laKr^zG|jC-86h6Rt9^V+|Lc6QFNhcOQXNx`eBY>%KsBLNxKMzeW!=E>xzq6B{K3#(>^(he!diybYI{S~0w@jC1S%G38c2h(y`fq`JWa^< z&a}}>qp`g+9rV&vZ10)$(L8K#s8ZmiP1xRBse$xjr}twS#PW1;hm z=N5S?YF9Cu7;5d9qEyrN*}$0;2ROjgV~inh)j;N}b?#o7-P1BxJ3WN*%UMN}@}EBG z^5fvXs{GGL-gReq-U;QI}T| zm{@M8N#Vg78-y%;c(JA8DR+A!|K}!Z^U0r?*$<#K%a^N3tCn_M*<6X8fVSU6>M*LF z_Lsr;^ZyawqNs^0!GQ8O{`o4xJ2}?p;thwv>O47~;}@`E;_07EsZk(Y zzMD0{dbq>m^`q9q#Ju8;{`a`PnE32_@+GLNb6o-@r@MG^@=?oBbqJ`($6aL9Q*_S( z-4~j*Bl^7>XWbr`EVX>GY0s)NX=rg1`p5a>Bz(!WK(Hd^+1^^q2yo4%`b6`xcH<@^ z`y})=D&J40%d(gOuEk$OS#VeRw08mlyc?!mPuA2xp6^p19c9|`(@UR3nY0k@wKLih zkLLq4sc|BJJ1>}eQb^!XvyJS zEZnm^2;FCHqmC)AH(4qp!NhsbDo*|2gAY^zXMl}Y$7Q2RE}#$G7J1=1o^3COG0?|R z2dj9CzJlH8!|+TOV2Gkq(`F9ZY-em!O?6z0SwZ_?*J0{`aft@C4fQI6p^~@c>Yu9C z5zZNqO?MQpvMO?oVf-#4UtQL%;^otlrmKCCk8eUgUTP-mlNb+uS(Wjy)N%zL7wn^f z!ilH~*<4fwX~g6QZJK|i?5}d&U@FZi&imzaqlHW0k)6Oycw{TE8a1hb>WGtvBml_w zOf*h|pG*7vmIW>f5t8q8Qt)sAp5IJE^2f-*G(uc)=XZsN>+Sqtf%MF% z7=)oS6ske{0`~voRTM5jFjZvfV;)&GHf)PB%a~%J6B_ROt<53EQ>OCRft!DUHxw zP1}}CYE2lAh4iIUZkjcWTh}+!1AI{dW_f@c6(AGyAXn@yX)xB*y z*Qy*WZn%O^-2jhN4u#9_ju}sv@pN4{@puU<={TgA{e*X+(P4n$i{is|5^;AmMg=^| zkeD2k8bPjn?Ex9t0lnLB_%$#rAGODtmXEq$55H+m8*0h4mv%$p%AaGdR%Y@1ZLG}f z;&&ikR%Vlt9r$U>dHC&*ANN#W)W6XxKezZunO{*@Bff*@C#=kY`J9zGI6s&>&B~1C z!&at}pPF0QEd!s*Y=(?_%AYEIv%_Vgr}S;lpB58Ig)?22Xv#lRmfOldON?}s-$2{H558OXs9>{dzs&&ixA5?I>RAGv+^j6gdc*_zxpO=AW#uTO0NZiT{urB83tz0CT zz*kF&oY9@gBwBRyM5Mw)$Y2ZnFq{Q8LPKte-wpWD0_2bQ(cGkP8~%_I$nBDk=BB0+ zg{uLYl_*fXi+YeUhr1I6o{wZ=i2{|cRwh4xhLzcLejJjpH9Yx6Ikb3xeh@MFOl}B` z#^&20pJwyT$j!DgN3pUh`L50N1X+{$TDqpoc^+yQk(V4aXZ)El}6c(BN z2o7n}*rmE)x2iBdg;$wVWy6wwPTUp`H=QV)p`%V^noR%vHk5xp%MUT_&(F>Edj;=g z!KdY>v*04P(OfH-pq`0L6iC3WT@bca*k>X|L@?1RZi|)4WlE760Tb-NpAV^KlqK2M^LQ{Nu^Uzs>yy%g?*mRQuK0TFe;e2=5AU& zug775y85FtloT zv>*aTIv(!HN5kp-riEoFBJMPhy23XBtSd{^RbTmg*!Z+W%ePBu?_p`J>Jf`}wd_8x zR+qJW57r}Yc~Pt-2LVGDAHn$>M>3ntZ;fPT=MRA|zgvNW5bNNRtb^eKwU&|0(L`C6 zKMKD5r^MbSk~u#A=}4wD!qdM1l=Xq<@uQ05O#BK@<4-uViSr^%a_1J(AQH~Z)}e%i z4$>hiJHwfII)uGgAUsP4*i*uIp->U|m4sqC^st0lbm)5$it5lU2&p3Kv9>d)f_TGE z=17Y9wBp%7OREl&j6QyKAC|@V+ua_*-=22s@vF;!LfvUQ^v-a&J^Z-JAh!paf0xpG zXo1M%7qN#`9V$f3p^c2%mg|gUTHEog8z$*k`8#Yqq>qLpnp|Ysl7lvU@Ih(h+WHpd z92As~R$i-aQ&k8mG^8}~aAr>aZ(+=FZ-*bZAHWDX@QM*`CPIl!TO^`5D0z#HWf&W< z=s1E-sB$D17Fb{qN|#`|0{2%crw}_>IaS9pNGu8Oh;Niln~Mx!tkN;!A|~d=jOrM1 zXB(q*m*WZ-@vOkBh8gUDG!>jb@OGC`y2ml2YJlJ-Jlu-LrF$F`(X*V1BnEU_JX}nZ z!ne4Hnd-%yu4BYqie;c;B~)3hBgCz}`tnhHBvUy9@mwFCsqw_cdXI327;?YNA5c5? z-4q43amf2V&%Ku%`|CGLSS3N16I*3ESvG20X)Po~!J!L`t-=oGEaqmO*vqRG2O@LL zWchFStfO)^!NJNobh?ts70DIl2gw|k2U1=pV~r3mdqcD9YKW=g<%OE^9ptrC1<~FC zaJC_s#6{;Kt6xH&dY!Ub`^|6lrRVmGAQe-|?dveU#lzi0n-~J_v(h8^cL%?3<7-fkD&4pxKt|&{+JWr3EXkmYk7nf$ilBNF|?HM#53GL2UR! zZ!28-?Om3VCXB9jq0 zSLKH2WF*7}5+6YIlr9&4TH!?G40fIULl9MsumRu8^XvA30~CA0EWbm**L58I;~a1C z>(YL-hj$aacOlQ!$fGLxMK~U-zGuBEs)}+_Q_jGpA0KKc`^2Wa#@o9?zE1X>S5QKH3%3Aserm<=5boTPj_^lz1O<*Y`5bmT()6yEuc!GE zXg1yxbvV*^*UQ%@`2&-1j0y)HML8a6tT&NZCBOdt@}5jrUEVqVm+KSUFJCtfIX{6M z$}m$zAlXx{#PLU&g)FhIrDI|-y&1BFGAk#J@`%Yo_r7duejvAaUgiaq}MQSJjG`4o(`z1-f9`<%Yco- zKxoWTN1l+uklbJ0tRIDN6M_52fYe2kZq!}djl6s3Np~3hztyCDt8P+|^;0@;rl7>v zOG5o1qI6bXX3SQ%!jbCEs&n~A{SdMf81^0+n4n%{1Zfz6YA;^+u;dM6UhN$Wb;)Hm z|Bwdn%(3N0S)Rll4)HKnnVn#Fcl@Z5-V(nK{Ce@b6~9yP%j35YKk6SU z_Ks|H_FX$J)I!hikNuma12cDEjrS!D^kvGXwa! z)AN9guqj*zB&^wMpoEhrMq|$w=9Vr57qMsORgJ~nL(_GLTb4M^dvUxQvtc8J7s4%- zK=)$j5nx#M^N>fqE}t6c+$a#mIF5CBNWKXtAEstu6T_4wrt@PY>>IFD{_?GNP)^?! zErs7bG+@fMsg?&#!)lU>?DThQgwiD_TF{1o#1vJ&c{xQ?^RhPdXCJJrsI=$Chcgd< z_>4i^9G=FgxdH;?s~I>5u~7Y>eq|Kpk||~-=Os&@N0wIoH?|nDWugBjs%gR8(w{w? zD!59s2Y6K*G>a>bi_uaQd{q*}E1tN!NSu}`>Um>U;dNw^eN_@S5Y?jnYHt}@-qwP4e{I56ga=bAK;Lz^C!SX zGt&*Ju>Zo)@7z~3Pz?{U%%Y5e(q%0YK&>LD_T}#bzw%i^{HHXCfHOY(5X7ATg{zTW zr7qf@p6@c8qX5Opw4~8bY>at#%s;`5&X>v^B^l=-8M(Puq)zqEGN0^zlHDCH_dHg z2p^@_z*yME?XfY~qjUsIi@ypRlpiDLJd8iNg4KiTc=6=2R1PL=y8~35M;M2(gwWCw zBvJCN2uVuh-_HEy84_6&b3Ed|W_8k7PQC+DSI(LuN!I2-Sgsh&g-SI15VmSE#ud=& zjSpu9n4w%*fuDefzf8Kmclr=M{Hn!;F&19YOXE2-RWB=1FXly1)K769Wqs{t+Jo5k z4-S~J{h!}w+HbMNH2Rl-j%#f0U;{h`Nl}S()t6qYC00{Pwdc47<@)QS%XP#@C|7DI zqj?No7g*UkWkV7pBd#3sn1uR9Bq854x(Tmi;8m@GCnNJ`HS%iO2Vh)`S*7EUrM(=S z^e3#+nGA5Ok2T7Q651xb90gwZZvwgGlVjka{+@dMVu=);2i{u#MmYpH_d?**U{KQ& zR9jhCH%*x5xbKzNp9Wpsp=ZF`f3TtQyPtu*R72?aUVs!&K1=cI-2uB;B(%e6N~2x86iBvr$M^vgq3l}ywQRpTJvDf#g6 z!TAX~UXwQeF7lduU*X#&6Xn$~2DIg1sl=)@ou9JjFEM+OAr3n?GSyk6?0z?M+QO0rr;TQd4RlzgZRX%Ga1s89St(XF^WbmML=J=> zUl}lAO~F{M)gP(d`F>4ZxeWb&O;veR#nZ4$x4sPH-FkkRg|bvFl=TZY&Cl>@&HxUn>O8fJbBE7Jwvr?T*WGlauurz$<;xr ziOQWg>lm+nw`Sxc)#JzTAVqyWR!f9wPh*QW89zSS_s)z>dgK&RqiWae-z-V55HK2sHSIyv0NP!Nphu{sZk`8XK%6l9Ydj zUTx#<3_Sd1W=*-wr3}qjEM~@&3AtYf_p*EvfR^a2ksYXJFW%)kR%`JqHr&W5=2mAxrR_S*>;AH_k?*pC`z$-rBhXQ!h2iz`z zzxaT!01&kwLveWKyTeQbjjCTl`{}yB>UjEHc)eSXH&Hkjv$W|@4&&;-z+Y4eUJLB? z=SEV)2^jA{8z0-|I@sx0vY*M0=_M^!xZQb-yRyJ#Xh5D!QtS6QsK+tV3_q%1bG`CuKq9xXd<2llO&4>2*zAj8KW+9O1XZQC#2c|#0az`i z4FE+t%nivLcf8yjs$BT})we+v_X)O}T5y?@`(qQkeiMQlGBXDa@j+FQAgJZ)<;PXg z(RF|Ia^S-2-Fm!>*UB)h!4O5V7!vPJ|9@X_Zr(X3Cnw3dNp6yRpM36dbYdYfMtjvJ z=>CoKp3?r3A?REE<9yt=Kt~lHnVpPc7YXy<1?lVpkfPzG{k0&4cl6|GHB9y|%a6iG zJi{mU=IopguA-uZH`I?!sdyt&3S$n}K*F*xLgQOyJV-Y(I$Oh*5+Ngb4EyGh*`3fj zr9w}a=3;CXdW?uud|EJ}5}}CDmDnTKRKpfY*NAWhm9xTxxu=3IR{b7ame-{$9+*+O zbZNfz*d7W({pjA}qq8xZ%G#$nbINtMiT9)8LT2Ju{Jb^lMAw`-2!SiUu~8`fn=rUW z9y$Jer1oQMikC4XV&YCD^7y>wj2D)zBh38=TX>!|4OdsUcjl0*b&sR&W1^cJYP?E! zhn>`Ins#x29wIBuprhmOhTQNa1!RdSV8nFJ1*afC{+TrY>M!MzaC%q1$S&?wzHSM} zb6wZ**1cik%e2P381pNvWYOCt7-SOKi1+F^V}f#K4hs}_C<0e}6IfjQJ{zi%oZKDI z;rMgV5V^Y;%sviYF20h4;M)x1<4O>??ycAo-jchA{Ia?DGLzhK585lEc?U{7@4$e- zPRrQOD{eeux$*exkht-Le=kZ$8?sK&1ThSg(fN=N+r{d*t`MSiS?^FtGW>$wMfNVY zyAUN#4i#j*3n|zUP`2P|WvDNXr%AZ}LI2I6zO3dbVFcc^dk<-SSuKEYlS_>l{z>XI zb%38ScXC+z=$mt;5_(;Y@rh96$WfR+@)E9>kWcm`v`2)`$sK{l@Og4a@{&V}f~>`m zZ2CPDRn~sSFmmFK=HR@FAHtk&Dlh?uHvZy?rs`$6c0MX3uteuid*JwWZyhWWq-?> z^kol&qeX_6%`S~=5l>bdT&nab8XBIJg-}>{*7rynR>8ju(s+v@s}t%MUo4i3$G?ZM z28Cv2GeOx=a?&8o&-2aMJm1WTz3E5sMN+T)PC*H;bd3I$NNzgD5b0cTD&H$Vdw`Bt zy3|m^#dj#B-#i_Mms0py|G#vEp$WcF6UU7e6JopShU^>fP~BdYrv!v+t3B@q`pFn| z@Z&(Zf;#rK33ER@6KSuY-moLYYQZ5)w=|KVrYuGL>_@}+qiyj;1Lk@q5+9`W*Ff~? z(tm50^x36VLYqMTVd|!?CVU{^q8UH&QeFZ&zzy}aUO7Za$EG{rM<`)-^w z%K9J7sx!hfkvE5Vul5#CMLCKb89H&lE0PcvYGWtz^L9ll+BckzL9P6_acEh2^!4A1 zHc0SId>Sc>One?R%)GH@h9Vi)yfbgRx~$nO>jyBTMjko-Wq%oalJ}UghhQ4#6B!An)Kw!%0;*=eAv_TGHa7= zEG$T_Zq14BT_z3RmOnNS1}He>YP){wI;aRliw&E9!xN|6K1poA8% zO*a3MPvYO@6I?+yA6o$il?|#IPg&3P3rsuk9dh~m=koFl#C6My*Bm&7FfC;b$@&3v zi|f_xf6Hsg-{w{7I(dEjH+lWHcAWipc|~6*tMC4r72h#f@t^ANdS?f6*!5(+4hNK< zOQeWX7#H+<#axKsOZBAU>Ski*_@7{mP4XJTrgyx?r$g1Lf3xv#&l&{TQy2ZKYq7j4 z@z~WC|K(K)V>KUy|BKb4I_PjfVOHgn@KcQcUey2Y%RD!5eP52cPNQ?4{QupTd2ZnP zd6m3QUVnGrjQF?qld*vN``6E_=(Ty-o_R5vC+nxb7Lj$ywMqW{bHBj7{p;shJUCC| zIpvKb$N-&v)OA?v(^AnA#^(ZMcq%k5=qy00G3#IK;u(PJ+jYlPc3s>5`jws2i6lX8E!LS6h;(GReog4s|$ z_7*x^d6ckw$`mS>ghv-nAj)4`a%0i|@2*MOCHvpXA@?xP8eF$s@LEVvyW580A%v`N z*g7_X#}Q0Ku-i%g|82g(GXa0i-<%1M9Ik3Lb5r9O6Kn6EZfbiffc_bxunl$fxq!dU zYyYJ^L+1T`d)|Tew9atdR{iUN01jui?*7Ss_izC3uiO4pJMv7xU+Yoosob^AcujA2 zP22sq{-5UquA3)*bo3hE`NvFI&i^)7)Lki^9DTZW~?Hb0V*G86pr#&c#!8B&{OFkM$jHG)}64U zQh1->ye}08>6FDa6YDe2F$RR1_j|fpQJE|z$u2b4o>^}WpAidZOXZU48&o6fO;}e1 zd)!&a5D1I#KaP$9FAag({6n+O0mNBjObS1)@hTL+_M^OnEt@xsfvXd2KyG*{%7GteMH`gyP9+EZ#l08aZq;p4A%^NLy6&xwfFWdgZQFHGY}2=n}v&G(c%Y5?@(5K0M8ol=G3Rz-X#PgZ^CjEJx9 z%fikIK40Tn5sLM{t2O$vu*Vfq=bh6fe3NmmLd$tNvj~j$L-_u`qbjR<-Bk%>DS5ZU z)r+!W?~>(+kM(7Jgg{U(*cU4-nkkpf=EP|^0rVIBp{jlpvwq99p#ZkZHxxdCE?=aRsf8-3?Io#dwMS2Al@d_&H3%l8meY=RNH`Q<83#*5p z?JcRo{5TThE9ohT(~;o$;>-EM60wI#4zb}-#ut_pUQ&nq_h3gRj_i-ozHxQ4KZ6Z< zQqiNF7+Ar-fdc}eHdj16k0^9Gb1b;T2;;F7E0*Q*p1#$T;? zrYldyybtM1k$iV7VC1v`5xzip;FS;B^GN@j} z{lvJl5{D0_u%3py{mj>h#;b^k%snUWiTlSRmS(rF4g6` zEzao@>U1&3{~MH_a{RyY5@+_Rt16Twlr`_DQmTyKgxM$XZOm}`WDfOW^!XN-BB2Sz zLZjsu>B>fYc$&$|lzHx!Q+J<$=TyE|2_PNSh2N?Yey ztD!XjR-`2ZsSW_KLn;M;MwX2@jjs}3WG!J0n0*$HBVD{`>SmlRu_;gjDu!uH`%QF< zD|wSCrI5zO2tiA^7sh^xpBapB>$mEaBuvWLtkS?qk=Qh5y*d%`rOIai3|lzvu?ccX zd>E(vmk}G}9zRmtxW{<}na|b!L4kkt4^MIN4~Lh3^^f17-}ndhqNEpavHr0fJov}^ zxS+Pkzn*{mjCfX<81Cc{2K&cFVP6Wc39WzpLQW1NjDKMEBp~1)WjV23 z#>@Y~AE+0l`yH3-`UCmb^M^kWPk$gE{RLsLKU@;_r2w1I`om>%av0(IgMffPkZ=6q zH%dl}ihw^zZYFWSA0)B$2hr_kO~3`nF!cdI`;0$Cu!8>1AB=tqv&nf4@`u9A$&`Ep z{yBw0G@Fyxptdf|olGfBpsi^uw?cVc+yI>>7=baO zs9WczA7D!t_5-3+`hhaAjAI0wC6`3{fy#&t8Y99GZ#^agL6+lcpP|4%`b>3JfaAY` zmw)w{523%9*iXGEbtEqE8GJ>e?i36V2aUs!c|C_If_OTNSncEx20KhqVP7)r93tZ$ z_0V|;qJQLuQz}}7;0Gz39f&?7k_izjEiQ4`0&xjH3ybELjHJi_w8Hp8HP*pZzHs71 zp)Z(BD9z^PHOLnVEg(~j4fq1>WxE90zqng}rv2G&h3zkjr2VVH8n!>HIG04)zZPPH z+P@g$ZTm+dcy0Sr;2+z+4h!x06L|U8_U9bZv_JKtr1+t|K%cQ1yuvvo`PXxSl8C1Z zh~Z8SVXzC7685D4o6zNR}p%xCZ8s zqQUkSl7XMq0jD6tR0;r%G#(PiT7riJ<_W=bNTZ&zbOBz2{G%{$G9}x9f6&rk|A-R* zU;^VGY}Z2n5Jlo2wP6eWgH4c2BL0zx*dYHXgLvy7(Fk7a9~AgU|7gM@JO0MJ{HuR( z4r%;@dQsAHxLkM6K>qdoqdem2A7Z$ZLm2EI6@+~$z$Uc*QIVV+M!0hZ0RjIYU;HB% zKif*zU=9J-klak-z??x6Th|cXe%1uMfece00JP7zMnhK6-_03}ehRbsc@6T7!pzB( zd;`8gQ-gh@g!l#%7~f!<7W#%L65mLIG4u^qe=dpmMhnCS%^@ox9?GvCFBtic{?L}? zbo_02`B#4^oMTWgN>>G!>&`LAzn(u-MLhk1d<+AG!TwN9*p~uqLhBDPQi0sTu&9YFy(+*40(xO7I-RWI$;) zKd(W)QJ6cKl5xN{Xe;L!yqY;i-RzFYDend{>SlLgIF?~dG`I7IhPrwd&qjMYIiF$4 zA-fAsCdD=Dbv6{p$3YoFFFUrF|vpmBC$;GGPfSGv_!<)N+nIzP}D;dS0J$Ei3!o?Y$XTnho z&qo-q)MA0r#{01rXQNSjOeRav5*$q7YA7DuqK1hxuc%H0Xyw=Umroi2j-jlTf zah|Ln@QRZEs9}E&-^@G1g)$`BZFJ@^Ndc1}E)4A)R~Nrz1o^wUqS)1w<(0Ny4GC#z zM&V5`xWgJo)y9{63!~NsM;WJC7aV00uD>>FLvWNyc%K_(e5e}y2hVgRoEbBaXU-QW z20nR>W3CZ4=1au*)<}CvzmEGS`z+!j@QXFMNRs;%fRmGlAWkHH4Uqi}2!7C6#p8Tu z4%r@m0TK5HYalVOER;*dyRozT!F*rd>LSOJ$njnFbaa0hRY{NN|utc}qT z4nBgR)POoznvWWamaiH$ka6G-z=CuYMpZ#f)#8K|2rB@VCn`r&ZXm{(=m9sIHE-M~ z^5=~nRoCY&H>$2b4juMR)KJb=l5gO47H?y<;g#C>T-@JqLmT}7K-O3sWXs*bX!I6% zPL4ni^(QX=b11qggCifGV`k=F_4v=iff7ngd>s2n_7`ZeP8~6Q<{s$r`d1+*9QgkU zT(4{_1-;`5pWX{0^mzMt3CZ2htl{B=ypqeS#BVBFwT=H<7&3E;+%LJPh3xOxK$!i; z``3WvF;8QsS3auuB-+QVlcLz@!!R9@H6O){;|oG

Pb;$-z(`;V%NG4aFw~axk#N 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 z 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

    `BgJd8KtPs9?qF(46zm)t^1rBW}Y>wp_(;m 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Bson.xml b/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Bson.xml new file mode 100644 index 0000000..da33941 --- /dev/null +++ b/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Bson.xml @@ -0,0 +1,21995 @@ + + + + MongoDB.Bson + + + + + A static class containing BSON extension methods. + + + + + Serializes an object to a BSON byte array. + + The nominal type of the object. + The object. + The serializer. + The writer settings. + The serialization context configurator. + The serialization args. + A BSON byte array. + + + + Serializes an object to a BSON byte array. + + The object. + The nominal type of the object.. + The writer settings. + The serializer. + The serialization context configurator. + The serialization args. + A BSON byte array. + nominalType + serializer + + + + Serializes an object to a BsonDocument. + + The nominal type of the object. + The object. + The serializer. + The serialization context configurator. + The serialization args. + A BsonDocument. + + + + Serializes an object to a BsonDocument. + + The object. + The nominal type of the object. + The serializer. + The serialization context configurator. + The serialization args. + A BsonDocument. + nominalType + serializer + + + + Serializes an object to a JSON string. + + The nominal type of the object. + The object. + The JsonWriter settings. + The serializer. + The serializastion context configurator. + The serialization args. + + A JSON string. + + + + + Serializes an object to a JSON string. + + The object. + The nominal type of the objectt. + The JsonWriter settings. + The serializer. + The serialization context configurator. + The serialization args. + + A JSON string. + + nominalType + serializer + + + + Indicates that an attribute restricted to one member has been applied to multiple members. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner. + + + + Initializes a new instance of the class. + + The info. + The context. + + + + Represents a fast converter from integer indexes to UTF8 BSON array element names. + + + + + Gets the element name bytes. + + The index. + The element name bytes. + + + + Represents a fast converter from integer indexes to UTF8 BSON array element names. + + + + + Gets or sets the default array element name accelerator. + + + + + Initializes a new instance of the class. + + The number of cached element names. + + + + Gets the element name bytes. + + The index. + + The element name bytes. + + + + + Represents a pool of chunks. + + + + + Gets or sets the default chunk pool. + + + The default chunk pool. + + + + + Initializes a new instance of the class. + + The maximum number of chunks to keep in the pool. + The size of each chunk. + + + + Gets the chunk size. + + + The chunk size. + + + + + Gets the maximum size of the pool. + + + The maximum size of the pool. + + + + + Gets the size of the pool. + + + The size of the pool. + + + + + + + + + + + Represents settings for a BsonDocumentReader. + + + + + Initializes a new instance of the BsonDocumentReaderSettings class. + + + + + Initializes a new instance of the BsonDocumentReaderSettings class. + + The representation for Guids. + + + + Gets or sets the default settings for a BsonDocumentReader. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents settings for a BsonDocumentWriter. + + + + + Initializes a new instance of the BsonDocumentWriterSettings class. + + + + + Initializes a new instance of the BsonDocumentWriterSettings class. + + The representation for Guids. + + + + Gets or sets the default BsonDocumentWriter settings. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents settings for a BsonReader. + + + + + Initializes a new instance of the BsonReaderSettings class. + + + + + Initializes a new instance of the BsonReaderSettings class. + + The representation for Guids. + + + + Gets or sets the representation for Guids. + + + + + Gets whether the settings are frozen. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Throws an InvalidOperationException when an attempt is made to change a setting after the settings are frozen. + + + + + Represents a Stream has additional methods to suport reading and writing BSON values. + + + + + Reads a BSON CString from the stream. + + The encoding. + A string. + + + + Reads a BSON CString from the stream. + + An ArraySegment containing the CString bytes (without the null byte). + + + + Reads a BSON Decimal128 from the stream. + + A . + + + + Reads a BSON double from the stream. + + A double. + + + + Reads a 32-bit BSON integer from the stream. + + An int. + + + + Reads a 64-bit BSON integer from the stream. + + A long. + + + + Reads a BSON ObjectId from the stream. + + An ObjectId. + + + + Reads a raw length prefixed slice from the stream. + + A slice. + + + + Reads a BSON string from the stream. + + The encoding. + A string. + + + + Skips over a BSON CString leaving the stream positioned just after the terminating null byte. + + + + + Writes a BSON CString to the stream. + + The value. + + + + Writes the CString bytes to the stream. + + The value. + + + + Writes a BSON Decimal128 to the stream. + + The value. + + + + Writes a BSON double to the stream. + + The value. + + + + Writes a 32-bit BSON integer to the stream. + + The value. + + + + Writes a 64-bit BSON integer to the stream. + + The value. + + + + Writes a BSON ObjectId to the stream. + + The value. + + + + Writes a BSON string to the stream. + + The value. + The encoding. + + + + A Stream that wraps another Stream while implementing the BsonStream abstract methods. + + + + + Initializes a new instance of the class. + + The stream. + if set to true [owns stream]. + stream + + + + Gets the base stream. + + + The base stream. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a mapping from a set of UTF8 encoded strings to a set of elementName/value pairs, implemented as a trie. + + The type of the BsonTrie values. + + + + Initializes a new instance of the BsonTrie class. + + + + + Gets the root node. + + + + + Adds the specified elementName (after encoding as a UTF8 byte sequence) and value to the trie. + + The element name to add. + The value to add. The value can be null for reference types. + + + + Gets the node associated with the specified element name. + + The element name. + + When this method returns, contains the node associated with the specified element name, if the key is found; + otherwise, null. This parameter is passed unitialized. + + True if the node was found; otherwise, false. + + + + Tries to get the node associated with a name read from a stream. + + The stream. + The node. + + True if the node was found. + If the node was found the stream is advanced over the name, otherwise + the stream is repositioned to the beginning of the name. + + + + + Gets the value associated with the specified element name. + + The element name. + + When this method returns, contains the value associated with the specified element name, if the key is found; + otherwise, the default value for the type of the value parameter. This parameter is passed unitialized. + + True if the value was found; otherwise, false. + + + + Gets the value associated with the specified element name. + + The element name. + + When this method returns, contains the value associated with the specified element name, if the key is found; + otherwise, the default value for the type of the value parameter. This parameter is passed unitialized. + + True if the value was found; otherwise, false. + + + + Represents a node in a BsonTrie. + + The type of the BsonTrie values. + + + + Gets whether this node has a value. + + + + + Gets the element name for this node. + + + + + Gets the value for this node. + + + + + Gets the child of this node for a given key byte. + + The key byte. + The child node if it exists; otherwise, null. + + + + Represents settings for a BsonWriter. + + + + + Initializes a new instance of the BsonWriterSettings class. + + + + + Initializes a new instance of the BsonWriterSettings class. + + The representation for Guids. + + + + Gets or sets the representation for Guids. + + + + + Gets whether the settings are frozen. + + + + + Gets or sets the max serialization depth allowed (used to detect circular references). + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Throws an InvalidOperationException when an attempt is made to change a setting after the settings are frozen. + + + + + Represents a chunk backed by a byte array. + + + + + Initializes a new instance of the class. + + The size. + + + + Initializes a new instance of the class. + + The bytes. + bytes + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Represents a slice of a byte buffer. + + + + + Initializes a new instance of the class. + + The byte buffer. + The offset of the slice. + The length of the slice. + + + + Gets the buffer. + + + The buffer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + A BsonWriter that appends elements to the end of a document. + + + + + + Initializes a new instance of the class. + + The wrapped writer. + The elements to append. + The settings configurator. + + + + + + + + + + Represents a chunk of bytes. + + + + + Gets the bytes. + + + The bytes. + + + + + Returns a new reference to the same chunk that can be independently disposed. + + A new reference to the same chunk. + + + + Represents a source of chunks. + + + + + Gets the chunk. + + The chunk source is free to return a larger or smaller chunk than requested. + Size of the requested. + A chunk. + + + + Represents a BSON reader. + + + + + Gets the current BsonType. + + + + + Gets the current state of the reader. + + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Gets the current BsonType (calls ReadBsonType if necessary). + + The current BsonType. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + Reads a BSON Decimal128 from the reader. + + A . + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader (using the provided name decoder). + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a raw BSON array. + + The raw BSON array. + + + + Reads a raw BSON document. + + The raw BSON document. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Contains extensions methods for IBsonReader. + + + + + Positions the reader to an element by name. + + The reader. + The name of the element. + True if the element was found. + + + + Positions the reader to a string element by name. + + The reader. + The name of the element. + True if the element was found. + + + + Reads a BSON binary data element from the reader. + + The reader. + The name of the element. + A BsonBinaryData. + + + + Reads a BSON boolean element from the reader. + + The reader. + The name of the element. + A Boolean. + + + + Reads a BSON binary data element from the reader. + + The reader. + The name of the element. + A byte array. + + + + Reads a BSON DateTime element from the reader. + + The reader. + The name of the element. + The number of milliseconds since the Unix epoch. + + + + Reads a BSON Decimal128 element from the reader. + + The reader. + The name of the element. + A . + + + + Reads a BSON Double element from the reader. + + The reader. + The name of the element. + A Double. + + + + Reads a BSON Int32 element from the reader. + + The reader. + The name of the element. + An Int32. + + + + Reads a BSON Int64 element from the reader. + + The reader. + The name of the element. + An Int64. + + + + Reads a BSON JavaScript element from the reader. + + The reader. + The name of the element. + A string. + + + + Reads a BSON JavaScript with scope element from the reader (call ReadStartDocument next to read the scope). + + The reader. + The name of the element. + A string. + + + + Reads a BSON MaxKey element from the reader. + + The reader. + The name of the element. + + + + Reads a BSON MinKey element from the reader. + + The reader. + The name of the element. + + + + Reads the name of an element from the reader. + + The reader. + The name of the element. + + + + Reads the name of an element from the reader. + + The reader. + The name of the element. + + + + Reads a BSON null element from the reader. + + The reader. + The name of the element. + + + + Reads a BSON ObjectId element from the reader. + + The reader. + The name of the element. + An ObjectId. + + + + Reads a raw BSON array. + + The reader. + The name. + + The raw BSON array. + + + + + Reads a raw BSON document. + + The reader. + The name. + The raw BSON document. + + + + Reads a BSON regular expression element from the reader. + + The reader. + The name of the element. + A BsonRegularExpression. + + + + Reads a BSON string element from the reader. + + The reader. + The name of the element. + A String. + + + + Reads a BSON symbol element from the reader. + + The reader. + The name of the element. + A string. + + + + Reads a BSON timestamp element from the reader. + + The combined timestamp/increment. + The reader. + The name of the element. + + + + Reads a BSON undefined element from the reader. + + The reader. + The name of the element. + + + + Represents extension methods on BsonStream. + + + + + Backpatches the size. + + The stream. + The start position. + + + + Reads the binary sub type. + + The stream. + The binary sub type. + + + + Reads a boolean from the stream. + + The stream. + A boolean. + + + + Reads the BSON type. + + The stream. + The BSON type. + + + + Reads bytes from the stream. + + The stream. + The buffer. + The offset. + The count. + + + + Reads bytes from the stream. + + The stream. + The count. + The bytes. + + + + Writes a binary sub type to the stream. + + The stream. + The value. + + + + Writes a boolean to the stream. + + The stream. + The value. + + + + Writes a BsonType to the stream. + + The stream. + The value. + + + + Writes bytes to the stream. + + The stream. + The buffer. + The offset. + The count. + + + + Writes a slice to the stream. + + The stream. + The slice. + + + + Represents a BSON writer. + + + + + + Gets the position. + Not all writers are able to report the position. Those that can't simply return zero. + + + The position. + + + + + Gets the current serialization depth. + + + + + Gets the settings of the writer. + + + + + Gets the current state of the writer. + + + + + Closes the writer. + + + + + Flushes any pending data to the output destination. + + + + + Pops the element name validator. + + The popped element validator. + + + + Pops the settings. + + + + + Pushes the element name validator. + + The validator. + + + + Pushes new settings for the writer. + + The settings configurator. + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + Writes a BSON Decimal128 to the writer. + + The value. + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes the name of an element to the writer. + + The name of the element. + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a raw BSON array. + + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Contains extension methods for IBsonWriter. + + + + + Writes a BSON binary data element to the writer. + + The writer. + The name of the element. + The binary data. + + + + Writes a BSON Boolean element to the writer. + + The writer. + The name of the element. + The Boolean value. + + + + Writes a BSON binary data element to the writer. + + The writer. + The name of the element. + The bytes. + + + + Writes a BSON DateTime element to the writer. + + The writer. + The name of the element. + The number of milliseconds since the Unix epoch. + + + + Writes a BSON Decimal128 element to the writer. + + The writer. + The name of the element. + The value. + + + + Writes a BSON Double element to the writer. + + The writer. + The name of the element. + The Double value. + + + + Writes a BSON Int32 element to the writer. + + The writer. + The name of the element. + The Int32 value. + + + + Writes a BSON Int64 element to the writer. + + The writer. + The name of the element. + The Int64 value. + + + + Writes a BSON JavaScript element to the writer. + + The writer. + The name of the element. + The JavaScript code. + + + + Writes a BSON JavaScript element to the writer (call WriteStartDocument to start writing the scope). + + The writer. + The name of the element. + The JavaScript code. + + + + Writes a BSON MaxKey element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON MinKey element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON null element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON ObjectId element to the writer. + + The writer. + The name of the element. + The ObjectId. + + + + Writes a raw BSON array. + + The writer. + The name. + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The writer. + The name. + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression element to the writer. + + The writer. + The name of the element. + A BsonRegularExpression. + + + + Writes the start of a BSON array element to the writer. + + The writer. + The name of the element. + + + + Writes the start of a BSON document element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON String element to the writer. + + The writer. + The name of the element. + The String value. + + + + Writes a BSON Symbol element to the writer. + + The writer. + The name of the element. + The symbol. + + + + Writes a BSON timestamp element to the writer. + + The writer. + The name of the element. + The combined timestamp/increment value. + + + + Writes a BSON undefined element to the writer. + + The writer. + The name of the element. + + + + Represents an element name validator. Used by BsonWriters when WriteName is called + to determine if the element name is valid. + + + + + Gets the validator to use for child content (a nested document or array). + + The name of the element. + The validator to use for child content. + + + + Determines whether the element name is valid. + + The name of the element. + True if the element name is valid. + + + + Represents a name decoder. + + + + + Decodes the name. + + The stream. + The encoding. + + The name. + + + + + Informs the decoder of an already decoded name (so the decoder can change state if necessary). + + The name. + + + + Represents a source of chunks optimized for input buffers. + + + + + Initializes a new instance of the class. + + The chunk source. + The maximum size of an unpooled chunk. + The minimum size of a chunk. + The maximum size of a chunk. + + + + Gets the base source. + + + The base source. + + + + + Gets the maximum size of a chunk. + + + The maximum size of a chunk. + + + + + Gets the minimum size of a chunk. + + + The minimum size of a chunk. + + + + + Gets the maximum size of an unpooled chunk. + + + The maximum size of an unpooled chunk. + + + + + + + + + + + Represents a wrapper around a TextReader to provide some buffering functionality. + + + + + Initializes a new instance of the class. + + The json. + + + + Initializes a new instance of the class. + + The reader. + + + + Gets or sets the current position. + + + + + Gets a snippet of a maximum length from the buffer (usually to include in an error message). + + The start. + The maximum length. + The snippet. + + + + Gets a substring from the buffer. + + The start. + The count. + The substring. + + + + Reads the next character from the text reader and advances the character position by one character. + + + The next character from the text reader, or -1 if no more characters are available. The default implementation returns -1. + + + + + Resets the buffer (clears everything up to the current position). + + + + + Unreads one character (moving the current Position back one position). + + The character. + + + + Represents a factory for IBsonBuffers. + + + + + Creates a buffer of the specified length. Depending on the length, either a SingleChunkBuffer or a MultiChunkBuffer will be created. + + The chunk pool. + The minimum capacity. + A buffer with at least the minimum capacity. + + + + An IByteBuffer that is backed by a contiguous byte array. + + + + + Initializes a new instance of the class. + + The bytes. + Whether the buffer is read only. + + + + Initializes a new instance of the class. + + The bytes. + The length. + Whether the buffer is read only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a Stream backed by an IByteBuffer. Similar to MemoryStream but backed by an IByteBuffer + instead of a byte array and also implements the BsonStream interface for higher performance BSON I/O. + + + + + Initializes a new instance of the class. + + The buffer. + Whether the stream owns the buffer and should Dispose it when done. + + + + Gets the buffer. + + + The buffer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a byte buffer (backed by various means depending on the implementation). + + + + + Gets the capacity. + + + The capacity. + + + + + Gets a value indicating whether this instance is read only. + + + true if this instance is read only; otherwise, false. + + + + + Gets or sets the length. + + + The length. + + + + + Access the backing bytes directly. The returned ArraySegment will point to the desired position and contain + as many bytes as possible up to the next chunk boundary (if any). If the returned ArraySegment does not + contain enough bytes for your needs you will have to call ReadBytes instead. + + The position. + + An ArraySegment pointing directly to the backing bytes for the position. + + + + + Clears the specified bytes. + + The position. + The count. + + + + Ensure that the buffer has a minimum capacity. Depending on the buffer allocation strategy + calling this method may result in a higher capacity than the minimum (but never lower). + + The minimum capacity. + + + + Gets a slice of this buffer. + + The position of the start of the slice. + The length of the slice. + A slice of this buffer. + + + + Makes this buffer read only. + + + + + Gets a byte. + + The position. + A byte. + + + + Gets bytes. + + The position. + The destination. + The destination offset. + The count. + + + + Sets a byte. + + The position. + The value. + + + + Sets bytes. + + The position. + The bytes. + The offset. + The count. + + + + Encodes and decodes scalar values to JSON compatible strings. + + + + + Converts a string to a Boolean. + + The value. + A Boolean. + + + + Converts a string to a DateTime. + + The value. + A DateTime. + + + + Converts a string to a DateTimeOffset. + + The value. + A DateTimeOffset. + + + + Converts a string to a Decimal. + + The value. + A Decimal. + + + + Converts a string to a . + + The value. + A . + + + + Converts a string to a Double. + + The value. + A Double. + + + + Converts a string to an Int16. + + The value. + An Int16. + + + + Converts a string to an Int32. + + The value. + An Int32. + + + + Converts a string to an Int64. + + The value. + An Int64. + + + + Converts a string to a Single. + + The value. + A Single. + + + + Converts a Boolean to a string. + + The value. + A string. + + + + Converts a DateTime to a string. + + The value. + A string. + + + + Converts a DateTimeOffset to a string. + + The value. + A string. + + + + Converts a Decimal to a string. + + The value. + A string. + + + + Converts a to a string. + + The value. + A string. + + + + Converts a Double to a string. + + The value. + A string. + + + + Converts a Single to a string. + + The value. + A string. + + + + Converts an Int32 to a string. + + The value. + A string. + + + + Converts an Int64 to a string. + + The value. + A string. + + + + Converts an Int16 to a string. + + The value. + A string. + + + + Converts a UInt32 to a string. + + The value. + A string. + + + + Converts a UInt64 to a string. + + The value. + A string. + + + + Converts a UInt16 to a string. + + The value. + A string. + + + + Converts a string to a UInt16. + + The value. + A UInt16. + + + + Converts a string to a UInt32. + + The value. + A UInt32. + + + + Converts a string to a UInt64. + + The value. + A UInt64. + + + + An IByteBuffer that is backed by multiple chunks. + + + + + Initializes a new instance of the class. + + The chunk pool. + chunkPool + + + + Initializes a new instance of the class. + + The chunks. + The length. + Whether the buffer is read only. + chunks + + + + + + + Gets the chunk source. + + + The chunk source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents an element name validator that does no validation. + + + + + Gets the instance. + + + The instance. + + + + + Gets the validator to use for child content (a nested document or array). + + The name of the element. + The validator to use for child content. + + + + Determines whether the element name is valid. + + The name of the element. + True if the element name is valid. + + + + Represents a source of chunks optimized for output buffers. + + + + + Initializes a new instance of the class. + + The chunk source. + The size of the initial unpooled chunk. + The minimum size of a chunk. + The maximum size of a chunk. + + + + Gets the base source. + + + The base source. + + + + + Gets the initial unpooled chunk size. + + + The initial unpooled chunk size. + + + + + Gets the maximum size of a chunk. + + + The maximum size of a chunk. + + + + + Gets the minimum size of a chunk. + + + The minimum size of a chunk. + + + + + + + + + + + Represents a Trie-based name decoder that also provides a value. + + The type of the value. + + + + Initializes a new instance of the class. + + The trie. + + + + Gets a value indicating whether this is found. + + + true if found; otherwise, false. + + + + + Gets the value. + + + The value. + + + + + Reads the name. + + The stream. + The encoding. + + The name. + + + + + Informs the decoder of an already decoded name (so the decoder can change state if necessary). + + The name. + + + + Represents a singleton instance of a strict UTF8Encoding. + + + + + Gets the lenient instance. + + + + + Gets the strict instance. + + + + + Represents a UTF8 name decoder. + + + + + Gets the instance. + + + The instance. + + + + + Decodes the name. + + The stream. + The encoding. + + The name. + + + + + Informs the decoder of an already decoded name (so the decoder can change state if necessary). + + The name. + + + + An IByteBuffer that is backed by a single chunk. + + + + + Initializes a new instance of the class. + + The chuns. + The length. + Whether the buffer is read only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a class that has some helper methods for decoding UTF8 strings. + + + + + Decodes a UTF8 string. + + The bytes. + The index. + The count. + The encoding. + The decoded string. + + + + An abstract base class for an IBsonWriter that wraps another IBsonWriter. + + + + + + Initializes a new instance of the class. + + The wrapped writer. + + + + + + + + + + + + + + + + Gets the wrapped writer. + + + The wrapped writer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Throws if disposed. + + + + + + Represents settings for a JsonReader. + + + + + Initializes a new instance of the JsonReaderSettings class. + + + + + Gets or sets the default settings for a JsonReader. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents a BSON reader for a BsonDocument. + + + + + Initializes a new instance of the BsonDocumentReader class. + + A BsonDocument. + + + + Initializes a new instance of the BsonDocumentReader class. + + A BsonDocument. + The reader settings. + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Creates a clone of the context. + + A clone of the context. + + + + Represents a BSON writer to a BsonDocument. + + + + + Initializes a new instance of the BsonDocumentWriter class. + + The document to write to (normally starts out as an empty document). + + + + Initializes a new instance of the BsonDocumentWriter class. + + The document to write to (normally starts out as an empty document). + The settings. + + + + Gets the BsonDocument being written to. + + + + + + + + Closes the writer. + + + + + Flushes any pending data to the output destination. + + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes the name of an element to the writer. + + The name of the element. + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Used by BsonReaders and BsonWriters to represent the current context. + + + + + The top level of a BSON document. + + + + + A (possibly embedded) BSON document. + + + + + A BSON array. + + + + + A JavaScriptWithScope BSON value. + + + + + The scope document of a JavaScriptWithScope BSON value. + + + + + Represents a BSON reader for a JSON string. + + + + + Initializes a new instance of the JsonReader class. + + The JSON string. + + + + Initializes a new instance of the JsonReader class. + + The JSON string. + The reader settings. + + + + Initializes a new instance of the JsonReader class. + + The TextReader. + + + + Initializes a new instance of the JsonReader class. + + The TextReader. + The reader settings. + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Creates a clone of the context. + + A clone of the context. + + + + A static class that represents a JSON scanner. + + + + + Gets the next JsonToken from a JsonBuffer. + + The buffer. + The next token. + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Initializes a new instance of the BsonReaderBookmark class. + + The state of the reader. + The current BSON type. + The name of the current element. + + + + Gets the current state of the reader. + + + + + Gets the current BsonType; + + + + + Gets the name of the current element. + + + + + Represents a JSON token type. + + + + + An invalid token. + + + + + A begin array token (a '['). + + + + + A begin object token (a '{'). + + + + + An end array token (a ']'). + + + + + A left parenthesis (a '('). + + + + + A right parenthesis (a ')'). + + + + + An end object token (a '}'). + + + + + A colon token (a ':'). + + + + + A comma token (a ','). + + + + + A DateTime token. + + + + + A Double token. + + + + + An Int32 token. + + + + + And Int64 token. + + + + + An ObjectId token. + + + + + A regular expression token. + + + + + A string token. + + + + + An unquoted string token. + + + + + An end of file token. + + + + + Represents a JSON token. + + + + + Initializes a new instance of the JsonToken class. + + The token type. + The lexeme. + + + + Gets the token type. + + + + + Gets the lexeme. + + + + + Gets the value of a DateTime token. + + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int64 token. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Gets the value of an ObjectId token. + + + + + Gets the value of a regular expression token. + + + + + Gets the value of a string token. + + + + + Represents a DateTime JSON token. + + + + + Initializes a new instance of the DateTimeJsonToken class. + + The lexeme. + The DateTime value. + + + + Gets the value of a DateTime token. + + + + + Represents a Double JSON token. + + + + + Initializes a new instance of the DoubleJsonToken class. + + The lexeme. + The Double value. + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int64 token. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Represents an Int32 JSON token. + + + + + Initializes a new instance of the Int32JsonToken class. + + The lexeme. + The Int32 value. + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int32 token as an Int64. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Represents an Int64 JSON token. + + + + + Initializes a new instance of the Int64JsonToken class. + + The lexeme. + The Int64 value. + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int64 token. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Represents an ObjectId JSON token. + + + + + Initializes a new instance of the ObjectIdJsonToken class. + + The lexeme. + The ObjectId value. + + + + Gets the value of an ObjectId token. + + + + + Represents a regular expression JSON token. + + + + + Initializes a new instance of the RegularExpressionJsonToken class. + + The lexeme. + The BsonRegularExpression value. + + + + Gets the value of a regular expression token. + + + + + Represents a String JSON token. + + + + + Initializes a new instance of the StringJsonToken class. + + The token type. + The lexeme. + The String value. + + + + Gets the value of an String token. + + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Represents a BSON reader for a binary BSON byte array. + + + + + Initializes a new instance of the BsonBinaryReader class. + + A stream (BsonBinary does not own the stream and will not Dispose it). + + + + Initializes a new instance of the BsonBinaryReader class. + + A stream (BsonBinary does not own the stream and will not Dispose it). + A BsonBinaryReaderSettings. + + + + Gets the base stream. + + + The base stream. + + + + + Gets the BSON stream. + + + The BSON stream. + + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name decoder. + The name of the element. + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a raw BSON array. + + + The raw BSON array. + + + + + Reads a raw BSON document. + + + The raw BSON document. + + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Represents settings for a BsonBinaryReader. + + + + + Initializes a new instance of the BsonBinaryReaderSettings class. + + + + + Gets or sets the default settings for a BsonBinaryReader. + + + + + Gets or sets the Encoding. + + + + + Gets or sets whether to fix occurrences of the old binary subtype on input. + + + + + Gets or sets whether to fix occurrences of the old representation of DateTime.MaxValue on input. + + + + + Gets or sets the max document size. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents the output mode of a JsonWriter. + + + + + Output strict JSON. + + + + + Use a format that can be pasted in to the MongoDB shell. + + + + + Use JavaScript data types for some values. + + + + + Use JavaScript and MongoDB data types for some values. + + + + + Represents a BSON writer to a TextWriter (in JSON format). + + + + + Initializes a new instance of the JsonWriter class. + + A TextWriter. + + + + Initializes a new instance of the JsonWriter class. + + A TextWriter. + Optional JsonWriter settings. + + + + Gets the base TextWriter. + + + The base TextWriter. + + + + + + + + Gets the settings of the writer. + + + + + Closes the writer. + + + + + Flushes any pending data to the output destination. + + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Represents settings for a JsonWriter. + + + + + Initializes a new instance of the JsonWriterSettings class. + + + + + Gets or sets the default JsonWriterSettings. + + + + + Gets or sets the output Encoding. + + + + + Gets or sets whether to indent the output. + + + + + Gets or sets the indent characters. + + + + + Gets or sets the new line characters. + + + + + Gets or sets the output mode. + + + + + Gets or sets the shell version (used with OutputMode Shell). + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents a BSON reader for some external format (see subclasses). + + + + + Initializes a new instance of the BsonReader class. + + The reader settings. + + + + Gets the current BsonType. + + + + + Gets the settings of the reader. + + + + + Gets the current state of the reader. + + + + + Gets the current name. + + + + + Gets whether the BsonReader has been disposed. + + + + + Closes the reader. + + + + + Disposes of any resources used by the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Gets the current BsonType (calls ReadBsonType if necessary). + + The current BsonType. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name of the element. + + + + Reads the name of an element from the reader (using the provided name decoder). + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a raw BSON array. + + The raw BSON array. + + + + Reads a raw BSON document. + + The raw BSON document. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Throws an InvalidOperationException when the method called is not valid for the current ContextType. + + The name of the method. + The actual ContextType. + The valid ContextTypes. + + + + Throws an InvalidOperationException when the method called is not valid for the current state. + + The name of the method. + The valid states. + + + + Throws an ObjectDisposedException. + + + + + Verifies the current state and BsonType of the reader. + + The name of the method calling this one. + The required BSON type. + + + + Represents the state of a reader. + + + + + The initial state. + + + + + The reader is positioned at the type of an element or value. + + + + + The reader is positioned at the name of an element. + + + + + The reader is positioned at a value. + + + + + The reader is positioned at a scope document. + + + + + The reader is positioned at the end of a document. + + + + + The reader is positioned at the end of an array. + + + + + The reader has finished reading a document. + + + + + The reader is closed. + + + + + Represents a BSON writer for some external format (see subclasses). + + + + + Initializes a new instance of the BsonWriter class. + + The writer settings. + + + + + + + Gets the current serialization depth. + + + + + Gets the settings of the writer. + + + + + Gets the current state of the writer. + + + + + Gets whether the BsonWriter has been disposed. + + + + + Gets the name of the element being written. + + + + + Closes the writer. + + + + + Disposes of any resources used by the writer. + + + + + Flushes any pending data to the output destination. + + + + + Pops the element name validator. + + The popped element validator. + + + + + + + Pushes the element name validator. + + The validator. + + + + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes the name of an element to the writer. + + The name of the element. + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a raw BSON array. + + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Throws an InvalidOperationException when the method called is not valid for the current ContextType. + + The name of the method. + The actual ContextType. + The valid ContextTypes. + + + + Throws an InvalidOperationException when the method called is not valid for the current state. + + The name of the method. + The valid states. + + + + Represents settings for a BsonBinaryWriter. + + + + + Initializes a new instance of the BsonBinaryWriterSettings class. + + + + + Gets or sets the default BsonBinaryWriter settings. + + + + + Gets or sets the Encoding. + + + + + Gets or sets whether to fix the old binary data subtype on output. + + + + + Gets or sets the max document size. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents the state of a BsonWriter. + + + + + The initial state. + + + + + The writer is positioned to write a name. + + + + + The writer is positioned to write a value. + + + + + The writer is positioned to write a scope document (call WriteStartDocument to start writing the scope document). + + + + + The writer is done. + + + + + The writer is closed. + + + + + Represents a BSON writer to a BSON Stream. + + + + + Initializes a new instance of the BsonBinaryWriter class. + + A stream. The BsonBinaryWriter does not own the stream and will not Dispose it. + + + + Initializes a new instance of the BsonBinaryWriter class. + + A stream. The BsonBinaryWriter does not own the stream and will not Dispose it. + The BsonBinaryWriter settings. + + + + Gets the base stream. + + + The base stream. + + + + + Gets the BSON stream. + + + The BSON stream. + + + + + + + + Gets the settings of the writer. + + + + + Closes the writer. Also closes the base stream. + + + + + Flushes any pending data to the output destination. + + + + + Pops the max document size stack, restoring the previous max document size. + + + + + Pushes a new max document size onto the max document size stack. + + The maximum size of the document. + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a raw BSON array. + + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Creates a clone of the context. + + A clone of the context. + + + + Represents a BSON Decimal128 value. + + + + + + Initializes a new instance of the class. + + The value. + + + + + + + + + + Gets the value. + + + + + Converts a Decimal128 to a BsonDecimal128. + + A Decimal128. + A BsonDecimal128. + + + + Compares two BsonDecimal128 values. + + The first BsonDecimal128. + The other BsonDecimal128. + True if the two BsonDecimal128 values are not equal according to ==. + + + + Compares two BsonDecimal128 values. + + The first BsonDecimal128. + The other BsonDecimal128. + True if the two BsonDecimal128 values are equal according to ==. + + + + Creates a new instance of the BsonDecimal128 class. + + An object to be mapped to a BsonDecimal128. + A BsonDecimal128. + + + + Compares this BsonDecimal128 to another BsonDecimal128. + + The other BsonDecimal128. + A 32-bit signed integer that indicates whether this BsonDecimal128 is less than, equal to, or greather than the other. + + + + + + + Compares this BsonDecimal128 to another BsonDecimal128. + + The other BsonDecimal128. + True if the two BsonDecimal128 values are equal. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a Decimal128 value. + + + + + Gets the maximum value. + + + + + Gets the minimum value. + + + + + Represents negative infinity. + + + + + Represents one. + + + + + Represents positive infinity. + + + + + Represents a value that is not a number. + + + + + Represents a value that is not a number and raises errors when used in calculations. + + + + + Represents zero. + + + + + Implements the operator ==. + + The LHS. + The RHS. + + The result of the operator. + + + + + Implements the operator !=. + + The LHS. + The RHS. + + The result of the operator. + + + + + Returns a value indicating whether a specified Decimal128 is greater than another specified Decimal128. + + The first value. + The second value. + + true if x > y; otherwise, false. + + + + + Returns a value indicating whether a specified Decimal128 is greater than or equal to another another specified Decimal128. + + The first value. + The second value. + + true if x >= y; otherwise, false. + + + + + Returns a value indicating whether a specified Decimal128 is less than another specified Decimal128. + + The first value. + The second value. + + true if x < y; otherwise, false. + + + + + Returns a value indicating whether a specified Decimal128 is less than or equal to another another specified Decimal128. + + The first value. + The second value. + + true if x <= y; otherwise, false. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Compares two specified Decimal128 values and returns an integer that indicates whether the first value + is greater than, less than, or equal to the second value. + + The first value. + The second value. + Less than zero if x < y, zero if x == y, and greater than zero if x > y. + + + + Determines whether the specified Decimal128 instances are considered equal. + + The first Decimal128 object to compare. + The second Decimal128 object to compare. + True if the objects are considered equal; otherwise false. If both x and y are null, the method returns true. + + + + Creates a new Decimal128 value from its components. + + if set to true [is negative]. + The exponent. + The signficand high bits. + The significand low bits. + A Decimal128 value. + + + + Creates a new Decimal128 value from the IEEE encoding bits. + + The high bits. + The low bits. + A Decimal128 value. + + + + Gets the exponent of a Decimal128 value. + + The Decimal128 value. + The exponent. + + + + Gets the high bits of the significand of a Decimal128 value. + + The Decimal128 value. + The high bits of the significand. + + + + Gets the high bits of the significand of a Decimal128 value. + + The Decimal128 value. + The high bits of the significand. + + + + Returns a value indicating whether the specified number evaluates to negative or positive infinity. + + A 128-bit decimal. + true if evaluates to negative or positive infinity; otherwise, false. + + + + Returns a value indicating whether the specified number is not a number. + + A 128-bit decimal. + true if is not a number; otherwise, false. + + + + Returns a value indicating whether the specified number is negative. + + A 128-bit decimal. + true if is negative; otherwise, false. + + + + Returns a value indicating whether the specified number evaluates to negative infinity. + + A 128-bit decimal. + true if evaluates to negative infinity; otherwise, false. + + + + Returns a value indicating whether the specified number evaluates to positive infinity. + + A 128-bit decimal. + true if evaluates to positive infinity; otherwise, false. + + + + Returns a value indicating whether the specified number is a quiet not a number. + + A 128-bit decimal. + true if is a quiet not a number; otherwise, false. + + + + Returns a value indicating whether the specified number is a signaled not a number. + + A 128-bit decimal. + true if is a signaled not a number; otherwise, false. + + + + Returns a value indicating whether the specified number is zero. + + A 128-bit decimal. + + true if the specified number is zero; otherwise, false. + + + + + Negates the specified x. + + The x. + The result of multiplying the value by negative one. + + + + Converts the string representation of a number to its equivalent. + + The string representation of the number to convert. + + The equivalent to the number contained in . + + + + + Converts the value of the specified to the equivalent 8-bit unsigned integer. + + The number to convert. + A 8-bit unsigned integer equivalent to . + + + + Converts the value of the specified to the equivalent . + + The number to convert. + A equivalent to . + + + + Converts the value of the specified to the equivalent . + + The number to convert. + A equivalent to . + + + + Converts the value of the specified to the equivalent 16-bit signed integer. + + The number to convert. + A 16-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent 32-bit signed integer. + + The number to convert. + A 32-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent 64-bit signed integer. + + The number to convert. + A 64-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent 8-bit signed integer. + + The number to convert. + A 8-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent . + + The number to convert. + A equivalent to . + + + + Converts the value of the specified to the equivalent 16-bit unsigned integer. + + The number to convert. + A 16-bit unsigned integer equivalent to . + + + + Converts the value of the specified to the equivalent 32-bit unsigned integer. + + The number to convert. + A 32-bit unsigned integer equivalent to . + + + + Converts the value of the specified to the equivalent 64-bit unsigned integer. + + The number to convert. + A 64-bit unsigned integer equivalent to . + + + + Converts the string representation of a number to its equivalent. A return value indicates whether the conversion succeeded or failed. + + The string representation of the number to convert. + When this method returns, contains the number that is equivalent to the numeric value contained in , if the conversion succeeded, or is zero if the conversion failed. The conversion fails if the parameter is null, is not a number in a valid format, or represents a number less than the min value or greater than the max value. This parameter is passed uninitialized. + + true if was converted successfully; otherwise, false. + + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + + + + + + + + + + + + + Gets the high order 64 bits of the binary representation of this instance. + + The high order 64 bits of the binary representation of this instance. + + + + Gets the low order 64 bits of the binary representation of this instance. + + The low order 64 bits of the binary representation of this instance. + + + + + + + Represents the representation to use when converting a Guid to a BSON binary value. + + + + + The representation for Guids is unspecified, so conversion between Guids and Bson binary data is not possible. + + + + + Use the new standard representation for Guids (binary subtype 4 with bytes in network byte order). + + + + + Use the representation used by older versions of the C# driver (including most community provided C# drivers). + + + + + Use the representation used by older versions of the Java driver. + + + + + Use the representation used by older versions of the Python driver. + + + + + A static class containing methods to convert to and from Guids and byte arrays in various byte orders. + + + + + Converts a byte array to a Guid. + + The byte array. + The representation of the Guid in the byte array. + A Guid. + + + + Converts a Guid to a byte array. + + The Guid. + The representation of the Guid in the byte array. + A byte array. + + + + An interface for custom mappers that map an object to a BsonValue. + + + + + Tries to map an object to a BsonValue. + + An object. + The BsonValue. + True if the mapping was successfull. + + + + Represents how duplicate names should be handled. + + + + + Overwrite original value with new value. + + + + + Ignore duplicate name and keep original value. + + + + + Throw an exception. + + + + + Represents options used by the BsonTypeMapper. + + + + + Initializes a new instance of the BsonTypeMapperOptions class. + + + + + Gets or sets the default BsonTypeMapperOptions. + + + + + Gets or sets how duplicate names should be handled. + + + + + Gets whether the BsonTypeMapperOptions is frozen. + + + + + Gets or sets the type that a BsonArray should be mapped to. + + + + + Gets or sets the type that a BsonDocument should be mapped to. + + + + + Gets or sets whether binary sub type OldBinary should be mapped to byte[] the way sub type Binary is. + + + + + Clones the BsonTypeMapperOptions. + + The cloned BsonTypeMapperOptions. + + + + Freezes the BsonTypeMapperOptions. + + The frozen BsonTypeMapperOptions. + + + + Represents a BSON array that is deserialized lazily. + + + + + Initializes a new instance of the class. + + The slice. + slice + LazyBsonArray cannot be used with an IByteBuffer that needs disposing. + + + + Gets the slice. + + + The slice. + + + + + Creates a shallow clone of the array (see also DeepClone). + + A shallow clone of the array. + + + + Creates a deep clone of the array (see also Clone). + + A deep clone of the array. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonArray. + + + The materialized values. + + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Represents a BSON document that is deserialized lazily. + + + + + Initializes a new instance of the class. + + The slice. + slice + LazyBsonDocument cannot be used with an IByteBuffer that needs disposing. + + + + Initializes a new instance of the class. + + The bytes. + + + + Gets the slice. + + + The slice. + + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Creates a deep clone of the document (see also Clone). + + + A deep clone of the document. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonDocument. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Represents a BSON array that is not materialized until you start using it. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + + + Gets the count of array elements. + + + + + Gets a value indicating whether this instance is disposed. + + + true if this instance is disposed; otherwise, false. + + + + + Gets a value indicating whether this instance is materialized. + + + true if this instance is materialized; otherwise, false. + + + + + Gets the array elements as raw values (see BsonValue.RawValue). + + + + + Gets the array elements. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Adds an element to the array. + + The value to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Clears the array. + + + + + Creates a shallow clone of the array (see also DeepClone). + + + A shallow clone of the array. + + + + + Compares the array to another array. + + The other array. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other. + + + + Compares the array to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the array contains a value. + + The value to test for. + True if the array contains the value. + + + + Copies elements from this array to another array. + + The other array. + The zero based index of the other array at which to start copying. + + + + Copies elements from this array to another array as raw values (see BsonValue.RawValue). + + The other array. + The zero based index of the other array at which to start copying. + + + + Creates a deep clone of the array (see also Clone). + + + A deep clone of the array. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets an enumerator that can enumerate the elements of the array. + + An enumerator. + + + + Gets the hash code. + + The hash code. + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The number of elements to search. + The zero based index of the value (or -1 if not found). + + + + Inserts a new value into the array. + + The zero based index at which to insert the new value. + The new value. + + + + Removes the first occurrence of a value from the array. + + The value to remove. + True if the value was removed. + + + + Removes an element from the array. + + The zero based index of the element to remove. + + + + Converts the BsonArray to an array of BsonValues. + + An array of BsonValues. + + + + Converts the BsonArray to a list of BsonValues. + + A list of BsonValues. + + + + Returns a string representation of the array. + + A string representation of the array. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonArray. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Throws if disposed. + + + + + + Represents a BSON document that is not materialized until you start using it. + + + + + Initializes a new instance of the class. + + + + + Gets the number of elements. + + + + + Gets the elements. + + + + + Gets a value indicating whether this instance is disposed. + + + true if this instance is disposed; otherwise, false. + + + + + Gets a value indicating whether this instance is materialized. + + + true if this instance is materialized; otherwise, false. + + + + + Gets the element names. + + + + + Gets the raw values (see BsonValue.RawValue). + + + + + Gets the values. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value to return if the element is not found. + Teh value of the element or a default value if the element is not found. + + + + Gets or sets a value by name. + + The name. + The value. + + + + Adds an element to the document. + + The element to add. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Creates and adds an element to the document. + + The name of the element. + The value of the element. + + The document (so method calls can be chained). + + + + + Creates and adds an element to the document, but only if the condition is true. + + The name of the element. + The value of the element. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Creates and adds an element to the document, but only if the condition is true. + If the condition is false the value factory is not called at all. + + The name of the element. + A delegate called to compute the value of the element if condition is true. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds a list of elements to the document. + + The list of elements. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Clears the document (removes all elements). + + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Compares this document to another document. + + The other document. + + A 32-bit signed integer that indicates whether this document is less than, equal to, or greather than the other. + + + + + Compares the BsonDocument to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonDocument is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the document contains an element with the specified name. + + The name of the element to look for. + + True if the document contains an element with the specified name. + + + + + Tests whether the document contains an element with the specified value. + + The value of the element to look for. + + True if the document contains an element with the specified value. + + + + + Creates a deep clone of the document (see also Clone). + + + A deep clone of the document. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets an element of this document. + + The zero based index of the element. + + The element. + + + + + Gets an element of this document. + + The name of the element. + + A BsonElement. + + + + + Gets an enumerator that can be used to enumerate the elements of this document. + + + An enumerator. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Gets the value of an element. + + The zero based index of the element. + + The value of the element. + + + + + Gets the value of an element. + + The name of the element. + + The value of the element. + + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value returned if the element is not found. + + The value of the element or the default value if the element is not found. + + + + + Inserts a new element at a specified position. + + The position of the new element. + The element. + + + + Merges another document into this one. Existing elements are not overwritten. + + The other document. + + The document (so method calls can be chained). + + + + + Merges another document into this one, specifying whether existing elements are overwritten. + + The other document. + Whether to overwrite existing elements. + + The document (so method calls can be chained). + + + + + Removes an element from this document (if duplicate element names are allowed + then all elements with this name will be removed). + + The name of the element to remove. + + + + Removes an element from this document. + + The zero based index of the element to remove. + + + + Removes an element from this document. + + The element to remove. + + + + Sets the value of an element. + + The zero based index of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets the value of an element (an element will be added if no element with this name is found). + + The name of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets an element of the document (replaces any existing element with the same name or adds a new element if an element with the same name is not found). + + The new element. + + The document. + + + + + Sets an element of the document (replacing the existing element at that position). + + The zero based index of the element to replace. + The new element. + + The document. + + + + + Tries to get an element of this document. + + The name of the element. + The element. + + True if an element with that name was found. + + + + + Tries to get the value of an element of this document. + + The name of the element. + The value of the element. + + True if an element with that name was found. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonDocument. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Throws if disposed. + + + + + + Represents an immutable BSON array that is represented using only the raw bytes. + + + + + Initializes a new instance of the class. + + The slice. + slice + RawBsonArray cannot be used with an IByteBuffer that needs disposing. + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + + + Gets the count of array elements. + + + + + Gets whether the array is read-only. + + + + + Gets the array elements as raw values (see BsonValue.RawValue). + + + + + Gets the slice. + + + The slice. + + + + + Gets the array elements. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Adds an element to the array. + + The value to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Creates a shallow clone of the array (see also DeepClone). + + A shallow clone of the array. + + + + Clears the array. + + + + + Tests whether the array contains a value. + + The value to test for. + True if the array contains the value. + + + + Copies elements from this array to another array. + + The other array. + The zero based index of the other array at which to start copying. + + + + Copies elements from this array to another array as raw values (see BsonValue.RawValue). + + The other array. + The zero based index of the other array at which to start copying. + + + + Creates a deep clone of the array (see also Clone). + + A deep clone of the array. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets an enumerator that can enumerate the elements of the array. + + An enumerator. + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The number of elements to search. + The zero based index of the value (or -1 if not found). + + + + Inserts a new value into the array. + + The zero based index at which to insert the new value. + The new value. + + + + Materializes the RawBsonArray into a regular BsonArray. + + The binary reader settings. + A BsonArray. + + + + Removes the first occurrence of a value from the array. + + The value to remove. + True if the value was removed. + + + + Removes an element from the array. + + The zero based index of the element to remove. + + + + Converts the BsonArray to an array of BsonValues. + + An array of BsonValues. + + + + Converts the BsonArray to a list of BsonValues. + + A list of BsonValues. + + + + Returns a string representation of the array. + + A string representation of the array. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Throws if disposed. + + + + + + Represents an immutable BSON document that is represented using only the raw bytes. + + + + + Initializes a new instance of the class. + + The slice. + slice + RawBsonDocument cannot be used with an IByteBuffer that needs disposing. + + + + Initializes a new instance of the class. + + The bytes. + + + + Gets the number of elements. + + + + + Gets the elements. + + + + + Gets the element names. + + + + + Gets the raw values (see BsonValue.RawValue). + + + + + Gets the slice. + + + The slice. + + + + + Gets the values. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value to return if the element is not found. + Teh value of the element or a default value if the element is not found. + + + + Gets or sets a value by name. + + The name. + The value. + + + + Adds an element to the document. + + The element to add. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Creates and adds an element to the document. + + The name of the element. + The value of the element. + + The document (so method calls can be chained). + + + + + Creates and adds an element to the document, but only if the condition is true. + + The name of the element. + The value of the element. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds a list of elements to the document. + + The list of elements. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Clears the document (removes all elements). + + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Tests whether the document contains an element with the specified name. + + The name of the element to look for. + + True if the document contains an element with the specified name. + + + + + Tests whether the document contains an element with the specified value. + + The value of the element to look for. + + True if the document contains an element with the specified value. + + + + + Creates a deep clone of the document (see also Clone). + + + A deep clone of the document. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets an element of this document. + + The zero based index of the element. + + The element. + + + + + Gets an element of this document. + + The name of the element. + + A BsonElement. + + + + + Gets an enumerator that can be used to enumerate the elements of this document. + + + An enumerator. + + + + + Gets the value of an element. + + The zero based index of the element. + + The value of the element. + + + + + Gets the value of an element. + + The name of the element. + + The value of the element. + + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value returned if the element is not found. + + The value of the element or the default value if the element is not found. + + + + + Inserts a new element at a specified position. + + The position of the new element. + The element. + + + + Materializes the RawBsonDocument into a regular BsonDocument. + + The binary reader settings. + A BsonDocument. + + + + Merges another document into this one. Existing elements are not overwritten. + + The other document. + + The document (so method calls can be chained). + + + + + Merges another document into this one, specifying whether existing elements are overwritten. + + The other document. + Whether to overwrite existing elements. + + The document (so method calls can be chained). + + + + + Removes an element from this document (if duplicate element names are allowed + then all elements with this name will be removed). + + The name of the element to remove. + + + + Removes an element from this document. + + The zero based index of the element to remove. + + + + Removes an element from this document. + + The element to remove. + + + + Sets the value of an element. + + The zero based index of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets the value of an element (an element will be added if no element with this name is found). + + The name of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets an element of the document (replaces any existing element with the same name or adds a new element if an element with the same name is not found). + + The new element. + + The document. + + + + + Sets an element of the document (replacing the existing element at that position). + + The zero based index of the element to replace. + The new element. + + The document. + + + + + Tries to get an element of this document. + + The name of the element. + The element. + + True if an element with that name was found. + + + + + Tries to get the value of an element of this document. + + The name of the element. + The value of the element. + + True if an element with that name was found. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Throws if disposed. + + RawBsonDocument + + + + Provides serializers based on an attribute. + + + + + + + + Specifies that this constructor should be used for creator-based deserialization. + + + + + Initializes a new instance of the BsonConstructorAttribute class. + + + + + Initializes a new instance of the BsonConstructorAttribute class. + + The names of the members that the creator argument values come from. + + + + Gets the names of the members that the creator arguments values come from. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Specifies serialization options for a DateTime field or property. + + + + + Initializes a new instance of the BsonDateTimeOptionsAttribute class. + + + + + Gets or sets whether the DateTime consists of a Date only. + + + + + Gets or sets the DateTimeKind (Local, Unspecified or Utc). + + + + + Gets or sets the external representation. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Specifies serialization options for a Dictionary field or property. + + + + + Initializes a new instance of the BsonDictionaryOptionsAttribute class. + + + + + Initializes a new instance of the BsonDictionaryOptionsAttribute class. + + The representation to use for the Dictionary. + + + + Gets or sets the external representation. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Indicates that this property or field will be used to hold any extra elements found during deserialization. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies that this factory method should be used for creator-based deserialization. + + + + + Initializes a new instance of the BsonFactoryMethodAttribute class. + + + + + Initializes a new instance of the BsonFactoryMethodAttribute class. + + The names of the members that the creator argument values come from. + + + + Gets the names of the members that the creator arguments values come from. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Indicates whether a field or property equal to the default value should be ignored when serializing this class. + + + + + Initializes a new instance of the BsonIgnoreIfDefaultAttribute class. + + + + + Initializes a new instance of the BsonIgnoreIfDefaultAttribute class. + + Whether a field or property equal to the default value should be ignored when serializing this class. + + + + Gets whether a field or property equal to the default value should be ignored when serializing this class. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies that the class's IdMember should be null. + + + + + Applies the post processing attribute to the class map. + + The class map. + + + + Specifies the external representation and related options for this field or property. + + + + + Initializes a new instance of the BsonRepresentationAttribute class. + + The external representation. + + + + Gets the external representation. + + + + + Gets or sets whether to allow overflow. + + + + + Gets or sets whether to allow truncation. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Abstract base class for serialization options attributes. + + + + + Initializes a new instance of the BsonSerializationOptionsAttribute class. + + + + + Applies a modification to the member map. + + The member map. + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + + Specifies the type of the serializer to use for a class. + + + + + Initializes a new instance of the BsonSerializerAttribute class. + + + + + Initializes a new instance of the BsonSerializerAttribute class. + + The type of the serializer to use for a class. + + + + Gets or sets the type of the serializer to use for a class. + + + + + Applies a modification to the member map. + + The member map. + + + + Creates a serializer for a type based on the serializer type specified by the attribute. + + The type that a serializer should be created for. + A serializer for the type. + + + + Specifies the external representation and related options for this field or property. + + + + + Initializes a new instance of the BsonTimeSpanOptionsAttribute class. + + The external representation. + + + + Initializes a new instance of the BsonTimeSpanOptionsAttribute class. + + The external representation. + The TimeSpanUnits. + + + + Gets the external representation. + + + + + Gets or sets the TimeSpanUnits. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Specifies the default value for a field or property. + + + + + Initializes a new instance of the BsonDefaultValueAttribute class. + + The default value. + + + + Gets the default value. + + + + + Gets or sets whether to serialize the default value. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies the discriminator and related options for a class. + + + + + Initializes a new instance of the BsonDiscriminatorAttribute class. + + + + + Initializes a new instance of the BsonDiscriminatorAttribute class. + + The discriminator. + + + + Gets the discriminator. + + + + + Gets or sets whether the discriminator is required. + + + + + Gets or sets whether this is a root class. + + + + + Applies a modification to the class map. + + The class map. + + + + Specifies the element name and related options for a field or property. + + + + + Initializes a new instance of the BsonElementAttribute class. + + + + + Initializes a new instance of the BsonElementAttribute class. + + The name of the element. + + + + Gets the element name. + + + + + Gets the element serialization order. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies that this is the Id field or property. + + + + + Initializes a new instance of the BsonIdAttribute class. + + + + + Gets or sets the Id generator for the Id. + + + + + Gets or sets the Id element serialization order. + + + + + Applies a modification to the member map. + + The member map. + + + + Indicates that this field or property should be ignored when this class is serialized. + + + + + Specifies whether extra elements should be ignored when this class is deserialized. + + + + + Initializes a new instance of the BsonIgnoreExtraElementsAttribute class. + + + + + Initializes a new instance of the BsonIgnoreExtraElementsAttribute class. + + Whether extra elements should be ignored when this class is deserialized. + + + + Gets whether extra elements should be ignored when this class is deserialized. + + + + + Gets whether extra elements should also be ignored when any class derived from this one is deserialized. + + + + + Applies a modification to the class map. + + The class map. + + + + Indicates whether a field or property equal to null should be ignored when serializing this class. + + + + + Initializes a new instance of the BsonIgnoreIfNullAttribute class. + + + + + Initializes a new instance of the BsonIgnoreIfNullAttribute class. + + Whether a field or property equal to null should be ignored when serializing this class. + + + + Gets whether a field or property equal to null should be ignored when serializing this class. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies the known types for this class (the derived classes). + + + + + Initializes a new instance of the BsonKnownTypesAttribute class. + + One or more known types. + + + + Initializes a new instance of the BsonKnownTypesAttribute class. + + A known types. + + + + Gets a list of the known types. + + + + + Applies a modification to the class map. + + The class map. + + + + Indicates that a field or property is required. + + + + + Applies a modification to the member map. + + The member map. + + + + Indicates the usage restrictions for the attribute. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether the attribute this attribute applies to is allowed to be applied + to more than one member. + + + + + Represents an attribute used to modify a member map. + + + + + Applies the attribute to the member map. + + The member map. + + + + Represents an attribute used to modify a class map. + + + + + Applies the attribute to the class map. + + The class map. + + + + Represents an attribute used to post process a class map. + + + + + Applies the post processing attribute to the class map. + + The class map. + + + + Represents an attribute used to modify a creator map. + + + + + Applies the attribute to the creator map. + + The creator map. + + + + Represents the class map serialization provider. + + + + + + + + Represents a mapping to a delegate and its arguments. + + + + + Initializes a new instance of the BsonCreatorMap class. + + The class map. + The member info (null if none). + The delegate. + + + + Gets the arguments. + + + + + Gets the class map that this creator map belongs to. + + + + + Gets the delegeate + + + + + Gets the element names. + + + + + Gets the member info (null if none). + + + + + Freezes the creator map. + + + + + Gets whether there is a default value for a missing element. + + The element name. + True if there is a default value for element name; otherwise, false. + + + + Sets the arguments for the creator map. + + The arguments. + The creator map. + + + + Sets the arguments for the creator map. + + The argument names. + The creator map. + + + + Represents args common to all serializers. + + + + + Gets or sets the nominal type. + + + The nominal type. + + + + + Represents all the contextual information needed by a serializer to deserialize a value. + + + + + Gets a value indicating whether to allow duplicate element names. + + + true if duplicate element names shoud be allowed; otherwise, false. + + + + + Gets the dynamic array serializer. + + + The dynamic array serializer. + + + + + Gets the dynamic document serializer. + + + The dynamic document serializer. + + + + + Gets the reader. + + + The reader. + + + + + Creates a root context. + + The reader. + The configurator. + + A root context. + + + + + Creates a new context with some values changed. + + The configurator. + + A new context. + + + + + Represents a builder for a BsonDeserializationContext. + + + + + Gets or sets a value indicating whether to allow duplicate element names. + + + true if duplicate element names should be allowed; otherwise, false. + + + + + Gets or sets the dynamic array serializer. + + + The dynamic array serializer. + + + + + Gets or sets the dynamic document serializer. + + + The dynamic document serializer. + + + + + Gets the reader. + + + The reader. + + + + + Builds the BsonDeserializationContext instance. + + A BsonDeserializationContext. + + + + A class backed by a BsonDocument. + + + + + Initializes a new instance of the class. + + The serializer. + + + + Initializes a new instance of the class. + + The backing document. + The serializer. + + + + Gets the backing document. + + + + + Gets the value from the backing document. + + The type of the value. + The member name. + The value. + + + + Gets the value from the backing document. + + The type of the value. + The member name. + The default value. + The value. + + + + Sets the value in the backing document. + + The member name. + The value. + + + + Provides serializers for BsonValue and its derivations. + + + + + + + + Represents args common to all serializers. + + + + + Initializes a new instance of the struct. + + The nominal type. + Whether to serialize as the nominal type. + Whether to serialize the id first. + + + + Gets or sets the nominal type. + + + The nominal type. + + + + + Gets or sets a value indicating whether to serialize the value as if it were an instance of the nominal type. + + + + + Gets or sets a value indicating whether to serialize the id first. + + + + + Represents all the contextual information needed by a serializer to serialize a value. + + + + + Gets a function that, when executed, will indicate whether the type + is a dynamic type. + + + + + Gets the writer. + + + The writer. + + + + + Creates a root context. + + The writer. + The serialization context configurator. + + A root context. + + + + + Creates a new context with some values changed. + + The serialization context configurator. + + A new context. + + + + + Represents a builder for a BsonSerializationContext. + + + + + Gets or sets the function used to determine if a type is a dynamic type. + + + + + Gets the writer. + + + The writer. + + + + + Builds the BsonSerializationContext instance. + + A BsonSerializationContext. + + + + Provides serializers for collections. + + + + + + + + Convention pack for applying attributes. + + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + + + Gets the conventions. + + + + + A convention that sets the element name the same as the member name with the first character lower cased. + + + + + Applies a modification to the member map. + + The member map. + + + + A convention that uses the names of the creator parameters to find the matching members. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Base class for a convention. + + + + + Initializes a new instance of the ConventionBase class. + + + + + Initializes a new instance of the ConventionBase class. + + The name of the convention. + + + + Gets the name of the convention. + + + + + A mutable pack of conventions. + + + + + Initializes a new instance of the class. + + + + + Gets the conventions. + + + + + Adds the specified convention. + + The convention. + + + + + Adds a class map convention created using the specified action upon a class map. + + The name of the convention. + The action the convention should take upon the class map. + + + + Adds a member map convention created using the specified action upon a member map. + + The name of the convention. + The action the convention should take upon the member map. + + + + Adds a post processing convention created using the specified action upon a class map. + + The name of the convention. + The action the convention should take upon the class map. + + + + Adds a range of conventions. + + The conventions. + + + + + Appends the conventions in another pack to the end of this pack. + + The other pack. + + + + Gets an enumerator for the conventions. + + An enumerator. + + + + Inserts the convention after another convention specified by the name. + + The name. + The convention. + + + + Inserts the convention before another convention specified by the name. + + The name. + The convention. + + + + Removes the named convention. + + The name of the convention. + + + + Represents a registry of conventions. + + + + + Looks up the effective set of conventions that apply to a type. + + The type. + The conventions for that type. + + + + Registers the conventions. + + The name. + The conventions. + The filter. + + + + Removes the conventions specified by the given name. + + The name. + Removing a convention allows the removal of the special __defaults__ conventions + and the __attributes__ conventions for those who want to completely customize the + experience. + + + + Runs the conventions against a BsonClassMap and its BsonMemberMaps. + + + + + Initializes a new instance of the class. + + The conventions. + + + + Applies a modification to the class map. + + The class map. + + + + Convention pack of defaults. + + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + + + Gets the conventions. + + + + + A class map convention that wraps a delegate. + + + + + Initializes a new instance of the class. + + The name. + The delegate. + + + + Applies a modification to the class map. + + The class map. + + + + A member map convention that wraps a delegate. + + + + + Initializes a new instance of the class. + + The name. + The delegate. + + + + Applies a modification to the member map. + + The member map. + + + + A post processing convention that wraps a delegate. + + + + + Initializes a new instance of the class. + + The name. + The delegate. + + + + Applies a post processing modification to the class map. + + The class map. + + + + Represents a discriminator convention where the discriminator is an array of all the discriminators provided by the class maps of the root class down to the actual type. + + + + + Initializes a new instance of the HierarchicalDiscriminatorConvention class. + + The element name. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + Represents a convention that applies to a BsonClassMap. + + + + + Applies a modification to the class map. + + The class map. + + + + Represents a convention that applies to a BsonCreatorMap. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Represents a convention. + + + + + Gets the name of the convention. + + + + + Represents a grouping of conventions. + + + + + Gets the conventions. + + + + + A convention that sets whether to ignore extra elements encountered during deserialization. + + + + + Initializes a new instance of the class. + + Whether to ignore extra elements encountered during deserialization. + + + + Applies a modification to the class map. + + The class map. + + + + A convention that sets whether to ignore default values during serialization. + + + + + Initializes a new instance of the class. + + Whether to ignore default values during serialization. + + + + Applies a modification to the member map. + + The member map. + + + + A convention that sets whether to ignore nulls during serialization. + + + + + Initializes a new instance of the class. + + Whether to ignore nulls during serialization. + + + + Applies a modification to the member map. + + The member map. + + + + Represents a convention that applies to a BsonMemberMap. + + + + + Applies a modification to the member map. + + The member map. + + + + Represents a post processing convention that applies to a BsonClassMap. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + A convention that looks up an id generator for the id member. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + A convention that sets the default value for members of a given type. + + + + + Initializes a new instance of the class. + + The type of the member. + The default value for members of this type. + + + + Applies a modification to the member map. + + The member map. + + + + A convention that sets the element name the same as the member name. + + + + + Applies a modification to the member map. + + The member map. + + + + A convention that finds the extra elements member by name (and that is also of type or ). + + + + + Initializes a new instance of the NamedExtraElementsMemberConvention class. + + The name of the extra elements member. + + + + Initializes a new instance of the class. + + The names. + + + + Initializes a new instance of the class. + + The names. + The member types. + + + + Initializes a new instance of the class. + + The names. + The binding flags. + + + + Initializes a new instance of the class. + + The names. + The member types. + The binding flags. + + + + + Applies a modification to the class map. + + The class map. + + + + A convention that finds the id member by name. + + + + + Initializes a new instance of the class. + + The names. + + + + Initializes a new instance of the class. + + The names. + + + + Initializes a new instance of the class. + + The names. + The member types. + + + + Initializes a new instance of the class. + + The names. + The binding flags. + + + + Initializes a new instance of the class. + + The names. + The member types. + The binding flags. + + + + + Applies a modification to the class map. + + The class map. + + + + Maps a fully immutable type. This will include anonymous types. + + + + + + + + A convention that sets a class's IdMember to null. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + Represents the object discriminator convention. + + + + + Initializes a new instance of the ObjectDiscriminatorConvention class. + + The element name. + + + + Gets an instance of the ObjectDiscriminatorConvention. + + + + + Gets the discriminator element name. + + + + + Gets the actual type of an object by reading the discriminator from a BsonReader. + + The reader. + The nominal type. + The actual type. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A convention that finds readable and writeable members and adds them to the class map. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The member types. + + + + Initializes a new instance of the class. + + The binding flags. + + + + Initializes a new instance of the class. + + The member types. + The binding flags. + + + + Applies a modification to the class map. + + The class map. + + + + A convention that resets a class map (resetting any changes that earlier conventions may have applied). + + + + + Applies a modification to the class map. + + The class map. + + + + A convention that resets class members (resetting any changes that earlier conventions may have applied). + + + + + Applies a modification to the member map. + + The member map. + + + + Represents a discriminator convention where the discriminator is provided by the class map of the actual type. + + + + + Initializes a new instance of the ScalarDiscriminatorConvention class. + + The element name. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A convention that allows you to set the Enum serialization representation + + + + + Initializes a new instance of the class. + + The serialization representation. 0 is used to detect representation + from the enum itself. + + + + Gets the representation. + + + + + Applies a modification to the member map. + + The member map. + + + + Represents the standard discriminator conventions (see ScalarDiscriminatorConvention and HierarchicalDiscriminatorConvention). + + + + + Initializes a new instance of the StandardDiscriminatorConvention class. + + The element name. + + + + Gets an instance of the ScalarDiscriminatorConvention. + + + + + Gets an instance of the HierarchicalDiscriminatorConvention. + + + + + Gets the discriminator element name. + + + + + Gets the actual type of an object by reading the discriminator from a BsonReader. + + The reader. + The nominal type. + The actual type. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A convention that sets the id generator for a string member with a BSON representation of ObjectId. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + Represents a discriminator convention. + + + + + Gets the discriminator element name. + + + + + Gets the actual type of an object by reading the discriminator from a BsonReader. + + The reader. + The nominal type. + The actual type. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A helper class used to create and compile delegates for creator maps. + + + + + Creates and compiles a delegate that calls a constructor. + + The constructor. + A delegate that calls the constructor. + + + + Creates and compiles a delegate from a lambda expression. + + The type of the class. + The lambda expression. + The arguments for the delegate's parameters. + A delegate. + + + + Creates and compiles a delegate that calls a factory method. + + the method. + A delegate that calls the factory method. + + + + Visits a MemberExpression. + + The MemberExpression. + The MemberExpression (possibly modified). + + + + Visits a ParameterExpression. + + The ParameterExpression. + The ParameterExpression (possibly modified). + + + + An abstract base class for an Expression visitor. + + + + + Initializes a new instance of the ExpressionVisitor class. + + + + + Visits an Expression. + + The Expression. + The Expression (posibly modified). + + + + Visits an Expression list. + + The Expression list. + The Expression list (possibly modified). + + + + Visits a BinaryExpression. + + The BinaryExpression. + The BinaryExpression (possibly modified). + + + + Visits a ConditionalExpression. + + The ConditionalExpression. + The ConditionalExpression (possibly modified). + + + + Visits a ConstantExpression. + + The ConstantExpression. + The ConstantExpression (possibly modified). + + + + Visits an ElementInit. + + The ElementInit. + The ElementInit (possibly modified). + + + + Visits an ElementInit list. + + The ElementInit list. + The ElementInit list (possibly modified). + + + + Visits an InvocationExpression. + + The InvocationExpression. + The InvocationExpression (possibly modified). + + + + Visits a LambdaExpression. + + The LambdaExpression. + The LambdaExpression (possibly modified). + + + + Visits a ListInitExpression. + + The ListInitExpression. + The ListInitExpression (possibly modified). + + + + Visits a MemberExpression. + + The MemberExpression. + The MemberExpression (possibly modified). + + + + Visits a MemberAssignment. + + The MemberAssignment. + The MemberAssignment (possibly modified). + + + + Visits a MemberBinding. + + The MemberBinding. + The MemberBinding (possibly modified). + + + + Visits a MemberBinding list. + + The MemberBinding list. + The MemberBinding list (possibly modified). + + + + Visits a MemberInitExpression. + + The MemberInitExpression. + The MemberInitExpression (possibly modified). + + + + Visits a MemberListBinding. + + The MemberListBinding. + The MemberListBinding (possibly modified). + + + + Visits a MemberMemberBinding. + + The MemberMemberBinding. + The MemberMemberBinding (possibly modified). + + + + Visits a MethodCallExpression. + + The MethodCallExpression. + The MethodCallExpression (possibly modified). + + + + Visits a NewExpression. + + The NewExpression. + The NewExpression (possibly modified). + + + + Visits a NewArrayExpression. + + The NewArrayExpression. + The NewArrayExpression (possibly modified). + + + + Visits a ParameterExpression. + + The ParameterExpression. + The ParameterExpression (possibly modified). + + + + Visits a TypeBinaryExpression. + + The TypeBinaryExpression. + The TypeBinaryExpression (possibly modified). + + + + Visits a UnaryExpression. + + The UnaryExpression. + The UnaryExpression (possibly modified). + + + + Default, global implementation of an . + + + + + Initializes a new instance of the class. + + + + + Gets the serializer for the specified . + + The type. + + The serializer. + + + + + Gets the serializer for the specified . + + + + The serializer. + + + + + Registers the serializer. + + The type. + The serializer. + + + + Registers the serialization provider. This behaves like a stack, so the + last provider registered is the first provider consulted. + + The serialization provider. + + + + Represents a dictionary serializer that can be used in LINQ queries. + + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + An interface implemented by a polymorphic serializer. + + + + + Gets a value indicating whether this serializer's discriminator is compatible with the object serializer. + + + true if this serializer's discriminator is compatible with the object serializer; otherwise, false. + + + + + A serializer registry. + + + + + Gets the serializer for the specified . + + The type. + The serializer. + + + + Gets the serializer for the specified . + + + The serializer. + + + + Represents a serializer that has a child serializer that configuration attributes can be forwarded to. + + + + + Gets the child serializer. + + + The child serializer. + + + + + Returns a serializer that has been reconfigured with the specified child serializer. + + The child serializer. + The reconfigured serializer. + + + + A GUID generator that generates GUIDs in ascending order. To enable + an index to make use of the ascending nature make sure to use + GuidRepresentation.Standard + as the storage representation. + Internally the GUID is of the form + 8 bytes: Ticks from DateTime.UtcNow.Ticks + 3 bytes: hash of machine name + 2 bytes: low order bytes of process Id + 3 bytes: increment + + + + + Gets an instance of AscendingGuidGenerator. + + + + + Generates an ascending Guid for a document. Consecutive invocations + should generate Guids that are ascending from a MongoDB perspective + + The container of the document (will be a + MongoCollection when called from the driver). + The document it was generated for. + A Guid. + + + + Generates a Guid for a document. Note - this is purely used for + unit testing + + The time portion of the Guid + A 5 byte array with the first 3 bytes + representing a machine id and the next 2 representing a process + id + The increment portion of the Guid. Used + to distinguish between 2 Guids that have the timestamp. Note + only the least significant 3 bytes are used. + A Guid. + + + + Tests whether an id is empty. + + The id to test. + True if the Id is empty. False otherwise + + + + Gets the current process id. This method exists because of how + CAS operates on the call stack, checking for permissions before + executing the method. Hence, if we inlined this call, the calling + method would not execute before throwing an exception requiring the + try/catch at an even higher level that we don't necessarily control. + + + + + Represents an Id generator for Guids stored in BsonBinaryData values. + + + + + Initializes a new instance of the BsonBinaryDataGuidGenerator class. + + The GuidRepresentation to use when generating new Id values. + + + + Gets an instance of BsonBinaryDataGuidGenerator for CSharpLegacy GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for JavaLegacy GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for PythonLegacy GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for Standard GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for Unspecifed GuidRepresentation. + + + + + Gets the instance of BsonBinaryDataGuidGenerator for a GuidRepresentation. + + The GuidRepresentation. + The instance of BsonBinaryDataGuidGenerator for a GuidRepresentation. + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for BsonObjectIds. + + + + + Initializes a new instance of the BsonObjectIdGenerator class. + + + + + Gets an instance of ObjectIdGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for Guids using the COMB algorithm. + + + + + Initializes a new instance of the CombGuidGenerator class. + + + + + Gets an instance of CombGuidGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Create a new CombGuid from a given Guid and timestamp. + + The base Guid. + The timestamp. + A new CombGuid created by combining the base Guid with the timestamp. + + + + Represents an Id generator for Guids. + + + + + Initializes a new instance of the GuidGenerator class. + + + + + Gets an instance of GuidGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator that only checks that the Id is not null. + + + + + Initializes a new instance of the NullIdChecker class. + + + + + Gets an instance of NullIdChecker. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for ObjectIds. + + + + + Initializes a new instance of the ObjectIdGenerator class. + + + + + Gets an instance of ObjectIdGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for ObjectIds represented internally as strings. + + + + + Initializes a new instance of the StringObjectIdGenerator class. + + + + + Gets an instance of StringObjectIdGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator that only checks that the Id is not all zeros. + + The type of the Id. + + + + Initializes a new instance of the ZeroIdChecker class. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents a serializer that has a DictionaryRepresentation property. + + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Represents a serializer that has a DictionaryRepresentation property. + + The type of the serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Represents a serializer that has a Representation property. + + + + + Gets the representation. + + + The representation. + + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer that has a Representation property. + + The type of the serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer that has a representation converter. + + + + + Gets the converter. + + + The converter. + + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Represents a serializer that has a representation converter. + + The type of the serializer. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Represents the representation to use for dictionaries. + + + + + Represent the dictionary as a Document. + + + + + Represent the dictionary as an array of arrays. + + + + + Represent the dictionary as an array of documents. + + + + + Represents the external representation of a field or property. + + + + + Initializes a new instance of the RepresentationConverter class. + + Whether to allow overflow. + Whether to allow truncation. + + + + Gets whether to allow overflow. + + + + + Gets whether to allow truncation. + + + + + Converts a Decimal128 to a Decimal. + + A Decimal128. + A Decimal. + + + + Converts a Double to a Decimal. + + A Double. + A Decimal. + + + + Converts an Int32 to a Decimal. + + An Int32. + A Decimal. + + + + Converts an Int64 to a Decimal. + + An Int64. + A Decimal. + + + + Converts a decimal to a Decimal128. + + A decimal. + A Decimal128. + + + + Converts a Double to a Decimal128. + + A Double. + A Decimal128. + + + + Converts an Int32 to a Decimal128. + + An Int32. + A Decimal128. + + + + Converts an Int64 to a Decimal128. + + An Int64. + A Decimal128. + + + + Converts a UInt64 to a Decimal128. + + A UInt64. + A Decimal128. + + + + Converts a Decimal to a Double. + + A Decimal. + A Double. + + + + Converts a Decimal128 to a Double. + + A Decimal. + A Double. + + + + Converts a Double to a Double. + + A Double. + A Double. + + + + Converts a Single to a Double. + + A Single. + A Double. + + + + Converts an Int32 to a Double. + + An Int32. + A Double. + + + + Converts an Int64 to a Double. + + An Int64. + A Double. + + + + Converts an Int16 to a Double. + + An Int16. + A Double. + + + + Converts a UInt32 to a Double. + + A UInt32. + A Double. + + + + Converts a UInt64 to a Double. + + A UInt64. + A Double. + + + + Converts a UInt16 to a Double. + + A UInt16. + A Double. + + + + Converts a Decimal128 to an Int16. + + A Decimal128. + An Int16. + + + + Converts a Double to an Int16. + + A Double. + An Int16. + + + + Converts an Int32 to an Int16. + + An Int32. + An Int16. + + + + Converts an Int64 to an Int16. + + An Int64. + An Int16. + + + + Converts a Decimal to an Int32. + + A Decimal. + An Int32. + + + + Converts a Decimal128 to an Int32. + + A Decimal128. + An Int32. + + + + Converts a Double to an Int32. + + A Double. + An Int32. + + + + Converts a Single to an Int32. + + A Single. + An Int32. + + + + Converts an Int32 to an Int32. + + An Int32. + An Int32. + + + + Converts an Int64 to an Int32. + + An Int64. + An Int32. + + + + Converts an Int16 to an Int32. + + An Int16. + An Int32. + + + + Converts a UInt32 to an Int32. + + A UInt32. + An Int32. + + + + Converts a UInt64 to an Int32. + + A UInt64. + An Int32. + + + + Converts a UInt16 to an Int32. + + A UInt16. + An Int32. + + + + Converts a Decimal to an Int64. + + A Decimal. + An Int64. + + + + Converts a Decimal128 to an Int64. + + A Decimal128. + An Int64. + + + + Converts a Double to an Int64. + + A Double. + An Int64. + + + + Converts a Single to an Int64. + + A Single. + An Int64. + + + + Converts an Int32 to an Int64. + + An Int32. + An Int64. + + + + Converts an Int64 to an Int64. + + An Int64. + An Int64. + + + + Converts an Int16 to an Int64. + + An Int16. + An Int64. + + + + Converts a UInt32 to an Int64. + + A UInt32. + An Int64. + + + + Converts a UInt64 to an Int64. + + A UInt64. + An Int64. + + + + Converts a UInt16 to an Int64. + + A UInt16. + An Int64. + + + + Converts a Decimal128 to a Single. + + A Decimal128. + A Single. + + + + Converts a Double to a Single. + + A Double. + A Single. + + + + Converts an Int32 to a Single. + + An Int32. + A Single. + + + + Converts an Int64 to a Single. + + An Int64. + A Single. + + + + Converts a Decimal128 to a UInt16. + + A Decimal128. + A UInt16. + + + + Converts a Double to a UInt16. + + A Double. + A UInt16. + + + + Converts an Int32 to a UInt16. + + An Int32. + A UInt16. + + + + Converts an Int64 to a UInt16. + + An Int64. + A UInt16. + + + + Converts a Decimal128 to a UInt32. + + A Decimal128. + A UInt32. + + + + Converts a Double to a UInt32. + + A Double. + A UInt32. + + + + Converts an Int32 to a UInt32. + + An Int32. + A UInt32. + + + + Converts an Int64 to a UInt32. + + An Int64. + A UInt32. + + + + Converts a Decimal128 to a UInt64. + + A Decimal128. + A UInt64. + + + + Converts a Double to a UInt64. + + A Double. + A UInt64. + + + + Converts an Int32 to a UInt64. + + An Int32. + A UInt64. + + + + Converts an Int64 to a UInt64. + + An Int64. + A UInt64. + + + + Represents the units a TimeSpan is serialized in. + + + + + Use ticks as the units. + + + + + Use days as the units. + + + + + Use hours as the units. + + + + + Use minutes as the units. + + + + + Use seconds as the units. + + + + + Use milliseconds as the units. + + + + + Use microseconds as the units. + + + + + Use nanoseconds as the units. + + + + + Provides a serializer for interfaces. + + + + + + + + Provides serializers for primitive types. + + + + + + + + Base class for serialization providers. + + + + + + + + + + + Creates the serializer from a serializer type definition and type arguments. + + The serializer type definition. + The type arguments. + A serializer. + + + + Creates the serializer from a serializer type definition and type arguments. + + The serializer type definition. + The type arguments. + The serializer registry. + + A serializer. + + + + + Creates the serializer. + + The serializer type. + A serializer. + + + + Creates the serializer. + + The serializer type. + The serializer registry. + + A serializer. + + + + + Represents a serializer for an abstract class. + + The type of the class. + + + + Represents a serializer for BitArrays. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Booleans. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for BsonArrays. + + + + + Initializes a new instance of the BsonArraySerializer class. + + + + + Gets an instance of the BsonArraySerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonBinaryDatas. + + + + + Initializes a new instance of the BsonBinaryDataSerializer class. + + + + + Gets an instance of the BsonBinaryDataSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonDecimal128s. + + + + + Initializes a new instance of the BsonBooleanSerializer class. + + + + + Gets an instance of the BsonBooleanSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonBooleans. + + + + + Initializes a new instance of the BsonBooleanSerializer class. + + + + + Gets an instance of the BsonBooleanSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for Decimal128s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for a class that implements . + + The type of the dictionary. + The type of the key. + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation and key value serializers. + + The dictionary representation. + The key serializer. + The value serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified key serializer. + + The key serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified value serializer. + + The value serializer. + The reconfigured serializer. + + + + + + + + + + A serializer that serializes a document and appends elements to the end of it. + + The type of the document. + + + + + Initializes a new instance of the class. + + The document serializer. + The elements to append. + The writer settings configurator. + + + + + + + + + + + + + Represents a serializer for a BsonDocument with some parts raw. + + + + + Initializes a new instance of the class. + + The name. + The raw serializer. + + + + + + + Wraps a serializer and projects using a function. + + The type of from. + The type of to. + + + + Initializes a new instance of the class. + + From serializer. + The projector. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Represents a helper for serializers. + + + + + Initializes a new instance of the class. + + The members. + + + + Deserializes the members. + + The deserialization context. + The member handler. + The found member flags. + + + + Represents information about a member. + + + + + Initializes a new instance of the class. + + The name of the element. + The flag. + Whether the member is optional. + + + + Gets the flag. + + + The flag. + + + + + Gets the name of the element. + + + The name of the element. + + + + + Gets a value indicating whether this member is optional. + + Whether this member is optional. + + + + Represents a serializer that serializes values as a discriminator/value pair. + + The type of the value. + + + + Initializes a new instance of the class. + + The discriminator convention. + The wrapped serializer. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Determines whether the reader is positioned at a discriminated wrapper. + + The context. + True if the reader is positioned at a discriminated wrapper. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents an abstract base class for serializers. + + The type of the value. + + + + Gets the type of the values. + + + The type of the values. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Creates an exception to throw when a type cannot be deserialized. + + An exception. + + + + Creates an exception to throw when a type cannot be deserialized. + + An exception. + + + + Creates an exception to throw when a type cannot be deserialized from a BsonType. + + The BSON type. + An exception. + + + + Ensures that the BsonType equals the expected type. + + The reader. + The expected type. + + + + Represents an abstract base class for sealed class serializers. + + The type of the value. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value of type {TValue}. + + The serialization context. + The serialization args. + The value. + + + + Represents an abstract base class for struct serializers. + + The type of the value. + + + + Represents a serializer for a BsonValue that can round trip C# null. + + The type of the BsonValue. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for a BsonValue that can round trip C# null and implements IBsonArraySerializer and IBsonDocumentSerializer. + + The type of the bson value. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + The serialization info for the items. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Represents a serializer for a BsonValue that can round trip C# null and implements IBsonArraySerializer. + + The type of the bson value. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Represents a serializer for a BsonValue that can round trip C# null and implements IBsonDocumentSerializer. + + The type of the bson value. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Represents a serializer for BsonDateTimes. + + + + + Initializes a new instance of the BsonDateTimeSerializer class. + + + + + Gets an instance of the BsonDateTimeSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonDocuments. + + + + + Initializes a new instance of the BsonDocumentSerializer class. + + + + + Gets an instance of the BsonDocumentSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Gets the document Id. + + The document. + The Id. + The nominal type of the Id. + The IdGenerator for the Id type. + True if the document has an Id. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Sets the document Id. + + The document. + The Id. + + + + Represents a serializer for BsonDocumentWrappers. + + + + + Initializes a new instance of the BsonDocumentWrapperSerializer class. + + + + + Gets an instance of the BsonDocumentWrapperSerializer class. + + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + An object. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonDoubles. + + + + + Initializes a new instance of the BsonDoubleSerializer class. + + + + + Gets an instance of the BsonDoubleSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonInt32s. + + + + + Initializes a new instance of the BsonInt32Serializer class. + + + + + Gets an instance of the BsonInt32Serializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonInt64s. + + + + + Initializes a new instance of the BsonInt64Serializer class. + + + + + Gets an instance of the BsonInt64Serializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonJavaScripts. + + + + + Initializes a new instance of the BsonJavaScriptSerializer class. + + + + + Gets an instance of the BsonJavaScriptSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonJavaScriptWithScopes. + + + + + Initializes a new instance of the BsonJavaScriptWithScopeSerializer class. + + + + + Gets an instance of the BsonJavaScriptWithScopeSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonMaxKeys. + + + + + Initializes a new instance of the BsonMaxKeySerializer class. + + + + + Gets an instance of the BsonMaxKeySerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonMinKeys. + + + + + Initializes a new instance of the BsonMinKeySerializer class. + + + + + Gets an instance of the BsonMinKeySerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonNulls. + + + + + Initializes a new instance of the BsonNullSerializer class. + + + + + Gets an instance of the BsonNullSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonObjectIds. + + + + + Initializes a new instance of the BsonObjectIdSerializer class. + + + + + Gets an instance of the BsonObjectIdSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonRegularExpressions. + + + + + Initializes a new instance of the BsonRegularExpressionSerializer class. + + + + + Gets an instance of the BsonRegularExpressionSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonStrings. + + + + + Initializes a new instance of the BsonStringSerializer class. + + + + + Gets an instance of the BsonStringSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonSymbols. + + + + + Initializes a new instance of the BsonSymbolSerializer class. + + + + + Gets an instance of the BsonSymbolSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonTimestamps. + + + + + Initializes a new instance of the BsonTimestampSerializer class. + + + + + Gets an instance of the BsonTimestampSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonUndefineds. + + + + + Initializes a new instance of the BsonUndefinedSerializer class. + + + + + Gets an instance of the BsonUndefinedSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonValues. + + + + + Initializes a new instance of the BsonValueSerializer class. + + + + + Gets an instance of the BsonValueSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a base class for BsonValue serializers. + + The type of the BsonValue. + + + + Initializes a new instance of the class. + + The Bson type. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for ByteArrays. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Bytes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Chars. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for CultureInfos. + + + + + Initializes a new instance of the CultureInfoSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for DateTimeOffsets. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for DateTimes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + if set to true [date only]. + + + + Initializes a new instance of the class. + + if set to true [date only]. + The representation. + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The kind. + + + + Initializes a new instance of the class. + + The kind. + The representation. + + + + Gets an instance of DateTimeSerializer with DateOnly=true. + + + + + Gets an instance of DateTimeSerializer with Kind=Local. + + + + + Gets an instance of DateTimeSerializer with Kind=Utc. + + + + + Gets whether this DateTime consists of a Date only. + + + + + Gets the DateTimeKind (Local, Unspecified or Utc). + + + + + Gets the external representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified dateOnly value. + + if set to true the values will be required to be Date's only (zero time component). + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified dateOnly value and representation. + + if set to true the values will be required to be Date's only (zero time component). + The representation. + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified DateTimeKind value. + + The DateTimeKind. + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified DateTimeKind value and representation. + + The DateTimeKind. + The representation. + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Decimals. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for a class that implements IDictionary. + + The type of the dictionary. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation and key value serializers. + + The dictionary representation. + The key serializer. + The value serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified key serializer. + + The key serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified value serializer. + + The value serializer. + The reconfigured serializer. + + + + Creates the instance. + + The instance. + + + + Represents a serializer for a class that implements . + + The type of the dictionary. + The type of the key. + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation and key value serializers. + + The dictionary representation. + The key serializer. + The value serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified key serializer. + + The key serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified value serializer. + + The value serializer. + The reconfigured serializer. + + + + + + + Represents a serializer for dictionaries. + + The type of the dictionary. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Creates the instance. + + The instance. + + + + Represents a serializer for dictionaries. + + The type of the dictionary. + The type of the keys. + The type of the values. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Initializes a new instance of the class. + + The dictionary representation. + The serializer registry. + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Creates an accumulator. + + The accumulator. + + + + Creates the instance. + + The instance. + + + + Finalizes an accumulator. + + The accumulator to finalize + The instance. + + + + Represents a serializer for Interfaces. + + The type of the interface. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The discriminator convention. + interfaceType + interfaceType + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The document. + + + + Represents a serializer for Doubles. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Base serializer for dynamic types. + + The dynamic type. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Configures the deserialization context. + + The builder. + + + + Configures the serialization context. + + The builder. + + + + Creates the document. + + A + + + + Sets the value for the member. + + The document. + Name of the member. + The value. + + + + Tries to get the value for a member. Returns true if the member should be serialized. + + The document. + Name of the member. + The value. + true if the member should be serialized; otherwise false. + + + + Represents a serializer for a class that implements IEnumerable. + + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Creates the accumulator. + + The accumulator. + + + + Represents a serializer for a class that implementes . + + The type of the value. + The type of the item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Creates the accumulator. + + The accumulator. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for enumerable values. + + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Adds the item. + + The accumulator. + The item. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for enumerable values. + + The type of the value. + The type of the items. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Adds the item. + + The accumulator. + The item. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a base serializer for enumerable values. + + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for enumerable values. + + The type of the value. + The type of the items. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + The serialization info for the items. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Serializer for . + + + The use of will serialize any without type information. + To get the best experience out of using an , any member wanting to be used + as an array should use . + + + + + Initializes a new instance of the class. + + + + + Configures the deserialization context. + + The builder. + + + + Configures the serialization context. + + The builder. + + + + Creates the document. + + + A . + + + + + Sets the value for the member. + + The document. + Name of the member. + The value. + + + + Tries to get the value for a member. Returns true if the member should be serialized. + + The value. + Name of the member. + The member value. + true if the member should be serialized; otherwise false. + + + + Represents a serializer for Guids. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Interfaces. + + The type of the interface. + The type of the implementation. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The implementation serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + + Gets the key serializer. + + + The key serializer. + + + + + + Gets the implementation serializer. + + + The implementation serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The document. + + + + Returns a serializer that has been reconfigured with the specified implementation serializer. + + The implementation serializer. + + The reconfigured serializer. + + + + + Represents a serializer for Int16s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Int32. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Int64s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for IPAddresses. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for IPEndPoints. + + + + + Initializes a new instance of the IPEndPointSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for KeyValuePairs. + + The type of the keys. + The type of the values. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The key serializer. + The value serializer. + + + + Initializes a new instance of the class. + + The representation. + The serializer registry. + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the representation. + + + The representation. + + + + + Gets the value serializer. + + + The value serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + + + + Represents a serializer for LazyBsonArrays. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for LazyBsonDocuments. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for nullable values. + + The underlying type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified serializer. + + The serializer. + + The reconfigured serializer. + + + + + Represents a serializer for ObjectIds. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for objects. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The discriminator convention. + discriminatorConvention + + + + Gets the standard instance. + + + The standard instance. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents an abstract base class for class serializers. + + The type of the value. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Gets the actual type. + + The context. + The actual type. + + + + Serializes a value of type {TValue}. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for enums. + + The type of the enum. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for one-dimensional arrays. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for Queues. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items. + + The value. + The items. + + + + Finalizes the result. + + The instance. + The result. + + + + Represents a serializer for Queues. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for RawBsonArrays. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for RawBsonDocuments. + + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + The instance. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for readonly collection. + + The type of the item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Creates the accumulator. + + The accumulator. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for a subclass of ReadOnlyCollection. + + The type of the value. + The type of the item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Creates the accumulator. + + The accumulator. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for SBytes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for a class that will be serialized as if it were one of its base classes. + + The actual type. + The nominal type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The base class serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for Singles. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Stacks. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for Stacks. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for Strings. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for three-dimensional arrays. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Represents a serializer for Timespans. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The units. + + + + Gets the representation. + + + The representation. + + + + + Gets the units. + + + The units. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation and units. + + The representation. + The units. + + The reconfigured serializer. + + + + + Represents a serializer for a . + + The type of item 1. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + The type of item 6. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + The Item6 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Gets the Item6 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + The type of item 6. + The type of item 7. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + The Item6 serializer. + The Item7 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Gets the Item6 serializer. + + + + + Gets the Item7 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + The type of item 6. + The type of item 7. + The type of the rest item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + The Item6 serializer. + The Item7 serializer. + The Rest serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Gets the Item6 serializer. + + + + + Gets the Item7 serializer. + + + + + Gets the Rest serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for two-dimensional arrays. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Represents a serializer for UInt16s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for UInt32s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for UInt64s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for interfaces and base classes that delegates to the actual type interface without writing a discriminator. + + Type type of the value. + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + The instance. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The document. + + + + Represents a serializer for Uris. + + + + + Initializes a new instance of the UriSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for Versions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Extensions methods for IBsonSerializer. + + + + + Deserializes a value. + + The serializer. + The deserialization context. + A deserialized value. + + + + Deserializes a value. + + The type that this serializer knows how to serialize. + The serializer. + The deserialization context. + A deserialized value. + + + + Serializes a value. + + The serializer. + The serialization context. + The value. + + + + Serializes a value. + + The type that this serializer knows how to serialize. + The serializer. + The serialization context. + The value. + + + + Converts a value to a BsonValue by serializing it. + + The serializer. + The value. + The serialized value. + + + + Converts a value to a BsonValue by serializing it. + + The type of the value. + The serializer. + The value. + The serialized value. + + + + Represents a serializer for TClass (a subclass of BsonDocumentBackedClass). + + The subclass of BsonDocumentBackedClass. + + + + Initializes a new instance of the class. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + + + + Registers a member. + + The member name. + The element name. + The serializer. + + + + + + + Creates the instance. + + The backing document. + An instance of TClass. + + + + Contract for serializers to implement if they serialize an array of items. + + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Contract for serializers that can get and set Id values. + + + + + Gets the document Id. + + The document. + The Id. + The nominal type of the Id. + The IdGenerator for the Id type. + True if the document has an Id. + + + + Sets the document Id. + + The document. + The Id. + + + + Contract for composite serializers that contain a number of named serializers. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + true if the serialization info exists; otherwise false. + + + + Represents the information needed to serialize a member. + + + + + Initializes a new instance of the BsonSerializationInfo class. + + The element name. + The serializer. + The nominal type. + + + + Gets or sets the dotted element name. + + + + + Gets or sets the serializer. + + + + + Gets or sets the nominal type. + + + + + Deserializes the value. + + The value. + A deserialized value. + + + + Merges the new BsonSerializationInfo by taking its properties and concatenating its ElementName. + + The new info. + A new BsonSerializationInfo. + + + + Serializes the value. + + The value. + The serialized value. + + + + Serializes the values. + + The values. + The serialized values. + + + + Creates a new BsonSerializationInfo object using the elementName provided and copying all other attributes. + + Name of the element. + A new BsonSerializationInfo. + + + + Represents a mapping between a class and a BSON document. + + + + + Initializes a new instance of the BsonClassMap class. + + The class type. + + + + Initializes a new instance of the class. + + Type of the class. + The base class map. + + + + Gets all the member maps (including maps for inherited members). + + + + + Gets the base class map. + + + + + Gets the class type. + + + + + Gets the constructor maps. + + + + + Gets the conventions used for auto mapping. + + + + + Gets the declared member maps (only for members declared in this class). + + + + + Gets the discriminator. + + + + + Gets whether a discriminator is required when serializing this class. + + + + + Gets the member map of the member used to hold extra elements. + + + + + Gets whether this class map has any creator maps. + + + + + Gets whether this class has a root class ancestor. + + + + + Gets the Id member map (null if none). + + + + + Gets whether extra elements should be ignored when deserializing. + + + + + Gets whether the IgnoreExtraElements value should be inherited by derived classes. + + + + + Gets whether this class is anonymous. + + + + + Gets whether the class map is frozen. + + + + + Gets whether this class is a root class. + + + + + Gets the known types of this class. + + + + + Gets the element name to member index trie. + + + + + Gets the member index of the member used to hold extra elements. + + + + + Gets the type of a member. + + The member info. + The type of the member. + + + + Gets all registered class maps. + + All registered class maps. + + + + Checks whether a class map is registered for a type. + + The type to check. + True if there is a class map registered for the type. + + + + Looks up a class map (will AutoMap the class if no class map is registered). + + The class type. + The class map. + + + + Creates and registers a class map. + + The class. + The class map. + + + + Creates and registers a class map. + + The class. + The class map initializer. + The class map. + + + + Registers a class map. + + The class map. + + + + Automaps the class. + + + + + Creates an instance of the class. + + An object. + + + + Freezes the class map. + + The frozen class map. + + + + Gets a member map (only considers members declared in this class). + + The member name. + The member map (or null if the member was not found). + + + + Gets the member map for a BSON element. + + The name of the element. + The member map. + + + + Creates a creator map for a constructor and adds it to the class map. + + The constructor info. + The creator map (so method calls can be chained). + + + + Creates a creator map for a constructor and adds it to the class map. + + The constructor info. + The argument names. + The creator map (so method calls can be chained). + + + + Creates a creator map and adds it to the class. + + The delegate. + The factory method map (so method calls can be chained). + + + + Creates a creator map and adds it to the class. + + The delegate. + The argument names. + The factory method map (so method calls can be chained). + + + + Creates a member map for the extra elements field and adds it to the class map. + + The name of the extra elements field. + The member map (so method calls can be chained). + + + + Creates a member map for the extra elements member and adds it to the class map. + + The member info for the extra elements member. + The member map (so method calls can be chained). + + + + Creates a member map for the extra elements property and adds it to the class map. + + The name of the property. + The member map (so method calls can be chained). + + + + Creates a creator map for a factory method and adds it to the class. + + The method info. + The creator map (so method calls can be chained). + + + + Creates a creator map for a factory method and adds it to the class. + + The method info. + The argument names. + The creator map (so method calls can be chained). + + + + Creates a member map for a field and adds it to the class map. + + The name of the field. + The member map (so method calls can be chained). + + + + Creates a member map for the Id field and adds it to the class map. + + The name of the Id field. + The member map (so method calls can be chained). + + + + Creates a member map for the Id member and adds it to the class map. + + The member info for the Id member. + The member map (so method calls can be chained). + + + + Creates a member map for the Id property and adds it to the class map. + + The name of the Id property. + The member map (so method calls can be chained). + + + + Creates a member map for a member and adds it to the class map. + + The member info. + The member map (so method calls can be chained). + + + + Creates a member map for a property and adds it to the class map. + + The name of the property. + The member map (so method calls can be chained). + + + + Resets the class map back to its initial state. + + + + + Sets the creator for the object. + + The creator. + The class map (so method calls can be chained). + + + + Sets the discriminator. + + The discriminator. + + + + Sets whether a discriminator is required when serializing this class. + + Whether a discriminator is required. + + + + Sets the member map of the member used to hold extra elements. + + The extra elements member map. + + + + Adds a known type to the class map. + + The known type. + + + + Sets the Id member. + + The Id member (null if none). + + + + Sets whether extra elements should be ignored when deserializing. + + Whether extra elements should be ignored when deserializing. + + + + Sets whether the IgnoreExtraElements value should be inherited by derived classes. + + Whether the IgnoreExtraElements value should be inherited by derived classes. + + + + Sets whether this class is a root class. + + Whether this class is a root class. + + + + Removes a creator map for a constructor from the class map. + + The constructor info. + + + + Removes a creator map for a factory method from the class map. + + The method info. + + + + Removes the member map for a field from the class map. + + The name of the field. + + + + Removes a member map from the class map. + + The member info. + + + + Removes the member map for a property from the class map. + + The name of the property. + + + + Gets the discriminator convention for the class. + + The discriminator convention for the class. + + + + Represents a mapping between a class and a BSON document. + + The class. + + + + Initializes a new instance of the BsonClassMap class. + + + + + Initializes a new instance of the BsonClassMap class. + + The class map initializer. + + + + Creates an instance. + + An instance. + + + + Gets a member map. + + The member type. + A lambda expression specifying the member. + The member map. + + + + Creates a creator map and adds it to the class map. + + Lambda expression specifying the creator code and parameters to use. + The member map. + + + + Creates a member map for the extra elements field and adds it to the class map. + + The member type. + A lambda expression specifying the extra elements field. + The member map. + + + + Creates a member map for the extra elements member and adds it to the class map. + + The member type. + A lambda expression specifying the extra elements member. + The member map. + + + + Creates a member map for the extra elements property and adds it to the class map. + + The member type. + A lambda expression specifying the extra elements property. + The member map. + + + + Creates a member map for a field and adds it to the class map. + + The member type. + A lambda expression specifying the field. + The member map. + + + + Creates a member map for the Id field and adds it to the class map. + + The member type. + A lambda expression specifying the Id field. + The member map. + + + + Creates a member map for the Id member and adds it to the class map. + + The member type. + A lambda expression specifying the Id member. + The member map. + + + + Creates a member map for the Id property and adds it to the class map. + + The member type. + A lambda expression specifying the Id property. + The member map. + + + + Creates a member map and adds it to the class map. + + The member type. + A lambda expression specifying the member. + The member map. + + + + Creates a member map for the Id property and adds it to the class map. + + The member type. + A lambda expression specifying the Id property. + The member map. + + + + Removes the member map for a field from the class map. + + The member type. + A lambda expression specifying the field. + + + + Removes a member map from the class map. + + The member type. + A lambda expression specifying the member. + + + + Removes a member map for a property from the class map. + + The member type. + A lambda expression specifying the property. + + + + Represents a serializer for a class map. + + The type of the class. + + + + Initializes a new instance of the BsonClassMapSerializer class. + + The class map. + + + + Gets a value indicating whether this serializer's discriminator is compatible with the object serializer. + + + true if this serializer's discriminator is compatible with the object serializer; otherwise, false. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Deserializes a value. + + The deserialization context. + A deserialized value. + + + + Gets the document Id. + + The document. + The Id. + The nominal type of the Id. + The IdGenerator for the Id type. + True if the document has an Id. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Sets the document Id. + + The document. + The Id. + + + + Represents the mapping between a field or property and a BSON element. + + + + + Initializes a new instance of the BsonMemberMap class. + + The class map this member map belongs to. + The member info. + + + + Gets the class map that this member map belongs to. + + + + + Gets the name of the member. + + + + + Gets the type of the member. + + + + + Gets whether the member type is a BsonValue. + + + + + Gets the name of the element. + + + + + Gets the serialization order. + + + + + Gets the member info. + + + + + Gets the getter function. + + + + + Gets the setter function. + + + + + Gets the Id generator. + + + + + Gets whether a default value was specified. + + + + + Gets whether an element is required for this member when deserialized. + + + + + Gets the method that will be called to determine whether the member should be serialized. + + + + + Gets whether default values should be ignored when serialized. + + + + + Gets whether null values should be ignored when serialized. + + + + + Gets the default value. + + + + + Gets whether the member is readonly. + + + Readonly indicates that the member is written to the database, but not read from the database. + + + + + Applies the default value to the member of an object. + + The object. + + + + Freezes this instance. + + + + + Gets the serializer. + + The serializer. + + + + Resets the member map back to its initial state. + + The member map. + + + + Sets the default value creator. + + The default value creator (note: the supplied delegate must be thread safe). + The member map. + + + + Sets the default value. + + The default value. + The member map. + + + + Sets the name of the element. + + The name of the element. + The member map. + + + + Sets the Id generator. + + The Id generator. + The member map. + + + + Sets whether default values should be ignored when serialized. + + Whether default values should be ignored when serialized. + The member map. + + + + Sets whether null values should be ignored when serialized. + + Wether null values should be ignored when serialized. + The member map. + + + + Sets whether an element is required for this member when deserialized + + Whether an element is required for this member when deserialized + The member map. + + + + Sets the serialization order. + + The serialization order. + The member map. + + + + Sets the serializer. + + The serializer. + + The member map. + + serializer + serializer + + + + Sets the method that will be called to determine whether the member should be serialized. + + The method. + The member map. + + + + Determines whether a value should be serialized + + The object. + The value. + True if the value should be serialized. + + + + A static class that represents the BSON serialization functionality. + + + + + Gets the serializer registry. + + + + + Gets or sets whether to use the NullIdChecker on reference Id types that don't have an IdGenerator registered. + + + + + Gets or sets whether to use the ZeroIdChecker on value Id types that don't have an IdGenerator registered. + + + + + Deserializes an object from a BsonDocument. + + The nominal type of the object. + The BsonDocument. + The configurator. + A deserialized value. + + + + Deserializes a value. + + The nominal type of the object. + The BsonReader. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON byte array. + + The nominal type of the object. + The BSON byte array. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON Stream. + + The nominal type of the object. + The BSON Stream. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON string. + + The nominal type of the object. + The JSON string. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON TextReader. + + The nominal type of the object. + The JSON TextReader. + The configurator. + A deserialized value. + + + + Deserializes an object from a BsonDocument. + + The BsonDocument. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes a value. + + The BsonReader. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON byte array. + + The BSON byte array. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON Stream. + + The BSON Stream. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON string. + + The JSON string. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON TextReader. + + The JSON TextReader. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Returns whether the given type has any discriminators registered for any of its subclasses. + + A Type. + True if the type is discriminated. + + + + Looks up the actual type of an object to be deserialized. + + The nominal type of the object. + The discriminator. + The actual type of the object. + + + + Looks up the discriminator convention for a type. + + The type. + A discriminator convention. + + + + Looks up an IdGenerator. + + The Id type. + An IdGenerator for the Id type. + + + + Looks up a serializer for a Type. + + The type. + A serializer for type T. + + + + Looks up a serializer for a Type. + + The Type. + A serializer for the Type. + + + + Registers the discriminator for a type. + + The type. + The discriminator. + + + + Registers the discriminator convention for a type. + + Type type. + The discriminator convention. + + + + Registers a generic serializer definition for a generic type. + + The generic type. + The generic serializer definition. + + + + Registers an IdGenerator for an Id Type. + + The Id Type. + The IdGenerator for the Id Type. + + + + Registers a serialization provider. + + The serialization provider. + + + + Registers a serializer for a type. + + The type. + The serializer. + + + + Registers a serializer for a type. + + The type. + The serializer. + + + + Serializes a value. + + The nominal type of the object. + The BsonWriter. + The object. + The serialization context configurator. + The serialization args. + + + + Serializes a value. + + The BsonWriter. + The nominal type of the object. + The object. + The serialization context configurator. + The serialization args. + + + + An interface implemented by Id generators. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + An interface implemented by a serializer. + + + + + Gets the type of the value. + + + The type of the value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + An interface implemented by a serializer for values of type TValue. + + The type that this serializer knows how to serialize. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + An interface implemented by serialization providers. + + + + + Gets a serializer for a type. + + The type. + A serializer. + + + + An interface implemented by serialization providers that are aware of registries. + + + This interface was added to preserve backward compatability (changing IBsonSerializationProvider would have been a backward breaking change). + + + + + Gets a serializer for a type. + + The type. + The serializer registry. + + A serializer. + + + + + Represents a serialization provider based on a mapping from value types to serializer types. + + + + + Initializes a new instance of the class. + + + + + + + + Registers the serializer mapping. + + The type. + Type of the serializer. + + + + Supports using type names as discriminators. + + + + + Resolves a type name discriminator. + + The type name. + The type if type type name can be resolved; otherwise, null. + + + + Gets a type name to be used as a discriminator (like AssemblyQualifiedName but shortened for common DLLs). + + The type. + The type name. + + + + Represents a truncation exception. + + + + + Initializes a new instance of the TruncationException class. + + + + + Initializes a new instance of the TruncationException class. + + The error message. + + + + Initializes a new instance of the TruncationException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the TruncationException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Represents the BSON undefined value. + + + + + Compares two BsonUndefined values. + + The first BsonUndefined. + The other BsonUndefined. + True if the two BsonUndefined values are not equal according to ==. + + + + Compares two BsonUndefined values. + + The first BsonUndefined. + The other BsonUndefined. + True if the two BsonUndefined values are equal according to ==. + + + + Gets the singleton instance of BsonUndefined. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonUndefined to another BsonUndefined. + + The other BsonUndefined. + A 32-bit signed integer that indicates whether this BsonUndefined is less than, equal to, or greather than the other. + + + + Compares the BsonUndefined to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonUndefined is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonUndefined to another BsonUndefined. + + The other BsonUndefined. + True if the two BsonUndefined values are equal. + + + + Compares this BsonUndefined to another object. + + The other object. + True if the other object is a BsonUndefined and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON internal exception (almost surely the result of a bug). + + + + + Initializes a new instance of the BsonInternalException class. + + + + + Initializes a new instance of the BsonInternalException class. + + The error message. + + + + Initializes a new instance of the BsonInternalException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the BsonInternalException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Represents a BSON serialization exception. + + + + + Initializes a new instance of the BsonSerializationException class. + + + + + Initializes a new instance of the BsonSerializationException class. + + The error message. + + + + Initializes a new instance of the BsonSerializationException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the BsonSerializationException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + An interface implemented by objects that convert themselves to a BsonDocument. + + + + + Converts this object to a BsonDocument. + + A BsonDocument. + + + + Represents a BSON array. + + + + + Initializes a new instance of the BsonArray class. + + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + The initial capacity of the array. + + + + Compares two BsonArray values. + + The first BsonArray. + The other BsonArray. + True if the two BsonArray values are not equal according to ==. + + + + Compares two BsonArray values. + + The first BsonArray. + The other BsonArray. + True if the two BsonArray values are equal according to ==. + + + + Gets the BsonType of this BsonValue. + + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + + + Gets the count of array elements. + + + + + Gets whether the array is read-only. + + + + + Gets the array elements as raw values (see BsonValue.RawValue). + + + + + Gets the array elements. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Creates a new BsonArray. + + A value to be mapped to a BsonArray. + A BsonArray or null. + + + + Adds an element to the array. + + The value to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Creates a shallow clone of the array (see also DeepClone). + + A shallow clone of the array. + + + + Clears the array. + + + + + Compares the array to another array. + + The other array. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other. + + + + Compares the array to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the array contains a value. + + The value to test for. + True if the array contains the value. + + + + Copies elements from this array to another array. + + The other array. + The zero based index of the other array at which to start copying. + + + + Copies elements from this array to another array as raw values (see BsonValue.RawValue). + + The other array. + The zero based index of the other array at which to start copying. + + + + Creates a deep clone of the array (see also Clone). + + A deep clone of the array. + + + + Compares this array to another array. + + The other array. + True if the two arrays are equal. + + + + Compares this BsonArray to another object. + + The other object. + True if the other object is a BsonArray and equal to this one. + + + + Gets an enumerator that can enumerate the elements of the array. + + An enumerator. + + + + Gets the hash code. + + The hash code. + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The number of elements to search. + The zero based index of the value (or -1 if not found). + + + + Inserts a new value into the array. + + The zero based index at which to insert the new value. + The new value. + + + + Removes the first occurrence of a value from the array. + + The value to remove. + True if the value was removed. + + + + Removes an element from the array. + + The zero based index of the element to remove. + + + + Converts the BsonArray to an array of BsonValues. + + An array of BsonValues. + + + + Converts the BsonArray to a list of BsonValues. + + A list of BsonValues. + + + + Returns a string representation of the array. + + A string representation of the array. + + + + A static helper class containing BSON defaults. + + + + + Gets or sets the dynamic array serializer. + + + + + Gets or sets the dynamic document serializer. + + + + + Gets or sets the default representation to be used in serialization of + Guids to the database. + + + + + + Gets or sets the default max document size. The default is 4MiB. + + + + + Gets or sets the default max serialization depth (used to detect circular references during serialization). The default is 100. + + + + + Represents a BSON boolean value. + + + + + Initializes a new instance of the BsonBoolean class. + + The value. + + + + Gets the instance of BsonBoolean that represents false. + + + + + Gets the instance of BsonBoolean that represents true. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonBoolean as a bool. + + + + + Gets the value of this BsonBoolean. + + + + + Converts a bool to a BsonBoolean. + + A bool. + A BsonBoolean. + + + + Compares two BsonBoolean values. + + The first BsonBoolean. + The other BsonBoolean. + True if the two BsonBoolean values are not equal according to ==. + + + + Compares two BsonBoolean values. + + The first BsonBoolean. + The other BsonBoolean. + True if the two BsonBoolean values are equal according to ==. + + + + Returns one of the two possible BsonBoolean values. + + An object to be mapped to a BsonBoolean. + A BsonBoolean or null. + + + + Compares this BsonBoolean to another BsonBoolean. + + The other BsonBoolean. + A 32-bit signed integer that indicates whether this BsonBoolean is less than, equal to, or greather than the other. + + + + Compares the BsonBoolean to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonBoolean is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonBoolean to another BsonBoolean. + + The other BsonBoolean. + True if the two BsonBoolean values are equal. + + + + Compares this BsonBoolean to another object. + + The other object. + True if the other object is a BsonBoolean and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a BSON DateTime value. + + + + + Initializes a new instance of the BsonDateTime class. + + A DateTime. + + + + Initializes a new instance of the BsonDateTime class. + + Milliseconds since Unix Epoch. + + + + Gets the BsonType of this BsonValue. + + + + + Gets whether this BsonDateTime is a valid .NET DateTime. + + + + + Gets the number of milliseconds since the Unix Epoch. + + + + + Gets the number of milliseconds since the Unix Epoch. + + + + + Gets the DateTime value. + + + + + Converts a DateTime to a BsonDateTime. + + A DateTime. + A BsonDateTime. + + + + Compares two BsonDateTime values. + + The first BsonDateTime. + The other BsonDateTime. + True if the two BsonDateTime values are not equal according to ==. + + + + Compares two BsonDateTime values. + + The first BsonDateTime. + The other BsonDateTime. + True if the two BsonDateTime values are equal according to ==. + + + + Creates a new BsonDateTime. + + An object to be mapped to a BsonDateTime. + A BsonDateTime or null. + + + + Compares this BsonDateTime to another BsonDateTime. + + The other BsonDateTime. + A 32-bit signed integer that indicates whether this BsonDateTime is less than, equal to, or greather than the other. + + + + Compares the BsonDateTime to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonDateTime is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonDateTime to another BsonDateTime. + + The other BsonDateTime. + True if the two BsonDateTime values are equal. + + + + Compares this BsonDateTime to another object. + + The other object. + True if the other object is a BsonDateTime and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a DateTime in local time. + + A DateTime. + + + + Converts this BsonValue to a DateTime? in local time. + + A DateTime?. + + + + Converts this BsonValue to a DateTime? in UTC. + + A DateTime?. + + + + Converts this BsonValue to a DateTime in UTC. + + A DateTime. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + Represents a BsonDocument wrapper. + + + + + Initializes a new instance of the class. + + The value. + + + + Initializes a new instance of the class. + + The value. + The serializer. + + + + Gets the serializer. + + + The serializer. + + + + + Gets the wrapped value. + + + + + Creates a new instance of the BsonDocumentWrapper class. + + The nominal type of the wrapped object. + The wrapped object. + A BsonDocumentWrapper. + + + + Creates a new instance of the BsonDocumentWrapper class. + + The nominal type of the wrapped object. + The wrapped object. + A BsonDocumentWrapper. + + + + Creates a list of new instances of the BsonDocumentWrapper class. + + The nominal type of the wrapped objects. + A list of wrapped objects. + A list of BsonDocumentWrappers. + + + + Creates a list of new instances of the BsonDocumentWrapper class. + + The nominal type of the wrapped object. + A list of wrapped objects. + A list of BsonDocumentWrappers. + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Materializes the BsonDocument. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Represents a BSON long value. + + + + + Initializes a new instance of the BsonInt64 class. + + The value. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonInt64 as a long. + + + + + Gets the value of this BsonInt64. + + + + + Converts a long to a BsonInt64. + + A long. + A BsonInt64. + + + + Compares two BsonInt64 values. + + The first BsonInt64. + The other BsonInt64. + True if the two BsonInt64 values are not equal according to ==. + + + + Compares two BsonInt64 values. + + The first BsonInt64. + The other BsonInt64. + True if the two BsonInt64 values are equal according to ==. + + + + Creates a new BsonInt64. + + An object to be mapped to a BsonInt64. + A BsonInt64 or null. + + + + Compares this BsonInt64 to another BsonInt64. + + The other BsonInt64. + A 32-bit signed integer that indicates whether this BsonInt64 is less than, equal to, or greather than the other. + + + + Compares the BsonInt64 to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonInt64 is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonInt64 to another BsonInt64. + + The other BsonInt64. + True if the two BsonInt64 values are equal. + + + + Compares this BsonInt64 to another object. + + The other object. + True if the other object is a BsonInt64 and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + + + + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int32. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compares this BsonInt32 against another BsonValue. + + The other BsonValue. + True if this BsonInt64 and the other BsonValue are equal according to ==. + + + + Represents the BSON Null value. + + + + + Compares two BsonNull values. + + The first BsonNull. + The other BsonNull. + True if the two BsonNull values are not equal according to ==. + + + + Compares two BsonNull values. + + The first BsonNull. + The other BsonNull. + True if the two BsonNull values are equal according to ==. + + + + Gets the singleton instance of BsonNull. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonNull to another BsonNull. + + The other BsonNull. + A 32-bit signed integer that indicates whether this BsonNull is less than, equal to, or greather than the other. + + + + Compares the BsonNull to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonNull is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonNull to another BsonNull. + + The other BsonNull. + True if the two BsonNull values are equal. + + + + Compares this BsonNull to another object. + + The other object. + True if the other object is a BsonNull and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Converts this BsonValue to a DateTime? in local time. + + A DateTime?. + + + + Converts this BsonValue to a DateTime? in UTC. + + A DateTime?. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents BSON binary data. + + + + + Initializes a new instance of the BsonBinaryData class. + + The binary data. + + + + Initializes a new instance of the BsonBinaryData class. + + The binary data. + The binary data subtype. + + + + Initializes a new instance of the BsonBinaryData class. + + The binary data. + The binary data subtype. + The representation for Guids. + + + + Initializes a new instance of the BsonBinaryData class. + + A Guid. + + + + Initializes a new instance of the BsonBinaryData class. + + A Guid. + The representation for Guids. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the binary data. + + + + + Gets the representation to use when representing the Guid as BSON binary data. + + + + + Gets the BsonBinaryData as a Guid if the subtype is UuidStandard or UuidLegacy, otherwise null. + + + + + Gets the binary data subtype. + + + + + Converts a byte array to a BsonBinaryData. + + A byte array. + A BsonBinaryData. + + + + Converts a Guid to a BsonBinaryData. + + A Guid. + A BsonBinaryData. + + + + Compares two BsonBinaryData values. + + The first BsonBinaryData. + The other BsonBinaryData. + True if the two BsonBinaryData values are not equal according to ==. + + + + Compares two BsonBinaryData values. + + The first BsonBinaryData. + The other BsonBinaryData. + True if the two BsonBinaryData values are equal according to ==. + + + + Creates a new BsonBinaryData. + + An object to be mapped to a BsonBinaryData. + A BsonBinaryData or null. + + + + Compares this BsonBinaryData to another BsonBinaryData. + + The other BsonBinaryData. + A 32-bit signed integer that indicates whether this BsonBinaryData is less than, equal to, or greather than the other. + + + + Compares the BsonBinaryData to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonBinaryData is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonBinaryData to another BsonBinaryData. + + The other BsonBinaryData. + True if the two BsonBinaryData values are equal. + + + + Compares this BsonBinaryData to another object. + + The other object. + True if the other object is a BsonBinaryData and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonBinaryData to a Guid. + + A Guid. + + + + Converts this BsonBinaryData to a Guid. + + The representation for Guids. + A Guid. + + + + Returns a string representation of the binary data. + + A string representation of the binary data. + + + + Represents a BSON JavaScript value with a scope. + + + + + Initializes a new instance of the BsonJavaScriptWithScope class. + + The JavaScript code. + A scope (a set of variables with values). + + + + Compares two BsonJavaScriptWithScope values. + + The first BsonJavaScriptWithScope. + The other BsonJavaScriptWithScope. + True if the two BsonJavaScriptWithScope values are not equal according to ==. + + + + Compares two BsonJavaScriptWithScope values. + + The first BsonJavaScriptWithScope. + The other BsonJavaScriptWithScope. + True if the two BsonJavaScriptWithScope values are equal according to ==. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the scope (a set of variables with values). + + + + + Creates a new BsonJavaScriptWithScope. + + An object to be mapped to a BsonJavaScriptWithScope. + A BsonJavaScriptWithScope or null. + + + + Creates a shallow clone of the BsonJavaScriptWithScope (see also DeepClone). + + A shallow clone of the BsonJavaScriptWithScope. + + + + Creates a deep clone of the BsonJavaScriptWithScope (see also Clone). + + A deep clone of the BsonJavaScriptWithScope. + + + + Compares this BsonJavaScriptWithScope to another BsonJavaScriptWithScope. + + The other BsonJavaScriptWithScope. + A 32-bit signed integer that indicates whether this BsonJavaScriptWithScope is less than, equal to, or greather than the other. + + + + Compares the BsonJavaScriptWithScope to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonJavaScriptWithScope is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonJavaScriptWithScope to another BsonJavaScriptWithScope. + + The other BsonJavaScriptWithScope. + True if the two BsonJavaScriptWithScope values are equal. + + + + Compares this BsonJavaScriptWithScope to another object. + + The other object. + True if the other object is a BsonJavaScriptWithScope and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents an ObjectId (see also BsonObjectId). + + + + + Initializes a new instance of the ObjectId class. + + The bytes. + + + + Initializes a new instance of the ObjectId class. + + The bytes. + The index into the byte array where the ObjectId starts. + + + + Initializes a new instance of the ObjectId class. + + The timestamp (expressed as a DateTime). + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the ObjectId class. + + The timestamp. + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the ObjectId class. + + The value. + + + + Gets an instance of ObjectId where the value is empty. + + + + + Gets the timestamp. + + + + + Gets the machine. + + + + + Gets the PID. + + + + + Gets the increment. + + + + + Gets the creation time (derived from the timestamp). + + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is less than the second ObjectId. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is less than or equal to the second ObjectId. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId. + True if the two ObjectIds are equal. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId. + True if the two ObjectIds are not equal. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is greather than or equal to the second ObjectId. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is greather than the second ObjectId. + + + + Generates a new ObjectId with a unique value. + + An ObjectId. + + + + Generates a new ObjectId with a unique value (with the timestamp component based on a given DateTime). + + The timestamp component (expressed as a DateTime). + An ObjectId. + + + + Generates a new ObjectId with a unique value (with the given timestamp). + + The timestamp component. + An ObjectId. + + + + Packs the components of an ObjectId into a byte array. + + The timestamp. + The machine hash. + The PID. + The increment. + A byte array. + + + + Parses a string and creates a new ObjectId. + + The string value. + A ObjectId. + + + + Tries to parse a string and create a new ObjectId. + + The string value. + The new ObjectId. + True if the string was parsed successfully. + + + + Unpacks a byte array into the components of an ObjectId. + + A byte array. + The timestamp. + The machine hash. + The PID. + The increment. + + + + Gets the current process id. This method exists because of how CAS operates on the call stack, checking + for permissions before executing the method. Hence, if we inlined this call, the calling method would not execute + before throwing an exception requiring the try/catch at an even higher level that we don't necessarily control. + + + + + Compares this ObjectId to another ObjectId. + + The other ObjectId. + A 32-bit signed integer that indicates whether this ObjectId is less than, equal to, or greather than the other. + + + + Compares this ObjectId to another ObjectId. + + The other ObjectId. + True if the two ObjectIds are equal. + + + + Compares this ObjectId to another object. + + The other object. + True if the other object is an ObjectId and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts the ObjectId to a byte array. + + A byte array. + + + + Converts the ObjectId to a byte array. + + The destination. + The offset. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + A static class that maps between .NET objects and BsonValues. + + + + + Maps an object to an instance of the closest BsonValue class. + + An object. + A BsonValue. + + + + Maps an object to a specific BsonValue type. + + An object. + The BsonType to map to. + A BsonValue of the desired type (or BsonNull.Value if value is null and bsonType is Null). + + + + Maps a BsonValue to a .NET value using the default BsonTypeMapperOptions. + + The BsonValue. + The mapped .NET value. + + + + Maps a BsonValue to a .NET value. + + The BsonValue. + The BsonTypeMapperOptions. + The mapped .NET value. + + + + Registers a custom type mapper. + + The type. + A custom type mapper. + + + + Tries to map an object to an instance of the closest BsonValue class. + + An object. + The BsonValue. + True if the mapping was successfull. + + + + Compares this Mapping to another object. + + The other object. + True if the other object is a Mapping and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + A static class containing BSON utility methods. + + + + + Gets a friendly class name suitable for use in error messages. + + The type. + A friendly class name. + + + + Parses a hex string into its equivalent byte array. + + The hex string to parse. + The byte equivalent of the hex string. + + + + Converts from number of milliseconds since Unix epoch to DateTime. + + The number of milliseconds since Unix epoch. + A DateTime. + + + + Converts a value to a hex character. + + The value (assumed to be between 0 and 15). + The hex character. + + + + Converts a byte array to a hex string. + + The byte array. + A hex string. + + + + Converts a DateTime to local time (with special handling for MinValue and MaxValue). + + A DateTime. + The DateTime in local time. + + + + Converts a DateTime to number of milliseconds since Unix epoch. + + A DateTime. + Number of seconds since Unix epoch. + + + + Converts a DateTime to UTC (with special handling for MinValue and MaxValue). + + A DateTime. + The DateTime in UTC. + + + + Tries to parse a hex string to a byte array. + + The hex string. + A byte array. + True if the hex string was successfully parsed. + + + + Represents a BSON double value. + + + + + + Initializes a new instance of the BsonDouble class. + + The value. + + + + + + + + + + Gets the value of this BsonDouble. + + + + + Converts a double to a BsonDouble. + + A double. + A BsonDouble. + + + + Compares two BsonDouble values. + + The first BsonDouble. + The other BsonDouble. + True if the two BsonDouble values are not equal according to ==. + + + + Compares two BsonDouble values. + + The first BsonDouble. + The other BsonDouble. + True if the two BsonDouble values are equal according to ==. + + + + Creates a new instance of the BsonDouble class. + + An object to be mapped to a BsonDouble. + A BsonDouble. + + + + Compares this BsonDouble to another BsonDouble. + + The other BsonDouble. + A 32-bit signed integer that indicates whether this BsonDouble is less than, equal to, or greather than the other. + + + + + + + Compares this BsonDouble to another BsonDouble. + + The other BsonDouble. + True if the two BsonDouble values are equal. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a BSON int value. + + + + + Creates a new instance of the BsonInt32 class. + + The value. + + + + Gets an instance of BsonInt32 that represents -1. + + + + + Gets an instance of BsonInt32 that represents -0. + + + + + Gets an instance of BsonInt32 that represents 1. + + + + + Gets an instance of BsonInt32 that represents 2. + + + + + Gets an instance of BsonInt32 that represents 3. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonInt32 as an int. + + + + + Gets the value of this BsonInt32. + + + + + Converts an int to a BsonInt32. + + An int. + A BsonInt32. + + + + Compares two BsonInt32 values. + + The first BsonInt32. + The other BsonInt32. + True if the two BsonInt32 values are not equal according to ==. + + + + Compares two BsonInt32 values. + + The first BsonInt32. + The other BsonInt32. + True if the two BsonInt32 values are equal according to ==. + + + + Creates a new BsonInt32. + + An object to be mapped to a BsonInt32. + A BsonInt32 or null. + + + + Compares this BsonInt32 to another BsonInt32. + + The other BsonInt32. + A 32-bit signed integer that indicates whether this BsonInt32 is less than, equal to, or greather than the other. + + + + Compares the BsonInt32 to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonInt32 is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonInt32 to another BsonInt32. + + The other BsonInt32. + True if the two BsonInt32 values are equal. + + + + Compares this BsonInt32 to another object. + + The other object. + True if the other object is a BsonInt32 and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + + + + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int32. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compares this BsonInt32 against another BsonValue. + + The other BsonValue. + True if this BsonInt32 and the other BsonValue are equal according to ==. + + + + Represents a BSON string value. + + + + + Initializes a new instance of the BsonString class. + + The value. + + + + Gets an instance of BsonString that represents an empty string. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonString as a string. + + + + + Gets the value of this BsonString. + + + + + Converts a string to a BsonString. + + A string. + A BsonString. + + + + Compares two BsonString values. + + The first BsonString. + The other BsonString. + True if the two BsonString values are not equal according to ==. + + + + Compares two BsonString values. + + The first BsonString. + The other BsonString. + True if the two BsonString values are equal according to ==. + + + + Creates a new BsonString. + + An object to be mapped to a BsonString. + A BsonString or null. + + + + Compares this BsonString to another BsonString. + + The other BsonString. + A 32-bit signed integer that indicates whether this BsonString is less than, equal to, or greather than the other. + + + + Compares the BsonString to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonString is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonString to another BsonString. + + The other BsonString. + True if the two BsonString values are equal. + + + + Compares this BsonString to another object. + + The other object. + True if the other object is a BsonString and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + + + + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int32. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a BSON value (this is an abstract class, see the various subclasses). + + + + + Casts the BsonValue to a Boolean (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonArray (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonBinaryData (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonDateTime (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonDocument (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonJavaScript (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonJavaScriptWithScope (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonMaxKey (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonMinKey (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonNull (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonRegularExpression (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonSymbol (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonTimestamp (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonUndefined (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonValue (a way of upcasting subclasses of BsonValue to BsonValue at compile time). + + + + + Casts the BsonValue to a Byte[] (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a DateTime in UTC (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Double (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Guid (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to an Int32 (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a DateTime in the local timezone (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Int64 (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Boolean} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{DateTime} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Decimal} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Decimal128} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Double} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Guid} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Int32} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Int64} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{ObjectId} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to an ObjectId (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Regex (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a String (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a DateTime in UTC (throws an InvalidCastException if the cast is not valid). + + + + + Gets the BsonType of this BsonValue. + + + + + Tests whether this BsonValue is a Boolean. + + + + + Tests whether this BsonValue is a BsonArray. + + + + + Tests whether this BsonValue is a BsonBinaryData. + + + + + Tests whether this BsonValue is a BsonDateTime. + + + + + Tests whether this BsonValue is a BsonDocument. + + + + + Tests whether this BsonValue is a BsonJavaScript. + + + + + Tests whether this BsonValue is a BsonJavaScriptWithScope. + + + + + Tests whether this BsonValue is a BsonMaxKey. + + + + + Tests whether this BsonValue is a BsonMinKey. + + + + + Tests whether this BsonValue is a BsonNull. + + + + + Tests whether this BsonValue is a BsonRegularExpression. + + + + + Tests whether this BsonValue is a BsonSymbol . + + + + + Tests whether this BsonValue is a BsonTimestamp. + + + + + Tests whether this BsonValue is a BsonUndefined. + + + + + Tests whether this BsonValue is a DateTime. + + + + + Tests whether this BsonValue is a Decimal128. + + + + + Tests whether this BsonValue is a Double. + + + + + Tests whether this BsonValue is a Guid. + + + + + Tests whether this BsonValue is an Int32. + + + + + Tests whether this BsonValue is an Int64. + + + + + Tests whether this BsonValue is a numeric value. + + + + + Tests whether this BsonValue is an ObjectId . + + + + + Tests whether this BsonValue is a String. + + + + + Tests whether this BsonValue is a valid DateTime. + + + + + Gets the raw value of this BsonValue (or null if this BsonValue doesn't have a single scalar value). + + + + + Casts a BsonValue to a bool. + + The BsonValue. + A bool. + + + + Casts a BsonValue to a bool?. + + The BsonValue. + A bool?. + + + + Converts a bool to a BsonValue. + + A bool. + A BsonValue. + + + + Converts a bool? to a BsonValue. + + A bool?. + A BsonValue. + + + + Converts a byte[] to a BsonValue. + + A byte[]. + A BsonValue. + + + + Converts a DateTime to a BsonValue. + + A DateTime. + A BsonValue. + + + + Converts a DateTime? to a BsonValue. + + A DateTime?. + A BsonValue. + + + + Converts a decimal to a BsonValue. + + A decimal. + A BsonValue. + + + + Converts a decimal? to a BsonValue. + + A decimal?. + A BsonValue. + + + + Converts a to a BsonValue. + + A Decimal128. + A BsonValue. + + + + Converts a nullable to a BsonValue. + + A Decimal128?. + A BsonValue. + + + + Converts a double to a BsonValue. + + A double. + A BsonValue. + + + + Converts a double? to a BsonValue. + + A double?. + A BsonValue. + + + + Converts an Enum to a BsonValue. + + An Enum. + A BsonValue. + + + + Converts a Guid to a BsonValue. + + A Guid. + A BsonValue. + + + + Converts a Guid? to a BsonValue. + + A Guid?. + A BsonValue. + + + + Converts an int to a BsonValue. + + An int. + A BsonValue. + + + + Converts an int? to a BsonValue. + + An int?. + A BsonValue. + + + + Converts a long to a BsonValue. + + A long. + A BsonValue. + + + + Converts a long? to a BsonValue. + + A long?. + A BsonValue. + + + + Converts an ObjectId to a BsonValue. + + An ObjectId. + A BsonValue. + + + + Converts an ObjectId? to a BsonValue. + + An ObjectId?. + A BsonValue. + + + + Converts a Regex to a BsonValue. + + A Regex. + A BsonValue. + + + + Converts a string to a BsonValue. + + A string. + A BsonValue. + + + + Casts a BsonValue to a byte[]. + + The BsonValue. + A byte[]. + + + + Casts a BsonValue to a DateTime. + + The BsonValue. + A DateTime. + + + + Casts a BsonValue to a DateTime?. + + The BsonValue. + A DateTime?. + + + + Casts a BsonValue to a decimal. + + The BsonValue. + A decimal. + + + + Casts a BsonValue to a decimal?. + + The BsonValue. + A decimal?. + + + + Casts a BsonValue to a . + + The BsonValue. + A . + + + + Casts a BsonValue to a nullable ?. + + The BsonValue. + A nullable . + + + + Casts a BsonValue to a double. + + The BsonValue. + A double. + + + + Casts a BsonValue to a double?. + + The BsonValue. + A double?. + + + + Casts a BsonValue to a Guid. + + The BsonValue. + A Guid. + + + + Casts a BsonValue to a Guid?. + + The BsonValue. + A Guid?. + + + + Casts a BsonValue to an int. + + The BsonValue. + An int. + + + + Casts a BsonValue to an int?. + + The BsonValue. + An int?. + + + + Casts a BsonValue to a long. + + The BsonValue. + A long. + + + + Casts a BsonValue to a long?. + + The BsonValue. + A long?. + + + + Casts a BsonValue to an ObjectId. + + The BsonValue. + An ObjectId. + + + + Casts a BsonValue to an ObjectId?. + + The BsonValue. + An ObjectId?. + + + + Casts a BsonValue to a Regex. + + The BsonValue. + A Regex. + + + + Casts a BsonValue to a string. + + The BsonValue. + A string. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is less than the other one. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is less than or equal to the other one. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the two BsonValues are not equal according to ==. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the two BsonValues are equal according to ==. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is greater than the other one. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is greater than or equal to the other one. + + + + Gets or sets a value by position (only applies to BsonDocument and BsonArray). + + The position. + The value. + + + + Gets or sets a value by name (only applies to BsonDocument). + + The name. + The value. + + + + Creates a new instance of the BsonValue class. + + A value to be mapped to a BsonValue. + A BsonValue. + + + + Creates a shallow clone of the BsonValue (see also DeepClone). + + A shallow clone of the BsonValue. + + + + Compares this BsonValue to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonValue is less than, equal to, or greather than the other BsonValue. + + + + Compares the type of this BsonValue to the type of another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether the type of this BsonValue is less than, equal to, or greather than the type of the other BsonValue. + + + + Creates a deep clone of the BsonValue (see also Clone). + + A deep clone of the BsonValue. + + + + Compares this BsonValue to another BsonValue. + + The other BsonValue. + True if the two BsonValue values are equal. + + + + Compares this BsonValue to another object. + + The other object. + True if the other object is a BsonValue and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Converts this BsonValue to a Decimal. + + A Decimal. + + + + Converts this BsonValue to a Decimal128. + + A Decimal128. + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int64. + + + + Converts this BsonValue to a DateTime in local time. + + A DateTime. + + + + Converts this BsonValue to a DateTime? in local time. + + A DateTime?. + + + + Converts this BsonValue to a DateTime? in UTC. + + A DateTime?. + + + + Converts this BsonValue to a DateTime in UTC. + + A DateTime. + + + + Implementation of the IConvertible GetTypeCode method. + + The TypeCode. + + + + Implementation of the IConvertible ToBoolean method. + + The format provider. + A bool. + + + + Implementation of the IConvertible ToByte method. + + The format provider. + A byte. + + + + Implementation of the IConvertible ToChar method. + + The format provider. + A char. + + + + Implementation of the IConvertible ToDateTime method. + + The format provider. + A DateTime. + + + + Implementation of the IConvertible ToDecimal method. + + The format provider. + A decimal. + + + + Implementation of the IConvertible ToDouble method. + + The format provider. + A double. + + + + Implementation of the IConvertible ToInt16 method. + + The format provider. + A short. + + + + Implementation of the IConvertible ToInt32 method. + + The format provider. + An int. + + + + Implementation of the IConvertible ToInt64 method. + + The format provider. + A long. + + + + Implementation of the IConvertible ToSByte method. + + The format provider. + An sbyte. + + + + Implementation of the IConvertible ToSingle method. + + The format provider. + A float. + + + + Implementation of the IConvertible ToString method. + + The format provider. + A string. + + + + Implementation of the IConvertible ToUInt16 method. + + The format provider. + A ushort. + + + + Implementation of the IConvertible ToUInt32 method. + + The format provider. + A uint. + + + + Implementation of the IConvertible ToUInt64 method. + + The format provider. + A ulong. + + + + Implementation of operator ==. + + The other BsonValue. + True if the two BsonValues are equal according to ==. + + + + Represents a BSON JavaScript value. + + + + + Initializes a new instance of the BsonJavaScript class. + + The JavaScript code. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the JavaScript code. + + + + + Compares two BsonJavaScript values. + + The first BsonJavaScript. + The other BsonJavaScript. + True if the two BsonJavaScript values are not equal according to ==. + + + + Compares two BsonJavaScript values. + + The first BsonJavaScript. + The other BsonJavaScript. + True if the two BsonJavaScript values are equal according to ==. + + + + Converts a string to a BsonJavaScript. + + A string. + A BsonJavaScript. + + + + Creates a new BsonJavaScript. + + An object to be mapped to a BsonJavaScript. + A BsonJavaScript or null. + + + + Compares this BsonJavaScript to another BsonJavaScript. + + The other BsonJavaScript. + A 32-bit signed integer that indicates whether this BsonJavaScript is less than, equal to, or greather than the other. + + + + Compares the BsonJavaScript to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonJavaScript is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonJavaScript to another BsonJavaScript. + + The other BsonJavaScript. + True if the two BsonJavaScript values are equal. + + + + Compares this BsonJavaScript to another object. + + The other object. + True if the other object is a BsonJavaScript and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON timestamp value. + + + + + Initializes a new instance of the BsonTimestamp class. + + The combined timestamp/increment value. + + + + Initializes a new instance of the BsonTimestamp class. + + The timestamp. + The increment. + + + + Compares two BsonTimestamp values. + + The first BsonTimestamp. + The other BsonTimestamp. + True if the two BsonTimestamp values are not equal according to ==. + + + + Compares two BsonTimestamp values. + + The first BsonTimestamp. + The other BsonTimestamp. + True if the two BsonTimestamp values are equal according to ==. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the value of this BsonTimestamp. + + + + + Gets the increment. + + + + + Gets the timestamp. + + + + + Creates a new BsonTimestamp. + + An object to be mapped to a BsonTimestamp. + A BsonTimestamp or null. + + + + Compares this BsonTimestamp to another BsonTimestamp. + + The other BsonTimestamp. + A 32-bit signed integer that indicates whether this BsonTimestamp is less than, equal to, or greather than the other. + + + + Compares the BsonTimestamp to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonTimestamp is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonTimestamp to another BsonTimestamp. + + The other BsonTimestamp. + True if the two BsonTimestamp values are equal. + + + + Compares this BsonTimestamp to another object. + + The other object. + True if the other object is a BsonTimestamp and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + A static class containing BSON constants. + + + + + Gets the number of milliseconds since the Unix epoch for DateTime.MaxValue. + + + + + Gets the number of milliseconds since the Unix epoch for DateTime.MinValue. + + + + + Gets the Unix Epoch for BSON DateTimes (1970-01-01). + + + + + Represents the binary data subtype of a BsonBinaryData. + + + + + Binary data. + + + + + A function. + + + + + Obsolete binary data subtype (use Binary instead). + + + + + A UUID in a driver dependent legacy byte order. + + + + + A UUID in standard network byte order. + + + + + An MD5 hash. + + + + + User defined binary data. + + + + + Represents the type of a BSON element. + + + + + Not a real BSON type. Used to signal the end of a document. + + + + + A BSON double. + + + + + A BSON string. + + + + + A BSON document. + + + + + A BSON array. + + + + + BSON binary data. + + + + + A BSON undefined value. + + + + + A BSON ObjectId. + + + + + A BSON bool. + + + + + A BSON DateTime. + + + + + A BSON null value. + + + + + A BSON regular expression. + + + + + BSON JavaScript code. + + + + + A BSON symbol. + + + + + BSON JavaScript code with a scope (a set of variables with values). + + + + + A BSON 32-bit integer. + + + + + A BSON timestamp. + + + + + A BSON 64-bit integer. + + + + + A BSON 128-bit decimal. + + + + + A BSON MinKey value. + + + + + A BSON MaxKey value. + + + + + Represents a BSON exception. + + + + + Initializes a new instance of the BsonException class. + + + + + Initializes a new instance of the BsonException class. + + The error message. + + + + Initializes a new instance of the BsonException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the BsonException class. + + The error message format string. + One or more args for the error message. + + + + Initializes a new instance of the BsonException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Represents the symbol table of BsonSymbols. + + + + + Looks up a symbol (and creates a new one if necessary). + + The name of the symbol. + The symbol. + + + + Represents a BSON document. + + + + + Initializes a new instance of the BsonDocument class. + + + + + Initializes a new instance of the BsonDocument class specifying whether duplicate element names are allowed + (allowing duplicate element names is not recommended). + + Whether duplicate element names are allowed. + + + + Initializes a new instance of the BsonDocument class and adds one element. + + An element to add to the document. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + A list of keys to select values from the dictionary. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + A list of keys to select values from the dictionary. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + A list of keys to select values from the dictionary. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a list of elements. + + A list of elements to add to the document. + + + + Initializes a new instance of the BsonDocument class and adds one or more elements. + + One or more elements to add to the document. + + + + Initializes a new instance of the BsonDocument class and creates and adds a new element. + + The name of the element to add to the document. + The value of the element to add to the document. + + + + Compares two BsonDocument values. + + The first BsonDocument. + The other BsonDocument. + True if the two BsonDocument values are not equal according to ==. + + + + Compares two BsonDocument values. + + The first BsonDocument. + The other BsonDocument. + True if the two BsonDocument values are equal according to ==. + + + + Gets or sets whether to allow duplicate names (allowing duplicate names is not recommended). + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the number of elements. + + + + + Gets the elements. + + + + + Gets the element names. + + + + + Gets the raw values (see BsonValue.RawValue). + + + + + Gets the values. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value to return if the element is not found. + Teh value of the element or a default value if the element is not found. + + + + Gets or sets a value by name. + + The name. + The value. + + + + Creates a new BsonDocument by mapping an object to a BsonDocument. + + The object to be mapped to a BsonDocument. + A BsonDocument. + + + + Parses a JSON string and returns a BsonDocument. + + The JSON string. + A BsonDocument. + + + + Tries to parse a JSON string and returns a value indicating whether it succeeded or failed. + + The JSON string. + The result. + Whether it succeeded or failed. + + + + Adds an element to the document. + + The element to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Creates and adds an element to the document. + + The name of the element. + The value of the element. + The document (so method calls can be chained). + + + + Creates and adds an element to the document, but only if the condition is true. + + The name of the element. + The value of the element. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Creates and adds an element to the document, but only if the condition is true. + If the condition is false the value factory is not called at all. + + The name of the element. + A delegate called to compute the value of the element if condition is true. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Clears the document (removes all elements). + + + + + Creates a shallow clone of the document (see also DeepClone). + + A shallow clone of the document. + + + + Compares this document to another document. + + The other document. + A 32-bit signed integer that indicates whether this document is less than, equal to, or greather than the other. + + + + Compares the BsonDocument to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonDocument is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the document contains an element with the specified name. + + The name of the element to look for. + True if the document contains an element with the specified name. + + + + Tests whether the document contains an element with the specified value. + + The value of the element to look for. + True if the document contains an element with the specified value. + + + + Creates a deep clone of the document (see also Clone). + + A deep clone of the document. + + + + Compares this document to another document. + + The other document. + True if the two documents are equal. + + + + Compares this BsonDocument to another object. + + The other object. + True if the other object is a BsonDocument and equal to this one. + + + + Gets an element of this document. + + The zero based index of the element. + The element. + + + + Gets an element of this document. + + The name of the element. + A BsonElement. + + + + Gets an enumerator that can be used to enumerate the elements of this document. + + An enumerator. + + + + Gets the hash code. + + The hash code. + + + + Gets the value of an element. + + The zero based index of the element. + The value of the element. + + + + Gets the value of an element. + + The name of the element. + The value of the element. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value returned if the element is not found. + The value of the element or the default value if the element is not found. + + + + Gets the index of an element. + + The name of the element. + The index of the element, or -1 if the element is not found. + + + + Inserts a new element at a specified position. + + The position of the new element. + The element. + + + + Merges another document into this one. Existing elements are not overwritten. + + The other document. + The document (so method calls can be chained). + + + + Merges another document into this one, specifying whether existing elements are overwritten. + + The other document. + Whether to overwrite existing elements. + The document (so method calls can be chained). + + + + Removes an element from this document (if duplicate element names are allowed + then all elements with this name will be removed). + + The name of the element to remove. + + + + Removes an element from this document. + + The zero based index of the element to remove. + + + + Removes an element from this document. + + The element to remove. + + + + Sets the value of an element. + + The zero based index of the element whose value is to be set. + The new value. + The document (so method calls can be chained). + + + + Sets the value of an element (an element will be added if no element with this name is found). + + The name of the element whose value is to be set. + The new value. + The document (so method calls can be chained). + + + + Sets an element of the document (replacing the existing element at that position). + + The zero based index of the element to replace. + The new element. + The document. + + + + Sets an element of the document (replaces any existing element with the same name or adds a new element if an element with the same name is not found). + + The new element. + The document. + + + + Converts the BsonDocument to a Dictionary<string, object>. + + A dictionary. + + + + Converts the BsonDocument to a Hashtable. + + A hashtable. + + + + Returns a string representation of the document. + + A string representation of the document. + + + + Tries to get an element of this document. + + The name of the element. + The element. + True if an element with that name was found. + + + + Tries to get the value of an element of this document. + + The name of the element. + The value of the element. + True if an element with that name was found. + + + + Represents a BSON element. + + + + + Initializes a new instance of the BsonElement class. + + The name of the element. + The value of the element. + + + + Gets the name of the element. + + + + + Gets or sets the value of the element. + + + + + Compares two BsonElements. + + The first BsonElement. + The other BsonElement. + True if the two BsonElements are equal (or both null). + + + + Compares two BsonElements. + + The first BsonElement. + The other BsonElement. + True if the two BsonElements are not equal (or one is null and the other is not). + + + + Creates a shallow clone of the element (see also DeepClone). + + A shallow clone of the element. + + + + Creates a deep clone of the element (see also Clone). + + A deep clone of the element. + + + + Compares this BsonElement to another BsonElement. + + The other BsonElement. + A 32-bit signed integer that indicates whether this BsonElement is less than, equal to, or greather than the other. + + + + Compares this BsonElement to another BsonElement. + + The other BsonElement. + True if the two BsonElement values are equal. + + + + Compares this BsonElement to another object. + + The other object. + True if the other object is a BsonElement and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON ObjectId value (see also ObjectId). + + + + + Initializes a new instance of the BsonObjectId class. + + The value. + + + + Initializes a new instance of the BsonObjectId class. + + The bytes. + + + + Initializes a new instance of the BsonObjectId class. + + The timestamp (expressed as a DateTime). + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the BsonObjectId class. + + The timestamp. + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the BsonObjectId class. + + The value. + + + + Gets an instance of BsonObjectId where the value is empty. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the timestamp. + + + + + Gets the machine. + + + + + Gets the PID. + + + + + Gets the increment. + + + + + Gets the creation time (derived from the timestamp). + + + + + Gets the BsonObjectId as an ObjectId. + + + + + Gets the value of this BsonObjectId. + + + + + Converts an ObjectId to a BsonObjectId. + + An ObjectId. + A BsonObjectId. + + + + Compares two BsonObjectId values. + + The first BsonObjectId. + The other BsonObjectId. + True if the two BsonObjectId values are not equal according to ==. + + + + Compares two BsonObjectId values. + + The first BsonObjectId. + The other BsonObjectId. + True if the two BsonObjectId values are equal according to ==. + + + + Creates a new BsonObjectId. + + An object to be mapped to a BsonObjectId. + A BsonObjectId or null. + + + + Generates a new BsonObjectId with a unique value. + + A BsonObjectId. + + + + Generates a new BsonObjectId with a unique value (with the timestamp component based on a given DateTime). + + The timestamp component (expressed as a DateTime). + A BsonObjectId. + + + + Generates a new BsonObjectId with a unique value (with the given timestamp). + + The timestamp component. + A BsonObjectId. + + + + Parses a string and creates a new BsonObjectId. + + The string value. + A BsonObjectId. + + + + Tries to parse a string and create a new BsonObjectId. + + The string value. + The new BsonObjectId. + True if the string was parsed successfully. + + + + Compares this BsonObjectId to another BsonObjectId. + + The other BsonObjectId. + A 32-bit signed integer that indicates whether this BsonObjectId is less than, equal to, or greather than the other. + + + + Compares the BsonObjectId to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonObjectId is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonObjectId to another BsonObjectId. + + The other BsonObjectId. + True if the two BsonObjectId values are equal. + + + + Compares this BsonObjectId to another object. + + The other object. + True if the other object is a BsonObjectId and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts the BsonObjectId to a byte array. + + A byte array. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + Represents a BSON regular expression value. + + + + + Initializes a new instance of the BsonRegularExpression class. + + A regular expression pattern. + + + + Initializes a new instance of the BsonRegularExpression class. + + A regular expression pattern. + Regular expression options. + + + + Initializes a new instance of the BsonRegularExpression class. + + A Regex. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the regular expression pattern. + + + + + Gets the regular expression options. + + + + + Converts a Regex to a BsonRegularExpression. + + A Regex. + A BsonRegularExpression. + + + + Converts a string to a BsonRegularExpression. + + A string. + A BsonRegularExpression. + + + + Compares two BsonRegularExpression values. + + The first BsonRegularExpression. + The other BsonRegularExpression. + True if the two BsonRegularExpression values are not equal according to ==. + + + + Compares two BsonRegularExpression values. + + The first BsonRegularExpression. + The other BsonRegularExpression. + True if the two BsonRegularExpression values are equal according to ==. + + + + Creates a new BsonRegularExpression. + + An object to be mapped to a BsonRegularExpression. + A BsonRegularExpression or null. + + + + Compares this BsonRegularExpression to another BsonRegularExpression. + + The other BsonRegularExpression. + A 32-bit signed integer that indicates whether this BsonRegularExpression is less than, equal to, or greather than the other. + + + + Compares the BsonRegularExpression to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonRegularExpression is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonRegularExpression to another BsonRegularExpression. + + The other BsonRegularExpression. + True if the two BsonRegularExpression values are equal. + + + + Compares this BsonRegularExpression to another object. + + The other object. + True if the other object is a BsonRegularExpression and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts the BsonRegularExpression to a Regex. + + A Regex. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON symbol value. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the name of the symbol. + + + + + Converts a string to a BsonSymbol. + + A string. + A BsonSymbol. + + + + Compares two BsonSymbol values. + + The first BsonSymbol. + The other BsonSymbol. + True if the two BsonSymbol values are not equal according to ==. + + + + Compares two BsonSymbol values. + + The first BsonSymbol. + The other BsonSymbol. + True if the two BsonSymbol values are equal according to ==. + + + + Creates a new BsonSymbol. + + An object to be mapped to a BsonSymbol. + A BsonSymbol or null. + + + + Compares this BsonSymbol to another BsonSymbol. + + The other BsonSymbol. + A 32-bit signed integer that indicates whether this BsonSymbol is less than, equal to, or greather than the other. + + + + Compares the BsonSymbol to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonSymbol is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonSymbol to another BsonSymbol. + + The other BsonSymbol. + True if the two BsonSymbol values are equal. + + + + Compares this BsonSymbol to another object. + + The other object. + True if the other object is a BsonSymbol and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents the BSON MaxKey value. + + + + + Compares two BsonMaxKey values. + + The first BsonMaxKey. + The other BsonMaxKey. + True if the two BsonMaxKey values are not equal according to ==. + + + + Compares two BsonMaxKey values. + + The first BsonMaxKey. + The other BsonMaxKey. + True if the two BsonMaxKey values are equal according to ==. + + + + Gets the singleton instance of BsonMaxKey. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonMaxKey to another BsonMaxKey. + + The other BsonMaxKey. + A 32-bit signed integer that indicates whether this BsonMaxKey is less than, equal to, or greather than the other. + + + + Compares the BsonMaxKey to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonMaxKey is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonMaxKey to another BsonMaxKey. + + The other BsonMaxKey. + True if the two BsonMaxKey values are equal. + + + + Compares this BsonMaxKey to another object. + + The other object. + True if the other object is a BsonMaxKey and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents the BSON MinKey value. + + + + + Compares two BsonMinKey values. + + The first BsonMinKey. + The other BsonMinKey. + True if the two BsonMinKey values are not equal according to ==. + + + + Compares two BsonMinKey values. + + The first BsonMinKey. + The other BsonMinKey. + True if the two BsonMinKey values are equal according to ==. + + + + Gets the singleton instance of BsonMinKey. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonMinKey to another BsonMinKey. + + The other BsonMinKey. + A 32-bit signed integer that indicates whether this BsonMinKey is less than, equal to, or greather than the other. + + + + Compares the BsonMinKey to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonMinKey is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonMinKey to another BsonMinKey. + + The other BsonMinKey. + True if the two BsonMinKey values are equal. + + + + Compares this BsonMinKey to another object. + + The other object. + True if the other object is a BsonMinKey and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + diff --git a/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.Core.dll b/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.Core.dll new file mode 100644 index 0000000000000000000000000000000000000000..df0de92df388c412584d844b6a42dfb51c587362 GIT binary patch literal 763392 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 z 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 + + + MongoDB.Driver.Core + + + + + Change stream FullDocument option. + + + + + Do not return the full document. + + + + + The change stream for partial updates will include both a delta describing the + changes to the document as well as a copy of the entire document that was + changed from some time after the change occurred. + + + + + The operation type of a change stream result. + + + + + An insert operation type. + + + + + An update operation type. + + + + + A replace operation type. + + + + + A delete operation type. + + + + + An invalidate operation type. + + + + + A serializer for ChangeStreamOperationType values. + + + + + Gets a ChangeStreamOperationTypeSerializer. + + + A ChangeStreamOperationTypeSerializer. + + + + + + + + + + + An output document from a $changeStream pipeline stage. + + The type of the document. + + + + Initializes a new instance of the class. + + The backing document. + The document serializer. + + + + Gets the backing document. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Gets the namespace of the collection. + + + The namespace of the collection. + + + + + Gets the document key. + + + The document key. + + + + + Gets the full document. + + + The full document. + + + + + Gets the type of the operation. + + + The type of the operation. + + + + + Gets the resume token. + + + The resume token. + + + + + Gets the update description. + + + The update description. + + + + + A serializer for ChangeStreamDocument instances. + + The type of the document. + + + + Initializes a new instance of the class. + + The document serializer. + + + + + + + An UpdateDescription in a ChangeStreamDocument instance. + + + + + Initializes a new instance of the class. + + The updated fields. + The removed fields. + + + + Gets the removed fields. + + + The removed fields. + + + + + Gets the updated fields. + + + The updated fields. + + + + + + + + + + + A serialize for ChangeStreamUpdateDescription values. + + + + + Gets a ChangeStreamUpdateDescriptionSerializer. + + + A ChangeStreamUpdateDescriptionSerializer. + + + + + + + + + + + Controls whether spaces and punctuation are considered base characters. + + + + + Spaces and punctuation are considered base characters (the default). + + + + + Spaces and characters are not considered base characters, and are only distinguised at strength > 3. + + + + + Uppercase or lowercase first. + + + + + Off (the default). + + + + + Uppercase first. + + + + + Lowercase first. + + + + + Controls which characters are affected by alternate: "Shifted". + + + + + Punctuation and spaces are affected (the default). + + + + + Only spaces. + + + + + Prioritizes the comparison properties. + + + + + Primary. + + + + + Secondary. + + + + + Tertiary (the default). + + + + + Quaternary. + + + + + Identical. + + + + + Represents a MongoDB collation. + + + + + Gets the simple binary compare collation. + + + + + Creates a Collation instance from a BsonDocument. + + The document. + A Collation instance. + + + + Initializes a new instance of the class. + + The locale. + The case level. + The case that is ordered first. + The strength. + Whether numbers are ordered numerically. + The alternate. + The maximum variable. + The normalization. + Whether secondary differences are to be considered in reverse order. + + + + Gets whether spaces and punctuation are considered base characters. + + + + + Gets whether secondary differencs are to be considered in reverse order. + + + + + Gets whether upper case or lower case is ordered first. + + + + + Gets whether the collation is case sensitive at strength 1 and 2. + + + + + Gets the locale. + + + + + Gets which characters are affected by the alternate: "Shifted". + + + + + Gets the normalization. + + + + + Gets whether numbers are ordered numerically. + + + + + Gets the strength. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + + true if the current object is equal to the parameter; otherwise, false. + + + + + + + + + + + + + + + + + Creates a new Collation instance with some properties changed. + + The new locale. + The new case level. + The new case first. + The new strength. + The new numeric ordering. + The new alternate. + The new maximum variable. + The new normalization. + The new backwards. + A new Collation instance. + + + + The default authenticator. + If saslSupportedMechs is not present in the isMaster results for mechanism negotiation + uses SCRAM-SHA-1 when talking to servers >= 3.0. Prior to server 3.0, uses MONGODB-CR. + Else, uses SCRAM-SHA-256 if present in the list of mechanisms. Otherwise, uses + SCRAM-SHA-1 the default, regardless of whether SCRAM-SHA-1 is in the list. + + + + + Initializes a new instance of the class. + + The credential. + + + + + + + + + + + + + + + + A GSSAPI SASL authenticator. + + + + + Gets the name of the canonicalize host name property. + + + The name of the canonicalize host name property. + + + + + Gets the default service name. + + + The default service name. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Gets the name of the realm property. + + + The name of the realm property. + + + + + Gets the name of the service name property. + + + The name of the service name property. + + + + + Gets the name of the service realm property. + + + The name of the service realm property. + + + + + Initializes a new instance of the class. + + The credential. + The properties. + + + + Initializes a new instance of the class. + + The username. + The properties. + + + + + + + Per RFC5802: https://tools.ietf.org/html/rfc5802 + "SCRAM is a SASL mechanism whose client response and server challenge + messages are text-based messages containing one or more attribute- + value pairs separated by commas. Each attribute has a one-letter + name." + + + + + A SCRAM-SHA256 SASL authenticator. + In .NET Standard, this class does not normalize the password in the credentials, so non-ASCII + passwords may not work unless they are normalized into Unicode Normalization Form KC beforehand. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + In .NET Standard, this class does not normalize the password in , so non-ASCII + passwords may not work unless they are normalized into Unicode Normalization Form KC beforehand. + + The credential. + + + + A SCRAM-SHA SASL authenticator. + + + + + An H function as defined in RFC5802. + + The data to hash. Also called "str" in RFC5802. + + + + A Hi function used to compute the SaltedPassword as defined in RFC5802, except with "str" parameter replaced + with a UsernamePassword credential so that the password can be optionally digested/prepped in a secure fashion + before being consumed as the "str" parameter would be in RFC5802's Hi. + + The credential to be digested/prepped before being consumed as the "str" + parameter would be in RFC5802's Hi + The salt. + The iteration count. + + + + An HMAC function as defined in RFC5802, plus the encoding of the data. + + The encoding of the data. + The data. Also called "str" in RFC5802. + The key. + + + + Initializes a new instance of the class. + + The credential. + The hash algorithm name. + The H function to use. + The Hi function to use. + The Hmac function to use. + + + + Initializes a new instance of the class. + + The credential. + The hash algorithm name. + The random string generator. + The H function to use. + The Hi function to use. + The Hmac function to use. + + + + + + + SEC_WINNT_AUTH_IDENTITY + + + + + Flag for the AuthIdentity structure. + + + + + SEC_WINNT_AUTH_IDENTITY_ANSI + + + + + SEC_WINNT_AUTH_IDENTITY_UNICODE + + + + + Flags for InitiateSecurityContext. + + + See the TargetDataRep parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375507(v=vs.85).aspx + + + + + SECURITY_NETWORK_DREP + + + + + SECURITY_NATIVE_DREP + + + + + Flags for EncryptMessage. + + + See the fQOP parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375378(v=vs.85).aspx. + + + + + SECQOP_WRAP_NO_ENCRYPT + + + + + Creates an exception for the specified error code. + + The error code. + The default message. + + + + + Acquires the credentials handle. + + The principal. + The package. + The credential usage. + The logon id. + The identity. + The key callback. + The key argument. + The credential handle. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa374712(v=vs.85).aspx + + + + + Acquires the credentials handle. + + The principal. + The package. + The credential usage. + The logon id. + The identity. + The key callback. + The key argument. + The credential handle. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa374712(v=vs.85).aspx + + + + + Deletes the security context. + + The context. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375354(v=vs.85).aspx + + + + + Decrypts the message. + + The context. + The p message. + The sequence number. + The quality. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375211(v=vs.85).aspx + + + + + Encrypts the message. + + The context. + The quality. + The p message. + The sequence number. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375378(v=vs.85).aspx + + + + + Enumerates the security packages. + + The pc packages. + The pp package information. + A result code. + + http://msdn.microsoft.com/en-us/library/aa375397%28v=VS.85%29.aspx + + + + + Frees the context buffer. + + The context buffer. + A result code. + + http://msdn.microsoft.com/en-us/library/aa375416(v=vs.85).aspx + + + + + Frees the credentials handle. + + The sspi handle. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375417(v=vs.85).aspx + + + + + Initializes the security context. + + The credential handle. + The in context PTR. + Name of the target. + The flags. + The reserved1. + The data representation. + The input buffer. + The reserved2. + The out context handle. + The output buffer. + The out attributes. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375506(v=vs.85).aspx + + + + + Initializes the security context. + + The credential handle. + The in context handle. + Name of the target. + The flags. + The reserved1. + The data representation. + The input buffer. + The reserved2. + The out context. + The output buffer. + The out attributes. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375506(v=vs.85).aspx + + + + + Queries the context attributes. + + The in context handle. + The attribute. + The sizes. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379326(v=vs.85).aspx + + + + + Flags for QueryContextAttributes. + + + See the ulAttribute parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379326(v=vs.85).aspx. + + + + + SECPKG_ATTR_SIZES + + + + + A SecBuffer structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379814(v=vs.85).aspx + + + + + A SecBufferDesc structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379815(v=vs.85).aspx + + + + + To the byte array. + + + Object has already been disposed!!! + + + + Types for the SecurityBuffer structure. + + + + + SECBUFFER_VERSION + + + + + SECBUFFER_EMPTY + + + + + SECBUFFER_DATA + + + + + SECBUFFER_TOKEN + + + + + SECBUFFER_PADDING + + + + + SECBUFFER_STREAM + + + + + A wrapper around the SspiHandle structure specifically used as a security context handle. + + + + + A wrapper around the SspiHandle structure specifically used as a credential handle. + + + + + When overridden in a derived class, executes the code required to free the handle. + + + true if the handle is released successfully; otherwise, in the event of a catastrophic failure, false. In this case, it generates a releaseHandleFailed MDA Managed Debugging Assistant. + + + + + Flags for AcquireCredentialsHandle. + + + See the fCredentialUse at http://msdn.microsoft.com/en-us/library/windows/desktop/aa374712(v=vs.85).aspx. + + + + + SECPKG_CRED_OUTBOUND + + + + + A SecPkgContext_Sizes structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa380097(v=vs.85).aspx + + + + + A SecPkgInfo structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa380104(v=vs.85).aspx + + + + + Flags for InitiateSecurityContext. + + + See the fContextReq parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375507(v=vs.85).aspx + + + + + ISC_REQ_MUTUAL_AUTH + + + + + ISC_REQ_CONFIDENTIALITY + + + + + ISC_REQ_INTEGRITY + + + + + A SecHandle structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa380495(v=vs.85).aspx + + + + + Gets a value indicating whether this instance is zero. + + + true if this instance is zero; otherwise, false. + + + + + Sets to invalid. + + + + + This is represented as a string in AcquireCredentialsHandle. This value will have .ToString() called on it. + + + + + Kerberos + + + + + Thrown from a win32 wrapped operation. + + + + + Initializes a new instance of the class. + + The error code. + + + + Initializes a new instance of the class. + + The error code. + The message. + + + + Initializes a new instance of the class. + + The info. + The context. + + + + Utility class for Sasl string preparation. + + + + + The string to canonicalise. + The canonicalised string. + + + + Return the SASLPrep-canonicalised version of the given for use as a stored string. + This implements the SASLPrep algorithm defined in RFC 4013. + See RFC 3454, Section 7 for discussion of what a + stored string is. + String normalization step in the .NET Standard version of the driver is skipped due to a lack of a string + normalization function. + + The string to canonicalise. + The canonicalised string. + + + + Return true if the given is an ASCII control character as defined by + RFC 3454, Appendix C.2.1. + + The character. + Whether the given character is an ASCII control character. + + + + Return true if the given is a "change display properties" or a deprecated + character as defined by RFC 3454, Appendix C.8. + + The Unicode character's codepoint. + Whether the codepoint is a "change display properties" or a deprecated character. + + + + Returns the number of characters required to represent a specified Unicode character. + + The Unicode character's codepoint. + Number of characters required to represent a specified Unicode character. + + + + Return true if the given is inappropriate for canonical representation + characters as defined by RFC 3454, Appendix C.7. + + The Unicode character's codepoint. + + + + + Return true if the given is inappropriate for plain text characters as defined + by RFC 3454, Appendix C.6. + + The Unicode character's codepoint. + + + + + Returns whether or not a Unicode character represented by a codepoint is defined in Unicode. + A character is considered to be defined if its Unicode designation is "Cn" (other, not assigned) OR if it is + part of a surrogate pair. + + The Unicode character's codepoint. + Whether or not the Unicode character represnted by codepoint is defined in Unicode. + + + + Returns whether or not a Unicode character represented by a codepoint is an "LCat" character. + See RFC 3454: Section 6 and + RFC 3454: Appendix D.2 for more details. + + The Unicode character's codepoint. + Whether or not the character is an "LCat" character. + + + + Returns whether or not a Unicode character represented by a codepoint is an "RandALCat" character. + See RFC 3454: Section 6 and + RFC 3454: Appendix D.1 for more details. + + The Unicode character's codepoint. + Whether or not the character is an "RandALCat" character. + + + + Return true if the given is a "commonly mapped to nothing" character as defined by + RFC 3454, Appendix B.1. + + The character. + Whether the given character is a "commonly mapped to nothing" character. + + + + Return true if the given is a non-ASCII control character as defined by + RFC 3454, Appendix C.2.2. + + The Unicode character's codepoint. + Whether the given character is a non-ASCII control character. + + + + Return true if the given is a non-ASCII space character as defined by + RFC 3454, Appendix C.1.2. + + The character. + Whether the given character is a non-ASCII space character. + + + + Return true if the given is a non-character code point as defined by + RFC 3454, Appendix C.4. + + The Unicode character's codepoint. + Whether the given is a non-character code point. + + + + Return true if the given is a private use character as defined by + RFC 3454, Appendix C.3. + + The Unicode character's codepoint. + Whether if the given codepoint is a private use character. + + + + Return true if the given is a prohibited character as defined by + RFC 4013, Section 2.3. + + The Unicode character's codepoint. + Whether the codepoint is a prohibited character. + + + + Return true if the given is a surrogate code point as defined by + RFC 3454, Appendix C.5. + + The Unicode character's codepoint. + Whether the given is a surrogate code point. + + + + Return true if the given is a tagging character as defined by + RFC 3454, Appendix C.9. + + The Unicode character's codepoint. + + + + + Specifies the name of a cryptographic hash algorithm. + + + Asymmetric Algorithms implemented using Microsoft's CNG (Cryptography Next Generation) API + will interpret the underlying string value as a CNG algorithm identifier: + * https://msdn.microsoft.com/en-us/library/windows/desktop/aa375534(v=vs.85).aspx + + As with CNG, the names are case-sensitive. + + Asymmetric Algorithms implemented using other technologies: + * Must recognize at least "MD5", "SHA1", "SHA256", "SHA384", and "SHA512". + * Should recognize additional CNG IDs for any other hash algorithms that they also support. + + + + + Gets a representing "MD5" + + + + + Gets a representing "SHA1" + + + + + Gets a representing "SHA256" + + + + + Gets a representing "SHA384" + + + + + Gets a representing "SHA512" + + + + + Gets a representing a custom name. + + The custom hash algorithm name. + + + + Gets the underlying string representation of the algorithm name. + + + May be null or empty to indicate that no hash algorithm is applicable. + + + + + + + + + + + + + + + + + Implements the operator ==. + + The left operand. + The right operand. + + The result of the == operator. + + + + + Implements the operator !=. + + The left operand. + The right operand. + + The result of the != operator. + + + + + A MongoDB-X509 authenticator. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The username. + + + + + + + + + + + + + + + + A PLAIN SASL authenticator. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The credential. + + + + + + + Base class for a SASL authenticator. + + + + + Initializes a new instance of the class. + + The mechanism. + + + + + + + Gets the name of the database. + + + The name of the database. + + + + + + + + + + + + + + Represents a SASL conversation. + + + + + Initializes a new instance of the class. + + The connection identifier. + + + + Gets the connection identifier. + + + The connection identifier. + + + + + + + + Registers the item for disposal. + + The disposable item. + + + + Represents a SASL mechanism. + + + + + Gets the name of the mechanism. + + + The name. + + + + + Initializes the mechanism. + + The connection. + The SASL conversation. + The connection description. + The initial SASL step. + + + + Represents a SASL step. + + + + + Gets the bytes to send to server. + + + The bytes to send to server. + + + + + Gets a value indicating whether this instance is complete. + + + true if this instance is complete; otherwise, false. + + + + + Transitions the SASL conversation to the next step. + + The SASL conversation. + The bytes received from server. + The next SASL step. + + + + Represents a completed SASL step. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The bytes to send to server. + + + + + + + + + + + + + A SCRAM-SHA1 SASL authenticator. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The credential. + + + + Represents a username/password credential. + + + + + Initializes a new instance of the class. + + The source. + The username. + The password. + + + + Initializes a new instance of the class. + Less secure when used in conjunction with SCRAM-SHA-256, due to the need to store the password in a managed + string in order to SaslPrep it. + See Driver Authentication: SCRAM-SHA-256 + for additional details. + + The source. + The username. + The password. + + + + Gets the password. + + + The password. + + + + + Gets the the SASLprepped password. + May create a cleartext copy of the password in managed memory the first time it is accessed. + Use only as needed e.g. for SCRAM-SHA-256. + + The SASLprepped password. + + + + Gets the source. + + + The source. + + + + + Gets the username. + + + The username. + + + + + Gets the password (converts the password from a SecureString to a regular string). + + The password. + + + + Represents a connection authenticator. + + + + + Gets the name of the authenticator. + + + The name. + + + + + Authenticates the connection. + + The connection. + The connection description. + The cancellation token. + + + + Authenticates the connection. + + The connection. + The connection description. + The cancellation token. + A Task. + + + + Optionally customizes isMaster command. + + Initial isMaster command. + Optionally mutated isMaster command. + + + + A MONGODB-CR authenticator. + This authenticator was replaced by in MongoDB 3.0, and is now deprecated. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The credential. + + + + + + + + + + + + + + + + Represents a read binding that is bound to a channel. + + + + + Initializes a new instance of the class. + + The server. + The channel. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + Represents a read-write binding that is bound to a channel. + + + + + Initializes a new instance of the class. + + The server. + The channel. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a read-write binding to a channel source. + + + + + Initializes a new instance of the class. + + The channel source. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a session. + + + + + + Initializes a new instance of the class. + + The cluster. + The server session. + The options. + + + + Gets the cluster. + + + The cluster. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A handle to a reference counted core session. + + + + + + Initializes a new instance of the class. + + The session. + + + + Initializes a new instance of the class. + + The wrapped. + + + + + + + + + + Core session options. + + + + + Initializes a new instance of the class. + + if set to true this session is causally consistent] + if set to true this session is an implicit session. + The default transaction options. + + + + Gets the default transaction options. + + + The default transaction options. + + + + + Gets a value indicating whether this session is causally consistent. + + + true if this session is causally consistent; otherwise, false. + + + + + Gets a value indicating whether this session is an implicit session. + + + true if this session is an implicit session; otherwise, false. + + + + + Represents the current state of a Core transaction. + + + + + StartTransaction has been called but no operations have been performed yet. + + + + + The transaction is in progress. + + + + + CommitTransaction has been called. + + + + + AbortTransaction has been called. + + + + + The interface for a session in Core. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Gets the current transaction. + + + The current transaction. + + + + + Gets the session Id. + + + The session Id. + + + + + Gets a value indicate whether this instance is causally consistent. + + + true if the session is causally consistent. + + + + + Gets a value indicating whether this instance is implicit session. + + + true if this instance is implicit session; otherwise, false. + + + + + Gets a value indicating whether this instance is in a transaction. + + + true if this instance is in a transaction; otherwise, false. + + + + + Gets the operation time. + + + The operation time. + + + + + Gets the session options. + + + The session options. + + + + + Gets the server session. + + + The server session. + + + + + Aborts the transaction. + + The cancellation token. + + + + Aborts the transaction. + + The cancellation token. + A Task. + + + + The driver is about to send a command on this session. Called to track session state. + + + + + Advances the cluster time. + + The new cluster time. + + + + Advances the operation time. + + The new operation time. + + + + Advances the transaction id. + + The transaction id. + + + + Commits the transaction. + + The cancellation token. + + + + Commits the transaction. + + The cancellation token. + A Task. + + + + Starts a transaction. + + The transaction options. + + + + Called by the driver when the session is used (i.e. sent to the server). + + + + + A handle to a reference counted core session. + + + + + + Increments the reference count of the underlying session and returns a new handle to it. + + A new handle. + + + + An object that represents no core session. + + + + + + Gets the pre-created instance. + + + The instance. + + + + + Returns a new handle to a NoCoreSession object. + + A new handle to the NoCoreSession object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A handle to a core session that should not be disposed when the handle is disposed. + + + + + + Initializes a new instance of the class. + + The wrapped session. + + + + + + + + + + A reference counted core session. + + + + + + Initializes a new instance of the class. + + The wrapped. + + + + Decrements the reference count. + + + + + Increments the reference count. + + + + + The state of a transaction. + + + + + Initializes a new instance of the class. + + The transaction number. + The transaction options. + + + + Gets a value indicating whether the transaction is empty. + + + true if the transaction is empty; otherwise, false. + + + + + Gets the transaction state. + + + The transaction state. + + + + + Gets the transaction number. + + + The transaction number. + + + + + Gets the transaction options. + + + The transaction options. + + + + + An abstract base class for a core session that wraps another core session. + + + + + + Initializes a new instance of the class. + + The wrapped. + if set to true [owns wrapped]. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the wrapped session. + + + The wrapped session. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Determines whether this instance is disposed. + + + true if this instance is disposed; otherwise, false. + + + + + Throws if disposed. + + + + + + Represents a handle to a read-write binding. + + + + + Initializes a new instance of the class. + + The write binding. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a handle to a read binding. + + + + + Initializes a new instance of the class. + + The read binding. + + + + + + + + + + + + + + + + + + + + + + Represents a read binding to a single server; + + + + + Initializes a new instance of the class. + + The server. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + Represents a read/write binding to a single server. + + + + + Initializes a new instance of the class. + + The server. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a split read-write binding, where the reads use one binding and the writes use another. + + + + + Initializes a new instance of the class. + + The read binding. + The write binding. + + + + Initializes a new instance of the class. + + The cluster. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a channel source. + + + + + Gets the server. + + + The server. + + + + + Gets the server description. + + + The server description. + + + + + Gets the session. + + + The session. + + + + + Gets a channel. + + The cancellation token. + A channel. + + + + Gets a channel. + + The cancellation token. + A Task whose result is a channel. + + + + Represents a handle to a channel source. + + + + + Returns a new handle to the underlying channel source. + + A handle to a channel source. + + + + Represents a channel (similar to a connection but operates at the level of protocols rather than messages). + + + + + Gets the connection description. + + + The connection description. + + + + + Executes a Command protocol. + + The type of the result. + The database namespace. + The command. + The command validator. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + The result of the Command protocol. + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command validator. + The additional options. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + + The result of the Command protocol. + + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command payloads. + The command validator. + The additional options. + The post write action. + The response handling. + The result serializer. + The message encoder settings. + The cancellation token. + + The result of the Command protocol. + + + + + Executes a Command protocol. + + The type of the result. + The database namespace. + The command. + The command validator. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + A Task whose result is the result of the Command protocol. + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command validator. + The additional options. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + + A Task whose result is the result of the Command protocol. + + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command payloads. + The command validator. + The additional options. + The post write action. + The response handling. + The result serializer. + The message encoder settings. + The cancellation token. + + A Task whose result is the result of the Command protocol. + + + + + Executes a Delete protocol. + + The collection namespace. + The query. + if set to true all matching documents are deleted. + The message encoder settings. + The write concern. + The cancellation token. + The result of the Delete protocol. + + + + Executes a Delete protocol. + + The collection namespace. + The query. + if set to true all matching documents are deleted. + The message encoder settings. + The write concern. + The cancellation token. + A Task whose result is the result of the Delete protocol. + + + + Executes a GetMore protocol. + + The type of the document. + The collection namespace. + The query. + The cursor identifier. + Size of the batch. + The serializer. + The message encoder settings. + The cancellation token. + The result of the GetMore protocol. + + + + Executes a GetMore protocol. + + The type of the document. + The collection namespace. + The query. + The cursor identifier. + Size of the batch. + The serializer. + The message encoder settings. + The cancellation token. + A Task whose result is the result of the GetMore protocol. + + + + Executes an Insert protocol. + + The type of the document. + The collection namespace. + The write concern. + The serializer. + The message encoder settings. + The document source. + The maximum batch count. + Maximum size of the message. + if set to true the server will continue with subsequent Inserts even if errors occur. + A delegate that determines whether to piggy-back a GetLastError messsage with the Insert message. + The cancellation token. + The result of the Insert protocol. + + + + Executes an Insert protocol. + + The type of the document. + The collection namespace. + The write concern. + The serializer. + The message encoder settings. + The document source. + The maximum batch count. + Maximum size of the message. + if set to true the server will continue with subsequent Inserts even if errors occur. + A delegate that determines whether to piggy-back a GetLastError messsage with the Insert message. + The cancellation token. + A Task whose result is the result of the Insert protocol. + + + + Executes a KillCursors protocol. + + The cursor ids. + The message encoder settings. + The cancellation token. + + + + Executes a KillCursors protocol. + + The cursor ids. + The message encoder settings. + The cancellation token. + A Task that represents the KillCursors protocol. + + + + Executes a Query protocol. + + The type of the document. + The collection namespace. + The query. + The fields. + The query validator. + The number of documents to skip. + The size of a batch. + if set to true sets the SlaveOk bit to true in the query message sent to the server. + if set to true the server is allowed to return partial results if any shards are unavailable. + if set to true the server will not timeout the cursor. + if set to true the OplogReplay bit will be set. + if set to true the query should return a tailable cursor. + if set to true the server should await awhile before returning an empty batch for a tailable cursor. + The serializer. + The message encoder settings. + The cancellation token. + The result of the Insert protocol. + + + + Executes a Query protocol. + + The type of the document. + The collection namespace. + The query. + The fields. + The query validator. + The number of documents to skip. + The size of a batch. + if set to true sets the SlaveOk bit to true in the query message sent to the server. + if set to true the server is allowed to return partial results if any shards are unavailable. + if set to true the server will not timeout the cursor. + if set to true the OplogReplay bit will be set. + if set to true the query should return a tailable cursor. + if set to true the server should await awhile before returning an empty batch for a tailable cursor. + The serializer. + The message encoder settings. + The cancellation token. + A Task whose result is the result of the Insert protocol. + + + + Executes an Update protocol. + + The collection namespace. + The message encoder settings. + The write concern. + The query. + The update. + The update validator. + if set to true the Update can affect multiple documents. + if set to true the document will be inserted if it is not found. + The cancellation token. + The result of the Update protocol. + + + + Executes an Update protocol. + + The collection namespace. + The message encoder settings. + The write concern. + The query. + The update. + The update validator. + if set to true the Update can affect multiple documents. + if set to true the document will be inserted if it is not found. + The cancellation token. + A Task whose result is the result of the Update protocol. + + + + Represents a handle to a channel. + + + + + Returns a new handle to the underlying channel. + + A channel handle. + + + + Represents a read binding to a cluster using a ReadPreference to select the server. + + + + + Initializes a new instance of the class. + + The cluster. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + Represents a write binding to a writable server. + + + + + Initializes a new instance of the class. + + The cluster. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a handle to a channel source. + + + + + Initializes a new instance of the class. + + The channel source. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a read or write binding associated with a session. + + + + + + Gets the session. + + + The session. + + + + + Represents a binding that determines which channel source gets used for read operations. + + + + + Gets the read preference. + + + The read preference. + + + + + Gets a channel source for read operations. + + The cancellation token. + A channel source. + + + + Gets a channel source for read operations. + + The cancellation token. + A channel source. + + + + Represents a binding that determines which channel source gets used for write operations. + + + + + Gets a channel source for write operations. + + The cancellation token. + A channel source. + + + + Gets a channel source for write operations. + + The cancellation token. + A channel source. + + + + Represents a binding that can be used for both read and write operations. + + + + + Represents a handle to a read binding. + + + + + Returns a new handle to the underlying read binding. + + A read binding handle. + + + + Represents a handle to a write binding. + + + + + Returns a new handle to the underlying write binding. + + A write binding handle. + + + + Represents a handle to a read-write binding. + + + + + Returns a new handle to the underlying read-write binding. + + A read-write binding handle. + + + + Represents a channel source that is bound to a server. + + + + + Initializes a new instance of the class. + + The server. + The session. + + + + + + + + + + + + + + + + + + + + + + Represents settings for SDAM logging. + + + + + Initializes a new instance of the class. + + The filename to log to. An empty string or null will disable logging. + "stdout" sneds output to stdout. + + + + The filename to log to. + + + + + Returns a new SdamLoggingSettings instance with some settings changed. + + The filename. + A new SdamLoggingSettings instance. + + + + Whether or not SDAM logging is enabled. + + + + + Whether or not logging should be written to stdout. + + + + + Represents settings for an SSL stream. + + + + + Initializes a new instance of the class. + + Whether to check for certificate revocation. + The client certificates. + The client certificate selection callback. + The enabled protocols. + The server certificate validation callback. + + + + Gets a value indicating whether to check for certificate revocation. + + + true if certificate should be checked for revocation; otherwise, false. + + + + + Gets the client certificates. + + + The client certificates. + + + + + Gets the client certificate selection callback. + + + The client certificate selection callback. + + + + + Gets the enabled SSL protocols. + + + The enabled SSL protocols. + + + + + Gets the server certificate validation callback. + + + The server certificate validation callback. + + + + + Returns a new SsslStreamSettings instance with some settings changed. + + Whether to check certificate revocation. + The client certificates. + The client certificate selection callback. + The enabled protocols. + The server certificate validation callback. + A new SsslStreamSettings instance. + + + + Represents settings for a cluster. + + + + + Initializes a new instance of the class. + + The connection mode. + The end points. + Maximum size of the server selection wait queue. + Name of the replica set. + The server selection timeout. + The pre server selector. + The post server selector. + + + + Gets the connection mode. + + + The connection mode. + + + + + Gets the end points. + + + The end points. + + + + + Gets the maximum size of the server selection wait queue. + + + The maximum size of the server selection wait queue. + + + + + Gets the name of the replica set. + + + The name of the replica set. + + + + + Gets the server selection timeout. + + + The server selection timeout. + + + + + Gets the pre server selector. + + + The pre server selector. + + + + + Gets the post server selector. + + + The post server selector. + + + + + Returns a new ClusterSettings instance with some settings changed. + + The connection mode. + The end points. + Maximum size of the server selection wait queue. + Name of the replica set. + The server selection timeout. + The pre server selector. + The post server selector. + A new ClusterSettings instance. + + + + Represents a cluster builder. + + + + + Initializes a new instance of the class. + + + + + Builds the cluster. + + A cluster. + + + + Configures the cluster settings. + + The cluster settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the connection settings. + + The connection settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the connection pool settings. + + The connection pool settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the SDAM logging settings. + + The SDAM logging settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the server settings. + + The server settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the SSL stream settings. + + The SSL stream settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the TCP stream settings. + + The TCP stream settings configurator delegate. + A reconfigured cluster builder. + + + + Registers a stream factory wrapper. + + The stream factory wrapper. + A reconfigured cluster builder. + + + + Subscribes to events of type . + + The type of the event. + The handler. + A reconfigured cluster builder. + + + + Subscribes the specified subscriber. + + The subscriber. + A reconfigured cluster builder. + + + + Extension methods for a ClusterBuilder. + + + + + Configures a cluster builder from a connection string. + + The cluster builder. + The connection string. + A reconfigured cluster builder. + + + + Configures a cluster builder from a connection string. + + The cluster builder. + The connection string. + A reconfigured cluster builder. + + + + Configures the cluster to write performance counters. + + The cluster builder. + The name of the application. + if set to true install the performance counters first. + A reconfigured cluster builder. + + + + Configures the cluster to trace events to the specified . + + The builder. + The trace source. + A reconfigured cluster builder. + + + + Configures the cluster to trace command events to the specified . + + The builder. + The trace source. + A reconfigured cluster builder. + + + + Represents settings for a connection pool. + + + + + Initializes a new instance of the class. + + The maintenance interval. + The maximum number of connections. + The minimum number of connections. + Size of the wait queue. + The wait queue timeout. + + + + Gets the maintenance interval. + + + The maintenance interval. + + + + + Gets the maximum number of connections. + + + The maximum number of connections. + + + + + Gets the minimum number of connections. + + + The minimum number of connections. + + + + + Gets the size of the wait queue. + + + The size of the wait queue. + + + + + Gets the wait queue timeout. + + + The wait queue timeout. + + + + + Returns a new ConnectionPoolSettings instance with some settings changed. + + The maintenance interval. + The maximum connections. + The minimum connections. + Size of the wait queue. + The wait queue timeout. + A new ConnectionPoolSettings instance. + + + + Represents settings for a connection. + + + + + Initializes a new instance of the class. + + The authenticators. + The maximum idle time. + The maximum life time. + The application name. + + + + Gets the name of the application. + + + The name of the application. + + + + + Gets the authenticators. + + + The authenticators. + + + + + Gets the maximum idle time. + + + The maximum idle time. + + + + + Gets the maximum life time. + + + The maximum life time. + + + + + Returns a new ConnectionSettings instance with some settings changed. + + The authenticators. + The maximum idle time. + The maximum life time. + The application name. + A new ConnectionSettings instance. + + + + Represents settings for a TCP stream. + + + + + Initializes a new instance of the class. + + The address family. + The connect timeout. + The read timeout. + Size of the receive buffer. + Size of the send buffer. + The socket configurator. + The write timeout. + + + + Gets the address family. + + + The address family. + + + + + Gets the connect timeout. + + + The connect timeout. + + + + + Gets the read timeout. + + + The read timeout. + + + + + Gets the size of the receive buffer. + + + The size of the receive buffer. + + + + + Gets the size of the send buffer. + + + The size of the send buffer. + + + + + Gets the socket configurator. + + + The socket configurator. + + + + + Gets the write timeout. + + + The write timeout. + + + + + Returns a new TcpStreamSettings instance with some settings changed. + + The address family. + The connect timeout. + The read timeout. + Size of the receive buffer. + Size of the send buffer. + The socket configurator. + The write timeout. + A new TcpStreamSettings instance. + + + + Represents the scheme used to construct the connection string. + + + + + Mongodb scheme (mongodb://) + + + + + SRV scheme (mongodb+srv://) + + + + + Represents a connection string. + + + + + Initializes a new instance of the class. + + The connection string. + + + + Gets all the option names. + + + + + Gets all the unknown option names. + + + + + Gets the application name. + + + + + Gets the auth mechanism. + + + + + Gets the auth mechanism properties. + + + + + Gets the auth source. + + + + + Gets the connection mode. + + + + + Gets the connect timeout. + + + + + Gets the name of the database. + + + + + Gets the fsync value of the write concern. + + + + + Gets the heartbeat interval. + + + + + Gets the heartbeat timeout. + + + + + Gets the hosts. + + + + + Gets whether to use IPv6. + + + + + Gets the journal value of the write concern. + + + + + Gets the local threshold. + + + + + Gets the max idle time. + + + + + Gets the max life time. + + + + + Gets the max size of the connection pool. + + + + + Gets the max staleness. + + + + + Gets the min size of the connection pool. + + + + + Gets the password. + + + + + Gets the read concern level. + + + The read concern level. + + + + + Gets the read preference. + + + + + Gets the replica set name. + + + + + Gets the read preference tags. + + + + + Gets a value indicating whether or not to retry writes. + + + + + Gets the scheme. + + + + + Gets the server selection timeout. + + + + + Gets the socket timeout. + + + + + Gets whether to use SSL. + + + + + Gets whether to verify SSL certificates. + + + + + Gets the username. + + + + + Gets the UUID representation. + + + + + Gets the wait queue multiple. + + + + + Gets the wait queue size. + + + + + Gets the wait queue timeout. + + + + + Gets the w value of the write concern. + + + + + Gets the wtimeout value of the write concern. + + + + + Gets the option. + + The name. + The option with the specified name. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + A resolved ConnectionString. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + The cancellation token. + A resolved ConnectionString. + + + + + + + Represents settings for a server. + + + + + Gets the default heartbeat interval. + + + + + Gets the default heartbeat timeout. + + + + + Initializes a new instance of the class. + + The heartbeat interval. + The heartbeat timeout. + + + + Gets the heartbeat interval. + + + The heartbeat interval. + + + + + Gets the heartbeat timeout. + + + The heartbeat timeout. + + + + + Returns a new ServerSettings instance with some settings changed. + + The heartbeat interval. + The heartbeat timeout. + A new ServerSettings instance. + + + + Represents a connection identifier. + + + + + Initializes a new instance of the class. + + The server identifier. + + + + Initializes a new instance of the class. + + The server identifier. + The local value. + + + + Gets the server identifier. + + + The server identifier. + + + + + Gets the local value. + + + The local value. + + + + + Gets the server value. + + + The server value. + + + + + + + + + + + + + + Compares all fields of two ConnectionId instances (Equals ignores the ServerValue). + + The other ConnectionId. + True if both instances are equal. + + + + + + + Returns a new instance of ConnectionId with a new server value. + + The server value. + A ConnectionId. + + + + Represents a connection using the binary wire protocol over a binary stream. + + + + + Represents a factory of BinaryConnections. + + + + + Represents information describing a connection. + + + + + Initializes a new instance of the class. + + The connection identifier. + The issMaster result. + The buildInfo result. + + + + Gets the buildInfo result. + + + The buildInfo result. + + + + + Gets the connection identifier. + + + The connection identifier. + + + + + Gets the isMaster result. + + + The isMaster result. + + + + + Gets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the maximum size of a wire document. + + + The maximum size of a wire document. + + + + + Gets the server version. + + + The server version. + + + + + + + + + + + + + + Returns a new instance of ConnectionDescription with a different connection identifier. + + The value. + A connection description. + + + + Represents internal IConnection extension methods (used to easily access the IConnectionInternal methods). + + + + + Represents a connection initializer (opens and authenticates connections). + + + + + Represents a connection. + + + + + Gets the connection identifier. + + + The connection identifier. + + + + + Gets the connection description. + + + The connection description. + + + + + Gets the end point. + + + The end point. + + + + + Gets a value indicating whether this instance is expired. + + + true if this instance is expired; otherwise, false. + + + + + Gets the connection settings. + + + The connection settings. + + + + + Opens the connection. + + The cancellation token. + + + + Opens the connection. + + The cancellation token. + A Task. + + + + Receives a message. + + The id of the sent message for which a response is to be received. + The encoder selector. + The message encoder settings. + The cancellation token. + + The response message. + + + + + Receives a message. + + The id of the sent message for which a response is to be received. + The encoder selector. + The message encoder settings. + The cancellation token. + + A Task whose result is the response message. + + + + + Sends the messages. + + The messages. + The message encoder settings. + The cancellation token. + + + + Sends the messages. + + The messages. + The message encoder settings. + The cancellation token. + A Task. + + + + Represents a handle to a connection. + + + + + A new handle to the underlying connection. + + A connection handle. + + + + Represents a connection factory. + + + + + Creates the connection. + + The server identifier. + The end point. + A connection. + + + + Represents a stream factory. + + + + + Creates a stream. + + The end point. + The cancellation token. + A Stream. + + + + Creates a stream. + + The end point. + The cancellation token. + A Task whose result is the Stream. + + + + Represents a factory for a binary stream over a TCP/IP connection. + + + + + Represents the result of a buildInfo command. + + + + + Initializes a new instance of the class. + + The wrapped result document. + + + + Gets the server version. + + + The server version. + + + + + Gets the wrapped result document. + + + The wrapped result document. + + + + + + + + + + + + + + Represents the result of an isMaster command. + + + + + Initializes a new instance of the class. + + The wrapped result document. + + + + Gets the election identifier. + + + + + Get whether SaslSupportedMechs was part of the isMaster response. + + + Whether SaslSupportedMechs was part of the isMaster response. + + + + + Gets a value indicating whether this instance is an arbiter. + + + true if this instance is an arbiter; otherwise, false. + + + + + Gets a value indicating whether this instance is a replica set member. + + + true if this instance is a replica set member; otherwise, false. + + + + + Gets the last write timestamp. + + + The last write timestamp. + + + + + Gets the logical session timeout. + + + The logical session timeout. + + + + + Gets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the endpoint the server is claiming it is known as. + + + + + Get the SaslSupportedMechs. + + + The SaslSupportedMechs. Empty if saslSupportedMechs was an empty list or if saslSupportedMechs was not + included in the isMaster response. + + + + + Gets the type of the server. + + + The type of the server. + + + + + Gets the replica set tags. + + + The replica set tags. + + + + + Gets the maximum wire version. + + + The maximum wire version. + + + + + Gets the minimum wire version. + + + The minimum wire version. + + + + + Gets the wrapped result document. + + + The wrapped result document. + + + + + + + + + + + + + + Gets the replica set configuration. + + The replica set configuration. + + + + An event subscriber that writes SDAM events to a trace source. + + + + + Initializes a new instance of the class. + + The trace source. + + + + + + + An event subscriber that writes command events to a trace source. + + + + + Initializes a new instance of the class. + + The trace source. + + + + + + + An event subscriber that writes to a trace source. + + + + + Initializes a new instance of the class. + + The trace source. + + + + + + + + Represents an event subscriber that records certain events to Windows performance counters. + + + + + Installs the performance counters. + + + + + Initializes a new instance of the class. + + The name of the application. + + + + + + + + An informational event used for logging Server Discovery and Monitoring (SDAM) events. + + + + + Initializes a new instance of the struct. + + Function that creates the message to log. + + + + Initializes a new instance of the struct. + + The message to log. + + + + Gets the message. + + + + + + + + + Occurs before a server is selected. + + + + + Initializes a new instance of the struct. + + The cluster description. + The server selector. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the cluster description. + + + + + Gets the operation identifier. + + + + + Gets the server selector. + + + + + + Occurs after a server is selected. + + + + + Initializes a new instance of the struct. + + The cluster description. + The server selector. + The selected server. + The duration of time it took to select the server. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the cluster description. + + + + + Gets the duration of time it took to select the server. + + + + + Gets the operation identifier. + + + + + Gets the server selector. + + + + + Gets the selected server. + + + + + + Occurs when selecting a server fails. + + + + + Initializes a new instance of the struct. + + The cluster description. + The server selector. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the cluster description. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the server selector. + + + + + + Occurs when a cluster has changed. + + + + + Initializes a new instance of the struct. + + The old description. + The new description. + + + + Gets the cluster identifier. + + + + + Gets the old description. + + + + + Gets the new description. + + + + + + Occurs before a server is removed from the cluster. + + + + + Initializes a new instance of the struct. + + The server identifier. + The reason the server is being removed. + + + + Gets the cluster identifier. + + + + + Gets the reason the server is being removed. + + + + + Gets the server identifier. + + + + + + Occurs after a server has been removed from the cluster. + + + + + Initializes a new instance of the struct. + + The server identifier. + The reason. + The duration of time it took to remove the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to remove the server. + + + + + Gets the reason the server was removed. + + + + + Gets the server identifier. + + + + + + Occurs after a cluster is closed. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The duration of time it took to close the cluster. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to close the cluster. + + + + + + Occurs after a cluster is opened. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The cluster settings. + The duration of time it took to open the cluster. + + + + Gets the cluster identifier. + + + + + Gets the cluster settings. + + + + + Gets the duration of time it took to open the cluster. + + + + + + Occurs after a server is added to the cluster. + + + + + Initializes a new instance of the struct. + + The server identifier. + The duration of time it took to add the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to add a server, + + + + + Gets the server identifier. + + + + + + Occurs before a server is added to the cluster. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The end point. + + + + Gets the cluster identifier. + + + + + Gets the end point. + + + + + + Occurs before a cluster is opened. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The cluster settings. + + + + Gets the cluster identifier. + + + + + Gets the cluster settings. + + + + + + Occurs before a cluster is closed. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + + + + Gets the cluster identifier. + + + + + Occurs when a command has failed. + + + + + Initializes a new instance of the struct. + + Name of the command. + The exception. + The operation identifier. + The request identifier. + The connection identifier. + The duration. + + + + Gets the name of the command. + + + + + Gets the connection identifier. + + + + + Gets the duration. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the request identifier. + + + + + Occurs when a command has succeeded. + + + + + Initializes a new instance of the struct. + + Name of the command. + The reply. + The operation identifier. + The request identifier. + The connection identifier. + The duration. + + + + Gets the name of the command. + + + + + Gets the connection identifier. + + + + + Gets the duration. + + + + + Gets the operation identifier. + + + + + Gets the reply. + + + + + Gets the request identifier. + + + + + Occurs when a command has started. + + + + + Initializes a new instance of the class. + + Name of the command. + The command. + The database namespace. + The operation identifier. + The request identifier. + The connection identifier. + + + + Gets the command. + + + + + Gets the name of the command. + + + + + Gets the connection identifier. + + + + + Gets the database namespace. + + + + + Gets the operation identifier. + + + + + Gets the request identifier. + + + + + + Occurs after a connection is closed. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to close the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to close the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is closed. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is opened. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The connection settings. + The duration of time it took to open the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the connection settings. + + + + + Gets the duration of time it took to open the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is opened. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The connection settings. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the connection settings. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs when a connection fails to open. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The connection settings. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the connection settings. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + Occurs after a message is received. + + + + + + Initializes a new instance of the struct. + + The connection identifier. + The id of the message we received a response to. + The length of the received message. + The duration of network time it took to receive the message. + The duration of deserialization time it took to receive the message. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to receive the message. + + + + + Gets the duration of deserialization time it took to receive the message. + + + + + Gets the duration of network time it took to receive the message. + + + + + Gets the length of the received message. + + + + + Gets the operation identifier. + + + + + Gets the id of the message we received a response to. + + + + + Gets the server identifier. + + + + + + Occurs before a message is received. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The id of the message we are receiving a response to. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the id of the message we are receiving a response to. + + + + + Gets the server identifier. + + + + + + Occurs when a message was unable to be received. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The id of the message we were receiving a response to. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets id of the message we were receiving a response to. + + + + + Gets the server identifier. + + + + + + Occurs before a message is sent. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The request ids. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the request ids. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs when a message could not be sent. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The request ids. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the request ids. + + + + + Gets the server identifier. + + + + + + Occurs after a message has been sent. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The request ids. + The length. + The duration of time spent on the network. + The duration of time spent serializing the messages. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to send the message. + + + + + Gets the duration of time spent on the network. + + + + + Gets the operation identifier. + + + + + Gets the duration of time spent serializing the messages. + + + + + Gets the combined length of the messages. + + + + + Gets the request ids. + + + + + Gets the server identifier. + + + + + A subscriber to events. + + + + + Tries to get an event handler for an event of type . + + The type of the event. + The handler. + true if this subscriber has provided an event handler; otherwise false. + + + + Subscribes methods with a single argument to events + of that single argument's type. + + + + + Initializes a new instance of the class. + + The instance. + Name of the method to match against. + The binding flags. + + + + + + + + Occurs after a server is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + The duration of time it took to close the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to close the server. + + + + + Gets the server identifier. + + + + + + Occurs after a server's description has changed. + + + + + Initializes a new instance of the struct. + + The old description. + The new description. + + + + Gets the cluster identifier. + + + + + Gets the new description. + + + + + Gets the old description. + + + + + Gets the server identifier. + + + + + + Occurs when a heartbeat failed. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The exception. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + + + Gets the server identifier. + + + + + + Occurs after a server is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The server settings. + The duration of time it took to open the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to open the server. + + + + + Gets the server identifier. + + + + + Gets the server settings. + + + + + + Occurs before heartbeat is issued. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to complete the heartbeat. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to complete the heartbeat. + + + + + Gets the server identifier. + + + + + + Occurs when a heartbeat succeeded. + + + + + Initializes a new instance of the struct. + + The connection identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a server is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The server settings. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + Gets the server settings. + + + + + + Occurs before a server is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is checked in to the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to check in the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to check in the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is checked out of the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to check out the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to check out the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is checked in to the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is checking out of the pool. + + + + + Initializes a new instance of the struct. + + The server identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs when a connection could not be checked out of the pool. + + + + + Initializes a new instance of the struct. + + The server identifier. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is removed from the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is removed from the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to remove the connection from the pool. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to remove the connection from the pool. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after the pool is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The connection pool settings. + + + + Gets the cluster identifier. + + + + + Gets the connection pool settings. + + + + + Gets the server identifier. + + + + + + Occurs after the pool is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is added to the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to add the connection to the pool. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to add the server to the pool. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is added to the pool. + + + + + Initializes a new instance of the struct. + + The server identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before the pool is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + + Occurs before the pool is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The connection pool settings. + + + + Gets the cluster identifier. + + + + + Gets the connection pool settings. + + + + + Gets the server identifier. + + + + + Occurs when a connection fails. + + + + + + Initializes a new instance of the struct. + + The connection identifier. + The exception. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + The exception. + + + + + Gets the server identifier. + + + + + Subscriber for a single type of event. + + The type of the single event. + + + + Initializes a new instance of the class. + + The handler. + + + + + + + Represents the arrayFilters feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Throws if arrayFilters value is not null and arrayFilters are not supported. + + The server version. + The value. + + + + Represents the collation feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Throws if collation value is not null and collations are not supported. + + The server version. + The value. + + + + Represents the commands that write accept write concern concern feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Returns true if the write concern value supplied is one that should be sent to the server and the server version supports the commands that write accept write concern feature. + + The server version. + The write concern value. + Whether the write concern should be sent to the server. + + + + Represents a feature that is not supported by all versions of the server. + + + + + Gets the aggregate feature. + + + + + Gets the aggregate allow disk use feature. + + + + + Gets the aggregate bucket stage feature. + + + + + Gets the aggregate comment feature. + + + + + Gets the aggregate count stage feature. + + + + + Gets the aggregate cursor result feature. + + + + + Gets the aggregate explain feature. + + + + + Gets the aggregate $facet stage feature. + + + + + Gets the aggregate $graphLookup stage feature. + + + + + Gets the aggregate hint feature. + + + + + Gets the aggregate out feature. + + + + + Gets the arrayFilters feature. + + + + + Gets the bypass document validation feature. + + + + + Gets the aggregate $changeStream stage feature. + + + + + Gets the collation feature. + + + + + Gets the command message feature. + + + + + Gets the commands that write accept write concern feature. + + + + + Gets the create indexes command feature. + + + + + Gets the current op command feature. + + + + + Gets the document validation feature. + + + + + Gets the explain command feature. + + + + + Gets the fail points feature. + + + + + Gets the find and modify write concern feature. + + + + + Gets the find command feature. + + + + + Gets the geoNear command feature. + + + + + Gets the group command feature. + + + + + Gets the index options defaults feature. + + + + + Gets the list databases filter feature. + + + + + Get the list databases nameOnly feature. + + + + + Gets the list collections command feature. + + + + + Gets the list indexes command feature. + + + + + Gets the maximum staleness feature. + + + + + Gets the maximum time feature. + + + + + Gets the partial indexes feature. + + + + + Gets the read concern feature. + + + + + Gets the scram sha1 authentication feature. + + + + + Gets the scram sha256 authentication feature. + + + + + Gets the server extracts username from X509 certificate feature. + + + + + Gets the transactions feature. + + + + + Gets the user management commands feature. + + + + + Gets the views feature. + + + + + Gets the write commands feature. + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + /// The server version that stops support the feature. + + + + Gets the name of the feature. + + + + + Gets the first server version that supports the feature. + + + + + Gets the last server version that does not support the feature. + + + + + Determines whether a feature is supported by a version of the server. + + The server version. + Whether a feature is supported by a version of the server. + + + + Returns a version of the server where the feature is or is not supported. + + Whether the feature is supported or not. + A version of the server where the feature is or is not supported. + + + + Throws if the feature is not supported by a version of the server. + + The server version. + + + + A serializer for BatchableSource that serializes a fixed count of items. + + The type of the items. + + + + Initializes a new instance of the class. + + The item serializer. + The item element name validator. + The count. + + + + + + + Represents a batch of items that can be split if not all items can be processed at once. + + The type of the items. + + + + Gets a value indicating whether all items were processed. + + + true if all items were processed; otherwise, false. + + + + + Gets a value indicating whether the batch can be split. + + + true if the batch can be split; otherwise, false. + + + + + Gets the count. + + + The count. + + + + + Gets the items. + + + The items. + + + + + Gets the offset. + + + The offset. + + + + + Gets the count of processed items. Equal to zero until SetProcessedCount has been called. + + + The count of processed items. + + + + + Advances past the processed items. + + + + + Gets the items in the batch. + + + The items in the batch. + + + + + Gets the items that were processed. + + + The items that were processed. + + + + + Gets the items that were not processed. + + + The items that were not processed. + + + + + Sets the processed count. + + The value. + + + + Represents the read concern feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Throws if the read concern value is not the server default and read concern is not supported. + + The server version. + The value. + + + + A serializer for BatchableSource that serializes as much of the BatchableSource as fits in the max batch count and size. + + The type of the items. + + + + Initializes a new instance of the class. + + The item serializer. + The item element name validator. + The maximum batch count. + The maximum size of a serialized item. + The maximum size of the batch. + + + + + + + A mapper from error responses to custom exceptions. + + + + + Maps the specified response to a custom exception (if possible). + + The connection identifier. + The response. + + The custom exception (or null if the response could not be mapped to a custom exception). + + + + + Maps the specified writeConcernResult to a custom exception (if necessary). + + The connection identifier. + The write concern result. + + The custom exception (or null if the writeConcernResult was not mapped to an exception). + + + + + Maps the server response to a MongoNotPrimaryException or MongoNodeIsRecoveringException (if appropriate). + + The connection identifier. + The command. + The server response. + Name of the error message field. + The exception, or null if no exception necessary. + + + + Represents a tentative request to acquire a SemaphoreSlim. + + + + + Initializes a new instance of the class. + + The semaphore. + The cancellation token. + + + + Gets the semaphore wait task. + + + The semaphore wait task. + + + + + + + + Represents a batch of items that can be split if not all items can be processed at once. + + The type of the items. + + + + Initializes a new instance of the class. + + + Use this overload when you know the batch is small and won't have to be broken up into sub-batches. + In that case using this overload is simpler than using an enumerator and using the other constructor. + + The single batch. + + + + Initializes a new instance of the class. + + The enumerator that will provide the items for the batch. + + + + Initializes a new instance of the class. + + The items. + if set to true the batch can be split. + + + + Initializes a new instance of the class. + + The items. + The offset. + The count. + if set to true the batch can be split. + + + + Gets a value indicating whether all items were processed. + + + true if all items were processed; otherwise, false. + + + + + Gets a value indicating whether the batch can be split. + + + true if the batch can be split; otherwise, false. + + + + + Gets the count. + + + The count. + + + + + Gets the items. + + + The items. + + + + + Gets the offset. + + + The offset. + + + + + Gets the count of processed items. Equal to zero until SetProcessedCount has been called. + + + The count of processed items. + + + + + Advances past the processed items. + + + + + Gets the items in the batch. + + + The items in the batch. + + + + + Gets the items that were processed. + + + The items that were processed. + + + + + Gets the items that were not processed. + + + The items that were not processed. + + + + + Sets the processed count. + + The value. + + + + Represents a range between a minimum and a maximum value. + + The type of the value. + + + + Initializes a new instance of the class. + + The minimum value. + The maximum value. + + + + Gets the maximum value. + + + The maximum value. + + + + + Gets the minimum value. + + + The minimum value. + + + + + + + + + + + + + + Determines whether this range overlaps with another range. + + The other range. + True if this range overlaps with the other + + + + + + + Thread-safe helper to manage a value. + + + + + Represents helper methods for EndPoints. + + + + + Gets an end point equality comparer. + + + An end point equality comparer. + + + + + Determines whether a list of end points contains a specific end point. + + The list of end points. + The specific end point to search for. + True if the list of end points contains the specific end point. + + + + Compares two end points. + + The first end point. + The second end point. + True if both end points are equal, or if both are null. + + + + Creates an end point from object data saved during serialization. + + The object data. + An end point. + + + + Gets the object data required to serialize an end point. + + The end point. + The object data. + + + + Compares two sequences of end points. + + The first sequence of end points. + The second sequence of end points. + True if both sequences contain the same end points in the same order, or if both sequences are null. + + + + Parses the string representation of an end point. + + The value to parse. + An end point. + + + + Returns a that represents the end point. + + The end point. + + A that represents the end point. + + + + + Tries to parse the string representation of an end point. + + The value to parse. + The result. + True if the string representation was parsed successfully. + + + + Represents methods that can be used to ensure that parameter values meet expected conditions. + + + + + Ensures that the value of a parameter is between a minimum and a maximum value. + + Type type of the value. + The value of the parameter. + The minimum value. + The maximum value. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is equal to a comparand. + + Type type of the value. + The value of the parameter. + The comparand. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to a comparand. + + Type type of the value. + The value of the parameter. + The comparand. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is infinite or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is infinite or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is not null. + + Type type of the value. + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is not null or empty. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null. + + Type type of the value. + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null, or infinite, or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or not empty. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or a valid timeout. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is a valid timeout. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that an assertion is true. + + The assertion. + The message to use with the exception that is thrown if the assertion is false. + + + + Ensures that an assertion is true. + + The assertion. + The message to use with the exception that is thrown if the assertion is false. + The parameter name. + + + + Ensures that the value of a parameter meets an assertion. + + Type type of the value. + The value of the parameter. + The assertion. + The name of the parameter. + The message to use with the exception that is thrown if the assertion is false. + The value of the parameter. + + + + Represents a semantic version number. + + + + + Initializes a new instance of the class. + + The major version. + The minor version. + The patch version. + + + + Initializes a new instance of the class. + + The major version. + The minor version. + The patch version. + The pre release version. + + + + Gets the major version. + + + The major version. + + + + + Gets the minor version. + + + The minor version. + + + + + Gets the patch version. + + + The patch version. + + + + + Gets the pre release version. + + + The pre release version. + + + + + + + + + + + + + + + + + + + + Parses a string representation of a semantic version. + + The string value to parse. + A semantic version. + + + + Tries to parse a string representation of a semantic version. + + The string value to parse. + The result. + True if the string representation was parsed successfully; otherwise false. + + + + Determines whether two specified semantic versions have the same value. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is the same as the value of b; otherwise false. + + + + + Determines whether two specified semantic versions have different values. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is different from the value of b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is greater than the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is greater than b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is greater than or equal to the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is greater than or equal to b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is less than the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is less than b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is less than or equal to the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is less than or equal to b; otherwise false. + + + + + A change stream cursor. + + The type of the output documents. + + + + + + + + Initializes a new instance of the class. + + The cursor. + The document serializer. + The binding. + The change stream operation. + + + + + + + + + + + + + A change stream operation. + + The type of the result. + + + + Gets or sets the resume after value. + + + The resume after value. + + + + + Gets or sets the start at operation time. + + + The start at operation time. + + + + + Resumes the operation after a resume token. + + The binding. + The cancellation token. + A cursor. + + + + Resumes the operation after a resume token. + + The binding. + The cancellation token. + A Task whose result is a cursor. + + + + A change stream operation. + + The type of the result values. + + + + Initializes a new instance of the class. + + The pipeline. + The result value serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The database namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Gets or sets the size of the batch. + + + The size of the batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets or sets the full document option. + + + The full document option. + + + + + Gets or sets the maximum await time. + + + The maximum await time. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + + + + + + + + + + + + + + + + + + + Represents a count documents operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the index hint. + + + The index hint. + + + + + Gets or sets a limit on the number of matching documents to count. + + + A limit on the number of matching documents to count. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets or sets the number of documents to skip before counting the remaining matching documents. + + + The number of documents to skip before counting the remaining matching documents. + + + + + + + + + + + Represents a create view operation. + + + + + Initializes a new instance of the class. + + The name of the database. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the namespace of the database. + + + The namespace of the database. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets the name of the view. + + + The name of the view. + + + + + Gets the name of the collection that the view is on. + + + The name of the collection that the view is on. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Abstract base class for AbortTransactionOperation and CommitTransactionOperation. + + + + + Initializes a new instance of the class. + + The write concern. + + + + Gets or sets the message encoder settings. + + + The message encoder settings. + + + + + Gets the write concern. + + + The write concern. + + + + + Gets the name of the command. + + + The name of the command. + + + + + + + + + + + The abort transaction operation. + + + + + Initializes a new instance of the class. + + The write concern. + + + + + + + The commit transaction operation. + + + + + Initializes a new instance of the class. + + The write concern. + + + + + + + + + + + + + Represents a delete command operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The deletes. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the deletes. + + + The deletes. + + + + + + + + + + + Represents an insert command operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The documents. + The document serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the documents. + + + The documents. + + + + + Gets the document serializer. + + + The document serializer. + + + + + + + + + + + An operation clock. + + + + + Gets the operation time. + + + The operation time. + + + + + Advances the operation time. + + The new operation time. + + + + Represents an operation (that may or may not be retryable) that can be executed in a retryable write context. + + The type of the result. + + + + Executes the first attempt. + + The context. + The cancellation token. + The result. + + + + Executes the first attempt. + + The context. + The cancellation token. + The result. + + + + Represents a retryable operation. + + The type of the result. + + + + Executes the first attempt. + + The context. + The attempt. + The transaction number. + The cancellation token. + The result. + + + + Executes the first attempt. + + The context. + The attempt. + The transaction number. + The cancellation token. + The result. + + + + An operation clock. + + + + + + Returns the greater of two operation times. + + The x. + The y. + The greater operation time. + + + + + + + + + + An object that represents no operation clock. + + + + + + + + + + + + Represents a reindex operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern (ignored and will eventually be deprecated and later removed). + + + The write concern. + + + + + + + + + + + Represents a base class for a delete, insert or update command operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets or sets a value indicating whether the server should process the requests in order. + + A value indicating whether the server should process the requests in order. + + + + Gets or sets the maximum batch count. + + + The maximum batch count. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + + + + + + + Creates the command. + + The session. + The connection description. + The attempt. + The transaction number. + + A command. + + + + + Creates the command payloads. + + The channel. + The attempt. + + The command payloads. + + + + + Represents a context for retryable writes. + + + + + + Creates and initializes a retryable write operation context. + + The binding. + if set to true [retry requested]. + The cancellation token. + A retryable write context. + + + + Creates and initializes a retryable write operation context. + + The binding. + if set to true [retry requested]. + The cancellation token. + A retryable write context. + + + + Initializes a new instance of the class. + + The binding. + if set to true the operation can be retried. + + + + Gets the binding. + + + The binding. + + + + + Gets the channel. + + + The channel. + + + + + Gets the channel source. + + + The channel source. + + + + + Gets a value indicating whether the operation can be retried. + + + true if the operation can be retried; otherwise, false. + + + + + Disables retries. + + The requests. + + + + + + + Replaces the channel. + + The channel. + + + + Replaces the channel source. + + The channel source. + + + + Represents an update command operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The updates. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + A value indicating whether to bypass document validation. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the updates. + + + The updates. + + + + + + + + + + + Represents a create indexes operation that uses the createIndexes command. + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the create index requests. + + + The create index requests. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + Gets or sets the MaxTime + + + The maxtime. + + + + + + + + + + + Represents a create indexes operation that inserts into the system.indexes collection (used with older server versions). + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the create index requests. + + + The create index requests. + + + + + + + + + + + Represents the geoSearch command. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The point for which to find the closest documents. + The result serializer. + The message encoder settings. + + + + Gets the collection namespace. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum distance. + + + + + Gets or sets the maximum time. + + + + + Gets the message encoder settings. + + + + + Gets the point for which to find the closest documents. + + + + + Gets or sets the read concern. + + + + + Gets the result serializer. + + + + + Gets or sets the search. + + + + + + + + + + + Represents the geoNear command. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The point for which to find the closest documents. + The result serializer. + The message encoder settings. + + + + Gets or sets the collation. + + + + + Gets the collection namespace. + + + + + Gets or sets the distance multiplier. + + + + + Gets or sets the filter. + + + + + Gets or sets whether to include the locations of the matching documents. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum distance. + + + + + Gets or sets the maximum time. + + + + + Gets the message encoder settings. + + + + + Gets the point for which to find the closest documents. + + + + + Gets or sets the read concern. + + + + + Gets the result serializer. + + + + + Gets or sets whether to use spherical geometry. + + + + + Gets or sets whether to return a document only once. + + + + + + + + + + + Represents a list collections operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the name only option. + + + The name only option. + + + + + + + + + + + Represents a list collections operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a list indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a list indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + A helper class for deserializing documents in a cursor batch. + + + + + Deserializes the documents. + + The type of the document. + The batch. + The document serializer. + The message encoder settings. + The documents. + + + + Represents a Find command operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + true if the server is allowed to return partial results if any shards are unavailable; otherwise, false. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the type of the cursor. + + + The type of the cursor. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the size of the first batch. + + + The size of the first batch. + + + + + Gets or sets the hint. + + + The hint. + + + + + Gets or sets the limit. + + + The limit. + + + + + Gets or sets the max key value. + + + The max key value. + + + + + Gets or sets the maximum await time for TailableAwait cursors. + + + The maximum await time for TailableAwait cursors. + + + + + Gets or sets the max scan. + + + The max scan. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the min key value. + + + The max min value. + + + + + Gets or sets a value indicating whether the server will not timeout the cursor. + + + true if the server will not timeout the cursor; otherwise, false. + + + + + Gets or sets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets whether to only return the key values. + + + Whether to only return the key values. + + + + + Gets or sets whether the record Id should be added to the result document. + + + Whether the record Id should be added to the result documentr. + + + + + Gets or sets whether to return only a single batch. + + + Whether to return only a single batchThe single batch. + + + + + Gets or sets the number of documents skip. + + + The number of documents skip. + + + + + Gets or sets whether to use snapshot behavior. + + + Whether to use snapshot behavior. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + + + + Represents a Find opcode operation. + + The type of the returned documents. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + true if the server is allowed to return partial results if any shards are unavailable; otherwise, false. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the type of the cursor. + + + The type of the cursor. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the size of the first batch. + + + The size of the first batch. + + + + + Gets or sets the hint. + + + The hint. + + + + + Gets or sets the limit. + + + The limit. + + + + + Gets or sets the max key value. + + + The max key value. + + + + + Gets or sets the max scan. + + + The max scan. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the min key value. + + + The max min value. + + + + + Gets or sets any additional query modifiers. + + + The additional query modifiers. + + + + + Gets or sets a value indicating whether the server will not timeout the cursor. + + + true if the server will not timeout the cursor; otherwise, false. + + + + + Gets or sets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets whether the record Id should be added to the result document. + + + Whether the record Id should be added to the result documentr. + + + + + Gets or sets the number of documents skip. + + + The number of documents skip. + + + + + Gets or sets whether to use snapshot behavior. + + + Whether to use snapshot behavior. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + + + + Returns an explain operation for this find operation. + + The verbosity. + An explain operation. + + + + Represents an aggregate explain operations. + + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to use the disk. + + + A value indicating whether the server is allowed to use the disk. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + The hint. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + + + + + + + Represents a map-reduce operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The map function. + The reduce function. + The message encoder settings. + + + + Gets or sets the read concern. + + + The read concern. + + + + + + + + + + + + + + + + + Represents a bulk write operation exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The result. + The write errors. + The write concern error. + The unprocessed requests. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the result of the bulk write operation. + + + + + Gets the unprocessed requests. + + + The unprocessed requests. + + + + + + Gets the write concern error. + + + The write concern error. + + + + + Gets the write errors. + + + The write errors. + + + + + + + + Represents a create index request. + + + + + Initializes a new instance of the class. + + The keys. + + + + Gets or sets the additional options. + + + The additional options. + + + + + Gets or sets a value indicating whether the index should be created in the background. + + + A value indicating whether the index should be created in the background. + + + + + Gets or sets the bits of precision of the geohash values for 2d geo indexes. + + + The bits of precision of the geohash values for 2d geo indexes. + + + + + Gets or sets the size of the bucket for geo haystack indexes. + + + The size of the bucket for geo haystack indexes. + + + + + Gets or sets the collation. + + + + + Gets or sets the default language for text indexes. + + + The default language for text indexes. + + + + + Gets or sets when documents in a TTL collection expire. + + + When documents in a TTL collection expire. + + + + + Gets or sets the language override for text indexes. + + + The language override for text indexes. + + + + + Gets the keys. + + + The keys. + + + + + Gets or sets the maximum coordinate value for 2d indexes. + + + The maximum coordinate value for 2d indexesThe maximum. + + + + + Gets or sets the minimum coordinate value for 2d indexes. + + + The minimum coordinate value for 2d indexes. + + + + + Gets or sets the index name. + + + The index name. + + + + + Gets or sets the partial filter expression. + + + The partial filter expression. + + + + + Gets or sets a value indicating whether the index is a sparse index. + + + A value indicating whether the index is a sparse index. + + + + + Gets or sets the 2dsphere index version. + + + The 2dsphere index version. + + + + + Gets or sets the storage engine options. + + + The storage engine options. + + + + + Gets or sets the text index version. + + + The text index version. + + + + + Gets or sets a value indicating whether the index enforces the uniqueness of the key values. + + + A value indicating whether the index enforces the uniqueness of the key values. + + + + + Gets or sets the index version. + + + The index version. + + + + + Gets or sets the weights for text indexes. + + + The weights for text indexes. + + + + + Gets the name of the index. + + The name of the index. + + + + The cursor type. + + + + + A non-tailable cursor. This is sufficient for most uses. + + + + + A tailable cursor. + + + + + A tailable cursor with a built-in server sleep. + + + + + Represents an element name validator that checks that element names are valid for MongoDB collections. + + + + + Gets a pre-created instance of a CollectionElementNameValidator. + + + The pre-created instance. + + + + + + + + + + + Represents a factory for element name validators based on the update type. + + + + + Returns an element name validator for the update type. + + Type of the update. + An element name validator. + + + + Represents an element name validator for update operations. + + + + + Gets a pre-created instance of an UpdateElementNameValidator. + + + The pre-created instance. + + + + + + + + + + + Represents an element name validator that will validate element names for either an update or a replacement based on whether the first element name starts with a "$". + + + + + Initializes a new instance of the class. + + + + + + + + + + + Represents an explain operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the command to be explained. + + + The command to be explained. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the verbosity. + + + The verbosity. + + + + + + + + + + + + + + + + + The verbosity of an explanation. + + + + + Runs the query planner and chooses the winning plan, but does not actually execute it. + + + + + Runs the query optimizer, and then runs the winning plan to completion. In addition to the + planner information, this makes execution stats available. + + + + + Runs the query optimizer and chooses the winning plan, but then runs all generated plans + to completion. This makes execution stats available for all of the query plans. + + + + + Represents a base class for find and modify operations. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets the write concern. + + + + + Gets or sets whether the operation can be retried. + + + + + + + + + + + + + + + + + + + + + + + Gets the command validator. + + An element name validator for the command. + + + + Represents a deserializer for find and modify result values. + + The type of the result. + + + + Initializes a new instance of the class. + + The value serializer. + + + + + + + Represents a find one and update operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The filter. + The update. + The result serializer. + The message encoder settings. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the filter. + + + The filter. + + + + + Gets a value indicating whether a document should be inserted if no matching document is found. + + + true if a document should be inserted if no matching document is found; otherwise, false. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets which version of the modified document to return. + + + Which version of the modified document to return. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + Gets or sets the update specification. + + + The update specification. + + + + + + + + Represents a find one and replace operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The filter. + The replacement. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the filter. + + + The filter. + + + + + Gets a value indicating whether a document should be inserted if no matching document is found. + + + true if a document should be inserted if no matching document is found; otherwise, false. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets the replacement document. + + + The replacement document. + + + + + Gets or sets which version of the modified document to return. + + + Which version of the modified document to return. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + Represents a find one and delete operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The filter. + The result serializer. + The message encoder settings. + + + + Gets the filter. + + + The filter. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + The document to return when executing a FindAndModify command. + + + + + Returns the document before the modification. + + + + + Returns the document after the modification. + + + + + Represents helper methods for index names. + + + + + Gets the name of the index derived from the keys specification. + + The keys specification. + The name of the index. + + + + Gets the name of the index derived from the key names. + + The key names. + The name of the index. + + + + Represents a list indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a list collections operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the name only option. + + + The name only option. + + + + + + + + + + + Represents a ping operation. + + + + + Initializes a new instance of the class. + + The message encoder settings. + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents the update type. + + + + + The update type is unknown. + + + + + This update uses an update specification to update an existing document. + + + + + This update completely replaces an existing document with a new one. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Represents the type of a write request. + + + + + A delete request. + + + + + An insert request. + + + + + An udpate request. + + + + + Represents a mixed write bulk operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets a value indicating whether the writes must be performed in order. + + + true if the writes must be performed in order; otherwise, false. + + + + + Gets or sets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets or sets the maximum length of a batch. + + + The maximum length of a batch. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets or sets the maximum size of a wire document. + + + The maximum size of a wire document. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the requests. + + + The requests. + + + + + Gets or sets a value indicating whether [retry requested]. + + + true if [retry requested]; otherwise, false. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents the result of one batch executed using a write command. + + + + + Represents the details of a write error for a particular request. + + + + + Initializes a new instance of the class. + + The index. + The code. + The message. + The details. + + + + Gets the error category. + + + The error category. + + + + + Gets the error code. + + + The error code. + + + + + Gets the error details. + + + The error details. + + + + + Gets the index of the request that had an error. + + + The index. + + + + + Gets the error message. + + + The error message. + + + + + Represents the result of a bulk write operation. + + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + Gets the number of documents that were deleted. + + + The number of document that were deleted. + + + + + Gets the number of documents that were inserted. + + + The number of document that were inserted. + + + + + Gets a value indicating whether the bulk write operation was acknowledged. + + + true if the bulk write operation was acknowledged; otherwise, false. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + true if the modified count is available; otherwise, false. + + + + + Gets the number of documents that were matched. + + + The number of document that were matched. + + + + + Gets the number of documents that were actually modified during an update. + + + The number of document that were actually modified during an update. + + + + + Gets the processed requests. + + + The processed requests. + + + + + Gets the request count. + + + The request count. + + + + + Gets a list with information about each request that resulted in an upsert. + + + The list with information about each request that resulted in an upsert. + + + + + Represents the result of an acknowledged bulk write operation. + + + + + Initializes a new instance of the class. + + The request count. + The matched count. + The deleted count. + The inserted count. + The modified count. + The processed requests. + The upserts. + + + + + + + + + + + + + + + + + + + + + + + + + Represents the result of an unacknowledged BulkWrite operation. + + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + + + + + + + + + + + + + + + + + + + + + + Represents the information about one Upsert. + + + + + Gets the identifier. + + + The identifier. + + + + + Gets the index. + + + The index. + + + + + Represents a request to insert a document. + + + + + Initializes a new instance of the class. + + The document. + + + + Gets or sets the document. + + + The document. + + + + + + + + Represents the details of a write concern error. + + + + + Initializes a new instance of the class. + + The code. + The message. + The details. + + + + Initializes a new instance of the class. + + The code. + The name of the code. + The message. + The details. + + + + Gets the error code. + + + The error code. + + + + + Gets the name of the error code. + + + The name of the error code. + + + + + Gets the error details. + + + The error details. + + + + + Gets the error message. + + + The error message. + + + + + Represents a request to write something to the database. + + + + + Initializes a new instance of the class. + + The request type. + + + + Gets or sets the correlation identifier. + + + + + Gets the request type. + + + The request type. + + + + + Determines whether the request is retryable on a given connection. + + The connection description. + + true if the request is retryable; otherwise, false. + + + + + Represents an aggregate operation. + + The type of the result values. + + + + Initializes a new instance of the class. + + The database namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to use the disk. + + + A value indicating whether the server is allowed to use the disk. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets or sets the collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + The hint. + + + + + Gets or sets the maximum await time. + + + The maximum await time. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result value serializer. + + + The result value serializer. + + + + + Gets or sets a value indicating whether the server should use a cursor to return the results. + + + A value indicating whether the server should use a cursor to return the results. + + + + + + + + + + + Returns an AggregateExplainOperation for this AggregateOperation. + + The verbosity. + An AggregateExplainOperation. + + + + Represents an aggregate operation that writes the results to an output collection. + + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to use the disk. + + + A value indicating whether the server is allowed to use the disk. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + The hint. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents the base class for a command operation. + + The type of the command result. + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The result serializer. + The message encoder settings. + + + + Gets or sets the additional options. + + + The additional options. + + + + + Gets the command. + + + The command. + + + + + Gets or sets the command validator. + + + The command validator. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Executes the protocol. + + The channel source. + The session. + The read preference. + The cancellation token. + + A Task whose result is the command result. + + + + + Executes the protocol. + + The channel source. + The session. + The read preference. + The cancellation token. + + A Task whose result is the command result. + + + + + Represents a count operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the index hint. + + + The index hint. + + + + + Gets or sets a limit on the number of matching documents to count. + + + A limit on the number of matching documents to count. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets or sets the number of documents to skip before counting the remaining matching documents. + + + The number of documents to skip before counting the remaining matching documents. + + + + + + + + + + + Represents a create collection operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets or sets a value indicating whether an index on _id should be created automatically. + + + A value indicating whether an index on _id should be created automatically. + + + + + Gets or sets a value indicating whether the collection is a capped collection. + + + A value indicating whether the collection is a capped collection. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the index option defaults. + + + The index option defaults. + + + + + Gets or sets the maximum number of documents in a capped collection. + + + The maximum number of documents in a capped collection. + + + + + Gets or sets the maximum size of a capped collection. + + + The maximum size of a capped collection. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets whether padding should not be used. + + + + + Gets or sets the storage engine options. + + + The storage engine options. + + + + + Gets or sets a value indicating whether the collection should use power of 2 sizes. + + + A value indicating whether the collection should use power of 2 sizes.. + + + + + Gets or sets the validation action. + + + The validation action. + + + + + Gets or sets the validation level. + + + The validation level. + + + + + Gets or sets the validator. + + + The validator. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a create indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the create index requests. + + + The create index requests. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + Gets or sets the max time. + + + The max time + + + + + + + + + + + Represents an async cursor. + + The type of the documents. + + + + Initializes a new instance of the class. + + The channel source. + The collection namespace. + The query. + The first batch. + The cursor identifier. + The size of a batch. + The limit. + The serializer. + The message encoder settings. + The maxTime for each batch. + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + + + + + + + Represents a database exists operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a delete operation using the delete opcode. + + + + + Initializes a new instance of the class. + + The collection namespace. + The request. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the request. + + + The request. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + Represents a request to delete one or more documents. + + + + + Initializes a new instance of the class. + + The filter. + + + + Gets or sets the collation. + + + + + Gets or sets the filter. + + + + + Gets or sets a limit on the number of documents that should be deleted. + + + The server only supports 0 or 1, and 0 means that all matching documents should be deleted. + + + A limit on the number of documents that should be deleted. + + + + + + + + Represents a distinct operation. + + The type of the value. + + + + Initializes a new instance of the class. + + The collection namespace. + The value serializer. + The name of the field. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the name of the field. + + + The name of the field. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + + + + + + Represents a drop collection operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a drop database operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a drop index operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The keys. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The name of the index. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the name of the index. + + + The name of the index. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + + + + + + + Represents an eval operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The JavaScript function. + The message encoder settings. + + + + Gets or sets the arguments to the JavaScript function. + + + The arguments to the JavaScript function. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the JavaScript function. + + + The JavaScript function. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether the server should not take a global write lock before evaluating the JavaScript function. + + + A value indicating whether the server should not take a global write lock before evaluating the JavaScript function. + + + + + + + + + + + Represents a deserializer that deserializes the selected element and skips any others. + + The type of the value. + + + + Represents a Find operation. + + The type of the returned documents. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + true if the server is allowed to return partial results if any shards are unavailable; otherwise, false. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the type of the cursor. + + + The type of the cursor. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the size of the first batch. + + + The size of the first batch. + + + + + Gets or sets the hint. + + + The hint. + + + + + Gets or sets the limit. + + + The limit. + + + + + Gets or sets the max key value. + + + The max key value. + + + + + Gets or sets the maximum await time for TailableAwait cursors. + + + The maximum await time for TailableAwait cursors. + + + + + Gets or sets the max scan. + + + The max scan. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the min key value. + + + The max min value. + + + + + Gets or sets any additional query modifiers. + + + The additional query modifiers. + + + + + Gets or sets a value indicating whether the server will not timeout the cursor. + + + true if the server will not timeout the cursor; otherwise, false. + + + + + Gets or sets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets whether to only return the key values. + + + Whether to only return the key values. + + + + + Gets or sets whether the record Id should be added to the result document. + + + Whether the record Id should be added to the result documentr. + + + + + Gets or sets whether to return only a single batch. + + + Whether to return only a single batchThe single batch. + + + + + Gets or sets the number of documents skip. + + + The number of documents skip. + + + + + Gets or sets whether to use snapshot behavior. + + + Whether to use snapshot behavior. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + + + + Represents a group operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The key. + The initial aggregation result for each group. + The reduce function. + The filter. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The key function. + The initial aggregation result for each group. + The reduce function. + The filter. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the filter. + + + The filter. + + + + + Gets or sets the finalize function. + + + The finalize function. + + + + + Gets the initial aggregation result for each group. + + + The initial aggregation result for each group. + + + + + Gets the key. + + + The key. + + + + + Gets the key function. + + + The key function. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the reduce function. + + + The reduce function. + + + + + Gets or sets the result serializer. + + + The result serializer. + + + + + + + + + + + Represents an insert operation using the insert opcode. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The documents. + The serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The document source. + The serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets a value indicating whether the server should continue on error. + + + true if the server should continue on error; otherwise, false. + + + + + Gets the documents. + + + The documents. + + + + + Gets the document source. + + + The document source. + + + + + Gets or sets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets or sets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets the serializer. + + + The serializer. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a database read operation. + + The type of the result. + + + + Executes the operation. + + The binding. + The cancellation token. + The result of the operation. + + + + Executes the operation. + + The binding. + The cancellation token. + A Task whose result is the result of the operation. + + + + Represents a database write operation. + + The type of the result. + + + + Executes the operation. + + The binding. + The cancellation token. + The result of the operation. + + + + Executes the operation. + + The binding. + The cancellation token. + A Task whose result is the result of the operation. + + + + Represents the listDatabases command. + + + + + Initializes a new instance of the class. + + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the NameOnly flag. + + + The NameOnly flag. + + + + + + + + + + + Represents a map-reduce operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The map function. + The reduce function. + The result serializer. + The message encoder settings. + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + + + + + + + + + + + + + Represents a base class for map-reduce operations. + + + + + Initializes a new instance of the class. + + The collection namespace. + The map function. + The reduce function. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the finalize function. + + + The finalize function. + + + + + Gets or sets a value indicating whether objects emitted by the map function remain as JavaScript objects. + + + + Setting this value to true can result in faster execution, but requires more memory on the server, and if + there are too many emitted objects the map-reduce operation may fail. + + true if objects emitted by the map function remain as JavaScript objects; otherwise, false. + + + + + Gets or sets the maximum number of documents to pass to the map function. + + + The maximum number of documents to pass to the map function. + + + + + Gets the map function. + + + The map function. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the reduce function. + + + The reduce function. + + + + + Gets or sets the scope document. + + + The scode document defines global variables that are accessible from the map, reduce and finalize functions. + + + The scope document. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + Gets or sets a value indicating whether to include extra information, such as timing, in the result. + + + true if extra information, such as timing, should be included in the result; otherwise, false. + + + + + Creates the command. + + The session. + The connection description. + + The command. + + + + + Creates the output options. + + The output options. + + + + Represents the map-reduce output mode. + + + + + The output of the map-reduce operation replaces the output collection. + + + + + The output of the map-reduce operation is merged with the output collection. + If an existing document has the same key as the new result, overwrite the existing document. + + + + + The output of the map-reduce operation is merged with the output collection. + If an existing document has the same key as the new result, apply the reduce function to both + the new and the existing documents and overwrite the existing document with the result. + + + + + Represents a map-reduce operation that outputs its results to a collection. + + + + + Initializes a new instance of the class. + + The collection namespace. + The output collection namespace. + The map function. + The reduce function. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether the server should not lock the database for merge and reduce output modes. + + + true if the server should not lock the database for merge and reduce output modes; otherwise, false. + + + + + Gets the output collection namespace. + + + The output collection namespace. + + + + + Gets or sets the output mode. + + + The output mode. + + + + + Gets or sets a value indicating whether the output collection should be sharded. + + + true if the output collection should be sharded; otherwise, false. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + Represents extension methods for operations. + + + + + Executes a read operation using a channel source. + + The type of the result. + The read operation. + The channel source. + The read preference. + The session. + The cancellation token. + + The result of the operation. + + + + + Executes a write operation using a channel source. + + The type of the result. + The write operation. + The channel source. + The session. + The cancellation token. + + The result of the operation. + + + + + Executes a read operation using a channel source. + + The type of the result. + The read operation. + The channel source. + The read preference. + The session. + The cancellation token. + + A Task whose result is the result of the operation. + + + + + Executes a write operation using a channel source. + + The type of the result. + The write operation. + The channel source. + The session. + The cancellation token. + + A Task whose result is the result of the operation. + + + + + Represents a parallel scan operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The number of cursors. + The serializer. + The message encoder settings. + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the number of cursors. + + + The number of cursors. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the serializer. + + + The serializer. + + + + + + + + + + + Represents a read command operation. + + The type of the command result. + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The result serializer. + The message encoder settings. + + + + + + + + + + Represents a rename collection operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The new collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets a value indicating whether to drop the target collection first if it already exists. + + + true if the target collection should be dropped first if it already exists.; otherwise, false. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the new collection namespace. + + + The new collection namespace. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents an update operation using the update opcode. + + + + + Initializes a new instance of the class. + + The collection namespace. + The request. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the request. + + + The request. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + Represents a request to update one or more documents. + + + + + Initializes a new instance of the class. + + The update type. + The filter. + The update. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether this update should affect all matching documents. + + + true if this update should affect all matching documents; otherwise, false. + + + + + Gets or sets a value indicating whether a document should be inserted if no matching document is found. + + + true if a document should be inserted if no matching document is found; otherwise, false. + + + + + Gets the update specification. + + + + + Gets the update type. + + + + + + + + Represents a write command operation. + + The type of the command result. + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The result serializer. + The message encoder settings. + + + + + + + + + + A cluster clock. + + + + + + Returns the greater of two cluster times. + + The x. + The y. + The greater cluster time. + + + + + + + + + + An object that represents no cluster clock. + + + + + + + + + + + + A cluster clock. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Advances the cluster time. + + The new cluster time. + + + + An election id from the server. + + + + + Initializes a new instance of the class. + + The identifier. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + + A value that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the parameter.Zero This object is equal to . Greater than zero This object is greater than . + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + + true if the current object is equal to the parameter; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Represents a server selector that selects writable servers. + + + + + Gets a WritableServerSelector. + + + A server selector. + + + + + + + + + + + Represents a server selector that wraps a delegate. + + + + + Initializes a new instance of the class. + + The selector. + + + + + + + + + + Represents a selector that selects servers within an acceptable latency range. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The allowed latency range. + + + + + + + + + + Represents a selector that selects servers based on multiple partial selectors + + + + + Initializes a new instance of the class. + + The selectors. + + + + + + + + + + Represents a selector that selects servers based on an end point. + + + + + Initializes a new instance of the class. + + The end point. + + + + + + + + + + Represents a selector that selects servers. + + + + + Selects the servers. + + The cluster. + The servers. + The selected servers. + + + + Represents a selector that selects a random server. + + + + + Initializes a new instance of the class. + + + + + + + + + + + Represents a selector that selects servers based on a read preference. + + + + + Gets a ReadPreferenceServerSelector that selects the Primary. + + + A server selector. + + + + + Initializes a new instance of the class. + + The read preference. + + + + + + + + + + Represents a cluster. + + + + + Gets the minimum supported server version. + + + The minimum supported server version + + + + + Gets the supported wire version range. + + + The supported wire version range. + + + + + Represents the cluster connection mode. + + + + + Determine the cluster type automatically. + + + + + Connect directly to a single server of any type. + + + + + Connect directly to a Standalone server. + + + + + Connect to a replica set. + + + + + Connect to one or more shard routers. + + + + + Represents information about a cluster. + + + + + Initializes a new instance of the class. + + The cluster identifier. + The connection mode. + The type. + The servers. + + + + Gets the cluster identifier. + + + + + Gets the connection mode. + + + + + Gets a value indicating whether this cluster is compatible with the driver. + + + true if this cluster is compatible with the driver; otherwise, false. + + + + + Gets the logical session timeout. + + + + + Gets the servers. + + + + + Gets the cluster state. + + + + + Gets the cluster type. + + + + + + + + + + + + + + + + + Returns a new ClusterDescription with a changed ServerDescription. + + The server description. + A ClusterDescription. + + + + Returns a new ClusterDescription with a ServerDescription removed. + + The end point of the server description to remove. + A ClusterDescription. + + + + Returns a new ClusterDescription with a changed ClusterType. + + The value. + A ClusterDescription. + + + + Represents a cluster identifier. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The value. + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + Represents the state of a cluster. + + + + + The cluster is disconnected. + + + + + The cluster is connected. + + + + + Represents the type of a cluster. + + + + + The type of the cluster is unknown. + + + + + The cluster is a standalone cluster. + + + + + The cluster is a replica set. + + + + + The cluster is a sharded cluster. + + + + + Represents the data for the event that fires when a cluster description changes. + + + + + Initializes a new instance of the class. + + The old cluster description. + The new cluster description. + + + + Gets the old cluster description. + + + The old cluster description. + + + + + Gets the new cluster description. + + + The new cluster description. + + + + + Represents a MongoDB cluster. + + + + + Occurs when the cluster description has changed. + + + + + Gets the cluster identifier. + + + The cluster identifier. + + + + + Gets the cluster description. + + + The cluster description. + + + + + Gets the cluster settings. + + + The cluster settings. + + + + + Acquires a core server session. + + A core server session. + + + + Initializes the cluster. + + + + + Selects a server from the cluster. + + The server selector. + The cancellation token. + The selected server. + + + + Selects a server from the cluster. + + The server selector. + The cancellation token. + A Task representing the operation. The result of the Task is the selected server. + + + + Starts a session. + + The options. + + A session. + + + + + Represents a cluster factory. + + + + + Creates a cluster. + + A cluster. + + + + Represents a multi server cluster. + + + + + Represents the config of a replica set (as reported by one of the members of the replica set). + + + + + Gets an empty replica set config. + + + An empty replica set config. + + + + + Initializes a new instance of the class. + + The members. + The name. + The primary. + The version. + + + + Gets the members. + + + The members. + + + + + Gets the name of the replica set. + + + The name of the replica set. + + + + + Gets the primary. + + + The primary. + + + + + Gets the replica set config version. + + + The replica set config version. + + + + + + + + + + + + + + Represents a standalone cluster. + + + + + Monitors a server for state changes. + + + + + + Occurs when the server description changes. + + + + + Initializes this instance. + + + + + Instructs the monitor to refresh its description immediately. + + + + + Requests a heartbeat as soon as possible. + + + + + Represents a server monitor factory. + + + + + Creates a server monitor. + + The server identifier. + The end point. + A server monitor. + + + + + + + Represents the arguments to the event that occurs when the server description changes. + + + + + Initializes a new instance of the class. + + The old server description. + The new server description. + + + + Gets the old server description. + + + The old server description. + + + + + Gets the new server description. + + + The new server description. + + + + + Represents a server identifier. + + + + + Initializes a new instance of the class. + + The cluster identifier. + The end point. + + + + Gets the cluster identifier. + + + The cluster identifier. + + + + + Gets the end point. + + + The end point. + + + + + + + + + + + + + + + + + Represents a MongoDB server. + + + + + Occurs when the server description changes. + + + + + Gets the server description. + + + The server description. + + + + + Gets the end point. + + + The end point. + + + + + Gets the server identifier. + + + The server identifier. + + + + + Gets a channel to the server. + + The cancellation token. + A channel. + + + + Gets a channel to the server. + + The cancellation token. + A Task whose result is a channel. + + + + Represents a server that can be part of a cluster. + + + + + Gets a value indicating whether this instance is initialized. + + + true if this instance is initialized; otherwise, false. + + + + + Initializes this instance. + + + + + Invalidates this instance (sets the server type to Unknown and clears the connection pool). + + + + + Requests a heartbeat as soon as possible. + + + + + Represents a server factory. + + + + + Creates the server. + + The cluster identifier. + The cluster clock. + The end point. + + A server. + + + + + Represents a server in a MongoDB cluster. + + + + + Represents information about a server. + + + + + Initializes a new instance of the class. + + The server identifier. + The end point. + The average round trip time. + The canonical end point. + The election identifier. + The heartbeat exception. + The heartbeat interval. + The last update timestamp. + The last write timestamp. + The logical session timeout. + The maximum batch count. + The maximum size of a document. + The maximum size of a message. + The maximum size of a wire document. + The replica set configuration. + The server state. + The replica set tags. + The server type. + The server version. + The wire version range. + EndPoint and ServerId.EndPoint must match. + + + + Gets the average round trip time. + + + The average round trip time. + + + + + Gets the canonical end point. This is the endpoint that the cluster knows this + server by. Currently, it only applies to a replica set config and will match + what is in the replica set configuration. + + + + + Gets the election identifier. + + + + + Gets the end point. + + + The end point. + + + + + Gets the most recent heartbeat exception. + + + The the most recent heartbeat exception (null if the most recent heartbeat succeeded). + + + + + Gets the heartbeat interval. + + + The heartbeat interval. + + + + + Gets a value indicating whether this server is compatible with the driver. + + + true if this server is compatible with the driver; otherwise, false. + + + + + Gets a value indicating whether this instance is a data bearing server. + + + true if this instance is a data bearing server; otherwise, false. + + + + + Gets the last update timestamp (when the ServerDescription itself was last updated). + + + The last update timestamp. + + + + + Gets the last write timestamp (from the lastWrite field of the isMaster result). + + + The last write timestamp. + + + + + Gets the logical session timeout. + + + The logical session timeout. + + + + + Gets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the maximum size of a wire document. + + + The maximum size of a wire document. + + + + + Gets the replica set configuration. + + + The replica set configuration. + + + + + Gets the server identifier. + + + The server identifier. + + + + + Gets the server state. + + + The server state. + + + + + Gets the replica set tags. + + + The replica set tags (null if not a replica set or if the replica set has no tags). + + + + + Gets the server type. + + + The server type. + + + + + Gets the server version. + + + The server version. + + + + + Gets the wire version range. + + + The wire version range. + + + + + + + + + + + + + + + + + Returns a new instance of ServerDescription with some values changed. + + The average round trip time. + The canonical end point. + The election identifier. + The heartbeat exception. + The heartbeat interval. + The last update timestamp. + The last write timestamp. + The logical session timeout. + The maximum batch count. + The maximum size of a document. + The maximum size of a message. + The maximum size of a wire document. + The replica set configuration. + The server state. + The replica set tags. + The server type. + The server version. + The wire version range. + + A new instance of ServerDescription. + + + + + Returns a new ServerDescription with a new HeartbeatException. + + The heartbeat exception. + + A new instance of ServerDescription. + + + + + + + + Represents the server state. + + + + + The server is disconnected. + + + + + The server is connected. + + + + + Represents the server type. + + + + + The server type is unknown. + + + + + The server is a standalone server. + + + + + The server is a shard router. + + + + + The server is a replica set primary. + + + + + The server is a replica set secondary. + + + + + Use ReplicaSetSecondary instead. + + + + + The server is a replica set arbiter. + + + + + The server is a replica set member of some other type. + + + + + The server is a replica set ghost member. + + + + + Represents extension methods on ServerType. + + + + + Determines whether this server type is a replica set member. + + The type of the server. + Whether this server type is a replica set member. + + + + Determines whether this server type is a writable server. + + The type of the server. + Whether this server type is a writable server. + + + + Infers the cluster type from the server type. + + The type of the server. + The cluster type. + + + + Instructions for handling the response from a command. + + + + + Return the response from the server. + + + + + Ignore the response from the server. + + + + + No response is expected from the server. + + + + + Represents a binary encoder for a CommandMessage. + + + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a CommandRequestMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a CommandResponseMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a base class for binary message encoders. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Gets the encoding. + + + The encoding. + + + + + Gets the maximum size of the document. + + + The maximum size of the document. + + + + + Gets the maximum size of the message. + + + The maximum size of the message. + + + + + Gets the maximum size of the wire document. + + + The maximum size of the wire document. + + + + + Creates a binary reader for this encoder. + + A binary reader. + + + + Creates a binary writer for this encoder. + + A binary writer. + + + + Represents a factory for binary message encoders. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a binary encoder for a Delete message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a GetMore message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for an Insert message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a KillCursors message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a Query message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a Reply message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for an Update message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a message encoder selector for CommandResponseMessages. + + + + + + + + Represents the changes that can be made to a message after it has been encoded. + + + + + Changes the write concern from w0 to w1. + + + + + Represents a JSON encoder for a CommandMessage. + + + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a Json encoder for a CommandRequestMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a Json encoder for a CommandResponseMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a base class for JSON message encoders. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Creates a JsonReader for this encoder. + + A JsonReader. + + + + Creates a JsonWriter for this encoder. + + A JsonWriter. + + + + Represents a JSON encoder for a Delete message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for a GetMore message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for an Insert message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a factory for JSON message encoders. + + + + + Initializes a new instance of the class. + + The text reader. + The encoder settings. + + + + Initializes a new instance of the class. + + The text writer. + The encoder settings. + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a JSON encoder for a KillCursors message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for a Query message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for a Reply message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for an Update message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a message encoder selector that gets the appropriate encoder from an encoder factory. + + + + + Get the appropriate encoder from an encoder factory. + + The encoder factory. + A message encoder. + + + + Represents a message encoder selector for ReplyMessages. + + The type of the document. + + + + Initializes a new instance of the class. + + The document serializer. + + + + + + + Represents the names of different encoder settings. + + + + + The name of the FixOldBinarySubTypeOnInput setting. + + + + + The name of the FixOldBinarySubTypeOnOutput setting. + + + + + The name of the FixOldDateTimeMaxValueOnInput setting. + + + + + The name of the GuidRepresentation setting. + + + + + The name of the MaxDocumentSize setting. + + + + + The name of the MaxMessageSize setting. + + + + + The name of the MaxSerializationDepth setting. + + + + + The maximum wire document size. + + + + + The name of the ReadEncoding setting. + + + + + The name of the WriteEncoding setting. + + + + + The name of the Indent setting. + + + + + The name of the IndentChars setting. + + + + + The name of the NewLineChars setting. + + + + + The name of the OutputMode setting. + + + + + The name of the ShellVersion setting. + + + + + Represents settings for message encoders. + + + + + Adds a setting. + + The type of the value. + The name. + The value. + The settings. + + + + Clones this instance. + + The clone. + + + + + + + Gets a setting, or a default value if the setting does not exist. + + The type of the value. + The name. + The default value. + The value of the setting, or a default value if the setting does not exist. + + + + Represents an encodable message. + + + + + Gets an encoder for the message from an encoder factory. + + The encoder factory. + A message encoder. + + + + Represents a message encoder. + + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a message encoder factory. + + + + + Gets an encoder for a Command message. + + An encoder. + + + + Gets an encoder for a Command request message. + + An encoder. + + + + Gets an encoder for a Command response message. + + An encoder. + + + + Gets an encoder for a Delete message. + + An encoder. + + + + Gets an encoder for a GetMore message. + + An encoder. + + + + Gets an encoder for an Insert message. + + The type of the document. + The serializer. + An encoder. + + + + Gets an encoder for a KillCursors message. + + An encoder. + + + + Gets an encoder for a Query message. + + An encoder. + + + + Gets an encoder for a Reply message. + + The type of the document. + The serializer. + An encoder. + + + + Gets an encoder for an Update message. + + An encoder. + + + + Represents a command message. + + + + + + Initializes a new instance of the class. + + The request identifier. + The response to. + The sections. + if set to true [more to come]. + + + + + + + Gets or sets a value indicating whether another message immediately follows this one with no response expected. + + + true if another message immediately follows this one; otherwise, false. + + + + + Gets or sets the delegate called to after the message has been written by the encoder. + + + The post write delegate. + + + + + Gets the request identifier. + + + The request identifier. + + + + + Gets a value indicating whether a response is expected. + + + true if a response is expected; otherwise, false. + + + + + Gets the response to. + + + The response to. + + + + + Gets the sections. + + + The sections. + + + + + + + + Represents the payload type. + + + + + Payload type 0. + + + + + Payload type 1. + + + + + Represents a CommandMessage section. + + + + + Gets the type of the payload. + + + The type of the payload. + + + + + Represents a Type 0 CommandMessage section. + + + + + + Initializes a new instance of the class. + + The document. + The document serializer. + + + + Gets the document. + + + The document. + + + + + Gets the document serializer. + + + The document serializer. + + + + + + + + Represents a Type 0 CommandMessage section. + + The type of the document. + + + + + Initializes a new instance of the class. + + The document. + The document serializer. + + + + Gets the document. + + + The document. + + + + + Gets the document serializer. + + + The document serializer. + + + + + Represents a Type 1 CommandMessage section. + + + + + Initializes a new instance of the class. + + The identifier. + The documents. + The document serializer. + The element name validator. + The maximum batch count. + Maximum size of the document. + + + + Gets the documents. + + + The documents. + + + + + Gets the document serializer. + + + The document serializer. + + + + + Gets the type of the document. + + + The type of the document. + + + + + Gets the element name validator. + + + The element name validator. + + + + + Gets the identifier. + + + The identifier. + + + + + Gets the maximum batch count. + + + The maximum batch count. + + + + + Gets the maximum size of the document. + + + The maximum size of the document. + + + + + + + + Represents a Type 1 CommandMessage section. + + The type of the document. + + + + + Initializes a new instance of the class. + + The identifier. + The documents. + The document serializer. + The element name validator. + The maximum batch count. + Maximum size of the document. + + + + Gets the documents. + + + The documents. + + + + + Gets the document serializer. + + + The document serializer. + + + + + + + + Represents a command request message. + + + + + + Initializes a new instance of the class. + + The wrapped message. + The should be sent. + + + + + + + Gets the wrapped message. + + + The wrapped message. + + + + + + + + Represents a command response message. + + + + + + Initializes a new instance of the class. + + The wrapped message. + + + + + + + Gets the wrapped message. + + + The wrapped message. + + + + + + + + Represents the type of message. + + + + + OP MSG + + + + + OP_DELETE + + + + + OP_GETMORE + + + + + OP_INSERT + + + + + OP_KILLCURSORS + + + + + OP_QUERY + + + + + OP_REPLY + + + + + OP_UPDATE + + + + + Represents a base class for response messages. + + + + + Initializes a new instance of the class. + + The request identifier. + The identifier of the message this is a response to. + + + + + + + Gets the request identifier. + + + + + Gets the identifier of the message this is a response to. + + + + + Represents a Delete message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The query. + if set to true [is multi]. + + + + Gets the collection namespace. + + + + + Gets a value indicating whether to delete all matching documents. + + + + + + + + Gets the query. + + + + + + + + Represents a GetMore message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The cursor identifier. + The size of a batch. + + + + Gets the size of a batch. + + + + + Gets the collection namespace. + + + + + Gets the cursor identifier. + + + + + + + + + + + Represents an Insert message. + + The type of the document. + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The serializer. + The document source. + The maximum batch count. + Maximum size of the message. + if set to true the server should continue on error. + + + + Gets the collection namespace. + + + + + Gets a value indicating whether the server should continue on error. + + + + + Gets the document source. + + + + + Gets the maximum number of documents in a batch. + + + + + Gets the maximum size of a message. + + + + + + + + Gets the serializer. + + + + + + + + Represents a KillCursors message. + + + + + Initializes a new instance of the class. + + The request identifier. + The cursor ids. + + + + Gets the cursor ids. + + + + + + + + + + + Represents a base class for messages. + + + + + Gets the type of the message. + + + + + + + + Represents a Query message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The query. + The fields. + The query validator. + The number of documents to skip. + The size of a batch. + if set to true it is OK if the server is not the primary. + if set to true the server is allowed to return partial results if any shards are unavailable. + if set to true the server should not timeout the cursor. + if set to true the OplogReplay bit will be set. + if set to true the query should return a tailable cursor. + if set to true the server should await data (used with tailable cursors). + A delegate that determines whether this message should be sent. + + + + Gets a value indicating whether the server should await data (used with tailable cursors). + + + + + Gets the size of a batch. + + + + + Gets the collection namespace. + + + + + Gets the fields. + + + + + + + + Gets a value indicating whether the server should not timeout the cursor. + + + + + Gets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + + + Gets or sets the delegate called to after the message has been written by the encoder. + + + The post write delegate. + + + + + Gets the query. + + + + + Gets the query validator. + + + + + Gets or sets the response handling. + + + The response handling. + + + + + Gets the number of documents to skip. + + + + + Gets a value indicating whether it is OK if the server is not the primary. + + + + + Gets a value indicating whether the query should return a tailable cursor. + + + + + + + + Represents a Reply message. + + The type of the document. + + + + Initializes a new instance of the class. + + if set to true the server is await capable. + The cursor identifier. + if set to true the cursor was not found. + The documents. + The number of documents returned. + if set to true the query failed. + The query failure document. + The request identifier. + The identifier of the message this is a response to. + The serializer. + The position of the first document in this batch in the overall result. + + + + Gets a value indicating whether the server is await capable. + + + + + Gets the cursor identifier. + + + + + Gets a value indicating whether the cursor was not found. + + + + + Gets the documents. + + + + + + + + Gets the number of documents returned. + + + + + Gets a value indicating whether the query failed. + + + + + Gets the query failure document. + + + + + Gets the serializer. + + + + + Gets the position of the first document in this batch in the overall result. + + + + + + + + Represents a base class for request messages. + + + + + Gets the current global request identifier. + + + The current global request identifier. + + + + + Gets the next request identifier. + + The next request identifier. + + + + Initializes a new instance of the class. + + The request identifier. + A delegate that determines whether this message should be sent. + + + + Gets the request identifier. + + + The request identifier. + + + + + Gets a delegate that determines whether this message should be sent. + + + A delegate that determines whether this message be sent. + + + + + Gets or sets a value indicating whether this message was sent. + + + true if this message was sent; otherwise, false. + + + + + Represents an Update message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The query. + The update. + The update validator. + if set to true all matching documents should be updated. + if set to true a document should be inserted if no matching document is found. + + + + Gets the collection namespace. + + + + + Gets a value indicating whether all matching documents should be updated. + + + + + Gets a value indicating whether a document should be inserted if no matching document is found. + + + + + + + + Gets the query. + + + + + Gets the update. + + + + + Gets the update validator. + + + + + + + + Represents one result batch (returned from either a Query or a GetMore message) + + The type of the document. + + + + Initializes a new instance of the struct. + + The cursor identifier. + The documents. + + + + Gets the cursor identifier. + + + The cursor identifier. + + + + + Gets the documents. + + + The documents. + + + + + Represents a connection pool. + + + + + Gets the server identifier. + + + The server identifier. + + + + + Acquires a connection. + + The cancellation token. + A connection. + + + + Acquires a connection. + + The cancellation token. + A Task whose result is a connection. + + + + Clears the connection pool. + + + + + Initializes the connection pool. + + + + + Represents a connection pool factory. + + + + + Creates a connection pool. + + The server identifier. + The end point. + A connection pool. + + + + A server session. + + + + + + + + + + + + + + + + + + + + + + + + + + + A server session pool. + + + + + Acquires a server session. + + A server session. + + + + Releases a server session. + + The server session. + + + + The interface for a core server session. + + + + + Gets the session Id. + + + The session Id. + + + + + Gets the time this server session was last used (in UTC). + + + The time this server session was last used (in UTC). + + + + + Gets the next transaction number. + + The transaction number. + + + + Called by the driver when the session is used (i.e. sent to the server). + + + + + Represents the document validation action. + + + + + Validation failures result in an error. + + + + + Validation failures result in a warning. + + + + + Represents the document validation level. + + + + + Strict document validation. + + + + + Moderate document validation. + + + + + No document validation. + + + + + Represents helper methods for use with the struct. + + + + + Creates an instance of an optional parameter with a value. + + + This helper method can be used when the implicit conversion doesn't work (due to compiler limitations). + + The type of the optional parameter. + The value. + An instance of an optional parameter with a value. + + + + Creates an instance of an optional parameter with an enumerable value. + + The type of the items of the optional paramater. + The value. + An instance of an optional parameter with an enumerable value. + + + + Represents an optional parameter that might or might not have a value. + + The type of the parameter. + + + + Initializes a new instance of the struct with a value. + + The value of the parameter. + + + + Gets a value indicating whether the optional parameter has a value. + + + true if the optional parameter has a value; otherwise, false. + + + + + Gets the value of the optional parameter. + + + The value of the optional parameter. + + + + + Performs an implicit conversion from to an with a value. + + The value. + + The result of the conversion. + + + + + Returns a value indicating whether this optional parameter contains a value that is not equal to an existing value. + + The value. + True if this optional parameter contains a value that is not equal to an existing value. + + + + Returns either the value of this optional parameter if it has a value, otherwise a default value. + + The default value. + Either the value of this optional parameter if it has a value, otherwise a default value. + + + + Represents a read concern. + + + + + Gets a default read concern. + + + + + Gets a linearizable read concern. + + + + + Gets a local read concern. + + + + + Gets a majority read concern. + + + + + Gets a snapshot read concern. + + + + + Creates a read concern from a document. + + The document. + A read concern. + + + + Initializes a new instance of the class. + + The level. + + + + Gets a value indicating whether this is the server's default read concern. + + + true if this instance is default; otherwise, false. + + + + + Gets the level. + + + + + + + + + + + + + + Converts this read concern to a BsonDocument suitable to be sent to the server. + + + A BsonDocument. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a new instance of ReadConcern with some values changed. + + The level. + + A ReadConcern. + + + + + The leve of the read concern. + + + + + Reads data committed locally. + + + + + Reads data committed to a majority of nodes. + + + + + Avoids returning data from a "stale" primary + (one that has already been superseded by a new primary but doesn't know it yet). + It is important to note that readConcern level linearizable does not by itself + produce linearizable reads; they must be issued in conjunction with w:majority + writes to the same document(s) in order to be linearizable. + + + + + Snapshot read concern level. + + + + + Represents the category for an error from the server. + + + + + An error without a category. + + + + + A duplicate key error. + + + + + An execution timeout error. + + + + + Represents a cursor for an operation that is not actually executed until MoveNextAsync is called for the first time. + + The type of the document. + + + + Initializes a new instance of the class. + + The dispose action. + The delegate to execute the first time MoveNext is called. + The delegate to execute the first time MoveNextAsync is called. + + + + + + + + + + + + + + + + Represents an asynchronous cursor. + + The type of the document. + + + + Gets the current batch of documents. + + + The current batch of documents. + + + + + Moves to the next batch of documents. + + The cancellation token. + Whether any more documents are available. + + + + Moves to the next batch of documents. + + The cancellation token. + A Task whose result indicates whether any more documents are available. + + + + Represents extension methods for IAsyncCursor. + + + + + Determines whether the cursor contains any documents. + + The type of the document. + The cursor. + The cancellation token. + True if the cursor contains any documents. + + + + Determines whether the cursor contains any documents. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is true if the cursor contains any documents. + + + + Returns the first document of a cursor. + + The type of the document. + The cursor. + The cancellation token. + The first document. + + + + Returns the first document of a cursor. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is the first document. + + + + Returns the first document of a cursor, or a default value if the cursor contains no documents. + + The type of the document. + The cursor. + The cancellation token. + The first document of the cursor, or a default value if the cursor contains no documents. + + + + Returns the first document of the cursor, or a default value if the cursor contains no documents. + + The type of the document. + The cursor. + The cancellation token. + A task whose result is the first document of the cursor, or a default value if the cursor contains no documents. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Returns the only document of a cursor. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The cursor. + The cancellation token. + The only document of a cursor. + + + + Returns the only document of a cursor. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is the only document of a cursor. + + + + Returns the only document of a cursor, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The cursor. + The cancellation token. + The only document of a cursor, or a default value if the cursor contains no documents. + + + + Returns the only document of a cursor, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is the only document of a cursor, or a default value if the cursor contains no documents. + + + + Wraps a cursor in an IEnumerable that can be enumerated one time. + + The type of the document. + The cursor. + The cancellation token. + An IEnumerable + + + + Returns a list containing all the documents returned by a cursor. + + The type of the document. + The source. + The cancellation token. + The list of documents. + + + + Returns a list containing all the documents returned by a cursor. + + The type of the document. + The source. + The cancellation token. + A Task whose value is the list of documents. + + + + Represents a collection namespace. + + + + + Creates a new instance of the class from a collection full name. + + The collection full name. + A CollectionNamespace. + + + + Determines whether the specified collection name is valid. + + The name of the collection. + Whether the specified collection name is valid. + + + + Initializes a new instance of the class. + + The name of the database. + The name of the collection. + + + + Initializes a new instance of the class. + + The database namespace. + The name of the collection. + + + + Gets the name of the collection. + + + The name of the collection. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the collection full name. + + + The collection full name. + + + + + + + + + + + + + + + + + Represents a database namespace. + + + + + Gets the admin database namespace. + + + The admin database namespace. + + + + + Determines whether the specified database name is valid. + + The database name. + True if the database name is valid. + + + + Initializes a new instance of the class. + + The name of the database. + + + + Gets the name of the database. + + + The name of the database. + + + + + + + + + + + + + + + + + Represents a MongoDB execution timeout exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents an operation that will return a cursor when executed. + + The type of the document. + + + + Executes the operation and returns a cursor to the results. + + The cancellation token. + A cursor. + + + + Executes the operation and returns a cursor to the results. + + The cancellation token. + A Task whose result is a cursor. + + + + Represents extension methods for IAsyncCursorSource. + + + + + Determines whether the cursor returned by a cursor source contains any documents. + + The type of the document. + The source. + The cancellation token. + True if the cursor contains any documents. + + + + Determines whether the cursor returned by a cursor source contains any documents. + + The type of the document. + The source. + The cancellation token. + A Task whose result is true if the cursor contains any documents. + + + + Returns the first document of a cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + The first document. + + + + Returns the first document of a cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the first document. + + + + Returns the first document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + + The type of the document. + The source. + The cancellation token. + The first document of the cursor, or a default value if the cursor contains no documents. + + + + Returns the first document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the first document of the cursor, or a default value if the cursor contains no documents. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Returns the only document of a cursor returned by a cursor source. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The source. + The cancellation token. + The only document of a cursor. + + + + Returns the only document of a cursor returned by a cursor source. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the only document of a cursor. + + + + Returns the only document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The source. + The cancellation token. + The only document of a cursor, or a default value if the cursor contains no documents. + + + + Returns the only document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the only document of a cursor, or a default value if the cursor contains no documents. + + + + Wraps a cursor source in an IEnumerable. Each time GetEnumerator is called a new cursor is fetched from the cursor source. + + The type of the document. + The source. + The cancellation token. + An IEnumerable. + + + + Returns a list containing all the documents returned by the cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + The list of documents. + + + + Returns a list containing all the documents returned by the cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + A Task whose value is the list of documents. + + + + Represents a MongoDB client exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB cursor not found exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The cursor identifier. + The query. + + + + Initializes a new instance of the class. + + The information. + The context. + + + + Gets the cursor identifier. + + + The cursor identifier. + + + + + + + + Represents a MongoDB incompatible driver exception. + + + + + Initializes a new instance of the class. + + The cluster description. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB server exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the connection identifier. + + + + + + + + Represents a MongoDB connection pool wait queue full exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB node is recovering exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The command. + The result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB not primary exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The command. + The result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a cursor that wraps another cursor with a transformation function on the documents. + + The type of from document. + The type of to document. + + + + + Initializes a new instance of the class. + + The wrapped. + The transformer. + + + + + + + + + + + + + + + + Represents a read preference. + + + + + Gets an instance of ReadPreference that represents a Nearest read preference. + + + An instance of ReadPreference that represents a Nearest read preference. + + + + + Gets an instance of ReadPreference that represents a Primary read preference. + + + An instance of ReadPreference that represents a Primary read preference. + + + + + Gets an instance of ReadPreference that represents a PrimaryPreferred read preference. + + + An instance of ReadPreference that represents a PrimaryPreferred read preference. + + + + + Gets an instance of ReadPreference that represents a Secondary read preference. + + + An instance of ReadPreference that represents a Secondary read preference. + + + + + Gets an instance of ReadPreference that represents a SecondaryPreferred read preference. + + + An instance of ReadPreference that represents a SecondaryPreferred read preference. + + + + + Creates a new ReadPreference instance from a BsonDocument. + + The document. + A ReadPreference. + + + + Initializes a new instance of the class. + + The read preference mode. + The tag sets. + The maximum staleness. + + + + Gets the maximum staleness. + + + The maximum staleness. + + + + + Gets the read preference mode. + + + The read preference mode. + + + + + Gets the tag sets. + + + The tag sets. + + + + + + + + + + + + + + + + + Returns a new instance of ReadPreference with some values changed. + + The read preference mode. + A new instance of ReadPreference. + + + + Returns a new instance of ReadPreference with some values changed. + + The tag sets. + A new instance of ReadPreference. + + + + Returns a new instance of ReadPreference with some values changed. + + The maximum staleness. + A new instance of ReadPreference. + + + + Represents the read preference mode. + + + + + Reads should be from the primary. + + + + + Reads should be from the primary if possible, otherwise from a secondary. + + + + + Reads should be from a secondary. + + + + + Reads should be from a secondary if possible, otherwise from the primary. + + + + + Reads should be from any server that is within the latency threshold window. + + + + + Represents a replica set member tag. + + + + + Initializes a new instance of the class. + + The name. + The value. + + + + Gets the name. + + + The name. + + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + Represents a replica set member tag set. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The tags. + + + + Gets a value indicating whether the tag set is empty. + + + true if the tag set is empty; otherwise, false. + + + + + Gets the tags. + + + The tags. + + + + + Determines whether the tag set contains all of the required tags. + + The required tags. + True if the tag set contains all of the required tags. + + + + + + + + + + + + + + + + Represents a MongoDB configuration exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB connection failed exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Transaction options. + + + + + Initializes a new instance of the class. + + The read concern. + The read preference. + The write concern. + + + + Gets the read concern. + + + The read concern. + + + + + Gets the read preference. + + + The read preference. + + + + + Gets the write concern. + + + The write concern. + + + + + Returns a new TransactionOptions with some values changed. + + The new read concern. + The read preference. + The new write concern. + + The new TransactionOptions. + + + + + Represents the results of an operation performed with an acknowledged WriteConcern. + + + + + Initializes a new instance of the class. + + The response. + + + + Gets the number of documents affected. + + + + + Gets whether the result has a LastErrorMessage. + + + + + Gets the last error message (null if none). + + + + + Gets the _id of an upsert that resulted in an insert. + + + + + Gets whether the last command updated an existing document. + + + + + Gets the wrapped result. + + + + + Represents a MongoDB authentication exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB connection exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the connection identifier. + + + + + + + + Represents a MongoDB duplicate key exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The command result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the error labels. + + + The error labels. + + + + + Adds an error label. + + The error label. + + + + Determines whether the exception has some error label. + + The error label. + + true if the exception has some error label; otherwise, false. + + + + + Removes the error label. + + The error label. + + + + + + + Represents a MongoDB internal exception (almost surely the result of a bug). + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB query exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The message. + The query. + The query result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the query. + + + The query. + + + + + Gets the query result. + + + The query result. + + + + + + + + Represents a MongoDB write concern exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The command result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the write concern result. + + + The write concern result. + + + + + + + + Determines whether the exception is due to a write concern error only. + + + true if the exception is due to a write concern error only; otherwise, false. + + + + + Represents a MongoDB command exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The message. + The command. + + + + Initializes a new instance of the class. + + The connection identifier. + The message. + The command. + The command result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the error code. + + + The error code. + + + + + Gets the name of the error code. + + + The name of the error code. + + + + + Gets the command. + + + The command. + + + + + Gets the error message. + + + The error message. + + + + + Gets the command result. + + + The command result. + + + + + + + + Represents a write concern. + + + + + Gets an instance of WriteConcern that represents an acknowledged write concern. + + + An instance of WriteConcern that represents an acknowledged write concern. + + + + + Gets an instance of WriteConcern that represents an unacknowledged write concern. + + + An instance of WriteConcern that represents an unacknowledged write concern. + + + + + Gets an instance of WriteConcern that represents a W1 write concern. + + + An instance of WriteConcern that represents a W1 write concern. + + + + + Gets an instance of WriteConcern that represents a W2 write concern. + + + An instance of WriteConcern that represents a W2 write concern. + + + + + Gets an instance of WriteConcern that represents a W3 write concern. + + + An instance of WriteConcern that represents a W3 write concern. + + + + + Gets an instance of WriteConcern that represents a majority write concern. + + + An instance of WriteConcern that represents a majority write concern. + + + + + Creates a write concern from a document. + + The document. + A write concern. + + + + Initializes a new instance of the class. + + The w value. + The wtimeout value. + The fsync value . + The journal value. + + + + Initializes a new instance of the class. + + The mode. + The wtimeout value. + The fsync value . + The journal value. + + + + Initializes a new instance of the class. + + The w value. + The wtimeout value. + The fsync value . + The journal value. + + + + Gets the fsync value. + + + The fsync value. + + + + + Gets a value indicating whether this instance is an acknowledged write concern. + + + true if this instance is an acknowledged write concern; otherwise, false. + + + + + Gets a value indicating whether this write concern will use the default on the server. + + + true if this instance is the default; otherwise, false. + + + + + Gets the journal value. + + + The journal value. + + + + + Gets the w value. + + + The w value. + + + + + Gets the wtimeout value. + + + The wtimeout value. + + + + + + + + + + + + + + Converts this write concern to a BsonDocument suitable to be sent to the server. + + + A BsonDocument. + + + + + + + + Returns a new instance of WriteConcern with some values changed. + + The w value. + The wtimeout value. + The fsync value. + The journal value. + A WriteConcern. + + + + Returns a new instance of WriteConcern with some values changed. + + The mode. + The wtimeout value. + The fsync value. + The journal value. + A WriteConcern. + + + + Returns a new instance of WriteConcern with some values changed. + + The w value. + The wtimeout value. + The fsync value. + The journal value. + A WriteConcern. + + + + Represents the base class for w values. + + + + + Parses the specified value. + + The value. + A WValue. + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from Nullable{Int32} to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + + + + Converts this WValue to a BsonValue suitable to be included in a BsonDocument representing a write concern. + + A BsonValue. + + + + Represents a numeric WValue. + + + + + Initializes a new instance of the class. + + The w value. + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + + + + Represents a mode string WValue. + + + + + Gets an instance of WValue that represents the majority mode. + + + An instance of WValue that represents the majority mode. + + + + + Initializes a new instance of the class. + + The mode. + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + + + diff --git a/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.dll b/FifthLesson/EnglishLessons/bin/Debug/MongoDB.Driver.dll new file mode 100644 index 0000000000000000000000000000000000000000..8314e5c22d461e97b6a481659860ac0608827dc0 GIT binary patch literal 660992 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®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Ύ-*Ot$60jp}4@9lDONSU$JuHrftKkhO~rL9G#leKnaqmZNsZY z)4;^9k_|iq)3~$1&9BL&vevwnV;#to&YzYf@PJ`ij`;_$1XOR=2X3H{Uq{go`A{aGx4oc;}woB(@@X-xY_8Q3LjaS+^r8uF<9 zeC;E%+f9MlB1(plmt;92*q>BbFqS%w5aey=l(U2&L8NWxuJm3k36!1xep+HlXY&v% zj(v#*9udMcz7HUFW_{4T`2}3@u0iwyyGXOKx0!mFfAoE_iik}zpI7uXqwA9-pjR|+nNzb;cV3b z$JY9K>vuZW*xXKnJ=aaPwz?y5s-V*m9H{vSrVk2qj$o!>t*(=hDS$_rJN+iTv8qUq z?mEzEcpWVOdcRL@a!Ce_5sT;(HTvj$5OS(ahypdAz(lt2hOXfGAr!++p?^zSp({Rv z-VEri13*jh(g_~t!^B`I)}gx87z0{!3)TTwq3f-)AoTzQ-OclXbUjf?p>-lH5*$IG2^t7 zobrI-OGo`YObbRHM`0tv6pUc41l{`rIpf zGi(cKtk2)(ry84YyVK}=ZR=eX+p^rIJL0v9KWp@;&)>G* z^}Rg50vOWpv818-lMNLOZU8mk<5X_;2K9fk!>w1SP!qNO_4bY+VMnkCGTS=> zR3t|#8!QHDY!7FXh-~kSj5|9Sca}1y)U9j$ae+TkGp=*-TQjHs#7$qaW4^k=&8>ke zUe0du&6dw2^>ZWlXLy3n=J!Wr1Mx_*5x04cXQe^gE5#4OzS`v5YQEa!bmbV13={SC zL}ZwVi1qdM`j81Ot;DtXi_9wOpTe$|byaIpgmNoiPQ9@Or{0*>Tg6eK8he5~6vUNo zD%-fKwzjfjnu+Rl)2pUe6?|%3=70DARA^#SR+0%0#2R zgDc;o$pd=ThB#iOcM?>{C80{cWZ%u{f5i0nQd@hi?yrK&c zLK=pLQK0ReQL~*PRv<|cdJfB=yJ}Iyu0qeXchN&6P3_(F)<+n<^su*i&!FCVm-j$i zxm&=>^hi;%@$!lJ+Jtt8+doDLdQr&-8{4rH=)*=~E998Hz~xg&kuy%;@o*N$w@6XW zxUbaqiLMl7cD*(}ZjQdeNu}5)ZyyYNIrsifZlwsJqT&Q-`-q}8S7NuaeLo@6owWc_ zBp@lnuOgJnYL_yQQHhCCrKl`LCG1!b{n!-=_Jr?D353kg6HNG&B7BNk7i@Z_1I)v# z!DYo21wPjSpoqlvQe;BMa4U745>!B{t71AeS3-wUg~)V7k;!#~yqp^3EDhp_b1C92 zBK%}M&pnKXIKEhKzZhcoqQ1gAKE4{|1DI9KYyGO`H7A_wPdMiUrZBp9SyoPGo$y9~ z!W&L_t3Tl_KV^vU%H|O|O*G>gC)HH6#sGbMf=AvY=CWJ{Kq@)_(vxt#s1zLl2M1$N zbO0O~44~)$NDsyJ7NO_>xPLGPMVk?G{fwB4oQs2VDmnntYjnM3D>?weYU^XAq5~i% zT73YD4uI462C!Js0dQt8fTCT!$NH=HSmb}UHusotxL_{ChgAcqN?mdrkS4KbCP1+HV!K^cv&t-$Z}zbXdTtx{Aqs+EBT2L zQh%7qh465mErg>yJ*4kX9-FR>qCJ$Guh`gFP*%zG{GuW$8w*IbBO#3dq=1gk&!Htq z@>;nx1}|j9QfcE+fOVImh|x`9&J*}PzswxIROgcXl{_mO-sY0}Ad$BKDnsM;^3Z75 zV-d7zRxMIT2c(XYI_A7%IW>aLJ67Z!KMEya~r%}EcV{FPuZnLw^wHq~E=Ms|55uajJ0CNf$3;qTHU0|v^I~>9P;KmZT1X*ATesp0H&$=-U04g|GU>ZP^c-D<+0FW^W zayd-m=a<7INc98DAxDN0f^ON&aizA2>wJ_A9+YAn zf=-!BaGQtX?5j!(;I0PHmYn3oFDhCSp*M$lQGpF>Wuc7|ozj#EIJ7I+vV;{!g8k-V zpds%dG#WzwN;Eh9m#ER5vOyTWJR!nRG&2YP%#gAW<+u(*Dr#m9K}Hu*g%cMu#~7S| z2rJh~_4zyFjPLwj4@~{=nBkoUbn1SJ9`*END>7{x>I0Buk$MxFtQ zLHQCnN53%VsB#X_Wn)Fo0g0jLmMC+)$hj1?<9Y;jsR4jB^wKB`bGp=kOV%)vM!Qg4 zePdKa2WzCq5_HIa-xw9qhE`gka|dX}e(gN~s3^CW4ei3fSerD;}AHB8}F25o9 z$mzc9xg&e_djSyxd49hZKIZpx37Jpll{Ai2z)@ON?=HQs4H*jL!?Ob*;+dV+wnA&i zyE+|rlTrzLP&iYQg@$#7)3tH6FNt)rvV`aZ$Uy*~n1Yk?$ zy&)0_5w&o7WSiFkr&!v6$lnf6vF0~bTIIY!vOWJ?%rsd_A(@X+lKa&mzIXX}P1~$a zW@UH&xp7t==TD1%3075W6l<#V+>P)1b?7DHw98wsaj>c_kW$wV{4U7=^eDAunNCkhZ=BdxdIh9Nm_ zxGU4!U7;@Y3p=~gep3!DoGXV~+7ZzglyUSRJ&wNI&fb>jnV=a}OFpWMP{3e)0Qp>f z{ydXs2cIv3#oV0-SwX_k`Rgn@Hx_B+R2oiB+nP%Pp6_;9mU&!tg7U1Ln60;doqR={ zo_3XN=z%wVeLLeQyq_t5F5-EFMz+ewtX)jkLcW-(0|8!s`D4d}N}g9P#K@6z$F)Nz zEjs@x(I&g~N;t2M!3t-jCUj*)4R>stB~4Pm-D0&n>KADg9rk9=E7|jE^2~p#+VJUk zYBT?-H8<7z%y%EPp`b^~qC7-mEyWP!Pn;{i=y+Ad1wrv}-uy?r3myHe^~lBa6B5;M zAE6;q^ih2#trLB8vI|OFSwEw59`o#p&3pUKANdxg3#>5e^VEzQw3X-$0RbTzK!qs# zYApw~f}RJT>k#qab0s2HR%jDWNKnvm6$C!A8u4AK-NIIashSIWvmnqgO4~-7qZ&UU zt9%Gc${yn9w}VYG%l#tC`EJ4EmZV}uOFCH_9VChpL*79EyotH?LD9n2@bOXf+rr1U z!|w>6zR(@M9rcAB_O*UfZ=w2y+RdaM~^YS^Z)DGN*%Kc(v|J%i-fPMM$(VY}K0NUkTWr=7KBW~xNSdYBAAL{KyB}nZJQz7u z+`)ceb~asVm8d)-V^&c!SYzRiBwq*Pe4)MEF>f2uc5o;&y@CDr@RRl#E|mn0qJ!d~jjCwg5BE#1salO33ZPR)*yI0(s|2Q0(&7x2%&D<7&6e&O#z75=9QwjcDsKiM75WZJ zu{)#%;n*GGwrRsB9k@o?_`Ps*=d|&TJ-Tyh&!4$WYR?DUJhewxP3?J;{aJh7V}Ex& zD!;}P=UvBDB^%9gZ5tflZ?h+z_v=25TAw>BR*%MntA3y0Pxuh*iGy*555aD}$LWV? zujYI32p-B|Usq=ga5%casfgIR7gc_O-AS#>tgBi#@Jv1t)o|FjzR<}sC6Xd@I8$uk z53kTpADnoP8Q}OW+H-s4_029A(X607i`_|78 zpR<@8Td}oLt8T5NPekCUZ$$8j9Zj)(J#8x+X7m0%zE%*NO%*}``26A;d0;f3(MrDh zZh^NZ^xK>nb*vxr&Uu_!LSD@=!_JEpo(g<(O;tsm6;}JS2^c=@G=@(*XZAIp#Agye z<9BlIFDlc=KpI1eZmg=Nh+zd=RcdG-k0LAiN&k-fcSF?ToN$vVzSj!J>c^b?lZgCr zDzNpb!>mCDxC`CuD#w%}YES2AOcacmdz133Q3utyrgG9WhKDvtoVvIaWdV#gh%PEc zs}Z8`Q{d>-_;C??pNO4%KM3KxcH;#ibdX5DLqQ3BgB~f2>L%QJCkwaUt2Ek`nO`9X z+MjaUa|Kex3JX`cRm3OyZEW}NCjUhr z63xpx-phgIB%#YshXEb4)s@$PD*SvDBbc!xVZ%;S)qJ9_s3eEVQhnKOzb!#>QYaRRnlzakl%cVOMh*G8s>sTTB5~vx3cR9B}2 zNpPrnRl`aNi2^91l%XpBb$*)VoKVK&5exBhMB3pPls7s4{ZR)!)5( z`_;O>1_|C>VhU;V>G-hJ)%z1Ln}sa!Es`R4cTJ$UTUJwM-fWaj_<^~^Qf zwr{)Y;Gx;Wvj>jM^cVk6v-@ZF9G--E*0Lq_(Cdk@Xd z?43Qb=brtC;nU?ql}oo>zx~=BJGWnd)iryzU3=AzZP)L;YUj_c-FelH?_BfKpI)*)ka7 zj@iRUZkgSGaQ4vQN@ZrK^3|om0QlBWo@zedsuBlXRCHK|;>*hQD{?MLZ%>MG; zL;rf^|E6Y$?+yR9n4u)%l;rgMM<|deuc_{OG_h z?>Vq{=3bP~{(JZACG$OZ@0&TY=U-w&$q_uqc+-r4;n%o5zLJc0C!Gk$ld za!qf>yT3$%Hx5<)dymjL_`Q4g@1J$k{2i+NuI*Rs+KpB}GJE@;QeV6F+Dhebhbn*b z*C2oou9N!e4n+2!hbsRh!qrv>W`EgfsC$3Lh<14P(2<-Y)#gAa`X756uf)kOPgi#- zqU*a1onM|Y|1`_^bGI6}sMyZ${xt}GbZ{>M(#6^9|0>P~f-(WuGi(pgWp1btygdgP z9}nfm4UsHk*bWc=ix_C#{~`v)lK&zG_?Y{YB<${cQFw=r-hBj>cx2xmG?f*>j+s4& zex8(NN1H8Gbf<6J`iq16)i-YX`Ognw1{~=~z%?EWzE}t|hQB+y|6l+4&^=`g-&wly z{S@53=iooh?mc>Uhl1~TB)nm$vUBIJgvJ-*#ORJrA^LS}vpz-H3^=TPPEzZ|w79cIu_EwMO{{4j=$ zg0$`1kn=B3*%#ol4I!g@5M{gf9NF_zl&MI$V%Kf=96r)%Mwvf{3!<*sS*hGIRQcW) zV_BB%(S{gfyT3G|C0PEQ?@Ai}eyDQO7h_tMMc)O@m#f+GXxzL0VW{$VJ@gdP5{$X` z&=tFuWswDQ06|ORS%O2B$t646{(G>)qRq1u^t3p7YRM5N<^JK3J%^4gCC3_y2Uxvk z&-cm*dON_i*L`uxHyxTy*$)3O&(jKF-La!m`KO`E?L95gRq{Xt|6e=T*V{G~#m^N* zLgil{K-vRH76UZY)@_ol8)X8Tr2j_SbV<8STSw>EPU_CFgY9e$Z+safp5TQ?B%b&L z`vQo)@B-fe_?_#diL)fOoPc1$mhIf@dw=KLbB^yl_uSjo;B8e*_+=H-mYzlr62s>Z zZ#V)uR;^d0H_Wc&IIcPnqcpn0HXo;yv1Yo0@hh$!;{l|7O6ivNHcQ3)VxcU(T`%-G z45ivuDuwde?qX$YZ7~D?r#op@a_aH|JX}Mue8q7eW9o|;yUtSpxVRZX3&TWn=%H&W zo4#v5>Ww5B?vKs{`2#g}EawXq(?1=3s_XgczST5s%Q4kmGdOXLf@a%!_}-ZMshghL zYUbOw;Q#|2lP2gK?xpL61?I1Bn!&kgh1GpIn) zoW3=;PfX8@C(;!3FowuFCftT$8e_iNbGJ60peLv?1%m#~mg%*%s{N0(@xa~E{F92A zz&;#7*5qw0^N{B!Xy2(Ib8>Qbt!BLTY(e$ONgXE7^Nr&K+~hb3c^YOe;oxbSrz(PaZ1N1Z}6n zMOzSn_S#XnJAx_`!Hweco}gQ)fZ_FD#3W9iO8a>=Grh6!8Kb1gsF;%iy;=`o!K+wHup!S+DEj>!M_c8UtJg@(wORdKq z;7DducRn3#yIpskk?2DPg=ALJj~*39RnYxZ>f_K+GP@fRzfHz`zFP~_qUl?8XSuMJSzfuaT6Fi^psZQGdA^az-*yfi z^Q+te9h5R~kH`HL)W=KQH2Qh_Z(d7~W>XFzb&jz<^j6g!ka^ z@!R*m+~X(jf_e)(bDn-MOHW^(rE;ZMSt$K_;isk7w!T$1e_mSsae+7P6jqOTAIcFn zd}xiM25%o))P3G7v>5JFSd=@XGDp6rA4RR`$gQ3pb+$AOyi%J+mAUwD9GB+tS45p7 z&%c#!D*C+KSB~ho;Ce;d-qm1`4PVD5DpNIVTUPn=Jz&heir=r}n#1)5t~YUA#Krmi z9DIkYf5Cyz1zcRfhO{U%a=v^zX6QlpBKRx-Yf0Wukn7>?Jni5Y z*Kgrj2c3Dm58D>yjOloi4+HlArC9?$DDtri3-8LNDG}SywkGAo@1yNfq~7#S-3@#d zSiqKeCipags)LpV{`&P7#ZXa_%Y+hS8q56ek + + + MongoDB.Driver + + + +

    + Represents the granularity value for a $bucketAuto stage. + + + + + Gets the E6 granularity. + + + + + Gets the E12 granularity. + + + + + Gets the E24 granularity. + + + + + Gets the E48 granularity. + + + + + Gets the E96 granularity. + + + + + Gets the E192 granularity. + + + + + Gets the POWERSOF2 granularity. + + + + + Gets the R5 granularity. + + + + + Gets the R10 granularity. + + + + + Gets the R20 granularity. + + + + + Gets the R40 granularity. + + + + + Gets the R80 granularity. + + + + + Gets the 1-2-5 granularity. + + + + + Initializes a new instance of the struct. + + The value. + + + + Gets the value. + + + + + Represents options for the BucketAuto method. + + + + + Gets or sets the granularity. + + + + + Represents the result of the $bucketAuto stage. + + The type of the value. + + + + Initializes a new instance of the class. + + The inclusive lower boundary of the bucket. + The count. + + + + Initializes a new instance of the class. + + The minimum. + The maximum. + The count. + + + + Gets the inclusive lower boundary of the bucket. + + + The inclusive lower boundary of the bucket. + + + + + Gets the count. + + + The count. + + + + + Gets the maximum. + + + + + Gets the minimum. + + + + + Represents the _id value in the result of a $bucketAuto stage. + + The type of the values. + + + + Initializes a new instance of the class. + + The minimum. + The maximum. + + + + Gets the max value. + + + + + Gets the min value. + + + + + Represents options for the Bucket method. + + The type of the value. + + + + Gets or sets the default bucket. + + + + + Represents the result of the $bucket stage. + + The type of the value. + + + + Initializes a new instance of the class. + + The inclusive lower boundary of the bucket. + The count. + + + + Gets the inclusive lower boundary of the bucket. + + + The inclusive lower boundary of the bucket. + + + + + Gets the count. + + + The count. + + + + + Result type for the aggregate $count stage. + + + + + Initializes a new instance of the class. + + The count. + + + + Gets the count. + + + The count. + + + + + An aggregation expression. + + The type of the source. + The type of the result. + + + + Performs an implicit conversion from to . + + The expression. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The expression. + + The result of the conversion. + + + + + Renders the aggregation expression. + + The source serializer. + The serializer registry. + The rendered aggregation expression. + + + + A based aggregate expression. + + The type of the source. + The type of the result. + + + + + Initializes a new instance of the class. + + The expression. + + + + + + + A based aggregate expression. + + The type of the source. + The type of the result. + + + + + Initializes a new instance of the class. + + The expression. + The translation options. + + + + + + + Represents static methods for creating facets. + + + + + Creates a new instance of the class. + + The type of the input documents. + The type of the output documents. + The facet name. + The facet pipeline. + + A new instance of the class + + + + + Represents a facet to be passed to the Facet method. + + The type of the input documents. + + + + Initializes a new instance of the class. + + The facet name. + + + + Gets the facet name. + + + + + Gets the output serializer. + + + + + Gets the type of the output documents. + + + + + Renders the facet pipeline. + + The input serializer. + The serializer registry. + The rendered pipeline. + + + + Represents a facet to be passed to the Facet method. + + The type of the input documents. + The type of the otuput documents. + + + + Initializes a new instance of the class. + + The facet name. + The facet pipeline. + + + + + + + + + + Gets the facet pipeline. + + + + + + + + Options for the aggregate $facet stage. + + The type of the output documents. + + + + Gets or sets the output serializer. + + + + + Represents an abstract AggregateFacetResult with an arbitrary TOutput type. + + + + + Initializes a new instance of the class. + + The name of the facet. + + + + Gets the name of the facet. + + + + + Gets the output of the facet. + + The type of the output documents. + The output of the facet. + + + + Represents the result of a single facet. + + The type of the output. + + + + Initializes a new instance of the class. + + The name. + The output. + + + + Gets or sets the output. + + + The output. + + + + + Represents the results of a $facet stage with an arbitrary number of facets. + + + + + Initializes a new instance of the class. + + The facets. + + + + Gets the facets. + + + + + Represents options for the GraphLookup method. + + The type of from documents. + The type of the as field elements. + The type of the output documents. + + + + Gets or sets the TAsElement serialzier. + + + + + Gets or sets the TFrom serializer. + + + + + Gets or sets the maximum depth. + + + + + Gets or sets the output serializer. + + + + + Gets the filter to restrict the search with. + + + + + Options for the aggregate $lookup stage. + + The type of the foreign document. + The type of the result. + + + + Gets or sets the foreign document serializer. + + + + + Gets or sets the result serializer. + + + + + Result type for the aggregate $sortByCount stage. + + The type of the identifier. + + + + Initializes a new instance of the class. + + The identifier. + The count. + + + + Gets the count. + + + The count. + + + + + Gets the identifier. + + + The identifier. + + + + + Option for which expression to generate for certain string operations. + + + + + Translate to the byte variation. + + + + + Translate to the code points variation. This is only supported in >= MongoDB 3.4. + + + + + Base class for array filters. + + + + + Gets the type of an item. + + + The type of an item. + + + + + Renders the array filter to a . + + The item serializer. + The serializer registry. + + A . + + + + + Base class for array filters. + + The type of an item. + + + + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Renders the array filter to a . + + The item serializer. + The serializer registry. + + A . + + + + + A based array filter. + + The type of an item. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + The document. + + + + + + + + + + + A JSON based array filter. + + The type of an item. + + + + Initializes a new instance of the class. + + The JSON string. + + + + Gets the document. + + + The document. + + + + + Gets the JSON string. + + + The JSON string. + + + + + + + + + + + A static helper class containing various builders. + + The type of the document. + + + + Gets a . + + + + + Gets an . + + + + + Gets a . + + + + + Gets a . + + + + + Gets an . + + + + + Options for a change stream operation. + + + + + Gets or sets the size of the batch. + + + The size of the batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets or sets the full document. + + + The full document. + + + + + Gets or sets the maximum await time. + + + The maximum await time. + + + + + Gets or sets the resume after. + + + The resume after. + + + + + Gets or sets the start at operation time. + + + The start at operation time. + + + + + Options for a $changeStream stage. + + + + + Gets or sets whether to include all changes for an entire cluster in the change stream. + + + Whether to include all changes for an entire cluster in the change stream. + + + + + Gets or sets the full document. + + + The full document. + + + + + Gets or sets the resume after. + + + The resume after. + + + + + Gets or sets the start at operation time. + + + The start at operation time. + + + + + A client session handle. + + + + + + Initializes a new instance of the class. + + The client. + The options. + The wrapped session. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Client session options. + + + + + When true or unspecified, an application will read its own writes and subsequent + reads will never observe an earlier version of the data. + + + + + Gets or sets the default transaction options. + + + The default transaction options. + + + + + Model for creating an index. + + The type of the document. + + + + Initializes a new instance of the class. + + The keys. + The options. + + + + Gets the keys. + + + + + Gets the options. + + + + + Options for creating a single index. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + Options for creating a view. + + The type of the documents. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets or sets the document serializer. + + + The document serializer. + + + + + Gets or sets the serializer registry. + + + The serializer registry. + + + + + Options for the Delete methods. + + + + + Gets or sets the collation. + + + + + Options for creating multiple indexes. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + Options for dropping an index. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + Options for estimated document count. + + + + + Gets or sets the maximum time. + + + + + The interface for a client session. + + + + + Gets the client. + + + The client. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Gets a value indicating whether this session is an implicit session. + + + true if this session is an implicit session; otherwise, false. + + + + + Gets a value indicating whether this instance is in a transaction. + + + true if this instance is in a transaction; otherwise, false. + + + + + Gets the operation time. + + + The operation time. + + + + + Gets the options. + + + The options. + + + + + Gets the server session. + + + The server session. + + + + + Gets the wrapped core session (intended for internal use only). + + + The wrapped core session. + + + + + Aborts the transaction. + + The cancellation token. + + + + Aborts the transaction. + + The cancellation token. + A Task. + + + + Advances the cluster time. + + The new cluster time. + + + + Advances the operation time. + + The new operation time. + + + + Commits the transaction. + + The cancellation token. + + + + Commits the transaction. + + The cancellation token. + A Task. + + + + Starts a transaction. + + The transaction options. + + + + A handle to an underlying reference counted IClientSession. + + + + + + Forks this instance. + + A session. + + + + Extension methods on IMongoClient. + + + + + Watches changes on all collections in all databases. + + The client. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The client. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The client. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The client. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Extension methods on IMongoDatabase. + + + + + Watches changes on all collection in a database. + + The database. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collection in a database. + + The database. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collection in a database. + + The database. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collection in a database. + + The database. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Base class for an index keys definition. + + The type of the document. + + + + Renders the index keys definition to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based index keys definition. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A JSON based index keys definition. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + Represents index option defaults. + + + + + Gets or sets the storage engine options. + + + + + Returns this instance represented as a BsonDocument. + + A BsonDocument. + + + + Options for inserting one document. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + A model for a queryable to be executed using the aggregation framework. + + The type of the output. + + + + Gets the stages. + + + + + Gets the output serializer. + + + + + Gets the type of the output. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Compare two expressions to determine if they are equivalent. + + + + + Provides functionality to evaluate queries against MongoDB. + + + + + Gets the execution model. + + + The execution model. + + + + + Provides functionality to evaluate queries against MongoDB + wherein the type of the data is known. + + + The type of the data in the data source. + This type parameter is covariant. + That is, you can use either the type you specified or any type that is more + derived. For more information about covariance and contravariance, see Covariance + and Contravariance in Generics. + + + + + Represents the result of a sorting operation. + + + The type of the data in the data source. + This type parameter is covariant. + That is, you can use either the type you specified or any type that is more + derived. For more information about covariance and contravariance, see Covariance + and Contravariance in Generics. + + + + + An implementation of for MongoDB. + + + + + Gets the collection namespace. + + + + + Gets the collection document serializer. + + + + + Gets the execution model. + + The expression. + The execution model. + + + + Executes the strongly-typed query represented by a specified expression tree. + + The type of the result. + An expression tree that represents a LINQ query. + The cancellation token. + The value that results from executing the specified query. + + + + This static class holds methods that can be used to express MongoDB specific operations in LINQ queries. + + + + + Injects a low level FilterDefinition{TDocument} into a LINQ where clause. Can only be used in LINQ queries. + + The type of the document. + The filter. + + Throws an InvalidOperationException if called. + + + + + Enumerable Extensions for MongoDB. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Extension for . + + + + + Determines whether a sequence contains any elements. + + The type of the elements of . + A sequence to check for being empty. + The cancellation token. + + true if the source sequence contains any elements; otherwise, false. + + + + + Determines whether any element of a sequence satisfies a condition. + + The type of the elements of . + A sequence whose elements to test for a condition. + A function to test each element for a condition. + The cancellation token. + + true if any elements in the source sequence pass the test in the specified predicate; otherwise, false. + + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Returns the number of elements in a sequence. + + The type of the elements of . + The that contains the elements to be counted. + The cancellation token. + + The number of elements in the input sequence. + + + + + Returns the number of elements in the specified sequence that satisfies a condition. + + The type of the elements of . + An that contains the elements to be counted. + A function to test each element for a condition. + The cancellation token. + + The number of elements in the sequence that satisfies the condition in the predicate function. + + + + + Returns distinct elements from a sequence by using the default equality comparer to compare values. + + The type of the elements of . + The to remove duplicates from. + + An that contains distinct elements from . + + + + + Returns the first element of a sequence. + + The type of the elements of . + The to return the first element of. + The cancellation token. + + The first element in . + + + + + Returns the first element of a sequence that satisfies a specified condition. + + The type of the elements of . + An to return an element from. + A function to test each element for a condition. + The cancellation token. + + The first element in that passes the test in . + + + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + + The type of the elements of . + The to return the first element of. + The cancellation token. + + default() if is empty; otherwise, the first element in . + + + + + Returns the first element of a sequence that satisfies a specified condition or a default value if no such element is found. + + The type of the elements of . + An to return an element from. + A function to test each element for a condition. + The cancellation token. + + default() if is empty or if no element passes the test specified by ; otherwise, the first element in that passes the test specified by . + + + + + Groups the elements of a sequence according to a specified key selector function. + + The type of the elements of . + The type of the key returned by the function represented in keySelector. + An whose elements to group. + A function to extract the key for each element. + + An that has a type argument of + and where each object contains a sequence of objects + and a key. + + + + + Groups the elements of a sequence according to a specified key selector function + and creates a result value from each group and its key. + + The type of the elements of . + The type of the key returned by the function represented in keySelector. + The type of the result value returned by resultSelector. + An whose elements to group. + A function to extract the key for each element. + A function to create a result value from each group. + + An that has a type argument of TResult and where + each element represents a projection over a group and its key. + + + + + Correlates the elements of two sequences based on key equality and groups the results. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence. + + An that contains elements of type obtained by performing a grouped join on two sequences. + + + + + Correlates the elements of two sequences based on key equality and groups the results. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The collection to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence. + + An that contains elements of type obtained by performing a grouped join on two sequences. + + + + + Correlates the elements of two sequences based on matching keys. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + + An that has elements of type obtained by performing an inner join on two sequences. + + + + + Correlates the elements of two sequences based on matching keys. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + + An that has elements of type obtained by performing an inner join on two sequences. + + + + + Returns the number of elements in a sequence. + + The type of the elements of . + The that contains the elements to be counted. + The cancellation token. + + The number of elements in the input sequence. + + + + + Returns the number of elements in the specified sequence that satisfies a condition. + + The type of the elements of . + An that contains the elements to be counted. + A function to test each element for a condition. + The cancellation token. + + The number of elements in the sequence that satisfies the condition in the predicate function. + + + + + Returns the maximum value in a generic . + + The type of the elements of . + A sequence of values to determine the maximum of. + The cancellation token. + + The maximum value in the sequence. + + + + + Invokes a projection function on each element of a generic and returns the maximum resulting value. + + The type of the elements of . + The type of the value returned by the function represented by . + A sequence of values to determine the maximum of. + A projection function to apply to each element. + The cancellation token. + + The maximum value in the sequence. + + + + + Returns the minimum value in a generic . + + The type of the elements of . + A sequence of values to determine the minimum of. + The cancellation token. + + The minimum value in the sequence. + + + + + Invokes a projection function on each element of a generic and returns the minimum resulting value. + + The type of the elements of . + The type of the value returned by the function represented by . + A sequence of values to determine the minimum of. + A projection function to apply to each element. + The cancellation token. + + The minimum value in the sequence. + + + + + Filters the elements of an based on a specified type. + + The type to filter the elements of the sequence on. + An whose elements to filter. + + A collection that contains the elements from that have type . + + + + + Sorts the elements of a sequence in ascending order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted according to a key. + + + + + Sorts the elements of a sequence in descending order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted in descending order according to a key. + + + + + Returns a sample of the elements in the . + + The type of the elements of . + An to return a sample of. + The number of elements in the sample. + + A sample of the elements in the . + + + + + Projects each element of a sequence into a new form by incorporating the + element's index. + + The type of the elements of . + The type of the value returned by the function represented by selector. + A sequence of values to project. + A projection function to apply to each element. + + An whose elements are the result of invoking a + projection function on each element of source. + + + + + Projects each element of a sequence to an and combines the resulting sequences into one sequence. + + The type of the elements of . + The type of the elements of the sequence returned by the function represented by . + A sequence of values to project. + A projection function to apply to each element. + + An whose elements are the result of invoking a one-to-many projection function on each element of the input sequence. + + + + + Projects each element of a sequence to an and + invokes a result selector function on each element therein. The resulting values from + each intermediate sequence are combined into a single, one-dimensional sequence and returned. + + The type of the elements of . + The type of the intermediate elements collected by the function represented by . + The type of the elements of the resulting sequence. + A sequence of values to project. + A projection function to apply to each element of the input sequence. + A projection function to apply to each element of each intermediate sequence. + + An whose elements are the result of invoking the one-to-many projection function on each element of and then mapping each of those sequence elements and their corresponding element to a result element. + + + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + + The type of the elements of . + An to return the single element of. + The cancellation token. + + The single element of the input sequence. + + + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + + The type of the elements of . + An to return a single element from. + A function to test an element for a condition. + The cancellation token. + + The single element of the input sequence that satisfies the condition in . + + + + + Returns the only element of a sequence, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + + The type of the elements of . + An to return the single element of. + The cancellation token. + + The single element of the input sequence, or default() if the sequence contains no elements. + + + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + + The type of the elements of . + An to return a single element from. + A function to test an element for a condition. + The cancellation token. + + The single element of the input sequence that satisfies the condition in , or default() if no such element is found. + + + + + Bypasses a specified number of elements in a sequence and then returns the + remaining elements. + + The type of the elements of source + An to return elements from. + The number of elements to skip before returning the remaining elements. + + An that contains elements that occur after the + specified index in the input sequence. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Returns a specified number of contiguous elements from the start of a sequence. + + The type of the elements of . + The sequence to return elements from. + The number of elements to return. + + An that contains the specified number of elements + from the start of source. + + + + + Performs a subsequent ordering of the elements in a sequence in ascending + order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted according to a key. + + + + + Performs a subsequent ordering of the elements in a sequence in descending + order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted in descending order according to a key. + + + + + Filters a sequence of values based on a predicate. + + The type of the elements of . + An to return elements from. + A function to test each element for a condition. + + An that contains elements from the input sequence + that satisfy the condition specified by predicate. + + + + + MongoDB only supports constants on the RHS for certain expressions, so we'll move them around + to make it easier to generate MongoDB syntax. + + + + + VB creates coalescing operations when dealing with nullable value comparisons, so we try and make this look like C# + + + + + VB uses a method for string comparisons, so we'll convert this into a BinaryExpression. + + + + + VB creates an IsNothing comparison using a method call. We'll translate this to a simple + null comparison. + + + + + VB introduces a Convert on the LHS with a Nothing comparison, so we make it look like + C# which does not have one with a comparison to null. + + + + + VB creates string index expressions using character comparison whereas C# uses ascii value comparison + we make VB's string index comparison look like C#. + + + + + An execution model. + + + + + Gets the type of the output. + + + + + This guy is going to replace calls like store.GetValue("d.y") with nestedStore.GetValue("y"). + + + + + Options for controlling translation from .NET expression trees into MongoDB expressions. + + + + + Gets or sets the string translation mode. + + + + + Options for a list collection names operation. + + + + + Gets or sets the filter. + + + + + Options for a list databases operation. + + + + + Gets or sets the filter. + + + + + Gets or sets the NameOnly flag. + + + + + Represents an identity defined by an X509 certificate. + + + + + Initializes a new instance of the class. + + The username. + + + + Extension methods for adding stages to a pipeline. + + + + + Appends a stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The stage. + The output serializer. + A new pipeline with an additional stage. + + + + Changes the output type of the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The output serializer. + + A new pipeline with an additional stage. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The group by expression. + The boundaries. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The type of the output documents. + The pipeline. + The group by expression. + The boundaries. + The output projection. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The group by expression. + The boundaries. + The options. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The type of the output documents. + The pipeline. + The group by expression. + The boundaries. + The output projection. + The options. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The group by expression. + The number of buckets. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The type of the output documents. + The pipeline. + The group by expression. + The number of buckets. + The output projection. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the value. + The pipeline. + The group by expression. + The number of buckets. + The options (optional). + The translation options. + + The fluent aggregate interface. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the value. + The type of the output documents. + The pipeline. + The group by expression. + The number of buckets. + The output projection. + The options (optional). + The translation options. + + The fluent aggregate interface. + + + + + Appends a $changeStream stage to the pipeline. + Normally you would prefer to use the Watch method of . + Only use this method if subsequent stages project away the resume token (the _id) + or you don't want the resulting cursor to automatically resume. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The options. + + The fluent aggregate interface. + + + + + Appends a $count stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + + A new pipeline with an additional stage. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The facets. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The facets. + + The fluent aggregate interface. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The facets. + + The fluent aggregate interface. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The facets. + + The fluent aggregate interface. + + + + + Used to start creating a pipeline for {TInput} documents. + + The type of the output. + The inputSerializer serializer. + + The fluent aggregate interface. + + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The stage. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The translation options. + The stage. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The translation options. + The stage. + + + + Appends a $group stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The group projection. + + A new pipeline with an additional stage. + + + + + Appends a group stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The group projection. + + The fluent aggregate interface. + + + + + Appends a group stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the key. + The type of the output documents. + The pipeline. + The id. + The group projection. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $limit stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The limit. + + A new pipeline with an additional stage. + + + + + Appends a $lookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the foreign collection documents. + The type of the output documents. + The pipeline. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + + A new pipeline with an additional stage. + + + + + Appends a lookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the foreign collection documents. + The type of the output documents. + The pipeline. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + + The fluent aggregate interface. + + + + + Appends a $match stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The filter. + + A new pipeline with an additional stage. + + + + + Appends a match stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The filter. + + The fluent aggregate interface. + + + + + Appends a $match stage to the pipeline to select documents of a certain type. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The output serializer. + + A new pipeline with an additional stage. + + + + + + Appends a $out stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The output collection. + + A new pipeline with an additional stage. + + + + + + Appends a $project stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The projection. + + A new pipeline with an additional stage. + + + + + + Appends a project stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The projection. + + The fluent aggregate interface. + + + + + Appends a project stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The projection. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The new root. + + A new pipeline with an additional stage. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The new root. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $skip stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The number of documents to skip. + + A new pipeline with an additional stage. + + + + + Appends a $sort stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The sort definition. + + A new pipeline with an additional stage. + + + + + Appends a $sortByCount stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The value expression. + + A new pipeline with an additional stage. + + + + + Appends a sortByCount stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The value expression. + The translation options. + + The fluent aggregate interface. + + + + + Appends an $unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The field. + The options. + + A new pipeline with an additional stage. + + + + + Appends an unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Represents a pipeline consisting of an existing pipeline with one additional stage appended. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + + + + Initializes a new instance of the class. + + The pipeline. + The stage. + The output serializer. + + + + + + + + + + + + + Represents an empty pipeline. + + The type of the input documents. + + + + Initializes a new instance of the class. + + The output serializer. + + + + + + + + + + + + + Represents a pipeline consisting of an existing pipeline with one additional stage prepended. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + + + + Initializes a new instance of the class. + + The stage. + The pipeline. + The output serializer. + + + + + + + + + + + + + Represents a pipeline with the output serializer replaced. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + + + + + Initializes a new instance of the class. + + The pipeline. + The output serializer. + + + + + + + + + + + + + A rendered pipeline stage. + + + + + Gets the name of the pipeline operator. + + + The name of the pipeline operator. + + + + + Gets the document. + + + + + Gets the output serializer. + + + + + A rendered pipeline stage. + + The type of the output. + + + + Initializes a new instance of the class. + + Name of the pipeline operator. + The document. + The output serializer. + + + + + + + Gets the output serializer. + + + + + + + + + + + A pipeline stage. + + + + + Gets the type of the input. + + + + + Gets the name of the pipeline operator. + + + + + Gets the type of the output. + + + + + Renders the specified document serializer. + + The input serializer. + The serializer registry. + An + + + + Returns a that represents this instance. + + The input serializer. + The serializer registry. + + A that represents this instance. + + + + + Base class for pipeline stages. + + The type of the input. + The type of the output. + + + + Gets the type of the input. + + + + + + + + Gets the type of the output. + + + + + Renders the specified document serializer. + + The input serializer. + The serializer registry. + A + + + + + + + Returns a that represents this instance. + + The input serializer. + The serializer registry. + + A that represents this instance. + + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + + + + A based stage. + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The document. + The output serializer. + + + + + + + + + + A JSON based pipeline stage. + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The json. + The output serializer. + + + + Gets the json. + + + + + + + + Gets the output serializer. + + + + + + + + A rendered pipeline. + + The type of the output. + + + + Initializes a new instance of the class. + + The pipeline. + The output serializer. + + + + Gets the documents. + + + + + Gets the serializer. + + + + + Base class for a pipeline. + + The type of the input. + The type of the output. + + + + Gets the output serializer. + + + + + Gets the stages. + + + + + Renders the pipeline. + + The input serializer. + The serializer registry. + A + + + + + + + Returns a that represents this instance. + + The input serializer. + The serializer registry. + + A that represents this instance. + + + + + Creates a pipeline. + + The stages. + The output serializer. + A . + + + + Creates a pipeline. + + The stages. + The output serializer. + A . + + + + Creates a pipeline. + + The stages. + The output serializer. + A . + + + + Creates a pipeline. + + The stages. + A . + + + + Creates a pipeline. + + The stages. + A . + + + + Performs an implicit conversion from [] to . + + The stages. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The stages. + + The result of the conversion. + + + + + Performs an implicit conversion from [] to . + + The stages. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The stages. + + The result of the conversion. + + + + + A pipeline composed of instances of . + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The stages. + The output serializer. + + + + + + + Gets the stages. + + + + + + + + + + + A pipeline composed of instances of . + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The stages. + The output serializer. + + + + + + + Gets the serializer. + + + + + Gets the stages. + + + + + + + + + + + + + + Represents the details of a write error for a particular request. + + + + + Gets the index of the request that had an error. + + + + + Server connection mode. + + + + + Automatically determine how to connect. + + + + + Connect directly to a server. + + + + + Connect to a replica set. + + + + + Connect to one or more shard routers. + + + + + Connect to a standalone server. + + + + + Base class for filters. + + The type of the document. + + + + Gets an empty filter. An empty filter matches everything. + + + + + Renders the filter to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from a predicate expression to . + + The predicate. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Implements the operator &. + + The LHS. + The RHS. + + The result of the operator. + + + + + Implements the operator |. + + The LHS. + The RHS. + + The result of the operator. + + + + + Implements the operator !. + + The op. + + The result of the operator. + + + + + A based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + + + + An based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + A JSON based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + An based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + Base class for implementors of . + + The type of the document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Methods for building pipeline stages. + + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The group by expression. + The boundaries. + The options. + The stage. + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The group by expression. + The boundaries. + The output projection. + The options. + The stage. + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The group by expression. + The boundaries. + The options. + The translation options. + The stage. + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The group by expression. + The boundaries. + The output projection. + The options. + The translation options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the values. + The group by expression. + The number of buckets. + The options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The group by expression. + The number of buckets. + The output projection. + The options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the value. + The group by expression. + The number of buckets. + The options (optional). + The translation options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the output documents. + The type of the output documents. + The group by expression. + The number of buckets. + The output projection. + The options (optional). + The translation options. + The stage. + + + + Creates a $changeStream stage. + Normally you would prefer to use the Watch method of . + Only use this method if subsequent stages project away the resume token (the _id) + or you don't want the resulting cursor to automatically resume. + + The type of the input documents. + The options. + The stage. + + + + Creates a $count stage. + + The type of the input documents. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The type of the output documents. + The facets. + The options. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The facets. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The facets. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The type of the output documents. + The facets. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The fluent aggregate interface. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The translation options. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The translation options. + The stage. + + + + Creates a $group stage. + + The type of the input documents. + The type of the output documents. + The group projection. + The stage. + + + + Creates a $group stage. + + The type of the input documents. + The group projection. + The stage. + + + + Creates a $group stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The value field. + The group projection. + The translation options. + The stage. + + + + Creates a $limit stage. + + The type of the input documents. + The limit. + The stage. + + + + Creates a $lookup stage. + + The type of the input documents. + The type of the foreign collection documents. + The type of the output documents. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + The stage. + + + + Creates a $lookup stage. + + The type of the input documents. + The type of the foreign collection documents. + The type of the output documents. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + The stage. + + + + Creates a $match stage. + + The type of the input documents. + The filter. + The stage. + + + + Creates a $match stage. + + The type of the input documents. + The filter. + The stage. + + + + Create a $match stage that select documents of a sub type. + + The type of the input documents. + The type of the output documents. + The output serializer. + The stage. + + + + Creates a $out stage. + + The type of the input documents. + The output collection. + The stage. + + + + Creates a $project stage. + + The type of the input documents. + The type of the output documents. + The projection. + The stage. + + + + Creates a $project stage. + + The type of the input documents. + The projection. + The stage. + + + + Creates a $project stage. + + The type of the input documents. + The type of the output documents. + The projection. + The translation options. + The stage. + + + + Creates a $replaceRoot stage. + + The type of the input documents. + The type of the output documents. + The new root. + The stage. + + + + Creates a $replaceRoot stage. + + The type of the input documents. + The type of the output documents. + The new root. + The translation options. + The stage. + + + + Creates a $skip stage. + + The type of the input documents. + The skip. + The stage. + + + + Creates a $sort stage. + + The type of the input documents. + The sort. + The stage. + + + + Creates a $sortByCount stage. + + The type of the input documents. + The type of the values. + The value expression. + The stage. + + + + Creates a $sortByCount stage. + + The type of the input documents. + The type of the values. + The value. + The translation options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The type of the output documents. + The field. + The options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The field to unwind. + The options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The field to unwind. + The options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The type of the output documents. + The field to unwind. + The options. + The stage. + + + + Extension methods for projections. + + + + + Combines an existing projection with a projection that filters the contents of an array. + + The type of the document. + The type of the item. + The projection. + The field. + The filter. + + A combined projection. + + + + + Combines an existing projection with a projection that filters the contents of an array. + + The type of the document. + The type of the item. + The projection. + The field. + The filter. + + A combined projection. + + + + + Combines an existing projection with a projection that filters the contents of an array. + + The type of the document. + The type of the item. + The projection. + The field. + The filter. + + A combined projection. + + + + + Combines an existing projection with a projection that excludes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a projection that excludes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a projection that includes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a projection that includes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a text score projection. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with an array slice projection. + + The type of the document. + The projection. + The field. + The skip. + The limit. + + A combined projection. + + + + + Combines an existing projection with an array slice projection. + + The type of the document. + The projection. + The field. + The skip. + The limit. + + A combined projection. + + + + + A builder for a projection. + + The type of the source. + + + + Creates a client side projection that is implemented solely by using a different serializer. + + The type of the projection. + The projection serializer. + A client side deserialization projection. + + + + Combines the specified projections. + + The projections. + + A combined projection. + + + + + Combines the specified projections. + + The projections. + + A combined projection. + + + + + Creates a projection that filters the contents of an array. + + The type of the item. + The field. + The filter. + + An array filtering projection. + + + + + Creates a projection that filters the contents of an array. + + The type of the item. + The field. + The filter. + + An array filtering projection. + + + + + Creates a projection that filters the contents of an array. + + The type of the item. + The field. + The filter. + + An array filtering projection. + + + + + Creates a projection that excludes a field. + + The field. + + An exclusion projection. + + + + + Creates a projection that excludes a field. + + The field. + + An exclusion projection. + + + + + Creates a projection based on the expression. + + The type of the result. + The expression. + + An expression projection. + + + + + Creates a projection that includes a field. + + The field. + + An inclusion projection. + + + + + Creates a projection that includes a field. + + The field. + + An inclusion projection. + + + + + Creates a text score projection. + + The field. + + A text score projection. + + + + + Creates an array slice projection. + + The field. + The skip. + The limit. + + An array slice projection. + + + + + Creates an array slice projection. + + The field. + The skip. + The limit. + + An array slice projection. + + + + + Extension methods for an index keys definition. + + + + + Combines an existing index keys definition with an ascending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with an ascending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a descending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a descending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2d index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2d index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a geo haystack index key definition. + + The type of the document. + The keys. + The field. + Name of the additional field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a geo haystack index key definition. + + The type of the document. + The keys. + The field. + Name of the additional field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2dsphere index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2dsphere index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a hashed index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a hashed index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a text index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a text index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + A builder for an . + + The type of the document. + + + + Creates an ascending index key definition. + + The field. + An ascending index key definition. + + + + Creates an ascending index key definition. + + The field. + An ascending index key definition. + + + + Creates a combined index keys definition. + + The keys. + A combined index keys definition. + + + + Creates a combined index keys definition. + + The keys. + A combined index keys definition. + + + + Creates a descending index key definition. + + The field. + A descending index key definition. + + + + Creates a descending index key definition. + + The field. + A descending index key definition. + + + + Creates a 2d index key definition. + + The field. + A 2d index key definition. + + + + Creates a 2d index key definition. + + The field. + A 2d index key definition. + + + + Creates a geo haystack index key definition. + + The field. + Name of the additional field. + + A geo haystack index key definition. + + + + + Creates a geo haystack index key definition. + + The field. + Name of the additional field. + + A geo haystack index key definition. + + + + + Creates a 2dsphere index key definition. + + The field. + A 2dsphere index key definition. + + + + Creates a 2dsphere index key definition. + + The field. + A 2dsphere index key definition. + + + + Creates a hashed index key definition. + + The field. + A hashed index key definition. + + + + Creates a hashed index key definition. + + The field. + A hashed index key definition. + + + + Creates a text index key definition. + + The field. + A text index key definition. + + + + Creates a text index key definition. + + The field. + A text index key definition. + + + + The interface for a server session. + + + + + Gets the session Id. + + + The session Id. + + + + + Gets the time this server session was last used (in UTC). + + + The time this server session was last used (in UTC). + + + + + Gets the next transaction number. + + The transaction number. + + + + Called by the driver when the session is used (i.e. sent to the server). + + + + + A server session. + + + + + + + + + + + + + + + + + + + + + Extension methods for SortDefinition. + + + + + Combines an existing sort with an ascending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with an ascending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with an descending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with an descending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with a descending sort on the computed relevance score of a text search. + The field name should be the name of the projected relevance score field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + A builder for a . + + The type of the document. + + + + Creates an ascending sort. + + The field. + An ascending sort. + + + + Creates an ascending sort. + + The field. + An ascending sort. + + + + Creates a combined sort. + + The sorts. + A combined sort. + + + + Creates a combined sort. + + The sorts. + A combined sort. + + + + Creates a descending sort. + + The field. + A descending sort. + + + + Creates a descending sort. + + The field. + A descending sort. + + + + Creates a descending sort on the computed relevance score of a text search. + The name of the key should be the name of the projected relevence score field. + + The field. + A meta text score sort. + + + + A builder for a . + + The type of the document. + + + + Gets an empty filter. An empty filter matches everything. + + + + + Creates an all filter for an array field. + + The type of the item. + The field. + The values. + An all filter. + + + + Creates an all filter for an array field. + + The type of the item. + The field. + The values. + An all filter. + + + + Creates an and filter. + + The filters. + A filter. + + + + Creates an and filter. + + The filters. + An and filter. + + + + Creates an equality filter for an array field. + + The type of the item. + The field. + The value. + An equality filter. + + + + Creates an equality filter for an array field. + + The type of the item. + The field. + The value. + An equality filter. + + + + Creates a greater than filter for an array field. + + The type of the item. + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for an array field. + + The type of the item. + The field. + The value. + A greater than filter. + + + + Creates a greater than or equal filter for an array field. + + The type of the item. + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for an array field. + + The type of the item. + The field. + The value. + A greater than or equal filter. + + + + Creates a less than filter for an array field. + + The type of the item. + The field. + The value. + A less than filter. + + + + Creates a less than filter for an array field. + + The type of the item. + The field. + The value. + A less than filter. + + + + Creates a less than or equal filter for an array field. + + The type of the item. + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for an array field. + + The type of the item. + The field. + The value. + A less than or equal filter. + + + + Creates an in filter for an array field. + + The type of the item. + The field. + The values. + An in filter. + + + + Creates an in filter for an array field. + + The type of the item. + The field. + The values. + An in filter. + + + + Creates a not equal filter for an array field. + + The type of the item. + The field. + The value. + A not equal filter. + + + + Creates a not equal filter for an array field. + + The type of the item. + The field. + The value. + A not equal filter. + + + + Creates a not in filter for an array field. + + The type of the item. + The field. + The values. + A not in filter. + + + + Creates a not in filter for an array field. + + The type of the item. + The field. + The values. + A not in filter. + + + + Creates a bits all clear filter. + + The field. + The bitmask. + A bits all clear filter. + + + + Creates a bits all clear filter. + + The field. + The bitmask. + A bits all clear filter. + + + + Creates a bits all set filter. + + The field. + The bitmask. + A bits all set filter. + + + + Creates a bits all set filter. + + The field. + The bitmask. + A bits all set filter. + + + + Creates a bits any clear filter. + + The field. + The bitmask. + A bits any clear filter. + + + + Creates a bits any clear filter. + + The field. + The bitmask. + A bits any clear filter. + + + + Creates a bits any set filter. + + The field. + The bitmask. + A bits any set filter. + + + + Creates a bits any set filter. + + The field. + The bitmask. + A bits any set filter. + + + + Creates an element match filter for an array field. + + The type of the item. + The field. + The filter. + An element match filter. + + + + Creates an element match filter for an array field. + + The type of the item. + The field. + The filter. + An element match filter. + + + + Creates an element match filter for an array field. + + The type of the item. + The field. + The filter. + An element match filter. + + + + Creates an equality filter. + + The type of the field. + The field. + The value. + An equality filter. + + + + Creates an equality filter. + + The type of the field. + The field. + The value. + An equality filter. + + + + Creates an exists filter. + + The field. + if set to true [exists]. + An exists filter. + + + + Creates an exists filter. + + The field. + if set to true [exists]. + An exists filter. + + + + Creates a geo intersects filter. + + The type of the coordinates. + The field. + The geometry. + A geo intersects filter. + + + + Creates a geo intersects filter. + + The type of the coordinates. + The field. + The geometry. + A geo intersects filter. + + + + Creates a geo within filter. + + The type of the coordinates. + The field. + The geometry. + A geo within filter. + + + + Creates a geo within filter. + + The type of the coordinates. + The field. + The geometry. + A geo within filter. + + + + Creates a geo within box filter. + + The field. + The lower left x. + The lower left y. + The upper right x. + The upper right y. + A geo within box filter. + + + + Creates a geo within box filter. + + The field. + The lower left x. + The lower left y. + The upper right x. + The upper right y. + A geo within box filter. + + + + Creates a geo within center filter. + + The field. + The x. + The y. + The radius. + A geo within center filter. + + + + Creates a geo within center filter. + + The field. + The x. + The y. + The radius. + A geo within center filter. + + + + Creates a geo within center sphere filter. + + The field. + The x. + The y. + The radius. + A geo within center sphere filter. + + + + Creates a geo within center sphere filter. + + The field. + The x. + The y. + The radius. + A geo within center sphere filter. + + + + Creates a geo within polygon filter. + + The field. + The points. + A geo within polygon filter. + + + + Creates a geo within polygon filter. + + The field. + The points. + A geo within polygon filter. + + + + Creates a greater than filter for a UInt32 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for a UInt64 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter. + + The type of the field. + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for a UInt32 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for a UInt64 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter. + + The type of the field. + The field. + The value. + A greater than filter. + + + + Creates a greater than or equal filter for a UInt32 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for a UInt64 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter. + + The type of the field. + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for a UInt32 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for a UInt64 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter. + + The type of the field. + The field. + The value. + A greater than or equal filter. + + + + Creates an in filter. + + The type of the field. + The field. + The values. + An in filter. + + + + Creates an in filter. + + The type of the field. + The field. + The values. + An in filter. + + + + Creates a less than filter for a UInt32 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter for a UInt64 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter. + + The type of the field. + The field. + The value. + A less than filter. + + + + Creates a less than filter for a UInt32 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter for a UInt64 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter. + + The type of the field. + The field. + The value. + A less than filter. + + + + Creates a less than or equal filter for a UInt32 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for a UInt64 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter. + + The type of the field. + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for a UInt32 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for a UInt64 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter. + + The type of the field. + The field. + The value. + A less than or equal filter. + + + + Creates a modulo filter. + + The field. + The modulus. + The remainder. + A modulo filter. + + + + Creates a modulo filter. + + The field. + The modulus. + The remainder. + A modulo filter. + + + + Creates a not equal filter. + + The type of the field. + The field. + The value. + A not equal filter. + + + + Creates a not equal filter. + + The type of the field. + The field. + The value. + A not equal filter. + + + + Creates a near filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near sphere filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a near sphere filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a near sphere filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a near sphere filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a not in filter. + + The type of the field. + The field. + The values. + A not in filter. + + + + Creates a not in filter. + + The type of the field. + The field. + The values. + A not in filter. + + + + Creates a not filter. + + The filter. + A not filter. + + + + Creates an OfType filter that matches documents of a derived type. + + The type of the matching derived documents. + An OfType filter. + + + + Creates an OfType filter that matches documents of a derived type and that also match a filter on the derived document. + + The type of the matching derived documents. + A filter on the derived document. + An OfType filter. + + + + Creates an OfType filter that matches documents of a derived type and that also match a filter on the derived document. + + The type of the matching derived documents. + A filter on the derived document. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived typer. + + The type of the field. + The type of the matching derived field value. + The field. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived type and that also match a filter on the derived field. + + The type of the field. + The type of the matching derived field value. + The field. + A filter on the derived field. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived type. + + The type of the field. + The type of the matching derived field value. + The field. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived type and that also match a filter on the derived field. + + The type of the field. + The type of the matching derived field value. + The field. + A filter on the derived field. + An OfType filter. + + + + Creates an or filter. + + The filters. + An or filter. + + + + Creates an or filter. + + The filters. + An or filter. + + + + Creates a regular expression filter. + + The field. + The regex. + A regular expression filter. + + + + Creates a regular expression filter. + + The field. + The regex. + A regular expression filter. + + + + Creates a size filter. + + The field. + The size. + A size filter. + + + + Creates a size filter. + + The field. + The size. + A size filter. + + + + Creates a size greater than filter. + + The field. + The size. + A size greater than filter. + + + + Creates a size greater than filter. + + The field. + The size. + A size greater than filter. + + + + Creates a size greater than or equal filter. + + The field. + The size. + A size greater than or equal filter. + + + + Creates a size greater than or equal filter. + + The field. + The size. + A size greater than or equal filter. + + + + Creates a size less than filter. + + The field. + The size. + A size less than filter. + + + + Creates a size less than filter. + + The field. + The size. + A size less than filter. + + + + Creates a size less than or equal filter. + + The field. + The size. + A size less than or equal filter. + + + + Creates a size less than or equal filter. + + The field. + The size. + A size less than or equal filter. + + + + Creates a text filter. + + The search. + The text search options. + A text filter. + + + + Creates a text filter. + + The search. + The language. + A text filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a filter based on the expression. + + The expression. + An expression filter. + + + + Extension methods for + + + + + Appends a $bucket stage to the pipeline. + + The type of the result. + The type of the value. + The aggregate. + The expression providing the value to group by. + The bucket boundaries. + The options. + The fluent aggregate interface. + + + + Appends a $bucket stage to the pipeline. + + The type of the result. + The type of the value. + The type of the new result. + The aggregate. + The expression providing the value to group by. + The bucket boundaries. + The output projection. + The options. + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the result. + The type of the value. + The aggregate. + The expression providing the value to group by. + The number of buckets. + The options (optional). + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the result. + The type of the value. + The type of the new result. + The aggregate. + The expression providing the value to group by. + The number of buckets. + The output projection. + The options (optional). + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the result. + The aggregate. + The facets. + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the result. + The aggregate. + The facets. + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The facets. + + The fluent aggregate interface. + + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the new result (must be same as TResult with an additional as field). + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the from documents. + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the new result (must be same as TResult with an additional as field). + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the new result (must be same as TResult with an additional as field). + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The fluent aggregate interface. + + + + Appends a group stage to the pipeline. + + The type of the result. + The aggregate. + The group projection. + + The fluent aggregate interface. + + + + + Appends a group stage to the pipeline. + + The type of the result. + The type of the key. + The type of the new result. + The aggregate. + The id. + The group projection. + + The fluent aggregate interface. + + + + + Appends a lookup stage to the pipeline. + + The type of the result. + The aggregate. + Name of the foreign collection. + The local field. + The foreign field. + The field in the result to place the foreign matches. + The fluent aggregate interface. + + + + Appends a lookup stage to the pipeline. + + The type of the result. + The type of the foreign collection. + The type of the new result. + The aggregate. + The foreign collection. + The local field. + The foreign field. + The field in the result to place the foreign matches. + The options. + The fluent aggregate interface. + + + + Appends a match stage to the pipeline. + + The type of the result. + The aggregate. + The filter. + + The fluent aggregate interface. + + + + + Appends a project stage to the pipeline. + + The type of the result. + The aggregate. + The projection. + + The fluent aggregate interface. + + + + + Appends a project stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The projection. + + The fluent aggregate interface. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The new root. + + The fluent aggregate interface. + + + + + Appends an ascending sort stage to the pipeline. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Appends a sortByCount stage to the pipeline. + + The type of the result. + The type of the key. + The aggregate. + The id. + + The fluent aggregate interface. + + + + + Appends a descending sort stage to the pipeline. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Modifies the current sort stage by appending an ascending field specification to it. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Modifies the current sort stage by appending a descending field specification to it. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The aggregate. + The field to unwind. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The aggregate. + The field to unwind. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The field to unwind. + The new result serializer. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result, or the default value if the result set is empty. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result, or the default value if the result set is empty. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result. Throws an exception if the result set does not contain exactly one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result. Throws an exception if the result set does not contain exactly one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result, or the default value if the result set is empty. Throws an exception if the result set contains more than one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result, or the default value if the result set is empty. Throws an exception if the result set contains more than one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Options for an aggregate operation. + + + + + Gets or sets a value indicating whether to allow disk use. + + + + + Gets or sets the size of a batch. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets the comment. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + + + Gets or sets the maximum await time. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the translation options. + + + + + Gets or sets a value indicating whether to use a cursor. + + + + + Options for a bulk write operation. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether the requests are fulfilled in order. + + + + + Represents a registry of already created clusters. + + + + + Gets the default cluster registry. + + + The default cluster registry. + + + + + Unregisters and disposes the cluster. + + The cluster. + + + + Options for a count operation. + + + + + Gets or sets the collation. + + + + + Gets or sets the hint. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the skip. + + + + + Options for creating an index. + + + + + Gets or sets a value indicating whether to create the index in the background. + + + + + Gets or sets the precision, in bits, used with geohash indexes. + + + + + Gets or sets the size of a geohash bucket. + + + + + Gets or sets the collation. + + + + + Gets or sets the default language. + + + + + Gets or sets when documents expire (used with TTL indexes). + + + + + Gets or sets the language override. + + + + + Gets or sets the max value for 2d indexes. + + + + + Gets or sets the min value for 2d indexes. + + + + + Gets or sets the index name. + + + + + Gets or sets a value indicating whether the index is a sparse index. + + + + + Gets or sets the index version for 2dsphere indexes. + + + + + Gets or sets the storage engine options. + + + + + Gets or sets the index version for text indexes. + + + + + Gets or sets a value indicating whether the index is a unique index. + + + + + Gets or sets the version of the index. + + + + + Gets or sets the weights for text indexes. + + + + + Options for creating an index. + + The type of the document. + + + + Gets or sets the partial filter expression. + + + + + Fluent interface for aggregate. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the result of the pipeline. + + + + Gets the database. + + + + + Gets the options. + + + + + Gets the stages. + + + + + Appends the stage to the pipeline. + + The type of the result of the stage. + The stage. + The fluent aggregate interface. + + + + Changes the result type of the pipeline. + + The type of the new result. + The new result serializer. + The fluent aggregate interface. + + + + Appends a $bucket stage to the pipeline. + + The type of the value. + The expression providing the value to group by. + The bucket boundaries. + The options. + The fluent aggregate interface. + + + + Appends a $bucket stage to the pipeline with a custom projection. + + The type of the value. + The type of the new result. + The expression providing the value to group by. + The bucket boundaries. + The output projection. + The options. + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the value. + The expression providing the value to group by. + The number of buckets. + The options (optional). + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline with a custom projection. + + The type of the value. + The type of the new result. + The expression providing the value to group by. + The number of buckets. + The output projection. + The options (optional). + The fluent aggregate interface. + + + + Appends a $changeStream stage to the pipeline. + Normally you would prefer to use the Watch method of . + Only use this method if subsequent stages project away the resume token (the _id) + or you don't want the resulting cursor to automatically resume. + + The options. + The fluent aggregate interface. + + + + Appends a count stage to the pipeline. + + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the new result. + The facets. + The options. + + The fluent aggregate interface. + + + + + Appends a $graphLookup stage to the pipeline. + + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the new result (must be same as TResult with an additional as field). + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The fluent aggregate interface. + + + + Appends a group stage to the pipeline. + + The type of the result of the stage. + The group projection. + The fluent aggregate interface. + + + + Appends a limit stage to the pipeline. + + The limit. + The fluent aggregate interface. + + + + Appends a lookup stage to the pipeline. + + The type of the foreign document. + The type of the new result. + Name of the other collection. + The local field. + The foreign field. + The field in to place the foreign results. + The options. + The fluent aggregate interface. + + + + Appends a match stage to the pipeline. + + The filter. + The fluent aggregate interface. + + + + Appends a match stage to the pipeline that matches derived documents and changes the result type to the derived type. + + The type of the derived documents. + The new result serializer. + The fluent aggregate interface. + + + + Appends an out stage to the pipeline and executes it, and then returns a cursor to read the contents of the output collection. + + Name of the collection. + The cancellation token. + A cursor. + + + + Appends an out stage to the pipeline and executes it, and then returns a cursor to read the contents of the output collection. + + Name of the collection. + The cancellation token. + A Task whose result is a cursor. + + + + Appends a project stage to the pipeline. + + The type of the result of the stage. + The projection. + + The fluent aggregate interface. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the new result. + The new root. + The fluent aggregate interface. + + + + Appends a skip stage to the pipeline. + + The number of documents to skip. + The fluent aggregate interface. + + + + Appends a sort stage to the pipeline. + + The sort specification. + The fluent aggregate interface. + + + + Appends a sortByCount stage to the pipeline. + + The type of the identifier. + The identifier. + The fluent aggregate interface. + + + + Appends an unwind stage to the pipeline. + + The type of the result of the stage. + The field. + The new result serializer. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the new result. + The field. + The options. + The fluent aggregate interface. + + + + Fluent interface for aggregate. + + The type of the result. + + + + Combines the current sort definition with an additional sort definition. + + The new sort. + The fluent aggregate interface. + + + + Fluent interface for find. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Gets or sets the filter. + + + + + Gets the options. + + + + + A simplified type of projection that changes the result type by using a different serializer. + + The type of the result. + The result serializer. + The fluent find interface. + + + + Counts the number of documents. + + The cancellation token. + The count. + + + + Counts the number of documents. + + The cancellation token. + A Task whose result is the count. + + + + Counts the number of documents. + + + Note: when migrating from Count to CountDocuments the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The cancellation token. + The count. + + + + Counts the number of documents. + + + Note: when migrating from CountAsync to CountDocumentsAsync the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The cancellation token. + A Task whose result is the count. + + + + Limits the number of documents. + + The limit. + The fluent find interface. + + + + Projects the the result. + + The type of the projection. + The projection. + The fluent find interface. + + + + Skips the the specified number of documents. + + The skip. + The fluent find interface. + + + + Sorts the the documents. + + The sort. + The fluent find interface. + + + + Fluent interface for find. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Extension methods for + + + + + Projects the result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The projection. + The fluent find interface. + + + + Projects the result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The type of the new projection. + The fluent find. + The projection. + The fluent find interface. + + + + Sorts the results by an ascending field. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Sorts the results by a descending field. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Adds an ascending field to the existing sort. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Adds a descending field to the existing sort. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Get the first result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result. + + + + Get the first result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result. + + + + Get the first result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result or null. + + + + Get the first result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result or null. + + + + Gets a single result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result. + + + + Gets a single result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result. + + + + Gets a single result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result or null. + + + + Gets a single result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result or null. + + + + Extension methods for . + + + + + Begins a fluent aggregation interface. + + The type of the document. + The collection. + The options. + + A fluent aggregate interface. + + + + + Begins a fluent aggregation interface. + + The type of the document. + The collection. + The session. + The options. + + A fluent aggregate interface. + + + + + Creates a queryable source of documents. + + The type of the document. + The collection. + The aggregate options + A queryable source of documents. + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The session. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The session. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The filter. + The options. + + A fluent find interface. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The session. + The filter. + The options. + + A fluent find interface. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The filter. + The options. + + A fluent interface. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The session. + The filter. + The options. + + A fluent interface. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The session. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Replaces a single document. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Updates many documents. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The session. + The options. + The cancellation token. + + A change stream. + + + + + An interface representing methods used to create, delete and modify indexes. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the document. + + + + Gets the namespace of the collection. + + + + + Gets the document serializer. + + + + + Gets the collection settings. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates an index. + + The model defining the index. + The create index operation options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The keys. + The create index request options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The session. + The keys. + The create index request options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The session. + The model defining the index. + The create index operation options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The model defining the index. + The create index operation options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Creates an index. + + The keys. + The create index request options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Creates an index. + + The session. + The keys. + The create index request options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Creates an index. + + The session. + The model defining the index. + The create index operation options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Drops all the indexes. + + The options. + The cancellation token. + + + + Drops all the indexes. + + The cancellation token. + + + + Drops all the indexes. + + The session. + The cancellation token. + + + + Drops all the indexes. + + The session. + The options. + The cancellation token. + + + + Drops all the indexes. + + The options. + The cancellation token. + + A task. + + + + + Drops all the indexes. + + The cancellation token. + A task. + + + + Drops all the indexes. + + The session. + The cancellation token. + + A task. + + + + + Drops all the indexes. + + The session. + The options. + The cancellation token. + + A task. + + + + + Drops an index by its name. + + The name. + The cancellation token. + + + + Drops an index by its name. + + The name. + The options. + The cancellation token. + + + + Drops an index by its name. + + The session. + The name. + The cancellation token. + + + + Drops an index by its name. + + The session. + The name. + The options. + The cancellation token. + + + + Drops an index by its name. + + The name. + The cancellation token. + A task. + + + + Drops an index by its name. + + The name. + The options. + The cancellation token. + A task. + + + + Drops an index by its name. + + The session. + The name. + The cancellation token. + + A task. + + + + + Drops an index by its name. + + The session. + The name. + The options. + The cancellation token. + + A task. + + + + + Lists the indexes. + + The cancellation token. + A cursor. + + + + Lists the indexes. + + The session. + The cancellation token. + + A cursor. + + + + + Lists the indexes. + + The cancellation token. + A Task whose result is a cursor. + + + + Lists the indexes. + + The session. + The cancellation token. + + A Task whose result is a cursor. + + + + + Options for inserting many documents. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether the requests are fulfilled in order. + + + + + Options for a list collections operation. + + + + + Gets or sets the filter. + + + + + Represents the options for a map-reduce operation. + + The type of the document. + The type of the result. + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets the filter. + + + + + Gets or sets the finalize function. + + + + + Gets or sets the java script mode. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the output options. + + + + + Gets or sets the result serializer. + + + + + Gets or sets the scope. + + + + + Gets or sets the sort. + + + + + Gets or sets whether to include timing information. + + + + + Represents the output options for a map-reduce operation. + + + + + An inline map-reduce output options. + + + + + A merge map-reduce output options. + + The name of the collection. + The name of the database. + Whether the output collection should be sharded. + Whether the server should not lock the database for the duration of the merge. + A merge map-reduce output options. + + + + A reduce map-reduce output options. + + The name of the collection. + The name of the database. + Whether the output collection should be sharded. + Whether the server should not lock the database for the duration of the reduce. + A reduce map-reduce output options. + + + + A replace map-reduce output options. + + The name of the collection. + Name of the database. + Whether the output collection should be sharded. + A replace map-reduce output options. + + + + Base class for implementors of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + The type of the document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + The type of the document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A rendered command. + + The type of the result. + + + + Initializes a new instance of the class. + + The document. + The result serializer. + + + + Gets the document. + + + + + Gets the result serializer. + + + + + Base class for commands. + + The type of the result. + + + + Renders the command to a . + + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based command. + + The type of the result. + + + + Initializes a new instance of the class. + + The document. + The result serializer. + + + + Gets the document. + + + + + Gets the result serializer. + + + + + + + + A JSON based command. + + The type of the result. + + + + Initializes a new instance of the class. + + The json. + The result serializer. + + + + Gets the json. + + + + + Gets the result serializer. + + + + + + + + An based command. + + The type of the result. + + + + Initializes a new instance of the class. + + The object. + The result serializer. + + + + Gets the object. + + + + + Gets the result serializer. + + + + + + + + Options for the $unwind aggregation stage. + + The type of the result. + + + + Gets or sets the field with which to include the array index. + + + + + Gets or sets whether to preserve null and empty arrays. + + + + + Gets or sets the result serializer. + + + + + Represents text search options. + + + + + Gets or sets whether a text search should be case sensitive. + + + + + Gets or sets whether a text search should be diacritic sensitive. + + + + + Gets or sets the language for a text search. + + + + + Extension methods for UpdateDefinition. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with a bitwise and operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise and operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise or operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise or operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise xor operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise xor operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a current date operator. + + The type of the document. + The update. + The field. + The type. + + A combined update. + + + + + Combines an existing update with a current date operator. + + The type of the document. + The update. + The field. + The type. + + A combined update. + + + + + Combines an existing update with an increment operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an increment operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a max operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a max operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a min operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a min operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a multiply operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a multiply operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The filter. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The filter. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The filter. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + The slice. + The position. + The sort. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + The slice. + The position. + The sort. + + A combined update. + + + + + Combines an existing update with a field renaming operator. + + The type of the document. + The update. + The field. + The new name. + + A combined update. + + + + + Combines an existing update with a field renaming operator. + + The type of the document. + The update. + The field. + The new name. + + A combined update. + + + + + Combines an existing update with a set operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a set operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a set on insert operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a set on insert operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an unset operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with an unset operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + The type to use for a $currentDate operator. + + + + + A date. + + + + + A timestamp. + + + + + A builder for an . + + The type of the document. + + + + Creates an add to set operator. + + The type of the item. + The field. + The value. + An add to set operator. + + + + Creates an add to set operator. + + The type of the item. + The field. + The value. + An add to set operator. + + + + Creates an add to set operator. + + The type of the item. + The field. + The values. + An add to set operator. + + + + Creates an add to set operator. + + The type of the item. + The field. + The values. + An add to set operator. + + + + Creates a bitwise and operator. + + The type of the field. + The field. + The value. + A bitwise and operator. + + + + Creates a bitwise and operator. + + The type of the field. + The field. + The value. + A bitwise and operator. + + + + Creates a bitwise or operator. + + The type of the field. + The field. + The value. + A bitwise or operator. + + + + Creates a bitwise or operator. + + The type of the field. + The field. + The value. + A bitwise or operator. + + + + Creates a bitwise xor operator. + + The type of the field. + The field. + The value. + A bitwise xor operator. + + + + Creates a bitwise xor operator. + + The type of the field. + The field. + The value. + A bitwise xor operator. + + + + Creates a combined update. + + The updates. + A combined update. + + + + Creates a combined update. + + The updates. + A combined update. + + + + Creates a current date operator. + + The field. + The type. + A current date operator. + + + + Creates a current date operator. + + The field. + The type. + A current date operator. + + + + Creates an increment operator. + + The type of the field. + The field. + The value. + An increment operator. + + + + Creates an increment operator. + + The type of the field. + The field. + The value. + An increment operator. + + + + Creates a max operator. + + The type of the field. + The field. + The value. + A max operator. + + + + Creates a max operator. + + The type of the field. + The field. + The value. + A max operator. + + + + Creates a min operator. + + The type of the field. + The field. + The value. + A min operator. + + + + Creates a min operator. + + The type of the field. + The field. + The value. + A min operator. + + + + Creates a multiply operator. + + The type of the field. + The field. + The value. + A multiply operator. + + + + Creates a multiply operator. + + The type of the field. + The field. + The value. + A multiply operator. + + + + Creates a pop operator. + + The field. + A pop operator. + + + + Creates a pop first operator. + + The field. + A pop first operator. + + + + Creates a pop operator. + + The field. + A pop operator. + + + + Creates a pop first operator. + + The field. + A pop first operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The value. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The value. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The values. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The values. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The filter. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The filter. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The filter. + A pull operator. + + + + Creates a push operator. + + The type of the item. + The field. + The value. + A push operator. + + + + Creates a push operator. + + The type of the item. + The field. + The value. + A push operator. + + + + Creates a push operator. + + The type of the item. + The field. + The values. + The slice. + The position. + The sort. + A push operator. + + + + Creates a push operator. + + The type of the item. + The field. + The values. + The slice. + The position. + The sort. + A push operator. + + + + Creates a field renaming operator. + + The field. + The new name. + A field rename operator. + + + + Creates a field renaming operator. + + The field. + The new name. + A field rename operator. + + + + Creates a set operator. + + The type of the field. + The field. + The value. + A set operator. + + + + Creates a set operator. + + The type of the field. + The field. + The value. + A set operator. + + + + Creates a set on insert operator. + + The type of the field. + The field. + The value. + A set on insert operator. + + + + Creates a set on insert operator. + + The type of the field. + The field. + The value. + A set on insert operator. + + + + Creates an unset operator. + + The field. + An unset operator. + + + + Creates an unset operator. + + The field. + An unset operator. + + + + A filtered mongo collection. The filter will be and'ed with all filters. + + The type of the document. + + + + Gets the filter. + + + + + Options for renaming a collection. + + + + + Gets or sets a value indicating whether to drop the target collection first if it already exists. + + + + + Options for creating a collection. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to automatically create an index on the _id. + + + + + Gets or sets a value indicating whether the collection is capped. + + + + + Gets or sets the index option defaults. + + + The index option defaults. + + + + + Gets or sets the maximum number of documents (used with capped collections). + + + + + Gets or sets the maximum size of the collection (used with capped collections). + + + + + Gets or sets whether padding should not be used. + + + + + Gets or sets the serializer registry. + + + + + Gets or sets the storage engine options. + + + + + Gets or sets a value indicating whether to use power of 2 sizes. + + + + + Gets or sets the validation action. + + + The validation action. + + + + + Gets or sets the validation level. + + + The validation level. + + + + + Options for creating a collection. + + The type of the document. + + + + Coerces a generic CreateCollectionOptions{TDocument} from a non-generic CreateCollectionOptions. + + The options. + The generic options. + + + + Gets or sets the document serializer. + + + + + Gets or sets the validator. + + + The validator. + + + + + Options for the distinct command. + + + + + Gets or sets the collation. + + + + + Gets or sets the maximum time. + + + + + Options for a find operation. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to allow partial results when some shards are unavailable. + + + + + Gets or sets the size of a batch. + + + + + Gets or sets the collation. + + + + + Gets or sets the comment. + + + + + Gets or sets the type of the cursor. + + + + + Gets or sets the maximum await time for TailableAwait cursors. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the modifiers. + + + + + Gets or sets whether a cursor will time out. + + + + + Gets or sets whether the OplogReplay bit will be set. + + + + + Options for finding documents. + + + + + Options for finding documents. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Gets or sets how many documents to return. + + + + + Gets or sets the projection. + + + + + Gets or sets how many documents to skip before returning the rest. + + + + + Gets or sets the sort. + + + + + Options for finding documents. + + The type of the document and the result. + + + + Options for a findAndModify command to delete an object. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Gets or sets the collation. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the projection. + + + + + Gets or sets the sort. + + + + + Options for a findAndModify command to delete an object. + + The type of the document and the result. + + + + Options for a findAndModify command to replace an object. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Initializes a new instance of the class. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the projection. + + + + + Gets or sets which version of the document to return. + + + + + Gets or sets the sort. + + + + + Options for a findAndModify command to replace an object. + + The type of the document and the result. + + + + Options for a findAndModify command to update an object. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Initializes a new instance of the class. + + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the projection. + + + + + Gets or sets which version of the document to return. + + + + + Gets or sets the sort. + + + + + Options for a findAndModify command to update an object. + + The type of the document and the result. + + + + Represents a serializer helper for GeoJsonObjects. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The type. + The derived members. + + + + Deserializes a base member. + + The context. + The element name. + The flag. + The arguments. + + + + Serializes the members. + + The type of the value. + The context. + The value. + The delegate to serialize the derived members. + + + + Represents a serializer for a GeoJson2DGeographicCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson2DProjectedCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson3DCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson3DGeographicCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson3DProjectedCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonBoundingBox value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonCoordinateReferenceSystem value. + + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonCoordinates value. + + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonFeatureCollection value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonFeature value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonGeometryCollection value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonGeometry value. + + The type of the coordinates. + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonLinearRingCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonLineStringCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonLineString value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonLinkedCoordinateReferenceSystem value. + + + + + Initializes a new instance of the class. + + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + An object. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiLineStringCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPointCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPoint value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiLineString value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPolygonCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPolygon value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonNamedCoordinateReferenceSystem value. + + + + + Initializes a new instance of the class. + + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + An object. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson object. + + The type of the coordinates. + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonPoint value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonPolygonCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonPolygon value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson2DCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + A static class containing helper methods to create GeoJson objects. + + + + + Creates a GeoJson bounding box. + + The type of the coordinates. + The min. + The max. + A GeoJson bounding box. + + + + Creates a GeoJson Feature object. + + The type of the coordinates. + The geometry. + A GeoJson Feature object. + + + + Creates a GeoJson Feature object. + + The type of the coordinates. + The additional args. + The geometry. + A GeoJson Feature object. + + + + Creates a GeoJson FeatureCollection object. + + The type of the coordinates. + The additional args. + The features. + A GeoJson FeatureCollection object. + + + + Creates a GeoJson FeatureCollection object. + + The type of the coordinates. + The features. + A GeoJson FeatureCollection object. + + + + Creates a GeoJson 2D geographic position (longitude, latitude). + + The longitude. + The latitude. + A GeoJson 2D geographic position. + + + + Creates a GeoJson 3D geographic position (longitude, latitude, altitude). + + The longitude. + The latitude. + The altitude. + A GeoJson 3D geographic position. + + + + Creates a GeoJson GeometryCollection object. + + The type of the coordinates. + The additional args. + The geometries. + A GeoJson GeometryCollection object. + + + + Creates a GeoJson GeometryCollection object. + + The type of the coordinates. + The geometries. + A GeoJson GeometryCollection object. + + + + Creates the coordinates of a GeoJson linear ring. + + The type of the coordinates. + The positions. + The coordinates of a GeoJson linear ring. + + + + Creates a GeoJson LineString object. + + The type of the coordinates. + The additional args. + The positions. + A GeoJson LineString object. + + + + Creates a GeoJson LineString object. + + The type of the coordinates. + The positions. + A GeoJson LineString object. + + + + Creates the coordinates of a GeoJson LineString. + + The type of the coordinates. + The positions. + The coordinates of a GeoJson LineString. + + + + Creates a GeoJson MultiLineString object. + + The type of the coordinates. + The additional args. + The line strings. + A GeoJson MultiLineString object. + + + + Creates a GeoJson MultiLineString object. + + The type of the coordinates. + The line strings. + A GeoJson MultiLineString object. + + + + Creates a GeoJson MultiPoint object. + + The type of the coordinates. + The additional args. + The positions. + A GeoJson MultiPoint object. + + + + Creates a GeoJson MultiPoint object. + + The type of the coordinates. + The positions. + A GeoJson MultiPoint object. + + + + Creates a GeoJson MultiPolygon object. + + The type of the coordinates. + The additional args. + The polygons. + A GeoJson MultiPolygon object. + + + + Creates a GeoJson MultiPolygon object. + + The type of the coordinates. + The polygons. + A GeoJson MultiPolygon object. + + + + Creates a GeoJson Point object. + + The type of the coordinates. + The additional args. + The coordinates. + A GeoJson Point object. + + + + Creates a GeoJson Point object. + + The type of the coordinates. + The coordinates. + A GeoJson Point object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The additional args. + The positions. + A GeoJson Polygon object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The additional args. + The coordinates. + A GeoJson Polygon object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The coordinates. + A GeoJson Polygon object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The positions. + A GeoJson Polygon object. + + + + Creates the coordinates of a GeoJson Polygon object. + + The type of the coordinates. + The positions. + The coordinates of a GeoJson Polygon object. + + + + Creates the coordinates of a GeoJson Polygon object. + + The type of the coordinates. + The exterior. + The holes. + The coordinates of a GeoJson Polygon object. + + + + Creates a GeoJson 2D position (x, y). + + The x. + The y. + A GeoJson 2D position. + + + + Creates a GeoJson 3D position (x, y, z). + + The x. + The y. + The z. + A GeoJson 3D position. + + + + Creates a GeoJson 2D projected position (easting, northing). + + The easting. + The northing. + A GeoJson 2D projected position. + + + + Creates a GeoJson 3D projected position (easting, northing, altitude). + + The easting. + The northing. + The altitude. + A GeoJson 3D projected position. + + + + Represents a GeoJson bounding box. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The min. + The max. + + + + Gets the max. + + + + + Gets the min. + + + + + Represents a GeoJson coordinate reference system (see subclasses). + + + + + Gets the type of the GeoJson coordinate reference system. + + + + + Represents a GeoJson Feature object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The geometry. + + + + Initializes a new instance of the class. + + The additional args. + The geometry. + + + + Gets the geometry. + + + + + Gets the id. + + + + + Gets the properties. + + + + + Gets the type of the GeoJson object. + + + + + Represents additional arguments for a GeoJson Feature object. + + The type of the coordinates. + + + + Gets or sets the id. + + + + + Gets or sets the properties. + + + + + Represents a GeoJson FeatureCollection. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The features. + + + + Initializes a new instance of the class. + + The additional args. + The features. + + + + Gets the features. + + + + + Gets the type of the GeoJson object. + + + + + Represents a GeoJson Geometry object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The additional args. + + + + Represents a GeoJson GeometryCollection object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The geometries. + + + + Initializes a new instance of the class. + + The additional args. + The geometries. + + + + Gets the geometries. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson linear ring. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The positions. + + + + Represents a GeoJson LineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson LineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The positions. + + + + Gets the positions. + + + + + Represents a GeoJson linked coordinate reference system. + + + + + Initializes a new instance of the class. + + The href. + + + + Initializes a new instance of the class. + + The href. + Type of the href. + + + + Gets the href. + + + + + Gets the type of the href. + + + + + Gets the type of the GeoJson coordinate reference system. + + + + + Represents a GeoJson MultiLineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson MultiLineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The line strings. + + + + Gets the LineStrings. + + + + + Represents a GeoJson MultiPoint object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson MultiPoint object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The positions. + + + + Gets the positions. + + + + + Represents the coordinates of a GeoJson MultiPolygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The polygons. + + + + Gets the Polygons. + + + + + Represents a GeoJson MultiPolygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents a GeoJson named coordinate reference system. + + + + + Initializes a new instance of the class. + + The name. + + + + Gets the name. + + + + + Gets the type of the GeoJson coordinate reference system. + + + + + Represents a GeoJson object (see subclasses). + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The additional args. + + + + Gets the bounding box. + + + + + Gets the coordinate reference system. + + + + + Gets the extra members. + + + + + Gets the type of the GeoJson object. + + + + + Represents additional args provided when creating a GeoJson object. + + The type of the coordinates. + + + + Gets or sets the bounding box. + + + + + Gets or sets the coordinate reference system. + + + + + Gets or sets the extra members. + + + + + Represents the type of a GeoJson object. + + + + + A Feature. + + + + + A FeatureCollection. + + + + + A GeometryCollection. + + + + + A LineString. + + + + + A MultiLineString. + + + + + A MultiPoint. + + + + + A MultiPolygon. + + + + + A Point. + + + + + A Polygon. + + + + + Represents a GeoJson Point object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents a GeoJson Polygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson Polygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The exterior. + + + + Initializes a new instance of the class. + + The exterior. + The holes. + + + + Gets the exterior. + + + + + Gets the holes. + + + + + Represents a GeoJson position in some coordinate system (see subclasses). + + + + + Gets the coordinate values. + + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a GeoJson 2D position (x, y). + + + + + Initializes a new instance of the class. + + The x coordinate. + The y coordinate. + + + + Gets the coordinate values. + + + + + Gets the X coordinate. + + + + + Gets the Y coordinate. + + + + + Represents a GeoJson 3D position (x, y, z). + + + + + Initializes a new instance of the class. + + The x coordinate. + The y coordinate. + The z coordinate. + + + + Gets the coordinate values. + + + + + Gets the X coordinate. + + + + + Gets the Y coordinate. + + + + + Gets the Z coordinate. + + + + + Represents a GeoJson 2D geographic position (longitude, latitude). + + + + + Initializes a new instance of the class. + + The longitude. + The latitude. + + + + Gets the coordinate values. + + + + + Gets the longitude. + + + + + Gets the latitude. + + + + + Represents a GeoJson 3D geographic position (longitude, latitude, altitude). + + + + + Initializes a new instance of the class. + + The longitude. + The latitude. + The altitude. + + + + Gets the coordinate values. + + + + + Gets the longitude. + + + + + Gets the latitude. + + + + + Gets the altitude. + + + + + Represents a GeoJson 2D projected position (easting, northing). + + + + + Initializes a new instance of the class. + + The easting. + The northing. + + + + Gets the coordinate values. + + + + + Gets the easting. + + + + + Gets the northing. + + + + + Represents a GeoJson 3D projected position (easting, northing, altitude). + + + + + Initializes a new instance of the class. + + The easting. + The northing. + The altitude. + + + + Gets the coordinate values. + + + + + Gets the easting. + + + + + Gets the northing. + + + + + Gets the altitude. + + + + + The client interface to MongoDB. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + + + + Gets the cluster. + + + The cluster. + + + + + Gets the settings. + + + + + Drops the database with the specified name. + + The name of the database to drop. + The cancellation token. + + + + Drops the database with the specified name. + + The session. + The name of the database to drop. + The cancellation token. + + + + Drops the database with the specified name. + + The name of the database to drop. + The cancellation token. + A task. + + + + Drops the database with the specified name. + + The session. + The name of the database to drop. + The cancellation token. + + A task. + + + + + Gets a database. + + The name of the database. + The database settings. + An implementation of a database. + + + + Returns the names of the databases on the server. + + The cancellation token. + The database names. + + + + Returns the names of the databases on the server. + + The session. + The cancellation token. + The database names. + + + + Returns the names of the databases on the server. + + The cancellation token. + The database names. + + + + Returns the names of the databases on the server. + + The session. + The cancellation token. + The database names. + + + + Lists the databases on the server. + + The cancellation token. + A cursor. + + + + Lists the databases on the server. + + The options. + The cancellation token. + A cursor. + + + + Lists the databases on the server. + + The session. + The cancellation token. + + A cursor. + + + + + Lists the databases on the server. + + The session. + The options. + The cancellation token. + + A cursor. + + + + + Lists the databases on the server. + + The cancellation token. + A Task whose result is a cursor. + + + + Lists the databases on the server. + + The cancellation token. + The options. + A Task whose result is a cursor. + + + + Lists the databases on the server. + + The session. + The cancellation token. + + A Task whose result is a cursor. + + + + + Lists the databases on the server. + + The session. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Starts a client session. + + The session options. + The cancellation token. + + A client session. + + + + + Starts a client session. + + The session options. + The cancellation token. + + A Task whose result is a client session. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Returns a new IMongoClient instance with a different read concern setting. + + The read concern. + A new IMongoClient instance with a different read concern setting. + + + + Returns a new IMongoClient instance with a different read preference setting. + + The read preference. + A new IMongoClient instance with a different read preference setting. + + + + Returns a new IMongoClient instance with a different write concern setting. + + The write concern. + A new IMongoClient instance with a different write concern setting. + + + + Represents a typed collection in MongoDB. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the documents stored in the collection. + + + + Gets the namespace of the collection. + + + + + Gets the database. + + + + + Gets the document serializer. + + + + + Gets the index manager. + + + + + Gets the settings. + + + + + Runs an aggregation pipeline. + + The type of the result. + The pipeline. + The options. + The cancellation token. + A cursor. + + + + Runs an aggregation pipeline. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A cursor. + + + + + Runs an aggregation pipeline. + + The type of the result. + The pipeline. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Runs an aggregation pipeline. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Performs multiple write operations. + + The requests. + The options. + The cancellation token. + The result of writing. + + + + Performs multiple write operations. + + The session. + The requests. + The options. + The cancellation token. + + The result of writing. + + + + + Performs multiple write operations. + + The requests. + The options. + The cancellation token. + The result of writing. + + + + Performs multiple write operations. + + The session. + The requests. + The options. + The cancellation token. + + The result of writing. + + + + + Counts the number of documents in the collection. + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from Count to CountDocuments the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from Count to CountDocuments the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from CountAsync to CountDocumentsAsync the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from CountAsync to CountDocumentsAsync the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Deletes multiple documents. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Gets the distinct values for a specified field. + + The type of the result. + The field. + The filter. + The options. + The cancellation token. + A cursor. + + + + Gets the distinct values for a specified field. + + The type of the result. + The session. + The field. + The filter. + The options. + The cancellation token. + + A cursor. + + + + + Gets the distinct values for a specified field. + + The type of the result. + The field. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Gets the distinct values for a specified field. + + The type of the result. + The session. + The field. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Returns an estimate of the number of documents in the collection. + + The options. + The cancellation token. + + An estimate of the number of documents in the collection. + + + + + Returns an estimate of the number of documents in the collection. + + The options. + The cancellation token. + + An estimate of the number of documents in the collection. + + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + A cursor. + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + A cursor. + + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Inserts a single document. + + The document. + The options. + The cancellation token. + + + + Inserts a single document. + + The session. + The document. + The options. + The cancellation token. + + + + Inserts a single document. + + The document. + The cancellation token. + + The result of the insert operation. + + + + + Inserts a single document. + + The document. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Inserts a single document. + + The session. + The document. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Inserts many documents. + + The documents. + The options. + The cancellation token. + + + + Inserts many documents. + + The session. + The documents. + The options. + The cancellation token. + + + + Inserts many documents. + + The documents. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Inserts many documents. + + The session. + The documents. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Executes a map-reduce command. + + The type of the result. + The map function. + The reduce function. + The options. + The cancellation token. + A cursor. + + + + Executes a map-reduce command. + + The type of the result. + The session. + The map function. + The reduce function. + The options. + The cancellation token. + + A cursor. + + + + + Executes a map-reduce command. + + The type of the result. + The map function. + The reduce function. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Executes a map-reduce command. + + The type of the result. + The session. + The map function. + The reduce function. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Returns a filtered collection that appears to contain only documents of the derived type. + All operations using this filtered collection will automatically use discriminators as necessary. + + The type of the derived document. + A filtered collection. + + + + Replaces a single document. + + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Updates many documents. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Watches changes on the collection. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Returns a new IMongoCollection instance with a different read concern setting. + + The read concern. + A new IMongoCollection instance with a different read concern setting. + + + + Returns a new IMongoCollection instance with a different read preference setting. + + The read preference. + A new IMongoCollection instance with a different read preference setting. + + + + Returns a new IMongoCollection instance with a different write concern setting. + + The write concern. + A new IMongoCollection instance with a different write concern setting. + + + + Represents a database in MongoDB. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + + + + Gets the client. + + + + + Gets the namespace of the database. + + + + + Gets the settings. + + + + + Creates the collection with the specified name. + + The name. + The options. + The cancellation token. + + + + Creates the collection with the specified name. + + The session. + The name. + The options. + The cancellation token. + + + + Creates the collection with the specified name. + + The name. + The options. + The cancellation token. + A task. + + + + Creates the collection with the specified name. + + The session. + The name. + The options. + The cancellation token. + + A task. + + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The session. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + A task. + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The session. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + + A task. + + + + + Drops the collection with the specified name. + + The name of the collection to drop. + The cancellation token. + + + + Drops the collection with the specified name. + + The session. + The name of the collection to drop. + The cancellation token. + + + + Drops the collection with the specified name. + + The name of the collection to drop. + The cancellation token. + A task. + + + + Drops the collection with the specified name. + + The session. + The name of the collection to drop. + The cancellation token. + + A task. + + + + + Gets a collection. + + The document type. + The name of the collection. + The settings. + An implementation of a collection. + + + + Lists the names of all the collections in the database. + + The options. + The cancellation token. + A cursor. + + + + Lists the names of all the collections in the database. + + The session. + The options. + The cancellation token. + A cursor. + + + + Lists the names of all the collections in the database. + + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Lists the names of all the collections in the database. + + The session. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Lists all the collections in the database. + + The options. + The cancellation token. + A cursor. + + + + Lists all the collections in the database. + + The session. + The options. + The cancellation token. + + A cursor. + + + + + Lists all the collections in the database. + + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Lists all the collections in the database. + + The session. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Renames the collection. + + The old name. + The new name. + The options. + The cancellation token. + + + + Renames the collection. + + The session. + The old name. + The new name. + The options. + The cancellation token. + + + + Renames the collection. + + The old name. + The new name. + The options. + The cancellation token. + A task. + + + + Renames the collection. + + The session. + The old name. + The new name. + The options. + The cancellation token. + + A task. + + + + + Runs a command. + + The result type of the command. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Runs a command. + + The result type of the command. + The session. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Runs a command. + + The result type of the command. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Runs a command. + + The result type of the command. + The session. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Watches changes on all collections in a database. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in a database. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in a database. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in a database. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Returns a new IMongoDatabase instance with a different read concern setting. + + The read concern. + A new IMongoDatabase instance with a different read concern setting. + + + + Returns a new IMongoDatabase instance with a different read preference setting. + + The read preference. + A new IMongoDatabase instance with a different read preference setting. + + + + Returns a new IMongoDatabase instance with a different write concern setting. + + The write concern. + A new IMongoDatabase instance with a different write concern setting. + + + + The result of a delete operation. + + + + + Gets the deleted count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets a value indicating whether the result is acknowledged. + + + + + Initializes a new instance of the class. + + + + + The result of an acknowledged delete operation. + + + + + Initializes a new instance of the class. + + The deleted count. + + + + + + + + + + The result of an unacknowledged delete operation. + + + + + Gets the instance. + + + + + + + + + + + Model for inserting a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + Gets the type of the model. + + + + + Model for replacing a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + The replacement. + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets the replacement. + + + + + Gets the type of the model. + + + + + The cursor type. + + + + + A non-tailable cursor. This is sufficient for a vast majority of uses. + + + + + A tailable cursor. + + + + + A tailable cursor with a built-in server sleep. + + + + + Which version of the document to return when executing a FindAndModify command. + + + + + Return the document before the modification. + + + + + Return the document after the modification. + + + + + A rendered projection. + + The type of the projection. + + + + Initializes a new instance of the class. + + The document. + The projection serializer. + + + + Gets the document. + + + + + Gets the serializer. + + + + + Base class for projections whose projection type is not yet known. + + The type of the source. + + + + Renders the projection to a . + + The source serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Base class for projections. + + The type of the source. + The type of the projection. + + + + Renders the projection to a . + + The source serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The projection. + + The result of the conversion. + + + + + A based projection whose projection type is not yet known. + + The type of the source. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The document. + The projection serializer. + + + + Gets the document. + + + + + Gets the projection serializer. + + + + + + + + A find based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + A JSON based projection whose projection type is not yet known. + + The type of the source. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + A JSON based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The json. + The projection serializer. + + + + Gets the json. + + + + + Gets the projection serializer. + + + + + + + + An based projection whose projection type is not yet known. + + The type of the source. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + An based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The object. + The projection serializer. + + + + Gets the object. + + + + + Gets the projection serializer. + + + + + + + + A client side only projection that is implemented solely by deserializing using a different serializer. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The projection serializer. + + + + Gets the result serializer. + + + The result serializer. + + + + + + + + A rendered field. + + + + + Initializes a new instance of the class. + + The field name. + The field serializer. + + + + Gets the field name. + + + + + Gets the field serializer. + + + + + A rendered field. + + The type of the field. + + + + Initializes a new instance of the class. + + The field name. + The field serializer. + + + + Initializes a new instance of the class. + + The field name. + The field serializer. + The value serializer. + The underlying serializer. + + + + Gets the field name. + + + + + Gets the field serializer. + + + + + Gets the underlying serializer. + + + + + Gets the value serializer. + + + + + Base class for field names. + + The type of the document. + + + + Renders the field to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + Name of the field. + + The result of the conversion. + + + + + Base class for field names. + + The type of the document. + The type of the field. + + + + Renders the field to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + Name of the field. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The field. + + The result of the conversion. + + + + + An based field. + + The type of the document. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + An based field. + + The type of the document. + The type of the field. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + A based field name. + + The type of the document. + + + + Initializes a new instance of the class. + + Name of the field. + + + + + + + A based field name. + + The type of the document. + The type of the field. + + + + Initializes a new instance of the class. + + Name of the field. + The field serializer. + + + + + + + The direction of the sort. + + + + + Ascending. + + + + + Descending. + + + + + Base class for sorts. + + The type of the document. + + + + Renders the sort to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based sort. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A JSON based sort. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + An based sort. + + The type of the document. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + Base class for updates. + + The type of the document. + + + + Renders the update to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based update. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A JSON based update. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + An based update. + + The type of the document. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + Options for updating a single document. + + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Model for updating a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + The update. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets the update. + + + + + + + + Model for updating many documents. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + The update. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets the update. + + + + + + + + Model for deleting many documents. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets the type of the model. + + + + + Model for deleting a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets the type of the model. + + + + + The result of an update operation. + + + + + Gets a value indicating whether the result is acknowledged. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + + + Gets the matched count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the modified count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the upserted id, if one exists. If IsAcknowledged is false, this will throw an exception. + + + + + Initializes a new instance of the class. + + + + + The result of an acknowledged update operation. + + + + + Initializes a new instance of the class. + + The matched count. + The modified count. + The upserted id. + + + + + + + + + + + + + + + + + + + The result of an unacknowledged update operation. + + + + + Gets the instance. + + + + + + + + + + + + + + + + + + + + The result of an update operation. + + + + + Gets a value indicating whether the result is acknowledged. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + + + Gets the matched count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the modified count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the upserted id, if one exists. If IsAcknowledged is false, this will throw an exception. + + + + + Initializes a new instance of the class. + + + + + The result of an acknowledged update operation. + + + + + Initializes a new instance of the class. + + The matched count. + The modified count. + The upserted id. + + + + + + + + + + + + + + + + + + + The result of an acknowledged update operation. + + + + + Gets the instance. + + + + + + + + + + + + + + + + + + + + Represents the details of a write concern error. + + + + + Gets the error code. + + + + + Gets the name of the error code. + + + The name of the error code. + + + + + Gets the error information. + + + + + Gets the error message. + + + + + Represents the result of a bulk write operation. + + + + + Initializes a new instance of the class. + + The request count. + + + + Gets the number of documents that were deleted. + + + + + Gets the number of documents that were inserted. + + + + + Gets a value indicating whether the bulk write operation was acknowledged. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + + + Gets the number of documents that were matched. + + + + + Gets the number of documents that were actually modified during an update. + + + + + Gets the request count. + + + + + Gets a list with information about each request that resulted in an upsert. + + + + + Represents the result of a bulk write operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + Gets the processed requests. + + + + + Result from an acknowledged write concern. + + + + + Initializes a new instance of the class. + + The request count. + The matched count. + The deleted count. + The inserted count. + The modified count. + The processed requests. + The upserts. + + + + + + + + + + + + + + + + + + + + + + + + + Result from an unacknowledged write concern. + + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + + + + + + + + + + + + + + + + + + + + + + Represents the information about one Upsert. + + + + + Gets the id. + + + + + Gets the index. + + + + + Represents a bulk write exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The write errors. + The write concern error. + + + + Initializes a new instance of the MongoQueryException class (this overload supports deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Gets the write concern error. + + + + + Gets the write errors. + + + + + Gets the object data. + + The information. + The context. + + + + Represents a bulk write exception. + + The type of the document. + + + + Initializes a new instance of the class. + + The connection identifier. + The result. + The write errors. + The write concern error. + The unprocessed requests. + + + + Initializes a new instance of the MongoQueryException class (this overload supports deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Gets the result of the bulk write operation. + + + + + Gets the unprocessed requests. + + + + + Gets the object data. + + The information. + The context. + + + + + + + Initializes a new instance of the MongoClient class. + + + + + Initializes a new instance of the MongoClient class. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + The settings. + + + + Initializes a new instance of the MongoClient class. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + The URL. + + + + Initializes a new instance of the MongoClient class. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + The connection string. + + + + Gets the cluster. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Starts an implicit session. + + A session. + + + + Starts an implicit session. + + A Task whose result is a session. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The settings for a MongoDB client. + + + + + Creates a new instance of MongoClientSettings. Usually you would use a connection string instead. + + + + + Gets or sets the application name. + + + + + Gets or sets the cluster configurator. + + + + + Gets or sets the connection mode. + + + + + Gets or sets the connect timeout. + + + + + Gets or sets the credential. + + + + + Gets or sets the credentials. + + + + + Gets or sets the representation to use for Guids. + + + + + Gets a value indicating whether the settings have been frozen to prevent further changes. + + + + + Gets or sets the heartbeat interval. + + + + + Gets or sets the heartbeat timeout. + + + + + Gets or sets a value indicating whether to use IPv6. + + + + + Gets or sets the local threshold. + + + + + Gets or sets the max connection idle time. + + + + + Gets or sets the max connection life time. + + + + + Gets or sets the max connection pool size. + + + + + Gets or sets the min connection pool size. + + + + + Gets or sets the read concern. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the read preferences. + + + + + Gets or sets the name of the replica set. + + + + + Gets or sets whether to retry writes. + + + + + Gets or set the name of the SDAM log file. Null turns logging off. stdout will log to console. + + + + + Gets or sets the address of the server (see also Servers if using more than one address). + + + + + Gets or sets the list of server addresses (see also Server if using only one address). + + + + + Gets or sets the server selection timeout. + + + + + Gets or sets the socket timeout. + + + + + Gets or sets the SSL settings. + + + + + Gets or sets a value indicating whether to use SSL. + + + + + Gets or sets a value indicating whether to verify an SSL certificate. + + + + + Gets or sets the wait queue size. + + + + + Gets or sets the wait queue timeout. + + + + + Gets or sets the WriteConcern to use. + + + + + Gets or sets the Write Encoding. + + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Gets a MongoClientSettings object intialized with values from a connection string. + + The connection string. + A MongoClientSettings. + + + + Gets a MongoClientSettings object intialized with values from a MongoURL. + + The MongoURL. + A MongoClientSettings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + The settings used to access a collection. + + + + + Initializes a new instance of the MongoCollectionSettings class. + + + + + Gets or sets a value indicating whether the driver should assign Id values when missing. + + + + + Gets or sets the representation used for Guids. + + + + + Gets a value indicating whether the settings have been frozen to prevent further changes. + + + + + Gets or sets the read concern. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the read preference to use. + + + + + Gets the serializer registry. + + + + + Gets or sets the WriteConcern to use. + + + + + Gets or sets the Write Encoding. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Compares two MongoCollectionSettings instances. + + The other instance. + True if the two instances are equal. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + Represents a list of credentials and the rules about how credentials can be used together. + + + + + Creates a new instance of the MongoCredentialStore class. + + The credentials. + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets the enumerator. + + + + + + Gets the hashcode for the credential store. + + The hashcode. + + + + Returns a string representation of the credential store. + + A string representation of the credential store. + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + The settings used to access a database. + + + + + Creates a new instance of MongoDatabaseSettings. + + + + + Gets or sets the representation to use for Guids. + + + + + Gets a value indicating whether the settings have been frozen to prevent further changes. + + + + + Gets or sets the read concern. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the read preference. + + + + + Gets the serializer registry. + + + + + Gets or sets the WriteConcern to use. + + + + + Gets or sets the Write Encoding. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Compares two MongoDatabaseSettings instances. + + The other instance. + True if the two instances are equal. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + Represents a DBRef (a convenient way to refer to a document). + + + + + Creates a MongoDBRef. + + The name of the collection that contains the document. + The Id of the document. + + + + Creates a MongoDBRef. + + The name of the database that contains the document. + The name of the collection that contains the document. + The Id of the document. + + + + Gets the name of the database that contains the document. + + + + + Gets the name of the collection that contains the document. + + + + + Gets the Id of the document. + + + + + Determines whether two specified MongoDBRef objects have different values. + + The first value to compare, or null. + The second value to compare, or null. + True if the value of lhs is different from the value of rhs; otherwise, false. + + + + Determines whether two specified MongoDBRef objects have the same value. + + The first value to compare, or null. + The second value to compare, or null. + True if the value of lhs is the same as the value of rhs; otherwise, false. + + + + Determines whether two specified MongoDBRef objects have the same value. + + The first value to compare, or null. + The second value to compare, or null. + True if the value of lhs is the same as the value of rhs; otherwise, false. + + + + Determines whether this instance and another specified MongoDBRef object have the same value. + + The MongoDBRef object to compare to this instance. + True if the value of the rhs parameter is the same as this instance; otherwise, false. + + + + Determines whether this instance and a specified object, which must also be a MongoDBRef object, have the same value. + + The MongoDBRef object to compare to this instance. + True if obj is a MongoDBRef object and its value is the same as this instance; otherwise, false. + + + + Returns the hash code for this MongoDBRef object. + + A 32-bit signed integer hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a serializer for MongoDBRefs. + + + + + Initializes a new instance of the class. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents an identity defined outside of mongodb. + + + + + Initializes a new instance of the class. + + The username. + + + + Initializes a new instance of the class. + + The source. + The username. + + + + Represents an identity in MongoDB. + + + + + Initializes a new instance of the class. + + The source. + The username. + Whether to allow null usernames. + + + + Gets the source. + + + + + Gets the username. + + + + + Compares two MongoIdentity values. + + The first MongoIdentity. + The other MongoIdentity. + True if the two MongoIdentity values are equal (or both null). + + + + Compares two MongoIdentity values. + + The first MongoIdentity. + The other MongoIdentity. + True if the two MongoIdentity values are not equal (or one is null and the other is not). + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified instance is equal to this instance. + + The right-hand side. + + true if the specified instance is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Evidence used as proof of a MongoIdentity. + + + + + Initializes a new instance of the class. + + + + + Compares two MongoIdentityEvidences. + + The first MongoIdentityEvidence. + The other MongoIdentityEvidence. + True if the two MongoIdentityEvidences are equal (or both null). + + + + Compares two MongoIdentityEvidences. + + The first MongoIdentityEvidence. + The other MongoIdentityEvidence. + True if the two MongoIdentityEvidences are not equal (or one is null and the other is not). + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents an identity defined inside mongodb. + + + + + Initializes a new instance of the class. + + Name of the database. + The username. + + + + Represents URL-style connection strings. + + + + + Creates a new instance of MongoUrlBuilder. + + + + + Creates a new instance of MongoUrlBuilder. + + The initial settings. + + + + Gets or sets the application name. + + + + + Gets or sets the authentication mechanism. + + + + + Gets or sets the authentication mechanism properties. + + + + + Gets or sets the authentication source. + + + + + Gets the actual wait queue size (either WaitQueueSize or WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets or sets the connection mode. + + + + + Gets or sets the connect timeout. + + + + + Gets or sets the optional database name. + + + + + Gets or sets the FSync component of the write concern. + + + + + Gets or sets the representation to use for Guids. + + + + + Gets or sets the heartbeat interval. + + + + + Gets or sets the heartbeat timeout. + + + + + Gets or sets a value indicating whether to use IPv6. + + + + + Gets or sets the Journal component of the write concern. + + + + + Gets or sets the local threshold. + + + + + Gets or sets the max connection idle time. + + + + + Gets or sets the max connection life time. + + + + + Gets or sets the max connection pool size. + + + + + Gets or sets the min connection pool size. + + + + + Gets or sets the password. + + + + + Gets or sets the read concern level. + + + + + Gets or sets the read preference. + + + + + Gets or sets the name of the replica set. + + + + + Gets or sets whether to retry writes. + + + + + The scheme used to connect with mongodb. + + + + + Gets or sets the address of the server (see also Servers if using more than one address). + + + + + Gets or sets the list of server addresses (see also Server if using only one address). + + + + + Gets or sets the server selection timeout. + + + + + Gets or sets the socket timeout. + + + + + Gets or sets the username. + + + + + Gets or sets a value indicating whether to use SSL. + + + + + Gets or sets a value indicating whether to verify an SSL certificate. + + + + + Gets or sets the W component of the write concern. + + + + + Gets or sets the wait queue multiple (the actual wait queue size will be WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets or sets the wait queue size. + + + + + Gets or sets the wait queue timeout. + + + + + Gets or sets the WTimeout component of the write concern. + + + + + Returns a WriteConcern value based on this instance's settings and a default enabled value. + + The default enabled value. + A WriteConcern. + + + + Parses a URL and sets all settings to match the URL. + + The URL. + + + + Creates a new instance of MongoUrl based on the settings in this MongoUrlBuilder. + + A new instance of MongoUrl. + + + + Returns the canonical URL based on the settings in this MongoUrlBuilder. + + The canonical URL. + + + + Evidence of a MongoIdentity via a shared secret. + + + +
    + Initializes a new instance of the class. + Less secure when used in conjunction with SCRAM-SHA-256, due to the need to store the password in a managed + string in order to SaslPrep it. + See Driver Authentication: SCRAM-SHA-256 + for additional details. + + The password. + + + + Initializes a new instance of the class. + + The password. + + + + Gets the password. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Computes the MONGODB-CR password digest. + + The username. + The MONGODB-CR password digest. + + + + Represents a setting that may or may not have been set. + + The type of the value. + + + + Gets the value of the setting. + + + + + Gets a value indicating whether the setting has been set. + + + + + Resets the setting to the unset state. + + + + + Gets a canonical string representation for this setting. + + A canonical string representation for this setting. + + + + Represents the settings for using SSL. + + + + + Gets or sets a value indicating whether to check for certificate revocation. + + + + + Gets or sets the client certificates. + + + + + Gets or sets the client certificate selection callback. + + + + + Gets or sets the enabled SSL protocols. + + + + + Gets or sets the server certificate validation callback. + + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Clones an SslSettings. + + The cloned SslSettings. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Freezes the settings. + + The frozen settings. + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + Various static utility methods. + + + + + Gets the MD5 hash of a string. + + The string to get the MD5 hash of. + The MD5 hash. + + + + Creates a TimeSpan from microseconds. + + The microseconds. + The TimeSpan. + + + + Converts a string to camel case by lower casing the first letter (only the first letter is modified). + + The string to camel case. + The camel cased string. + + + + Should only be used when the safety of the data cannot be guaranteed. For instance, + when the secure string is a password used in a plain text protocol. + + The secure string. + The CLR string. + + + + Default values for various Mongo settings. + + + + + Gets or sets whether the driver should assign a value to empty Ids on Insert. + + + + + Gets or sets the default authentication mechanism. + + + + + Gets the actual wait queue size (either WaitQueueSize or WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets or sets the connect timeout. + + + + + Gets or sets the representation to use for Guids (this is an alias for BsonDefaults.GuidRepresentation). + + + + + Gets or sets the default local threshold. + + + + + Gets or sets the maximum batch count. + + + + + Gets or sets the max connection idle time. + + + + + Gets or sets the max connection life time. + + + + + Gets or sets the max connection pool size. + + + + + Gets or sets the max document size + + + + + Gets or sets the max message length. + + + + + Gets or sets the min connection pool size. + + + + + Gets or sets the operation timeout. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the server selection timeout. + + + + + Gets or sets the socket timeout. + + + + + Gets or sets the TCP receive buffer size. + + + + + Gets or sets the TCP send buffer size. + + + + + Gets or sets the wait queue multiple (the actual wait queue size will be WaitQueueMultiple x MaxConnectionPoolSize, see also WaitQueueSize). + + + + + Gets or sets the wait queue size (see also WaitQueueMultiple). + + + + + Gets or sets the wait queue timeout. + + + + + Gets or sets the Write Encoding. + + + + + Credential to access a MongoDB database. + + + + + Initializes a new instance of the class. + + Mechanism to authenticate with. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + The identity. + The evidence. + + + + Gets the evidence. + + + + + Gets the identity. + + + + + Gets the mechanism to authenticate with. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + + + + Gets the password. + + + + + Gets the source. + + + + + Gets the username. + + + + + Compares two MongoCredentials. + + The first MongoCredential. + The other MongoCredential. + True if the two MongoCredentials are equal (or both null). + + + + Compares two MongoCredentials. + + The first MongoCredential. + The other MongoCredential. + True if the two MongoCredentials are not equal (or one is null and the other is not). + + + + Creates a default credential. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + Name of the database. + The username. + The password. + A default credential. + + + + Creates a default credential. + Less secure when used in conjunction with SCRAM-SHA-256, due to the need to store the password in a managed + string in order to SaslPrep it. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + Name of the database. + The username. + The password. + A default credential. + + + + Creates a GSSAPI credential. + + The username. + A credential for GSSAPI. + This overload is used primarily on linux. + + + + Creates a GSSAPI credential. + + The username. + The password. + A credential for GSSAPI. + + + + Creates a GSSAPI credential. + + The username. + The password. + A credential for GSSAPI. + + + + Creates a credential used with MONGODB-CR. + + Name of the database. + The username. + The password. + A credential for MONGODB-CR. + + + + Creates a credential used with MONGODB-CR. + + Name of the database. + The username. + The password. + A credential for MONGODB-CR. + + + + Creates a credential used with MONGODB-X509. + + The username. + A credential for MONGODB-X509. + + + + Creates a PLAIN credential. + + Name of the database. + The username. + The password. + A credential for PLAIN. + + + + Creates a PLAIN credential. + + Name of the database. + The username. + The password. + A credential for PLAIN. + + + + Gets the mechanism property. + + The type of the mechanism property. + The key. + The default value. + The mechanism property if one was set; otherwise the default value. + + + + Compares this MongoCredential to another MongoCredential. + + The other credential. + True if the two credentials are equal. + + + + Compares this MongoCredential to another MongoCredential. + + The other credential. + True if the two credentials are equal. + + + + Gets the hashcode for the credential. + + The hashcode. + + + + Returns a string representation of the credential. + + A string representation of the credential. + + + + Creates a new MongoCredential with the specified mechanism property. + + The key. + The value. + A new MongoCredential with the specified mechanism property. + + + + The address of a MongoDB server. + + + + + Initializes a new instance of MongoServerAddress. + + The server's host name. + + + + Initializes a new instance of MongoServerAddress. + + The server's host name. + The server's port number. + + + + Parses a string representation of a server address. + + The string representation of a server address. + A new instance of MongoServerAddress initialized with values parsed from the string. + + + + Tries to parse a string representation of a server address. + + The string representation of a server address. + The server address (set to null if TryParse fails). + True if the string is parsed succesfully. + + + + Gets the server's host name. + + + + + Gets the server's port number. + + + + + Compares two server addresses. + + The first address. + The other address. + True if the two addresses are equal (or both are null). + + + + Compares two server addresses. + + The first address. + The other address. + True if the two addresses are not equal (or one is null and the other is not). + + + + Compares two server addresses. + + The other server address. + True if the two server addresses are equal. + + + + Compares two server addresses. + + The other server address. + True if the two server addresses are equal. + + + + Gets the hash code for this object. + + The hash code. + + + + Returns a string representation of the server address. + + A string representation of the server address. + + + + Represents an immutable URL style connection string. See also MongoUrlBuilder. + + + + + Creates a new instance of MongoUrl. + + The URL containing the settings. + + + + Gets the application name. + + + + + Gets the authentication mechanism. + + + + + Gets the authentication mechanism properties. + + + + + Gets the authentication source. + + + + + Gets the actual wait queue size (either WaitQueueSize or WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets the connection mode. + + + + + Gets the connect timeout. + + + + + Gets the optional database name. + + + + + Gets the FSync component of the write concern. + + + + + Gets the representation to use for Guids. + + + + + Gets a value indicating whether this instance has authentication settings. + + + + + Gets the heartbeat interval. + + + + + Gets the heartbeat timeout. + + + + + Gets a value indicating whether to use IPv6. + + + + + Gets the Journal component of the write concern. + + + + + Gets the local threshold. + + + + + Gets the max connection idle time. + + + + + Gets the max connection life time. + + + + + Gets the max connection pool size. + + + + + Gets the min connection pool size. + + + + + Gets the password. + + + + + Gets the read concern level. + + + + + Gets the read preference. + + + + + Gets the name of the replica set. + + + + + Gets whether writes will be retried. + + + + + Gets the scheme. + + + + + Gets the address of the server (see also Servers if using more than one address). + + + + + Gets the list of server addresses (see also Server if using only one address). + + + + + Gets the server selection timeout. + + + + + Gets the socket timeout. + + + + + Gets the URL (in canonical form). + + + + + Gets the username. + + + + + Gets a value indicating whether to use SSL. + + + + + Gets a value indicating whether to verify an SSL certificate. + + + + + Gets the W component of the write concern. + + + + + Gets the wait queue multiple (the actual wait queue size will be WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets the wait queue size. + + + + + Gets the wait queue timeout. + + + + + Gets the WTimeout component of the write concern. + + + + + Compares two MongoUrls. + + The first URL. + The other URL. + True if the two URLs are equal (or both null). + + + + Compares two MongoUrls. + + The first URL. + The other URL. + True if the two URLs are not equal (or one is null and the other is not). + + + + Clears the URL cache. When a URL is parsed it is stored in the cache so that it doesn't have to be + parsed again. There is rarely a need to call this method. + + + + + Creates an instance of MongoUrl (might be an existing existence if the same URL has been used before). + + The URL containing the settings. + An instance of MongoUrl. + + + + Compares two MongoUrls. + + The other URL. + True if the two URLs are equal. + + + + Compares two MongoUrls. + + The other URL. + True if the two URLs are equal. + + + + Gets the credential. + + The credential (or null if the URL has not authentication settings). + + + + Gets the hash code. + + The hash code. + + + + Returns a WriteConcern value based on this instance's settings and a default enabled value. + + The default enabled value. + A WriteConcern. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + A resolved MongoURL. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + The cancellation token. + A resolved MongoURL. + + + + Returns the canonical URL based on the settings in this MongoUrlBuilder. + + The canonical URL. + + + + Evidence of a MongoIdentity via an external mechanism. For example, on windows this may + be the current process' user or, on linux, via kinit. + + + + + Initializes a new instance of the class. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a write exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The write error. + The write concern error. + The inner exception. + + + + Initializes a new instance of the MongoQueryException class (this overload supports deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Gets the write concern error. + + + + + Gets the write error. + + + + + Gets the object data. + + The information. + The context. + + + + Represents the details of a write error. + + + + + Gets the category. + + + + + Gets the error code. + + + + + Gets the error details. + + + + + Gets the error message. + + + + + Base class for a write model. + + The type of the document. + + + + Gets the type of the model. + + + + + The type of a write model. + + + + + A model to insert a single document. + + + + + A model to delete a single document. + + + + + A model to delete multiple documents. + + + + + A model to replace a single document. + + + + + A model to update a single document. + + + + + A model to update many documents. + + + + diff --git a/FifthLesson/EnglishLessons/bin/Debug/Newtonsoft.Json.dll b/FifthLesson/EnglishLessons/bin/Debug/Newtonsoft.Json.dll new file mode 100644 index 0000000000000000000000000000000000000000..80699020cce0b5140994fb1ac2b06547ab21fe84 GIT binary patch literal 662528 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�A^2(yl_D`bFcD#gIF!>Y^H#nbecK(*x`4x*0M{OS! zvsIf>ZJwshgfbV1!8`X8w(~>2Xr`{#&-D-g(as9-1DV{?TiyRbo8;@#SRk}VyvJc_ zt&x~$_T3S+&id`1Sfq$fK~`DyxQm+NLN3L)*y|+em__=rpK6LdPo+F{sDBYfWBNXh zaE0I460a5V@%x{n)e|!lp3K2LVZv9_O_P3LW>Ns7aKTqB*^k+ZV{}cEic(a zziEgRvYUMeuOOEP3VP60QVf-d;0=OhVKZ_)HLc}#L0d`J_Q+ciSeIc?$9>t!uoUq- zFsQ53z^h-40GywOh-W!EES_}52rfqsM~_92T^w$6PAo?7*?GRbtgX#yvu!xs0=qXe z18c^XQ-g-G-U)K-#3&|Uzo=y&K`>pDFuYwC_=N zD7%Nsk1P8Pv_GTlSYn0B&xsv3i@&HWTguj2Vk^A1+^H;Q3Dv`49J3rbIhtEK($*I4 z9*mazRq$a^l#upXqP&K{0L`fRic#|eMn!4+Hdt0JDqu6s_06hXAO>?ldb&@rLWU#u z^4CV}aY(fJV)p#8xNl35?Ha$c%x$wBcV8fcL^52ABPi+2cW(!~+oX8%2x^14alJ`r zk~=NqK{073iwgHuVj}{F0WmJT4{jXc1bk+`oI;fgW0lBI?y6K)n^y)cZ>ScI%B_Ql zx>_(zoMh!;QbDH@Jc&w z(zWxBs$LzAs$LOCsux4#GDUSDedNnsXnzsWodw!ZdqlnQ6lsg7H`l^AsAl5AfVME1 z58n}xnpX|1n1uUfJl@9Jg==fsqIsD@0JV0BS?`Yj4_O9yZVcHXPsdu!tqvOU~g7oko z;Ug_<{_{00-;}6k^;=?E)o+U#u09~9LVv&5yQ<%SX;09l(C<*_>EWXXPb0EkSpc4b ze|`ryhy$~DUrlk%-JfhhiP)|MR!cv-6*To}njVz&%<2!t!~p{_!_|kx1b=?4EaB>u zve?z{D~nV8kysSn-xGUR^}8@}^Z;K)H)MNc3q2IwgGR1(yn7|O@k~B%WPR(AM&J0n z{T#ekJ)Tv8y|v%7GJ#g|@f4T~Ky&3DP9`BE{DmaMZ(T}m z*Hfg_@C%#<$|?koF9wc!8abx%6u_Cr(=hD`ew)&uhf3qO0>E!W8qdI4`5iuar1AT} z!8A)=e~b7|bl zhfC^ggQww<-Pm~UOjy2*1LIgk#Y%>m$2mo1m20schcA3+xObrYSG!LC9XyVLH^Bc7 zTpGW!3jXcz1%4Xr-(&KGvGgCK;LbwSVFUMZqh#EN0b1d$+;L=u{k|Eh`?p}H)Av{JrEv@~a;v=$F%x#zU>lyvP_qNvz&zrZ z>GhVeK5rVB3}fVu!G#Hgham+IAHRP_UW-YUNtM4aU~p@ZWM1{NCxgDlDEkcFRYShk zLVB;}(YcFOCZf6X2UF49MT6R-yhDJb@UkNPBJ@*94?k<$x#Zcnw875B#h8b$F+u#cN^;Y# z*22>0#1kBlMzYa~$6?`keHKcl=qPtSI`JgDTcf3)q*Xaup?7P#_=f9d)EfQHqhvN_ z`^4IcSaPz{aY&qS^USe$!}NCe30$oWD&sIfB@9p*S5)G>B^g612NadgNSCJ4!~6`7 zea@uuXShVe-OM&Z{&6lk0RBPjE{JdlS?7OOz`Upc+ zX;+n8g(Vr@4Lt}5yGlRuwXBBkGa^zA3`eSoJT?(4bt#3p##glafTQp1626d+V8o$HP%2-$%Kvl!`aK@vMH@9MH z+=BOZv~@c5JOA(n=ye`Wvx{z6mV2Vztrs5Mo3VS7d(&cfv}C}7Kr zBE<7xHPxFXh|&;nDFeb@3_uX;NQkMTT!fJP5(B%Z6SRQ`R%jun2rl?7!njx(J4$Yx z)fLk!kxs@7OO1^CM!-XN_q(Ww1JJv>9vrDYg-S7Pf6t%)#huD!fJ#_6++dAD{vC=Y zEmSN68aZh%0h|L+_8QEVt3D&4xpN<4D1{yu%kM(Uu2kTI<*M!egcdwZ&^y?cj4T*D z98VK;tff>K>VWP$5QsOp93Gvx5fQyh;DLaQ`%YL^JxeeNyorHj_>Dd+QAKwk6~!@! zHc%vw0>RFsBPpDL*jYLpF77zY)DS3EzK@Jj%f|*pnfZSj`KO}KwEY9};3(h_G71$S zIzKyd;cQeGm}12Zl_{cv9#DYlw+dBa+WsL?wSzPvy5N?79&k&sWc%Au!;$N84zr^A zs5N>16H|P41snnGwtE9u<6VqT#A6kLK8E9UAbI~alPGjDR^SDSNPe)Eg#RSZ#i+j3 z2ptBNVx))uSTH|^I`4U)j5|IXVWJv|=wHtE`t0*hla+stLF7JORx{$k= zg5h;B7l_BSsxbEjA4Lxm^34ppcQo4{^JDH`}l@2zGg!|$}!v|^`GUPbz-`CzDJ6DOvotdi8q4A->c z{y64d^`HBL?mXzurNJKD$=tsgQ#W}{xb{2LXxTM+MtX^dSgkY2^1viRTvTFosk2kW zQA|EuhWmLx))dG+pdxN_5Vm2!IgBmPm$I?}Vttg+CP5C51m56~HSD^cFBbCH5pKDp>qC3%oDxg8-xZJ3oF zQp9mwy%OmQf9tDp!|OqgAy*dtGCXq)nT{$%T?ECYw(u3&n8zKa`D&=~L56H7-~&Ns zSAObrKc@eZb~-F~Yh+{4A>r+XHHvUkj``r}Mj;)ie(*SX zEWYQ!METuJij7BW@pC2+sVqS7w(`?+gf-*|&l)4Y9r)lz?T#ZueNbwIUK#X2;4_22 zd#ACZ(5Gp%yqsbq*=yn)c|V=y(~g);VFMLNi+%TrFo(z&zaSL{dJ6|A>~T|eTfBw9 zNgLL~!iz-2TLdrmPy&HHat@qo^a2!dQ>S1K+{>XIF4ZFLs6$o2;V2ccFy0c=2%Wi- zTs$Mm%NmmuU7Gzdaa)f3RQ3Vr0J{I(C>U=*JMIV^-V%6Kmf{nu{l2-g|1mpzmoX+8 z;-Yv8ULNlF=+}`W$1A{|h`8^7e|7{q$gBqiZxFtt?*o7&-5T+h!2`Q3TPr`~dx ztg8z+Ti`>J5~Q^sYG>(cXk=o`6V4tuAHfxv>F98!$EyPTS0lL8Udkv6-2WDZP97OE4>`|=;28BOJy(_7vK|7Q$SN@ z)~(T_=#+(~_!hqOnSw&}hLegmcW5?+x`HAg$|Vx^3WAV?$I z7j&hPMqP8obZ-MGF?%bf{`2r&qT%Fi_g2JkF=(p$BTVYQgjOy{_LGFcZN2fkvT9DT*@ zWF`h5iXw~4jSQ@h!|FZ=|2U?Q;=(HnvVhjk@$9&SCkmE`$Kc<{|Q?a_QKKn8REW|g}NIbXqd{XC3isD zkwGky_6`Fa1%zy$Duvtu-r?|c(Ge7Ixs|-At7?+z9f5$#kwlFe{61vfy@OCvXSuhr z3UpG#tat+U2;Do$HcpI5wiH>KDOe zwhPqv&}x=n6IDl(Dm*0xxuu%>EvZlMx;VYFaSVk(-a34O$=nmzuXEoI8nIk19K@;l zD-g^oCyn1w%_XOuSS!C5u)=uWCW=F29!?(x>onUt4zA(P;nK=t}Ll5=oa%Frw4;FUYpz zkrYL)1+GoH@DPgv^G<;O=;y#BZWNzLAVypbmeNN9ttSxH>>;9iqzPTuNUaf7;gZTP z5l)swt1o~ki~!*YS`>*jARj1MOVYSiaSbZaK&f*{BY=2Tp9ef-5YzUa8EJLGw~kGS zS4t6B@;-?r?~Gco`fKo0b&c|^1HjM9uYi&__xuTIU>oYsOe(j+I|*6DmeQk4kg8(t z2c?=yJB5rdbRg@HEV0z069o@6I7XHO;x_y^fp)a%yZ>9WOULugKJ9k3d8jr$ZE_LE z^fu#X=k^&qws3hyJ-D5b^B*|=Bu{SV7Xcuo9`asHEC1B9-}0#9_I=P3=6Ot~9~Ngj zzjMfKhp4fjF$N#v(|d zO!rDMBZ#4>*{NWPSicDdml_{Nx|w3tw;hc14nn;IB&o8-x;IKT!C>aE2%gXc?F<$r zk|w0KAO(AHqohE5mh4%rVwqOuQVd6AERjG4Iq?se=8g2BjpjeK`7fFq!B+;LtIJ5l|bX(0|eyjP=9uyIYYnF+U?#?{(?>2f!9Dbti3Nb%$_Fif$lax%GHM1J3DNk zr_GOil2HyFsi$vv5Zpb5Em8WeHJZPCYrYL2TH+x&Wn*g)@~gv~@S7pzKhmgtCWIc5 zE5FL!_^A1d6=FH?&&=dbyVcC*w%%%X8@a^Ux%N%&k;v+;W{)0h}K5 zE&(nm(j+Ud0{PStz$@$Qs_}R|bco_|XhzX*PcR5xo%JlC_r@y#u?pT?kZVQ?n2UcH zRVX{;IPOQ-n;QT*tqDZ=v;DsTX&)keJhmERr8fVeiqn}6M`n4Pgf;7ACp!|eof};S z6<>iGg+p-DR>H|l8<9=L0UJIlumm+e+Rq^1A_x}|>AU1hp{v0mRT3zMKVVlj0TTU_ zu-e@W2V^yB{DO=%bZ9_d5fs%WkE1^Y@rK&|%Jq-5I;-x3M^Ak83w3`*?d5nA`Un%g z2QoyPg~L&4)l72Q!WnGjBWZ0a4jS-Q;!KR;5+8@-!nsX@X*;(`OEIH?Ri|Gk9djrJ z)EzIZ^r_o4(i+47FZ-OHkva-nL#b$4wU4I=JGc+aHZAqUF3g$a6U?({Zd4$d<#AnT zro2gZneW|cD4RaJt3p}kRWLyM{E}Tc8<@74nPu_vAgk1OPzknKbgmAZc+nekaBQVK zfWYAe4I!8fSJ78W11k36Ns5jZ(;oh90S_281VlK6x6NhGKuyWSJ@T@l?BDcYmXAh4 zde&S$2h(Xf(}p=}(ufssYc|#TO&lKQLOmR&dc1%ApPr6CVigPZ zDRwWW*lPU{#G!aHm}ft#H0xPLag>pg`$C<~eViRAWFAInGyD%%>7QVWXx784FgV+{ z#PKeN1)8(&m)Md!u^^RIY%6@8MEs(aZQTPX5fwbxBnr@17HXP5h}F5)LF@<(AF6Z^ z2dP!9Iw9OP@Oq?Vc-zPp9&!FCdYQ@uT$L;EnPey)J#(!HkH@(Gz_}pw%`d~qAId4o zGoS{~`233=sLTY*FEHhD1DT}Qh76_-j66nBI`#aCUSgGr(`(U|^~8x*_jz*ZHWk5? zXu=9!{LF}^e8meBr>k+g3OgT0<@bm+ko8C<3{vTa5rDp#=e4c^zmEXFv1%q;i*b!vru!^#)M7{@5h=zaPG`ugf(IqMwdm~wT(MdNVccwt;w6)NQE4=A$*I%; zSb#Y3N|*!KGMa=rNmP5{5a!rXb(Bfg&gv}fQK8ZnsUD%;S`={kQ`G$_Orml+2$>Y$ z-ddc2z3y|0%@ZATa+)X>Ok$G0hgjf&yE+tvSm2TJJ;VZ!wC^Dnc;J2x6-6xYz%dHt zA(kf%p{UvhU#*pqbzcUJMlS9Cou)A`?T|&4tB~)?)%aA~iQ+7?K_EXtFI*;rP>#VY zm;c4MaHNb2(?G*Li^q`9xS2b^y#*e%X{>K#Q|Di>OxwTZ`iAnefk}qAA482zDB+#c zy`~SyO!wD7fDH}9{TmP{EH5`>d8UqqA%eyIU!a1Tvl0P1qdPz#HYPzLZoxC$mw>C3 zPDZ9Om<;JlW}rV7E4>CQ#EADsfE8m=*eJ*=oSclf9|yh$ueI>{M6*{36(a@jPd0mJ zobHiMcvHOHJA!*|6jBhwCcpaC6aeDXJOqS}5)hi@G4#C|Jl@CtrFdr4n6{%V3lTJu zMUuJJ!cl(i3QPQ~VOv@$Fr;F*vL&W&c|w{|$%sy~^uy)^amZT99N!kYeaM$NUfeSB zUS+3jhyyg`|4OHVd$VsMi?n8i+I(7|)hxKpBVBO$lN>`tT#9L&ey_+1EyYNG6meCs z=!H7A?Pg#aE^AC2nw7_(R^fI%6ub8;1lS%Fb!=Q@OMlzj1BaK#hi$x&PAGpDTi69? zVjX5jCsy%3ycY(;w!*KLke-9%w2R3+u4Tg2zVAfg>)ZZpb|v`hJmP1zY<64m>T7-qzl zg-S~Un0p<0zjzAUK&mJ5&$=Zo9D#$vl$?RX%|d1bVmql|DnU_OsfIy{!{ffH`cz&3 zp)57K8bb&)G@J=qgygJJZYi1RLPpiphCq*M9aTpnsX$w4=|tcaDW8Kvm_?afWeE)% zeK@x-`ftG;g;t%7u0|!LY5Py){SFjdDr%sg!sb4XUtELy6wj&rnVErBja^Ludg`sv z7?jR>79l()=M4@%0TbR&9 z(P>Q-m5y^nS1A$MSv)ktxldtOYgs`!>b(uL!+f>azAK5~$mUIiWG{gY8`4~+qWXlDu3>|pcIVlmuIqLak+ zz+x5?(5CBRScYNt#FYq4;JDH^QR{F#THJ+}NR|FT*b69LoV8O0i@VSQzDjIwJ`8!# z58J6i6g>(Qy7wu71q9$j!@tx3^Z-EE%PD|<0`P@lZ089EdH}%o7Ak;61aLYX_fZW% z4*)pcVg;}d0V16d7afmapa%eO$2kGG_IMl?yvNN!)s)VN^Gx>n55hcwbxCFgE+h+( z%@uLS)x;8x__vV7i*+C;kl1g;meCEYLkTlmc^gs`Ak$DlUK%mHcj05!S~)f;yxTCy zc(>A5#{S|4)4Lh2tY|ahekyS(O{Y~rrJP+v#ev&w2rs3y<4x%8)wQm8@XdQazzkET zmW4ytN4Av{kv{{=%uacC5G#~!gyRuNQ$|YL{US2$(0M!j9dSnJd=H!vaYpI94bG@I zF+T;#yWv*aLD=`=Jy735OPwx&37KA{EJ`qN5l)L&-=I>cPAp`t69i8Y&>6G<#^JGnq)* zrTuUnRALG`q-p?kI^(VjT*U>Jbt2ERRc=Pa_11~#)jtYaao)Ie{v7mFNVnzK}3vp1ZF*P`vlWR>nr8N?{;77)th?>$xIB3_HDjdzRF$*HK zH*-OZ*#$b;dQ`j3Rs_G3*@Od8KgN9CBKbsD2W>lQoF*gKSo$b7kx&e~5Vrav*!Q$y z2R<{6^_N;cF9nWPyL`?u!91VpDGwNK4~vh=eN;bEgX{Wl{^bx;$NO^#e}1HJVMd|Q zsHvo$P(l}GClop}-aSa5a4=jLvFA}mCbLTof9POh#VAHJf#@rT*6De;?Y$jwAcYm} zVVT^hiD^Ww4REW3oOKDyeU}@AuUp|4to8J&gFIjn2@jwK0mU9p4HC9@K0>tID^XY1 zD=e6uX$7nD)EZGasvtI=pJ#@8qLEqIk>L3=vlE?_8@9=2AQ_K7kF-hm^4e9*5di*z3S!jZ&dfdi(9GSNN9@JwTzMWl<>1lgk!PhV|^~Jcf zCB>t0p5_R7UAaqG3q_N2n|1c#(zyGs#4AQv;H z;rq7uAKqFd@fR{FHtycm2db<4%siK*#IzH8m`*S z$MhDDb>ogit;=^5!ueOf>|d#`mT(x4D$m72Lx?Cbs|=;<+))t}O6fmW0N<%74=M~j z$~>^op5l^3Mk&qB1|P*u(L&_xk(^P#nT8DGRx{cRMg73MXJ)@?O|l zar32DLO5kW#Z_2PWOydO7eA{G$%ENs$au$nFBd-J%Mtg@u96z z))XLlhm!?&oR(w7kDdVERSgEZvL^TL&YG;dSQ{ux(8?a97|WHx?dm*jt)jaXvl{~( zxQ5QlZzGx?@w1DuzKZc({6@bdON3mzay1ZcOC*qDx3ErP3zY0@ zb23F`Ofb|OQU&Lz_*~>!RW5`n+5o3;R#7)freA#%#{Axr6=eXTN|K#^U=i zi(RZ#PK;q?@>K|=SVsiPibrt6anLELf{9pIFGQT|tk@VMdwee?H2F$ze(*?l;AGYY zS7sS-M{-7EE(UrWf>xF+;tYD}M9l+#XY%oKt;QFbA>Ht{>st1zODu7zm^fK7tPd63 z3ibE)V%ruFm2KBs>nIps;p^PkF-S(53}*#d3+T=V%ov@0Ua z_YpxEzF$p0e}}=YCUz2xa@j<-d0M#;bNgc5M4Ppcb!9`!^{=E{ag|mrJVbSWv#cj|F>lu(?ZjMh0n{yO}%O zT->AYInAtnk2L$to!cBXcV2U$xjQx2m^;5&G75;H`!DUVwtm_+8>T zL$DTxw%@s9YQ9QUHAB!|9=kY*KFoK(5#|1rtN9T=n*YX6YmVB$&V=*uh^MOFrZic0 zijrOVRllXo`RJnr);{=SxV6KhkK@Gm@#CJn*b_Bn|GwELK<1rfVgM=QCl&BhZCou^ z$zv8EF$AvN?20cW$qqK2q*blb{?51YE*LEM9F#BJe^VkjzOdj#v%E04qKYl!Xbm;$ z*|M;|(1?!k(Xo-Bau~l@DKs%tlfO8LK5zTM9G_GgD@6AblR3lPJNiJT>l2xUOzd{= z=t0`zG}?%3kPD8tGGP2_f7Ha#W-FLxPItE0F0C<_ufx;C9@bJYR!$F)_W=s%aPcg{ z%bEO~!W0vn-TW+}!9T!O9}5fiIs&{HA#-}zf@nz8>x)@YnLjb&6{?zVg$Y4&hxT(h zI)K(N(Ms~LLZz_c4z0eQCZwHF!5QrpOseC<_%o`jG+phAfkhrW4!m@ItO?g*bX^SS zS`3lyN75VF`I{2wh+HW|81ShO6|pQ;4fvOv=fB8*wKP07GB$q<3onh!=^m#er8g;V z!}oO28%J}^2gt7sVINEuUD0Qi`-A*+S6^0)S3$w+-bD}el;Y2Utk+7`mWcIo#-Wz- zjT=b1Fqn-$kN*~=Bf7`qnA2&V(H97TVo3Z&TyG=r_ALX&^?Ry|b&SGgX)mDz!xk&R z0Nuz@2`{=+=FBT?3z$j9*6D7Hg^dr2`s^x9*y3bHm#3v`aWwTjLt}n&Cy@2QAo?yl z+h9^b++m*Z&X*&QvT6{O8(&Ol*@tv2D2M5es`HMh+jPo(xOyfMohr|llIO#k4<>n- zYd~Ld@!ls?e~X;{J-oEv?`|OY5gI5Fsa||_s90~+;M-33Ou0jg6fb~F!aY^nK!P!EN83D5Paw(2`n9)As!?DosG3Yk}CJ4H){Ha&)V zU$~h)l26+-8-w4zs=Hw^-X&jSd-Vi4w=}gX;)4bDz+q!R~q! zHC-jfnOkHdbkpE%*1D-c?J976by{KC4YuRLJPUg9M7V8-M6XuAdBTg<@lhWCFQbyR zNh>5Z`2IFEaHQ7}jXRB!XVvc8wjiXYvV`t%X!p<=OlX(Fk=z_?^@vKjvtmPK(As>c zTs`O+I@`ta^>jTIxaw9*gGt|^5vI}a>9#N67<(ywSDP1b<5%reYT4Y8B;)1^_~d-% z8#K;YwkFmo-f9;2Ot2Z|*a?TX*LSU&>S1H9(}9sjMSY$hic)AxwXX4sJ9mcf_EJS! zT-8?>EMs==gw7W~{L-u50Sc+(x!> zs#bAR=bIOrN%UwA%>+%m=>^#OMYHx^q%`(RW^DoPv$lx&L!Wkd6#YaktaCMoZ0)TW zTr4t|6cTq_c+LL?;IS$}7yx2*f-nHYM1nBD_D{#te&@I~;oUS*m}m^VARiCFQ~J4* zH>B(nC5uEr6SWA=ncXgMpV6fbMw*h1E^{!Fm~8YKVAc91${6>>a{oe^1yE}_R^irR zDZ~%e0<*mD<9wKuVz70%Vw1|za#eE!K)f_T7y#m!1YyA0!Q_iT)Vl&ZFK_9?p?JD- z@`$vTJ{(G3Ytvr(a42~lnfB6$L&@tX@1;ZQmOdOxB|nxgE4cw6j!O^*&=)%IxCmE& z37fk?Zpeyj{(~mM@wpewlZcE|)UO^{Vb9Zy{bnO+`US-a=v_&1Y-5q_z-*Rc^<8NEix%k>n!#+8s zVTtc_>jyF;%Us)@+}w)5X*6h|kA~9j|48~IUD2_Vo0*yB(Pthr_-J0^hvo5PZ{%nI zF{(QIYJ2mdMt_Q|oHg`3YzIF?kI zYbT_NIC$Ik3*3(A3cNVzWRe_^PcN`%nW}raI!jq9dIRI!H^FI1QQDkx&lFDCPyDN{ zqTq;0O#s{SOxkv|DG(7B9QWU8-0hWYCrv%-;~=_UJwN6b(2ml}aC!knwPYvFO`?vD zhKJv;e406i!#dyY`IcxG?n|T#gY;pN4U$*_fJvq?s$j!lvrF`v0aq+?_9 zBoe3}8*JvJW2#QAOO&d*bp3AUL}fdv--M5F9qRa*vg2o*%6Usk2b21p&d(e~X0}H= zpK^TJL6kweK{7M1-T>+?%>MuZ%{qyun z^E-Gpk;{}@XRAb@zaaGYg#NzJ=Lqe0s`HYas>ZLKsJ5)UE^VzT7tnWMKob&XxWj(2!pyPfXxZ;?+Ngo1o*B1C^J^ui82k4P~KLAos2e2NG}dHnD4%ca6uBm01&TC5C(u~ zBnSgQG=;c4n4H9|SD5fR1Sgd9P+=}gVj2MA;sjv;h;<3V01)dFgaIHf5#k;yBp~p1 zZfboUtrRB}k;vp#3QCjIL;o1Wa`f=##8m4yZiF~v@&1qMJT)l zf*n4=PAz+e(Vq?tQ^_vl5sd<0QkLd`E0yOK)Q7VEl($P9a#0&u9IX_0a>zfok)_c}X}&`ugmLBWFOOEr9{I;MvWr)0 zhb`nrHImx;s-&$A0D)93J9ZWHFMyqj9D9BzT1J1d>1$n~5QKcKTn&8#KwO<53;=OW zf-nHYwF$xi5Z5IL13+9U#D&fc9gEXT7DBTTx?H}5+LS~yfFlUqL$JwEcM%lg`Xqz_ zAZ|zy27q{7f-nHY>l1_l&kNj*1{r6Wyi8vEL0}sJD2{z^b)`&9lqsCN>kETPm9sv~ zOr`r9(R*k(i$VhO@#%@Ko&L@&<1H@5OE$8Y#?6=+AQO3+Q>w6|XrQ{ifq>TV27tIR zK^OqyrUYRCh?^6H0U&Nk5C(v_H9;5v;*ANy01$6V5C(vFbAm7c#BB+}0J=r$QY!IV z5)T7F+@2r|0C7ixFaX4z3BmvjyNK+#GvN{)jNi%YF=PHK=ACBc<4$=WVA5m|NAN>% z0By^rblY1=f=>A*9_!}7TDRV&OxQhGIn^Io*$+28DGuy~jbNI}tKh>kVT|5%zBWT= z`sVX%e9D-eb@-Xc0e=H#DR!nl#atD}|025M(pS9~L_UpR8uTF?+7uP*3*CpesOnPi zD7$t~(4grMji_HseurwFlP^8lM+ z&;M;a%JXFO{yWtBsJC$n-g>7x{!_u^UAWRn{T&gTS+?PgTZz$lil651!L<~?1+%)& zK&w2Hxlm=bTS*$PNdC+971-OC@uy`hCPhhmo}iFC$l!dtgGuE+iC{E~$tdw|1mMgPY-ZI@>nax- zuOlmLJKu-Xm96y^8gB_R7kDvgjwb6WG=7X9cLDyuSM+YG+SQw14~<}kM(+z1qT3h^ z*!NdChIl$HKAr5cwZX8aoAcIEG1nRqS-l^ReEeb+3;PRd!Z6=FhR=A?{N-cQ{{Ga= z?HMm)sJ>eL(=pbXwWmR-xb;DUKFG(fAZAw>&m@_8ci8wTC60FHCNQ)(Y#`hXy>z9G|O#6tgC8u9k|~_(BjprLZ_K5S>a1mX3vunJ@Jt$LVgQ6CGN^ z)XuQ)A|Gxe`I=&g153CExO_)ej)yU7X3knm;|vn>Rz4QGc+NMm0*7n`)f4CA$~$-E z%EG!UD6bi!k3Z&1d>TAJwY!qb#-9PB1OAXFJW&of$%^gb4z27DvSDG}HAI)+xxPyA zcB|C*YJzq}-?R(S?6$M3^M#4E3tK_kO&?m*>kPV>p`w|K=qtTdp`Dtyuau1rCTAwQ z0owINfOM2Pr9K|!3uw*7Ovm|pHD6njH#uv4Uf8(sn55aAz+TLyE5|_3mP-n?*@gI( zB!Su%);9;Dvq%*M97dcn8Hiq}?_6y`b+*fD?lOpiE2?dxcvAWQtk|<SPA)r96UAN$_U{(Rr-ZA|@#txH z59plc0qk>m2QGdWt7swKpRaP7{m*-u@wu5%R*0YD zUu&7(|)m#4xll&)P#@Q=F7|By=yfJr#a`G6&b}wSI+RRq>X_B{%7kR9Z)gUcn;d|vzih;& zs$ARKn@`6=)@IR!6Rnsib6(JqojJ}QEBl4ehB%i>NJHrzii^D{^z$@5Th|ppA(1vk zt6p5r$n0A<{a1$@H&Xhs#v}IIdz|3Q_3NHAuykKdzzw83P|nt}*>d%~-mIy1qZ7WH z`k~yLjRjy|#dN;8mVF6RX|0rt<(8}agtb*+e4F8%Tdqca(Xu%yW~$4hKAA0)t24v+ zc79ga!`zY=rzW3&T{9t~#rkk?`s=wS@sLe09hXd*}d1upBd3TA32PgZxupkyz z=r&$o>MKR(kRSJWOBAGQEU0vuSKijRvD~_AX)UZQbeeW};z!2wi{MAreAD30x_o6h zS(jIR#Jp53#j?zRa|9*mM zeZB7GI|>w3W>VVTY~Jw_m07jL#Ji7pqxIraz>fnaqV>v5rzRIcl%v>iR zz82v$*#2HlM~GyMOJ8qcy*QT|FU77CQ0*b7g5zN-6_n@O`S$l#dTGTg)sMW6S}CYN zXBdsGd##YrT%{=FX+kz;yn^~b<~&Szf`_6%(;}E@*Nj?#R1YVhZF$&pxS3At$xMil zxv$b&;?{X_V6E@bG0m(?7wpuB8R zp%A|vT;nGMwR|m-F;N52Vrc5(LVODW`f~#el3aWTaErSAFxPYgT@B;dk{QVnq~fQ!ICv@CP{@dVsPyLDq7m_99+d0l$MQp zsB78WaC;P#tjgJ@m z;|_iBH1PJxV`yxsYy6#*#?go0@zjzIY&QuEc0w2>qYD>esH=Lm>s}v|ma(2=Ih$U2 zI!<0h+1vHJkFtxylfkr}PPSLQJVnIW)F8GwXh3VUiNj%e#F%I=b1Qv$x%wWJ78!*W zx=>{rik3jYk`vrapVv?5%{f7V{EPVKqRSa+k`$Q#UcGtzF&i!a68`yUCGllD#r!#r zx2@C}a8%VfU~eJS>MWugfYm?)R-x~ZVTm!7c)!z}Tu+=z*6uan{0&>e@hRlppW8AI zef-AF$v7sSwokm4wTPy=n2n-iJBP!@@27=v1mb$VwttEiMpi6$Un5g!;qX)aT){Kk z?m~WQmT2FuJurJj=Tfp`1$V>1Ma~xY`jW75Rgw(2+05G6Bh0bc+7*e57;E(un{6f6 z(wJ@!c5`OY$20S^2h;hoxQsiPBXjkku<_3%O)hS=H;=jX+WU{z_iDWCG)is@#wn+J z$QBH4d1%4l9I>-t$daJ#PsmsKh?RH^w2|;XoehWxI(ji3+|`>~%{5L|ex1y`TwPvT z^)|}Ko0=@YzdX~o+cU2F_n)=nkW<(FThHE6$U-cg&iaxiL!YSg~AvX(2w3 z(5lb3JN1#Cb*jfvw>2?OUvF+b^da6O=LA083|5o)=K+$PCg%8?K#=?+F;e@fOr82>)(Zn<4_vC~~UQmJft9#>}VJ7)*u-COq5{Om#;Z6TI0 ze>Qr~_0*G%j&l_fe}LG;=9lc4Ht%kH)-&(eoLS_?XIBR4T;@uRn{Z}8x{_fg28NrIIa7h=)R4uwF7T3j8vq+)7f0RXBsRktqv(s-Fg5Fl8E?@Y5jVB#99u zWK7dZNs~AMyO+Rk!!{{lZgblE1a>C|9?Ho%;XyN3iC*AAdkcd{8b4YdJklRiVDo^i zv`m%5_`fM6y6%Xp>^w@+wfOH=@I`>EJ$_L+SKIWzFyMxly#kpe79Eyh)2K$8)}n{> z@@P}4P1p98hmK@TuPyH_1?{z6sZ%02rAc;j*?J$4+pIi6r#r1tQk03dI=i-m>lBq& za98#Pu9d^+0KA6mmFUn;xLN#s0nb+fxu?Qg=EoBV#&m}vhAl*Wem+`FwzWZ8L%cv3 z4-qjsN;tJq@d!o~e1e*2ZFTo;D^fbbc`h5^CXYUJ)CjehU~=ss^17nwhPt~=;(lre zP9cCjJONBu2fvbZe>S&WhB?iQ6Xaw{w`C5eSwrWwN0JsPzd|#7{P^Ln{0W&k8b9;H z>d5g>SteH^NdD;@_ z6kA*jm1OQcrCkSSfvmIIW^G=t?U#*pZKhVv4IP<{Uj;bkd;niM}c)(`RUfM#}YS~!om_C;W z0LLhS^Gr2|?T*KM&0V`$*k@f&+EZI@Yfl{!xc1bZo3@e=AYFp&v#RG`o~EA8#t>EY zXHc~RQe$S$ik0qb>OSJ^csuQO8)Mq-G4()*vBnqDiSa#ZDcQYvnKI$erTA>}x$}RM z&-;{*<^YbVGgm|Bp~*EyyG-f3U}BAOZ?0C>`jd~2WAX^H04D%o_m|RlGXs!Fy)PH! z%$Sz3tno*|<>HIlKGK?WJ{OyhgpQ;2%2FaJ&_FUJ^|<8LUrUuo`w>;5>jRgpm0s6H z$yAGi4*H6}FN+c#(uH=eoFk$`boAH7!7mOS`v{w)A zJlw;_b&lwRWn)+rGI+#(C3x&BM;F5ea5sgdoT%C=>nkd$H>E3YS_qwS2l#|`La8LW zqD!7RiLOnHToO-{Q-5*G(*Evj<9nU{)r#QDVjM}g=SWZo2#(lZ4E0PvWzB0UJ_2dqrZd#HS<#cOro9-yg6C z9mXG3&wQ5uJLy%OU1-g~G5o>8LC@$u8ea6hnD1+#Z?^$4zP(M?VM5oT(KRG#cWlH7 z@Wfb~G`o|R)|!7ark>~L;{OH;&C-q=4G?BF{yWJ08qO;?^)Du!P&?0)E*5;}E<26q zv3oH9he;j+FU9?*(#$1U@GeJfZZYYmBAuclxr0BtX|}pa7%N@ULzt5*#S7`6rPbVH zbIATNDSq^qF-#o)g7)q2f)%WEO&&mf( z?Cy{!0ykZ2?TESY0qm&};2n>E-tPeyJu?JM;2KyYZ?CvE4#Jc0_Eej_ME@ z$K4GkWlv;bBq9rw^Um`#SNt(^z36H#^Y97^FCK}*1GhIW2k3*OnWB6`|H&z;(Z3#N zbbA9HST7}ayNj7S=$UJ6zSUl@J>P1t*QQH1--hw1x`5;Qt@I&BaofzlomsX`x3Ol~ zZRS=z;I$`$nZf>C1_DyN_9Rg|-uDTDlex=|s^p>1+z>7P{OJ=$iV_QM!VqSg3BxSP zSPw#tNOv-}Y3nayTEU1BTS?IC4v4YXAx6v%J6g;-LR(SEBHVNl`@5K;jTpNeF_xzi zW6=|1)`xEs;}&LuReuvD(7qwn02blEA0 zu56qnT7vf}H=byE$V4oX%i7}M_$YRie4Bjb*)Qt5T}X;1s7WzhDdxejP)74BbVYM3 z1A`Z;oSaYFeV!?<sa(uX9lq7isB~Oo)Sc%^<+8g$@QXvXTeK)E_T=La_jvmZe2$`Gsp}QBOyCdXYy)f7q~@^dnR3i5OxkmF=2yvb6~PN8`4!l&kYyRc z!?f3zDcI62hq4~#8Jp=zywcU4#WBq!T^O6i{}(iW36qMW`7{foZc12~jBEz$@8kT- zUeBlb@9-+6%$xF=%ni^MOX~BJhoQ3ZAFZv^q6D{x#nu+PA8pgTPFn4vDVvdV8egBM z+pz*T#KsEyTy(LvX#-)#)wy zB)QF?xub_^H6^kNek}uuYlyB!KLRTZ9}=cCsp|Ci4))LN>y1j(sxs3pnZ2%#i`zkl zb`Yd?7U}vCU*=G8n-O1j7dmG3anIVevggC_nY_zUYAvd8bU;LtxM(%=2_|W2L)B74 zyZVDJt7CZSyNA-r<1Vaow=kcdrPI3bTfINSjVrRnt%I7*><~}ioU8u`VfiHb`v8o5`h!Ye zw$ks!usc=yOd83I)NgXwO2t)e{Nsw-XVdNKdj$8ddIyegR4IVsTc8%Ei`YL<8F0Fu zYwlA|5177Z|Ln?a6Irb~Q7Ozeq0(xsLn~zoL7ChoSneOJ46fSOg1Cc&Qf1Jc7xYwS zR|egI!Ej}`e~9$#WT8~)?*!;?2Z$HYpZ#;H{gpXp>#2XFGE^DyEc_fdEPwtO_pUOP zInGSe+{#?cH2FUBb(p*6!>$fjP~ZM}m3gk*w+lJ7+&fivT6Lw+^PI9psj^d|V==F? zlhd(SSXtOVzZ0Op6QI8xAcmzV_b;fTdHL1LwnbbNJy{B^K@?FSyWkMbXTA2!axy=CN;m| zh;HH=i0G59e{DLoV^yb}-aAF|&6l$pTeDvRCJW|P2T%NenD^h$^# z$>bB$Gl8pOXLf`c-BtL*&y9tUuvT=KCT3$HI;+eBrS^msyO<&B@Gc zT>S}uZqBWLZ^Z34tizu|{Ff8pLGZmP{1(1f^F7QunZ{$P(B4&VrSSc`moj%JacxPP zBHx~~!ppbkr1!#&?<5Ny;$d#RIb&U^qh345526=n3?g*Jtj0Ey^BttT>>|H}?jU8@ zOU_(NndedO*TDlcyP4&9dej|;bQedK4HV~2bm3csyZaffJpKef?sUKy`X0A(rZ8@; z42=UQ8B5pFnll>O;_NY+>^L@JTCjyQYs-?UKxK`R#09SUG^K;1v&H3J2R~~TkQ<;c zqP_ar^?BBi2dKO<^iZy|_b8>d9;p8;WlcBkZYNpBv&fqI9Fu2@#rVHe5>Bv5S6)f- zIcZ8uNzH}QVwiJ$?~bzDPB)Gu1Tx|d!2J2wrlcD=doc<5w4*OSSD(XNJ+yLuuJOHg zc=Rx3bS!n&4>PWbp^qx)IQ@d8#MLP0nB#@0d(6w(j?0n3^c`2B4t>~;>-$VR1$JDy zaGa;8lFg$d8vjyR?ww+c2A2=Y?y8F5d^xv0lcFF$SJ;T=tGc6$D)M_f zen7Z?w~`t3wYB4iWe6&M4Yp2270Qkw%2n*43d=!OI}?2;ndIwhp3P1wZ0vLK6c#i^ zD>5VNWZ7Bfjn~_rFXtqBImbK?ZOc4MNA?9d8wVS9)|jXdE#2U_t!{B!J&eB5jq=&R zS!3F}N8Y{WEuZLzv`<@d<0OhsB*>o3NmjHc8z{}4_#NX_TeGid@P3&eC$M(Aaqe|9 z(Mr2~wfv!2G0>@<*y^`{^@REy=h_XJkrmhz(JVAFWhT3S(zjOyfzLBi>SDyp38f|x zrjx4^;nj1G?LzrB*Jn~Tkk14Uo zuf@-g-DkC@O!n~{3M50mGouV=J2MIm+L30Ya@ST=D$AnlW`*waZRxL4-8Ok57{WC259Xt%#TA$93qUd23G`@(E9BYPzFF?SC;q| zy?UOu=^9E_>jCifZ@Sf*tAC!EQtGx?hhvGn{EIX$_Z>3(vvMSRO~A}Y`Pm!yx46k# zs`ckAaA;>kc#(RLvt|dOutb*r78Wlf8p(MAW1CtZ$(l;0^XbW&GNjX>B==;nH1em@1mcA6DGPznJLxF z28)?_OEUA9nQX9_*%`d%*l_YyI!iC*OsBn!LQ#&3I?0NJ&JE!tM?wc8^9JqpIlE+P zT!WH59pObRd-dk*sWGY7eFZk8J}(#R%6@o3c;u#(5Il(qk}tx)wqSJ;&;PeFv3R@nR;)#j}`4zOi8 zSDjFdaWSWiVt?U@DQXCDep|{TS$!g#LD@y`re?HbS`O^`H_W^U_(u9GTRSvYd%lxe zbrn!&Efp4YaiX|OmB~(($y&{v)NQ&XfX9w8-xmyXy9MiKjHj_1+;yvL4Siq}h(W$j z(rrA5V61y?_uuglxSfr(-UDHA17UwM(LJ<6<|@j>!Kd9r`%~v0TCVjjg$yPYAs!+d z%u>HwsBH8qB6Ft8O|XGz5?G?tY_tJL_Al*LS#%L!TXyf#bumWtRk~f}WZxkB~(A?pPz#1A?BEw9O6Ood{ia z)OZmObG(w~&m9Rbh*mx)7-Hz!{m@%TueLI@3taTPQ_r{tWN4bz?$R}Q9VTa^U)eP; z-O(DGf|GtyA@ff9ofBi;G~|xUCl#o3p+*AD(fT1v(RJ192`CNjW|;A%XvZ4HU9K6e zFI}3mD>b9_c}rcr{P`op+!O$F{{BpjN2925zQzUOJW6P~?s`3m`YR?~1umErskUZ^ zLH&kc3M1xR!|b}3lNR?0ETbC~Mo1dB zjeMO)y2~X#&Ze*Ijq; zJ~t&k?Emq>Kkz;`$|t*y*$DfYCRd7|N9*aNr5b+}1$^ZEGi=?UaVk8|W)CoAYnWO` zMq{eWH)!tU+6q%_HeQ}ama#FNi#JeQsW@9W`WpePyVI1*TuY-WT}YG1c1+GPXIaSs zBP+pi45)%e7pIfm*990}ITzg|PtdHW+2QCqf<>>_d_8BX*HFiclDtkOR_d<8cB=ss z-js`hAf2d#D3^4i!a6!pxkTqo#o3X@(@=CRdDmt^>^A>89Wp%?t#P%HO5S4g+5j4m zx|=p0&>V`!UaDb71$hXgzz)cpO^GFu`4^3C>?zag0pOUlsA}&5{m#W0PUydS$GP zQjCnc%wz%25cfCRiOW3#JF{XHb#DeTC10vW^-1pQTr19;6__McMsxh!+*o<3Zz7hS z?aD0N#a3gU{8X5aKhv26#gF7N6XeZZ0Bnv+f*Tv*W#bdoi!esMnHsN4@=7&%!QJ?Q zK$G+C*|RfCl68|~XM6i9gt#9U9d>2&K|Dg2a4R8L&x$bvBT?QeT$!0)dhvLf%?090 zw`|vTyKrOlauV@d8j{?|*V53{hp8Vcp&-UAUcv0B117tseWonv|EXMN)<*%TWxcZojt|VMN*m3|o#@C;sZrmFnj?;0l7lBFy-#-PwsT|gL=;-0;MMzc zy3ILL0U>t5iGg|lRXNy{=6)U9b!@yd1)D;bjz`)jQ#&)WtHwycP3?!SpJ8HD(G#-2 z%$w+Ircjf%Xu4V7<2oIH%dk8RuD!V%UZy69sbYlU)(&a8QtC_iap2`g6Oh<1AqNH^V4 zl@d`~Gc|_kaB69-ao|>S7?g3zB14(F=Na=iigsgyD)E$aG<^p&E7<`R{0?Yzc;%90 zrh0BN)TlsvxmvhUV* zjF!2Dy|xRi$ZS{YG3kz`$IUDjS#oY1l}QH8cG zpR$;^ITyPHKCfhDKNI@%q_|#-@nvkNlXdOs^Z)MC<*)mgQ}a(0$EUlLM{OX!LVs+> z{cLH|gI#G7kwT+wA0trN9TJPeJM9|7ZgD>_)nXk%f6`*JFZV6xl;gL*9B0E^5M4-) zG0XkaA0Q;@p7(6h-O=nr$7rv(Cxpv8#g(kxF_PXHOnSlY7-@par`DCct8pk9ne7wa zKxt7bdMiZlmKQxb$3t$K!E@u+(W=PdR_P0Eut}(Rv|d_@%-&7vXmI2QDuwn8fiw#* zn}in%^nNz~vJ2wYuT#CWZRm2A2xR|GZPAZyRC1HWsMJ}EP{8Dwo$R9&#b)WVG)vE} z&5XHu`-IHoBbkD*L1t~{ z&fmGCEzz1bX!@gFpLV@gySnAuHER^Z0Y|R~`z(s)SsnH5U&!k%S~K!DoP}kHW3GRS zc?$6}55yr`D&Bmjt<(7xe{g+>>|qfk-823{;uZ3xI}10Qg^-UE&#g0@@&>QRYe9wf zJH6>-2Qtr-Me%1!Z+ZcOdNc8B_a-9R_5!+PAIDjk4rN2}RrQx%95>Ho4Vajn@pLdB|p0X3aC$+rQPO? zSvs)o7gopT?O>j+W`{7KSq_Giks-+gk9(asnus5^naT??uj6L|Cz8;;Z8vo})yeu; zdaZWqy;Du^x`kVsolZu9c@622R-!+UeSME6fb~!UEDPBEc8@k-wdsDTKWTh6>?~O_Z8zW5qQ-`JkXj;m}{V$MKQsa zvl*(zfr|0`*0w8h@q@&GtuBbI77TN1Y;{?hJC1|aO@MY|ZyDuaBAa8jc6;bVg^uMU zU3jmWwfcC+HK$(addAr|+0D7R_aMYRj%UtfzMnaM_Zg!a>p|we%==GC_~$Tl09DqX zC(-jD(V>+&lj0t;HDWn6B6B`aA;k?Ou-$lk4&Rp1c^`TNvMHv4+tm z(HVl7AU|U8s+%clt~TOtv>LnaM4)D#=pxwIY;6f#=SAdLo8yA{&r~>V$0sE?_Iq(| zHnru)!KB2;E7>xedYASTF04~T%DFUIdF@iNWlI6g_L0^noprvAHq5r~7#Z&&(<#r$ zd$<`$MV~%T>Soc7=1G4yY1+&xJMPK#wixo~oMlda4LncQAX%I0QQ!8k}jYITU3j-CK2aE-st?hT-41+Q%3yw3Y z3G|^fKpC@ZriNquwx^O&cFxj}NJe6*J&kaCiP&zpUUH1ls0LzRX&YUpXB>`gX2|Vf zpUhlvTrvjl$vm-XMjvg)n8{}jq`%*;G2`TkYX=Icd-p;{dKg~^*A|@%)gaOxJkrF1&2KU3jWWSrW6bG|_ItC!y+#ux zGh-R@pAtBG_aaMen;2KOV`T6CFM^? zp(FF|Ci_6%U0@$XI?a+zG6rM-0c&`y27DdF}{dvSW0O8xn1uhmn$CemK}Oz}dqu9MfADP9Mpy~d|_tx9|C zHN|W1v=_%FsS++vd%;?!yq=r(S~10IW!h_xDPAm@ox(F0q!Q#-LdPqb;F zHSHw}tDVj}B<*$R6t5Siy$+k=b$HqfxmhZ~Bhp@Lr+6Ki_Ik+_ucOmmM@{kKAh}cJ zmrn6IChc|X6tCmbUdK=IdRf}**9fzDE(TV3%u8nt2~=Z@D;3AJ9K^mfBvSyO_MmAPUK<`!J1unPoLG$XHg4k>>f_8Q)erHgdpfASJ?ftw)RO$>6IlXMHX!@LBRXaw zU=k_UEHICBqU^P~e^KA4?MEEp69-j#U&3e=gxs`mO}g!}yP^ zECe!OkG;!vSCA!Ed-T;+sJ|c|wFpo)Jr_uEJm&VP{Gbo)n1%^lkZ0nLa+xejQc`u)zlrtDz zLBr_;f0n(U>aa0~oYfY5zFvl(DXqWd>WCE^?i0<&EA*j0bMFSeTWv5f6x~TmsO?sd z$ro;8Q>gWwhmVcUUUpSNXSKaHe1b&kb4o+W1M1(y^RDP(VsDg}`4=0)#;;PZ>Y&Wo z3`fYb;x3Vk(F^j`%zLc;e?!IfzPz#DeT5+%PSTN^(E6GyqvSmIIvo=aLnGaTJ=Ni2 z>9%dWP2f@_w5xn!k{>=W*<!I5HWNi~v16QstBq`oo5h&lfAU9DRUxxziDISx}`nr@u?tD7a@+>PHSY zS3)Gw9{kMjfFsR46YOvY9BS^BVBNze82-3i z8TKaL`>4yM>_2=tcDDE4neFx_2d0U592Ys3z1gx+;ap%#_VDQU8sT|+=6Woepex5d z&Vx$72HRXk#3puW${RJt!9FQ0Vam;Ygw@EA+~};@2h6bq51RWDwDn1X z1kF!Ulh&scT4&I(*O~WI_U5e+!)UZ0;n-p~{>C6MWLPqD^~^T|TDS?4>@^-%nm+PxKd+f!=$mR?>M42G zOK|nab0bf`##S(_XABok*-FosY-UA7!z)T61A} zG9Q4Cb%~k%73dJY3h6{1Zfu8P+`%w6qn;)m7lyMeg$ZqacQn96EE@O{kSPJC?&Az4m*QwkyRPrNCGc)bvB;76^m zEFEE8o+SA-3#-D1vB6;^2Ts!G`Quao!82z>*FeM^#{*ppDu7^8yMbZi($zBS!cR~4p;R=3!$?l2ygy0>5KOw4waa_C%4^}Lr~8#uG=sxP zPAA0aoXEEXLFlcGomy4Fg3CEN4922LZp&$qq9*x)dd(<#$;Qvn21 zrt8~fxstSorDb!bSOJ3S)zfiA$yX@2LQSNtde@zPu>$m&J&+`^N17j?#q3U$}lT zOMGo%LgP=Q(lU6b=yw*`Pa)I&Q)6I3$pvlC8(&SOWpEhD=`_eAsQ`j0IJ)S*;J2vY z7Jhnzd?^*p;4qTYN%!GY0Kue-uBT6z)6cRCKRsP3i8^`=O<|N#EmUVze=8Nh;4qTY z$@nL!0D{RFPux8etO2AO+_;}jO29E-JA*_m~>HY@#&%pQFh^{r~A27G=sxP zPAA>(qyh*gU6crXx*WNeU3j1F=My6NX)2mv^jWzjs|Ot0)1lCvhWm0Vg27=Vr&Ew0 zqyh-0Ae>P9f^Z&LcHyU2@aL&$28WTHPR2h=1uz&xUkZ>+L2qsQo4QXB3DNd_TgTVH zNWY!L-`@5PV}rv;PCNQtZU5N7NWY!v?`V66{=7L7YV2Cy%vpCvX45Ck?>iMdbU~8h z-_cIOspv&QwDZ5S<7;4~UmlJ0L;2HfZ{A83yr6s90KPvJ!r(BH)6U@bwtsA3q~Ebu zxD4XAbbJL$KA6qy!kqIV?Roo6E;ZEJ1%VSM=v(sx5;+}ILZo#Tym5X~9xe{5vzdDp zXST&@J|DKf6(#Wor^L(VC*`viQ{yin7#IG>mg;#}rRnxfLFW0S_hIdE8W-*AcVuDX z^*FH*;&$;`y_nQx~L?E^!yRgb94wK&jp{xog(H# zHB6L@-%bxjZ)Ff5#=AvhVMWl~TZ8Rm`nVzJJYg0#?n;J2*t}mc;?Jfd+@}xZ4}s9rp^-Hb z6+Mm|)zVkTDuO#RQ9V9JJ)HG9lwQ_zCK0s$Kme-nd9uMgXY@JTrG>FuLn-Z)8xPRr zjW6;OzgV9S>GNC3r}`(Cxg)^#meP$sL|p$msz6@7`3^xx;(k_E&S%g$jUE)<)fI^; zmF+IB{vib`tfDYjRa3m7>k&)L7#&=&_>TA`s$TNF+Z{vk(W>aA3f&_Mwz=xL*mud@ zCR1oG_5MQ1p4J&!*;PW>>K?AN^;GwBxZ!0b2h3SnlRj7UQc|les1yfRj8uxH2$@55 zw^^l1(R3+&++ctwVz8iz9xP(=N){pbrV^FGvId3iF7lZ5!&KAA!&Sg;pfoRM<9~6H zYdGBgAT6uc|I}AF||RSd?jxp-k2d@v%TyXgWrA*_^j^_lmEF z@eMwOvQp4T1)U!cOizJ}s1T$jcxfCzU2PW{`+RlBwhawPBNs$2&2iOb!7;yiFB&%Pd? zc+ay>{5B=;af5zhKX%gLU2{GQ3Z8Y~zAgYj;71 z%^pe`ySm-IdbDX1*F*i=mRG8e-Q!MuGvZzGto1ejjT}ea%S-XSz*s@IWZsDF_0(9p zl~hxoxAD2*_e^Ux(s+3a;Tg99Ekw~of!#KoJRD4FdO*}3pGZsBg3?&vGA_m+P~AVx z5993%a-z?u6myx&-i?P}cG|_qv$5n&c#{yOT(XjNjLzcT5*9ylT@G2R=@t zloq~jt!%0z{6Us`z4KYrgoQA4`#d?)q-9Ot0|zR#M7 z_t^iT&UyuYQ~A_t!<2-K0Esow4t0Cs@<)+H(BFO%vA{DBlUB)|v4a zTCA7cv*|6$v-Gjk-ZX*0me4{?T&N(sT9CsZzVeO+Lv*St=C*I)j9&;3dZ zkG%4ZPb!taP8@Xa#3zaBP!mTh=+AQc{_F3$zBRGjQcirNi% ztdNiwA>Y|Xo+u=XKFE99$TNiGs14*pZRGhv?rg{{ZRCYQVugv2PqvXwA$iFGba@J^@kbiC?5zS`CM-5rLHmMQ3Z)SX!AxGLsn8?idKOoCu zqt-@>_Qro{$b;I*zY2-ug^)+Lk^dtk`zny9w~=|i$KP#8o`Lbb*(W68UqWV{mmuc~ z*)rr+?T`zEJkyZ3wvmg4Jj#%7Ya@3Oaz8`f+eQuvxhp?G^nj)xW|otgS)#A;5nsg5 zIJ+M2nfU4HxA+|S!LV%4?>zajHQ1ittK`S|{`3qV0w2Fwo^O$7lGj&-xh9SIvM{eo zW4r4tYMm?U|(eDe7RSzj3SpyKED{D*1N#b#3GKJtCjmoWWR(U!xGeVU)V| zOOj88xKbg$vQ3Ci0bZ*BC}vDcq7&d61wa%$Ex;F4gNy9eVPC*1$fTW1h`%S z7ClXX>lA<*Pb)*Jo|h>E$2dMjy9bSu?w050+n&Ce;zbxCj^8c6cTM+;I`wZVz?DxE z;FScZo-wrttpDC8kHfd)F)5Ed+hzQcK9{yXzo^flsnJxN_>FitJFBZ3e?x~DB_Y1& z&<7a*IKX%o*kek{t(eU1{Fj0Cr}g|yT-J<=Z8zZXZX?BEJ+u4@E$P*PLd-42a(6x` z8nbFU4R_zR{_`#KINSDDZISqhnT65i=8}cV8>2Y5yxSEyAHNrWe>OjuS-6)ghWLL} zkTR^L@c)+kvNqfFkYwVj-7up0*SFdt`o4YN)EB#xz3{%7V{h&Bn>JjZru?pYMnUoGsGMs$cDKv&Jo~h?dX5WV zn+s1TZpUiPI2ga7)22iAkyLHIr@nOjZRzllEz3J}m~hQaolKP(Pd0$ItO*i@cfMQ84G)0Q&#Ba3cy7skR)Iu>j! zss5u+UxcJTmu6mlr>no@6uVH<2dMuB7J4p+W#ZEyi27jTi0ge@x;=~AmwMSojX0kb z4G)>jGidFKRMQebR5~n?=jkM(^P{RZ2xs!aS#~xP6HkB5v%ritHj%|pe73>20WX;4 zKiI#a`$?p3ujo_OVfwl02i|y93^x?cC@x9kZi) z6J0ICbluBBL5#AzutE{wO5)CQHB6nG3cI+%o)$=37HU!=?7zRX)_ zm1acl1MIv}5I%VdF-7QMKWVaUaz9vl#9-K9^{SbI!Ba zN@*(o{5D?iG)SS8r(-&qk6|{-iiANnlXVS7k85RKf?DmD>-G zzG^4DJ{S&g9#t6v9vF+!z(5;M@ed~c=eEs{J$xs=K6w03_O7CbDJd47mgNhGd#YUS zI0<#4F=qnBl_{6`Bux0{MfdZJ?!y*4R%H76?X*YW5QEXrl%oF{vajxfRdw|(l+E>W z!K7KT(q#7ov%|}tgO=H=iMe1+^c$S|%1U38cDn7Hk+V5t!5TMb7^j@85i35Q z=>3JE{$gLj?$TC@%fcZn)D=wsfx`zL&dxghMq@ouD0O7RAl^xX_yQVJnnzU@l_wcg zwko^Yr52SS`XL!Pv|T~d+=vdip4KdxWi8(ZCTM8RCFSVH#3ZZCZ4DhOGfxVY~VyahNyY#Xd4~82_j?Wxfh0 z`FH-`LBLn=FL(SS{PbLgyJ73JT-$wkXtVgv6e9gq-RR&_Qca=Vbm3o$kuf*V{KUdIPCddVR~^ zX^}JncpynO^87Wst2&8QW)8ZE(3r+*?3?`mg0Nnz0{)u3PV8B$wpt~t6t?n-1!QU=XxE=c09fLOUhL5FW8m1I*I9u z8Vcd`O*erHd==thev7h-u2rO`5YOhjRw+5aXu)=Do*X3oEtq+klAU|_-O*vXVVT+; zh0#w$4Swz!bi6&4aC?DynNL0Jc%!{svO`G#ttmGV4#up4N~%r7y7=22_OMy-^D?UW z#>-`^y&yGKN+%eFmBTLV&InO(E#p$Kn;au6*90<#u){QleHz0%OvCQCWHYlNdGe?X zmg(oYVPtgQzhF%{jILIti>Nkp9fre&=un1RSK+zhDwsR$e27p+aAPfMpOM)-}M3f*50D*YT#Vh({T zI!qmk`sEBp{|VCc_*X&&Ul#v0f=4-sx$ld(qPGw?0oVpd^T7Mf?32?rvu=F%WJY%B z?0qCxM;=xQg7`nkgGX15X=+=cgoza_B~d1(Smhw-Q#he5irU=RsLd|86q6-0Y=EB- zTP1?{_ZIFFej}7Z^6?*B^gkMUgU|;H{U?Y1v!OQ%jcy26vmN>`hQ7Rw{;Na(&Cpl0 z(f{qxf5%ZRuEO0>E&kzx{?iA&`e}mx%LUzv6UNu_>nid;4$UP7(3^y|ip)@N1#vG< zolD@a$3v|))1hbKFagDP8hS9cE)L>8kG|QXt;>UWz$bF6Ph>XVp$T$&% z5JP-8lnW5utX=l6nJ<=7nqiChPLgSNmR>XUeRX0y$NVqGzcw1gflrwJD#xKEEL0dP zK=d1>IrinCxd*t`3TQY8xE?WIUwi1QxlR+zO7oZ$CR&1@JMZRpu-@aSgtdAY?*cj- zb8x~D90$DiJ#;<1L@+v-y(@Z>jG`5UDOYEu(1r;nl`#(%D{@cr#kDjxEA?Wwxf{`{ z1yr(@1MnD?LKos!;~!-0gtQPx_(Ti%0dqSQE5y4d7@j#%Q;cD+XgDbFihw?g?r3;t z0-5n5hjmB7k7Q#z67C5w^=e1LiwTyEZ&Nac6cjBoq#a=Ik+mah8@xT$zLE`ItVClo z%9^svnMSDp(ysS-D^Ue6yXl=Vzc#}}nYv@b6fgdrHeD6Q7g0r?ZR4^d0LD=0VjVN% z*eUZuO5mk{kEZznt$=QBC}*M-$=s03aDOrLHKm5|A+qrXFsMzqm^^ov3dWhWz6$ZBO3z0q#2fW>q@G%@Dg~Ei z4bUO$9po}0-F=&jp|5XHj$l&shlS7hGLq3)^{#yLNn4&sEMz^seguZ`x#pYIdyHH+l#QK zWzdt4i|Gt_kdq9A;$D@@z&Mv@mw~k=$CBLFs_q8&d7Z#qKF<0q*hrM)oMj;tFWpLGo&Zh@R{V*dEC$)Fx;0?(= zuQz25{z(G=J+seVGfaoz!t@l9nl##6$)0qfxD$@W&E4C(crt(p6A8iq z=_ecxed;gKv+}b{cvtg!>fTZgLGuQI%EW`pCuqJ-SY;Iik!CELl3G?a(SAO2wM#ll zd;9Yko9t>TFGqAuHn2X&&}JWpuzcM(XtK@nx%*Dg2%tl(*+uxi=EIcIs%7N` znzvG^In1Fg{nSN*XP#f-t^tI$Fp5j;q_m z;G8=piVnHM_yVGA>!(xkFm7zuZ}#iuw{D7`V+h4_i6N{l2uvX8irn$j1~A%>$~Zo# zzS!64NeVxuoy8@^U!$igR%2FxofeE47I*7RS12_4F2(_5}8Gw(BP)3dgx_+Z)oQ z2xGCT+xq?4{KRH&+H-n-Qnv_W@!H$^NtYrtu6A2LDPM%f+HUJ7b&D_-qrPqZq#+T; z_uw~$(4-^bc}S70XJk+CJt}31RBw6Ho|10)^VlJGBIbe*UN4gkW^>=~bbgxN>9{~< zQ!|X;MH;nTd^S@4uxuQDo7BQsTymO%4J9}X~27| zaRF;Pr<5=Um-o|#V#`x)=o3gy-DXTRLF?X#Pil9clvEw#vCp2ELJmYXht>YFl1M_=c!JOUD=%xU|%+NS4~= z09*6BXkB{~kw!PlC;B~M;y0_9uAyr$_G#tg+f-(cU6D1y$rd^pusc$S4#M};ud+5S z#?oQO4$0Me69V8}IhF5pM0c$7VPjV&`osj!VXQq`-_7NUtK4`qb<%xT`#^$S=F(8- z-bS$DEvk-QGrJvNYyJ*?n_Qo#it>rL4qc6oft032d#i#d+S>rO=HJe*k0zfTM!PGC z_702o&Q3J>>@XVoelE9nS+sX|qRD56(e_EYZ^F87FLmF0l+;G~M1NG>{=^S=uEXfh z?V2tM2BO1MWtg=Hp>q{rzyWYke-Yx=ps^n(y{_fgb6gl;D6p{`ozX=5pnS0o(W+y| zE!f(8uks68_s9ub@57-tqQA8>o7x-iS1>i}2LQI_Kgh3dR{6M!{ah`}!`Y%Jp&KDuoy|@rx#qr2!f7TVHT*+F3-Nms^ z&OIe337+Eur>jvi*)U>urGhPI75pgDb)}+j{;sCEJh111)}O*=i7R#MklGpmh|)(3c5YYt7BJjx;ydda=1WUM#ncFnD(BMY#D%eIcxYmHG!c z_GK;+LIRyK2lU8WUM}h}p7sUg^If0Mv6e>II^NuD>o{|xk5I7IF$T|Wy%aY;sV|rQ zKVAAlL?2a0GrreqoR^0&r(xoymcE1N4&}+)Pf|N_D9mCcRD6nn)6Dt>z!MK=85Dm8kp6BFdh`iP|`0a`Jd(U*BU83 zkME1-r(T><5t)9URGI!(=uWQ|MZZRLX9gC!HG=VY8U>8b@##utGETY;r5i>i@@Il~ zI$#SMuYZFlc8A*ZKvH%$^7HG|cxD$tc7o>1mY7ZdgZ7Gz`YIoPj6PyU|0rTW>~CXU z%K9|^IOr8W4&4&)RM0;DxDw1A4}rhC%_8$ z2|?vS3-%Gg%mWX}HJa8q{{d-goS$rCENq=*Znkxbxw+P<=DKlyqQSFUC*bBM_2tIl zRyPiXNR9K2?R+%Of9Uf$%hCv2=a`#qoo#OP2@T9M4W8XP12;dZFPHxRxb%gHKBZbS z&X3YKr|ISTrl(G>?SDjG;rb6lYP{tzV=NzEK~Xp|bU<_^U+uOhsUwvX4cRiFJf}T( zC~ZG?Z1B^Aq1@a-%PUpEs@I;Kr5A*s6cU3hwJ9&HZUp($y-BwaI>@vE1zTSzX~L4p_{A`2j(ks|y9T10 zR6)s!n$%B!+s?DUR2JLLvvV}h?stpN-bI@}&j#^Nm>})d!KV6i`%`Xv96jRcn}-l> zy?mv)|A)0Vfs?DK_Q!kfy?t-5lj-T1?#WD&PC{n5^cIoRB`cF!ci|L31idT#A? z>eQ)Ir%s)!a;DeIH$L5vua2Y3#6372;OkD&r*t0ck@=DVI*!n$a6W#_ls_eT?dc8j zb*8V7Z+sdT8>3z=AJ@0TJvjYe__|Z{Y5B0a=6uWmE&m*73SKG$r~vv|e>ZsKH2vjv z#L&!$6WclNVGjBwhek+_&WMxRIljUi^h*wnkR0s@@Te`|aol%tVut_+kE8864(-N2 z*=uC`1?a!ez(8r+J6o_e@V|_%;N~%L zRNE3(K>{8(^J^}a8i^&4P3*auA4heNpZMs?f7j0QA7BMHpvl3Pk*u&?=T_>BpG0}K z#Yg8f0kFk%nD?2|lfSshk2^&pSehS<7W1Mse1i7^`MkwQU%HT#%O5WSd89?|t2{+m zr8rFeQt_U!!NY=<*(IGVZ|eM{J6+lo^KPq*8GC(_vH zWqpn3e6Z{Qbkl^XB3QQnAwbNh1aHR|k8V`cu5FrH=^03yjP)c|^F$TG@OKOl z?B-V(`VoYZ?%9s}@qH%Jj>1yYgm1K(U_e}MBA#nSXxj|n>8_S#Ot#|MI$L~7*t#si zPD%rC#vqx{whc&2y@AljW}@JOqKz7wtx-johqkl0k- zhAp#%3~uk?$VMK{6PxknJVD`#=Hx0|IVADJ-i=XuI{xS=g&OLs0Ao2`a!5Dc&R|_5 z_|LG@B+gm8EZs=ICyXk;aaYsN-23=qgVzQI6cjKkAG}8hTdytJUyZ@Jie$gk3n4FV=+Rk z>x2d5y4sfV@i3ieO$&Hvn6qM6U{M3hRw0ZRJe~&Feool%>H;!VSLrjic1oV8lF4=j zs)R6|h|ipCck|>a1e_?sfugxc_qgNVjbiwUG#;$crAy6{D@9I6wX(%_O)FlpQUN$FO@$iO+Yk|GsK8DJ&M_kJD&PBQ85BdZ&5cVvWy^HL| z(IE~MdvcGZ%=t!MggpNM3eM3dqV9nF4zX(GKoX5MZiai zb!S+K0DYiauEG#enKvf1^2Rl9JUszLM`vZ*0jB1aj?TL|x0TJ6Y!iJS{2RO; zU=>$?qm@Z2^k0Jp&6e{K$GUh< zpW!(W)m(smb|~NeGRkf^(JQ~{jm;}7zZsU>1#oXta2tS{gmrI^IcsqNh9{T3!c1pX zJGPZG?QO34BO|Ie@6lgGQX`K4LkjI{CVcq-#P?_M-5@uXn+ZyC6ThXH2 zXnRF(vIehOJCeJgECwnM{6CJ=-{<9M>o3uN&HFJgVA2Y1MAdHa0DMqUZAN=l85~(- zT#Z4$L6fNHT59|zOt+QlbJap)`ZlJpnpR%(#@3G@%qypg=KpZ>eN-o#4?uUZevu$z zWk6C1dSvZ!0|q5d9b<^U8T65I4{^`{@*D`LvG?K!mK2+~P)2zP6qBtCCgpuXsUCdY zFb8Ax^~@8;AgMlxLpFei0^>Rnz{CO-G`|i+fYE7DrD##EhnIW4foSM4;1Uj{2k0Js zf)d-Tg^JQEEUp7GJe8=ZX+efjJ8K~Y*m@~E7braWM8XOv4J8d6mD%q6N-JO(DS9FBXKiM&2!aw6mtXmzCxZA)frRO90JLtxp6 zKPs@4d-g)bu{~l-Ud-pp>0TeJZwcM^#g_acbUQuGSM^AmW9-IHQ9`)=^&s$CUWc2( z@a3~j8y|vW6S{RIcs2O|*4z&>$t{|smfrXX6X0$MY!65-+qbbUla-nVA8EoR*8d!6 z4(vz9`v|_zat<6#PqK>Y9PcK6F&zAFvX%m0&mbsVW~xiHJLNS#j(t>`-$K-tgphNp z8+$p*`!&mRf+L}c!ov+7%-`|ot6RWB7XBLGw+tN?9`im8L(>bkA}3$C*en#SiF+*< z`m9!R(QRq^;M+*P{5}-EifS&|qX6#&Gv)e%y3607Zt6%kVZF({kj?USrmvN+{~hF? z#+&q_bGZgzcZxpMxx`iH!T|q!Y!MWWgi>*3qgP|G-=chL>SYK`!KmN%MH%xDICaLl zf}sh|cTr5r^~RsvSw7LDynuYallo5YtnXp1kD;i~o2|a?d{WfkK$|*})a`oq>ziVaf{U z2!t$XXyd-<*0~nG4(0uU<;{?<>${e(Z8^A|g4W0p7qluo!R^UkxkZKRLIFi%=2*e2 zk)XP$@edA4itZXQQ*;MhT$|m8?;oS>r5<}Z%1BSV15vP2$l?5%3df1BeLo7iy0KQ0Hhy3 z0rFRQp1h3f5|LdDb-_57y*cJe=i`Dle*oT%Z^syy{psuB*zR7;9rYie&e1Cw<0nz3 zD!Rfwv=4Ay65Yt60t=))()jod;R0`lTHW>M5?Ge80Qf}zNQIMV&l>K?kFFV+_}oDUh;ceEw?84$J7T6<6Q1DJ_)Pn6{7ni(y+C(3Z0xv(cH zMpKYohyC5Ot+vdWe`(RJ_ANROr?k25EIY&XLzS9?AA&^Fl_k2s&>JcA<_WBTan~Xa zuokI>Q$>v$ji*>K@Q z7TKm<3PJaRQGjMGIngHNnba~kux%?(!?Q$_of;_WpD+$%z}5@WKjD1q?8+y+9X&(y zB)Bo11VsUK-6`!P8`>xBDD9u-qiD@X_lKMnQAd3<+Ewj-dRc6r>$RV-Cb$#>85#x^ z#!PdAAEU6bB2gmy#VZTVOH}v%F7Pt!-H5nic0!tuA#w0H{xE_PL>Tb|BepRD12KR- zM2awQEUw1)|A4Q7=97qq3QOj;3bc+gv2jXbCpFIks)MKC8k<$?7@jMMjqRoF8Q%C4 zR>yVD0J{9?wuk_Z8a|-$Nni(C{0oAf;%fj_Ip2?P1)~# z@^z+fkZ*kY1M09u1r|45qG71UB_bGX;7x!Xj1tfowBfMA4`od?6e9%SWuA}K(WELDBQ^(Y2zYt z(F~m?W*IEsDOQ$Jbq`BE5f*j@Ez5+Zlkjj`%fw|!+Q%v?t6be_c6Brnl^Vtyh>?y{ zBMUL52$#Rodzc^{pOOlB5a;a!@#Vi4kl8Z&a2(N-rGCYAn&+bLv~ehd<&EJhI8m_G zev$^ratT(vk;SeTdd$$h*rT=c#^Jb|ABEIuGgvy9AgUV zjX9$3P2<=nvw4BYqA0Vzm9mh~Ijg8|oe#M}y_kodB?P!x`dn7^YkH2i{L2BgHFY-W z+zEceK+_ki@uh5xVSE|VU{~nhz=hfBvHb?ZQX9`gK1j2_MZVgg1HBVWi7rMATjHn-qPPfY$sI0;gGEdATk*Wz_La-3Qhwc9jL1U(^r=bj-_UHbQ z;25X8y2?sR+aQP%?YQ(sN~$i>FM5N$Sm~#M7P|sF;jnIJSFo9XXXQ7~+RPT}*{*W) zANafBQZ3Yog6aXC2(FKe5>N0?X6g+3mkA>H>tWE03mN`R3qM_-e;4ii7yHzfm8&!& zWy>e+*5V%5t}ZqPf`21B_bI&^R<)r=T^dO%3^&-0WEokhKMz;d!(mFwKm7`AEndib z+s;KGMOKmjpj}nv1NJxKBIDM2!FS0=2DbMg_1-4f1gcqwlrsY13Z0ayU5AsC*7gFf zbulL=i{+eoGtI&cJI#Ca>|V{wwH2*_03W$9FsGkY%5|OrCP(0`|0L1vf+H z(5u&*SE0R`Z3As}L;L7Mf@SGB5?Di-djl-ok1@7PWkoFfuS9mf@^%Lom&NIG(L|W) zoWqtvz>x2yc44_=7qKHutM(@JYhs)ireT)y4$?>*$~mu{W^Q*m5{EP|Z>O12m&Abu z63TELgSK&A;8x-DLWi_ypFo2#gsAvbN$fhhIJZ)d3B|FtC*{=6lRhXP4Ad9`16&A`|m`q(57AXz{ zydn$`hw|PJv)QdWYOZdFHU9)mrUufM+z3cnC7T>tTimCb93DSDq2tSO`|&91JHgKS zG1P?fP9KDQNDQk#BX_0jRd-MD0p1ZWz=%lYT_hX|Gq}@h+G!KG3Xtu=wei=vKK4N? zZojvE5OV5B&hy`kD$pM7UG^#ESLi!2Ul3WCXPP&H@Wd2NgJ1*<*#najSM$&O|Ha2ldH|T?0X0u50k40@saZt@6zC{q5p&G|33YfHf{vK zGxoWp0hcy@w!=8mDc2Y_`^ye)0W6}j@cV$VGR~&U6SUqg%HMI_!?LLXiV_=Y*~Rd4 zC|Zs`?6lN3?4&DnZ*eCn?BH|gEhs>Wdic-(9FdH6QqN1BkAwEk!sl##Xaa^{6dRS_ zby@3U{Pb~Hr(-3v-y4;qEs&1ztS^H+H&~%mjaO?qOZ3Im{zTW1djpO*@!oj(DEdw` zf|3C;jf{sdk4W}BK2t!cmcD=SIopz8is+TW@p%rW^>77{Hm)@0Kw4x$V?$Z_eAMU4 zxct0!bFaJcB2aU|zXN`#KzG~HBB3uJBx234%Hh$>gxKai#d;1{7kr6z$5b2{1xOPQ2sI*mxR?2f;LQB|1 zF~rman+u@~DGEEwEsBc9YiNtCG>Wu!4dBK-;~{N9HQhy9?93KEmwsdygUrxYzC~Nu z#Yi==JrV+{=+tVW=!AyLq|T#YEcZhL`nwegh#D`>(XtP@{aO%$wjE1lwNm*emky8>m#I3$1U z7>C$yYOR-dS>J9S-36)4s4vsa1+xqQzDcLMtnbYKxIUt~qkVXCW2g18Yg_ZpF1vO{ z`)1U~K77IL`@nzPzB%3Pd;UM^zaRd`_4Revmy5KIN=W;=sxmqa}SE)sR~SKZ@TtBJxzTGw=Kxcb^~!K7tp zaP5-#XTT+V21YmG2vB@!HBq=YCYqA24OgxW7t}X9gKL*WI|D8fZ4<^jop5P2QMgFU znyw93e;cl|b`IAriF*cIB<>~*^*Z6wYNBwF<~5zdbq?q&Pq?~7ffgUxrHGO-^L|37 zeIufDFfPvPU?kyuKG4R)nLEeBE`_rhc%X3B{B1WLw3;X$D6?rgg^Tm~U>mN}cMezn zrd>=P2Cnveek|a+s0oXo&JNOgqJZ_YgCyMxn^$%z^334#6nQ$jhq6t`=gDshZ9JU2 zb37dP0`bt6AM$J-4A4RdbX;pSQ8Wy+(zWTP*oN!8ox}Ck{}`_0NH;JD>x4_IiNZBV zxFnsz#qra{9eI{WGVvz7Wx`qk|~pnensB`gTd0GwKu4?5K}4XzJU9_Tf5j z$lr1;eS1xJX;hAUWEc2mX2qf$VjE54JeXf#EgCx7IbL}Euq+ea-tG_$z)?M2bM8{! z+9heu7#AeX4m6Mk!*Q|8`gTcjGwLJBb<{`N3hTQGc%M5P-q%Nky!6dG=R>mWs$x5s z=4WjT`u}PRA|dMMn575!cd?BK?XFDKN|YNrt_-k}x4##@hpu+nhkC$;d?p1i>*tW>*!c+ zZK4dS2h0{*>sp~_wL+1Enz_~)v@jo4M;eF})C;vd)Pl4;)I6xCReY=VRtQSql19@3 z$jc0Dl)qXfQRZo-xX7g7ildd{*Rq&>wW^JNNS3UT=Sgxjfd&|weH8jZNzLQvHLiHcHdMS&jn<{{wa|mtt zJUbR!2wL>f@9xUqS=fmHcRw1mic18hRgb-3{0J2Ga$bou2l+Ekd=JU8wmh8ydnmbt zsnTQToyLXjLGS~#7+Xkd`3A;)Xi~Dd0C!p7?jP62>7nqN44!<~lpdK+}xg1|mLF~==P2+bXe(%I@Eq;6|E=2O{Evy_tT9#SQ-9xy8ou`N9aCF(>zQ!2Po1!KsT=MV)_T^ zK3l`TO84(I{2{tI3XtY&bmR6prvC=r9AR+ZNB8eE{5y1WpdkE*bpKJqzeP6(AHwgV z8~cPT=eu-sEW!OFy0HVu@U3)ne8T;GxG&oD7mfG|Bgg^}@jbXN-t?SC+`|Ym3PgOH z?j;)jWxB~)5dKZN7i#$3bnma>chbFB!%0#|`WS;a0^$BK-J=@4O{1S+5JxSdAE%ph z4BSuAO`Zw&lXUMU;Ss{7bigsiHyrwx#a>iLf-@qc#}@L};lnY!2U0G=*m2qeS4Vit z!5P|1Ft{c zmFp!n5+4~Ku&a2k>h)+IHkM7KRm3(kF5vn&2d5fM$?06|Qf>2yJ(F-!nW9yK1;y@zj zk37Ch2%|*EHt^IP+*~eDZkRp(iy9AmwSqs7#i9)I^@H#oMOk+9ZiEh`U_KRm2QG7e zj5*Km;yQp!{u>+ZR|Coo;Q`x@^ZY1L=b1um(TkL3rLqOA>;Nr3EL<##=R$634pVpn zzJd~yVWXdqmEtRxjA(n~vTrj+7_n#j2}1E@5a0%DY8_;u+B{24B1dYrT}c(MosY3N zTClfFGZN>F_~Bmd2+ocSTSF#Z!?%nU!-O~@=jfeIn=f1%cfI%3{^+@zFC2$Wh&Obq zKY$LfTq)D_>@5I{d&%G}F}!IDTLjj^d#9tdnczvzqRIBVjF4MZesA4{GFyP;X)}udyJvuQ_J-D-eT;C$_1oMDnUX?2t0SpC& zVbD%!6xL&{ihnvF77X)|1$W6TVDHe-;dZrPcp5|mLx-P`mH-d=&?Wfp(Z<1fT`(9g zn^HX-Z}AxzT}qH?%xW%EE0-$xD60o`Gh6x z(+cHAPgufUtx)dZhH1xJq0|?Y7sI0I25>UiUD8|={L2ho$WdZ~{$EUmi)MdLz7{c= zu%{;(!%N^O-r@@PSJJQaO<_#!ogP89>Wi!?79;kc;?i?@DO^M}^(sWTbs9VG&6;7f z$)x^r<6$M!3<)D%ga}wxXg!>ej2$u)j(e6r&WyMr8EpbD?RV{ZFP{*2?% z88NsDlY(2(@9!fOy0g@^281OL6#VDW8n9)I6vnjrW~|!TPRb3K z@nTv02JyoxLXL*Z3cP$ zy+vLe^#d3#@8xJ`f2*zHZM4brIdvf(|8<7m}8u&$XoCjgEhrrF7Fr%yU_@JmUX2*mkKLtNsaf{PV;d--mT8j0N1|-jikY~#5dlJ zG3WXpW0+gsY)@h$w!n~ZzNgm-Zh_tH#?^SC5h7i0+&`8_e_(g{R@BZD{hRP*Mf^f6 z*~|}Kw|Ezl*^S*lZr1Y{S4@D&WPX7>eY57yu6ceM5 zHFG7S0k~cdrgf$$d;}8om(@NmtO+Fsh+-+i*`#vyZ1@qa&B!{6#jY`O$M$ww%TW)rr9e@1;fa{i6s8 z0DPJNu7PPP!v{)f1rY&X)PRfzoP?xzN>;JQp4Se2MndJ1o)HZ_6lw30&{9(CVeT(W zh%C=d?F_wJL;r}89tpiiL%B4MgnmUsxiF7}-m9Tpl`m-5cAtiFNp3=6W$b@dL#eVT zrP_(Vroq%SL<+uNL#bylp&a{qhnb8~+kXH_aGX*$X8wl*%5tMk{<@Yx%|@i$Z)hlW zB9YJsHI%vn1Mu|#_#uSamj4!f{EMNb>g%!WO$(8x)TiLHRS#>{#gSlk!BY}k%C!@I zQxj4{5Q544k7zLU3Sltw|3vefE@a!|GNIv3KAia>*BDJ@iKeN|4bH$AyWmk_b zCC$~-ywIQyI+JA(UOMBLs~)Ofy}2bMeA8+y=Kq=z^$1liemCO0$a?oKqu|Gj-siQsd>VfgiRSd!F2;$yxb;#9gKJ=E9 zs1~|G14UGa&>@mcRD{8$2r~?G>TSrJ_D0qoLivDl!V&mEA0_&;H)G0Q0r!FUQO8!o z7uP`X%8S_k00Udhv5BMb#}sca5tA9p2@WO1v&I}QG3Jyej=n&mK|2M)(R@m7&aUQi zDY+gygA45f95sk0;2@I(bY$(M6Tsv=ntfFz+K zpRjp@&)G8o;LfqhIx9Xeosq+p9Jo3TBbj(dvdvS1;d0ic+(k@?7Yro8Qqr3Wm?J3kz|)elC7uIgr^G`Bm$5nbgA<7 z<)fi|jT13jFneG|Wp!A^ka%(G%ND^>WpX{PgV{@zr1RQdcGLW}_qXsaXnRQ~k;Lq< zNMd%5@nQ|7%q*js=_fi%5x?;2q{fd~wyB0Gge|fj!DmBc>B} zms3B-Jns`-Dr*Ctr+F1m)7$=Q!KO5c$QHv$!~HK?IEdawbi|UJd&2m(VqeKV^H8 z$igPWq|owGTgMDZHt%3W=|8?RpTp&S{-X$A>;IT#j4?ZTT0FL|jl00fqn&XqY_a$( z;@wGWuxuH|#0>y4r?2Bj_l5X~M>wkbbvuvju;-JGepCI)T*_a{#Esf5crr_w;el`piq)@IgR1g@ z>x(MJ$0F`oYBz8Y;+byg61vl_=O4*s76uvAt2zQHAHE0UZ#l=G-c}77hXrd-bq}i= zw@RzV7sYLTCPHU+aXaFcbsDZQQE9!Fc0_7lu?2A0Rokh>;{%KpCIi~x4tv@vmG@j^ zl`?x~t?GXG)-RYSqJFD1Tz@g*>Jt+Q@gBJ698_MPYn2YHA3X6FjApBJNWE;8j;Ie# z{0v@bi+xcGe(!T(_RyN<*9Qes>qy7uK;?Ixxl>^t%9AP+UjxZcF zhu;-9&)OX2)22P*L63L!&)E~0aio8aVE^nh@e1)q8+5<~9y*l%84Mxo= zL9k1Z6UmFMk){X(Ff7#k?1TCTLZbj^o0%0CR<5~k^mXMt44#i@fEO4ZlN{G(W! zFj(KyVA(g=T^P=TrZ+H;2^KNo6MI!_9tQtV%e7m}CB%o+LX1c)LWMOSsTVShUCO|@ zxb2+aPK90SMJNR*IFoRaCBr!fPBL6L``{$^gfmxeyeedfwyu2c1$$HGPJT$e1r=yOJ zb=-(q$6=YFvF&vnmQ94WV+nT%p#24Y)Ywkp_ae9t!0&pv7vTF4zE9wX-6NiAjZN$$ z4qbogJu50;*9W@v?gBM?4*}atf$C ziKL+5Rb>h~WZ@K0krGKEWL889I%M4>lYl<87b2-Obi2zJQY3_QVEq_SlMyMMq$~B) zAq%B|%9%(C61AkDBcHNyp(>R+A+p+2u4bHN)uyi&c7RH$Ngh;$Tv?NGg$T0_s|Jwp!!(<7UIM*0`zJg>Vrl z7ptZW?ZTYtMHngW+2#9jtiGb5w$SxBF54k}E7{vZqW%=vmOh_R#D2E9xkOetxI%IA z9?V1jTgcg<{Na%cKi{KTh!!)uD_YIFGkGBS;`}f&NA$_6HL=C zXKi4^1e0$AG!FX&dIC2Wq^kCSOp>^40BsFcqCfD;l!eC({QJUy*^ty{6#>7zZ&1um z;BYh=(S?}(FayUB$-Q2U+z~`r=XOFwZDt2Vn!k8Tq;r?T^hJos^q>+zeY~%T4(#aF zPM<{eS%q{lQ#m1CB~tgVFTmgZ>O=Uus1DJfbU;0WzgN_8&roS>+$m-&zE>?ajsn{H zMQ% zs>9P$R^u5G%(syv90hIEE8=$_#~VbBzm-t~iS7hHKY-|Fw$2u(` z_J*iFfT2NKDZ2aP=IiQr;%^v3GpeAnq_l8+sJ};B;s1=BLRiPd1IUo`?9~vsVqQMk zpY)$WBupoyt12D>eu@BhEpEYw7AXPMN$J)Qg<2Edwvf@Ive$m>kyHY5+5T`fZ$)!P z6TvNPRkE<`#9X4V40kjVMYH5fCyV20=z7uuVkOz{8fWvfEC)u@x62n#$H>ayz?d+3pVuY2rCV{wC5Y2|7%#+~=>oZOtkvejW@ z=5%*xU$U0&cXEB&FGHrAjF;V{&SdeFY*z!!4As%x%1d$2(R#4h+I)al+hGeJpOPBM zU1n`zS5@8IW!0bl_5AaKKppWvuk5A`RN~g*w{U#XE{a+HppHk-Ol&2`V+SvYj{gYL z)x!Py9s>G|YH^EJcXxFa>puwU>}J<5fEr$Sg$|hC?>HXZ;5Qrz%|EH<5A>j|ls8_D zFaOPG0K|zwTV#~u>|-}#A?nBkIU9yok0(vaO5CPWrK_d(u?C?cQ-DYRPm94A8!fdb zCm(M70&z2dp~+UKP@(W!v7-U|zU(t4L!^5Et;4m4>X)j7cY`ydOCDn6(2Ph=541qS zM*IfO3m?LG-4Eps;MTAS97Ms&=NpL24B+0uZuY+iRHrinuc!~s3>+Je&&@lPIhOw| z6owg43e7g3g%3>hX@0;1f6Q+(_$kw1_jyKrjD0Bjg6GCm6sW8)`S zjl*uk^z}`otwAv*4fLu>FL)Fo3+iLdC-EI!Aa&+({bJVhrCe9a&A~#vW_hrVj#M@i zqASKvv>Gp-r5kv)FoG~nuIVBp&y}P3WV4+$C|1O zQz^H!`#2;z|6x=K-Jq*HDdCoCtFg5ZYr+x<5;5*u2NN3Wq}mFMv1b;ykZP?x#t+vm zhfHGQM>#MaM)tw_NMa#%Lozu)2zJ2!?4)X5%Zd3K?D(tDTi7*MC1iQ_x^=i{{UY_R zx(tsjRL*cq>&J^$<0rV6P&%}Fv|W@VH*8z!e8&B{6}P8dXvbYT-fuNdhcL4Ay=;`866SzQaCbPh*;$^EJ5H`XN>yTCVgDniMUTJClKt$E|s~q5!&S&H~^&zdrF zUTJ;Zt;}1HsVpreGnH})H*1cTGMUQ4QWnphdYMYGaRP{QCQF9t;A~yLC+hEBAL$W| zF4l(QX_|k=%=9Sf^ew1VXC|T3XMu<*%9@h88?l0>ZjvKn#z#ZsMJQrvpF!!6F5fCm zAZz@rPCQrq88nQ0(^i85asO&qXk_&lDS!Fb)PuDrd(_qSQ&;mfE|P22zM#{_L+xgx z-B#>aw0o6|PZ1JqTBa|<>$6;sW}}PSrG{lf2ZE^NxV-FJfsRC;ruAefEWaOCzCvV> z->ujdl+Ax(Ya+lbk4`jJBYAsB{nX(!=Cr)j+*^&o&|k}1jgin(wT2M4sO`lGs>beZ z?=ZZTws$_f%i7*~<;LFd84>_4Y|$RCmU(63Zh|eWDIHEo?UhD1A=u+f-Rct1+kxmk zPV9GK&|+f06Q6SP-|G1%J$R{<%h_3GgX(w}kJD;hNVNU^%<93P?E+_$gj{C$KYG zaJJwPkTqy?y3&X7dl0#&8xOvZ3=ppUgW<3J0@vF1Y%g5Vy4DtD>A9W$*!-n>r|lVY zWj#5%b?=ttKUp_u$cdp*u{EU6$xpJ*RCSpv&w)96F0}Dbbdw!QjkhEAih47lGy#`3 zI6=V69xZ)-K3(0%i)OuVCs{o$POiPg@u{&!>3=%vv1Fs7eTY=CHUPngbkCg#{A7tV&%?Ui&Pk+V5EPUYKanW=<^s>(4k>khOJ->J_K zDZIB;9Fd66h7sa`h3w<#0;_olI>6s1-6!{3z5_5FL|pou_fwECJkI{BFrA8A5gaOg zIe@-9jD6_@k0D*nDP*>tfw05bpU-H2f(Nv&Dc)J;s#DBtTeQQ>g|c4ZpD63yzzbrF zRw+$bvD0FUu246c{<*M);y}RX!vJxpyu1|cI~eVYhwqlALrQhGl;e{y599?6DbL1D zV?x#bAkJASZGReh4{70M?)U%<5H0^FXutn6{wXkJXP6vWOS$qcUiCtWdnQZ|oA^AI zmZLRq%=3%Ln{k8F(T&-JR67ti) zw&DI2-7jgoYX?D+@q%|CxUlR+ZTIp@+r6~ZcJG-lLc1P9gIj?2#(ZGxx8kvvqRPYA zM{*8j0aiBZ;H}+i4Y!^K9HXVB!I7ZV)Myb$USu(y#>KpW10`d|6012$=Oz5puy5)g zg|s+}8JEK!Fk;}_cHBv+qHcYYYXNI;+Bs8NaVAm9ti>S1ZYzH8!tWgXCh>c%`A%F1 zM`^W>mloZuf;gIw>;CUBcH$NT+`N;_IfVh$Tf7OTB9$RD>1*1}ZDhHWCSBQ0gEVPn&?MkCvK+-obI$hMVR=s|lL3Zsnp9u8QXd8{}8 z3_z~r>Xy*Jrd^8_2M-Bi8sP)5e3w=qzwH7AlRCIYEfxdXWbE7>n-4y8(sWcq1Z% zSAhm(hZ4qy>B;Y)Klm0Szg$5dO(JZ(JDg@r8M3dx0A|e_o|U3%%Pp&TErvVJoNkpq z|2$a3mf$deP`p-%zaX`3@uyJTm8_onlekiGs2}CcuX|ppw?14c;cWDiXt$2X=aDjqLEx?U zVwet-l1BA^ciKwxto0VVfircNY0Lj)cQ+Kg#qMfKt>50d5pz_eal-vDB%1(;{bXzGp6p{(XH!2JfnuN~VD-(#XQ#;b6g;3Y_sayM1MqM*fH@hRkz z%6c7JLjxGLy6P++x|QjqJ{%|l_G!Nx)`{|YhI|vgFCh+EFOI1B|%UP8n) zhd{A-+!kA;Zg4Ch2#&*_Ol5gOU(Ee3(r0ZPQ%nZOBLefYIs#bCxbj+zXD8!wXdt1} z@%`Hd67r%tpW|*%%jU&5m1)Og2VAc2zw({Lw*$^&yYS&`C8TY9)?oE{0tj0gP>DBB zAhJT>(`ZiR2!-Et4aa!!QZ^-lBORW-l?{>N5;zow9TRswLozi89Bg(XI1zvCfJG@C z4A*Z*zqY|JXzswV9s3(#$0c7KIA+079NPi5gx%mIR3O+*Pka!$JVo&L35DW65uD5< zr-bRUl@rZl!#_Zxypw>4vlfy0cs$q-a2Ch2IOnk}7Z>ZTI^L(KVTue+MUqOEm$%T> z?kJvOko#!NQ@$VBHejCe#f~C6%E(IEQRZRHlld^_fT#W0l?>b3u8~JijGg_t@IBvJ z?2}J~ee1+NgO=jH#x_3%t;Z*cA=sdgI_++eQ4^TpVp?i27vrS5!Bo+j{nYyG-0mv= zjl}tQC7+9%TRcXvjP9!D8B_2}FbRQ%ib&x<$9z!T=I|mJ4mD%p4FV!0l|8kfnkQsg zDL9tN&Kp(uu$hGCJ>>8tN3^!#eLo7VlN+3il580=Zg3vlsw;Q&-Z$!>q@z;tU`JAUoXg5b@L4PH*Ttj6C$ zLUX%m?9g_eZtlT3iifQE&)&K)tW-w zUw#ro!a(bujV%F09(j~!#K)7!l@zwo`Ch|0kT%v+Zc==EF%OjfQqX_10I3irjOp2m zfpW|W29dyRo)4T%9|M_j#}(4<;Nt+xOS~`JEFu>t3V#pG@Q}Jm^L(4HrG8f1 z9KfNiJrOk~rCxWtI~S>%7a|Mq!KuKkPiAM^t9gx=eL8koC9U5!XNN9+iii=bLAZ&B z>gC3zDZt7%|I$9eVbAiN>5Q(FCcbXA6n}Hj{fV|qpc4IwSDwBgd zMNlI0JnAMIOx=4#XN949#%|otoH~Q}eOU9Xr@k#y8L}IR&zLfyrf9DZq6G}^I|wTB zY9n^zvM{lTpid$K$Mc zI2wP7sY+`cE`L}qGVncwx7eAjWBjInka2|q+UEwgyYs-No9i%=nit{El^l!+9bxFc z7@p1j@aIa7S+S$}J>bSIqi78Wus@1qk-?qXh||xG(-{9;xJczxkv5_GhM}1F?E&29 zAU5C7Wl*q&VCG4_O4`-@E$P|zWY9{At8kA2Q}7!ZhDj+Y_hQ)x=bPFE)A zaLzF|0B>uFH$j;oMAoE+KXW~rvZdYrZosJ-&cvo-BQo}b|3bgof`LfdNCN*(l$N%o z*^v}dsUic*B~LDI)3SucxaFHAMQstTnqs$&76cyLG$kc%@i(B}D+v;8h8wR%V+(xa zRqRTelnd0dv<&dMzI0;i(B=`$t9F2+WVoKqZrn)>8PSpgYYKOYx$aOsRq2Cbpvs*1 zR`^wR=&wWtRj5$7jK+F7_xTXTBHMHe6RLYzg?djVU!~lZq7sXBacz!0#ojvahar#| z>{>sO?!KseL~RBHEzu8J)(mEs zsWIzfiFj#emA6N$#1i?Ko~Qs5U9m!O1uJ`1M2TaKH3gG(aC3-@f52$uL0-Kb1ow&c z3`{c;w>(V2++7m+G|U#IKSR_OhMT!BBVFRq>OypS_3(tK3UMNtb(H$fEcMl43n8A> zXO>ovC!m4{8>yjv| zAQjT0G_6)pk6=vRfs&KVCW-m9UIZF6F9OkWmai9WBEH*cNu$_7!K!S@7j{bIQDRF- zf4gT^AvDYY^&rKjlEea70Dj7-w0!c4<2mJe1VA3Q^H{J!z z8SPVJk1@;;H_FT+r&sI%*5GFTjmPGJM(z~eBzS+}I?TD_Ly-=UT2%jC+ud$_bC#ad z)N(&;$oj}2#+1h9v%^om;{|lM9QN@ii4tWori9WQ7V*%|iBpbWDjm}IdLiNdJeLxToIej72P@4=2Q~g&oN|l@is~kT|Cyn zPXndZ1+M=nzqok(2bg-cVlf|CoMSUClta&e#JL|BL-UouPxDpyb0uj)=){TDQP0`r z6A>Nlk5E)wV~sn)T>oHl77JDb{vmWNz$G<~dDq;Q3zR z0UD#WzBwWge+IcJ!SWjsceSLpp!-#mjNf)L9FCEuZhAYAB`eZ!^{I99RHMpg58_RR1u3v5(XE9;#42CNkbylyR<%4brFRAJD=F(ayrM38=kj z-~)rD8f?&HBQ@<6mMwIPp4m)wv2K#hRM|ewB$}^A*PxaKceZL#Shu2{^H9%#m|9;0 zO~wSe3`=5yo=FVXbBU3C--D0@B(e)8xDg#0GFW3gi*yu0*SAVe3Rca~=+)HPfXea7 z22p9^V2}d+!Uz_|{sw?YagSrAQk4R~*ecNVWJa1o8Xna1FgslVw`r3=u<|G@Zlgdn zY_a@k415U5OoAdZ!~w}SfyU&6xR zJr-Y-{bG92cW&$gAnD~@<7$ZG%9X_(ChMb-7L)PsG3nGMEdLmIYyJRkXa;L+EF{Q4 zdCF~oL0%TTA5Ia;2K?Q?eKvslxRNTHdlQmtyZwc~!eK8z-M5KIU;4m|pQMoY3!TqD#$%9%eNHVevtR)e(6 zi0;4yu(6(h63f_j#I`YLof_GT4H8U}Q^D^Xne4IDTP$d3oEIWWq3&L^B+CGYdp@w9 zi@pAG z5?ZAgrODq2k=}nzXP&4)g=@Wk;`<81Bs;;7P>5Y9vvw+T zYpVI`5UMx-qO<7Znbb~8U-TEhh^x!%aIEG`@5@83|!;2?7#237so=Cwz zWWk8!H+Y9hDIUm#DHcMH9lR?V_3ns$Y{(*5SXgWcXd-48*)9+a zoGTl;xbPfmqPb|oi+z3u{}1(dmXsm@eP$X2O($t~sT zy_F@_`bSZYQiiqu$8-xZTk9XATS(Z_0YqM4$vyHH3qBqLz_lsMe=R_6;eml|JlupT zgPZY3@xVv}qQrcR5Vi0?Dgz#v=!N2eXEl>4#XiAm&>DV&&uBjNd^YO&T-5V< zddye@0M7uL^{{&Bp=9Vk4xiw_j?s=dAa4C95QsygUnJaLKyF@|a0kDA5ZAv5N3aD^ zAk(5-h$L&?#te5N-sJ`9+u);7VmF57Zf+|VZdh?u#fFDze3*+={wZ+@1^HH{&|iekef~s5$vm-;YVspr};I8|Bgw| zi6)IlBCa-#x*th}mn*X9)k=U%(ksnaF9S~H-XGeN<1`x4>IOm-4>NcA4hA4L_&U;(X6UhlZ_o!QBr#9#m$AJK)LlChCIiUX z;$IA`9BDPTqM&Jd@B|L){5Jf-ckm}w8FGW~!U0yrcuydXvh1g##>|?i#iLflmYl9O zsRx*XzlWkou)wlZ)W%86t2hDN?CW>q+aUat99_cFns)+1oCx?C1Nf4o5{ETO1dL{? zUZN=j(3&JZN3&HgsZ?uCKE;5%Q-!rs^ARnDy$E|=1jU=*(V(A8kc%K!Db||AA{(hZ z1bI3hEFEg=v>A5r31aR0XdHMN@nlD4;3wfHJCiT?48Oq-khYu}C=bho8h#MKu;vdD zyTN=A5E3yV6Alv+@o!n}k609lm>xTLl)gjN7yKBW;ISDYk23^aAlchp(DHVYB@x}p z*R0q=^h=XtaQ$;4Kly(_FkS-BPY7^jog5pV6^w`1E^ntD< z>KS-ibkz4Lmi4Z5b$gmAPxllIt&m8d4Vfu2VM!B zw-&* z6&OR4q=3}bIEJ(<6tO#kKEfa&XHs2tfXNt!&&OEGZ;=;8{0^VmXK)0_-d=bc^m#fw zP^&~-g$OGeL0*nM1}k<_?AV)Qy?__){bH}ZTiw*9QlCW~uPsnjm)j9g1Uej@>V&rj zjkyE`zXvqfGlk}wBcoPy8`q#wT7v%vMEV~?IF{dRi3I3gW2r~weC#eE0&>2-GjGBwFq~^V-3IIy!qoUV0&rx= zPlB98kzH;)i=c8N@fG}i0VRZ)%Z*{=2z{og>gpLm3s`Q$m%pdT-}B_}75J-&*z`EM z%fAx+Z!{W|0bY*wyqa{~rlwS7B@Qf*nqa>#g!4GcP+D3DSsyrUwAdsEwiF7$P zDXm(0J3P%lu>m=!xNHRk0IpT@ULl{T4D)_-0)UHHL=xvP&B45mH{;}-sSS%F=Hb&bTn$62wiMi3}LfAYnhlMq;KS3aU`M_whS7(yN7KAa*BS z(3Eju{7!qUW-BM}g!AufxO|)Q!?^hm;7=70dYfy)a8aj$ybBXXm_tWrgAaGl2E9(T z*S3I8jzsAhj8INRehC4!10ui|$M@_Q5Jcr%ynodZDDw{uMJBEW@*=rwOHD&bFtx?b z`rmL!+=w#xAmts%Q8~eu=BSz2p*o$@NDzA*CdO4@A=}kECIQNpnLq&6-FWMwm1ojHWq0l7( zXJX}jLRrX-{SU}#TIO16`m@PmJ)czDV!QDjz^l6cw!8|{g@Mdg%A2C*cjUZOwdrhq zCJa)e$(K4?tDPZhoUK3W4B6A!`qR#k1x~wYEeAWXYwv4;@h_l2meXl3vz0P#6o`|Y zt(eWt_QMj`5#Wm7tyC=PhJ=Kmf>yRx1;bx$Rq$_AFgg%yXFaC_>8Qu6+L*!Y#$8AS zdoqYBiWAGnnPo%sm?gM-$N<;R<8P%;EhG>Q^VRtXiMIYOu)Au}3*O0YELr^}BKVUMgz_-j6xM{Y)Ya@Y<@`1UWH)UIY)p!;Rt(SAlFzN!IX(Yea+BN4~ zg2%*07^AyZL%5F>VF-=;MFyMPaX~HHo{+N?8$q`yQjDMyh=RE3*IrK+_K=NZ9<>qYW2dwSE?(nd;p^M@ zlMOw@nw%vO?DjcHL^wzgyd6DVS?DAIixb2V(lRRzQ@jHy@^OloAA$?DxJXsI4jc)W za=f!8l4)PlNNN6BJn{x+-t{{Z{^j^VM3XPwVVcUGO1HG7uO8<*m{U6_Sf*eIX&ymN z;18%;rH42V&dy2mtPRhl5UBMr&Dgc@?DoP{-XJBL8E58{1c@_IpHpx>Vo{GT3 zvG`H0+k#&&lJ#}{zJTz5<2QjrA?9=)H&O=5Vp@dbShT`{;q7kVJJo^2P5knTI<~}r zJ9wN)q5<2;^peD4E8`Mo?A3>BvPnPH5&0KJ_9brOSBNOxj@Aa1=oID zbYBg;$Av+pthf^nCh!qYxg<_pz!V)LFz)&N=wzO4QsW^U5>TUt-tlc1S%||M<+y}r zNK%cTYQm0(as~ZvbR`udF;7ySq{esH2*YvV)z!4cQ;RHO+uTqm@^H5l46-qFyDm1d zC8XPU>}Z7ZpY1eWgVqcGkxRpb@`U2#i25sv5qT!@erBKo* z_TXZ#1)j9MnZ(?+hs;4W9HUO;M}PM(8c%l^U*Vx9Tn9YiA|xz#xIO@*t?z-7VYIdH z!}v}-ggyYkBOX|nq@9Ndi8&S8`>;qY(lFDOY>xIDqOGJ)Q z@GIPi666qX;dV=Z0m4>Xja)eDgm5lCCSWESOGc)H7bPRJK{*+j4CW^zb3tFSJr%3~ z-N&5v1VHvxYqlWkPw1_#xY{VupOAZ4i>Js9oKE92Z;V}*OKjR3syh)vgm=__I3pZq zK^vbyui?VYTYwU+i|qoBR1X^yX-Cy7rYGKwKIp=W5V4%AsKMsx4iu^Vp(Ca(2eqKr z{s`5{&`d$kfwwnAL6-EX7Bd*GREy~f-hrubarL3T5`0`|sBdAV7A1>RW$&mr zT^WmdagUtc_=O;b>@*@98cqNbqf}kWuD%p{5XZ%_ugw@i*?7{3S`c!S7>yM6HpJpY zI`E{T80Ud_>^o={ER5vtN$Qj)-iLr_`;ehA)@nl)KCWl9MK$=ia#3F$KCV&Jx3scf zv^}ZH!BKCzv+~|;z5nV zi5z#;i8PXcrsX=6R0c+a>*=6A+l}D~pV%8({3zvuA3>`T151sOFX6-@`(kbJpbA_Q zyW-PL}5CG*r9P7kPG92XDtUYb9{v8=lIwF4I{z-d8 z*9$AhVKIpp$sYvEn5UO1A=cqdva(0~3Y4Y#VOyEJwdl70bSPQJgykNzLQ zzc0Sg-`)D| zC?MEM22*se!ylnXz@ZyyhE3P z7-ucG3hQ_QLvSvNg0AkxSWgTgLmr2rBxNE38^i+Pt$~wH} z=3mVGef@oMcnhD~0Kb2^Br+)I4cm;{b*(%eWYpG7fY9^(CQbk53k7|~n+qDKTIeB6 z5X^74CsIJ(#OK5KI4c>jas$C6i)c}27%&@oBJNe)i6vl`#O20{H4wGm4mKiPuLE?G zhidf<<5z%y4d$Mhsn}VM>3+Bso7;10vnPWw8@qRo?LPy8shZZq`_qtqFa`KEz@p7E zgoixbt6qmM?;*3R=Q|5=`BZGrL#?U*L!a0BEb(89skdjEAshcfQoxZ$@@Gv{2o?Z? zV_L8Ya)J`Es;Ps8a2vXH6`lQd@su)NAhnB?o)P;LFelnxRKZ-{G?O=B=P5>Y7kSgg z_#F-idCl`B_^rY3P~*Q0-%ob^xc$a3=!;_$pMb;greP@7$c(a;y^_L=@=lRUOf0p8 z`v~tmB@7WJLvD%?*xsCyF*pBwbz7=^Gagrg5b{n%vP8&i++l3mt;5b7E@DA=K3Ult zmjVcP!Bdrb9e@RfK|bQwr2?=B3vW_tZMZ~$T!c3X>;r_??gbY~f{P?|Bis~0Cc|n` z3kPp`m@ljW1R3Udh_y|u`AjaI%kbbyM*0TBeGxh*2$&n|%(OCrbZ{90{H6G#1*f%O zT4b~QocL4UdBvsfdkyi^~%684KpDe46Tsf+#Ic~SBrQ- z148%vFOIFgH5?C*#n#N%@vywmT#VLTNt)%1`Zs>>4Ikk-pa&z3kMP)=FT^W@eT`=@ z^dfc=m}4aaGP>Y=Vge!#1jNGtaUj481H=KPWnswQ4~;9UbALLa5r9n;PUX*k$kc4v z&D{Xt^mYJdHJ8x&Je|%o%eCUuQrd%Iz8~WJbogx0&a)h2S^n{;bJ}7#{t>KR$Jkpj z5Z;V2W=+|MN_&SS5rA znqq@TYt~pf7zLi>o(T%n*R8f~idJrd9nPncjM=i!7f2;C`n1Vt1~*rMPb5 z4sDAlprtKCA+*w|L)gpiXbqr{h`G4yu_}LKj=Qbe8(iF52kuRnxbyUrpPARqfS-@I3^-6Y%?2 z-N>1eImL)g-X$jOmawTCM`bFHMHUpf!ZFF>Yb_vJ8NBK;>1Sa1~i zhar-f#I>#%H+=5So02|WoAIX3LuV(J*1V~6;1~wN`~#4jS8PY~4r{QG7&hfJ*Z2{Z ze<%`HGgjkUBr!$3e=x$dHpFOE{s{=vI_Ba{qF%g7lofjtX$bpr?!#dLN=)W1Tc@Q5 zw5Ei^$lqWLBMFBrcgIJ=B?RvQ4NS9@yy1OjYM*RMqL0^TJJ^E-*cx~Y#s!_YeF?3&-HM5x;BkTaBNtw<6y24ZyVhl5*3b)K`L z5(aK&ZxKe>8WNljEA>#8)~-0MUW7(LpVZG#HDgR zv?4Gas?5RCMWk)70=;G)&+PW)yiE(iYC|Z}1`3%ju=>$2PPvNqQ9nulFF4wtPXT2R zQWSfJ7ZyXVHXAanVG}!F@v~0eyf6hIjLnDyHE0%(hCvok&38RGhK{!n8ycUZ6Eq!Ev(p z4QaYUJL}BsSq$F}v>rhgFa~3~f}UroPY=c)`V14oX7j6zkZr5BYsKH6kKPc&roR}l zTz9jrNQI%6>sqg&%}2N6{RD1gTsgU`rOo!0Wf%9S$i!JCkIFI4*%t4J%eJ|Qx;d_l z$~xMm3Sf&?s)&4*viXRzj08}23%;kF^C)ZiMB^SuS#G!P%x9NRgT4_t9UW2E?VGGw zIIMq51gY}m&I#WE5g9$$BDRX#xbnS2GQo88x8!=Z{aHSnTeUdIaz~OYLkoTSW!L@( zF6=#LJ6+-@EKoZftii!)u0~7>( zCi9jpE+c|1{H~DMDn#MMVHI+5REQ>=Dr6@WqUfj)PFt!lFqulAP&4;1zHoj7;p;jH zo$I_)lmN?PlztNx(o)$p%BELkxA$d1*2bmH!y{Gi!9Al#tFSK8^g6H1M@l|jt_W!! z0=gA|y>g~yr2-2eVn&?OJfxTtr3gn=2Pt~u6y_nIHx4k*X))-o9m3*h{u3gY3eyg79-}luJ+Uc82t$TN7PT zwuL9eX`Ttu(%ko7z38~~P~}|$*WXNmLHJo-ImwBCknu_6))=tN76mP)c}~iX!M@3p%74q=Sc-D=b@CBn;LD;g|Fpp2$

    AB!i-89tIA<%iLevdx6>QcWa@GT^Y_Ei_&+ldA>ls~5Jq``{fYm+#oJeAxKQS7VR(IZ9>dIuJMdAW{U5Ei zIcb03(*6Z#1Fye4huPa5N z-1Z1TOvR2uk0bOR3uRZYIzBk5(>t66(7i4XGB*Y1eJ&WeTMf2(;2UU%i>2db!~03n z-LXluN#zEqLP5?^E-9XC2L+Ohl|C7M=z{<41q%VL8dGX2iP1WjP_94Ap-i5R6CRDV zdDBUxnWwDn4tL?9Z^IM3r5C(5i@q6s#336#YYBV?IfiVHC=?uC1^n3_^PEQ9qb_cJ z&jJdyRYxDYYqQM)xkOuKx~xszO31>Jj)jB@|f4oeVs8kZ{{%iOm^h7&%^>L ziESDEc$K}K&OJbToUML3u=TuqFP?jnRGaP~Zwq(1L+7z|Xwv?uG%NX1y4i;pJ)h%D zUDoDr=UD&V4|YIPUWGF`H?Uu>clZg)%-d4r?8P7E3+ww6Rs24)p`PL{NKai(vK&_% z)mGpRE)ROPI)EIX&Aiba{12KuPHAmDWWqd%UM5z&o|BqW<QtI4I-V;UKWoR2heM zcryqeg0~*scQU#wA9O!dPWfP-qWfmheSH6*q)>=1$0NG3L_{CV=k@K5+zBzJR-BcS z!ZZnXm^$0w)XbVwGP5GwRJVs)i!Jn@Ydm%sQQ-D|9B_MgU|-*;9KkDSegMZq)9$ws ze~HgL{!$r1d*y?2%7^ph*2!>l@z*DzVNg=Ul%OofLshvbNBjk<&fH0zsyalt<(8I^ zyY5|=LouJvGtcKN1&ekpKz2fwoLbsyw`y5pd@H4mcc+8f!ndhaW4e6f`&GIK)@-3gyx0w0^^QZ#Ah%if}i5yyzKt2Mp~z)Ds@EJBqd zdGbZEki%{LWA_?W6afpD<$7dMK6WmMEK}MCj*e;!AF6ip=^NL$i}kPCHIBbGC^b`E zm8Mpd0S!&x4k(VMNpM@Zm#7xg^pF3k(o~poC6;0xO*O4J-)Q;~qM&IJ2b%5sIHuuXy^Y!MWjf(#PmwDYU@3Y-YvSn)+89w9WspC->-VED6WEBuec0slSVshf-w z))3$Xc$oDkq+a>}cDiU0_({;_+k1VumtIUWs^E205g*E+{eB`rihp5PE`U^HlK zT&EM)HR~LIcTj3rp@@qCZhggyF__sUny^w591}OD?el-B(pH#yyu|&-*-YkhM$3;A z1uaWBlXJFtNsE`P?Psu8F+P=kfMGLVx|8R5m9?Y_N_tLd@7rd{^7g(dOXjx^9MRs_ z?iN8_Bp-JX=zNF$*YjTBz;C9#Z{Dy9CEGBcqstVynU9xkm&|DI8yMzZUcC(SErU#f zHDO*38vZeGwD(npzlK|QBZ2wS9aUIXX!OkY1f?>-gm+sb>`h;>PW?`K)cNK$){!wnnpxCVLi)oL8I%-(^e@X@KjZCmOjB75>0J08N^-R> z`x_e};e3tt8=w%f+{*IW7(1yqh$?)aOw~35K{`rJaA(#B_q#NAGvF5XRGs01fP-|) z@j7k|ix@u#_~Ntiaokvamh>?OgaP(w{R(%GJMGjdp%&QReLhGX^5k*6sf)n-8Jt2ok z@-7j*hi-5xap8kTVkxj2%Oa=2swCv!C*+h*<|+C22JwUTD+eV-Aphie@=v)U`L}dC z)fm1T{$M#nq^ zd|t0X=`%zIrPFza89Ge9#0&^o?+ANG)qmEJPV!=p4oYVzb&e@&PqBu)-Nn>4)h~H_ zrrh$UcuL+bpy9{MK}n$!wsJjTt4xuwokC|72<O8dE|U#!}q9hcP~93j15&5lc2}?>k_ak${+k zhL1G&h~YaawotGXt2KllGyDc9(cZUuc#&c@x0p4<+-68%X_yo8nL;~({t&*nq_N=~ z5N~GuRy&BF&XZgIEKl*%))FLNqTryU2(gr0kEN6^9=}g!bcXv^3Xt?r@F9)ct`%aK zev}BeTEnY@DOWk4IwF`DUYYy!kF^<0iqP;X*As3AlN(+cQ-26esoMzgc>PKxyXsVW z9wh~(rYc25S1VsNUNeYlzC?%xJ(_eRTbGQ$3ZbPtG3B(Ni& zH8I87X!5iHxW6=t$=q~tfIJ=3I>H0-pjdBK1+b&?xulIcf^ebQC~E*Jf~EVi-1RfA zj1_BZqmJ+(N?Jg*cO!eM@_=nzaAeJDH?LnULlksruG+m+ZF4NS8@msx6;H^M)2-qr zc=9yyfY&7OWZxdBFtO};rXK#l(NTqCLb_u{ZjJ!`$5yNSSv^*y%E{F#CuIMbR%KJ7 z=NV0#Vj_?N=zPnJxf>ag}|w-~GG+vQz5U+TVPwf0Xn|jWv0NbHxi48ExMo?WZP4Tb(*;o>y(;x^pn7J+(gGiz%xaY8Phxt2zmr zDsPGag;)Qnd6_hxiRWcMPvS?Jw+(i?#C?N9C}PUiH?;VpRh;TF?((2-le##KAJz;) zDEkW{^}q>FjxnId+fZz}2>Y-SH9iTB)%euhuLIq3CVy}4Cv_&J$8(KT<|5NSFC+@I zzkq}ONpR+O{69xaY)_XP<4>o{v}yElRIYr9q_O{E&wmO2eED96z@G4W79gAe3Q9`f z8L*Gsa<*x7oPtg_FwoxDG5i7|ocH0qar+;UdigI4*?RaTa}ON88*ut>a*CZRtasJo z%adYPS+VNy7g13&s-94ms&|>(^5=O<)$7-Y!bj!cKt)K^lk2H^$``A8eb~HdG2v#G znf%CJn^b4>UnF#+IhvoiCx+J3Q6!$sKCMY*q@&2j;-Jk{E~n54T9m*6K|5s7Dnd%2 zTu(mWE!3 z#BBHae@o)Q0gt2u-4VS7XwYko&3jl2iN|JLyN!=uzg`yjaLIqc|xh7R3 zEqfK?aur2IY>mb}B(`>DQbkDPmg`MBjjcPJRo5FU z3V(ZLBWTQk>Qklgs1ljV8cU+{f|3O3iktoHLCJ<3YlLtnq1u(#aMYA4(me8gVMG5YAp!46)|O@i+@c{ z`5K-wh;9oh$FX%O6lc9p9q{_1=>T6R3cPN>(Rx>YHq7!3UVMY^M2nf)v!J{hOus3&d_7MMrdV01P>jO~vrE4T1U|NJ&iP|{0K`VPRY@=ZKNiS0#+jzlbfMx)z^f=1uPK^N3md>j7{AmN$N=zP_Nw#Dz0 zGAQY3N*zmeEZIc{Ma@3$<^O#2-xs&wmgwdUv!G_W!F`mkHMpmq=EVI9iWk~X%^?Gi|3aR9ef z?o7ypdWHG9fBgS~l0v0h$@N5w(a4$RBvLrivECJAEWzoHWFBSZTkwSQsQciWC-{3~ zgSg7;JFOY^WoIt2zH=8*^qqTfqQ0{qJpFmvi0@TpR*)`Dtb8v`cQ2_uAzNcxn2Kh5 z(hud7@8+rPNnB6RKepDiOhvFmNsdPd<%)MGb>>IT?_qjk>xyX&ZsFo~)XDov+`n5o zW?N!!&ESaBtx>TX6oZ)si=CtI4=SQRbJYX)WXV~y}Zz=#OQ8sQEi zpw4dbL0BTRMkv>l3`W6Lw=};q{XZy)OoM4+2BrH{Y{}txC#qJsEyLLa#+Sk?8!g_u z5|=%z2+au_^Mg8aZGJcg!Ud&<{IImB3O)Pad41ciI6z?=W5bCP;ge?GF*e^)k;pNy z*#wy!2_Es=$rDhTMVa0yNfqgx>hG?d@|A}~P{-&TcG^+xbb-~U2o^ZYay_wV?UXmY zvv7flAOmc6Ex^Wij27@ew6O?#4?$d6fzU8$3<^%PCAwA;9P3)CHB>qz`(b^Vp$_Zm zUD?ccX{0Zk%y^h6WX7X7tf8I_j%+p3dIBBCv!_=cBSBEolW#K3XrsT(B#~|o`x1Ey zJ-npG&EqsI{D|cKxT!%-y+cCAI)_`a7Yrz-BGgUgdd+XJ zxTXBU-C|<5JL49-j%a=J^cioFZ{lI;EKVBJ_1f4$1-y0`H z$5fk-gTSTM=8qFan?Hqv9(rU@eo}B9LBpiUmk-ywN$1nV^My5~y3fW;ZE;Z}staiY zvGpJ~+fd<*6wk;hKfzNY#WE;3emEb8;+LZp%87wp})Aweo9#Q8kIp6+q-M! zT7jt@tx0g)7h-+$@^4o4O@ZOjq9yY~Xn|dwa}hry3R?UE2U@&``p59vChOi+h{JK- zyy0=e4V9XMs2r(&zm!}4IZvs6!@~P8zV*Vp^gg-X_^3?D9K=-}Ztu@TtXL~9rDP|; zRkfkI-|);YR`C`Xp03c6IT#*s^T=n30`KQ=gg2f39(A9f^gJO!=>?u4>N87J_4eAR z6ngHj<&=NLQ$2Slbr+5b&~p_*&z0k$tz6OUa!^|}Gz+vHK31z|j}&n>*h8#dTD#Vh znygi~Q@t5x_at1n7`hKmONFr!jic?=?TJ>ep_$sAm;_fF!|$8yzsoQe_4}qMm1-A_ zWtSO0{)Q;p<##x=%R6Y0-{a-eC_KX-R~w{;nx@=zzCXz+|CXmZ-_B}}^Ncczp#RD7 z+C#Y_HEp1q8eil+DE*PA9V6}^$d7bBCcBU#*7s~p%i7_H;s@!mBMXVLdkCFs7xz~K z#b8MF*Ccqu{`#GJt9&cSz5d#oS;<83a-+|miGn^aSBToKilo}@aX>bxCeQUXoO z5F6pmGoTp4d~(z z%PZC?0I_C-@$^=yL8iBAWQ_Dy>3I&)T;<;?)6s@$;tD}}zv-=t&@@r5H#i%lIX5^T zq(OLOH4PG7z~IK{%HPS79&ifSt&ti6Jsg>6JEIN*yLfJY6fUuPZ)L@Jc?11KEg(Iw zP7AzbFf?v~g4J)p_H``gw2p1ObXeK&-;dxoREk1nZYn`aP3d16;S_QkidRfOYbFnf zY?|}9Boj<_B*TJ|@j*#saQ;=J-@{a2!MFi?l;y1NIXv#Tm4Arz&GD-&;B}~Vry8Nu zm|7_o?F)yP&Q(!M#Z7=Ab+Dzy*^tA{H4~V{omgTLU6a7MMfv-g6D{hFc?>CJTUQNo z<6E|_Cc0D-ys<8|8M3CIzo$z{CV28Fn|TBS&o)l81stUp3e_q=|rj&^>(~7m? zP$Agd78x^>;I{B6LaXO9&c387hXq46{IFu(`HTc_HrEMnw!g%92Y4&3Jo0O|H@sW$ zH-oo|65ctvSJR;(45!aE7BjkjQ^fp?xL@b18g z+PfWZrISZ~?IOc_GX7@pR#C!xirjJ=PvQNh2ycZ7Z@C`c%H-j#dfUULKHgTW6_>(0 z39gN|VDRv6$-DrcyE(&DqQHAo9PmEUO$`uMo(5H!PGl^HeXK-+YTSCTx6EM!D05VX3Hgm8?=KIr`pJCJtHVJL_URY-!cuD|7(sGDcvGJJ17Zq8!7=`4Ozh~40~xL zO(r)6uyIUka+3tdlN*0-^8VN}b(;D9_NOJ|S&ZrU}o^r1}vvZ;(^& z<0&!29hd!Mr&yaP0!bssQ)QKla?H-O68&@hEx_WS6GY)=>LbDUb`BmyHn-cXtSG9m z4awcfHmlm|Os$$G!D$)v`+rqskl;+oAQm4oR~bF$69qlD#(|#eghNEnZ3x;x1}#)j zNzaXD1&hm~VMtVC8mdlc*e|ENfTw8qR?+awMngqFLpdG|l`E#<`)xXK{Bd0 zNkBXJo!?Vo#}`3!hk;Us?8MJ4oukHxtV0Ht!IP5lNpPCJujD7i=beRvN8fDbN$|MZ z=sQ3Z^c})s%=8DH^uDhkhTF3<7UY`$V%njYI|mn$`}K8UcZ(wWom4S(Kop2q{}~y`-+xfqfG-h2}MqK0eQbDxWu$*#%r`qf7Mk)#l zN{XPpvoTNuzfinA}j&7$zw%uj}X>UD;U0>Nd)!SS1N|tdiP8 zbPFWMGVk+>n$F{umdr?dCUdRz>79v!SC-?zD^noWh5Y*%$FJwl)dm^vYRMeM92k+C zd6fU#*q`)0{%__H0WODkdcDeYEFg<{SpDt2Rk{4R5y{PFu6NL%=< z%3}Ok0XQN1FJhCk+Ge855(K@bO}oi0@4{2lrgw;6&ZVfJqzLhgT#rSSFPb?Gmeo79x?MoBt zb@&!aE1c{ij~M<1VverxT(_LF+;AfZ~P9r$ilQ|+)+CyMet z-R_lufY?L0*CWO)=(tpCR3mnQ1Xt1q16Mii$!a z(7e+D6A?!SygI}Yqcuew`?y)>*lbHLI?W!MlU7HfmWzf$CLTt)2HvM%>;snoCyA8(PaY5-L8QSu+?dKZuxDh_W;+v%pWSf7oF%ZKSm`Y}(S~ondn@wpZRF%v}HAI$4y1 z{;>lLMn$mgpe)xr!=`+cq%&-tW1DSM^V9Wf)-kp^HUA2^6O@{%nbn`FaC)|$G~kGj zjL8(o%w~}2U*Wbu z^cT|LqZK&@kL>voj9MWXoRWeVv%WfEVb#A`J&Ic3SM?g6b5J@-R~z{8QL+X|JW5CUv%s!Uqe^>B~jAF zg0n&OK53qRu_U2RXmX+~EQ^wQP#l3RWoPw8s=Na&1FR8UfcbTzr2uBLpx zuJ$D*_J_vvD(@gkP}0+MwWYgh9}-&H56y{p0Dl-F9KwHX^nVewP<n2&7`BJZHzE6CNPRPZxy}3wc?y?CW_sBk!`ck2*WpX)PK7@>m<}3lcb;Qx|5ZWS zAdGLMZbBWaL+TM~Z-&%Mzo4y4o;o(4jDX-s{dOa`fzyOK=D^8U_Es*}@~C5Mz-Cb$ z#DbC{q>jn;)G=%Msye1R!%a-@`GQA|x&y$jwsE&k{f9SMKXMdPpa|fh-eA0wvgN97 zue>usospJnZ2HI8)&c5@&`2xS8)*&oc%;3SlePHp(=~6Wnx*$zQ#a6i zrTw^CC+y^W=A}8#JCh#h_iv~Ao{*-%Gxc>1oz$;GfujwUW@xXQi_$eW&|#(JxSA(q z_`lNKn_~D##nvqRb<`heJaqujB=YqD5UV}L0nMmAb?SC%PvhQRn5zS0PVMQEH>D>y zC8tTXNAfCBdkl$Y)Sfy>IJKt$2{B@{3R+WkLl-iR7SJj@Bjp`(H8rgb0y+;Z`O7G!RRpvUgQSCz%de6IX z(0fpq%tqA)BXjptW-EFqmuzQFK~`bo&is@A4H~RAwn?2r*3S_YyRkohC#S{5?^}?z zaE{7C1io9G)Pzk+&`QtwKe^?7c}mZDw?zK=6cv;dAw5T~r{^eNtmp8N`1LbF_F0U* zLs@)jcwXf_Bn(P=*3))+L8g=c!s!2b$dhP0SMqiX|GU6guK%AX?6GVn!$@!c13iBn zR?98i#59zIaPClZXzGlDmv?bIRoRv_OD z!PDAKmH6z@79b)ub0&kwQ+G6}wjF(%JViVDWPNh*v{m*~J2?j6oY4P?0nVeqpri;L z6_V?zJH`Nf?}FKNextSMkc+`FMD5~{#?yQz0!3!1I-s;Q2}+e1chhv5{~8&*L2#nF zrTWyVTho-L$Y6t@yC1$MZ!cGF#i~`$QM$IUgYWHdk>M{PjQjjh&cgD1y(e#9NrPKdJIwJhZMHu2T05KM{@%j6G7a9F7zAb(RgAV!c|%9t55s zOFl#7-XmOgp!8~Ec%$+}jUm0PPGkJfrtyt=vasgW>Y#j-ys7c5_Mki?wnbDq>EqNG zb*p4(Hn#GH=7}(oR#yiTt&%mvR)y$bzE zKxc&ymmzwAb76Wr$ku}J95ei9g7K7w5f_=lWyHhAMy)2s*gDigr*4W`OZQWio<%{} z1A^$p9$tgQ8(lZHNV;Rg4w8K35E0q68^(n9s@?9OKqa%_?;N{@R^LDpy9>8sM1EJ#PP%KLk-82dAJLfE3`u*f8yBS3Z2*qD z<0}T|Zlmk5h!VS4@1ycaT#n%3hCL0c4xIMNp=ue|!q`mqQwxt%JfA=yLN*h*>t|dS zUt?n}+#ZfnQs)>uRjY03DM}NyrN+lPBsj|IY|K^20$r4*QQ3Ie8sv@lSmj%mHCYMhQx1bg9!547RQJ2wm{Jk!`jO+wSLI^YkIi08ye=J7rRKF0Vj~B2AmFB< zqc5G_EI8U*P#c`?*9DIB5+9r+0cUm*P&$^Lq9{IF0t)rXqv>63cuu7lK0MMKc^pkX z5z~ZSqf5Lopm#&@k0!z@lhti)lG@ss1W&LZ=rO3o25p~*)TrKmAotChubV#iL89QH zBXQW{_m=!zzGZ?xd@ixKO8wEQve?HKmEF!p}-_d zS-F*kLbRTI z$HProV%&y(+^j4s1l%fB+>+q7aBU6TRC6{wF^$_d47cNm0=JLh7;bzg<>UC9z)d;9 z?F2dH<9Q0V10&oN3T|>d+>|B8ZJCdom1Tv1+eua2lHj)RCpA7n_;TX7lRkaKg1jYeE2I#n1W?x*FHPvfb5w(k?Vhww=Q-WhJ?c*Cu-#KW!C z-Lu`<`S6DfpK3lstJrfAJq^NOpT5LtN5sOMc%HKo}CYM z2NmoSM^?UJ31=o7!IR*qh0=RQmeCd*81Tn)5z1??Y-Tg!9iN^<6zz3B4(;_e+RJ@A z>O2B!@T6-AWuzr8lv6&Jr&{7rwFFZ*)Eq_75^}tjP_CFQjVHLXo*=F#=NY!tZhlAc znw5_4+eD2q=UXWTbBgnm;3{2X-hb}ps{SBUJzBP8Hm}n1^F%?*FXBYByxB-`5dn2+ zsf^I_%W}$WUNBl7CR*NO1tQger9?r?%W{f!CzzLTPZ{LOD$%O%H5utWL--t?kwdQzNz-O=wy%zrj5TYr+hU} zwJ~sUz>LCzk|JnhIbItpSJcMbY0Aq$DXKSaYpcCsTi33Ai{@%Cz>W-!;;(^XJVgGC zw|b4g+#0`j-B(g(6PUZ|Qsk~9eV5xlsoIq~OHM;_zkXb0eym-s>r+isEA69EpOR^@ zW>xA_4eN>fl$B!qnCeqW@PvIzw#z^A_xhAr+Urx<%q$w$^{MNLqECGjCmL(`95W67 z4FYP24cBLskv?;iobnAk)n`7SKJx=BKoRsAIbNSpu2?QQ33WhFx{<&z+i1+LS)pj! zu(p_{R*J!!qG=LbrD;6QjQ_DZW(&<4biA1;==dF+6dk`!KwUa2BXqn~PWf9rMMvyt zF&z~F9p!j*RIW4~OWc@CU}HMgtWb1pSX)d-E5+bV(J=|GM@OOQ(Xl17Dg5gA@iwBM z<9Bh8@hop-_Tc|L{#4~n*znRHVG zw3Xx0R=HBN9XWiqE_Sjy>k2n%L$&K1dOdY=pDbWBQ>ko)wJUX^tw}`t!g?ddPVRPE zfi)3L#Xb$|iP^^hwkAojPZI3d$6qgg67peX^5vSE)Z?RUW-jrLkM1A}KDrwx>W?>? zSh|aVy8TfZ!S7x<N<>M{3q7nl`L3 zrm2-;Ag5@W1Us6>a_v_yRppw{^yt`{IlbB+?;{F2K7d1iWC_;#<1M&cB%6_v&_!Cl ze9irD{9x3|rRRIPbML=IU9(|Q7Mc;g>v4W%SSi8DwfxVgP z!rM{Sxhxk5FgeIMiyLBuY;n`tW0q5|YS*p<%dew$t8QAo>aPWj>p3o z?=nZx3NQ25cEEh!rraJ&n#Me=0^#8w%PBv?Q#?#r{bTQ^ATEz32p*Q>@vw45JdDle zG2ZeapA^f5N7Jqq_kOP4|HW35rKbZP(+LHKe}V(2GlO)-uQ4P`PZwi@0bAG9r5;cl z*zXt*HUzeSHKuBLYs49j?`zljrsnF5rWNIcD*5ny(dHVavk~TXhhlYy+EBRe&=B*O z;*F4Y-Jxc6>JAO-qC1$e&Pp++N*U{t;8?Np`-A4Z+@0a~2eDK{ox%H#Pzxa(I4b^{Xw~6 znI3M$_)ifVzC1DG8&nM$zcy5k@f$+*|AO&r*XbC)VVyDK3;n!NC1QNGpU`H8c|*pp z4TWR;CZT9N#yZBYS)CZaVO=rfTPempDaKENCm07#g}u(@?~MauKacORs}k>Y!k-ca z4S$B?%`K$MaD8y*YW{hhef~M|jd@;$!SiEs%Fpl=&mS$G{{{tduQEaKyd00`l`H1? zCdXQ55UgF@uCJ%Mp!^FU;GWZH4_J7;UGr%u*JUfsGHS!%*y{f`l-*3DW_4n#hIPg2 zg_U9rlu|E};ECj^<{5wC@9~wIIK@{>iFbT8P859g98NUX&?lyY(z68Aoogr~JoJK` z@-KOchdv@6k}&2*Y=Yn+IUWxwSFA^re#Ohc3={=MCV@<1)YD3AjW_je*e!!b*RLHj?*DgTD2Xn%}ouZwNC{F)$WFUO<3a!t^GxjdVQdbStWi)&Zv zhKD9A4a&c#x^8zG;RYKRto}Of>-4hP^}EHkChK z-nyGm^=O&R^j7=oUx|X2f5(aXs`d!#ZZO&Szrr7x^$+3s)oG}W$i$JbLQw^Rd0glOGLHNMua^e!6? znniT9DMVf8tXZd+s9}XM6Im(NHYp}bf+HsK`{pko*bVR;VJIuJOpq{hYK(d z0WAu^ZH?SqoWMLpWTJ>kk^4U?V9R4>`gW}u*;Mrl!dsgZmdUATF+*p1f@>dEpgkcC5=ObXATEcv&@e=h!obAVla<6E{@ zY8GYEH|F5bH}+=ljrs=ibuJ;r9cy!}TP0C;ddOyS%CmW@hkOi}$22wK+F*j{A#%JP zqFhN2v6^?x`G}Skf;F^6y$fe|qmMR?$Hzx`j&clI*`{Y9| zywbOCIhsw^-;!s@hrw$tH@WR~Dg#2kK~A}krwI9R2swUGP*NyVl;crRSrRI4#asA! zs)bX@pp!z*rTQVia=5HInaK(yn-5Q6nne7#JkGSmlS&_0l)@1`tA9M~Ok_UZIpY*U9p$`{49rHF`-d{L|0(|TpDw}2mBBn6b1v?W-X`SCso-RJ zzYZ4tbECJ2GprD03$G?ND5+?*nuWVotJaflH9k{!j7!Ho!2-o=ES+XhV`*!ywUv_@ z!iycqJIE<>{iE$bE~}|N&K1GDvjbU<*HX$tA-boyvu#anOm%#IHsz08pera%U-nA4D#R0pUZ-Y;GSNd9&tny z(MAV^j5bals4V2c&T`5Ho{|R@$%BWiEJYv>{`5s~PqjY#nS6_LJ8gvtB2u8#?< z;h;9cuY#?e&TNvy?v@aH+T9XPgc!t}THZytI@)t;d9C>JT|r5qIQ% zrgnXqS%1ArDM^1Sko@&RF)Q*m>il80kc~QbWMU|y2kSd&$cI2Q?z^$THb17{CkOlmMd|hzVSi& z#UJ^vB29r28s#h>egRn!euGEl08%=E*t=K)aTV`Hz71Y$I^~9cRRiS@lvCc1rzn52 zD1W$WC@BKU%ke0$TruVAN@WA0p;WF71aqLKfZ&)uAVo;m>Beq1e$D#EKiUk&#%o-Y zLX8a2d=+L@MSh(KI?{da*YrTE#b}z+1C!thFv0KrPFc-ZF`cTx2 z*#Om(+a&C*Ehv3ZWpI^L()A3`|_>ap*8y?h1FzaO=*rva4frg z-SH&|Fa6QuQ8i4&qZl)}o7b$JN6Xy>gQWs6SlatxoFj*ci~ol)l4IAg_t1q0XV)Ov zg2A9?VUWF2-tb^z7k<@cz$&MFA*5TE$pc>|G`0tn{ivZd(YgA`NaI5 z>}ACtWa%7xXGfOlo3^ZN=78z~b(lp#_&MAwk0d4iL;YqGTA%HRT|syuF&)z~A-5xO z0Da;(PTE^skm2xj=DXIfRC4k2QRXk;p7AZ+Yf?&uU!?GF6F&My`3!(XQJNh<63|=* zZno*5lXF#a$2!J_q?4Zj{sQev^=|wE<;qj>k8(sFbc1a1Vlrimm+;hLZO6jdqZbi% zLTnq|J1E`5JNsXGW{Y1YU6qPQ1f@qT?ooUG$WmPDry%!}7RN3?a(`umxSw0xFD&jd zKaP^0wK#5xr|#!0#pO!Dv_~;n7ua3AVuNfiS_TeYknK;F?aB>O{Kew9n3WWNvlL(5 zAjQ8d?%(!&#Zp}5rvRz{THJbzyV{QfaPFO>&_$k%~r8bLew`YevCtJE} z{dAPHsl{>8H|0&U6xS)m(CF82*7XolZ3^*akl7mkdX=rf+2U*>J95Q2I3XJ%a)Uu` zVeT<8d&r@?j&QD@nGX4N6-*f|nfFtMerqqMgA5)xvJ3s8C)^)YyIs$kJ+kD-(Y6(f zv`dRdXEU0d(0k^eRm0izxOHD9`%HVE-#hCP7j`LO;W@#(&v%S$^LXT)oD0r6GUU#zj?SJb{cp*Q$LgH=J!6v_ECq@Wkq(& zb#%{+dUVej0_C#e10XuRrLC)_y?8IH4(+`wr?gY%qMO^SFX!ys+V|u7dkxW!k=>ri z9P9j(4M*qid~Dyiw%!Pa+-1ccs-4m{^3EqQxK0e&{F#plVx#cF#`JV}5UN+5DMVpjfL0a$;}w zr+_Zbr4s7oQWN^QhDI+?YhOWdl^Iz?x!y7A4Pw-9$REp-+1Z|>SVDKHj5CbComo!R0{pgZfxUTEG!e+%ra<{hGo#UPzF$g(I$>cs=O zo{Nfe$QrWYDmSoM{91g93X*PM62Ti+tAO581$54K`OHn|0(Vj;2b&1*aEl$g(m+z) z_arhX-A;tl^JIOLnm2jcBwx)_&LCg8M^5=Rp3^1;;U}c#t+WCZF*zv9@zgx!qMY|o z9;cajv0dHEbmusSdU$uC9P=^%5A1n|J@2&VT|C1bpg~RGG*7GzoVHppgi=Za;2bb_ zlh8Z-vk@)a?4)LO4z49q z^V4qPU0dG^E*<_Q1osnAlZ-u(Q8{Sihvby+KOqkx>zlQI6Nf%2jRS2YBIF zh&>1_s^fS78#nw5%}4Qq^uX@wZbJ~5L}M@%=r&u5qft1HG8WIGw+E%4SV}KEC_PS4Q)Yrss_ppVI>0Id zGl3kh?UXAr6L2-?Q@nAv+tYF!RF!A&7p?$p_UfDu+{Wq3Aqq_3dy7DP*b$%<;t!c zdY!R~<2H{2JZ_6Se8K_T3BHk#!p77H>*!ce zEv#kAZ77`L6?SVh6K|;%_9Qqqhg5Ck8aF?UxIUY|XAhBttlC4|HY7KPlWpN{>1PPz zpOGk6yj7~@G7d!W)}6H(O;zRFAt>EObc;*G%=C8NvS(l|26YTHn^vH-L$N<@9SuL;(wzwaqJs$=Tg%=Hfj(u^RE5 zW807xP7vcZC=p{FAZ>fQPefnVGkQPn{GjrHUZL?1?lf?3m;uc0q5EsFbaiDz&V1!M*bh0B%gr9b)|h>4 zCi2*3?>)scA%hH%+1~I%(hV*c`K)GJpN9<VpkOwJKAyqgrGjMKRjvf;V-AA3)1 z20&jugMfh@^2OOe(sPk>doSutEE?8C1Kn+pF^6!~yO5xF;Yj#Y6P50neGF;hvi2I} zk^OQuxb~nWWQ+d;SlKV12mZle#zMR=s6k_HM!vM<=}N_*&6{7xv9jMBPg&1UR#4*8 zuPvokOMMtUrz1Cr%*pdUIDh2T7~UvZj$qe0xCtOP$^v2T1Po&eRX2xolrfttvZlaG zJ1@D|w9|s!r`6dY7E}SH4O=sds<7~R-VI<0x)%ne$pptzA)4Km(&dpcrmm&chGtrM|(lR^gPjJ)lq^^+J6 zb&hW~W#sA!QnrttqArO6(9Op(nJccyY^M3x&}f&4B4m7`aD`sdBeq2Q+1gJ)EAtJ7 zmX_k1*f?B#*l&m3uns*!06RBHp@w4jpvzn8mwSCI`HI_skyagAM$Z0Z;#EgoT zHfhY_ETCj-B9U(F85->q+=H%Yr%lj^*Q?Lch;h!nvqd&SlM|CnOC);<``U(KL!%2+ z-1dHP+6A3O@IDGU>we@TxyY#-#Vb3gZD{l{CHV0~3BKwQ{6q;JpD4k#+Ic-R`h*fZ zIZ=Y^T!JNnZrFzoWV=;*G?GBMr^p|KPxGw&R7JtNLFOQMcXN|fiblr2y2`#UMOX&a z*Zv`H{Ex#Fzc7>QdyOGs=1?#`Co?`X2%n*hUj!i^#_ae-W}L4Q{9HbbCzB{3$n2I0 z-kg#8hku96jJL=BcV~k4IKN=h=Nay^`MzM9oVUw%ljZQ zl8$^l<{6G*^1iG^DFTZtejJvqj1wC4{nzpo?x!eX6;}M1Vt=XFlAfk6uDOGFc22$_ z;DS{8ZRJ_TGs(m0?HCJHcvM#Z2nAI$7H@#^T9f^bcJ=>Cx%ytSZ2jAD9+LMWbZ5HG zI(T?`wd9#`$&U)KC`XiDi(7+tI|^eDurkZ4&@EF(SSZ!9ZM5&w+JJ;YuK&0RXz;3o zXIBq@L)uZUcr6%AZ|!Owm=~}RpTIaPf^mE>=yOGQRS(|iT0E+^r$a3891#3M%jl;6 zWB9P&JrGZSV+KNwsWzk_9$;c@&BF9RDse<*M+-$74K1=>Mr4bcEMCAvYu4)-r)qek zPT79ngnNIL*ZS5kp2^gQMAlChPu9GSx1ggx-!u9=z7Ax?3%C{W8~$I*FJ6;1JNykE zy6bOo*8NWYSkAm9k_cjqGgyS57f3aDjte&FElL zVl}Z1$rO%2}Tb=lc^j?4eTbfryyT5g=Fkg!&~f`EJZDebHNdH&nLHI_?kP% z4Lf#@AFR?Hf!R5J76cyOpKreqs-5FEljBiAxe`fq1aFZfVg-iwQa~h$ z1QDC#?D>8LHEQth*gD77TbiO1?fGh4&n@~;?)dWkDs3AN*3(`53$pT9{)k2HjqUR8gm>e@*|pZku1_XTj3Pi zP!_3B*yJN}${*q>HaS~t@_?1C2-rl9CySKJlSQg<TbjhZpL5EMM*i(5U+4Nz&k!(uh*w1I_jM`1e zCc_rlbc}L2f+L%_EZk(1LM5BzdcD%f9m^)wU6oB%oE3v?`gc_}CBgadm5pUnJ3O^% zS~jWav*CXd*>oesXKx#PS0oDAG^%=Y1FP8tJJlNIqXdjRJq0q`mcgK;fa0&9Wn~RM z_s(WRg*N0vRRSL#C#QTYPx0Zo;zM^$p(5ZzIUXM>SImd7fkCv_7ovvGhcaFymNqv~ zvS^}Yd^5(Lf-bzE-k7qh-G*-P(Qd~pmjjS?J5K~xDp&3%CQL*h_D?)|UE{{(++Vp+ofAN=F^!r^2v?SgG?B?GloR$We? z5E$*n+i7ZjN`{xhO429L{!DM~HG#J9MwOWZc(>#}VX16mvtnTnD_004<(@oYxw?A7 zQ8xK(m`NYa#cM#{)f&~)>gxHtm7yv{?b#F7vpQYR=<(=Q`c!AFDsomuVQ0%G>MdPV z^%nVrSFU%(7U?4G%yoETbLDEJ4^L_??X60Ca&u|jrY7So33G#KdcG?^x=Kyg*2R|k z37c*;*Xsmb`Qi*EYwv0w+{86pSDVqHpCG(95gT;18P)sekGvdr*QfzC^d>`#+YaiY z_}UR9^rYYP$LyX&p8tSavk4%?OH4ZEv!|tdOowZ+}w~90>|v7rB|vdKZ6B7ZDVZoJfp|ClMGK zF;2nDJrIGdJ#22aMa5#ncx_eh4wws9^)A^gG9Avsbl8;{pUSp%ESQ)M50Zm%W)gF= zAhSg#*eYWtq98LPGh?CitL!(!ZI793QrVabPQ&R;Oojb$Ns0d>{IP!YiaBRg49e1} zBpsN`uyQgUj2H^Vp7%GB#%bD$UqT`j4`!sOd{U{fZzx%T)iQ|#g_#Yn@+rmgnIjxm z-pshX%at_B=Mt>Bk&yXQ1`Z0^i?Zyx@;|K-u=c6^{*ccd;U@M$SLm#$P?XOoWt7e= zEe|>JVQI0lx*bpsNHYoUX(mC@mNbIhSz`_mv2*tAvskvBHl#ILcP)YB;POf*p&!o_Xx{xY?Y0s8ZKAop@AfpW#V5L%l7 zH2IQ5C-)#|sFT-*z}W{HLV#vdr9iKAasy|Tz;X70YHT7nBSVIbww2F<4Ii(vr_x3` z_*rraObGR-6@s zTDBgZarS{EI3NB`oRoaqN_}nu9b8SF4Kr<|9UA>G+`jHyLaL@^7J8&%u^q-%xmf5q zU(u8$Ihojz6}o{P`B?S;iR{SP%%$Xi+<060=-Hpc>2&7g0}-ev6OXV|WYAVRKojk! zwb*f?0uXwN=pW{jRk$Y1R!b$Eg5cW&VA~DkQ8rR{=tPl(urkD!WGmHWHTiZ6x2gdu zvP;D|*>#Ly&)N4cCA%)X(1|SBk(2BaNd`eIl2lnNl2{JV>lr9DbF4rA1iANw;rw~R z(RaUy zS89SK`$|KYV*84fVgydvSCZg~=00?3`#ylD)2N9eorVoILr8u$*o-3e)ywGFwfGqLYzOUXi;{+wrV61QKEQt3BJ^Lq%-B5Eknv*MiKDul{l$0MSROV`m4MJrK{|DHP3K&dVGyq-Pz5WwTc%S zRtYa4a@JR@6azYSraTFbdBN>*n40mOPUu0)Yl)iBzV%9yU|!4PVc-r{xMxrjsO4 zU%^z=@cRoFF1Qsg*M+;@YmgWS^xj;Rq)Bi-%sVngdr7v-oPK*|CQvd@oRhibap%{} z<%Q(VNuiVt+m!LWRsHBz0+F+~;n=vp0}8}Xjpnx#L|>Q5>3sgIi)5yv-rN?GSc?p&y~5d{NMYmP#<2o-s1MSOjZw;qV(&VwXT1rQ7ulj?`xI0y~ zwoPjbH<2elEgx>`s@D}VuKIlC?xcG5vwT_A=d4ggaLrs)7rysSG^7;xa!+0_axP~2jQivo3RsU8aevfMHoYook$|D=pOjo@=O6aPeT)8)?esU0gMb)=ip^BK!*)zH8XJEPX zh(9@;W!1ynQLiz3rcJ-++m?9PK&@etee&34>2!(laDv3+A2UlIn`??F#_$`CPt)x%py6*!*EJ=a4K{B6mIUX+IfQN?<0m0Y+W33ArMhf3oU62n zz3e^$BYW8cco%Aelx!nwAjC5!ixLmGxXh$x2m{GBuoaZBauq_|Tg5EzV zUwN4K{y_!?c`EnwU{a;DyK;cl;0+_{|s+*O#v zT`(uOTP243B@yldyP}8TenlGh&FB{q?whNNSleeaFM|7+)uRO9-iH&-#gV-knc42* zZ)8xCe2H^6HnR$xS8Gsn=1-~2BeI>_FMBFm;Ol=kSLxz%e=g69G}aC5)77$OfW&s- zXa4k7+vYYflZ}s+EtRylq6&K|ORGl-!0tI5kM<`J|D%}pR)+Rf^3?|&d>NQLqMh5Lm@_+0sL?2$mFG#{HgGtN z@&dm8xAA!pT-#dNa?zCbfwu-$WP5RLjv{+mnj2SqueMq`UUu~=cWjxE-<9A>qb06} zJ**%Hh?V9fg>j23bY{9xYY5dAHw0qPUXB0X1m4e9Y2(^Jv`gB+0JAo@KH`6ouc8O- z@hka7Eo+aP)fXtY#m?V8!&*s8aXxMI*c}X;?phMjbg(xHmK{3@9%yaNV(QKoPh&NV zvn89fcJJ#FhM#2L{KD3pjdW2E_ejVv4*aT*CF%?}$zU5-Rr4ngW?TDnc~??PaRD%N zw)Jhb-MicRW^A`p+tTGEZ|mz^#Z(@Zn3uhAx5qsL_qxchcm1{I@<;v!t$}Veriit0set0Q(LCC>|<(? z;n2OW*e~2V-A{iFzeN4?w|Lct>Gd@wsIIT|dh2W2n(x-vz6YzZzV=-?6i|PCEt_GF zMdmr(Y|NGM^w^kFJx+kE9WD!tbVXYI~RnQ>j$ zD2cWVx2*XFzCq?=_VP_$1`Y!Xy*U_PQYoyc3C8|@PB1FQ_U5-r{97e6<4V@4+$eFB z)XdWl1fi(Q_^Ip+zlOlT{E;V;qc&D$dgF;Z21hQ%MWnISx+iqOwY3zHqN1~S-=?OM zp13P(qo|nn<2+GDe}BEsT0;A$ZK5sLCfaTvy^9o}nuQy_nw?Ac6SkhvvsdY1I%oNO zl^2}M6CWlr&k8k}cPl_@+!4D}^uYgn`NbFb|0uuO*W}-wr1r+6mkE#f{I7UpKHrY| z-8!-oM0~E@@bM~gZJ%NbNqyT zPJhq75 zRs9_fP-R28Z3}PkGtG)KWoPtvd-;-@u+GIb`S>sL@#kiiYK>jFmD6)kEj2Uf>XvE_ zPQX&f%8H)as^qZ9&x5tr^-t>2_vwHax55h8je zv64BYR$2*cPI5sT)G_$g0s{#n+$1tAy&CVxBDl(Qy$zZ=Kl0Y=GROAMO@gg;b#16@ zAmI%hCElQ+lPq!jZ=A(D#qFSAtUEgf!SQLa##pBoKnNK}I}SGqHRZn=^3)HB6yrMy z^{6_ghP>36x0(*8zdz;~4Xr@QE9*M(uqL8=LdjlDmzPZXZMAPZnIxH!$RsP(WYQx* zBAKM_U(o|UOY$uh^TgoZkzZ`rP*RwCvz<9M-`+}t8}?px1r<(L=v47^ z1*_|al)yQ0VwN(C%#8dbW-V8cfBe~1P+TP22L?~mei znQ^V3Q$>ub$`Pd(H|m_F$PFv1jQ*V*FavKKS@5%JKNEuU2XhOohdDZUJfB>1Kp~<5 zj#11}(0Kmqrsk{OHkrVe5%sTXw zuZj8E!rS1ZV!xEct&|dOR5|^}20>W?;eevB+rXg8$AN#INnhGreFG(6DGGKy zgz~8?Sh0yNYmtWg`W_)#)n!Fgub0?sqRVorE;dkQcKt*g zn)DMZ)cVQuz^HyAc9OwQeS@WdmWucXKc=~sirUEf$%~}+dcb_bBVBfDys<8u^Z_NP z+Xwz45(VMQavJo3teq?4nqcr!xsYlhPNeIubA8}$@z#ur0mdZ{#JfHK+gKk^L_gmL z(!24$c6=SI@nXnQyk=SZcjlv1aSE=Y4PT@a1SNU_GyLMuHFVenXo2$dS{5cid#ZC- z%`UTv>Td_3aD*?c0#~sy&G9zr5#~e+9>+9)7AcZ_V?Y0SGUst+E2;RzP)OuyQn4Zp z`dFR{OpjCSHI}D;s?yW(iP|yY6D!pCzkQlSIEzf(iADWaj*;=n{ngk<(DW$Y%DUkNw$jQ`u1DjX0it=*uw5-yF}F znmeOnK=Pd|(m9UU5ue6K$r@hAf`BJqF9e;{{68^M8jX(bdh~iH*b43sQJIF60<6kVl+Sd5^Z(jnZWA(*< z?(@9!&Jfd(WwK@L*)oxxkbTK6`xYT<7`vHwws(e9_G}3uMFzCIKH@7~5iZNm$V$cX-Lch}<@F=8 zQhlVU{?q`c?ozKBJ%gx?ixa^|9l>WD!OA_^1#^f3ImUC7OpCRH-qkZLTOKlO2ysx0 zyW%fv(q1qs|L^rtZDDOfc0+AS#|_zX9yip`y{Cdt&|}`=+~SAqC+U8uOVxgevnuU} z+}-2(ANXEPzUDsFz83}wkMBJLzVW?!xO99keGX-Tf1E?Zx$#zstW5sL9O|R~um?V* zkG62RFhN5QGl#OXz!w{fFKWf`%Th=eUu=Xc?j}yCd{=ytdE$$WITb(q1Tww}UytQ~ zT@PbEJdAnbVd*mR^O#27c-i=-5X7y|IIKYLz#(M?+6+vNh^#@Wde%6`dI8FxCgmL3 zG4Z5rcC6&^SscUU$Ir*t<-ECdR?OA?oMKENm`pR5!Kaj~rX|6ZTeme$3wPwHZ|PwKNwov2%yVg1Jq z^0=#pvi^GpeS@D#Fnuik%D$EEuewm}ubH7E$4z#F@%#_28}K#vyY|=Ykl@qz=3wZj zjP-@{Xm3VZ(;nLbg7`oO{?(t)l5blzw#T;A{C4C54ngYG~+9}n1 z&dmJ6Z$*5Y>l5_s;H&(VEdEJfyoJu+*>qkkz^aFzce($)0%q#io&J3qOdAjWK8;Op z!*(~d?KmI00}qklCvNm-YM#g7n81FYlNWQD@m@h15(jU_r{Z{y)t{x|gi>|zy)Mwf zn5=Muj$=>$?7Y5Fj%)t*y#6-KFic08$75pRJNTT>dA&dvE+yy*|9z_jYYgAwQpLA0 z#pw^#IA`PY=Zj16*?4+>_9v~06XUox$7yf_pW&nu*j2##rP=y}z1GK@8yx6827ZZ? zb)4n-xh`z+i?$W>v2_{-VxIpfrXPG@eyDzg9PhKq#rUD%p~0M_A6eiFeNUSc9Npk= z8d9Csjq51B_lmzP_dFzXum;y zaI`{n+xF4wlSGBvwx(sLd=vp*;RbCRvF;my|2P3$XTac|EQ~*klzQ&X^`$al;-@>R zJb!eNYww1CzQ_M)B9%uWjq&(lQDF3g{_e_oJc^hZaGC-J6#k!!|FQX`$3ThRTq3DBek$$=XxlK^mPcNYk$*~6- z$ki6e$<;-d7j&=Qa<68&a@SCsOV4O_0ZyI0l_hgTQ}eZQCB7JVBcIWp629Np!B)%h z4+?O3;na4a!z*tz%}zZ#6TOVrE3?zdOiEwnqAzhoxpfQo>NfEB%1?72LEgoDRdeh8%Kr&n+(owh~?;lX{ODe$KUWd7aR! z>|uWTlv|{|#D}LI^4w%z`&~|pI`@Q4&|`jjeurc6FI?NtGcEE{59lYQq;!{hODU(e zaO#9QxaEFo;pWJjM|kB`x-}*k9(omhE;*Jx>Xh8KhjaB4>?F0-c5_^J>qv61CcviR zrvu%qX^$w=%2)ANfRs{yt<&Ik^n*T+7Ud3op-dbK}nm4~jP7vyTS%e&+9rn^^J zb~|!!yS$xlj(C@s*OmLw<(+lqF2dWTwr)6b9QreBaABo$b=b}EiOZ`AeL07pR*rYt z`&Fo8)4uK~`xDkE2EL!(9qZVjJ8U4l$*`wf^@J{Rwbt#e6k~fooil!rheBPQ58;Y^ zJP+kSxD}my8~yxrb)%!z?M-r3fLfs!c&z53I;NF=>V;RAq-WM$cJy22dflZBk~f@w zMSI_cUHsI})oc-dn^cZ;D@^HEV`|(H)rwgNPI(qJX$2Fqp-!0 ztJ0M*8&v1K-S;{?1sh0eb?_uLyPNmM72)NfsX0Wea4P23dw#8xx0%a}b9K3b+N9*8 zh}T9Jx8CXI%1;~7ZxVMib#pA)2r)~wv#Gt<2ae~~#a?=a`81bUTu zx#&H}$?Vq-a&mP6^O#)qF*9N=It_~puNqD#A?4sIajCLt1ojpyf+ItR|DLuY#5i4 z_ha~}T>UW5xvCa)u5!6onM?%n(-X^`)MIYmlw_DQICE&B z?oQq+rXArl6j7PW3#T%t9FNVMOU9d@HY{;+_z~-*-Z&Ep{WR5-oQLw7D4K`Lx>sY} z8KSLw^`#q?qiQ(iZ9n70`vCk!B7b4bQ4%K~!IhG^QS1*Gn zad&~6n&UMmwQ;O-b@rx|5>D4Kra2<{={(xO(KeiB40Zbat2Gk!{M5&t>598Cv6g#P z-FS(gK8GBa@{HPzmh+#VelsN(qIcIiQR={0=W0FVBuZ5^S9$1bTh<%dX}KGls$l&r z5vd4Dk*k%M%jD`i_p0=Ihxak&07*UT=7>U1F)tVOMLd+~GYlhMu6}JNS6JzHbxPUb zUai8ol=3zmkyJl5gLOGd@!!H?n&2P3Z^Z_^HTvyMSgDK4>4IGa&#KJf9VdKeCZ0>i z$m;=)tvT<$?r?mD^T||)6KXhz@MxdpddP6zobGTU3@2=s!^vql6{b0yM-6A;8xAKQ zI18csi;oD0cc#MGxH+8@0u3XmF>EVB_Z@j6#2^aXRefD_cYYQ#I7%6Mv+>q<%zPAxq3JxOoK7mgH85BwhN z3<`scf`@ZCJJI?XI@eZHdl#xl^K>in?+}?7YD-(RK2wc8o$;HU*%a3`%GIY2Y8bC#n2s!wpqjDu7+Ximd)j?L4=UHGO0f` zXY_1`lhtqrxE`L(aB920n!|8HXE?cX8%|Ak6y!A=pIc5r!EMo?a)whT)+whVI05v|xF3mTon>FG2@bwKNKG;O2&cBnld=%o|u=iOgu`K;|O$ zNX+R$V^tGfSEK8WOaL5~`FV&_PNM4W<5wX+!LFTi?Zhtuc1JF}|LSV^mg?tQ0KJw) zNy$Vj)I?o-sN1d;>SfJYhfyi|tX3;fR|E|;oD*ub+N5PR6q0g=tM}EHTEoF^U2D{N zY1gMx&ZlaPx*#PR&Ox+zgLfgLsZ4XDXnEb za7(_bDu=LdoN)EIs;X(3g|5ssh4;8o&XGr@oxx74^0j%<5y=D{WJ zq+iuLn)8|Q`JMEedQWo_J4o$2>36kJYgpd3;h*Xg&6(kr{HMY%#z4alO-p0Qw!YLd z&D>le))CFw;pPglzSo?xutq1umlz7MF5)CFf_CLsn$yDaTbH#yc@1YL?!f$@Wh}%@ z&b3a3SwCscS*tXs^`BDLP1V=JkGvw+$wR`4p#jz|Ewj*-8El=@oNwG#46(k^oT_fg zL#$JpbKT_1VvVQddQK)2b56$5Ob5UXXZtTRyZ}Ox?LVS3iK&FQ%bIGKb48Cnr*0XdQc6! ziq4gSz7UxP;IK^WWJjivT}zkK5u=-B-msc62Qpt`Z_1n->RG$4<{ZHa%IWg1{oP~%0H?oTie(Tiks7r2wHxgN9x7E__q&dIB8p3I1$7W*RD7sHLSFJYo z^h}vx)t^i`JE?wJ399sHdHzIbB^&FMC2})^O8uN9G0lRW0)z)+CZE#xC^` z*Pe#a#GFwSW0!r1Z8&y>aC*>ayM~q-4XA1?twGJFE zr}j$Wl(RpuztNo5My8y--ae~2yWHA0*m!0Uxe{E?MjKC^fiuaXFvaRW#>@ zTh3>8bvDazN4kL5GK4ovxoQsBY7@Yl@ zv(Cdgs5$jKoTHlal85t^<|G30sD-7Q(L~0>py3095G<* zOdCVAaubi8t9H?>+!x<{A)FYx2@d;A5P|_C!$zww(oJTIZwL!yd4s*IeA?>uMCOMoHcH{ z)`eu(oTF|zn?iDEP8QcX2RsgQ!2bI|R<3n7Ixr?0Eem5?Hu)6TWVPa(xL$5f79z8z8`+(x8b@RIak4BZPU z8E!{KP}WioC)8gl9Gi1bj0*QZt;?zF#;8XP=L5-vk_-52Yni()r>OrK&1vP@xtzbA z=8ScFu#&%l=FG1k*>=*?{zjVfxyxzbZ=yMWxSZzxW|~v{DJNGufAb8j=;CjwIh(SJ zObm7Nx6!%2&*S9k;eReXE4=Or?6&xCC-wJt&}|=zT@U~Dpn?8wI@dVtarh5W6r6{U ztE5}bFn^B>wGa3AMJ}RC3nkYLHNxLtmva;AI{y04ri2q znCAHW4ri=CMsudPobmpVn)4iXyZjeJasJVogHJaYPJ(}&=A^eG*&nMpsnSs7O7#ac zXQSohdfA_#IZJJa^NK%7bDnl}p6m~5P8L_^>HgFV)_C1NQOkU6{3nKH`(Fu9h7F&` z>Vp4bXpaB247nEjr)$ppZVxW?zplOa=4Vc>W&Sz3psNCsauQ~mrB-c*b@86&~>7H=Xze#hhxfc7{|FP!y+?Jm5Z`GWJ@E zHk;@dLznyqGT7&`|B#m1?fTe{{^Oc6&-I_{{*#(>Ioz?~4gWWq!{@jB7ehb$PwP>c z#a%W1;y_Z)CED-qM^d?x+k8y{$PfxPJI>=pD@|>W;67&_6V%m^)6hh5o5I zCtObUPa#M!McxKD3191YFKjp`|qEO_x(Cw5;YVb2(K) zqctae)~gm;LDxRa^`9D{m9)$&E~i0g9WC>^%V`u^Pje2qtK8DDp*4;tYz%!_%Vcrm;YXp9H0R?Yj!atUtD2L`EL>vfv(TBE)69(|heGFT z&IGqlkA*JPoQq~<6+_>IuGF=^Y3wtTE`+YvGJ}oIG2m>>z_}i}U2|SAtCSe}J@m5- zGMU4UX0U3murnECBE!DTz$qGbEd%F?uwOH9s^SI^kKA+(p9#wx!K3?&_Z<5?8+VQhPdQfG|8V7u;TUa&(8-Y!t#8@wSnJe~jQ zUA*N0{ya_7`9BQ7+Y#VfhVm2dSv>jHFT%M9(uZPucduOT8ZrIpHddlHv=JFw(pR&*A;j^9v!N+41po&`Fz;jWcU)8`H z6}aybR!iv42147^AzF%+!Ppjf4z{bJ=%9~K9q20aFZhm)xDL+@v^uurPY{2kn`t=r3 zKjh=L9D0L3xq$Nm0e(@pKixj#cjIma z_)Cmle`l|Zc3yAnzSy+)q1vp6qUj^>t9)p8Y1naoZkx(&C7Oux-^8eX1^klGdn)Kc z_|Htx@1aiw=tB!x4@DOiu-$ArIFxvX$7kgQijRctf^F z6uk|80EY%3%`&I+5u0CtORAdtOZQ~-2lq=`52V#w+)o-mjm=X(tV)# zB}3W;>i-SDYztcZD4xgywQ-tu1avXhKPN#4?828vL3?7Ya~^s=bp*RC&=qgsZFA6% zQU5JaZug&{+)jUtqI}RV9F*Ie3$!!%1wb7;IrbrpTlTAA55vZwj$N+6ZJ@AvvzpvKyTf?)`6b}vsa>i%vWXbZiI zApJ|-pSH1!ZR}zjyGZ~0V{Bs=@q=8zVi!DbrpvR99c<%2SoCT8;Oo1le6fr4e?{bX z#s&Mq)4v+#Vt@Z+28w=DzTXc|RhcMy$7{*%A(xL33b z<1>3F)C0`)2}6%=6CBx7#=}XB=LF=N)&bA(fF48qngqT1ImKx)>G3&lMLeGo(=I@{ zgwDnc#<<}{p^2~`<8v5qO#eWfVfqd1%k)FUZ>EngXPVv~|0}Fd6#a^E@doPe2z?fT zeyH22==%GjZ#je4_7%O~x{MPY$h`%5Zm;OAXp3%ty52lLBqJ`?g}*bMfH=u?4dNtI zj)zQF;_ik{NB=Pm*(>}?e+uRKiTV5_HdBuCOgYXo?QcoGzPP)}xa-%#e}25s=U}Jg z;nGjb(SD9gtDt|Kl31O9US3SJ1@w!Th_-|B-QL|X(KH*&m(M_xQ0}pq@^k~`9YeYk z*PQss@$wY-95;9#{IQkT=~f+~97n>ycj70Hi)hGm9Ek+qi3>7LoOqaS$6+}X=A(9j z^Y8M!)GjdnG}H8SUSI42zaadCDbM%2Jn4)#fY0$}gNM)SgKb8Bn};8ICgaft^ZJ+Z>jv{Wm~oEo!sqoU zVajoWDZdNxC;H{t+OqE4^fcpiJF{Qe zBiaQn!LOLUh`wO@DC)OIL{m=qRT${%Ggy~^{(2j4HH=8l&+GM4kmvO~(~gEV(G<`A zBY*ZzetL0%&>Dz8j9)z^_{U_S+u<+F|80%Xi6;GuNsmB0D>Xt<*PKen>Dz5sE}FlB zLgk>>S@<#IzK;w4>k>kn8eG4U;EDzpFzNLT{`4J5?`H5K*n`U(V(>*>e#=1SJ9w&U zM0whJji}OymI2=PH1@X))W&?lSUmIm|Ee zM9~b~W##cw2KX>!WjsXDN!0sC-e}5=eya-kU0CNmmQQGMzVcKJC-U=i7o*HqI6fC6 zbs6i65yj}v1-#<`+Evq*ft0Ph9&Q;JJeT!FeFol0`mkPzZ-##Kg4lI=Z=sb9?Ph4uP+wn3uhdKES2};oKpulLnR4bm zFX`nB-em9$BY)iB)dt_uIGTFi#Ci(-e9+X_)YKPi$}eefTaBaXRV`nhdY~WPM*OUA z=r~PV21+duKe>tc$Nj)|kA=On9Am!X$2m29?JS;?hriE3KQO;?9T~r!8nfN776P4s zehW6i6Sqa8XianMZ$?z4Bj4dG6U7VbH+&lV3)48QAJ&6=WPMX@1D6NCf`4-Su84d2 zjB9AU+65M4oNzyI{AF6}Bleqifo^d&yfK4vKZAZdQO?;$LL=VH(az(3aDa-#Hl`76l9x0G>_t)Woa-(kO`^@yT{CcPBuJ@dEaVx6Y@FN)Sf zj?3RaLi%&99#2@G9_N0zIa zDWwEA=^^y$7N$03>dt!DbivTQ?+Q+d;r7}zb||mgZTe!A$X|b1(pO;~;e7eKF~uB& z_<9F=4*>OzRCM5~&`Ji+1q}!PD9YpWk7I~0d>%8-wDV8cjobaGY5xzf&jsK$x_=cl z1dbdTMbk{b^fLMDpg*s|{(sj$ecGf57h$-=d%=nfj_?UMYrp zn}F5;<^5J$&=>JoVMoxG+wesX$nS5S zXE4VJo4R9O=KlI|jFi(&+YkO{?D-7(fzMZF*J63hZ5T&mpy&IbaiC5=&C=ru>F7T$ z?*~I0nsM&*>t*j9d@Fk93eJy47N%d0;>|hGUq9!4wvWC5UJSXLqs0z?ES5Oy zTZDBy`n9&{=Z#+wy$?*sIDa-O_CEJdHriH=X}iFZ{t|x^1_=Gx;LZmBGEn$a5Vtu# zUpBOFU*<>CLtXJjmyyvF3AzjA5698=A=KCFEUE5sIj{T^Fp<@sq|3G>JV5SL%b_eD1=Njs3F8K->Isx;EJxWnk zl*{e@7?}6Xr$8AmFqFqvR>)lf<@Bns3*(24opyn;ULT{LNbnm$AJ#W3+EJsfqIJl} z^^}BtS+1aNM-&}=N^l4GH}l_zJ$OFgeYia;ic;W5g+RYOCG{0ADfL$bEk3GU!10GY z137=YK#xH}iyFGl_{%nvzR=J!hW=*!D3`(44bEzCZBtH1Ltilb6-I8Vp(PE!%wVbi ztf}`|!yjhy&ouO1Lqm*wH6wT3@Lw_5@&Bxb-_F!`T+@nlcsBYM_IdERE6&U?{wu-m za!#sTd$N72gYVdr{gC^c{j5It|HZ#JANv>6jQ%wXe%1u#v7dbgzhOUW4b1+-l>Ld% zXV~wUI)3Q*RYpJb`WNfj6yvxnXoVk%o(H|&8Sh-e9&(=|irS$37+|h94wUO<%KA(+ z^$!8%`k4-doINUiKga8U`tUQJ@0s$s6;nRPV#@n&ro2vI%IgHCe2&HRT0zEgF2M0X z{Q3U!D?#pVZ|ypAXqNv$z*$`FU(?n6m_40b288(@W*dKk4?jQ%BXDmJpLMRMZ8P! z6KL+=B_6cTiM1@^!mmGbT#cqd-x2*fDw^Ijbh)8*4b5igSVLPFI>FGqhVIogiiTp} zz~#R)U*Zba&v;%q)BEjz7k1_TW6J%w$pZ77{)rIN(`7av&MU?+M;y2GPMKCTxQU7MdamGgw zCz$?@_|5b&vySP4arN-%Xv&0j6z`*6T*Y>eqR+7p$&LK>qxzh~y>H6nDrz*&n=o#f z`VGB;^908AVGpJke-K*L;KK$_$9&1@H?|1PtMe-g$M}sxeLb6FT?u*y^9|4Mw+!_` z?{eS^t*G}yPXXWGj+TMEdi~Hc(5OGRBO9&P>xPyA-vGuf17ij^4W zS^cEkJDOr2gnr_<%Ri%5WH{~#-L=IZpOR zy|oZOhk%~=o@o^IhJD5uxi~jHiW;E(Nv>RZDyQ?c3=}eYu6R-Odby|2=7?i#r@Drw z8ojH*-?`nVjo%EwdX)9ws@GlOj}y?ZkKz1h66lT(aNh*9aSfq$46R{kt|;MOt->@~ ze}!fW^ym8?GokP5-Es~)4)fq#@TZ`@J2=11`wFi|qiIhL#?dq{kI=IDg-&^lsq9A< zARo_{OHkgYro4%Jc4x|V*fLt|eHQk;w~gzOc*d0DAybZrOu0XpvR+KH!v0J- z?lI*!$CTqAQ~p{J)2bZ>Cv+0Z&mk~>#!Esuo-*!_am+Lq{Fmu(rrvsZ=9b&f{dpdG zb6jWpaXe=#`>yipEA-c;(dAXk;#hZs)+&beC+NsR!hba@zAy}*!DJAFrNG{zW|x)(`85{L-I^ z7#H0$l;iY&y1stO5-07Pg!c0J>hyd+K7guc+8> zApD=@SdWZ$V?FNgC&zC0+jj`$*k9B2eXyLjAHMvM^-Z_0W7oCXzn%WPzaDRXNB*Df zdw>21+4XIVFOJ7^U{|J&U7hj9{=t65c6*S0GPe7{`utT7(Ldd8(!YM1G?dR9rTrP} z^R}PIRb&7C{#Z1FAN^N(uYK+>-%q(Q|0QD_oJ^7R+JoYNH^0+AjvaFuzfCZHdl7M* z*BLVY@Es`lFZ&_eIpeq*g?5Qu((UDxe+KIV$6guR|NlGRU)%5Kt*DEMQ(pi2r~Y-? z=j2-hyRm)#GUpy%OK1iQ` zlIMQDe;lUU-O1;S%O_z6uivr1WsJZ7r98)fA5>1@FM2s~QIVrh8|cGv=RtOG=4)?U zeGBoC<(+mp{qqg{f}dyb>N6=rJor1iX7r;Of1`IsJH7QU<=+37a-aN5xqbgq?%2PS zbL?_{v_MtpC-PP?tlNLzW=J<|B`p~5;;e|e{aA4T0Zv^k1HN; z4{C2leOR9Fb^I6kb68*e7y0l1LEhL=AvPK9Bkx#u>UNAUoFD9*d5UJ zh*3O$DfppxUz=+BwFlNEyq}c%aK3|a#P^p+)?u3N_xv1Qt+DL_ot6rHa+uI-@RM3& z{WNC@KTj1!?QyRCZhO&lVBTD`6nb{d>!;c{uX`+?^luSR#>pPcab=?6AMx;6E_43- z^F@2`WcYJMV3wQmH~bI&hJV7t&p$uC{y#i?E;nC+^!iI&POq=l1Nh!{#QY^)?6Rmp zE*cO@Gy~~laBeg|H_q+M`E5uaj$V7x<>8Cfk za=-d%A>zcLB2wOg6N$F`k@>A z_uZmGJ9H%a4(Tk1=gsLetP^-V&eU>Zhab_tqiE+%ZYSb5(?8H(_dugzhb-ef<5%~y zI4y#`em`~mP_tg9TH27J+jj{$R>a?%@)lQ`9E9PXW) z`TJ$uFRqSx>h-5&zDh;?g=_dJQB%B=g8LI}w}7U&--!M!1^E#eZ^O#rUUPoTQ=LSg ziZyakVO`(9FJH?0YrNt(!s`ZS-1EHN4R#KNecv77%&Yijxjvt{KYuUCWnBO4x&k|( z-P6#&-9R~x{nPr#sh{f|hVmRe{!RU({-OT4sDIeMs6V6rtjACAE8j2DjteNqSzr89 zJDhTy{9*^EJ$SAJ_Dg_1*U+DQU*55c*FX5V0>?j=zAApc&`>E?{Gt~8;$4)(^5Pfw z_e<~}>{1$f6!+9G>r(Nn$?#hr;?xZ2>D6ly%H#SuANx_QPWRWBaUEM6_Iqxj%rn=G ze>v;K-*0>U%GS>*;5mxF>?53cl1&`b(+B61{^WG_hyPnSj!WXN>E(?&#cEk<>z!K|3`?Yw_)E|hH`#uJjMgo!94F&*3|J=%$4_zm;3elU*(4W%W|_o z&fDJfa>YJ5kbb}3|6AW91tgBHDJb@=i~DA5*Q`ajop|@9=wI!eUT?*COHn4{qm!>nr~s>#GcTylSD>ng6ApTF5sH>okrhgEUR=|FwBI zZv8jC>-|G{|1bX380AVF#dEC2FSEhU+;9J-z0LojoNe$Ij&pesKPr#+Q{?yf1t7@R zYl!C@fsbKc;r+C;p5ymLpJ%!4lFsKnELZt8k$bhTtox>5e&{zoeP4ZZ5kIfeE-(}J zX4(klGF^dn4$~!uKO5^D&BwVc(^O03m$hMBOn(Pq6+S{q)-$M|;8xFr)iuGIM zNUZCzej5$^6y{|@b*_xEFJY&TIVS~E?<97t;U4tw1am;wj10RI0C-}v)|w= zBe6@cGtps#)hO)pC=-2S@Q7d0+v79S1%syoZv_6q;PPWQ|3h@k;Kslu2)_mmFJ^s8 z+~)jQDBR$Bz#D-JXq*@}vps(MVtiIAX7KyKJAum?`7IsTzTwo);Lm|`0{1fbhE9K& zCK?>lk<%ZhSq3kifv-i3kDx6E?*Kjoyx-u=Q}FfP@!9Ang9`(n2Bt!+f0F6H>=fp~ z5%?vx+#1gedlReY@5Vnu1q@ybd>y!$V0vLL(eLAPP&p5_Vsp}D5B|MrB+c{Stg(;M zO%J}+G%xuIvpzF*c{A;Nl+A;4#pb619-J?>0G09JsMyD-x(64FEl5o~xKu3O;_=`! zO$$*!ji=DcxA4?tY+)MZNv{-Jgi<{CYSW^$P~&M@zv{8YXs5q&nlwl>L^ZKXe+uKWyj z_Q=nOtxGR>@Z8w?G|7V($2Ow=#if4RRqomi@0Ud8#jnK48Dn3sA=2?n(V=?;!tTxk+0qvzmyO+ma=$o&$w|^&V&2M#Zo7On?XJ%E}nXM z@VK}H8sfo8aY?k=;0>MdR9##OZS>&jajCS!gWrgoNIx393-WKry+XG=cxBwHpTwo(Z-Dp4&6H%MZ^AEiwfD`T*LD81OgSoY zyqrsO48Dic490J0?8LLVv`pjgNXnnn^}kD_ zHFnBhPVpKC!%pb=WjReSxT~H|meUl$I=+^m<+RR&kH)Q_9UhFm8|}}44|{L~(!cRw zJU2=gJU9aQ2M>P1x0-Hy@F3qBvdVB1r%}>)+$F;gg67aT7`6`m)`mW$d!j5^+MM@I6Sb0a+GCzBvRuy zdA;)qbvAgwNBH_d;1jZ*5PQvvR8%OijUo)5fn8jQz;-(Cq<6uuFa>tfgmNtJ`1fvF zq;W7z)*rj+U4v!)v76Q!EbEUw^pU}`{@6o143_oBUfOT4tUvbB5rbv@v5&qnSk@o= z=%T@$w0-wecr@!540{RqPTYRVXYdQKckRGuRL9^r;QGKV3?8c27oQVe+}8Og>Gj3u zlw|N;$TtmqLGK!T0k{?L27}K`=Jm$`I%V)Lz^8$)8Z7IdgOvSADPPt<2dSXJ{dRNz z9HROL4+9RNL)6CLa@s$>q%j89(Ejlyr5c>rpVx=>0aSk`C9sIp+=pU0_|2jh2PsJX^z>Net3hrkKy zE9uk-{nk5hk~V0ZsQJAEUr|T}t}jjf3BMZ@_?q$=+yHir4SYitG)|<&$QK(pMe!z` z$KlI?(=^NAWoXA6fitwq;NmE6Rp2b885{=rPXp)ZOM|yVzk`8q>9WD+F;30~&Xeyc z)+doFqP`A+3)IHo8XA8`<1~(^oEm>mdo)f88;f{-EpSo49m)PU26s`~&_z0-(}Q6X zfO7($Gx#JOBI4c@l^yTte(X_CRmfeQlf)i^Cva0Gr2EB-niGPr9Hzk7)vdOK=7ye}0i*Mm&G#g!ydT18vhHW))e_3bMTck;6F4@Q~b5C{_(fyz|)fc2mRhRuS@rTbPPf$u8t+i^fwBKrpJ|+?l6AUIo!2;#hUoVD)E$FkfzRMko*WHD z-wLDf_GG+YWo;z*4ZMZf2ES%n(BQ=ex6nAA?!X?8$A_sg8VAGVydq2`7%b-%VQQkm zG9JRzRKX_xhN(FojPn8YmIuG!%cS1(;6c8J)Q28?JwB^CuCc72evi+t&Uvt%kVD<} z;P8aps&Zp)pL1T5SJldZ8+vdA`_yu1+#b1AM@(=PAP`x#l`tu|dRD(UZa6%!K z*A`k72wgJgyEH{Dj6ORY(&_|LQQlMwn1aWi|K)@Uy_B4W5&Rry3GU ztKkMO0qz9MU%lY+qjq8ZC6rNb8(amrFYtDQH+@btIH9cCXYgL&7~sPO=lTreG2sdI zwZWx;6M!!mEbE7I>YBl_eki9hHI@30-o;(*glLt`;2XfN0hcj2dKPxU2~Vo03~mEF z54felzs)3iE1|sVU~uH?IE4d_F<90=71VfxW&Kk@%{Dk1`Bx`Ar4}081b990#|F## ztD@Rzu&lo-sP$*MK(|Jnjvw=M!qEQwF~b{2TC9gJWRddkHmF_GhJilYo7RHB~`_Wxjq| z)i+q?>!(#4gJr(1rN$U6^K~tiYOu`Lwbe?4WxlShHXD2p^<_@1qs|$83HV{)>jsBo ze$ScsjLOwq^eYaW7r2PQGT+x#PZ=!peO*=0V3~jGsdfg-{98|TGkD(uo*(P0z6Ku$ zE(pBZ;Ky|QYoLxATopJcHBjd@PNb}uf7(z(byH&}zBE)rTd=+}_5Q9axZ`YK;2cPwcCH^Wcq%FDhSqmY4MHi33#*5B@B1h$^UY zJY`3DM-qpsx*Bh{Q&IoM#9^vUC(fTpq458P2_w{CgSQ+c`Uaot3TQly7@toZsXj32 z6OQ3-dg5rcU*lky#E&uRCxaz^;PK1OTE8%fA7fQ9gC%~9RTT`D@jp&=G+4&}IMvr+ zi7(^Ts|HJa8L#FUEb%2)Z8KQnORPFzFpvM=664fygO38+Npb4D!4e+>DsvanSK?zp zMH(#eIbPK?SmJZMYHF~=p9D43V2M8oDqyh0??jbqu*B~~HQiu|-$`nd!4kid)NX?% z{w1p)43_wpto|@q;#pAnx{Cf1&w?te!7~4(sGJ7N{F9;z7%cN+s;XeH%#W$6zribZ zV!fO+K@Br_FK{IAID=*Wo2ZhU^v`+zo2VumEc5HjYL~$>zrL)#GFax>qmUur!oiSMA{Z!@eF8WBkpQ>^gEb)Gts%o&r`)R77!4mJM zt3d`!yq~Vd87%R9hFWB>#Pb?;s2!X)0mt|ASV zcs@%#Zm`7jS*n7;60c{gjs{D-o~`<7?3@S9QE`%P)}wRORE^U}_WyI#3XK!#Rw>?3 z&sDv8vOe(|mra_dHXHmxS==>Fny+#^FX;tJv-|?p!{Cd^-z;gN8sNbllipJM4gRVO z%P&>=dP)A|a#*h=y{(2D90fcy=^eG%gU2N;S6OszZTzaaUK01r)CrzRV`7v=R1tXF3YK8W@$O8QXM>LcALrph0JM`@x*s0DN zd>HoIo0O)i_mlE&muI|NO*iU^(v~YmLEjK10@4gXMgNtkR>Uz9K2Ob(~CA^>KnLXsoO=27j;-`}JhYqVZCn zoX6PKLjjR*jP~F>!D?!7wX>-y_ylgR6YR{{4uRWvZlaevb9aVNEhP`D?-X zrc3%c^jDMQ99A2HI{>#z&S|ZK-?P1DAH#V;a-_8zI1K*3bR6DVNX}y&H|b;X6`!1x z&w3elVEG}y1CsMwOAQX7AIjt_Xl?c2VaZWexi>_9+6hiCYz;AZEpYwhB36$1l3o>d zRaDgCr|`J^z1lyDTHOt{s!DpI!B0XzmS17;g~He`B^R}}dhqDvVpjB{v6PAA=;cth&uhctG&U#GaMA}%6<)f`9O!_OOVU^@3 zt)?dZWsNIX>oiWIF^Ipt0~M_UCViB~m8|@WxcoHY{JjH}t%@4&pdC*#u41*&I8onM z=^dzQ&C)ntr@xY1&AM%H3+Ov5xu#X_EiNyf7%xe#ZM~xL4thhEU)NfyaU#vtxSq9M z<1|Xde7q*PzID)~$7|fsI%Co&XnQoaelzJQ8aJ`BESCC8K;O;DO|8xbH^+RjIk~wt z*@Jf_x3X?)oJgF0B)OfH7klmy$bLoi$FQYOvRuJMf~l-=uHVxWDClTl8Uk zGkJj3LE|)v)BQ2X8gA0ZYdqLm;lVePhgfQv)Q=B5L*JoRK8+KpgvP_ImrQzNZT}J0 zB$M7y&&E!#5{&%Fj4}jMskFhFioJeam9%nsk(nDacp-Hh;Ka*~29I(cC z(kYl=&G4jCFv(i)Ne>SOtwSCh8BDdVdE_I56Rn5e6@9qAV!=sPWsMVQ7W|=D@Kx&- zPkP^^$<{KH&ieFCnrdzIq(=v*TZcXA(ZQM4FP`+LgR`uN<vnRb%aFLa5MY{fdf{U%v8YdE$-zT`#YUW8F8C+)d^`wss zzH5#0q$dVfSkpY|iNTfDI#2qv;A-oDNoRfE2(GcNdD52!Kd|^~e(bNDzCQS&RbAsm zjkg9jS{*#;`+}RTNgjM6xW!s#PbJ6yx)4ygR`c5ZteESXH7X^T{4*4lQ-p%g-0sf_7zV#Y_;>? z=#-<@P!Fz_a@=}FW9g4-DJQK}p7cg3Ut9Y;xOK`Y>pPEp>y$HA*y{B9)+C>^ifAn5 ztw}y_4bV7V_xFD(|P4H!$Uz)kb3}Z(z!gR*WZoe98@L ziU+5p{A{i8$fuz01jd-^vIkVl}q$`cH*dLhm zDZst)v%X&#{98H358IavuJR<~2-{vK^^HUSuSw2k7t}bB#%TPA-CpB(jh7_nv^SXa zDZB9&TuP)}=mX9lAJ!1~o0L5EGa3iY{vwav#9-N9wkpW4&evO!}%{*q%jg!ajuS>!$DMjtl8mH0EK|G&H z#qItEU&TC)_cHASgQN6%v4lO_;3Ry7Ap+^|dGbflaN6HVO z()J@BoF}r3UBrWPMwYcJc<^J9PuTT5I8$Ufo1b%b%KIrL+Ft0v{zsm)cX;scDdp|E z9-I^3WXOqizLVdV`jlPNgEOU8w4d_eB)gK`%!4;Jt891i;C0Qa*aJN{JhG~t3@7K76 z9sMciPYaXhKU&%~4IZ(8{kf&x#9+C<-O_Gvu*8R!c5jV$hDm&AY4dUJcFZEF?d>rdJNu*d_B@T_ z>Cb97e?z5C7!i^NkMnG=t^*qJzEEU^zeNU~e>7&JQ}+`wf=! ziVpT^gXKJ=gZ-1ia$eHG4%sF3$@xSFJJMh|Z|Pvy(m0;J#JWjQ2YdKFmXD`Gz_X$6 zj?VX0dwUb@%3&Dq%aC%x;eg2R zgukVxcC!y05*&p8;v3fX;x7e1@h7Kuw_}bloC8`6pGuekHZHJS?+t|PR+qDc%{!nl)jh*xJ{`L@!6KP8sSSh)`J?gmV!?<@~puJP$ zG$s4hLH0R=Wq&-_zNhgHCHvhWcK#Ebe}|I&>QK9?!TcO%@4ztoIfG^YIouwuahj6- zW{f@6VA=nUv{!4KNL8`E=^Yql=R3*eCsIsle2q4Bw0%nBG$reivG(r<%X(y-9r+c@ zrzu&FjJKaMSoW{6b}NHrKN)8a@!(6z@%C#PCsH2RV@-0B{eelB{bJBQY|>klC)$&m zVn=^1^~w5aqTO8MMEYK@hbGw_OuDRxUa?0SEc?UP>=_2j{&I@FM&lr5gZ+-BPPISw z;B%?d?IRu>pZvOg#)E%Ioo#nM&H8M&Isfme^X&Z^C(`_~T;4*v$Qe$Lr)0G6Sn6B$ zXpPepuh)krEwNwsU<$r%f8fF4!FTL0JvcJB+`i$##e(nI51%FcNqK#fR@r4dI6C;g z-Nb{R4z9KPd2o~92X=}FcM5)JFY(|$!HxEI4;~r($Uf`AiNTNUdmcP3_=%nWT)IBX zf}h&eJa~O@yWPQq_XT&_BR%*;aF;#9gD(X4*lRubm*778paO7E-}2zrDPP&2dhnX$Z|u_^+#}_* zeb<8rrku6&o=?|je9E_W6%S5HxnMu%!KahIw_`kbM#?37ng_p?a>ah%gSVtyv%m1* z-6=oX*9?~PjvIF73sS$FXZ&QB&^VE<=y-I~Zm4k*EeHM~^_E@XJC>iO_rsYc{ARDi zx|MMp;^m_g?%K7kFm~eGT|4tt#=)@pc>c8w-LdpgmINk?<&ztPNyYF6!Bg7qq##QR36fKHUszHjnN~)+cilX&4MD9DUTymeHj-qu{ zk$h7rb*uZK2fnc3Oh8CTxkcNMJ6K{9{7>na#%{(RR} zXo=>}uLYq!nm@l5gm=;W`K>4nM)T*lqA-Hl`Tna_SjHTP?@wBVbY|!KuvXy`n!gV# z3B&Kv{k0SRKCC2ALHQx_`zJ{l&*IMaBPC%Ln%^%;!XmUk)Rz__2|u9u{gWhwqrZUs zLgNW&em^A%>1bL`!<^+p0h-@W$-+jH-)d|Vwxj9&7tDn%>|+jM?UC8Rs&Lfgw?Z`G zj>*5<4Z-Ij{e3+BZo9kCk-6BFwrAcBsV1Cawv%NU@O@2)haf+q>Fwl4=2}8mbd#kp z8h>zY;W(P^kFm^CXj;M3d*;&pt0Qzq_g)BJA&1lvW}^o}em9oY70#g#LH_O+Qcvg$ z_kDDG;b0h}S;%KDvGDuN`a&U^-!C>0iqQQ2uz~O+n%^Hb5H>IelAEx;-S!5;vL|%? zr51ia*iZ;X^ZUVuLOhz^4>lB1(R)JZ{YE2U6Pn&%!u_!DtH~m1ER>pD*RzRm$Yc-C zrot(c8+m#Qmrb^LHWO}{Y^~8;cx18%c}sX{vJmVeSpVg}hwhIpxP{U=ZEwXjAvEb|0$%m(8lCnL;47VP2Lys zzA)WnZ_f{e?@ewR+*e34*^l%Sen<2B-TuNMr$^EJ_Mvc!+4(;A0O2~b^L_3C0=$9_ ze{rn;<5a{e42FylPM~kY_IBGx3D?jLw*P*@E2rUp9`2`L zP#6nr&rS}xz$~{Rp9!xE7i_A~SMwY@`U3TI4yCv=YR54sPucYA~e z2(OqOWL#@_ei=Gns0Q@{eV>zhXy`YBH~L~X8ebrMWb)9^g~D7k{VwkF&_zO+$o8zji&D(tqff*oI`&DqkJWYh6vZ0o$ZrQL2;$~!|&&>t_&4AGTX`JvGD%I zkT78xkCU6skwQ&@AMfTjpgj^ABTPld`~{=!gvJY-nS-#uah324<55uVKGRnT8ocL9 z>zjM<`!|Iq3v-$61SV1wQB!2dE^RRxk)of z*SSWaa2Y)U+FSSCi-h~=9V1{gwYPs1UNbw$``$3qSLk}d9p0m*=V#sL@cbflgD?aA zoKLIHXq+`reV{;NmAUs$oQ6YUQ5>Stm96P}{yeg@wYh3ymC!K@;5`G-({E)4ra z2w;vO%^>~qu>HbLbk}+?gG$(+!eEuAk0Eie{ncTIg>YsE=@0R|u%p7C)D{Ps1IOd1 zuoKSqk1lVf-!GjIuCeqyzifkeJ&mr9dw1AhLMP@@%llnm)?LdY&k6);I{d=!;H7WS>Z0);YHieX9Yv2+bgvchtcKF3WL$z;6AvW z<(#mP`Lg9M+=stM&IzgLmz@de3*L%81nruE@pz8eDl4vzMpbcOPB8n`y}yV3JCIRHlCk#7k7(evRtPN;oTSjb#%3W|@DcD@ZoJ;^2%DK5tG|iLeOe(ABX?f4u2w~GRKf3;Kt$4gj47ba^QWD@Rvd=)I)Un z-thn0;TG`*a}4P?0p6Dh7sQFRdHl)}c;4?Ri8Iiy&|jNS+a?}H{|xcI;flBcz7wYF zD*+D+H^lHd+(*Gfxa4Y-^4gzF=`mbezZ60Y-k;hv%=l)F{;gZ0H_P2aRXTxYaA zyaVf78eU(_VYU+i+S4n-8;K*D(YT#_3H9ZQa4&HN+J6>|#u?sNT-%(-RXD#Z!kdU& z-{O7&7eGX_S_ z3U4X4Zb8=%&`#%b8zx8?o`jz^1# zfudi#DtC<-BKCcUuWvY>?Z$_$$>PHKygy3UPH8 znx2>MB@rvcUresnDo8wH^8SdG;%(+~R{nRc5iI(2rOTIF+~B(S))FdC<+hD|0oR`; zOx%ibUY>`E?%jC$e5jx9yN8QQxNUy0e-|y0;sJCNl&592BE>r0S$dmSA-u0wBTDq+ zX4^j%5hLcHdHoYB9!Jyq=kJJE(feJ#JzD=fjEEC=b7TFJAU;O(`X@p3>cP{~{rx*4 zLEM0*^-n=Phghd4jXUcfhu9ch7wW^6#34@Lw#|n9k06QSFK7$w|4Nc1Ryfnc`eI3n zIN&|Lz6Y$nN)Z#dZQrx{Csq6z-4l*yB1sh=Gncda(GT3Z7hB%e4US(TSuIZIw($CA zwU~`@UjL+v+tIxKNf*yCm)m%LNEcmt)Af~F_WcdlSEF>%hTgOh>i5VD(H%|8XFW1U ztcC932hVRJ^Th_}2A=SAH?m0dLND0^^>^etu_^jbhGOw<05y6@1g&N<)=sfCiX%5>?LGDWU<&6P2ZESN0y3%n0fxTz*RDwIgr(V zF}=&gubJU_BGg}P>K_op`SRo}Y_EO&KgBy}8P*?F|DZUvkA)r|G7{ov>K_*Oq2u6q zxHUK;`n=EMUJ&om;HbC{T^){(qrq{p#|Jz<4u0SE27ieg&?{koFEltMw(iU0AJOC8 z@QfIaUJt*wal^AB>Br-z!TlPZ7nh@-)rRY@;U%$xIYvHw8|uUQSH$PsTorvy9?|fcxE4*@vF#g`i>H|FpvD(4dn6R(C^c)(KGRP=2AlQSHs57#EZ;vvIxf~Jo1@X&KyIY zLi;@ytPSG7S2#yVM&wIz26|L3A!{RFiKm$D#NP+L*N%KG?*5pkA8{VeQlyL3XDHvk z9pXnLU9APorQ~M;W|WPzTHS~7I2}jmPNZaA$jswUB5hXr6CUpfaWP7<`Z1T1%dos# zlx8hqjw3@L-Y`nHdJpH@r*WSsH)}L=9N7)=E>Z5*^UTitSl#+Jv$KA#ZhgS)V8^FV zRCTNHDP12=KP0M#)r+~5+}s2A^L{n0qfK$&s9M&A7_SBS^1ej3-c z-ZrJTkb2ff%+BrCv%WUP$3)e$di&Dt$B=K~eECN;veq0y?I4$-yqOv0W%V4%{Y45P zi=!G_modkX4KJa+64lJwc@&SwvE_ZNeVJp(w1$L4Mzyfk^yBe7cs@GUv!&H{G<6Jl zF%?=NQEjZj=x)>D`DIiG>p^ZDkEpA)oSEmJEm2*q_nAux&o5oAeq-qRN(s*|-K>Y1 z?c_tqKRcqjTQ7ai<2=8-XAK|6&GSbutJnA{KZ)#ZO-1wb-^V(20*~|a{l2xwL~1*E zx(>#7i~7JSPNH_6@BUVu*?GMCTkDwOr=t2>+j0{Jln-aT2UtH~cF3(8!YJ=i1FeJj z^704ZTj1ds|Mf?h{Ud6S^)rl@fuDmXV*I~y8vn>T7311<8vn>T8{C7vsfXckmw=A9Imzf4KDs#=ikS2cP3{64?Xp zU!p#>&X`QkM+`ZZ3GWL=`&u*5?IAzB6+O!Og4sdV?;@mQ^k>!Ctnnozc(tL4Qv4JnQ@D$I#x`5G=wRzqW(RrlHhgar9cJB!@!)r$ zza%E!+HN*aPyKdGs&yx`gM148Z3AO+t@Y>dI31_xvzS8bF!XKk?3fMKBg}E+IMnCC zFH(Rul05S z-JXMFKz(1K7hB1E?s4$@;$upz?a-+ZkB=#}PB1wyW}h`0{nkA~w#NKng_RLkET6oT z1L#rScAXezvt>!xT}acXWfdX<5lK-chPzSEiESGUd$zHy9GS`{yG-YtLqi(0CY_# zKYDe&YMp>S@gLNOG1sg)%yFcqJ00Kfy7e%+0@^1e_J+0XLb^WZ@xN((m)UuKZdxaB zlOqB=-HW|xeTt_2VJWV6tQm{w@^;b^`T^Wx?^-L+5w&Um_dV;3Z`t~ZI~;$H*n8Fj z<{;J{X&C#+T5~at2eI}=o7f6={2)JyJpVneG_T*DRGR00WVW;Pi^0G1I9U@6?TuI> zT|#dHhsC-`|DjzM!FWR6qNFdO$Cr<{5F2ZiJWWoGm8E{)vGarN3sv%Ec93tN|EVxm zm2%MPFED;ctR|JCC$*w+U26J0U;nLz@cmh=A+$yZ}NrB!I#1lk{0SK5s3KaaYebO}8I zyt8(F=^=W~&(Ize8c3R*Z!ev>k>qXio!G|GVe|?X_m*y$d?&WK)a?g$yvWgP*j{W4 zX$G@{y!8#;UTf(oxq5L$TzAPQh{r#^0`+-ZPbqjMbqtaA zKzS3_OM1@iARCuM|7~0!NeJfYsYk@UFSSPRhxXFvaebx9Ci}MmY;UO`J5d$ zP`bn%L%#Eb8G+&kNnJyEd@LM~WpN)#+t4x4J_(B(B3)vRAzi>JaYLoPVLW}WYjA%P zH(a`lJ`3%gopHX>3+5Q|4g8*caU-R{5j_2OP~V-7`%DT(Hw=OC(prp_wnfr7FTYN> zelC?Umy+pY==&z)rTgeMkpBjf@sb=x)0bPQuf$D|+A#;o9U;GG3KONS=ssYPOqBYd zhr#*sC6lDV-0b?i88=B9!_2SO_ghYuX7D(%!u{Q&xGBC(4Cqdx=Jk6$94F}Yd%_tFEC+r|ea& z5B(kSTO?r>KiO=py)i7vQM#TQHWO}3Cy=_zvwnK^^DZ%QSS$j%SD9!leXm)x11;0?o^lGN}(U zFHa7}{~>*4THZqTOW~N_`WpI+Hm~wqlbV!z>Cmh;Q0EIgOVM+80-NK zMK4`ObVvgWj6Z)= z`X4$K{6FwPZg%`F`W)v7X`OIR zO3mc{8r(7Ayi`AnyD5ublzKClSZ>4h*(>3av=-x^HM5Xm30I_Z7_WU0p0_3ZEd}Jz z9b`k;0Z%KG8ontPs(DzdIBs`HiuHpMf z-&-k5_*W8&xKF);=c@@%B`@?Juz#l$o=H8>UqbwH!hcc@x+nN%!gI-IEnmI`q<@g` zLh6g&0r3;@FQo}T(s&$M#mb9U(lWIFM7qDPrQ_(HQ2*TtC34MmG(EHrGU0uU1dF_P zJzst>+z)9EtNfI?#4-ii57ix#d}#xX7rXN7%_iSqF0sV^56-v4CcAH>@e)gGIA5(C zioA~*`gbwIUFri!0f?}8uAA}^W}N@QA-|+PMAc?liG3s zdNAbg6jx6Ig4dtVwp1g#) z+%oYqdVf$~PDOWt=iOg98p_wu7Kn$%ddU^&ue!kV@LEk}_pNk$&h@tt1^~VJA&rZlU*65u~%ckeNR(DR6X=S98ms!twDX@5;I8abOSd zI_4m`$4U5}!O=th8Qsj4K5y(H??S)WP2V@^A(x{0`&>QbgXpc@==yuef1yjj9^i}U zTWozj9mFD^Bqe}DqHl)%#KMboh&kw_$*7^A#;k3xlZQitqnvNen-Ts9fjTWIi@elbz zPD0c1$zM1o%bDmBuyxgBc@3J5PhM@+6!|AK9iO}&cqcQz-h7BZJD*kkb6=u)|6KD` zUsam+uf4r$dZlUqT8~w;{@?PmE910(?t@ixD@~XGc-8z$^X0$&f6FhfjML@AVwYB$ zEbA+B3~p#mlXK=hsIEXzw&%<&c-5@3VNKd>s8LizmzN z_VM(Aa6NypDpd|)r*1p49?Z`2CRZNI<5=G0$|d{x@u20+^;LQD-~-%!pnUmfRlZ!x z93=mA8Tu>02hqz<(BqLW|Ak%+J_o+Y97CEOhxg-F70BdIx;_}c6|5%~%HGVpz2QUF z$jg|ayxRlc10@#8C20D-L#xDfvgIIMo~Q4axKZxNY$pd+!gy4Po8_s@TT=V1N8iT{&FqL0A(BN9vH@o4(IIX3Zkc`9>|9LDOW zee!H{4y&K`$&0x0{FligZ}<;63DfiWQTEH3Xg)v6et8X=&VRBh@qqjjn$CZc3EqLG z^QWv${8KJQ+v1@;2tI)3`RSm19KH8nn!gUpkI}q-Jt)6K^Zb5LwjQSEBT(ko$06B3 z--hdXaqJf6AD1JT14&O8+Fm>%@8p*G z`>ZGA5;T9G^@M!*jphH6>mQ}-bGDyP%09>V_S!;!%x%X>xgEMMcy7W;xf^qk%;y_9 zCHFzoaU5a35BUr9PWXM7T~Eu?(FfV@JuL^IzuHH?Uq2%+LC*twfmfjano7UlJ1a+^ zZ-U*)S=oVZ0ry*H6VJ(M=y$=F!TIRC5_lgg@w~hqy%YQocq{r(R=!@4ccU+WeaHp* z0-D!%7v*v^ukS9(_t5j9ee=L^N&Xid!rD8RWOAIHA9+3GUte-rmeD)F9^h)|dr)7) z`_gh9^b4>DxCuIa0*zmlTcX#3J-{8%{(&@pO@0@>6zl=+i~b{+-Y@(uk3^pZ`+@zL zVZ2G`@191=qt_OY}-5T284U+E4gV4Rf&B33deOde;c?^0Qi~l1}MtAH+m%k^^ zKz|5s4xW!54gMtdzPuFuHFyj-h}qfy{XmYyIBzdMkR52=UVb2_qj`Jzp`4HA?d6B^ z1~hLEKa#hid3*Sgya&zO(-m?Vx`Z9i3i&8=ARCXSUD9Lu36Hb#+d`hmuT1s4j`LMbq==rQ?%c$!{?S%5`r;do$^^?8oC|CFGyk;C0M)a>~O(mLyqhH!xlbhVd_L z!fCcXau|+xaFS^Ihnbg;iazKg!4RJ4CUd*q?$JQ0{29?|Js)1VGF)U9YdbL`!NTT>f25+ z2a<)`p?@T)k*(b&o__W*cz-v^%eEO!zeC!VoB;1%rli=2%)RL*JReF)xA`j6 zLGUcWLZ+l-+j^)xPUkaRkWy${W^m7h@?%BHI@?opDLfB|O4(=|=EmcPTS9+R$|l=Z z^jv7a<)m!2-9Ybx>t#dA4qIY1p8n&}@IFz>UfUz|Fle9rmGVDZ?dmk{%Jb3&9oPRy_ zv@IAt7~DAZyv?f?kG~81+dlP*Z8kaw;yqLUw!Ns$+_D{&uuWo zDm#Do;e3UsT9niV+*hkv;P=RiPeV)({pZ=KhT@CPg!1giRCi@JT7%#7OKJ_JXCt1T z=XVdKpUJyZYb!%c{v)-H;)mV_`R90QJ;l$9FMk>G=k?UaN=akxI?$i=GW9K`W0NY^ zSlvb$(3G2gAK!d+2gTc)+Y9n@_to8$05-?5odiSv9k#lc()%qQ4}$$4Nct(!=mNOD z{a5!_j{ETVMYx_8t^P(sY?878&F6oZr0hcT`4PTQ_M`dy2wy0t(R_Z2$x1nz z&rdN~sX+7jC#EQtxB2hq^G{4s+|Ydf3V)?On$KV1ue3z-`7yp!x}a(M=IGKdm40YG z|HM>fIGWEtF;$s>rtO>4OTSXSM)Ub6zET#WyC%{3Z>A~1Xg>eMG{u4D^G{4yveA70 ziRsElG@pNBhO!II=bxCN96RGtXg>eK zH_90_9}i@Kavjab16iOvM)UDK7Ah|7`0?W7dn{Dk(R_T5MM?uSAKzn<(h9vlgWgYl zt8_)50(*h`qxt*|iT%0%WsRzIv?y+m2a%f2|HvHlQcN{nz!?5z0U4F@7-r;_67n+JP^B0Q_Wi zw9*iLu>sWkX|akQGrZq)8tyOB;*?x;FK93AtR1gxMtAywIzegIk*+U>z5nEq=1_7> zZjiQ08QqC*uM3pd3AGayfAm1+BqadN-=9iWwsN!Q@x9xoD7`zg<>j<@Vg3v7a&$7Z zpSDD$D2dF@`}Gv1l-c>bD@8fT?0nvpqMYQ$_I;}If~UvlU8&0ME_8cAMYcYkUtzvt<+{m!U`sc8JjyNndDnWy-Q**V4N4+RC#46*`SYetN;H~3Z`z`Gc4xNXg>a6u`&ex3*`UN_F`oMnvXwNtjt66@dk^PAT%Fu zuvkfAhWWYRe#kf0IGqH!D_lqWSaCVx!J#rAoTV9^`jrx5@q?`;>o8-ZrF6@qCZ(FC8By zG~^FusL9J+_banawuc;0@=f;k{8Kq<@^k5+^2p@;kV8t#URCQif)6Vnnfz185#A+*(N_2&3b~}LG})b8Rtik6AAChAGkIUgRfT*|wZ6KZ*ObO4e-!e!;%9Or&vIpv$)AT@ zS2md3H28*c*<@SrO~s{e)%q8P+)}!s(?-$$)!WKwr)_jR**nT&G#{_)u9Af2<8|Ft zenIo`y6!5c(0shEf0QR^K3>;9O6`7p`_ykWzNd6Y^YOwSD1K-@Uf2WW8#EtZ>VcAo z=HpL2RJNh{_4!CSiRR;zJyPy7J4m&j@IF=ABgMNv-9Gogw8zSq=*3H+d`f$&1eiQI z?LXxdbCB%UiI$Hql}qUHV0ZFTxry#LiN;?k576&{-N`HEKQ!%Moo;`vxO_;rA0*TM zRsWFJii(bC2;b-0iCP1l4E7HpYJK!n=zp4Sx2WFed0_t#i`oWVCe!6z)K2J=VE+&o z^*yxTcDjGAYJW5xSJ|DoszcFqe2l1IK^=vr<73Q86VwUlIy>m{qB<2#$5D1CqB;k? zGM%m;w?XsGJ_5eR$DXTeX_cgTsu&Ha& z^})|q+SD!R;ViDGzoN&nxT2P#eZbT0s(KLJ6YL+NswdIYSX@&tqQ7TxO}&Ah_<-)e zuHHw_1$%*?p#xdmP%Q)a`Hg3BLsigI@5A%@G&i+6dM?U+6C+Xg#FW zQ!k)rfy=? z-AO~WE_yF3KN_h`&<6B}=`M}bmS}Gsdw}~gJKLv?)uqf1 zHviS(w8m2R;s0aire@7~ed-tLizX$^+B8sl%9^_h;SJ{mjn!yt}K%(0qQQ?&?`IZ@+d| zuX5x4T6guf$?l}PT4A!k@UHsG!*IkY{&E0U!BNJW~RaW3+esUcr-oVv(i6QEBNxn^*fmV6YTmq z-Jc-lrRf7y!{p%fL23h&W6}q!gPCD|ok=hrSNc$O2|5butJUel)Sc+9a6M(Gf1EqN57&o9l;7a-g^~e;O-g*5^Qm=8#w0?*0dDJ^-TEBaMAERmgdN=(G^(C6t zuaCf1f3`lE*PoMB1I_Et$!cvhuRo`#jnKUQoTB=mdHw0HwnOv!(_ig|=Jn^7Y9BPO zKfhE5p?Uo|RUMAz_2*P|44T%TzT_+Q3pA}iJ-{>2wEpxZ)6@Votv@}$OVPakoUX1w z^ZIkT8j0rh=M2?>=Jn?cH65)zhWCHczgF|nb-=C}U#lC?w0<2KJX76@ruAzQcn_M^ zZ+gZowG2(`w>sdXXj*^i8MDD4dj35A zN=BU8hS^yj#jBmTBg5{%@pDP{%TtTGW>CeMLrsy2cc*NOPzM znC;{^oWCW(iE76=?D&$4%t`9G`E37*M;?q%m65Ct`-Xc7{N5$Ot5xp>-0R?ZlqEAw zy@Bos>9x#E^*J-Iuf7V-Q9Ty2^~?RXLiv%It2RLM`Y~5+iEi{cZ9nCza4<~Y<2%j! z`|4%pW1RQ*HO(xnG=JarN3{!EALQp}Fduy8I&~&`QY7_yH5c9dKk5zYIrKah->BAD zME4iQ%Y^nr-^`!XL1@b@cporxlj>*k^vo^lM3cYE{8^o5a%|>SbsoBTD2(5dxlLVc z@}|t~Y9@0Wq3hqBxkKHG@%BH`{rgq@pUKBEcd0KhJ$;|?Smtl4_AT9C81Di6cjj)@ zZ86{fi4)-dD07cm+vK~Md)e`VoU7CCLFc*@t6f>Vl=Nsv$m`4!H38GRw1)8svwl}I zOm3J}raopakuN}dYHiv9^(9}PjmP*-)&Z3)q1$)n-veq5le<9tEt9t`{ZnmcvL899 z4rVTPDfN1muWF1i}(6oK*mvu}fOZoAj z9-nnw9e^GV&zHZ-`b+gQd3M%GHI=!PwV%JuI;~#dmg(_Yo^@8O`yE|hsZ7UX3(GpE zj$$si(Rf_e1$6?N#*?!ys?(T@U8aGvvM#F&(LKS1Sy$AxJiUc}Kbw_xP2Gb20?uc0 z*5B%Gv>V)?h~&C@08PhZ+n9Ajy^f~iFO;R-Q17F!{YLv&Z>mqxbUe8CvTmxD@9F-R zTj+RjJF{-7Dz}Y~|8_?;FiyvRdoSybTAR7p#TY~TXYZ8#r*b6 z?ZM+%KRi>1ntUVcnL5klds+Xfi%g!_;e{GvGW74L2bi7t@3s0G&GR48WINqIXZ|4C zaBj>WE?Oj-=MPtHKeO}riP}YGo`0WYiP{a5Uu9XfsXx&52a@A$;eD5ES=+~KC)b%( ztyv(Am)rch5>h+c(B4B&Wp>j>F$c-N)UuF<+3wnG^#7QvX(5>YCghi9+10fy^lRoC z8mt`tN_2jG*VJ~fI4{p(K3%QEB6%9@d{?mJFL$U( z@Biy)OVA&~`xw-D+=P~&L$m8>o6xj;9Sz>i97JgOKLuQdrsY5NQRYC>6ymeNH_`5H z^nHxFTD2hldpE3w`Y^j59^9mf=2AAEq#tRk)d-{M;eI}gmM85rALby^ z6OOkZc}MGr@ebK=zn0xzTgx0r!r=I<$?l}>$Mo)ppnS^itQ|w^@cx`1>8xEr(|Knt zq)X-T83q3xiG7{CWQ0-y9&Sem+T%|0Qv#*d)nqm9&gCXtKOO% zMSa=wcp8jnVd<^8p<|$Z_qnBy_7-|SydRU5^}f~)Ewb|W1MOY(`WLkP?WgtSwn?nK z@2?F(CxVl+KGa5G`YljDm8A{TCZO%CJRYP?MgQ=Sp8rAG9JCuNk3Z5DbK6>a(eKfQ zXy0M{CA1&j%Nn8uGuz3LAX*=NtZi_{VS9baQ0;g0ezv_~+95O_4|L?*&o6aG!1ZDor^(#5PVdt66Eqd$T|DXb zCulnQZ^$neGEu9E>FGS0nU;xKZS7xh_+*Ntm9FPvGCnUt7pr zO89sMUux-SK0eA+?Pq3Z|JPJ)AI5omajMoWp6(B?|NqRMuJtwfeD>E`60@`ZpRMIE zm)jgr-rvujt(`-!VVT7O>ofd7rXHCdy!Tj&CAOr+DW@mdQQ0vSb#O^<|oItHF zIs)=fZSZvTvzxSjTdt+z^1OYzT)Twk?T-~&vm|~zX}n?1O06%N#+&5?Yu_{T_DGwY zP%YTxPB~$kluVa*u<^Tl=R|1kCV!X{srjL4d-{`{Xl<&=emODP24-h_DNcLH9K^<} zYM7Ity)b!Fjze3PLbn&h-Z!6-lc>com$Uk*Sx$00$vy8g?yb2s35dQPTRhuhK_%FhIFM>JvOXO`9j{R-;e zteh-u208-j*Y!Esn$K#!zKlk+e96^Xaa$Hcd7YJ$t9{7qZ2#qHLz(&Yx+^D78^>H? zISu*6o#bf?(8Z8n+)2I`&3xHX1MWwkS_-sOlV5?KqSN7fZONrjdyTe2eW!z6(%Al4 zwxUIJ-(&E71;jPYLo!rATXv z{&YXQe+_QOTtetPAm6#H)p|4A$#mGQLpeWc8+-VVd-@L?QA}> z*O}Y2h0MIXsmR%>EjL-n-KCvoc9u7Lw9Cvvct5d6yNRanhZLvn(Vn8Gg3G|2GU)br z`6A}*)kZKEyYTi|u{IUW+h--(UNmpdm1V|(M~cu>ys z`fqao(*~iBfTw`{(VY|Ed-~kx+D!CE;JM&X^b<(GDEEaHi`J81{4MZ0bY>h}^|>## zpV2$P;ozg(*uU^fJHuRR;q9MS+BF_${bzBx7ASJ*?{SdQw(z_>*Hza{UY{%K6VbH4 zBt2Kwr<=S!SJCHl%k+Kuy}7y`!5k$22k-Cf11B&C%A#T+t+RDK1LG2W4^f%r*56 zMQnN2pF1VnL+^p6{khcrm;;IZ8NFZk(8pqY6^qx>XP`sSOPEVpdw6+PEjQR`}4Z%6(;|c_pUy9dsX~mUJw0+ z$+z-)>hU|O;*ay*(}kT?ev#Kp4>0+5Zf{-twJPqK-$!3!vXcM4e#hi$`5)*RyQoZI)EBHp=%0pBN2KgF5d=RoED+4MZerg>;DM7?|#1h8b87OFa?qN z29q1OMCuI>@c3H+ABMbO?ZOw=!-rCs#-N0RP&n5Vx5=?7#d>toSr zus>yKDSFSNJl+o42U9ww>Vuh``C+xbkQ?*EYCQ+d^TTTWFmoxk*H-KOj?wiMyYTt# zSL(VefG6_ zAezr_`=g$Ort5Pj>+~X%MY3MsV{%>34f;uwJv=w+cTH~O`IGMYSJnR6JU8ieOt#k8 zthY7UgKW|Jn=AzXtdBL>7W|7IVDfU;t$Lct+lFk@H=De9$aeh?lMT-u`X!T}OFMP( zWYzu|!N2PDP4@QOrN3=*{ovp9ekOYa@7Bkf+%$NPKAXANh0ou;SMPm_ub_b|G4j{Y9L|4oBW>fR>T4?d-LG}(`w z*8P~B{o7~s@0gv>Q_t$lnPbQaXs>-)cvi1@o~}QR(EIyYh3ECLm#AY%lUL9`P_-?z~?w*LyQNNHE-=h7^|T1JRq43HZ7`9DNy{_eB@p(8r>yb?2VS z979G0z+DK$XZ+2#-w~WscuUV>cJ^o8*4Hox$^84S+xliS?Z5LQw{^LkF7NEWx})E@ z!S|Q97yi+`Zu0d%`v=++h5zWonR)rYqwu~yf!X;y|YP|siv zV)th$t`GHf%;gpuFL8aOZ#6l?wL*Ww?CcMHq6@d^{#>>U-9ew<{i{!5F1Jhq?=5_) z=V1K!Xc(`=<(YmItwMRb7JLTnw;RU4cKJ`gf`%pv+3xaOzlClF-sAE@e~A9OF??U{ z@>2f~y$^iI<(2MooA1vx4|qS#<+ZM$e+5HUF{-1NHYDVli^Zsm9tpnf;$k#GKc5Kq zn=Y`k7F(+9~_4IuTU|T@HqC@=*DtP?|zGrONF`-j;;^B2~K!pdBfQB#`4vS9hm+H z=wI=)S2K#y;b1TD0dykNFP`@5#&L88*b96f{oyVeuVMU+9tQRT|HJIu|C)w&haP`B z`@ZQ>VQr%>v$OqC*J#3x{n>SmmgpZQ(fXvW(Sg~yzIw(dZ!F)?_zctM!}Emy3L6>| z(Hp_8YZ@BU-dMho5&XvTO^j$vpZFB=|C%O7qABi9niwU_b~5Ql+P~4%$hgaYPkI{s z{xwaFTKB1A$R}{Vny+bYbY!-ZAOC{!JJ3}>`fEBECCqWm^VW1Wyk61t&h}|{0|0-eBG2F5jjk*nPyFHebHtjS z#vSwy7~dsvO>d*;Yr4Gi`{@sie#}8~DBHgej3MY%;QTcoRIdMH_&se4`x+zPSiZk8 z&bd6ar`N6NZ}_8=!P~&Ixbb@X&{)n~O8ELdGD{N6Yu& zMh>%`Btm{XxyIL6>&n)T`#aLu%q_o$_|P>Yjh$!%^2cTH|CpWE(_nVs7kXLM$E=7)*K`+Rx4{wErP(ER$J zXngv{@{^2dJdVG2iZK_{^Xq?#@hzHP|5J>>H@4pBi~$(u+Y2zhNAvY9Fm}AL{9@zJHG|@}Mzl%|^PNC__k2yf;iYr8f$vwOqE*HbX6NxsG_Eo`*PmqEc_W@=^f&18 z&izj|hB3#Ggk5wzjASDky%DYlqbSA5apU{L_b=7h=g!UdFWo4q&dtwXw$Z-^wR8J9 z#>dRg{F`GeVJ;Gfo>1as|N*cH7+na zx3|r>&yD$EyYYzGx&7_Nb8dMu)Ta%Kwi~Xs+3}DUfSZCf^!qPqeX_%7fF1#MCp(OH zobkm_p4oRA@1yznFguOG%+BNYtKsEI*Y7-DyNykC*!J*xFEREpJJXjKee0Uj|8C5v zXHLK02w;wZZ};GNXVHFRAG34$1IFz7=H(9=!40_i`9EeHWOg2ptHxn3^Zxy9+y%?9y?J$Lc~fq@W^w2KUN@x1G<}dPdC>Pct{ZOXI$#g5Cwc{Y zUUtLqLZ^Z~$PJ?fHy;0+Mpu(P$W3Dav-5b~GIpYQ{=944Xky;q2L@@%&5zeZBOcAu zKQ>al+5Y18o*CK9&g1>e*v{;6xX_L;#+M0Y<#}2dT!O3`SNRu>bW(+ z_+=~@N|+%^x=AA@*}mi&0r`+eP|v6~l~-tW6Z`gYuwMR31$ zx~PfU6pXjbr0JWw!OG#UROI=!$~?b%SH^jMZB}WXUz=B&=hwF?&GV~IrFnjBRcW4I z+g6(A*LU7R!1#&tFyM`RU!t zIL}X2=J~10JU>-hpQ_CBQgfJP&Wggq<)RMd!oQB-|0aZ`_l!^a39WJaiNoknEd}(XRgK@1-6f|&Kiwpg+GV;E#IuT z$l0hdmd_EuZ=t^4e{5vtI=cyDd&_n95ytj;u@lz?{hNxugSQs-8}*gr0H?k0@!U+OH@ zcviUA8!%rjxy*S&V~p=)z~!Wm?cs8#UsshM_V1TFBQ@R_M*A*z3N%K4->Kwsr}-&L zpUZc=bDG8&|LG-pPJfL*iNXGNg_Di?G1$MZa7Gcv{9NITA&mB1;ao}>{lgW`RfN%= zE1XG$G5=RM*AT}1U*QxWrt#xS=SGsFf4IuIS>svZ*0;d>N+nl0cWI3F_XE5D^{M_Q zI7Ngp{t3=1!f5|QX9Ho3f1S|}V#$5jSPAy`x_ZsIgVYK%eCv=*wFPa}*>$D_{ z_Fn6B))@B7^?c}Brw?M94_)UB*Z2?NA^N`Ybg;qf3T#)>5+x{x!=M4@RCv|JP7d+ zD9>=|)6S)Y2ZOwEX}Pm|2+FsB|41%<)_H9x;yjpdcP(A(Jdur9rGIAW3(kJR%^-h6 zOE)-khok%m*mGg&E6y&$Lty@PN$IOj?g%C4_3~@ZU4YekYa84L7;SHI9wB@w#5dZ0 z-C3pev36rDZ*jgQ zjOWW+9Q!O~-yeiJKb&5=#c84OEb-Ex6@Jq>G!pZ-;g7I>D1FOGI~VnTfc)KA`nL0! z#_<09JSflRJDk4|z7F6ilmA>nQb5wZF&n~B_#&~{J5!~gpMy%IwDJ^z6 zXOsN4lU4h#az+te2DmBUafDBW_L?K!bFLzs4Y(=b$%L`I-gl-G#`1dKnT1%VmvHuO zXPyr~Qu=}Oun!lPe(1dA!>dZG9rFS#AJtwPnKe!ejro2um${ClJ0H@Y>QE=O)65F#jKV_Q%cw!n0vNY(weC z&Yp|NzGUb>rJp!0auJ^f_1Vb$)ah|C;tvQCy;ud4gI+e&Ml^Db5P;Qiot0golD z?gvi?Jf86DcPV?maIPl&0pNi6!YR<0_XEFl3Q;c9`{W;#e(5aN7|&m~mF{;+G{*N= zJ_h`v#(ZCEzq1j;(|*K$rwXx-Z#w9IsWHcQz&W5X#<#!pfMZ>z^26~RaN;y(|8T%* zqcQH6Zvg!+8gqOHoijA%@;d08?F;{X=|LwCu^#^>i8?1gB7B`wpfSeZ6y&ot=J>vL z7E|~EQvF``*Up~_j|3bLUppm)TZ2Ey5#KoFh;?~bE5C7GA^EhKaNfD{kh6vG9Ka6X zcYONIRvvafCAs=uU)z=6J6{o2-|K4!_z>YubxMB35tn0o*a^5D;26X@{hihiPG^m| zynb>{A$_&JXuI+!r#oSFp3n|(Kf-GM^lqt;LkX+-!gRprBBuH_ORr;rE#)E>o5APG5Aa5j$_lX>N4`IAd0|gbx$s(l_%!(hVU%}~nb-T} zUE~PDDDNsK7x?8}<*kHKeu{j4nqPj3e2p;5PnA7x^~+C{LkXiiUFO~Hm#51D!YDsY zX3q7?Pm?1Eqx^K4bcbJlx;&LI$}?ovoqlDeXrPqrA7QC5-L6w>%Od?;~p-^@r~x>j-1`zH;}U{PMoCmN3fu z$=aoUc|UoCFv|POq+-9kzdV&N$_L2FkNf2Vg%gi(Hu?6}=8KS%Z;jPjAv-r<*zlnI1Uey-dTAwO5{kC2}yckT3tKTqx@ zjN#9hbKmvL&zB1cqdZ6M*yWe!$Qr^Zzd$Cv=a*j~PbG}Sa#xEZ$I}%3uMe@>*{ql?CWWp%V zl_`7u@?4og808nsjL-e@i)9vJlwTs#zVyp4k(q>1K2FZr@0X903kak9QdxVzFTYeC zA&m0NkI-ULGQh@;sS#*e}nMXKMV1@Os$) zX=Gj@2N2!`Sc)s;aKaDh`Tdphe8S80{QgRrOLz<1U&#?y$vna@98ljox=Q8~KI<)b zzjEbOvVib-z}*4gL|A>VaMauh@;1Va{toX0tehb4CaiwXApNlkav@?pza9$m(ch{3 z%n~V}f8okW@>Pv_eR8$jt})LKu9oj>JR9Ei7ov3T)$$XA74n5*8?eroL@deF4LInXQq5wW3Hc>a;?U*#a98fpD24-I1cvv6dsFMx37&0 zZj_TW-YD?C^G$L#Vf;SKO>(iucwc(P%A4gYzVL>)MQ+h}wzv-Fqjv-T*e8GW#9QTI z3?GvO`&p-)I7@~dW$!03t6)7gNz9Tdgw=Xe;eLcC!1r$yz8$fipXUHxK)4Xjw++BW z8gqHilBF7RdC!v1Xgpgy1?4v#(uc%__xm!xCyd{l9FRDt9;@G%xpn1j^;msx^6r&$ z?~!Ma{8TN!M`lOJ@0I70Tzy$(B3lGFIc+;#DnwP_~JX zKP20e{1%;`hh)D9`NMK3$?wBo7`y_7;@dc9qC~GvHF9yN)=Wk6}EOQ#G{LL5d!S4Y+v~scBL3q@DXg?`S zcMUmCVd_D38( z`zkelFPGVb#{-sPxjc`sxI)RFlw%1e0G8rOIiB#AE0uhOyqa(|U@2C}0>reRRU!*D zo-O_y2jlz75_zx2Y=5a-9HCz-|4jO^uv5EwWvQ$re1XO*W$R}C{H~JiG@dQ?>G)U4 z9vZVhe@Z5_Q2M<8@RUp;jN?t2%xUSDm&rWBD1TaxXzQ0hEyrri<-J_~D6?QhS@H)KD;?}GlGm7C@D5&BzXA;}Lwe)g=~BHxXWzbXGl z@|93tt5?1$+n(gN=PlVmsg}(5Hcv~*jc(ynd(z70XTdp9y5Bj6^;CA^e;b~yz;gvh&Zo)5v z|FIt2DOaDY?4K<%VZQM4%6H^zghzuv4X%1ueyK6{r(N3lmGB;`C)|o1NjNb-_YrOAnPLJAIc*n&)4z~Wo$dY zJ%5vpHJ&Z9p}%B{zsb%K@;&l&l8=P&*bw2J)iOUq{*f#oc^{Au zeE1{zkjB-<%rD{hvzvV)mk>S$?i*%_y|OqW{AaQx3YSOW3XQ=ZxZuxMeJ0=1nA^iX z`F@1{KKT*p?}7U4zG$EPobYH^&vak(x%>y=AS^=?R@KUH2={{a(0bJu^03BS-(O0* zJ+_Z^+JAm2Yc%HczmoekX8o_^A=3Xn#Mge+S5kEF*T;St)_Asf0@~||Mf;^2AwMWv zM#vA!vWT=lh_<->;fR^FlU zY;gs|H(=Gba*4*AzeDng2>nCyDbha~$~Sw}A^AMvd!fHAwhqg65&GZBmr1@5@;h?X zck*4rvC!T}uKHent}&-~M1C6){)qgE^ap`Iyl~YK8R)3Wll6a)uEt#cKggCE&lXwW zU*~52Alpai|0qw3(Em}MN&3^FJz zg$JXb?}*Sh+y^7{4fhe!pAY`$l2wNLxKADsrn_F_YU8d#wVt%xoK#gFIG@M? zJfgG0vqTWirxsRnEn@l`#^flHRk%U+>D`IVE%Cb zJmA(6MtRW9I?XQ+x;cbV9&#sS_~jvYI$@ND-96p>^02#~Fv?@x%{~0`7f-McEmy~igH zh^FpRjk&y*GxsTtt7C@88)D(AX72NdseGEbFOeL}r{5^mcZtP$cKmQ&; zOSd&)^?kBFkDchAhM2z3oapu?jNeyGbO(?={(eECJCZQ|enD$DmoWZ*L0fkMg~#7Z zNOGqUPFk+Mf0*pf(wOVxWOts%T%RYquMP2+$I0$4!dPA@ZogrEd5SxdFv{DxONaaA z?c9|bV|s_4Xzx~%9Q8Z8DI@**9o^G3M*VF-9vIrKh6D= z}a&-8Z;ozSRiZ1Sjh^hZ| zaW5e`rr*WQC;6vU@cVg27k3q5EdMUo;C;4(1FN;@ob^DI;=fA5vRO5|e8@w-D3i9U(uP%f46;`FY7mil? zXrCd@aL4&@0C1tk?7zCXy9lGb-P{FZRe1LI-Q1@LqrdOwZqb*4MpjP~_#=U(QwuZLT# zF_%{lw*)cS)5Bd&aE(WenDW!h z-A8iFPcOHQBuD!)-QN+$_L=G4qA}Z-=`JBT+Sl7XL>TSs?dIqE?d$E% zC5-mg2z1>WbqkVnc>4ed~ zKCZmZZ(kobO=GsFkDGy*?CIn7B01XA$IT)++SA8Eed6J_&eO);j z?MHk1y2Vrc_Vjhv6UOrD>%Ols+t=6q2r=2$*WE{Qw6CvQM{=~UuRHL1e|hzFhim+Y zaQe$|i*Z$7_k6;A0dEGJi-+7i z`n!Mf$v2b^a93)~{du6f)+aZ_K=-c{{#97-FSZ7{uMmC$*85!&v)tDR_l5nH(z%1& zt%T>pdi}jsgWV4aZvg#IR}FDL)tKvNsC!6b_6OPSsZ;&+lkL`N%;QzID+{zd=53g7 z*R9HSTOg+T$adS39P1<7P1Bh3m+kh@7}JMe{Biqf4BuOX_5Y6$-%y`CAcnaYYRvWx zcXJ72`x)+*Ag2C4+$|?L&VPox>qw6F42NATL#%+i!-_6|Gf_n|?nHbZ+%ZtNZ*Qc` z|98=!PsbD|{;2G*#1He2We>|e`~N+5nxgeWv?G1JqPFOKsiK^&DXxRNz{*b4vjyq} zqVzodUlt$yzNLlTjJvT{rscTDSgB*H$~`hBu2S)6#v!F zBlXN16}Ch)pTkGwFn_v;y>t)2yG}}u)D&C~k=PQa+WvUFeBCw)!(;z31!7CIz0Du*zc2nnZ>e-l z@);F>?#YcT@uXO@>9LCp2S_;|EAd;>(;iIn?KG`7SS@NFlh$Mo|R7%rK@|Fi`0)$k6bY6qe1 z$Hv?qkJpY_&h7YJ*jrWow){Co1NH5n`x(a@i7jz6yhEYvK6ZPw>*XAt(`~4KMaFN4 zNc_vw<9hqQMtNLfihkM~Ke;@4y!vI>s|WVy7_K2c_%ZUgO3#G9u`pjS!C$U~d7=sJ z>`|Dfn9$A|KcHw(e7985kXXA|wLdRj6;AnC6;8EJ6;8EJ6%J0{bvXD6T79_pBgQFs zKQ97X^>#(-dHhIywxi*A*gxYu!OM5W-O4^5zyEJi_TQ=;l>b+B>0^qT_4wNFA~EYV zx*(Fz_~A1Z->MJK`ti3MTc72au4l(~?dME^@p|z!#OHYaqVwU|&wNgQ-u038q5tvp z8^Sm~SmHgJKXJUrqnMr-|F6Zzi@zcH&!rPx@6njsLp1+ija54Ar+6ILzh2dkA$os} zG_u|d5simrC_Pi$t>^ca$cJwPDnE2kW0+^cH-J@q*p8T*0^8})II?}g@3%*^LqlM> zdbB{N?_rjso$z*|&W9-u=y)u#K~tDdt_QQgZp4;2f#!{Wq?1!G8VmZdk z`G~f|6rbpLEK1+d^I<8?`f)!9dsfPh$Fv`Z-xDN1!2O8rKAY_3dO|zB`4aPwT^^=r z(o>~#w0%Fvk8W=&d~|!q`Ipzf{5U#%H1@~$12o}6C(E(Ddg-03*9l%Y zh1qUZZk#UiBf}}ZJEy4p9h=YN!?E(u@itUGez~&a=j=RQ{3`s}-$&Mu!v1`!^6}Rn zmzTf%ey#l1>i@g#`QH#f?k9Tf?O648taAUY;r=J<|5$eW(?4GQMTd{Zzc&2w^!;+~ zuh?&XzJC1Sj#YohlmDmY>*wrJ`_q0o?pH^S5A4U7D!=t}^#9C9zwgCs*6VTnXis!HCe7=j`Ty@=K4-x3Bie2r&zT>M z8{#*l$NGl&0LEEW-n?%!uoL35*CLIcU$Z>?Heuf-u)a;v1 zm+l;cHxZ~XhE{Gar`BAlaZdi1!6=a7~dtP+#u_bQO^<;}nH8sR|xO=bkU%x>>;?E1iwe16Cdeb$S{ zSPsw+boqGka{QbgQ@pokinHi^nE6~T(G=Sad>>frbGdl_zae>aI??e)^pZ{>PQy?dWPWsh5p16YJKic=bx3U`wuGJw)#E{--j~=rzdqk^YYF658ZV= zqdm%A)c<*^(%D1xrSzk*vSbX|F=~`5AGkjW>3ih?A!t3z^}sZ4GU_2U#SyyCb!==1 z=1-*anfJfI@O|K&W|bc2b1$4*t8sQU-Rn|(WjEtD$sgc75>qIBRj;*+6}9!bi8?1| z{a>qx@xXne8?oM_<7r6FcAgFSQTD6yQ0<1x^XKxXLL4t296#H`@ik=6S@7*=6|ZVH zY>z7E=Ytw`;_P@KY7e=G^BDD_?5YsQg@D1sm zpvTSQ>#6vZ9Sz09a$Jv_BH?#R-xBLSQPdXq(K?FjA(F!Q{XXhH4!`ZH(&70hQcu2k zs?syW`WO6^<%XC~`|n7P&u=K6+4_Djd`JIPOb73cnc~s4h@<(~F0Fbw-+ONSxzaaj z9ttl~PYg{m&Eg}zUS!8qh8eM z!@UkoZIPzSJs`&ZN!b+?G3yjH1nPPApq@>7fqK2j`sDrw9v8-6)ehFIRMZwlntJui z$d7XS#D3w;n>)`` zcESCb0<;g?H()0_ zcw5|lNYQ{my&%2E5fYeASQP8=&}+B+z6XZ0>)-o`OwW5CZ3b^`A&v{Dr2o5#T$Nxq2m z=jwF`oSV@+fc<&B-_YwG9^Wl-P>*-Ez;MuCX?+7CdC?akH{)}{#Xbwl{6n!kQT>wsh(ANLEGXXteT&v(6bXrHAjUFI8N%7irE0RpW7MJhiE=H&9@(-+Ex6I$_|U>dF;n|US)`P^UzLCH>a~7d-})bvz*60 zQ>=Ry!}IuYEUf(acwh4+FB2W7nxMxc9815%L&iJ4W9D;suD@u^<;MGnT)yllc|U>o`PeUW`}&`uaDH$l=3nelwQP$~G+to( zk#bef%ontN!~C0~mc}u*dl9vpA>`L1u_eB(!Sd$yP>1OX!~VXeNB1X=m&^OtQV!4W z^>BGJZt^0g&+kdHKEJQV{*?8RnqvP)m=ET^`~k+p{IhjFO%wQuC};9kFNn8 zUcHa?^5MvMI2^`j)yw(*)ytPtdFlN}SohMsEN-9NE|8icYb@$B=Jv=K<=(i;eAe4Z z-$lUj!xY!h`jq+604#yXI9PL4R^tms$cb=bdIGzvmu&_OH`QZ7n zEuN=#RIh(0rgMb!f1vs5@#5!k9ovC7AK?1u@;P3)vK^87UOE5La%-rZ8Y&-7H=5#l z+&fQX9Ie+7X8q{(NVGqS#J_x96CIB0>)3pFFNpf*@zzTm9>+1S{EyB5wecE)<3W3@ zqt;~&m1jeIE@zGx+mDydZ^Q825NiL6E3jWMZO9Jhvpswc!hH5OOj!^2F>xGG{h#&y zd^L|@KHoRQal{hrPg#!C+s9&z_r1LJXr%uC9G~;e^j~F1bbQhHUzN^(dOWyK#Pc~r z@Oc=o7kT_s{aej9SdM&Ce53at;rB{td}so57Bw<)cpe`b8c$fx?Xz0Xzv0|d_apcf zQauk1*1w0x>2SN|af`S zOWJoicKXLJ7yK?uus$DL-W(tHH@qjH_M=fAsK3v`^S=$-k5w-Lde1gkzd!P8^woR+ zBVj*KmG@#Q?=gnzH?d-_Zr5J^@OxCApGLdA{RmDM?f3LJpNg;ie-GMk`z8FJ8yDD5 z;Wz~I^-3%sOrP6rpuXJse%A5y{C27IvA^5(-<$cZ@t{Ak>+Rutp6CZGs(0?kUb%C5 zMu(5K6Z@%6`;T6}x9fJ}l@In`yWTHg{3i8ti^|ci|6T*9bC&j#7WtLP@>S~=uGed6 zpF6so(SFY^ju+bvv=`dnV}A8SRiB<;VtivD%Ton%9@1}Z3{iE;wAm8&_KW~3@c%GNx zd`|fX9+#r?jrsDzBli3Z>o>%2sJt=X!TNl2JPqlq{Hpf;C6uf3pIAS6;jijC!6Qj>eoH^aEU8UVTN|#rk{?7VY%f+rL{M`xA_3dsO@L^52j> zKi}S>{c1ooWdAR%H?Hqb?osyf{EXKrHuV>;AN|(y#B~(fulC8*`)L01V86rhbAM(( z+7O@H)&Dg*K+g{hvGy%2M;>QzJoNlJmtV9W|9S?7<8>FG6RG~H))`N2Lpjgud0&a= z-7nmVat_ym=Hu_{`#G@R59eVjCdPlAjrts4LzL6Oa}9&eH$2Mq+~B?u?TfJ6|H=2a}8U%GD=xsPv% zNPP6Z{u$I>xI9X!-7x+y#qvL1Iq-Yad=AI$CX#yZm-G8*O!<6@-!t}OHD8!ojdu9? z%1=gOOYDm}-#nh(|5xSc7d?MC_Z=)>t`DSe--P%$&UoWA^O4^d zp{h5=zm`V($6xz?8orli(f$qGOZ%(JcYwaj$n!3bZc4>+iA>ik7v#fx5##)NEVrWg zFsG#RH4ayvgyq3_*qJIGxVNJz>ze}kY?n6=F|gysEt zv7&I_iZIjmxsiPK6Fjc)c!T?eaDRfr|DM9(z4@d0(Rz&e9xnF-rYz_588hX4@ct!- zjKn{4-lNys z?5B@M;k(OpzKP|<`bYEGUZz~W#}3c&cz!1`e(&BImkYiZ>3yeL`8EId7kFN&z60w2 zP6OYsSxx)9Ou2oqfAoh}{xI6_^7ln~--FME`1{>#Cx1Vi^NrM-NAdd~NIgEcH?+_D zekt==KN5TU@XY7;OrqaIWcz+=Idc5b_Hli4Iph2S-uI&NJ~rm>c6;O3@ye~Cdg6Ms zzmBYT=0~>&w)dA(&KLKyXv*)2FVpK%qdwnQUT`n^G4zXEev$QP)yuhEMCy6(hcbUE z+~ZLG^<%o1%KYehSNqCJPwnTc_RQ@S!+Un}c+d64_96D{V|gU?+G#_4t_M{=%8vOT zD(ZzBPxmgEa(>v3NX+HI^yvP>`qAaV{NvR-ryH%u^%F_G^f^72^S&KYm}ftO`De`j zf%SO&<8o(zGx<^s$NJnJ^NNuF&-Ux+d`4qVFS35U{>$ac<%Za6H^**wUj1|X`!WUR zT}*kM!ugK&qkP`T=ZkE2Lw@3)_2<#)@q03yzQX=T;aklMdsIhP|-ZcovE zJUX8DKE-x0dn!`K!$u+Qqu(>|zE6SoJuR_cudDg{6an$QzIWyMvN z?TpKV+jB#d%Q3orG2dUl{`4?@tUv$!F50e!^w=J*chOYYZHn!!(0-OPjrMmuzWd8d zg=c-{Gmg#={{9J^T+n#OdhGw$PX<3x_Q3mnmmb?L4)yBjG20T z9`~5Gp?ku--j1f0{>}h=-<#eO;`tT#Po$=JlG0`W$oKoBDTm|w;e4y_2&(?w(02fN zJ;9X66ONBD#vA=T&}i(fV|gE#?fFloKVMD_&ri5KxL$dD`k&4xk1xCE{kj!2zTo@7 z@cVEbu>Se|!07h{HHa90{Z?5-dBO|q&$h~4PCFOhrfCW`ACs( zLOnhUeoIkKpYMD4^;CWH{ypa#{hU{hY!}Mm_s{hEl<>Ye`9%&FUH+)Y{+Yky2H%y4 z#rBK-j_*l$c5-~|Z`uBa_{WyRy-KQ|=x`V5eH2q%N&6}I9W2zQWDCJN?)Y z98YvUqtlO;|JHEFiUqCc$KkmA*uUbqe)R9x@p#PRenasdFP?u{czs^)`Tgkp z9nTK_4#RKF2gi@!L-NX%%c(wovXjf1>2FQm-8Ks2R)1R z%yM4uaeLr+hU)hwy>`TWE?*AcP&;IO*5mfcIGQ%p|5*?1GsO#=(EeYBJ->wd7KOJ( zRzAkV>0-PV@oiyND|tZthFzPzI2V?FdktQQnJ^*9m|<3GcEHx!QTcu{{>B1q|k#4H+zqQ?`q55w7H zKc{O5Y)7Wx{>SNZeKY2G*#78wNTeLjAGDw4crD7G-C((3dTbwjj|}ps_NUc%aFoC1 z{T7~oMN@9C*si?qu<*QqzqfFs{ywlJ{zCCa@(pnbeLol}e20j>%faz*It|g!migdEaSg zKgxD;J~*CeyZ+O0bh+`meIb3n_rDa|)BpBzXsDe&Nc&*Xzdyw7B%1Q~uL{VoF#T7T zAAYZ!zms(I_gQ#9hVRpSPvdCxJvaXDCenuQwe$B~d4A8~IR1Y(xJ!)yw4Bg9o5(Lt5m$E=y-*qaBo(BkH_<$(d~r47xechmA)aEGQXjE zXS2(`?*NpZTdEDoGET?_F z<#hk*C_c-HZlUkzME47B9~_?P{dBK_F{jVzay*IDbGyTF)VtR^H3Qod=Lg?Y=I?)blp|JqxA{-Pd6`pBF@8 zzPG`Y_qhzg=|t1$b5WMFeaEBze5?CPe6Hl@tMX9&&42E6ymbSGDJssQsMtzVxrMYOo3;bktt3PnW8Z~>i=4x6M;@Kvc!Y% zC_2p;BwC37e>80=UDX|95}o)W{vQ{rrR&Vy%~@igG40Y44+X^pGRr^OfWOa$2! zcn+JZ#aOW#!mkGTYH^7u7nj3xB|MYhnP!xWc2>D)3QwxFPRtbRAg*=5UkB-~6Fq^~ z+N=08dAFQsLM;c&ol5m3(s@#Ja3!_&otwCV-(Px@XRpQ0>1)Ua0TEBz%KxP z(HI8L+3=hP&otvD;H`&e13WLoQwjV^;8#LCl@P8H!o32#SAh2l@LmDlE5O?byp6!y z2)vEJ+X%c@jmF|t;Js?x40IO`L zyf=XN2Jqeh-W$N%47|<2+YG$Tz}pPGEx_9Xye+`n0=zB2dkc7P0q-r~y#>6tfVUNR zTY3g(AF<6G&|QcupzsAJo3yHgkMq_!TvvkHXGM z4$znH5@Iyad!G>EVxURO1<0$-85IKjUbXpMrqZi6FNBl+Ng~}+=}Pc?DxKSbs&ID$ zRpAs?cH9pX(@(W9om4CLh!6{bKN@z}7K)gFiU;y#s(j^$JTU=o5F7+t2s2Q~r>XEH zF-7aad|Y(-N{FygAg;a$(l_Ri{yd@5JJr|_Xm+&_7XW=4zW8{tu|TMNOQ0&hR{_QR zFA&P!YXK{JuQHYhm5&0THE@z|h$TYVJrl6X|E)kDN>cVM5vrVK8rw|N+h!uaDp1oL z-mWpK0#Ct=agwMC{5`1js{)z8S9C3eQ?y$X1H4LA;KB=pSOj!*FXWGf8x1Oa7~}@% zUHOa{}zmAp_};K;M9y&LJ~3cpB^^HUe5hbn(1TSBw+VdiF?^q$0nTyP}D}*Qkn!jF%)j$*eAjDdrJ%MfjdN^5#*MRN@ z`WDbbO@(*|=r*7q0G;1Ph#H`ifPN0tfj7Yq0$q8TfVsdTbC-If#9Cw?xDLJ#546wk zglKH7p?;fXTs>FSN0zY&zKnbjsLEe~F@pFbh(Ch(ImFK)eh%?_n!#Iym}9|Ma-$G; z!1#aVVpZ-FLyA6RZP0kJHAUm4)(oPvh~7bTKGBwj3b)i+M7W6P@=$BI`TvBqJoI%( z0TknJWR`{6fqy6kK87m`ss2-LA%BgvhWHzZCR6;WL@}O9tEX}G$?z))K!vt{Q%IG^ zPRNf1CvnvlVkze9e8cZrX!^ZXEk1+tZe&+$eeh>gzWK%{YlY};=NlgY&9+t6=E z16AoZ@uWXR#|PhE*HjX{(nfr(T|nhuK;>Vc^$Lta;ujLXkoaYx0PMUL+4F6c z4=Kt*pMXDDVb3>$(2vV(wEua)q^J2Wk$j^)$3TBG$LI+CrO2K~>CB^a=IC}^XD^_3 zzCio=9C08t0{nb1P!<}rRESuh6_D>n=Hbxa;O1oGz!HjQ3B|L7>@6mKG4YFuUqbv6 z;+GJ=%9wML5Mu&W#$oX9=-e47*YYx;C@cR}jB~_+_CR zpnVMs&ZGF}XljT#2Kw1K2KwQa#?9a-^Mf&A)gPw@%R&Pn+??Q)&}W6v{)3-UyXtBD zPPeC2;}OVr1?Ydb2>Nw!GsU~v_#^zn;BMfn{{DC1V>&x1eN4v)#e`LV4u_WO_*;fr z>Ug^WU-^$dp>3LfPH1;TxEnyO`u{DVWJB5YP{=hVgCBS)R6}}(=D!Vm)jqxt)e_&; zd?#EMQth-2(6e}BI;y`qO6Lgij}ZR|@of|Rl5L`2vh_Tnz=$V)Jn`d+pFsQs;wKP4k@$(kPb7W{ z@l%MOLi{xIp-aGjiVQuUxYmfL@i)`N_Mb)JMi9**noBf~Xg<*bitjT${%1q~Q|+Nm zI6E}}VIfQcvXA#aKJc95D!g+-A2p4FY6q`@{eBu{s3N6&!s{Q;tQ}vs& zz&sQC#XM8>n+<^l#9u)C1;k%M{3XO+Li}Rl7Zbmj_$9 z6~wP3ekJiMiNBfnn~A@f_&bQdgZMj$9~1r-`q|V*>ER>b{|X!R3@?HC%>#|n%@e!9 ze5TRFP}L|Qo@*2nR^xD8qcZK64+B38<@FrUFaN6K6GJUDjtQ%A_nZ^3|6g!IvT;55 zgNuNw_8x$BCM?6nX$|4uuhrBMt0aOMeRq3gaD;?5J&&D#JQqNmyF6y>*Y zyt?;<-PC?|Q$5xYu3=35riS`WE#X?iy9w_myo2x#)~EPtDZVdE=v4E?hopej!EA@Fj4Q z=Yd8z-#83ZjWcTeSLL1}%R(t|QrbxxGc zI>|GvYa!hNBg2~ZqV@w8_WKNLJk;Ysk*W39%Pis}HpB?MZaCG*v2ebZYyAc0Rr^5? z{dpeA^GRM{tpYm_!bos7q}L`~U|jyc{>^shUu44oeITPmkHWbYg*uX!3L z#r6-kxKW5l-2UMsFb{vh&Cuz6RsUZ2jrwjuu1xGXdm>fx2f6_l?^N@s_m@^KLA>3Z-lM;iAG%fBhQ zJfzk?Mw6Dhe*}RZgn4#c6YNLLoAeB~eOKwlgw_15Ym+6G18&BWh9^}K`XafgND zb(zl3yo4gHpA@@I=j+Ra8f$7$2+_30n%Ex3YoLXI4~kkHUs7xx(xyGltzCrZLNtSD zucqndq0T}KYP!uh?Rz0c0UZSMhTNtx;W%h7=2w7T+wUT$nMmu- zM1l4s()u%z)}Q^u+0gF_A)dSfH9uNFb}b;g7TD8Zo%kTgaecl(&y!{v3v67cLpYef zKH41TQAN#*sXjJ{HPeKsXnt83X}TUiUT$73(qO!Lr}<%Bo_m^?=yFMl#r_r30_h1v zVgE?C&!&W15p7E}rNu;=r{R1v9r$W~+kEtze=OX% zOb5K<1tHD^ddE`&aH_G$Fht*$#nhgPsl8WFIhJcWuBBn*LHl{2(fsh^(5~`Z&JRBf z$TBwMe%sLu|IupJxc9n{Bn< z^I5A5+V@Gda33#&`qO4x?E@VGIqe5&zp$xUhTeBkRQZE$O){y!rdqhKl}Y^;$GP|u zGpYafw3476PB}4KkGqpZwjOUMi56C5;{7h|PoFrkPV-+qv6A|Km8JYr&531t zocQcSJMdn6LmW9Vf%Xv-0_x^M+r)&xgSFsi679fzXzyJT%dGb|z&;h=t)C0g3*Ncy0rX@uURQ3EQ0zPx!Aw+zau12JtKg`9(S&J8&WR zwh&LheN6{&_jqMzCh28r zz4X?Zq?Z{`C(Yejmsv>=em7?uF1f^MVDUz=@)4Ier*a!zku`$>g%@(!VPL;2UPi80DAZ9@P!n*Qi~XQi+f7zL&mXFVT0dW6 zmswrvV4l<#;~Cx-$HVggKlnKKJ)l>CpSuR=h2XbuZfgh5)B07`t1$1mukDfmj^o7v zoS%Rm*txoGaRBETYji){0_m%MK1r0({JYF*H$&y4%3AS^5Zl{USqp%E*fu`!+Q&ld z1v}2YT!??PJ*@lhVWOd=BD(_S1=ZGJ>tgWBt&-2k`)*u(f{z;CuuxGKEjMUQ_Q;LC~>t`_Y+fPPEi7Xtr&s4o?M9>o7xl3_Oi zd5$pb^3HnRY_EcHSq|Yw!9Hn@s1~Q|d~Gr(!aOKPRE0aHVtN5h(XKLxcZ^OC@jAfi zq}Pn-37Qt!GoTz`zt2?lwWoPixE;i+>~BMQbCzNJyP-XBJ}aSIxSsn?)ZwkGzl8A- z?D+`VoeKXw+`Q%d?np|uQ(+$T4bUw!Rr#jcqaeRIVl%a;RQpMo2i^^M<{bj&SDORP zA)Y{TCAHI3Dvzr0xEvKf<|{6_Dtv{;srEsb-$H$dpK&q$shVFE&et^A?xxc(vsC@J zNuFh4zGqpDV7`(gX6bg&A$gOP0ORNB$=UX3sNa6cMWk0mdPSsnuH75Lss3^T%(t?W z&$TCm-~FV`xpvl_$XD(99Ej(nKMQdQP&LjQVuRQR>EDnH^$B*}lnmt$iWy7Lt(OH76aZ zk5}bmT+2090kn^MPdXfK2kqz4lWaO~Sz`@=dS4CwIbj^Et4@v&qMuk}4T5&w@?`Ay z?TMZaRQ3CTpojfDf#OLF;yNZJi0hcN`goN7)RQwvFC(aKmMjB&0LGhx0@HaC@M0KW z6y62%pr;|7F;L#G0#$ZzKRGj~>^>+`?F}&h%mF>+k5W?BSU-XN%I`h!A&k#}^P!!p z{H%w18Jv<8RO8pEl;oK0TVbA=GQ(Eq4O3I9#kO{an30ki)9!UR&ja}-pq~;(e>Vrh zsd7t-J#5B9JA63B(DUV`DI+K!BZ5WXXWj<c?H_&%{NQ!%7Erw{p?bshcbo7A?O$$g zR!rfGgX)*zjnsizJl^y92^Su7i?cb`XyA)B~;HP!9_2qa3xgF z<)l|0RKE<{v3+?E{YM4yD}w45$boB zeX^m}y_dJ25>n@cjhnC0bYlCm(AP^~ACYJQP<7rlqy2%U#5#~{`9r}k|Xs64P4f_&39@OY?NwK?wIIpf2J3kTd^?}1? z+;h;rI-s9bRQbCki02as-^i?`aOhuDy}NsaI3MKGVZTC+D|f*@&-oqFW9I4cJK1ik z_Xm=-UtXGm=V@2kskU0L-!76h{auGtvMbq6=%(6Vvi;M|iq=v7>VhjT7Gk}uqyCNj zfH+cbPdk|3Z0}%)u)oKLu)p^Ye+T8&sw3`yElaMWc9uYTiKLgJ_Y;$1tHlRfRJz!% zmyutc+Hr<1&zn205z5cbB|5)jk>)QUyo~5m9XDux1>ucEw-Vh=^plR8wBMde^!DV8 zdOMUKI3*S9ZxGP=(7(=4#eA=qne}?=9Q=XQERA8GGKA%n6~cK=RtV=eSt0a`BPd)> z2>od;>E)6h_TxRNJ!90q$&u90^!)|3zoPbO3t^u;;YT4(=#;19fqUDbcflW}16IFy zIxLtMdKTu%GmU)h|C3_#Lam_x%`_&49(n`!(^pq1iu<<%I!z2c{*Dksfv&#^=4z*u0?@a)k4$)ALp$=C&4

    y#KQ zPuvGP+_g4@`^On!Y!|6|T!58a;Jt6af1ffVM)|8gB0cb9uF6MxU>$rJ_4HGc15+P` zbBt5c19UDz;i|q?bqhg0MOl z+G}G;#I~m8;R*YN$OVl3BA@n$ z%EP!HQ%>zLUz`U1>bmqD6z}FR`oqm(^n<&@xSyV)(_7tiiqRJOZzFRv`NFIDNVOEMHjL*#9#->hX(Ys8KZ@7! z7$Q;Aq}UXq{loFFU-wu>nvQQzMuv{>P)249?ssLz;C@#I#gnM(bEc6NgY}Y0_GIew zrI~PlNTuIA-LQthyyc2BGN~TQsoZmEA1sUF&!YG%bo<@ZEHjMvEUL`ELH}$F`}S%b z_thCy<~EI&Q$FqpRCj`Tkv&7-Lvgyz52$iz+HFw)*X@e}*#G7SF#jWB%I3g&uv-q% zT%vg~*dOy_RQui3ET77yfcP6UKC}C_m;*51hkI@s_wSB$X!oK(^7pF076n%IQnZl5 z=V>~wrQ9q&0Uwn|7|PPBsBQ>CWenp9A@ z%`sU1I9@DE?rF68qY!<2l!dmzIGP3YH8`)h31|}3^XwjY@8#|un`5Y7>2`6Iv4h&@ zZnD3I>br*OyOP?^Zpu$(4EFn4(yJxCImQuYrZ z zm&9WK%%$_vd9m0&3U#k$Vz)Em^|D0sdE9-yS0UX~D<^(M z43@(Nq4pDcXI2oulJdWq(%li;%Y=TKxg%EX7v2Ii3-H{`-K1X=d!41^HCp}*(CL8Z zX4b~;)%;q`-w4>T6~8X_X`t5vRq?$Gbe-lOq4?}L)h+_Uj+;Fe<~hCXxLe^o`O)U_ zaVP6=@o_3#x8Ct_U39nv(oZ1$6ph!*v^cyclNN{fWYXeh!+5(PP)F^&j`~YR9JZ58 z($6IQOwu>>I;=&X!+M-<-zP@nj6O@~oFRkKbM^XVdY_h>-b(ZlqHFt9nRrhR&o?*p zspfe=U?i-^Cy6W_U0;#9i_KOA@6r7Hg;;`F_?z9Y!ajC!orjaLF+mDhS%tK0Fl zMlIQuL;1;}{Nzx6(7w<6=IU@sv9;vSTk7(Moete!yEUn#bCG1tmtu_0_kez>gfG*0 zSifyLAJ+j@cK@zldQjPWb3a4xiy5N7#GbCJ%O|_?$*z2|Ym<&=cfa&l^!w?t zKS2E#*|oaeuIyD1NBu8OL{-q#}`m0WFThm%mv|Qb{E{Icp zV^gzQ%2%zx`A4l72l4>KgY%ABu}JIpr1B_;Q|DcQ{snRBJnM?a1##$y3Uqz!$(R$T z{L3Mr*l*`i{^n8s=289@5Pt#j7ZAUH_!(G_6gJ2EfcyHp`keT?{&Rh(~@Zn@QzXYo870)LAT}1B(zPg9J2&lSGoG=i>bsiWKR`-ri1FG&DX9JCcap7W+ z%h4+jO44xlU;{@zlY5$Va0?%iq zIHKFt;2}l9F*UFcJ7kRZ-+jcQV8M7bE*5Eh_-=w8uciz+SC3cIhb#&X{T|MNhAa;j z!@OxR;FkY@asaIQ$zO()1!qiD;TKW(MZw=gd=lav5A&WaLni9@wu7GXKkorn{l6M; zlHPY;uJ@xZJAHZZPH4A=xJ=9U4yhKQnQGl`$E$FLu;W#@0wW; znMQh3s9$Epqd#!)a}I=afKD8?oaRTly8HrSIkm@Js=sWb2kg7uIcyE-ts(iQ;N8Gi@l1vC`O~n^ zf@wNG+4?*}r8@!IzqSwh-*c(Gx$< zuvEmuHpQy;y?a=?#x=t(GvMmBs0I2uq%k3O2kWOsrW=|LR0=F_I8g}=hI(i;JTD&SHTm&4|7{ss1m)UkcuT#HGg^$Hdc=D{ zu(L$zq*FTSAyr<(hi{6-dfpU!+W$w~d&fm_^?m>6%(A@!i-46yuwcW6h@vin3icYY zFF|98y(AhjEwcc+pWh$6-``W_OgnRC*qPmt<4K%e-A{4)Q`lc`beKr<$)WkgQ9E(eP8_v!R&I|4 z9pdz&UoL~yetCtC=OnpZ)_3S{Q9obmFWY?>G=thr(iftCV&vBcWBQAl85Z??o1{O0 z`yk6Tw@d@Ee65<^GKuHvXXxh0{>RxI+3%V-=2+D0f;lv9%#rQ;8!wdYKWV(eqF#ru zu&DosEc|!-M=;->4EsrrS2#||Uth%M_#LD5;<^FnOKNW;wYP)Xxn&wImum;LpQLXs zkIRk!ZofOyRwYSaS+3VDlX#BO-%<5-@@?`x@?YdQz8QM;^QH{F`W$YC zUOb1ZWrego)%1=|s`qp{MEUCXb`ELO{Bn`1bq-21)v=K&`kps&9;fNgc2d(<;L-S; z-ro7C+^_gPquj4yol9u>y3z8K&~a8`QU8xCq2sND#))qFN;n?UJFC}4Z+1@6JF4M% z0C?>q?BCAn_h9CA?xq*dfv@eHCFg_hQ|k9%{-F`w^z*XB_}oqZeK~P{@1~!C>z=9Q zyXpU$$=Fwz&VuFN*7*X>?*jF=3$&cqDE}JeU!(jCTAvw8HjeM-ogZ2Tp2FwoU7lO+ zHWU5i3cmtJA>9u5$?hZld=LI#>2ig4LmHny(Dx{JP`w>gzC)JdI*Q5*sl1TN3#q)2 z%7d)x{4G{>{$W;i{$W;izGt~8kL=n_5#>=``zUI8A4QboxKPyPoTI4AH%Af6htDk( z^?RO`sQp-KzYeuuhuUvU<;hf@M&)T#zL45qNbN7A_7_t7MSMteaolXxFTs4R$_lE# zg6glJ`YWjZYARn%<*TWDHI;Xy<>^Vw)1Q{7KP}HjntmfqzmcZjNYn42@*PyZgUWYM zc_Eb-Qh6bj7gG5lDnCT!hp7Azm6uR?36+;nc?p$Ypz;e;eu2s_Q2Ai173!`kY`xcacqWF9mnR#eC%(l_`lguZlN_3p96iFxzH-k3nSP)#pKm%liaY2FInaTLk#{d^z$(5l{terQ$iOFyS}pIg=Y%t1EwzOu!p-bW52SE778NARu~4`OZV zeYH9^_4CPCn|gn(u}$oU*?p63V!vuxvQ7LyRnWJwO`NyC>ibmwUvji>nk;vkR@46# z7W%xXqs+(m7i{Y1GCe8XQ>J$&_osA!nLd&{n9_q~`f~C}oA^bI(0=#yIk>)?U45i& z2^`vQr0q%taa@kH=`d~zr&m@j-rN_{Vx&#{^3AGU8S*jkKws=Zv(epXZFUMSYLwVERp@<(ep$t4WI-TCN;go*Y_^9Gg1- z9GY(q%@3CI$&u}7Sq{x7huW`WR>!$IW_6saV^+txI%aj8OQ!N{JWGbH_+r|BL z`uwaX)$d95ds6+LRDUFukEHUER6df*=TP|^DxX8;bEte_pxma8?+b0}_`brXj^8V6 z>iE8z$~RK^4l3V4<%Lv!h{{W-yoAaxQ2A9VzeeTPsC*$U-$Gixg|vLPY5&}&{c~IP z+ZJiJZSO?lx_sbm+i3KM(0;e&{+Uq!Htm<&wi{Q(_vQQ0^Mu_rEpWVNMAxC~sT}!S zE$&m=)a%uUHud^$1$_?vobsPjeljgbGWCyS*)Mhv3bL!yr_twF$#OX^4}xVsF)#yL z;5IM|TLOm3I8w$=8OO@FCR>5h`ZA}n%xNlfl370T(`0_S%qyp@Y%JMS(j}QDnXZT>?5K#f z>nd}4N@hy-2NgD0S?jj3VagY74ZE#8Le0C%6Y!z(0<5VK%TPxnTBxrP+o7>WwAoan zWEt>1Dn01ZSim$*2$-%32Rmvif;~0PtWY)tErhb+lH(*NNluf@1r7LKl&CXP#_wZZ zp?HQ(7)vyd(G_}ATSP}!< zt%(N zCTotBITK~hWSNr_B(~cOng71bpCj`Z%ABP#XNAo1%9>xu{Eaeyi_G6Ga|&h7AsHW& zafvKFBd59$B=*ZyS?ZUi*JSBUS$bQR-VG9a4R`0kAZWCaim7^P#Z;MEv9J4U#lCiH#l9Y_6)89c<5@QLvF;>VSg6yzjwRQb!4R@AiZLq1nHJGgL2fFm*!8H9zFkN3O+r~QTXMtVy zez2!Laj=bL>KB0h^*2Db-ZjLAr*xJK!SSVEAdX-CedLVPXS@;0M#-G9`qgjP*hIZ% zsEtk5zcDnFO_BLI`Xa=+GM=G#4zscM^|OZIh?6;U^f!_7vA)xA9BVRXp?)voWr#yr zK8U@bw_vR|>T8d%u_yX^;B&qB^)O~=G(y9I3{60TA!!7b%^;@QBZ+635toAKdy-EK zVyiwkh^@+uqNfEJMNcyrMNhLBMNbPhik=o`497@P*(h3wlbj;COme;C9?6rES0wL9 zzL2z<#I%(qt4StEwvp^5IYe@jl#KN)G^K(*Q%CTSsW;a2uq-`h z8jPG0(**F0X#se_v<9VDWDBK|k0f76TFr8)B&$g#NVbsdB{@KHh~y;6X_9j#*GujJ zZS0uY_GT#iR>mdfh&Qne<~qnZD|0TG6Or?s`8DvWc_`>Ne}K|bS$fU99XU76hmdni z=G-=)N6uaIFW^J7W+e8tId)_ydn!wxn-h@3EN#IcOE1u183tM`Q^8=%3^2^H2=&WZ z#Ii+NyvV6!*@c|SGRJ8-gq&E*d9bGCSFn!d1xoA6()t$DC>$x4ieOVqtx=&YN#-Y8 z;t{uyvCGmHaf*!7EZq=iAU3cklFu!ocQLEzT|rjaudHIcvRK6^6l@h^MVPh!C>+<; zEU>0kOk2k)rm8QeN|re;2kb zWx&>x@pG%_;ml@14!4Q<2H8YEH`wG7+A1R7D)WPFVq6WgiE%a3CeEkjWqu`_7+sw< zF}lXu#OPYnCf2KtEfsa@q7Js0WQt@PIaNm)cam{en^@CKnbSw+^p`nqn^^uVnKRfX zj>?g;&M28P7IiQh$eetcvs&^CnZI7f8_@#BXG|N)w#u9xHnIJ8+w@qrJu;^d>yEJ+ zYaPmpWX>VE?#JZ1e=BoJu=x8dk#U;6BH|2Lznf$q$t=m?lH(+&NalhVb?vn<)odBhu_uhisB3SFocS_mp*$wQPrdEx6mR9fK__a|-SHF`cW}co=)EEG z=nIiYUx?^GjYCA=YZ@YYPI8DiUR)uf&!mNjBPBgV94Q?`#I;A)5OIw33=zjjW{5aO zHbscmk|PCOk)qACNYQ3`q`aPq6m52m6m9m56m4ckiZ=U4iZP{8J9voJo@fe(QD_jM~Rya2nXWI(?aX8yncrqT>7!}2|S1XEX z{T0Qu*D8v+cdaDydsY(pnUzHT;AoLEEL!A@j21a#qeab$(PB9#M~mgmi5AQ0i5AN_ zBU+pdqvJ&%s4IC`@~mWBeUYCaxwV0a_e(x%C}Q47@QP$eV-Z)DtR~q2tjBPN6#t6| zJJ^^V!WG$M=@_;|x;B+JVqTeU#7tj{dX3nGUBb=TPrHRv$sO1=neM@CdqjRe7ABp| z21>ulMoUj%Q>CY})zW$Fru2vGZ|P5%Zm*brIk|v^?M+2`1C~eF1mgpCnHCml4aYY$ zU>_{%6~p^j%S(Prm&tVIC8nt58d#J&DeWS=$sTeZypN5)ug+Djf-ERUC5AoG2fIG$t?`5IVE7ftCDauzw4oKMEbM(T9%1NO#AC#7=(`8stw z;IftVz<%+N^If99tMktfR_!DE$t*<8 zcan=k#s0i@$>UJ-z2pK|ZZBBuHy`B}Q`%4IGDI;F zokuPp7n94#8hp|xju&CkehfL4oK4OnuZG2TDTc**l)+;AYr<*&le1v4+}W_$uEL_8 zhw^jDd6e&^bUwL=TuLs3#q>NvZ8w^n4U2p~e4a(^W%wlOJnOR8E&b8nY*?(HtGviR zv)3aXvd;&L<@1yAbHFlfgdect@0^q_kmyCg+h0$i?Ju;RkHY zl`=|eVyPW+Dmk0%A?K03L50L1d8lC#Nq<0zBW(SKY?U(7P2g@jpe@f8q-h)nQozErR z-RF`1$mf+V@%f}fiu}^Oi}11lOt-MeDSf)gC2je}E#2{(JXkEJSElEDQ$XorvR~$x zd{ahghHrA5XQpD8bkAas^rB*)^wnZ~Z4Bj=4n@PFU6)MvJCs7{EV4)DFFTY=>3lM8 ztxgwBP9bNJbIJMSB63QqI$aUDl#G`n$mNJ8r;xMAx#WCubQ`sP3b~YwpQ~5fA?K5M zJIW`gkh93n46!}FJLHwNANEUkIGo>Jovw&nN@g8I{f`cFSZu#&atb+%oJ-Cp`(RuT z9xkFZ>nPG;N8HkxN3vkio=>JfJyJ?()=AX+@d$_I{K#&ZU+w5{_yPOkN-5>z=k?Wk z

    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 + + + Newtonsoft.Json + + + +

    + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an Entity Framework to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/FifthLesson/EnglishLessons/bin/Debug/System.Buffers.dll b/FifthLesson/EnglishLessons/bin/Debug/System.Buffers.dll new file mode 100644 index 0000000000000000000000000000000000000000..c5c44b766d4e0901588fab7d081943f1c093d797 GIT binary patch literal 27320 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 Y#Jl6*^}eDc{LUxVQsMf*S79^%AF!|pK>z>% literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/FifthLesson/EnglishLessons/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..58625d524a964f310763782e3c791ff1c8cf5b3b GIT binary patch literal 14614 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 LhU>mGwRP^_rt!8F literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.CoreCompileInputs.cache b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..9af2def --- /dev/null +++ b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +96ed94680da400127d0c6eb00557e1ac4f4b0b1d diff --git a/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.FileListAbsolute.txt b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..63eb285 --- /dev/null +++ b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csproj.FileListAbsolute.txt @@ -0,0 +1,19 @@ +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\EnglishLessons.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\EnglishLessons.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\Newtonsoft.Json.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\Newtonsoft.Json.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\obj\Debug\EnglishLessons.csprojAssemblyReference.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\obj\Debug\EnglishLessons.csproj.CoreCompileInputs.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\obj\Debug\EnglishLessons.csproj.CopyComplete +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\obj\Debug\EnglishLessons.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\obj\Debug\EnglishLessons.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\DnsClient.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\MongoDB.Bson.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\MongoDB.Driver.Core.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\MongoDB.Driver.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\System.Buffers.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\System.Runtime.InteropServices.RuntimeInformation.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\DnsClient.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\MongoDB.Bson.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\MongoDB.Driver.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessons\bin\Debug\MongoDB.Driver.Core.xml diff --git a/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csprojAssemblyReference.cache b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..818c4d6a29948371391d94da3efa2a533d2e1016 GIT binary patch literal 77754 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.dll b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.dll new file mode 100644 index 0000000000000000000000000000000000000000..ef715257b03bf83e2c6927f409b4d4f54a7c0b11 GIT binary patch literal 12288 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 a=4R?i(EqQ%X8$)I27ase|JR>i1pXUX*mREo literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.pdb b/FifthLesson/EnglishLessons/obj/Debug/EnglishLessons.pdb new file mode 100644 index 0000000000000000000000000000000000000000..8f7ac870eb60fe9c94de37f8e0871fd97d907f30 GIT binary patch literal 48640 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 + + + + + + + + + \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/Controllers/UserController.cs b/FifthLesson/EnglishLessonsAPI/Controllers/UserController.cs new file mode 100644 index 0000000..0537ae7 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/Controllers/UserController.cs @@ -0,0 +1,41 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using EnglishLessons; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; + +namespace EnglishLessonsAPI.Controllers +{ + + public class UsersController : Controller + { + private readonly IUserRepository _userRepository; + + public UsersController(IUserRepository UserRepository) + { + _userRepository = UserRepository; + } + + + [HttpPost] + [Route("users")] + public ActionResult CreateUser([FromBody]string name) + { + var userId = Guid.NewGuid(); + + var user = new User(name, new Guid(), new List(), new Dictionary()); + _userRepository.SaveUser(user); + return Ok(userId); + } + + [HttpGet] + [Route("users/{id}")] + public ActionResult GetUser(Guid id) + { + return Ok(_userRepository.LoadUser(id)); + } + + } +} \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/Controllers/WordController.cs b/FifthLesson/EnglishLessonsAPI/Controllers/WordController.cs new file mode 100644 index 0000000..f735d50 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/Controllers/WordController.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using EnglishLessons; +using Microsoft.AspNetCore.Http; +using Microsoft.AspNetCore.Mvc; + +namespace EnglishLessonsAPI.Controllers +{ + + public class WordController : Controller + { + private readonly IWordRepository _wordRepository; + + public WordController(IWordRepository WordRepository) + { + _wordRepository = WordRepository; + } + + + [HttpPost] + [Route("words")] + public ActionResult CreateWord([FromBody]string name) + { + string[] Parsed = name.Split(' '); + string eng = Parsed[0]; + string rus = Parsed[1]; + + var word = new RepWord(eng, rus); + _wordRepository.SaveWord(word); + return Ok(); + } + + [HttpGet] + [Route("words")] + public ActionResult GetUser(Guid id) + { + return Ok(_wordRepository.LoadWord()); + } + + } +} \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj b/FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj new file mode 100644 index 0000000..2ffc59e --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj @@ -0,0 +1,21 @@ + + + + netcoreapp2.1 + + + + + + + + + + + + + + + + + diff --git a/FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj.user b/FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj.user new file mode 100644 index 0000000..2a9c0f9 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/EnglishLessonsAPI.csproj.user @@ -0,0 +1,13 @@ + + + + ApiControllerEmptyScaffolder + root/Controller + 600 + True + False + True + + False + + \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/Program.cs b/FifthLesson/EnglishLessonsAPI/Program.cs new file mode 100644 index 0000000..72513a7 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/Program.cs @@ -0,0 +1,24 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore; +using Microsoft.AspNetCore.Hosting; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.Logging; + +namespace EnglishLessonsAPI +{ + public class Program + { + public static void Main(string[] args) + { + CreateWebHostBuilder(args).Build().Run(); + } + + public static IWebHostBuilder CreateWebHostBuilder(string[] args) => + WebHost.CreateDefaultBuilder(args) + .UseStartup(); + } +} diff --git a/FifthLesson/EnglishLessonsAPI/Properties/launchSettings.json b/FifthLesson/EnglishLessonsAPI/Properties/launchSettings.json new file mode 100644 index 0000000..9bb4bd8 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/Properties/launchSettings.json @@ -0,0 +1,30 @@ +{ + "$schema": "http://json.schemastore.org/launchsettings.json", + "iisSettings": { + "windowsAuthentication": false, + "anonymousAuthentication": true, + "iisExpress": { + "applicationUrl": "http://localhost:52411", + "sslPort": 0 + } + }, + "profiles": { + "IIS Express": { + "commandName": "IISExpress", + "launchBrowser": true, + "launchUrl": "api/values", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + "DbLesson": { + "commandName": "Project", + "launchBrowser": true, + "launchUrl": "api/values", + "applicationUrl": "https://localhost:5001;http://localhost:5000", + "environmentVariables": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + } + } +} \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/Startup.cs b/FifthLesson/EnglishLessonsAPI/Startup.cs new file mode 100644 index 0000000..231c2be --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/Startup.cs @@ -0,0 +1,47 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Threading.Tasks; +using Microsoft.AspNetCore.Builder; +using Microsoft.AspNetCore.Hosting; +using Microsoft.AspNetCore.HttpsPolicy; +using Microsoft.AspNetCore.Mvc; +using Microsoft.Extensions.Configuration; +using Microsoft.Extensions.DependencyInjection; +using Microsoft.Extensions.Logging; +using Microsoft.Extensions.Options; + +namespace EnglishLessonsAPI +{ + public class Startup + { + public Startup(IConfiguration configuration) + { + Configuration = configuration; + } + + public IConfiguration Configuration { get; } + + // This method gets called by the runtime. Use this method to add services to the container. + public void ConfigureServices(IServiceCollection services) + { + services.AddMvc().SetCompatibilityVersion(CompatibilityVersion.Version_2_1); + } + + // This method gets called by the runtime. Use this method to configure the HTTP request pipeline. + public void Configure(IApplicationBuilder app, IHostingEnvironment env) + { + if (env.IsDevelopment()) + { + app.UseDeveloperExceptionPage(); + } + else + { + app.UseHsts(); + } + + app.UseHttpsRedirection(); + app.UseMvc(); + } + } +} diff --git a/FifthLesson/EnglishLessonsAPI/appsettings.Development.json b/FifthLesson/EnglishLessonsAPI/appsettings.Development.json new file mode 100644 index 0000000..a2880cb --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/appsettings.Development.json @@ -0,0 +1,9 @@ +{ + "Logging": { + "LogLevel": { + "Default": "Debug", + "System": "Information", + "Microsoft": "Information" + } + } +} diff --git a/FifthLesson/EnglishLessonsAPI/appsettings.json b/FifthLesson/EnglishLessonsAPI/appsettings.json new file mode 100644 index 0000000..4fb1f31 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/appsettings.json @@ -0,0 +1,4 @@ +{ + "sqlConnectionString": "Data Source=den1.mssql7.gear.host;Initial Catalog=lodbackend;Persist Security Info=True;User ID=lodbackend;Password=Ri54C?M8BV?L", + "mongoConnectionString": "mongodb+srv://dbAdmin:alLq0JUnZVtrPpK6@cluster0-wqq1j.mongodb.net/LOD?retryWrites=true" +} diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.dll b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.dll new file mode 100644 index 0000000000000000000000000000000000000000..f6ee091de5376826ae23b73013fd9d10bd408c4e GIT binary patch literal 90624 zcmb@v37k~L)jnMJcK7XN7N%$E8D{GlV1`Tg%)qb@JGg?VATEIHC;~yRcDpk4Fu34` zxDyvN?i!=SHJYeVqah|SQA}bKl^7FE)M(7&lEv|Ro>SG!fcn1g|M&HesjBDHsZ*z_ zPOZ1@<z!Uim&SiksvZjeqWMv4_Ai=`T)igUbaKi& zA+`L(rj^T2I>|e=X~pqPsnbqsT60p<{)f+NI?+4s_>Pj2$PgoX&H+lzwtT92?uomz zxxJ|dH5FMSl$viT71GpIXCT~!a4&qN$|P)Sy-9HB@b?trL0|WQg>o%BkF5Nc_YEWo zze>nGoB_x^nU%2j?RG7qq-+xcDRBr+Ps$iqtU8__i0l$v^(Y9L;-}Yrlw*48QDpfJUrzS!O za*z5TTh&FJw&89AnM8skuGa`cTeTY(I@3BL*K0yB5lg(()Of?xOPYoqb=2((3le+H zh@NlA`Ly03k`ompg6aa~jVg*(rjYl^HJ6k_m6n*!I#RC6t-dN)LtStS-S)~;=oOV) z2K!qplSO?o61~BYc}q*RE^l$UUGD3v3Lql9g)WlPD=GIGY?6|wle$A#l!_6ynhBlI z7o+9M&a{A7u6&tR@%@>h;=3-q%rFU8WfJh6ZX#$_u3VHPS*|va;I_d*Be*DIl0M{$ z50%A7{^FzGh#xe5$oOI7M~q)&eAt)pml(g)_ydfOt|swOeikv1p1t3DPk02TY4Ge#vmv?2DoQpf5sn^ajY;h#;pcpYCqV7i|!st=qzeR z#Zt$B=D0PCK9YJ(+?XR3hu;CGeu{qINe0+uh8}n*xrJ0e|J( zSi<({7)U~&aN0H1@d?lTBAvjUiUdKsn<{$K5H1NQr_3qd}vG5fpWzK@USyWUd{q zo-b8YE#(WS^(Y^I0j-S>DRNpK8JJZy%8n%hv)U#FW=SD*(WhzVLfV3SwB#hvMLS2@ z%I&}`T^}yS2dB-hPWVmzl-bG6@A&-l3#wxH(5xo&z5S6q-qcaC7bVNO^v|fB#&GFym=M_GnirQ{F^K)k+p%#g8$DP#=9U_P#=R4kP0!}h3oai}B|ZyFg0 z#d|vAPRc_il-sE^Joiv&B)!W!458NK^l*IQs8T1@jYvc42*($Zv?))j3&#hMbbg)` za>5?g6OqM+clb#EC>+^}eq%L)$BIqS85uAUy&eN|}nfAyhr`C+2g}U-lBGZB(x%B41H& zwJbw}txm4prwq03aL7&{3AqWGlQ49OZGKr@#LMOnuTGr;LGiMEB*n`LMX5U2`3_9T zm=}#5iZvG5?r3D_9fe#f{NpRZfg$v0qCk0|FNTg&=V7LaR0NY542ts^3`Ii~;V4bl zft$D8(3jip0nvSpw-dCzt+xTRz0Ei5M2-C-^99I!!WmzD@x`9vXs|5^%0f_HcVsHm zy+W+IJRnvLk5&zj<|9^J;Y6L(k5OSBEH%a!dwzI%wZiUU=HV*OTwY_ z(`XuWis=})ux?UV6{t(_hq+g;tKst(L91~Lu7!{JR$+}}k$)imhJrQ?e;9w{M?3Hk z0>80?0t+ZgP7F%p7wdYobv@d;9_@TRmS9wofvK?Wbpy3Ou_qF2bFytCC3b%z1+kE+ z4ebtEK$F(%g;MB-wOKU180CnJ|0l@7rl;U8?K+p?_|&D1EA&9WtR$>^0Zmgh+q$ND z!N|$B^v4Rvjylx~WS(#|pNH3e|S-9g%8u_|2)#_!OvX|X=d!JF_RYCz>&QNY{rc7oI_bYt@M}X^A*#q z9#@M)W<(Fozg$<@|C&A0xWZYsD{-Lh!qlC385*8}Wr-!2npQw3cq`%g=KIsf!B4C* zbf59JuJJ9x{p=VF$Q zxF@iTwu2J7(^)u~v+_Kv$+KoJo>tqpnk!w0ZQx=t=Om8swUz1mZfUn$6E1c>jIH)y zhz{0|J~;=%<}2#+t^g^51@YzZz0Gh|dlZ(XoI^5Jw2r@8(_{TSLv*}Tz~cUh%-C!= ze#cA0+oe-FUMdHgI8?@B=|`Yakw0}Ax|~iC^ss8prU-h+6@udh97w@25s5N5DvGf# z#xm%ECgP;e1V@qM(a5!1ti2NLVHA?Mih%K*5X=UqM*5r!hVp4Pq*N0>LOOi*tB*&S79fQM8R#7fdv!TW znSy;i&r+s}@1BSfWF||vDl-Yb(@lg?6UD2;yo56p5?svNrjGmy+Hro5=4$1ooGLz< zZqX~nysN#Jp@jkQdO=0rTc8ESWz8pfRF%Zc${(X zt1>g-JKaQD-$t!32?hEF)YY(klqH(}8M;Qqu`{#4A^XH+&uj$csN@g?`kWWQkwyo^ zQ3+#s;*jKFL9!@)DycEqrh2gINK3Hi(Ef>EWa85$F=M!cPP&8PcxQlE9K=xEnF``e z=jUWZ|BLXvE7|o+ls6RYIjq05U1UO^fGUjP%$w{vyg$!NhU z>|z|YbN$RQB^0l)aETiOZGIdB;jq_V=^jh<5gOp@i=jhXdSNQmete6*luxLfhcF?1 z#aQsiTnF@LN2-74NIrkSU5u3ImGNfjgDzHzram!pDfAnu&ts+Te3?b!`!kEh4`h~z z?_zd~WEM)eDzgB-(@mu7w_VpS3GR8U->q7c_R>_jA3J8h?P9*fAtCkvC;M!7nP~&= z32M+kv7z%p%Zy37;u`Ruf;bt{iVgz6zMgeb-1sk4-JAwk{^%w9m zW4DR`#_#|(>5hbhSu?#HdbEV|9ls^&*ONUBz9rO6ZM||Qyh}kf`^#4DFZ=Ca zqzd%jrB(etXhl$Vg=Hj$7QKv=0Ol}`PF!DNK=ISZXyH$sZgY|3*j%_eGT7Sg>THl) z7%#LK34nmHLz27nu@=UJ;&}Hm$&GOM1cQ{8c3*3C!X-V{=cAxuCLOw!q)*c4SbiK8 z#!t_(KJ@MxFaSNP+CJ|Qh~OE%AK^zCW|uX4w$_9>Y`=Pg11V z>?0VvR1<8;*N($b-)RGobHriTlm)|a#POt940@NrX**PwRyOBz$HgKhDcJFHShKYn zHk8TX(M6UmhlLG?ozQ`6@&)kuvo|0szk4~dYM+LEU@rGB&DM5v^4u$^;+1gHSHa0p zj1hJL!o;=|nii78kS?1Yl&_?W4j#E$Hip{2dJwP0D3VQSPK6WM``$QXpB zKBg-t@%Pkfc2(J1rcOrC-G)4E_Y_2WPr|WXOq9+RD1|bm8AK~&yLrC7FDPj540@VB z(Pwwlm*t`fVpMcie@S>8^U>U7Nv}b-ku~`%wo=W~&PAzh`5ZJW48)1}WQ|-LiVvH7 zEgB(Iz2E>OP%s!Z6@PD8`tN9jPsAT)T7?!;ci|7EQy7HQKkyd;UmN}~2P+JaYBl~a z739)q<$Rfc$CvQ^05s?{@p1U$F%YRxlY%?(dlIx5d>GDn^5L*rDhfl8lg8BL6pjB; z0T~01lRjI>-`SgtF&x}ifec&N2*#rE)H*9slAa^G*QC zgYh_9im<|R$Dm83&l9#fupwjgMr6!$mVOyuAUvOyQge4eg!w@=KLUApw#iJ$adYbQHjCFkJwG?D>V{A6MqbPL~?RYXwZha6o z?w2z+jPE!b5i6jYI2_J}jT9}uc7cas)G791BcHw#c_dc&WM7E003gjI8%gdf{AwDi z2R%0{n--RpjbR|Gp-xt}KpI(O7qs-f%!OlaGi0IbXJr-Y$(k>MPU($g24BU9kXj8N zMbGk+C!4qMn=-QR7Z-#}3c`HsCKW-Z3Oo?Y1BX?>t!g0Zq_5UG24r7{2FT`Fs3XJK z7GXG>Cv_ONA0H=lNf?VgMFkgSiBc*);YJWBkeyO)Gkkn?cad6%3 z$SjV>s?{b?W4l{OJ`TH)TUrL%?gd1}Xxm%d>tI)`yHO|xeXMl+iJkcgeRLqZfb(-X zmqR$zWD=|=Bn48!%tgX%`aJZM03r@0;TAh}Boe#V)5e>w!-Sq;0@MQ*J9@#H5ymSp zuKtfq+rY#%s^;{4g(z_O-R=KVhG(NM^Dd6mc_dPd9^!I(1amD zOWtwutAFX{Qt5Aj(h^IZjN0&SVz@eWb}n3#+MWv!O#L7iu1&p_3)iJ=C!4lD)tC!6 zq!#7Ejj0=R;dnUpRvtuBvx3>w@v>BJ9z;_&Q@KUxbW~dF!o#L^4rbxTgpJ7q# z(m;kqvrCuk1T=Fv2+ko8H! zPJ{@(A)SQKdd=AuGbu(@*!n>@b82&X(kx7@Wc+Jv+_1>v6DmB)8jXjwokLQqBkE*4 zVG#R?Pt|6$tbZ1Kv=zh72qJhb1y8B)gdyHO@f;8kSlW?+yBxO*{PFdjr@);q;f0;Y zBRoRFU7ZV*JiWI)^a#1|g(ce*1oMy6OQV7O^K>jw@z~^P)MbV92F5p45llSRvi;q{(MQ;5V8b$GV*H{_p0>kaU6^oR@= zh15q+PTYo2p7<21^LNvyZvrup#=sYer2mBRs3_QjQw4oIh|N7lsrNZb-OJ2+8I!>_ z7w1iQ9<~FtV4w46#$!N@c(YJPhTKgq7u%6!%)1Y9xc$oMB7)nl?gQ{E{Cf^{+Q7XK z;B_uT9z>uA+rh%D|B@Bm(#sgh;LGJDqJA`qw27@c)yX$!?={#8IjA<&2k*|}Vwaqe zW0w!#pTXuHejtMlHhj!hI0Qg|LsKMkqJ*n5>)<=xMEY=dJW7Sba}r#PMeOuE+dBgJ zw3~czIw0~h;s-Jt#E1O#643I`l5kZ9dw0ku((=2sd=j+$S$6snDuhEBj90KRhmXDK zV-eZIra#cPWduf^(=f?eyrsxPH`)T838)U}g!92iA;HBW--+yP1H-eFHA$-q&pjHg5273&pHW6yadW8O<((%$ zlqb9+g5o71pR|&&+ytn|X6NX80O6STL&R1Dao0psFlL|$BHp3YCgjgQm5zqwV3jkC zgL8$2MVNxFMHn|6rB)pGS3tZ;wFf;L7mAEkwpJJS)!N;x;8>p(TGocTc@jCu<)qi6 zVbrlT4SikBRx_{G*LrOAtU7*}RSZ+W?*R4D7%NZ?Hl+@-LWf(pwafcJ2dIxHSOdvH zyPTwi;j0 z*#ti$*y}c~B!%|pfx*KQYbP;Q1D`jIC>u4sUlfigoy1zZy4oF$Q10*>Pt}lcs0W3Pd^W~TeLjb zv|quL)JTpy)#a+MY7_<|CyfWuPKLVM>3XndHcRjq3|_=w&nCDT780$^wt&Zawd*ph zP2KjsHotFcds*sSbmG(=_GGBVyUIP+^w&N}?SF~5mR`oVld1R=I2pDkcGW?slYW7@ zUnqHz*~y&Ga2iTEnF|nvsY!X7;5#S}m$08O*R{;m$5k>8l$>~RwcE(b9E)u?Co;F5 zh-m|I9{BZX{q7L5^O>lTgGUzr0H3kr5gwyhr>HN5niL%hm%Iru*lq-FEDgiNq3V^Q zl^X!5J!E&YOi3K+vOqZT%9&4FC+_@!2Pb@_g}eg*O2X|mcF?JGn+Qxy*gFuYHJr%B zplp0rdA_aGXz0YFk4SO0UIH!cPHXy8B*6m`7oPVb>ZE9VIksdW`?*MAUF_Di6CiuLUAmzncjJ_PaBOZpUNc-Tty#Ig= z2T&}s-;uIlt;tonVQEBtu-!czsz82E zw(>&$^mRzI-o~p9es`$I3VGw;bH3u?tS)l{t`2#aJCJX{!<+!m@%~M=RbborW9a5S z1>IUV?nE%W)_s{E8bC2BP>hNoUyQJs4v&T<9hP@aU#%rTQ#v zwELp1cE}xuJl;UPsMEM;)tm!)3F)*Gf!iZKOqWy9Pm)%3zchRHs|cIq(eP;}kvEKh zhd`UXr}^(G8kyw8EtY*|a*EWY~+a?IQ);i}9H@SScV zJ@rpV^GM8EiLrlp0G>R_^+qD3lQ`aM zP`lOe*7!7+<2?ut$AgNF_XQkXE}!Iw<+!YAa^1PQ^I+Y%d#;0ea?wH0XkplA`gO=} z>17Pxwn<_!#DwLR_XZ-`sx%CGdw`O7@rjYRd5m&#U*8MA3;EgI7>)hd&hw?6-+|Q^ z^M*q&lP?~S6y_Vr=gSzrwv%ihu6cREH`%kje}W<=cuN#zjQ0lwrEfUy9}#?A)-*QW z^jUYBHoup9&V@crd`-6_DB*Uzv3QZtHY(-4ja0jO$+MA;`wnqp&tMb>zshOupFrr{ zgs7fBGjujWh}3&T_g#|C0VyUT_&_~AM&^9CosDq?W@;>`b7v`XYV>w)I>=x^l=TyN zWKkypEQYcX*JmRn0FAhp#=N2?psrJ&O84i~V7r}g`3?|P1d;Y&69!O~3&(-u34))SM?w!;mkujDs z_6#mcRh8f*&-)8x1-%dY{-xN*%65dXz68)doW7p{T;X{*&X!$fq?fO7d7^*XYNq`J5iPxp;Tu#* z?^EF7WHRJ^h5+7nz?zINMHbm@p|JNafc61S*tDhhZ{XIDjK=N1*b@o0;ePx=&|Wtq z^!mN;|Osxv7a{n8vJ@v3THunEcrzOLrPH!m}A!;j_=^ zyQs)n@fKlzjaZj`_~o5~QQ3P64h%o_De3_4720yeddsOWQ#|`J)LL6^VQZ>uK^b|r zJr}a4z=nP8K|H%hVbt3|vT*kv0AOqPX_eh^!6zsx-t z=^Sq$q7#+c27C%bDX*jKBfksPqWoQt)0GQx6YiJb?@<)oLYxI#@A?)fPS20Bz2a#E z`kZF=3I|!X^fHEznv?7Fus7|}X$$ev)pV%AQz@)OBWAU)n%%{NYentW}r-_MTSgsE0K;91{-lrFAJ8nH7tv{ro;SDB|MhHyVsb| zQ~yE7Kq;Dl+MS*lViO_#KE-6D*?-?O>1yy4SC%Bp!?@0{4q3H@u>ALGK!&_XBNLE1v^`J2?#dU6S%CFzvZ5h z=#e-EM65i9;9&I|rh)%5eLe%$X)~nT*p@*=9Lngfn-Q*5Y8WWCI~Q_f2DM$>0(IPF zC`EsTb{pZZ8UJz#aXtfyMnxQpG%~iKf%%R{3T?%oKHqSB?g}u78u=S?+|L&v7YaIi z(~kQR+VNjPI{`Fz4IIoCF>e_I&?BH0Yc*8i1;VqSzFZ*84b7q*MrGTjY-tFN%`S77 zONDYTf%#*JEc^{=j_T|B?Q}yq%B^ zF+yIFdPFQ>9c8&E!qtX{WLUHA)9eL0Ni>@MWTer}jx<=;eq9=gMw)bC8Z3Q9O)Px< ziI;L}N*%nAuLH6f>;8S7Dv6euE_AvS;*7#Vy!#~z74$%fhC=HL6?)Go^gjK9PE5Md zpr9UvE8B@PkhA41=}0|=YGAp#PrVeVA<@99Lim6!h|cu#WX8EW?JzvbNUl6=SrMmJi0B(EEAKVOwvv6%okZw z%eaSmQhuq25u3k%h0|DVqEaC2!?Osb`eq*CHpaC;`QZ(dw5WyYcpuaFO+J6JnTGg7 zo+^pnlUo?JdjsV5{1|+4H1I3}eb}5}>Cp|#ZRurXXd_q9l5ta0j%3^qZe@RfS0(@%!IcBm|6JteDG!jbJJlhvq5%s z#;-Si1AWvu?RBQ9`>YQ8tR5%?jY%2V$@yRT>Y_-F@ZUwg8Ik)yDpzbl8a*Pz)TiYjwJmiYCu+xIe2A7wF+lDpZ zE!=px8aE2!OIIvyD-Ah~3#0x8xIO?y@PM%z-<65_W5Zu}f+L?Z$q&;L<=Q6X^2JF@ z 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

    #dOneb-*zyxp23NauH>^}3hO z??&q{22q!9S*Mb(2A3LUWpLww@BCHM_-nz98K# z)~^lc&DNRCw^)BOXp!&y=3A|Q8T3zQTk~y}lVa}YsC$CX*|%HO2HhUIwfPQfh(XQa z=j=PJF$R_R?ry%znrzTc=fUQ0TL%l$rM=slmd=;xZflM~EbVu!Gf&OOeaG4?NSF2= zYpbAh)EV|;&G%S$81$>akDBkbeke$nc8B$|f^<8qmkj54wbr-8`du#Wr_Fe;P^cv8c1|jk0Oibtu!rzlrJ zZLugScogB2BA(L40-m8CYr}g0ZqI>ll5;O9=SC5X9Go!8d>IpkWdETdAy(*n{pSIq|nBnt& zoiDMg6=~kD=Sj@ayk9>(nJ#y~{AJi|{G4FYQTKteMzS`8F7X5Yc zx3&8k6Pq{Jz2vAqZpS`x_Tr*r`oq^U&B*#;{fQ~D&q>U*;bHwHiCwK$Tlq^K)_2>n zUNw8kcl1Mc>~-|Yas4ej7SLr&j_dE*u}Q=p(Lb_dYhBMQ`mTOjVn%}B({Ef)UQDli zPv_sjn5q3yT`IAw)eoQ{kLoir(!Q^k+G!8wEM4+_y;fp|<_~n!{xr=W=¢^J{X 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.xml b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.xml new file mode 100644 index 0000000..d6d08fa --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/DnsClient.xml @@ -0,0 +1,3060 @@ + + + + DnsClient + + + +

    + As defined in https://tools.ietf.org/html/rfc1035#section-5.1 except '()' or '@' or '.' + + + + + Reads an IP address from the next 4 bytes. + + The . + If there are no 4 bytes to read. + + + + The flags of the header's second 16bit value + + + + + A represending an IPv6 . + + A 128 bit IPv6 address is encoded in the data portion of an AAAA + resource record in network byte order(high-order byte first). + + + RFC 3596 + + + + Initializes a new instance of the class. + + + + + + Base class for s transporting an . + + + + + + + Gets the . + + + The address. + + + + + Initializes a new instance of the class. + + The information. + The address. + If is null. + If or is null + + + + + + + A representing an AFS database location. + + RFC 1183 + RFC 5864 + + + + Gets the . + + + The sub type. + + + + + Gets the hostname. + + + The hostname. + + + + + Initializes a new instance of the class. + + The information. + The type. + The name. + If or is null. + + + + + + + Type used by . + + + + + AFS is a registered trademark of Transarc Corporation + + + + + The Distributed Computing Environment + + + + + A represending an IPv4 . + Hosts that have multiple Internet addresses will have multiple A records. + + RFC 1035 + + + + Initializes a new instance of the class. + + + + + + A representing a certification authority authorization. + + The Certification Authority Authorization (CAA) DNS Resource Record + allows a DNS domain name holder to specify one or more Certification + Authorities(CAs) authorized to issue certificates for that domain. + + + CAA Resource Records allow a public Certification Authority to + implement additional controls to reduce the risk of unintended + certificate mis-issue.This document defines the syntax of the CAA + record and rules for processing CAA records by certificate issuers. + + + RFC 6844 + + + + One octet containing the flags. + + + + + The property identifier, a sequence of US-ASCII characters. + + + + + A sequence of octets representing the property value. + Property values are encoded as binary values and MAY employ sub-formats. + + + + + Initializes a new instance of the class. + + The information. + The flags. + The tag. + The value. + If or or is null. + + + + + + + A repesenting the canonical name for an alias. + + RFC 1035 + + + + Gets the canonical name for an alias. + + + The canonical name. + + + + + Initializes a new instance of the class. + + The information. + The canonical name. + If or is null. + + + + + + + Base class for all resource records. + + + + + + Initializes a new instance of the class. + + The information. + If is null. + + + + + + + Same as ToString but offsets the + by . + Set the offset to -32 for example to make it print nicely in consols. + + The offset. + A string representing this instance. + + + + Returns the actual record's value only and not the full object representation. + uses this to compose the full string value of this instance. + + A string representing this record. + + + + The type represents a . + + + + + The domain name used to query. + + + + + Specifies type of resource record. + + + + + Specifies type class of resource record, mostly IN but can be CS, CH or HS . + + + + + The TTL value for the record set by the server. + + + + + Gets the number of bytes for this resource record stored in RDATA + + + + + Initializes a new instance of the class. + + The domain name used by the query. + Type of the record. + The record class. + The time to live. + Length of the raw data. + If is null. + + + + Initializes a new instance of the class. + + The used by the query. + Type of the record. + The record class. + The time to live. + Length of the raw data. + If is null or empty. + + + + A not representing any specifc resource record. + Used if unsupported s are found in the result. + + + + + + Initializes a new instance of the class. + + The information. + If is null. + + + + + + + A used to acquire general information about a host. + + RFC 1035 + RFC 1010 + + + + Gets a string which specifies the CPU type. + + + The cpu. + + + + + Gets a string which specifies the operating system type. + + + The os. + + + + + Initializes a new instance of the class. + + The information. + The cpu. + The os. + If is null. + + + + + + + A represending a domain name which specifies a host which has the specified mailbox. + + RFC 1035 + + + + Gets the domain name which specifies a host which has the specified mailbox. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + A represending a domain name which specifies a mailbox which is a member of the mail group specified by the domain name. + + RFC 1035 + + + + Gets a domain name which specifies a mailbox which is a member of the mail group specified by the domain nam. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + A represending mailbox or mail list information. + + RFC 1035 + + + + Gets the domain name which specifies a mailbox which is responsible for the mailing list or mailbox. + + + The domain name. + + + + + Gets the domain name which specifies a mailbox which is to receive error messages related to the mailing list or mailbox. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The RMAILBX. + The EMAILBX. + If or or is null. + + + + + + + A represending a mailbox rename domain name. + + RFC 1035 + + + + Gets the domain name which specifies a mailbox which is the proper rename of the specified mailbox. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + A represending a mail exchange. + + RFC 1035 + RFC 974 + + + + Gets a 16 bit integer which specifies the preference given to + this RR among others at the same owner. + Lower values are preferred. + + + + + A domain name which specifies a host willing to act as a mail exchange. + + + + + Initializes a new instance of the class. + + The information. + The preference. + Name of the domain. + If or is null. + + + + + + + A represending an authoritative name server. + + RFC 1035 + + + + Gets the domain name which specifies a host which should be authoritative for the specified class and domain. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The name. + If or is null. + + + + + + + Experimental RR, not sure if the implementation is actually correct either (not tested). + + RFC 1035 + + + + Gets any data stored in this record. + + + The byte array. + + + + + Initializes a new instance of the class. + + The information. + Anything. + If or is null. + + + + + + + A DNS resource record represending an IP address. + Hosts that have multiple Internet addresses will have multiple A records. + + + + + + + + A represending a pointer. These RRs are used + in special domains to point to some other location in the domain space. + + + RFC 1035 + + + + Gets the domain name which points to some location in the domain name space. + + + The domain name. + + + + + Initializes a new instance of the class. + + The information. + The domain name. + If or is null. + + + + + + + The resource record types. The enum contains only the types supported by this library at this moment. + The is used to identify any . + + Resource record types are a subset of . + + + + + + + + A host address. + + RFC 1035 + + + + + An authoritative name server. + + RFC 1035 + + + + + A mail destination (OBSOLETE - use MX). + + RFC 1035 + + + + A mail forwarder (OBSOLETE - use MX). + + RFC 1035 + + + + The canonical name for an alias. + + RFC 1035 + + + + + Marks the start of a zone of authority. + + RFC 1035 + + + + + A mailbox domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A mail group member (EXPERIMENTAL). + + RFC 1035 + + + + + A mailbox rename domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A Null resource record (EXPERIMENTAL). + + RFC 1035 + + + + + A well known service description. + + RFC 3232 + + + + + A domain name pointer. + + RFC 1035 + + + + + Host information. + + RFC 1035 + RFC 1010 + + + + + Mailbox or mail list information. + + RFC 1035 + + + + + Mail exchange. + + RFC 1035 + RFC 974 + + + + + Text resources. + + RFC 1035 + RFC 1464 + + + + + Responsible Person. + + RFC 1183 + + + + + AFS Data Base location. + + RFC 1183 + RFC 5864 + + + + + An IPv6 host address. + + RFC 3596 + + + + + A resource record which specifies the location of the server(s) for a specific protocol and domain. + + RFC 2782 + + + + + Option record. + + RFC 6891 + + + + RRSIG rfc3755. + + RFC 3755 + + + + A Uniform Resource Identifier (URI) resource record. + + RFC 7553 + + + + + A certification authority authorization. + + RFC 6844 + + + + + A represending a responsible person. + + RFC 1183 + + + + Gets a domain name that specifies the mailbox for the responsible person. + + + The mailbox domain. + + + + + Gets a domain name for which TXT RR's exist. + + + The text domain. + + + + + Initializes a new instance of the class. + + The information. + The mailbox domain. + The text domain. + + If or or is null. + + + + + + + + A represending a SOA (Start Of Authority) record. + + RFC 1035 + + + + Gets a 32 bit time value that specifies the upper limit on + the time interval that can elapse before the zone is no + longer authoritative. + + + The expiration. + + + + + Gets the unsigned 32 bit minimum TTL field that should be + exported with any RR from this zone. + + + The minimum TTL. + + + + + Gets the domain name of the name server that was the original or primary source of data for this zone. + + + The doman name. + + + + + Gets a 32 bit time interval before the zone should be refreshed. + + + The refresh time. + + + + + Gets a 32 bit time interval that should elapse before a failed refresh should be retried. + + + The retry time. + + + + + Gets a domain name which specifies the mailbox of the person responsible for this zone. + + + The responsible mailbox domain name. + + + + + Gets the unsigned 32 bit version number of the original copy + of the zone.Zone transfers preserve this value. This value wraps and should be compared using sequence space arithmetic. + + + The serial number. + + + + + Initializes a new instance of the class. + + The information. + Name original domain name. + Name responsible domain name. + The serial number. + The refresh time. + The retry time. + The expire time. + The minimum TTL. + + If or or is null. + + + + + + + + A represending a location of the server(s) for a specific protocol and domain. + + RFC 2782 + + + + Gets the port. + + + The port. + + + + + Gets the priority. + + + The priority. + + + + + Gets the target domain name. + + + The target. + + + + + Gets the weight. + + + The weight. + + + + + Initializes a new instance of the class. + + The information. + The priority. + The weigth. + The port. + The target. + If or is null. + + + + + + + A represending a text resource. + + TXT RRs are used to hold descriptive text. The semantics of the text + depends on the domain where it is found. + + + RFC 1035 + RFC 1464 + + + + Gets the list of TXT values of this resource record in escaped form, valid for root file. + + + See https://tools.ietf.org/html/rfc1035#section-5.1 for escape details. + + + + + Gets the actual UTF8 representation of the text values of this record. + + + + + Initializes a new instance of the class. + + The information. + The values. + The UTF8 values. + + If or or is null. + + + + + + + + A represending a Uniform Resource Identifier (URI) resource. + + RFC 7553 + + + + Gets or sets the target Uri. + + + The target. + + + + + Gets or sets the priority. + + + The priority. + + + + + Gets or sets the weigth. + + + The weigth. + + + + + Initializes a new instance of the class. + + The information. + The priority. + The weight. + The target. + If or is null. + + + + + + + A represending a Well Known Service description. + + + Instead of describing the supported protocols in RFCs, the list is now published on http://www.iana.org/. + + + RFC 3232, the most current update. + + + + Gets the address. + + + The address. + + + + + Gets the Protocol. + + + According to https://tools.ietf.org/html/rfc6335, only ports for TCP, UDP, DCCP and SCTP services will be assigned. + + + + + Gets the binary raw bitmap. + Use to determine which ports are actually configured. + + + + + Gets the list of assigned ports. + + For example, if this list contains port 25, which is assigned to + the SMTP service. This means that a SMTP services + is running on with transport . + + + Port numbers + + + + Initializes a new instance of the class. + + The information. + The address. + The protocol. + The raw data. + + If or or is null. + + + + + + + + Specifies kind of query in this message. + This value is set by the originator of a query and copied into the response. + + + + + A standard query. + + RFC 1035 + + + + An inverse query. + + RFC 3425 + + + + A server status request. + + RFC 1035 + + + + Unassigned value + + + + + Notify query. + + RFC 1996 + + + + Update query. + + RFC 2136 + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Unassigned value + + + + + Extension methods for the contract. + + The methods implement common queries which are more complex and have some business logic. + + + + + + The GetHostEntry method queries a DNS server for the IP addresses and aliases associated with the . + In case is an , GetHostEntry does a reverse lookup on that first to determine the hostname. + + IP addresses found are returned in . + records are used to populate the .
    + The property will be set to the resolved hostname or . +
    +
    + + The following code example uses the method to resolve an IP address or hostname to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The or host name to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
    + + + The GetHostEntryAsync method queries a DNS server for the IP addresses and aliases associated with the . + In case is an , GetHostEntry does a reverse lookup on that first to determine the hostname. + + IP addresses found are returned in . + records are used to populate the .
    + The property will be set to the resolved hostname or . +
    +
    + + The following code example uses the method to resolve an IP address or hostname to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The or host name to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
    + + + The GetHostEntry method does a reverse lookup on the IP , + and queries a DNS server for the IP addresses and aliases associated with the resolved hostname. + + IP addresses found are returned in . + records are used to populate the .
    + The property will be set to the resolved hostname of the . +
    +
    + + The following code example uses the method to resolve an IP address to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
    + + + The GetHostEntryAsync method does a reverse lookup on the IP , + and queries a DNS server for the IP addresses and aliases associated with the resolved hostname. + + IP addresses found are returned in . + records are used to populate the .
    + The property will be set to the resolved hostname of the . +
    +
    + + The following code example uses the method to resolve an IP address to an instance. + + + + + + The method has some logic to populate the list: + + + + In case of sub-domain queries or similar, there might be multiple records for one , + + + + If only one is in the result set, all the aliases found will be returned. + + + + If more than one is in the result set, aliases are returned only if at least one doesn't match the queried hostname. + + + + + The instance. + The to query for. + + An instance that contains address information about the host specified in . + In case the could not be resolved to a domain name, this method returns null, + unless is set to true, then it might throw a . + + If is null. + In case is set to true and a DNS error occurs. +
    + + + The GetHostName method queries a DNS server to resolve the hostname of the via reverse lookup. + + The instance. + The to resolve. + + The hostname if the reverse lookup was successful or null, in case the host was not found. + If is set to true, this method will throw an instead of returning null! + + If is null. + If no host has been found and is true. + + + + The GetHostNameAsync method queries a DNS server to resolve the hostname of the via reverse lookup. + + The instance. + The to resolve. + + The hostname if the reverse lookup was successful or null, in case the host was not found. + If is set to true, this method will throw an instead of returning null! + + If is null. + If no host has been found and is true. + + + + The ResolveService method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + + The protocol of the service to query for. + Set it to or to not pass any protocol. + + A collection of s. + If or are null. + RFC 2782 + + + + The ResolveServiceAsync method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + + The protocol of the service to query for. + Set it to or to not pass any protocol. + + A collection of s. + If or are null. + RFC 2782 + + + + The ResolveService method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + An optional tag. Must not have any _ prefix. + A collection of s. + If or are null. + RFC 2782 + + + + The ResolveServiceAsync method does a lookup for _{}[._{}].{} + and aggregates the result (hostname, port and list of s) to a . + + This method expects matching A or AAAA records to populate the , + and/or a record to populate the property of the result. + + + + The returned list of s and/or the hostname can be empty if no matching additional records are found. + + The instance. + The base domain, which will be appended to the end of the query string. + The name of the service to look for. Must not have any _ prefix. + An optional tag. Must not have any _ prefix. + A collection of s. + If or are null. + RFC 2782 + + + + Extends by the property. + + + + + + Gets or sets the port. + + + The port. + + + + + The response returned by any query performed by with all answer sections, header and message information. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The class transports information of the lookup query performed by . + + A list of questions is returned by (although, the list will always contain only one ). + + + + + + Gets the domain name the lookup was runnig for. + + + The name of the query. + + + + + Gets the question class. + + + The question class. + + + + + Gets the type of the question. + + + The type of the question. + + + + + Initializes a new instance of the class. + + The query. + Type of the question. + The question class. + If is null. + + + + Initializes a new instance of the class. + + The query. + Type of the question. + The question class. + If is null. + + + + + + + Returns the information of this instance in a friendly format with an optional . + + The optional offset which can be used for pretty printing. + The string representation of this instance. + + + + Represents a simple request message which can be send through . + + + + + Response codes of the . + + RFC 6895 + + + + No error condition + + RFC 1035 + + + + Format error. The name server was unable to interpret the query. + + RFC 1035 + + + + Server failure. The name server was unable to process this query due to a problem with the name server. + + RFC 1035 + + + + Name Error. Meaningful only for responses from an authoritative name server, + this code signifies that the domain name referenced in the query does not exist. + + RFC 1035 + + + + Not Implemented. The name server does not support the requested kind of query. + + RFC 1035 + + + + Refused. The name server refuses to perform the specified operation for policy reasons. + For example, a name server may not wish to provide the information to the particular requester, + or a name server may not wish to perform a particular operation (e.g., zone transfer) for particular data. + + RFC 1035 + + + + Name Exists when it should not. + + RFC 2136 + + + + Resource record set exists when it should not. + + RFC 2136 + + + + Resource record set that should exist but does not. + + RFC 2136 + + + + Server Not Authoritative for zone / Not Authorized. + + RFC 2136 + RFC 2845 + + + + Name not contained in zone. + + RFC 2136 + + + + Bad OPT Version or TSIG Signature Failure. + + RFC 2671 + RFC 2845 + + + + Key not recognized. + + RFC 2845 + + + + Signature out of time window. + + RFC 2845 + + + + Bad TKEY Mode. + + RFC 2930 + + + + Duplicate key name. + + RFC 2930 + + + + Algorithm not supported. + + RFC 2930 + + + + Bad Truncation. + + RFC 4635 + + + + Bad/missing Server Cookie + + RFC 7873 + + + + Unknown error. + + + + + Indicates a timeout error. Connection to the remote server couldn't be established. + + + + + A DnsClient specific exception transporting additional information about the query causing this exception. + + + + + + Gets the response code. + + + The response code. + + + + + Gets the audit trail if . as set to true, null otherwise. + + + The audit trail. + + + + + Gets a human readable error message. + + + The error message. + + + + + Initializes a new instance of the class + with set to . + + + + + Initializes a new instance of the class + with set to + and a custom . + + + + + Initializes a new instance of the class + with the standard error text for the given . + + + + + Initializes a new instance of the class + with set to + and a custom and inner . + + + + + Initializes a new instance of the class + with a custom and the given . + + + + + Initializes a new instance of the class + with a custom and the given . + + + + + The header section of a . + + + + + Gets the number of additional records in the . + + + The number of additional records. + + + + + Gets the number of answer records in the . + + + The number of answer records. + + + + + Gets a value indicating whether the future use flag is set. + + + The future use flag. + + + + + Gets a value indicating whether this instance has authority answers. + + + true if this instance has authority answers; otherwise, false. + + + + + Gets the identifier. + + + The identifier. + + + + + Gets a value indicating whether the result is authentic data. + + + true if the result is authentic; otherwise, false. + + + + + Gets a value indicating whether checking is disabled. + + + true if checking is disabled; otherwise, false. + + + + + Gets a value indicating whether this instance has a query. + + + true if this instance has a query; otherwise, false. + + + + + Gets the number of name servers. + + + The number of name servers. + + + + + Gets the kind of query defined by . + + + The query kind. + + + + + Gets the number of questions of the . + + + The number of questions. + + + + + Gets a value indicating whether recursion is available on the DNS server. + + + true if recursion is available; otherwise, false. + + + + + Gets the response code. + + + The response code. + + + + + Gets a value indicating whether the result was truncated. + + + true if the result was truncated; otherwise, false. + + + + + Gets a value indicating whether recursion desired flag was set by the request. + + + true if the recursion desired flag was set; otherwise, false. + + + + + Initializes a new instance of the class. + + The identifier. + The flags. + The question count. + The answer count. + The additional count. + The server count. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets the readonly representation of this message which can be returned. + + + + + The type is used to normalize and validate domain names and labels. + + + + + The ACE prefix indicates that the domain name label contains not normally supported characters and that the label has been endoded. + + + + + The maximum lenght in bytes for one label. + + + + + The maximum supported total length in bytes for a domain nanme. The calculation of the actual + bytes this consumes includes all bytes used for to encode it as octet string. + + + + + The root label ".". + + + + + Gets the orginal value. + + + + + Gets the validated and eventually modified value. + + + + + Performs an implicit conversion from to . + + The name. + + The result of the conversion. + + + + + + + + + + + + + + Parses the given and validates all labels. + + + An empty string will be interpreted as root label. + + A domain name. + The representing the given . + If is null. + + + + Transforms names with the to the unicode variant and adds a trailing '.' at the end if not present. + The original value will be kept in this instance in case it is needed. + + + The method does not parse the domain name unless it contains a . + + The value to check. + The representation. + + + + Generic contract to query DNS endpoints. Implemented by . + + + + + Performs a DNS lookup for and . + + The domain name query. + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for , and . + + The domain name query. + The . + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for and . + + The domain name query. + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for , and . + + The domain name query. + The . + The . + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for and . + + The domain name query. + The . + The cancellation token. + + The which contains the response headers and lists of resource records. + + + + + Performs a DNS lookup for , and . + + The domain name query. + The . + The . + The cancellation token. + + The which contains the response headers and lists of resource records. + + + + + Does a reverse lookup of the . + + The . + + The which should contain the . + + + + + Does a reverse lookup of the . + + The . + + The which should contain the . + + + + + Does a reverse lookup of the . + + The . + The cancellation token. + + The which should contain the . + + + + + Contract defining the result of a query performed by . + + + + + + + Gets the list of questions. + + + + + Gets a list of additional records. + + + + + Gets a list of all answers, addtional and authority records. + + + + + Gets a list of answer records. + + + + + Gets a list of authority records. + + + + + Gets the audit trail if . as set to true, null otherwise. + + + The audit trail. + + + + + Returns a string value representing the error response code in case an error occured, + otherwise ''. + + + + + A flag indicating if the header contains a response codde other than . + + + + + Gets the header of the response. + + + + + Gets the size of the message. + + + The size of the message. + + + + + Gets the name server which responded with this result. + + + The name server. + + + + + The contract for the LookupClient including all the options. + + The interfaces for the query methods and the lookup client properties are separated so that one can + inject or expose only the without exposing the configuration options. + + + + + + If enabled, each will contain a full documentation of the response in zone file format. + + + + + + Gets or sets a flag indicating if the should use response caching or not. + The cache duration is calculated by the resource record of the response. Usually, the lowest TTL is used. + + + In case the DNS Server returns records with a TTL of zero. The response cannot be cached. + Setting can overwrite this behavior and cache those responses anyways for at least the given duration. + + + + + Gets or sets a which can override the TTL of a resource record in case the + TTL of the record is lower than this minimum value. + + This is useful in cases where the server retruns records with zero TTL. + + This setting gets igonred in case is set to false. + + + + + Gets the list of configured name servers. + + + + + Gets or sets a flag indicating if DNS queries should instruct the DNS server to do recursive lookups, or not. + + The flag indicating if recursion should be used or not. + + + + Gets or sets number of tries to connect to one name server before trying the next one or throwing an exception. + + + Gets or sets the number of retries the client can perform in connection or timeout errors during query operations. + + If set to 0, no retries will be performed. + + + The number of alloed retries before exceptions will bubble up. + + + + Gets or sets a flag indicating if the should throw an if + a query result has a other than . + + If set to false, the 's flag can be expected. + The will contain more information and the transports the + original . + + + If set to true, any query method of will throw an if + the response header indicates an error. The actual code and message can be accessed via and of the . + + + + + + + Gets or sets the timeout in milliseconds. is used for limiting the connection and request time for one operation. + Timeout must be greater than zero and less than . + If set to (or -1), no timeout will be applied. + + + If set too short, queries will more likely result in s. + + Important to note, s will be retried, if are not disabled. + This should help in case one or more configured DNS servers are not reachable or under load for example. + + + + + + Gets or sets a flag indicating if Tcp should not be used in case a Udp response is truncated. + If true, truncated results will potentially yield no answers. + + + + + Gets or sets a flag indicating if Udp should not be used at all. + + Use this only if Udp cannot be used because of your firewall rules for example. + + + + + + The is the main query class of this library and should be used for any kind of DNS lookup query. + + It implements and which contains a number of extension methods, too. + The extension methods internally all invoke the standard queries though. + + + + + + A basic example wihtout specifying any DNS server, which will use the DNS server configured by your local network. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Creates a new instance of without specifying any name server. + This will implicitly use the name server(s) configured by the local network adapter. + + + This uses . + The resulting list of name servers is highly dependent on the local network configuration and OS. + + + In the following example, we will create a new without explicitly defining any DNS server. + This will use the DNS server configured by your local network. + + + + + + + + Creates a new instance of with one or more DNS servers identified by their . + The default port 53 will be used for all s provided. + + The (s) to be used by this instance. + + To connect to one or more DNS server using the default port, we can use this overload: + + + + + + + + Create a new instance of with one DNS server defined by and . + + The of the DNS server. + The port of the DNS server. + + In case you want to connect to one specific DNS server which does not run on the default port 53, you can do so like in the following example: + + + + + + + + Creates a new instance of with one or more and port combination + stored in (s). + + The (s) to be used by this instance. + + In this example, we instantiate a new using an and custom port which is different than the default port 53. + + + + + The class also contains pre defined s for the public google DNS servers, which can be used as follows: + + + + + + + + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + + The behavior of the query can be controlled by the properties of this instance. + for example can be disabled and would instruct the DNS server to return no additional records. + + + + + Represents a name server instance used by . + Also, comes with some static methods to resolve name servers from the local network configuration. + + + + + The default DNS server port. + + + + + The public google DNS IPv4 endpoint. + + + + + The second public google DNS IPv6 endpoint. + + + + + The public google DNS IPv6 endpoint. + + + + + The second public google DNS IPv6 endpoint. + + + + + Initializes a new instance of the class. + + The endpoint. + + + + Initializes a new instance of the class. + + The endpoint. + If is null. + + + + Gets a value indicating whether this is enabled. + + The instance might get disabled if encounters problems to connect to it. + + + + true if enabled; otherwise, false. + + + + + Gets the endpoint of this instance. + + + The endpoint. + + + + + Gets the size of the supported UDP payload. + + This value might get updated by by reading the options records returned by a query. + + + + The size of the supported UDP payload. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets a list of name servers by iterating over the available network interfaces. + + If is enabled, this method will return the google public dns endpoints if no + local DNS server was found. + + + If set to true local IPv6 sites are skiped. + If set to true the public Google DNS servers are returned if no other servers could be found. + + The list of name servers. + + + + + CLASS fields appear in resource records. + + + + + The Internet. + + + + + The CSNET class (Obsolete - used only for examples in some obsolete RFCs). + + + + + The CHAOS class. + + + + + Hesiod [Dyer 87]. + + + + + The query type field appear in the question part of a query. + Query types are a superset of . + + + + + A host address. + + RFC 1035 + + + + + An authoritative name server. + + RFC 1035 + + + + + A mail destination (OBSOLETE - use MX). + + RFC 1035 + + + + A mail forwarder (OBSOLETE - use MX). + + RFC 1035 + + + + The canonical name for an alias. + + RFC 1035 + + + + + Marks the start of a zone of authority. + + RFC 1035 + + + + + A mailbox domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A mail group member (EXPERIMENTAL). + + RFC 1035 + + + + + A mailbox rename domain name (EXPERIMENTAL). + + RFC 1035 + + + + + A Null resource record (EXPERIMENTAL). + + RFC 1035 + + + + + A well known service description. + + RFC 3232 + + + + + A domain name pointer. + + RFC 1035 + + + + + Host information. + + RFC 1035 + RFC 1010 + + + + + Mailbox or mail list information. + + RFC 1035 + + + + + Mail exchange. + + RFC 1035 + RFC 974 + + + + + Text resources. + + RFC 1035 + RFC 1464 + + + + + Responsible Person. + + RFC 1183 + + + + + AFS Data Base location. + + RFC 1183 + RFC 5864 + + + + + An IPv6 host address. + + RFC 3596 + + + + + A resource record which specifies the location of the server(s) for a specific protocol and domain. + + RFC 2782 + + + + + RRSIG rfc3755. + + RFC 3755 + + + + Generic any query *. + + + + + A Uniform Resource Identifier (URI) resource record. + + RFC 7553 + + + + + A certification authority authorization. + + RFC 6844 + + + + + Used for debugging at the moment, might be removed in a future release. + + + + + The number of byte array allocations. + + + + + The number of byte arrays released. + + + + + The number of resolved queries. + + + + + The number of resolve query tries. + + + + + The number of created clients. + + + + + Helper for reading config files where each row is a key-value data pair. + The input key-values must not have any whitespace within them. + Keys are only matched if they begin a line, with no preceding whitespace. + + + + + Constructs a new RowConfigReader which reads from the given string. + The string to parse through. + + + + + Constructs a new RowConfigReader which reads from the given string. + The string to parse through. + The comparison kind to use. + + + + + Gets the next occurrence of the given key, from the current position of the reader, + or throws if no occurrence of the key exists in the remainder of the string. + + + + + Tries to get the next occurrence of the given key from the current position of the reader. + If successful, returns true and stores the result in 'value'. Otherwise, returns false. + + + + + Gets the next occurrence of the key in the string, and parses it as an Int32. + Throws if the key is not found in the remainder of the string, or if the key + cannot be successfully parsed into an Int32. + + + This is mainly provided as a helper because most Linux config/info files + store integral data. + + + + + Reads the value of the first occurrence of the given key contained in the string given. + + The key-value row configuration string. + The key to find. + The value of the row containing the first occurrence of the key. + + + + Extension methods for . + + + + + Translates a IPv4 or IPv6 into an arpa address. + Used for reverse DNS lookup to get the domain name of the given . + + The address to translate. + The arpa representation of the address. + + + + + + + Extension methods for where T is . + + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s only. + + The records. + The list of . + + + + Filters the elements of an to return s + which have the . + + The records. + The to filter for. + The list of . + + + diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessons.dll b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessons.dll new file mode 100644 index 0000000000000000000000000000000000000000..ef715257b03bf83e2c6927f409b4d4f54a7c0b11 GIT binary patch literal 12288 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 a=4R?i(EqQ%X8$)I27ase|JR>i1pXUX*mREo literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessons.pdb b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessons.pdb new file mode 100644 index 0000000000000000000000000000000000000000..8f7ac870eb60fe9c94de37f8e0871fd97d907f30 GIT binary patch literal 48640 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 lT5LbKXE_KEIJhU8p+lJL|Br$s$me+E7jZo2>g literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.pdb b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/EnglishLessonsAPI.pdb new file mode 100644 index 0000000000000000000000000000000000000000..61a56a4d08e36eedd9323a88af6c61da6e779cd1 GIT binary patch literal 1532 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
    ;<8$zC_OaW{9Uo(`imY=nej3UY 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�-7BI#T0qwY{Nu779bxr?4!@eLfuF{$)X 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

    #le0U&!4ddIu!rXj7IrzY^0%b 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

    Pb;$-z(`;V%NG4aFw~axk#N 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 z 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

      `BgJd8KtPs9?qF(46zm)t^1rBW}Y>wp_(;m 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Bson.xml b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Bson.xml new file mode 100644 index 0000000..da33941 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Bson.xml @@ -0,0 +1,21995 @@ + + + + MongoDB.Bson + + + + + A static class containing BSON extension methods. + + + + + Serializes an object to a BSON byte array. + + The nominal type of the object. + The object. + The serializer. + The writer settings. + The serialization context configurator. + The serialization args. + A BSON byte array. + + + + Serializes an object to a BSON byte array. + + The object. + The nominal type of the object.. + The writer settings. + The serializer. + The serialization context configurator. + The serialization args. + A BSON byte array. + nominalType + serializer + + + + Serializes an object to a BsonDocument. + + The nominal type of the object. + The object. + The serializer. + The serialization context configurator. + The serialization args. + A BsonDocument. + + + + Serializes an object to a BsonDocument. + + The object. + The nominal type of the object. + The serializer. + The serialization context configurator. + The serialization args. + A BsonDocument. + nominalType + serializer + + + + Serializes an object to a JSON string. + + The nominal type of the object. + The object. + The JsonWriter settings. + The serializer. + The serializastion context configurator. + The serialization args. + + A JSON string. + + + + + Serializes an object to a JSON string. + + The object. + The nominal type of the objectt. + The JsonWriter settings. + The serializer. + The serialization context configurator. + The serialization args. + + A JSON string. + + nominalType + serializer + + + + Indicates that an attribute restricted to one member has been applied to multiple members. + + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + The message. + The inner. + + + + Initializes a new instance of the class. + + The info. + The context. + + + + Represents a fast converter from integer indexes to UTF8 BSON array element names. + + + + + Gets the element name bytes. + + The index. + The element name bytes. + + + + Represents a fast converter from integer indexes to UTF8 BSON array element names. + + + + + Gets or sets the default array element name accelerator. + + + + + Initializes a new instance of the class. + + The number of cached element names. + + + + Gets the element name bytes. + + The index. + + The element name bytes. + + + + + Represents a pool of chunks. + + + + + Gets or sets the default chunk pool. + + + The default chunk pool. + + + + + Initializes a new instance of the class. + + The maximum number of chunks to keep in the pool. + The size of each chunk. + + + + Gets the chunk size. + + + The chunk size. + + + + + Gets the maximum size of the pool. + + + The maximum size of the pool. + + + + + Gets the size of the pool. + + + The size of the pool. + + + + + + + + + + + Represents settings for a BsonDocumentReader. + + + + + Initializes a new instance of the BsonDocumentReaderSettings class. + + + + + Initializes a new instance of the BsonDocumentReaderSettings class. + + The representation for Guids. + + + + Gets or sets the default settings for a BsonDocumentReader. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents settings for a BsonDocumentWriter. + + + + + Initializes a new instance of the BsonDocumentWriterSettings class. + + + + + Initializes a new instance of the BsonDocumentWriterSettings class. + + The representation for Guids. + + + + Gets or sets the default BsonDocumentWriter settings. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents settings for a BsonReader. + + + + + Initializes a new instance of the BsonReaderSettings class. + + + + + Initializes a new instance of the BsonReaderSettings class. + + The representation for Guids. + + + + Gets or sets the representation for Guids. + + + + + Gets whether the settings are frozen. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Throws an InvalidOperationException when an attempt is made to change a setting after the settings are frozen. + + + + + Represents a Stream has additional methods to suport reading and writing BSON values. + + + + + Reads a BSON CString from the stream. + + The encoding. + A string. + + + + Reads a BSON CString from the stream. + + An ArraySegment containing the CString bytes (without the null byte). + + + + Reads a BSON Decimal128 from the stream. + + A . + + + + Reads a BSON double from the stream. + + A double. + + + + Reads a 32-bit BSON integer from the stream. + + An int. + + + + Reads a 64-bit BSON integer from the stream. + + A long. + + + + Reads a BSON ObjectId from the stream. + + An ObjectId. + + + + Reads a raw length prefixed slice from the stream. + + A slice. + + + + Reads a BSON string from the stream. + + The encoding. + A string. + + + + Skips over a BSON CString leaving the stream positioned just after the terminating null byte. + + + + + Writes a BSON CString to the stream. + + The value. + + + + Writes the CString bytes to the stream. + + The value. + + + + Writes a BSON Decimal128 to the stream. + + The value. + + + + Writes a BSON double to the stream. + + The value. + + + + Writes a 32-bit BSON integer to the stream. + + The value. + + + + Writes a 64-bit BSON integer to the stream. + + The value. + + + + Writes a BSON ObjectId to the stream. + + The value. + + + + Writes a BSON string to the stream. + + The value. + The encoding. + + + + A Stream that wraps another Stream while implementing the BsonStream abstract methods. + + + + + Initializes a new instance of the class. + + The stream. + if set to true [owns stream]. + stream + + + + Gets the base stream. + + + The base stream. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a mapping from a set of UTF8 encoded strings to a set of elementName/value pairs, implemented as a trie. + + The type of the BsonTrie values. + + + + Initializes a new instance of the BsonTrie class. + + + + + Gets the root node. + + + + + Adds the specified elementName (after encoding as a UTF8 byte sequence) and value to the trie. + + The element name to add. + The value to add. The value can be null for reference types. + + + + Gets the node associated with the specified element name. + + The element name. + + When this method returns, contains the node associated with the specified element name, if the key is found; + otherwise, null. This parameter is passed unitialized. + + True if the node was found; otherwise, false. + + + + Tries to get the node associated with a name read from a stream. + + The stream. + The node. + + True if the node was found. + If the node was found the stream is advanced over the name, otherwise + the stream is repositioned to the beginning of the name. + + + + + Gets the value associated with the specified element name. + + The element name. + + When this method returns, contains the value associated with the specified element name, if the key is found; + otherwise, the default value for the type of the value parameter. This parameter is passed unitialized. + + True if the value was found; otherwise, false. + + + + Gets the value associated with the specified element name. + + The element name. + + When this method returns, contains the value associated with the specified element name, if the key is found; + otherwise, the default value for the type of the value parameter. This parameter is passed unitialized. + + True if the value was found; otherwise, false. + + + + Represents a node in a BsonTrie. + + The type of the BsonTrie values. + + + + Gets whether this node has a value. + + + + + Gets the element name for this node. + + + + + Gets the value for this node. + + + + + Gets the child of this node for a given key byte. + + The key byte. + The child node if it exists; otherwise, null. + + + + Represents settings for a BsonWriter. + + + + + Initializes a new instance of the BsonWriterSettings class. + + + + + Initializes a new instance of the BsonWriterSettings class. + + The representation for Guids. + + + + Gets or sets the representation for Guids. + + + + + Gets whether the settings are frozen. + + + + + Gets or sets the max serialization depth allowed (used to detect circular references). + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Throws an InvalidOperationException when an attempt is made to change a setting after the settings are frozen. + + + + + Represents a chunk backed by a byte array. + + + + + Initializes a new instance of the class. + + The size. + + + + Initializes a new instance of the class. + + The bytes. + bytes + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Represents a slice of a byte buffer. + + + + + Initializes a new instance of the class. + + The byte buffer. + The offset of the slice. + The length of the slice. + + + + Gets the buffer. + + + The buffer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + A BsonWriter that appends elements to the end of a document. + + + + + + Initializes a new instance of the class. + + The wrapped writer. + The elements to append. + The settings configurator. + + + + + + + + + + Represents a chunk of bytes. + + + + + Gets the bytes. + + + The bytes. + + + + + Returns a new reference to the same chunk that can be independently disposed. + + A new reference to the same chunk. + + + + Represents a source of chunks. + + + + + Gets the chunk. + + The chunk source is free to return a larger or smaller chunk than requested. + Size of the requested. + A chunk. + + + + Represents a BSON reader. + + + + + Gets the current BsonType. + + + + + Gets the current state of the reader. + + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Gets the current BsonType (calls ReadBsonType if necessary). + + The current BsonType. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + Reads a BSON Decimal128 from the reader. + + A . + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader (using the provided name decoder). + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a raw BSON array. + + The raw BSON array. + + + + Reads a raw BSON document. + + The raw BSON document. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Contains extensions methods for IBsonReader. + + + + + Positions the reader to an element by name. + + The reader. + The name of the element. + True if the element was found. + + + + Positions the reader to a string element by name. + + The reader. + The name of the element. + True if the element was found. + + + + Reads a BSON binary data element from the reader. + + The reader. + The name of the element. + A BsonBinaryData. + + + + Reads a BSON boolean element from the reader. + + The reader. + The name of the element. + A Boolean. + + + + Reads a BSON binary data element from the reader. + + The reader. + The name of the element. + A byte array. + + + + Reads a BSON DateTime element from the reader. + + The reader. + The name of the element. + The number of milliseconds since the Unix epoch. + + + + Reads a BSON Decimal128 element from the reader. + + The reader. + The name of the element. + A . + + + + Reads a BSON Double element from the reader. + + The reader. + The name of the element. + A Double. + + + + Reads a BSON Int32 element from the reader. + + The reader. + The name of the element. + An Int32. + + + + Reads a BSON Int64 element from the reader. + + The reader. + The name of the element. + An Int64. + + + + Reads a BSON JavaScript element from the reader. + + The reader. + The name of the element. + A string. + + + + Reads a BSON JavaScript with scope element from the reader (call ReadStartDocument next to read the scope). + + The reader. + The name of the element. + A string. + + + + Reads a BSON MaxKey element from the reader. + + The reader. + The name of the element. + + + + Reads a BSON MinKey element from the reader. + + The reader. + The name of the element. + + + + Reads the name of an element from the reader. + + The reader. + The name of the element. + + + + Reads the name of an element from the reader. + + The reader. + The name of the element. + + + + Reads a BSON null element from the reader. + + The reader. + The name of the element. + + + + Reads a BSON ObjectId element from the reader. + + The reader. + The name of the element. + An ObjectId. + + + + Reads a raw BSON array. + + The reader. + The name. + + The raw BSON array. + + + + + Reads a raw BSON document. + + The reader. + The name. + The raw BSON document. + + + + Reads a BSON regular expression element from the reader. + + The reader. + The name of the element. + A BsonRegularExpression. + + + + Reads a BSON string element from the reader. + + The reader. + The name of the element. + A String. + + + + Reads a BSON symbol element from the reader. + + The reader. + The name of the element. + A string. + + + + Reads a BSON timestamp element from the reader. + + The combined timestamp/increment. + The reader. + The name of the element. + + + + Reads a BSON undefined element from the reader. + + The reader. + The name of the element. + + + + Represents extension methods on BsonStream. + + + + + Backpatches the size. + + The stream. + The start position. + + + + Reads the binary sub type. + + The stream. + The binary sub type. + + + + Reads a boolean from the stream. + + The stream. + A boolean. + + + + Reads the BSON type. + + The stream. + The BSON type. + + + + Reads bytes from the stream. + + The stream. + The buffer. + The offset. + The count. + + + + Reads bytes from the stream. + + The stream. + The count. + The bytes. + + + + Writes a binary sub type to the stream. + + The stream. + The value. + + + + Writes a boolean to the stream. + + The stream. + The value. + + + + Writes a BsonType to the stream. + + The stream. + The value. + + + + Writes bytes to the stream. + + The stream. + The buffer. + The offset. + The count. + + + + Writes a slice to the stream. + + The stream. + The slice. + + + + Represents a BSON writer. + + + + + + Gets the position. + Not all writers are able to report the position. Those that can't simply return zero. + + + The position. + + + + + Gets the current serialization depth. + + + + + Gets the settings of the writer. + + + + + Gets the current state of the writer. + + + + + Closes the writer. + + + + + Flushes any pending data to the output destination. + + + + + Pops the element name validator. + + The popped element validator. + + + + Pops the settings. + + + + + Pushes the element name validator. + + The validator. + + + + Pushes new settings for the writer. + + The settings configurator. + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + Writes a BSON Decimal128 to the writer. + + The value. + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes the name of an element to the writer. + + The name of the element. + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a raw BSON array. + + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Contains extension methods for IBsonWriter. + + + + + Writes a BSON binary data element to the writer. + + The writer. + The name of the element. + The binary data. + + + + Writes a BSON Boolean element to the writer. + + The writer. + The name of the element. + The Boolean value. + + + + Writes a BSON binary data element to the writer. + + The writer. + The name of the element. + The bytes. + + + + Writes a BSON DateTime element to the writer. + + The writer. + The name of the element. + The number of milliseconds since the Unix epoch. + + + + Writes a BSON Decimal128 element to the writer. + + The writer. + The name of the element. + The value. + + + + Writes a BSON Double element to the writer. + + The writer. + The name of the element. + The Double value. + + + + Writes a BSON Int32 element to the writer. + + The writer. + The name of the element. + The Int32 value. + + + + Writes a BSON Int64 element to the writer. + + The writer. + The name of the element. + The Int64 value. + + + + Writes a BSON JavaScript element to the writer. + + The writer. + The name of the element. + The JavaScript code. + + + + Writes a BSON JavaScript element to the writer (call WriteStartDocument to start writing the scope). + + The writer. + The name of the element. + The JavaScript code. + + + + Writes a BSON MaxKey element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON MinKey element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON null element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON ObjectId element to the writer. + + The writer. + The name of the element. + The ObjectId. + + + + Writes a raw BSON array. + + The writer. + The name. + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The writer. + The name. + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression element to the writer. + + The writer. + The name of the element. + A BsonRegularExpression. + + + + Writes the start of a BSON array element to the writer. + + The writer. + The name of the element. + + + + Writes the start of a BSON document element to the writer. + + The writer. + The name of the element. + + + + Writes a BSON String element to the writer. + + The writer. + The name of the element. + The String value. + + + + Writes a BSON Symbol element to the writer. + + The writer. + The name of the element. + The symbol. + + + + Writes a BSON timestamp element to the writer. + + The writer. + The name of the element. + The combined timestamp/increment value. + + + + Writes a BSON undefined element to the writer. + + The writer. + The name of the element. + + + + Represents an element name validator. Used by BsonWriters when WriteName is called + to determine if the element name is valid. + + + + + Gets the validator to use for child content (a nested document or array). + + The name of the element. + The validator to use for child content. + + + + Determines whether the element name is valid. + + The name of the element. + True if the element name is valid. + + + + Represents a name decoder. + + + + + Decodes the name. + + The stream. + The encoding. + + The name. + + + + + Informs the decoder of an already decoded name (so the decoder can change state if necessary). + + The name. + + + + Represents a source of chunks optimized for input buffers. + + + + + Initializes a new instance of the class. + + The chunk source. + The maximum size of an unpooled chunk. + The minimum size of a chunk. + The maximum size of a chunk. + + + + Gets the base source. + + + The base source. + + + + + Gets the maximum size of a chunk. + + + The maximum size of a chunk. + + + + + Gets the minimum size of a chunk. + + + The minimum size of a chunk. + + + + + Gets the maximum size of an unpooled chunk. + + + The maximum size of an unpooled chunk. + + + + + + + + + + + Represents a wrapper around a TextReader to provide some buffering functionality. + + + + + Initializes a new instance of the class. + + The json. + + + + Initializes a new instance of the class. + + The reader. + + + + Gets or sets the current position. + + + + + Gets a snippet of a maximum length from the buffer (usually to include in an error message). + + The start. + The maximum length. + The snippet. + + + + Gets a substring from the buffer. + + The start. + The count. + The substring. + + + + Reads the next character from the text reader and advances the character position by one character. + + + The next character from the text reader, or -1 if no more characters are available. The default implementation returns -1. + + + + + Resets the buffer (clears everything up to the current position). + + + + + Unreads one character (moving the current Position back one position). + + The character. + + + + Represents a factory for IBsonBuffers. + + + + + Creates a buffer of the specified length. Depending on the length, either a SingleChunkBuffer or a MultiChunkBuffer will be created. + + The chunk pool. + The minimum capacity. + A buffer with at least the minimum capacity. + + + + An IByteBuffer that is backed by a contiguous byte array. + + + + + Initializes a new instance of the class. + + The bytes. + Whether the buffer is read only. + + + + Initializes a new instance of the class. + + The bytes. + The length. + Whether the buffer is read only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a Stream backed by an IByteBuffer. Similar to MemoryStream but backed by an IByteBuffer + instead of a byte array and also implements the BsonStream interface for higher performance BSON I/O. + + + + + Initializes a new instance of the class. + + The buffer. + Whether the stream owns the buffer and should Dispose it when done. + + + + Gets the buffer. + + + The buffer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a byte buffer (backed by various means depending on the implementation). + + + + + Gets the capacity. + + + The capacity. + + + + + Gets a value indicating whether this instance is read only. + + + true if this instance is read only; otherwise, false. + + + + + Gets or sets the length. + + + The length. + + + + + Access the backing bytes directly. The returned ArraySegment will point to the desired position and contain + as many bytes as possible up to the next chunk boundary (if any). If the returned ArraySegment does not + contain enough bytes for your needs you will have to call ReadBytes instead. + + The position. + + An ArraySegment pointing directly to the backing bytes for the position. + + + + + Clears the specified bytes. + + The position. + The count. + + + + Ensure that the buffer has a minimum capacity. Depending on the buffer allocation strategy + calling this method may result in a higher capacity than the minimum (but never lower). + + The minimum capacity. + + + + Gets a slice of this buffer. + + The position of the start of the slice. + The length of the slice. + A slice of this buffer. + + + + Makes this buffer read only. + + + + + Gets a byte. + + The position. + A byte. + + + + Gets bytes. + + The position. + The destination. + The destination offset. + The count. + + + + Sets a byte. + + The position. + The value. + + + + Sets bytes. + + The position. + The bytes. + The offset. + The count. + + + + Encodes and decodes scalar values to JSON compatible strings. + + + + + Converts a string to a Boolean. + + The value. + A Boolean. + + + + Converts a string to a DateTime. + + The value. + A DateTime. + + + + Converts a string to a DateTimeOffset. + + The value. + A DateTimeOffset. + + + + Converts a string to a Decimal. + + The value. + A Decimal. + + + + Converts a string to a . + + The value. + A . + + + + Converts a string to a Double. + + The value. + A Double. + + + + Converts a string to an Int16. + + The value. + An Int16. + + + + Converts a string to an Int32. + + The value. + An Int32. + + + + Converts a string to an Int64. + + The value. + An Int64. + + + + Converts a string to a Single. + + The value. + A Single. + + + + Converts a Boolean to a string. + + The value. + A string. + + + + Converts a DateTime to a string. + + The value. + A string. + + + + Converts a DateTimeOffset to a string. + + The value. + A string. + + + + Converts a Decimal to a string. + + The value. + A string. + + + + Converts a to a string. + + The value. + A string. + + + + Converts a Double to a string. + + The value. + A string. + + + + Converts a Single to a string. + + The value. + A string. + + + + Converts an Int32 to a string. + + The value. + A string. + + + + Converts an Int64 to a string. + + The value. + A string. + + + + Converts an Int16 to a string. + + The value. + A string. + + + + Converts a UInt32 to a string. + + The value. + A string. + + + + Converts a UInt64 to a string. + + The value. + A string. + + + + Converts a UInt16 to a string. + + The value. + A string. + + + + Converts a string to a UInt16. + + The value. + A UInt16. + + + + Converts a string to a UInt32. + + The value. + A UInt32. + + + + Converts a string to a UInt64. + + The value. + A UInt64. + + + + An IByteBuffer that is backed by multiple chunks. + + + + + Initializes a new instance of the class. + + The chunk pool. + chunkPool + + + + Initializes a new instance of the class. + + The chunks. + The length. + Whether the buffer is read only. + chunks + + + + + + + Gets the chunk source. + + + The chunk source. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents an element name validator that does no validation. + + + + + Gets the instance. + + + The instance. + + + + + Gets the validator to use for child content (a nested document or array). + + The name of the element. + The validator to use for child content. + + + + Determines whether the element name is valid. + + The name of the element. + True if the element name is valid. + + + + Represents a source of chunks optimized for output buffers. + + + + + Initializes a new instance of the class. + + The chunk source. + The size of the initial unpooled chunk. + The minimum size of a chunk. + The maximum size of a chunk. + + + + Gets the base source. + + + The base source. + + + + + Gets the initial unpooled chunk size. + + + The initial unpooled chunk size. + + + + + Gets the maximum size of a chunk. + + + The maximum size of a chunk. + + + + + Gets the minimum size of a chunk. + + + The minimum size of a chunk. + + + + + + + + + + + Represents a Trie-based name decoder that also provides a value. + + The type of the value. + + + + Initializes a new instance of the class. + + The trie. + + + + Gets a value indicating whether this is found. + + + true if found; otherwise, false. + + + + + Gets the value. + + + The value. + + + + + Reads the name. + + The stream. + The encoding. + + The name. + + + + + Informs the decoder of an already decoded name (so the decoder can change state if necessary). + + The name. + + + + Represents a singleton instance of a strict UTF8Encoding. + + + + + Gets the lenient instance. + + + + + Gets the strict instance. + + + + + Represents a UTF8 name decoder. + + + + + Gets the instance. + + + The instance. + + + + + Decodes the name. + + The stream. + The encoding. + + The name. + + + + + Informs the decoder of an already decoded name (so the decoder can change state if necessary). + + The name. + + + + An IByteBuffer that is backed by a single chunk. + + + + + Initializes a new instance of the class. + + The chuns. + The length. + Whether the buffer is read only. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a class that has some helper methods for decoding UTF8 strings. + + + + + Decodes a UTF8 string. + + The bytes. + The index. + The count. + The encoding. + The decoded string. + + + + An abstract base class for an IBsonWriter that wraps another IBsonWriter. + + + + + + Initializes a new instance of the class. + + The wrapped writer. + + + + + + + + + + + + + + + + Gets the wrapped writer. + + + The wrapped writer. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Throws if disposed. + + + + + + Represents settings for a JsonReader. + + + + + Initializes a new instance of the JsonReaderSettings class. + + + + + Gets or sets the default settings for a JsonReader. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents a BSON reader for a BsonDocument. + + + + + Initializes a new instance of the BsonDocumentReader class. + + A BsonDocument. + + + + Initializes a new instance of the BsonDocumentReader class. + + A BsonDocument. + The reader settings. + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Creates a clone of the context. + + A clone of the context. + + + + Represents a BSON writer to a BsonDocument. + + + + + Initializes a new instance of the BsonDocumentWriter class. + + The document to write to (normally starts out as an empty document). + + + + Initializes a new instance of the BsonDocumentWriter class. + + The document to write to (normally starts out as an empty document). + The settings. + + + + Gets the BsonDocument being written to. + + + + + + + + Closes the writer. + + + + + Flushes any pending data to the output destination. + + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes the name of an element to the writer. + + The name of the element. + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Used by BsonReaders and BsonWriters to represent the current context. + + + + + The top level of a BSON document. + + + + + A (possibly embedded) BSON document. + + + + + A BSON array. + + + + + A JavaScriptWithScope BSON value. + + + + + The scope document of a JavaScriptWithScope BSON value. + + + + + Represents a BSON reader for a JSON string. + + + + + Initializes a new instance of the JsonReader class. + + The JSON string. + + + + Initializes a new instance of the JsonReader class. + + The JSON string. + The reader settings. + + + + Initializes a new instance of the JsonReader class. + + The TextReader. + + + + Initializes a new instance of the JsonReader class. + + The TextReader. + The reader settings. + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Creates a clone of the context. + + A clone of the context. + + + + A static class that represents a JSON scanner. + + + + + Gets the next JsonToken from a JsonBuffer. + + The buffer. + The next token. + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Initializes a new instance of the BsonReaderBookmark class. + + The state of the reader. + The current BSON type. + The name of the current element. + + + + Gets the current state of the reader. + + + + + Gets the current BsonType; + + + + + Gets the name of the current element. + + + + + Represents a JSON token type. + + + + + An invalid token. + + + + + A begin array token (a '['). + + + + + A begin object token (a '{'). + + + + + An end array token (a ']'). + + + + + A left parenthesis (a '('). + + + + + A right parenthesis (a ')'). + + + + + An end object token (a '}'). + + + + + A colon token (a ':'). + + + + + A comma token (a ','). + + + + + A DateTime token. + + + + + A Double token. + + + + + An Int32 token. + + + + + And Int64 token. + + + + + An ObjectId token. + + + + + A regular expression token. + + + + + A string token. + + + + + An unquoted string token. + + + + + An end of file token. + + + + + Represents a JSON token. + + + + + Initializes a new instance of the JsonToken class. + + The token type. + The lexeme. + + + + Gets the token type. + + + + + Gets the lexeme. + + + + + Gets the value of a DateTime token. + + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int64 token. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Gets the value of an ObjectId token. + + + + + Gets the value of a regular expression token. + + + + + Gets the value of a string token. + + + + + Represents a DateTime JSON token. + + + + + Initializes a new instance of the DateTimeJsonToken class. + + The lexeme. + The DateTime value. + + + + Gets the value of a DateTime token. + + + + + Represents a Double JSON token. + + + + + Initializes a new instance of the DoubleJsonToken class. + + The lexeme. + The Double value. + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int64 token. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Represents an Int32 JSON token. + + + + + Initializes a new instance of the Int32JsonToken class. + + The lexeme. + The Int32 value. + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int32 token as an Int64. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Represents an Int64 JSON token. + + + + + Initializes a new instance of the Int64JsonToken class. + + The lexeme. + The Int64 value. + + + + Gets the value of a Double token. + + + + + Gets the value of an Int32 token. + + + + + Gets the value of an Int64 token. + + + + + Gets a value indicating whether this token is number. + + + true if this token is number; otherwise, false. + + + + + Represents an ObjectId JSON token. + + + + + Initializes a new instance of the ObjectIdJsonToken class. + + The lexeme. + The ObjectId value. + + + + Gets the value of an ObjectId token. + + + + + Represents a regular expression JSON token. + + + + + Initializes a new instance of the RegularExpressionJsonToken class. + + The lexeme. + The BsonRegularExpression value. + + + + Gets the value of a regular expression token. + + + + + Represents a String JSON token. + + + + + Initializes a new instance of the StringJsonToken class. + + The token type. + The lexeme. + The String value. + + + + Gets the value of an String token. + + + + + Represents a bookmark that can be used to return a reader to the current position and state. + + + + + Represents a BSON reader for a binary BSON byte array. + + + + + Initializes a new instance of the BsonBinaryReader class. + + A stream (BsonBinary does not own the stream and will not Dispose it). + + + + Initializes a new instance of the BsonBinaryReader class. + + A stream (BsonBinary does not own the stream and will not Dispose it). + A BsonBinaryReaderSettings. + + + + Gets the base stream. + + + The base stream. + + + + + Gets the BSON stream. + + + The BSON stream. + + + + + Closes the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name decoder. + The name of the element. + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a raw BSON array. + + + The raw BSON array. + + + + + Reads a raw BSON document. + + + The raw BSON document. + + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Represents settings for a BsonBinaryReader. + + + + + Initializes a new instance of the BsonBinaryReaderSettings class. + + + + + Gets or sets the default settings for a BsonBinaryReader. + + + + + Gets or sets the Encoding. + + + + + Gets or sets whether to fix occurrences of the old binary subtype on input. + + + + + Gets or sets whether to fix occurrences of the old representation of DateTime.MaxValue on input. + + + + + Gets or sets the max document size. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents the output mode of a JsonWriter. + + + + + Output strict JSON. + + + + + Use a format that can be pasted in to the MongoDB shell. + + + + + Use JavaScript data types for some values. + + + + + Use JavaScript and MongoDB data types for some values. + + + + + Represents a BSON writer to a TextWriter (in JSON format). + + + + + Initializes a new instance of the JsonWriter class. + + A TextWriter. + + + + Initializes a new instance of the JsonWriter class. + + A TextWriter. + Optional JsonWriter settings. + + + + Gets the base TextWriter. + + + The base TextWriter. + + + + + + + + Gets the settings of the writer. + + + + + Closes the writer. + + + + + Flushes any pending data to the output destination. + + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Represents settings for a JsonWriter. + + + + + Initializes a new instance of the JsonWriterSettings class. + + + + + Gets or sets the default JsonWriterSettings. + + + + + Gets or sets the output Encoding. + + + + + Gets or sets whether to indent the output. + + + + + Gets or sets the indent characters. + + + + + Gets or sets the new line characters. + + + + + Gets or sets the output mode. + + + + + Gets or sets the shell version (used with OutputMode Shell). + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents a BSON reader for some external format (see subclasses). + + + + + Initializes a new instance of the BsonReader class. + + The reader settings. + + + + Gets the current BsonType. + + + + + Gets the settings of the reader. + + + + + Gets the current state of the reader. + + + + + Gets the current name. + + + + + Gets whether the BsonReader has been disposed. + + + + + Closes the reader. + + + + + Disposes of any resources used by the reader. + + + + + Gets a bookmark to the reader's current position and state. + + A bookmark. + + + + Gets the current BsonType (calls ReadBsonType if necessary). + + The current BsonType. + + + + Determines whether this reader is at end of file. + + + Whether this reader is at end of file. + + + + + Reads BSON binary data from the reader. + + A BsonBinaryData. + + + + Reads a BSON boolean from the reader. + + A Boolean. + + + + Reads a BsonType from the reader. + + A BsonType. + + + + Reads BSON binary data from the reader. + + A byte array. + + + + Reads a BSON DateTime from the reader. + + The number of milliseconds since the Unix epoch. + + + + + + + Reads a BSON Double from the reader. + + A Double. + + + + Reads the end of a BSON array from the reader. + + + + + Reads the end of a BSON document from the reader. + + + + + Reads a BSON Int32 from the reader. + + An Int32. + + + + Reads a BSON Int64 from the reader. + + An Int64. + + + + Reads a BSON JavaScript from the reader. + + A string. + + + + Reads a BSON JavaScript with scope from the reader (call ReadStartDocument next to read the scope). + + A string. + + + + Reads a BSON MaxKey from the reader. + + + + + Reads a BSON MinKey from the reader. + + + + + Reads the name of an element from the reader. + + The name of the element. + + + + Reads the name of an element from the reader (using the provided name decoder). + + The name decoder. + + The name of the element. + + + + + Reads a BSON null from the reader. + + + + + Reads a BSON ObjectId from the reader. + + An ObjectId. + + + + Reads a raw BSON array. + + The raw BSON array. + + + + Reads a raw BSON document. + + The raw BSON document. + + + + Reads a BSON regular expression from the reader. + + A BsonRegularExpression. + + + + Reads the start of a BSON array. + + + + + Reads the start of a BSON document. + + + + + Reads a BSON string from the reader. + + A String. + + + + Reads a BSON symbol from the reader. + + A string. + + + + Reads a BSON timestamp from the reader. + + The combined timestamp/increment. + + + + Reads a BSON undefined from the reader. + + + + + Returns the reader to previously bookmarked position and state. + + The bookmark. + + + + Skips the name (reader must be positioned on a name). + + + + + Skips the value (reader must be positioned on a value). + + + + + Disposes of any resources used by the reader. + + True if called from Dispose. + + + + Throws an InvalidOperationException when the method called is not valid for the current ContextType. + + The name of the method. + The actual ContextType. + The valid ContextTypes. + + + + Throws an InvalidOperationException when the method called is not valid for the current state. + + The name of the method. + The valid states. + + + + Throws an ObjectDisposedException. + + + + + Verifies the current state and BsonType of the reader. + + The name of the method calling this one. + The required BSON type. + + + + Represents the state of a reader. + + + + + The initial state. + + + + + The reader is positioned at the type of an element or value. + + + + + The reader is positioned at the name of an element. + + + + + The reader is positioned at a value. + + + + + The reader is positioned at a scope document. + + + + + The reader is positioned at the end of a document. + + + + + The reader is positioned at the end of an array. + + + + + The reader has finished reading a document. + + + + + The reader is closed. + + + + + Represents a BSON writer for some external format (see subclasses). + + + + + Initializes a new instance of the BsonWriter class. + + The writer settings. + + + + + + + Gets the current serialization depth. + + + + + Gets the settings of the writer. + + + + + Gets the current state of the writer. + + + + + Gets whether the BsonWriter has been disposed. + + + + + Gets the name of the element being written. + + + + + Closes the writer. + + + + + Disposes of any resources used by the writer. + + + + + Flushes any pending data to the output destination. + + + + + Pops the element name validator. + + The popped element validator. + + + + + + + Pushes the element name validator. + + The validator. + + + + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes the name of an element to the writer. + + The name of the element. + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a raw BSON array. + + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Throws an InvalidOperationException when the method called is not valid for the current ContextType. + + The name of the method. + The actual ContextType. + The valid ContextTypes. + + + + Throws an InvalidOperationException when the method called is not valid for the current state. + + The name of the method. + The valid states. + + + + Represents settings for a BsonBinaryWriter. + + + + + Initializes a new instance of the BsonBinaryWriterSettings class. + + + + + Gets or sets the default BsonBinaryWriter settings. + + + + + Gets or sets the Encoding. + + + + + Gets or sets whether to fix the old binary data subtype on output. + + + + + Gets or sets the max document size. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Represents the state of a BsonWriter. + + + + + The initial state. + + + + + The writer is positioned to write a name. + + + + + The writer is positioned to write a value. + + + + + The writer is positioned to write a scope document (call WriteStartDocument to start writing the scope document). + + + + + The writer is done. + + + + + The writer is closed. + + + + + Represents a BSON writer to a BSON Stream. + + + + + Initializes a new instance of the BsonBinaryWriter class. + + A stream. The BsonBinaryWriter does not own the stream and will not Dispose it. + + + + Initializes a new instance of the BsonBinaryWriter class. + + A stream. The BsonBinaryWriter does not own the stream and will not Dispose it. + The BsonBinaryWriter settings. + + + + Gets the base stream. + + + The base stream. + + + + + Gets the BSON stream. + + + The BSON stream. + + + + + + + + Gets the settings of the writer. + + + + + Closes the writer. Also closes the base stream. + + + + + Flushes any pending data to the output destination. + + + + + Pops the max document size stack, restoring the previous max document size. + + + + + Pushes a new max document size onto the max document size stack. + + The maximum size of the document. + + + + Writes BSON binary data to the writer. + + The binary data. + + + + Writes a BSON Boolean to the writer. + + The Boolean value. + + + + Writes BSON binary data to the writer. + + The bytes. + + + + Writes a BSON DateTime to the writer. + + The number of milliseconds since the Unix epoch. + + + + + + + Writes a BSON Double to the writer. + + The Double value. + + + + Writes the end of a BSON array to the writer. + + + + + Writes the end of a BSON document to the writer. + + + + + Writes a BSON Int32 to the writer. + + The Int32 value. + + + + Writes a BSON Int64 to the writer. + + The Int64 value. + + + + Writes a BSON JavaScript to the writer. + + The JavaScript code. + + + + Writes a BSON JavaScript to the writer (call WriteStartDocument to start writing the scope). + + The JavaScript code. + + + + Writes a BSON MaxKey to the writer. + + + + + Writes a BSON MinKey to the writer. + + + + + Writes a BSON null to the writer. + + + + + Writes a BSON ObjectId to the writer. + + The ObjectId. + + + + Writes a raw BSON array. + + The byte buffer containing the raw BSON array. + + + + Writes a raw BSON document. + + The byte buffer containing the raw BSON document. + + + + Writes a BSON regular expression to the writer. + + A BsonRegularExpression. + + + + Writes the start of a BSON array to the writer. + + + + + Writes the start of a BSON document to the writer. + + + + + Writes a BSON String to the writer. + + The String value. + + + + Writes a BSON Symbol to the writer. + + The symbol. + + + + Writes a BSON timestamp to the writer. + + The combined timestamp/increment value. + + + + Writes a BSON undefined to the writer. + + + + + Disposes of any resources used by the writer. + + True if called from Dispose. + + + + Creates a clone of the context. + + A clone of the context. + + + + Represents a BSON Decimal128 value. + + + + + + Initializes a new instance of the class. + + The value. + + + + + + + + + + Gets the value. + + + + + Converts a Decimal128 to a BsonDecimal128. + + A Decimal128. + A BsonDecimal128. + + + + Compares two BsonDecimal128 values. + + The first BsonDecimal128. + The other BsonDecimal128. + True if the two BsonDecimal128 values are not equal according to ==. + + + + Compares two BsonDecimal128 values. + + The first BsonDecimal128. + The other BsonDecimal128. + True if the two BsonDecimal128 values are equal according to ==. + + + + Creates a new instance of the BsonDecimal128 class. + + An object to be mapped to a BsonDecimal128. + A BsonDecimal128. + + + + Compares this BsonDecimal128 to another BsonDecimal128. + + The other BsonDecimal128. + A 32-bit signed integer that indicates whether this BsonDecimal128 is less than, equal to, or greather than the other. + + + + + + + Compares this BsonDecimal128 to another BsonDecimal128. + + The other BsonDecimal128. + True if the two BsonDecimal128 values are equal. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a Decimal128 value. + + + + + Gets the maximum value. + + + + + Gets the minimum value. + + + + + Represents negative infinity. + + + + + Represents one. + + + + + Represents positive infinity. + + + + + Represents a value that is not a number. + + + + + Represents a value that is not a number and raises errors when used in calculations. + + + + + Represents zero. + + + + + Implements the operator ==. + + The LHS. + The RHS. + + The result of the operator. + + + + + Implements the operator !=. + + The LHS. + The RHS. + + The result of the operator. + + + + + Returns a value indicating whether a specified Decimal128 is greater than another specified Decimal128. + + The first value. + The second value. + + true if x > y; otherwise, false. + + + + + Returns a value indicating whether a specified Decimal128 is greater than or equal to another another specified Decimal128. + + The first value. + The second value. + + true if x >= y; otherwise, false. + + + + + Returns a value indicating whether a specified Decimal128 is less than another specified Decimal128. + + The first value. + The second value. + + true if x < y; otherwise, false. + + + + + Returns a value indicating whether a specified Decimal128 is less than or equal to another another specified Decimal128. + + The first value. + The second value. + + true if x <= y; otherwise, false. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Performs an explicit conversion from to . + + The value to convert. + + The result of the conversion. + + + + + Compares two specified Decimal128 values and returns an integer that indicates whether the first value + is greater than, less than, or equal to the second value. + + The first value. + The second value. + Less than zero if x < y, zero if x == y, and greater than zero if x > y. + + + + Determines whether the specified Decimal128 instances are considered equal. + + The first Decimal128 object to compare. + The second Decimal128 object to compare. + True if the objects are considered equal; otherwise false. If both x and y are null, the method returns true. + + + + Creates a new Decimal128 value from its components. + + if set to true [is negative]. + The exponent. + The signficand high bits. + The significand low bits. + A Decimal128 value. + + + + Creates a new Decimal128 value from the IEEE encoding bits. + + The high bits. + The low bits. + A Decimal128 value. + + + + Gets the exponent of a Decimal128 value. + + The Decimal128 value. + The exponent. + + + + Gets the high bits of the significand of a Decimal128 value. + + The Decimal128 value. + The high bits of the significand. + + + + Gets the high bits of the significand of a Decimal128 value. + + The Decimal128 value. + The high bits of the significand. + + + + Returns a value indicating whether the specified number evaluates to negative or positive infinity. + + A 128-bit decimal. + true if evaluates to negative or positive infinity; otherwise, false. + + + + Returns a value indicating whether the specified number is not a number. + + A 128-bit decimal. + true if is not a number; otherwise, false. + + + + Returns a value indicating whether the specified number is negative. + + A 128-bit decimal. + true if is negative; otherwise, false. + + + + Returns a value indicating whether the specified number evaluates to negative infinity. + + A 128-bit decimal. + true if evaluates to negative infinity; otherwise, false. + + + + Returns a value indicating whether the specified number evaluates to positive infinity. + + A 128-bit decimal. + true if evaluates to positive infinity; otherwise, false. + + + + Returns a value indicating whether the specified number is a quiet not a number. + + A 128-bit decimal. + true if is a quiet not a number; otherwise, false. + + + + Returns a value indicating whether the specified number is a signaled not a number. + + A 128-bit decimal. + true if is a signaled not a number; otherwise, false. + + + + Returns a value indicating whether the specified number is zero. + + A 128-bit decimal. + + true if the specified number is zero; otherwise, false. + + + + + Negates the specified x. + + The x. + The result of multiplying the value by negative one. + + + + Converts the string representation of a number to its equivalent. + + The string representation of the number to convert. + + The equivalent to the number contained in . + + + + + Converts the value of the specified to the equivalent 8-bit unsigned integer. + + The number to convert. + A 8-bit unsigned integer equivalent to . + + + + Converts the value of the specified to the equivalent . + + The number to convert. + A equivalent to . + + + + Converts the value of the specified to the equivalent . + + The number to convert. + A equivalent to . + + + + Converts the value of the specified to the equivalent 16-bit signed integer. + + The number to convert. + A 16-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent 32-bit signed integer. + + The number to convert. + A 32-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent 64-bit signed integer. + + The number to convert. + A 64-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent 8-bit signed integer. + + The number to convert. + A 8-bit signed integer equivalent to . + + + + Converts the value of the specified to the equivalent . + + The number to convert. + A equivalent to . + + + + Converts the value of the specified to the equivalent 16-bit unsigned integer. + + The number to convert. + A 16-bit unsigned integer equivalent to . + + + + Converts the value of the specified to the equivalent 32-bit unsigned integer. + + The number to convert. + A 32-bit unsigned integer equivalent to . + + + + Converts the value of the specified to the equivalent 64-bit unsigned integer. + + The number to convert. + A 64-bit unsigned integer equivalent to . + + + + Converts the string representation of a number to its equivalent. A return value indicates whether the conversion succeeded or failed. + + The string representation of the number to convert. + When this method returns, contains the number that is equivalent to the numeric value contained in , if the conversion succeeded, or is zero if the conversion failed. The conversion fails if the parameter is null, is not a number in a valid format, or represents a number less than the min value or greater than the max value. This parameter is passed uninitialized. + + true if was converted successfully; otherwise, false. + + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + Initializes a new instance of the struct. + + The value. + + + + + + + + + + + + + + + + Gets the high order 64 bits of the binary representation of this instance. + + The high order 64 bits of the binary representation of this instance. + + + + Gets the low order 64 bits of the binary representation of this instance. + + The low order 64 bits of the binary representation of this instance. + + + + + + + Represents the representation to use when converting a Guid to a BSON binary value. + + + + + The representation for Guids is unspecified, so conversion between Guids and Bson binary data is not possible. + + + + + Use the new standard representation for Guids (binary subtype 4 with bytes in network byte order). + + + + + Use the representation used by older versions of the C# driver (including most community provided C# drivers). + + + + + Use the representation used by older versions of the Java driver. + + + + + Use the representation used by older versions of the Python driver. + + + + + A static class containing methods to convert to and from Guids and byte arrays in various byte orders. + + + + + Converts a byte array to a Guid. + + The byte array. + The representation of the Guid in the byte array. + A Guid. + + + + Converts a Guid to a byte array. + + The Guid. + The representation of the Guid in the byte array. + A byte array. + + + + An interface for custom mappers that map an object to a BsonValue. + + + + + Tries to map an object to a BsonValue. + + An object. + The BsonValue. + True if the mapping was successfull. + + + + Represents how duplicate names should be handled. + + + + + Overwrite original value with new value. + + + + + Ignore duplicate name and keep original value. + + + + + Throw an exception. + + + + + Represents options used by the BsonTypeMapper. + + + + + Initializes a new instance of the BsonTypeMapperOptions class. + + + + + Gets or sets the default BsonTypeMapperOptions. + + + + + Gets or sets how duplicate names should be handled. + + + + + Gets whether the BsonTypeMapperOptions is frozen. + + + + + Gets or sets the type that a BsonArray should be mapped to. + + + + + Gets or sets the type that a BsonDocument should be mapped to. + + + + + Gets or sets whether binary sub type OldBinary should be mapped to byte[] the way sub type Binary is. + + + + + Clones the BsonTypeMapperOptions. + + The cloned BsonTypeMapperOptions. + + + + Freezes the BsonTypeMapperOptions. + + The frozen BsonTypeMapperOptions. + + + + Represents a BSON array that is deserialized lazily. + + + + + Initializes a new instance of the class. + + The slice. + slice + LazyBsonArray cannot be used with an IByteBuffer that needs disposing. + + + + Gets the slice. + + + The slice. + + + + + Creates a shallow clone of the array (see also DeepClone). + + A shallow clone of the array. + + + + Creates a deep clone of the array (see also Clone). + + A deep clone of the array. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonArray. + + + The materialized values. + + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Represents a BSON document that is deserialized lazily. + + + + + Initializes a new instance of the class. + + The slice. + slice + LazyBsonDocument cannot be used with an IByteBuffer that needs disposing. + + + + Initializes a new instance of the class. + + The bytes. + + + + Gets the slice. + + + The slice. + + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Creates a deep clone of the document (see also Clone). + + + A deep clone of the document. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonDocument. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Represents a BSON array that is not materialized until you start using it. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + + + Gets the count of array elements. + + + + + Gets a value indicating whether this instance is disposed. + + + true if this instance is disposed; otherwise, false. + + + + + Gets a value indicating whether this instance is materialized. + + + true if this instance is materialized; otherwise, false. + + + + + Gets the array elements as raw values (see BsonValue.RawValue). + + + + + Gets the array elements. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Adds an element to the array. + + The value to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Clears the array. + + + + + Creates a shallow clone of the array (see also DeepClone). + + + A shallow clone of the array. + + + + + Compares the array to another array. + + The other array. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other. + + + + Compares the array to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the array contains a value. + + The value to test for. + True if the array contains the value. + + + + Copies elements from this array to another array. + + The other array. + The zero based index of the other array at which to start copying. + + + + Copies elements from this array to another array as raw values (see BsonValue.RawValue). + + The other array. + The zero based index of the other array at which to start copying. + + + + Creates a deep clone of the array (see also Clone). + + + A deep clone of the array. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets an enumerator that can enumerate the elements of the array. + + An enumerator. + + + + Gets the hash code. + + The hash code. + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The number of elements to search. + The zero based index of the value (or -1 if not found). + + + + Inserts a new value into the array. + + The zero based index at which to insert the new value. + The new value. + + + + Removes the first occurrence of a value from the array. + + The value to remove. + True if the value was removed. + + + + Removes an element from the array. + + The zero based index of the element to remove. + + + + Converts the BsonArray to an array of BsonValues. + + An array of BsonValues. + + + + Converts the BsonArray to a list of BsonValues. + + A list of BsonValues. + + + + Returns a string representation of the array. + + A string representation of the array. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonArray. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Throws if disposed. + + + + + + Represents a BSON document that is not materialized until you start using it. + + + + + Initializes a new instance of the class. + + + + + Gets the number of elements. + + + + + Gets the elements. + + + + + Gets a value indicating whether this instance is disposed. + + + true if this instance is disposed; otherwise, false. + + + + + Gets a value indicating whether this instance is materialized. + + + true if this instance is materialized; otherwise, false. + + + + + Gets the element names. + + + + + Gets the raw values (see BsonValue.RawValue). + + + + + Gets the values. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value to return if the element is not found. + Teh value of the element or a default value if the element is not found. + + + + Gets or sets a value by name. + + The name. + The value. + + + + Adds an element to the document. + + The element to add. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Creates and adds an element to the document. + + The name of the element. + The value of the element. + + The document (so method calls can be chained). + + + + + Creates and adds an element to the document, but only if the condition is true. + + The name of the element. + The value of the element. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Creates and adds an element to the document, but only if the condition is true. + If the condition is false the value factory is not called at all. + + The name of the element. + A delegate called to compute the value of the element if condition is true. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds a list of elements to the document. + + The list of elements. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Clears the document (removes all elements). + + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Compares this document to another document. + + The other document. + + A 32-bit signed integer that indicates whether this document is less than, equal to, or greather than the other. + + + + + Compares the BsonDocument to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonDocument is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the document contains an element with the specified name. + + The name of the element to look for. + + True if the document contains an element with the specified name. + + + + + Tests whether the document contains an element with the specified value. + + The value of the element to look for. + + True if the document contains an element with the specified value. + + + + + Creates a deep clone of the document (see also Clone). + + + A deep clone of the document. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets an element of this document. + + The zero based index of the element. + + The element. + + + + + Gets an element of this document. + + The name of the element. + + A BsonElement. + + + + + Gets an enumerator that can be used to enumerate the elements of this document. + + + An enumerator. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Gets the value of an element. + + The zero based index of the element. + + The value of the element. + + + + + Gets the value of an element. + + The name of the element. + + The value of the element. + + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value returned if the element is not found. + + The value of the element or the default value if the element is not found. + + + + + Inserts a new element at a specified position. + + The position of the new element. + The element. + + + + Merges another document into this one. Existing elements are not overwritten. + + The other document. + + The document (so method calls can be chained). + + + + + Merges another document into this one, specifying whether existing elements are overwritten. + + The other document. + Whether to overwrite existing elements. + + The document (so method calls can be chained). + + + + + Removes an element from this document (if duplicate element names are allowed + then all elements with this name will be removed). + + The name of the element to remove. + + + + Removes an element from this document. + + The zero based index of the element to remove. + + + + Removes an element from this document. + + The element to remove. + + + + Sets the value of an element. + + The zero based index of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets the value of an element (an element will be added if no element with this name is found). + + The name of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets an element of the document (replaces any existing element with the same name or adds a new element if an element with the same name is not found). + + The new element. + + The document. + + + + + Sets an element of the document (replacing the existing element at that position). + + The zero based index of the element to replace. + The new element. + + The document. + + + + + Tries to get an element of this document. + + The name of the element. + The element. + + True if an element with that name was found. + + + + + Tries to get the value of an element of this document. + + The name of the element. + The value of the element. + + True if an element with that name was found. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Materializes the BsonDocument. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Throws if disposed. + + + + + + Represents an immutable BSON array that is represented using only the raw bytes. + + + + + Initializes a new instance of the class. + + The slice. + slice + RawBsonArray cannot be used with an IByteBuffer that needs disposing. + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + + + Gets the count of array elements. + + + + + Gets whether the array is read-only. + + + + + Gets the array elements as raw values (see BsonValue.RawValue). + + + + + Gets the slice. + + + The slice. + + + + + Gets the array elements. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Adds an element to the array. + + The value to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Creates a shallow clone of the array (see also DeepClone). + + A shallow clone of the array. + + + + Clears the array. + + + + + Tests whether the array contains a value. + + The value to test for. + True if the array contains the value. + + + + Copies elements from this array to another array. + + The other array. + The zero based index of the other array at which to start copying. + + + + Copies elements from this array to another array as raw values (see BsonValue.RawValue). + + The other array. + The zero based index of the other array at which to start copying. + + + + Creates a deep clone of the array (see also Clone). + + A deep clone of the array. + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets an enumerator that can enumerate the elements of the array. + + An enumerator. + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The number of elements to search. + The zero based index of the value (or -1 if not found). + + + + Inserts a new value into the array. + + The zero based index at which to insert the new value. + The new value. + + + + Materializes the RawBsonArray into a regular BsonArray. + + The binary reader settings. + A BsonArray. + + + + Removes the first occurrence of a value from the array. + + The value to remove. + True if the value was removed. + + + + Removes an element from the array. + + The zero based index of the element to remove. + + + + Converts the BsonArray to an array of BsonValues. + + An array of BsonValues. + + + + Converts the BsonArray to a list of BsonValues. + + A list of BsonValues. + + + + Returns a string representation of the array. + + A string representation of the array. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Throws if disposed. + + + + + + Represents an immutable BSON document that is represented using only the raw bytes. + + + + + Initializes a new instance of the class. + + The slice. + slice + RawBsonDocument cannot be used with an IByteBuffer that needs disposing. + + + + Initializes a new instance of the class. + + The bytes. + + + + Gets the number of elements. + + + + + Gets the elements. + + + + + Gets the element names. + + + + + Gets the raw values (see BsonValue.RawValue). + + + + + Gets the slice. + + + The slice. + + + + + Gets the values. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value to return if the element is not found. + Teh value of the element or a default value if the element is not found. + + + + Gets or sets a value by name. + + The name. + The value. + + + + Adds an element to the document. + + The element to add. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Creates and adds an element to the document. + + The name of the element. + The value of the element. + + The document (so method calls can be chained). + + + + + Creates and adds an element to the document, but only if the condition is true. + + The name of the element. + The value of the element. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Adds a list of elements to the document. + + The list of elements. + + The document (so method calls can be chained). + + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + + The document (so method calls can be chained). + + + + + Clears the document (removes all elements). + + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Tests whether the document contains an element with the specified name. + + The name of the element to look for. + + True if the document contains an element with the specified name. + + + + + Tests whether the document contains an element with the specified value. + + The value of the element to look for. + + True if the document contains an element with the specified value. + + + + + Creates a deep clone of the document (see also Clone). + + + A deep clone of the document. + + + + + Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. + + + + + Gets an element of this document. + + The zero based index of the element. + + The element. + + + + + Gets an element of this document. + + The name of the element. + + A BsonElement. + + + + + Gets an enumerator that can be used to enumerate the elements of this document. + + + An enumerator. + + + + + Gets the value of an element. + + The zero based index of the element. + + The value of the element. + + + + + Gets the value of an element. + + The name of the element. + + The value of the element. + + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value returned if the element is not found. + + The value of the element or the default value if the element is not found. + + + + + Inserts a new element at a specified position. + + The position of the new element. + The element. + + + + Materializes the RawBsonDocument into a regular BsonDocument. + + The binary reader settings. + A BsonDocument. + + + + Merges another document into this one. Existing elements are not overwritten. + + The other document. + + The document (so method calls can be chained). + + + + + Merges another document into this one, specifying whether existing elements are overwritten. + + The other document. + Whether to overwrite existing elements. + + The document (so method calls can be chained). + + + + + Removes an element from this document (if duplicate element names are allowed + then all elements with this name will be removed). + + The name of the element to remove. + + + + Removes an element from this document. + + The zero based index of the element to remove. + + + + Removes an element from this document. + + The element to remove. + + + + Sets the value of an element. + + The zero based index of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets the value of an element (an element will be added if no element with this name is found). + + The name of the element whose value is to be set. + The new value. + + The document (so method calls can be chained). + + + + + Sets an element of the document (replaces any existing element with the same name or adds a new element if an element with the same name is not found). + + The new element. + + The document. + + + + + Sets an element of the document (replacing the existing element at that position). + + The zero based index of the element to replace. + The new element. + + The document. + + + + + Tries to get an element of this document. + + The name of the element. + The element. + + True if an element with that name was found. + + + + + Tries to get the value of an element of this document. + + The name of the element. + The value of the element. + + True if an element with that name was found. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Throws if disposed. + + RawBsonDocument + + + + Provides serializers based on an attribute. + + + + + + + + Specifies that this constructor should be used for creator-based deserialization. + + + + + Initializes a new instance of the BsonConstructorAttribute class. + + + + + Initializes a new instance of the BsonConstructorAttribute class. + + The names of the members that the creator argument values come from. + + + + Gets the names of the members that the creator arguments values come from. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Specifies serialization options for a DateTime field or property. + + + + + Initializes a new instance of the BsonDateTimeOptionsAttribute class. + + + + + Gets or sets whether the DateTime consists of a Date only. + + + + + Gets or sets the DateTimeKind (Local, Unspecified or Utc). + + + + + Gets or sets the external representation. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Specifies serialization options for a Dictionary field or property. + + + + + Initializes a new instance of the BsonDictionaryOptionsAttribute class. + + + + + Initializes a new instance of the BsonDictionaryOptionsAttribute class. + + The representation to use for the Dictionary. + + + + Gets or sets the external representation. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Indicates that this property or field will be used to hold any extra elements found during deserialization. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies that this factory method should be used for creator-based deserialization. + + + + + Initializes a new instance of the BsonFactoryMethodAttribute class. + + + + + Initializes a new instance of the BsonFactoryMethodAttribute class. + + The names of the members that the creator argument values come from. + + + + Gets the names of the members that the creator arguments values come from. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Indicates whether a field or property equal to the default value should be ignored when serializing this class. + + + + + Initializes a new instance of the BsonIgnoreIfDefaultAttribute class. + + + + + Initializes a new instance of the BsonIgnoreIfDefaultAttribute class. + + Whether a field or property equal to the default value should be ignored when serializing this class. + + + + Gets whether a field or property equal to the default value should be ignored when serializing this class. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies that the class's IdMember should be null. + + + + + Applies the post processing attribute to the class map. + + The class map. + + + + Specifies the external representation and related options for this field or property. + + + + + Initializes a new instance of the BsonRepresentationAttribute class. + + The external representation. + + + + Gets the external representation. + + + + + Gets or sets whether to allow overflow. + + + + + Gets or sets whether to allow truncation. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Abstract base class for serialization options attributes. + + + + + Initializes a new instance of the BsonSerializationOptionsAttribute class. + + + + + Applies a modification to the member map. + + The member map. + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + + Specifies the type of the serializer to use for a class. + + + + + Initializes a new instance of the BsonSerializerAttribute class. + + + + + Initializes a new instance of the BsonSerializerAttribute class. + + The type of the serializer to use for a class. + + + + Gets or sets the type of the serializer to use for a class. + + + + + Applies a modification to the member map. + + The member map. + + + + Creates a serializer for a type based on the serializer type specified by the attribute. + + The type that a serializer should be created for. + A serializer for the type. + + + + Specifies the external representation and related options for this field or property. + + + + + Initializes a new instance of the BsonTimeSpanOptionsAttribute class. + + The external representation. + + + + Initializes a new instance of the BsonTimeSpanOptionsAttribute class. + + The external representation. + The TimeSpanUnits. + + + + Gets the external representation. + + + + + Gets or sets the TimeSpanUnits. + + + + + Reconfigures the specified serializer by applying this attribute to it. + + The serializer. + A reconfigured serializer. + + + + Specifies the default value for a field or property. + + + + + Initializes a new instance of the BsonDefaultValueAttribute class. + + The default value. + + + + Gets the default value. + + + + + Gets or sets whether to serialize the default value. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies the discriminator and related options for a class. + + + + + Initializes a new instance of the BsonDiscriminatorAttribute class. + + + + + Initializes a new instance of the BsonDiscriminatorAttribute class. + + The discriminator. + + + + Gets the discriminator. + + + + + Gets or sets whether the discriminator is required. + + + + + Gets or sets whether this is a root class. + + + + + Applies a modification to the class map. + + The class map. + + + + Specifies the element name and related options for a field or property. + + + + + Initializes a new instance of the BsonElementAttribute class. + + + + + Initializes a new instance of the BsonElementAttribute class. + + The name of the element. + + + + Gets the element name. + + + + + Gets the element serialization order. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies that this is the Id field or property. + + + + + Initializes a new instance of the BsonIdAttribute class. + + + + + Gets or sets the Id generator for the Id. + + + + + Gets or sets the Id element serialization order. + + + + + Applies a modification to the member map. + + The member map. + + + + Indicates that this field or property should be ignored when this class is serialized. + + + + + Specifies whether extra elements should be ignored when this class is deserialized. + + + + + Initializes a new instance of the BsonIgnoreExtraElementsAttribute class. + + + + + Initializes a new instance of the BsonIgnoreExtraElementsAttribute class. + + Whether extra elements should be ignored when this class is deserialized. + + + + Gets whether extra elements should be ignored when this class is deserialized. + + + + + Gets whether extra elements should also be ignored when any class derived from this one is deserialized. + + + + + Applies a modification to the class map. + + The class map. + + + + Indicates whether a field or property equal to null should be ignored when serializing this class. + + + + + Initializes a new instance of the BsonIgnoreIfNullAttribute class. + + + + + Initializes a new instance of the BsonIgnoreIfNullAttribute class. + + Whether a field or property equal to null should be ignored when serializing this class. + + + + Gets whether a field or property equal to null should be ignored when serializing this class. + + + + + Applies a modification to the member map. + + The member map. + + + + Specifies the known types for this class (the derived classes). + + + + + Initializes a new instance of the BsonKnownTypesAttribute class. + + One or more known types. + + + + Initializes a new instance of the BsonKnownTypesAttribute class. + + A known types. + + + + Gets a list of the known types. + + + + + Applies a modification to the class map. + + The class map. + + + + Indicates that a field or property is required. + + + + + Applies a modification to the member map. + + The member map. + + + + Indicates the usage restrictions for the attribute. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether the attribute this attribute applies to is allowed to be applied + to more than one member. + + + + + Represents an attribute used to modify a member map. + + + + + Applies the attribute to the member map. + + The member map. + + + + Represents an attribute used to modify a class map. + + + + + Applies the attribute to the class map. + + The class map. + + + + Represents an attribute used to post process a class map. + + + + + Applies the post processing attribute to the class map. + + The class map. + + + + Represents an attribute used to modify a creator map. + + + + + Applies the attribute to the creator map. + + The creator map. + + + + Represents the class map serialization provider. + + + + + + + + Represents a mapping to a delegate and its arguments. + + + + + Initializes a new instance of the BsonCreatorMap class. + + The class map. + The member info (null if none). + The delegate. + + + + Gets the arguments. + + + + + Gets the class map that this creator map belongs to. + + + + + Gets the delegeate + + + + + Gets the element names. + + + + + Gets the member info (null if none). + + + + + Freezes the creator map. + + + + + Gets whether there is a default value for a missing element. + + The element name. + True if there is a default value for element name; otherwise, false. + + + + Sets the arguments for the creator map. + + The arguments. + The creator map. + + + + Sets the arguments for the creator map. + + The argument names. + The creator map. + + + + Represents args common to all serializers. + + + + + Gets or sets the nominal type. + + + The nominal type. + + + + + Represents all the contextual information needed by a serializer to deserialize a value. + + + + + Gets a value indicating whether to allow duplicate element names. + + + true if duplicate element names shoud be allowed; otherwise, false. + + + + + Gets the dynamic array serializer. + + + The dynamic array serializer. + + + + + Gets the dynamic document serializer. + + + The dynamic document serializer. + + + + + Gets the reader. + + + The reader. + + + + + Creates a root context. + + The reader. + The configurator. + + A root context. + + + + + Creates a new context with some values changed. + + The configurator. + + A new context. + + + + + Represents a builder for a BsonDeserializationContext. + + + + + Gets or sets a value indicating whether to allow duplicate element names. + + + true if duplicate element names should be allowed; otherwise, false. + + + + + Gets or sets the dynamic array serializer. + + + The dynamic array serializer. + + + + + Gets or sets the dynamic document serializer. + + + The dynamic document serializer. + + + + + Gets the reader. + + + The reader. + + + + + Builds the BsonDeserializationContext instance. + + A BsonDeserializationContext. + + + + A class backed by a BsonDocument. + + + + + Initializes a new instance of the class. + + The serializer. + + + + Initializes a new instance of the class. + + The backing document. + The serializer. + + + + Gets the backing document. + + + + + Gets the value from the backing document. + + The type of the value. + The member name. + The value. + + + + Gets the value from the backing document. + + The type of the value. + The member name. + The default value. + The value. + + + + Sets the value in the backing document. + + The member name. + The value. + + + + Provides serializers for BsonValue and its derivations. + + + + + + + + Represents args common to all serializers. + + + + + Initializes a new instance of the struct. + + The nominal type. + Whether to serialize as the nominal type. + Whether to serialize the id first. + + + + Gets or sets the nominal type. + + + The nominal type. + + + + + Gets or sets a value indicating whether to serialize the value as if it were an instance of the nominal type. + + + + + Gets or sets a value indicating whether to serialize the id first. + + + + + Represents all the contextual information needed by a serializer to serialize a value. + + + + + Gets a function that, when executed, will indicate whether the type + is a dynamic type. + + + + + Gets the writer. + + + The writer. + + + + + Creates a root context. + + The writer. + The serialization context configurator. + + A root context. + + + + + Creates a new context with some values changed. + + The serialization context configurator. + + A new context. + + + + + Represents a builder for a BsonSerializationContext. + + + + + Gets or sets the function used to determine if a type is a dynamic type. + + + + + Gets the writer. + + + The writer. + + + + + Builds the BsonSerializationContext instance. + + A BsonSerializationContext. + + + + Provides serializers for collections. + + + + + + + + Convention pack for applying attributes. + + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + + + Gets the conventions. + + + + + A convention that sets the element name the same as the member name with the first character lower cased. + + + + + Applies a modification to the member map. + + The member map. + + + + A convention that uses the names of the creator parameters to find the matching members. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Base class for a convention. + + + + + Initializes a new instance of the ConventionBase class. + + + + + Initializes a new instance of the ConventionBase class. + + The name of the convention. + + + + Gets the name of the convention. + + + + + A mutable pack of conventions. + + + + + Initializes a new instance of the class. + + + + + Gets the conventions. + + + + + Adds the specified convention. + + The convention. + + + + + Adds a class map convention created using the specified action upon a class map. + + The name of the convention. + The action the convention should take upon the class map. + + + + Adds a member map convention created using the specified action upon a member map. + + The name of the convention. + The action the convention should take upon the member map. + + + + Adds a post processing convention created using the specified action upon a class map. + + The name of the convention. + The action the convention should take upon the class map. + + + + Adds a range of conventions. + + The conventions. + + + + + Appends the conventions in another pack to the end of this pack. + + The other pack. + + + + Gets an enumerator for the conventions. + + An enumerator. + + + + Inserts the convention after another convention specified by the name. + + The name. + The convention. + + + + Inserts the convention before another convention specified by the name. + + The name. + The convention. + + + + Removes the named convention. + + The name of the convention. + + + + Represents a registry of conventions. + + + + + Looks up the effective set of conventions that apply to a type. + + The type. + The conventions for that type. + + + + Registers the conventions. + + The name. + The conventions. + The filter. + + + + Removes the conventions specified by the given name. + + The name. + Removing a convention allows the removal of the special __defaults__ conventions + and the __attributes__ conventions for those who want to completely customize the + experience. + + + + Runs the conventions against a BsonClassMap and its BsonMemberMaps. + + + + + Initializes a new instance of the class. + + The conventions. + + + + Applies a modification to the class map. + + The class map. + + + + Convention pack of defaults. + + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + + + Gets the conventions. + + + + + A class map convention that wraps a delegate. + + + + + Initializes a new instance of the class. + + The name. + The delegate. + + + + Applies a modification to the class map. + + The class map. + + + + A member map convention that wraps a delegate. + + + + + Initializes a new instance of the class. + + The name. + The delegate. + + + + Applies a modification to the member map. + + The member map. + + + + A post processing convention that wraps a delegate. + + + + + Initializes a new instance of the class. + + The name. + The delegate. + + + + Applies a post processing modification to the class map. + + The class map. + + + + Represents a discriminator convention where the discriminator is an array of all the discriminators provided by the class maps of the root class down to the actual type. + + + + + Initializes a new instance of the HierarchicalDiscriminatorConvention class. + + The element name. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + Represents a convention that applies to a BsonClassMap. + + + + + Applies a modification to the class map. + + The class map. + + + + Represents a convention that applies to a BsonCreatorMap. + + + + + Applies a modification to the creator map. + + The creator map. + + + + Represents a convention. + + + + + Gets the name of the convention. + + + + + Represents a grouping of conventions. + + + + + Gets the conventions. + + + + + A convention that sets whether to ignore extra elements encountered during deserialization. + + + + + Initializes a new instance of the class. + + Whether to ignore extra elements encountered during deserialization. + + + + Applies a modification to the class map. + + The class map. + + + + A convention that sets whether to ignore default values during serialization. + + + + + Initializes a new instance of the class. + + Whether to ignore default values during serialization. + + + + Applies a modification to the member map. + + The member map. + + + + A convention that sets whether to ignore nulls during serialization. + + + + + Initializes a new instance of the class. + + Whether to ignore nulls during serialization. + + + + Applies a modification to the member map. + + The member map. + + + + Represents a convention that applies to a BsonMemberMap. + + + + + Applies a modification to the member map. + + The member map. + + + + Represents a post processing convention that applies to a BsonClassMap. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + A convention that looks up an id generator for the id member. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + A convention that sets the default value for members of a given type. + + + + + Initializes a new instance of the class. + + The type of the member. + The default value for members of this type. + + + + Applies a modification to the member map. + + The member map. + + + + A convention that sets the element name the same as the member name. + + + + + Applies a modification to the member map. + + The member map. + + + + A convention that finds the extra elements member by name (and that is also of type or ). + + + + + Initializes a new instance of the NamedExtraElementsMemberConvention class. + + The name of the extra elements member. + + + + Initializes a new instance of the class. + + The names. + + + + Initializes a new instance of the class. + + The names. + The member types. + + + + Initializes a new instance of the class. + + The names. + The binding flags. + + + + Initializes a new instance of the class. + + The names. + The member types. + The binding flags. + + + + + Applies a modification to the class map. + + The class map. + + + + A convention that finds the id member by name. + + + + + Initializes a new instance of the class. + + The names. + + + + Initializes a new instance of the class. + + The names. + + + + Initializes a new instance of the class. + + The names. + The member types. + + + + Initializes a new instance of the class. + + The names. + The binding flags. + + + + Initializes a new instance of the class. + + The names. + The member types. + The binding flags. + + + + + Applies a modification to the class map. + + The class map. + + + + Maps a fully immutable type. This will include anonymous types. + + + + + + + + A convention that sets a class's IdMember to null. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + Represents the object discriminator convention. + + + + + Initializes a new instance of the ObjectDiscriminatorConvention class. + + The element name. + + + + Gets an instance of the ObjectDiscriminatorConvention. + + + + + Gets the discriminator element name. + + + + + Gets the actual type of an object by reading the discriminator from a BsonReader. + + The reader. + The nominal type. + The actual type. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A convention that finds readable and writeable members and adds them to the class map. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The member types. + + + + Initializes a new instance of the class. + + The binding flags. + + + + Initializes a new instance of the class. + + The member types. + The binding flags. + + + + Applies a modification to the class map. + + The class map. + + + + A convention that resets a class map (resetting any changes that earlier conventions may have applied). + + + + + Applies a modification to the class map. + + The class map. + + + + A convention that resets class members (resetting any changes that earlier conventions may have applied). + + + + + Applies a modification to the member map. + + The member map. + + + + Represents a discriminator convention where the discriminator is provided by the class map of the actual type. + + + + + Initializes a new instance of the ScalarDiscriminatorConvention class. + + The element name. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A convention that allows you to set the Enum serialization representation + + + + + Initializes a new instance of the class. + + The serialization representation. 0 is used to detect representation + from the enum itself. + + + + Gets the representation. + + + + + Applies a modification to the member map. + + The member map. + + + + Represents the standard discriminator conventions (see ScalarDiscriminatorConvention and HierarchicalDiscriminatorConvention). + + + + + Initializes a new instance of the StandardDiscriminatorConvention class. + + The element name. + + + + Gets an instance of the ScalarDiscriminatorConvention. + + + + + Gets an instance of the HierarchicalDiscriminatorConvention. + + + + + Gets the discriminator element name. + + + + + Gets the actual type of an object by reading the discriminator from a BsonReader. + + The reader. + The nominal type. + The actual type. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A convention that sets the id generator for a string member with a BSON representation of ObjectId. + + + + + Applies a post processing modification to the class map. + + The class map. + + + + Represents a discriminator convention. + + + + + Gets the discriminator element name. + + + + + Gets the actual type of an object by reading the discriminator from a BsonReader. + + The reader. + The nominal type. + The actual type. + + + + Gets the discriminator value for an actual type. + + The nominal type. + The actual type. + The discriminator value. + + + + A helper class used to create and compile delegates for creator maps. + + + + + Creates and compiles a delegate that calls a constructor. + + The constructor. + A delegate that calls the constructor. + + + + Creates and compiles a delegate from a lambda expression. + + The type of the class. + The lambda expression. + The arguments for the delegate's parameters. + A delegate. + + + + Creates and compiles a delegate that calls a factory method. + + the method. + A delegate that calls the factory method. + + + + Visits a MemberExpression. + + The MemberExpression. + The MemberExpression (possibly modified). + + + + Visits a ParameterExpression. + + The ParameterExpression. + The ParameterExpression (possibly modified). + + + + An abstract base class for an Expression visitor. + + + + + Initializes a new instance of the ExpressionVisitor class. + + + + + Visits an Expression. + + The Expression. + The Expression (posibly modified). + + + + Visits an Expression list. + + The Expression list. + The Expression list (possibly modified). + + + + Visits a BinaryExpression. + + The BinaryExpression. + The BinaryExpression (possibly modified). + + + + Visits a ConditionalExpression. + + The ConditionalExpression. + The ConditionalExpression (possibly modified). + + + + Visits a ConstantExpression. + + The ConstantExpression. + The ConstantExpression (possibly modified). + + + + Visits an ElementInit. + + The ElementInit. + The ElementInit (possibly modified). + + + + Visits an ElementInit list. + + The ElementInit list. + The ElementInit list (possibly modified). + + + + Visits an InvocationExpression. + + The InvocationExpression. + The InvocationExpression (possibly modified). + + + + Visits a LambdaExpression. + + The LambdaExpression. + The LambdaExpression (possibly modified). + + + + Visits a ListInitExpression. + + The ListInitExpression. + The ListInitExpression (possibly modified). + + + + Visits a MemberExpression. + + The MemberExpression. + The MemberExpression (possibly modified). + + + + Visits a MemberAssignment. + + The MemberAssignment. + The MemberAssignment (possibly modified). + + + + Visits a MemberBinding. + + The MemberBinding. + The MemberBinding (possibly modified). + + + + Visits a MemberBinding list. + + The MemberBinding list. + The MemberBinding list (possibly modified). + + + + Visits a MemberInitExpression. + + The MemberInitExpression. + The MemberInitExpression (possibly modified). + + + + Visits a MemberListBinding. + + The MemberListBinding. + The MemberListBinding (possibly modified). + + + + Visits a MemberMemberBinding. + + The MemberMemberBinding. + The MemberMemberBinding (possibly modified). + + + + Visits a MethodCallExpression. + + The MethodCallExpression. + The MethodCallExpression (possibly modified). + + + + Visits a NewExpression. + + The NewExpression. + The NewExpression (possibly modified). + + + + Visits a NewArrayExpression. + + The NewArrayExpression. + The NewArrayExpression (possibly modified). + + + + Visits a ParameterExpression. + + The ParameterExpression. + The ParameterExpression (possibly modified). + + + + Visits a TypeBinaryExpression. + + The TypeBinaryExpression. + The TypeBinaryExpression (possibly modified). + + + + Visits a UnaryExpression. + + The UnaryExpression. + The UnaryExpression (possibly modified). + + + + Default, global implementation of an . + + + + + Initializes a new instance of the class. + + + + + Gets the serializer for the specified . + + The type. + + The serializer. + + + + + Gets the serializer for the specified . + + + + The serializer. + + + + + Registers the serializer. + + The type. + The serializer. + + + + Registers the serialization provider. This behaves like a stack, so the + last provider registered is the first provider consulted. + + The serialization provider. + + + + Represents a dictionary serializer that can be used in LINQ queries. + + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + An interface implemented by a polymorphic serializer. + + + + + Gets a value indicating whether this serializer's discriminator is compatible with the object serializer. + + + true if this serializer's discriminator is compatible with the object serializer; otherwise, false. + + + + + A serializer registry. + + + + + Gets the serializer for the specified . + + The type. + The serializer. + + + + Gets the serializer for the specified . + + + The serializer. + + + + Represents a serializer that has a child serializer that configuration attributes can be forwarded to. + + + + + Gets the child serializer. + + + The child serializer. + + + + + Returns a serializer that has been reconfigured with the specified child serializer. + + The child serializer. + The reconfigured serializer. + + + + A GUID generator that generates GUIDs in ascending order. To enable + an index to make use of the ascending nature make sure to use + GuidRepresentation.Standard + as the storage representation. + Internally the GUID is of the form + 8 bytes: Ticks from DateTime.UtcNow.Ticks + 3 bytes: hash of machine name + 2 bytes: low order bytes of process Id + 3 bytes: increment + + + + + Gets an instance of AscendingGuidGenerator. + + + + + Generates an ascending Guid for a document. Consecutive invocations + should generate Guids that are ascending from a MongoDB perspective + + The container of the document (will be a + MongoCollection when called from the driver). + The document it was generated for. + A Guid. + + + + Generates a Guid for a document. Note - this is purely used for + unit testing + + The time portion of the Guid + A 5 byte array with the first 3 bytes + representing a machine id and the next 2 representing a process + id + The increment portion of the Guid. Used + to distinguish between 2 Guids that have the timestamp. Note + only the least significant 3 bytes are used. + A Guid. + + + + Tests whether an id is empty. + + The id to test. + True if the Id is empty. False otherwise + + + + Gets the current process id. This method exists because of how + CAS operates on the call stack, checking for permissions before + executing the method. Hence, if we inlined this call, the calling + method would not execute before throwing an exception requiring the + try/catch at an even higher level that we don't necessarily control. + + + + + Represents an Id generator for Guids stored in BsonBinaryData values. + + + + + Initializes a new instance of the BsonBinaryDataGuidGenerator class. + + The GuidRepresentation to use when generating new Id values. + + + + Gets an instance of BsonBinaryDataGuidGenerator for CSharpLegacy GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for JavaLegacy GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for PythonLegacy GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for Standard GuidRepresentation. + + + + + Gets an instance of BsonBinaryDataGuidGenerator for Unspecifed GuidRepresentation. + + + + + Gets the instance of BsonBinaryDataGuidGenerator for a GuidRepresentation. + + The GuidRepresentation. + The instance of BsonBinaryDataGuidGenerator for a GuidRepresentation. + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for BsonObjectIds. + + + + + Initializes a new instance of the BsonObjectIdGenerator class. + + + + + Gets an instance of ObjectIdGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for Guids using the COMB algorithm. + + + + + Initializes a new instance of the CombGuidGenerator class. + + + + + Gets an instance of CombGuidGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Create a new CombGuid from a given Guid and timestamp. + + The base Guid. + The timestamp. + A new CombGuid created by combining the base Guid with the timestamp. + + + + Represents an Id generator for Guids. + + + + + Initializes a new instance of the GuidGenerator class. + + + + + Gets an instance of GuidGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator that only checks that the Id is not null. + + + + + Initializes a new instance of the NullIdChecker class. + + + + + Gets an instance of NullIdChecker. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for ObjectIds. + + + + + Initializes a new instance of the ObjectIdGenerator class. + + + + + Gets an instance of ObjectIdGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator for ObjectIds represented internally as strings. + + + + + Initializes a new instance of the StringObjectIdGenerator class. + + + + + Gets an instance of StringObjectIdGenerator. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents an Id generator that only checks that the Id is not all zeros. + + The type of the Id. + + + + Initializes a new instance of the ZeroIdChecker class. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + Represents a serializer that has a DictionaryRepresentation property. + + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Represents a serializer that has a DictionaryRepresentation property. + + The type of the serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Represents a serializer that has a Representation property. + + + + + Gets the representation. + + + The representation. + + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer that has a Representation property. + + The type of the serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer that has a representation converter. + + + + + Gets the converter. + + + The converter. + + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Represents a serializer that has a representation converter. + + The type of the serializer. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Represents the representation to use for dictionaries. + + + + + Represent the dictionary as a Document. + + + + + Represent the dictionary as an array of arrays. + + + + + Represent the dictionary as an array of documents. + + + + + Represents the external representation of a field or property. + + + + + Initializes a new instance of the RepresentationConverter class. + + Whether to allow overflow. + Whether to allow truncation. + + + + Gets whether to allow overflow. + + + + + Gets whether to allow truncation. + + + + + Converts a Decimal128 to a Decimal. + + A Decimal128. + A Decimal. + + + + Converts a Double to a Decimal. + + A Double. + A Decimal. + + + + Converts an Int32 to a Decimal. + + An Int32. + A Decimal. + + + + Converts an Int64 to a Decimal. + + An Int64. + A Decimal. + + + + Converts a decimal to a Decimal128. + + A decimal. + A Decimal128. + + + + Converts a Double to a Decimal128. + + A Double. + A Decimal128. + + + + Converts an Int32 to a Decimal128. + + An Int32. + A Decimal128. + + + + Converts an Int64 to a Decimal128. + + An Int64. + A Decimal128. + + + + Converts a UInt64 to a Decimal128. + + A UInt64. + A Decimal128. + + + + Converts a Decimal to a Double. + + A Decimal. + A Double. + + + + Converts a Decimal128 to a Double. + + A Decimal. + A Double. + + + + Converts a Double to a Double. + + A Double. + A Double. + + + + Converts a Single to a Double. + + A Single. + A Double. + + + + Converts an Int32 to a Double. + + An Int32. + A Double. + + + + Converts an Int64 to a Double. + + An Int64. + A Double. + + + + Converts an Int16 to a Double. + + An Int16. + A Double. + + + + Converts a UInt32 to a Double. + + A UInt32. + A Double. + + + + Converts a UInt64 to a Double. + + A UInt64. + A Double. + + + + Converts a UInt16 to a Double. + + A UInt16. + A Double. + + + + Converts a Decimal128 to an Int16. + + A Decimal128. + An Int16. + + + + Converts a Double to an Int16. + + A Double. + An Int16. + + + + Converts an Int32 to an Int16. + + An Int32. + An Int16. + + + + Converts an Int64 to an Int16. + + An Int64. + An Int16. + + + + Converts a Decimal to an Int32. + + A Decimal. + An Int32. + + + + Converts a Decimal128 to an Int32. + + A Decimal128. + An Int32. + + + + Converts a Double to an Int32. + + A Double. + An Int32. + + + + Converts a Single to an Int32. + + A Single. + An Int32. + + + + Converts an Int32 to an Int32. + + An Int32. + An Int32. + + + + Converts an Int64 to an Int32. + + An Int64. + An Int32. + + + + Converts an Int16 to an Int32. + + An Int16. + An Int32. + + + + Converts a UInt32 to an Int32. + + A UInt32. + An Int32. + + + + Converts a UInt64 to an Int32. + + A UInt64. + An Int32. + + + + Converts a UInt16 to an Int32. + + A UInt16. + An Int32. + + + + Converts a Decimal to an Int64. + + A Decimal. + An Int64. + + + + Converts a Decimal128 to an Int64. + + A Decimal128. + An Int64. + + + + Converts a Double to an Int64. + + A Double. + An Int64. + + + + Converts a Single to an Int64. + + A Single. + An Int64. + + + + Converts an Int32 to an Int64. + + An Int32. + An Int64. + + + + Converts an Int64 to an Int64. + + An Int64. + An Int64. + + + + Converts an Int16 to an Int64. + + An Int16. + An Int64. + + + + Converts a UInt32 to an Int64. + + A UInt32. + An Int64. + + + + Converts a UInt64 to an Int64. + + A UInt64. + An Int64. + + + + Converts a UInt16 to an Int64. + + A UInt16. + An Int64. + + + + Converts a Decimal128 to a Single. + + A Decimal128. + A Single. + + + + Converts a Double to a Single. + + A Double. + A Single. + + + + Converts an Int32 to a Single. + + An Int32. + A Single. + + + + Converts an Int64 to a Single. + + An Int64. + A Single. + + + + Converts a Decimal128 to a UInt16. + + A Decimal128. + A UInt16. + + + + Converts a Double to a UInt16. + + A Double. + A UInt16. + + + + Converts an Int32 to a UInt16. + + An Int32. + A UInt16. + + + + Converts an Int64 to a UInt16. + + An Int64. + A UInt16. + + + + Converts a Decimal128 to a UInt32. + + A Decimal128. + A UInt32. + + + + Converts a Double to a UInt32. + + A Double. + A UInt32. + + + + Converts an Int32 to a UInt32. + + An Int32. + A UInt32. + + + + Converts an Int64 to a UInt32. + + An Int64. + A UInt32. + + + + Converts a Decimal128 to a UInt64. + + A Decimal128. + A UInt64. + + + + Converts a Double to a UInt64. + + A Double. + A UInt64. + + + + Converts an Int32 to a UInt64. + + An Int32. + A UInt64. + + + + Converts an Int64 to a UInt64. + + An Int64. + A UInt64. + + + + Represents the units a TimeSpan is serialized in. + + + + + Use ticks as the units. + + + + + Use days as the units. + + + + + Use hours as the units. + + + + + Use minutes as the units. + + + + + Use seconds as the units. + + + + + Use milliseconds as the units. + + + + + Use microseconds as the units. + + + + + Use nanoseconds as the units. + + + + + Provides a serializer for interfaces. + + + + + + + + Provides serializers for primitive types. + + + + + + + + Base class for serialization providers. + + + + + + + + + + + Creates the serializer from a serializer type definition and type arguments. + + The serializer type definition. + The type arguments. + A serializer. + + + + Creates the serializer from a serializer type definition and type arguments. + + The serializer type definition. + The type arguments. + The serializer registry. + + A serializer. + + + + + Creates the serializer. + + The serializer type. + A serializer. + + + + Creates the serializer. + + The serializer type. + The serializer registry. + + A serializer. + + + + + Represents a serializer for an abstract class. + + The type of the class. + + + + Represents a serializer for BitArrays. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Booleans. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for BsonArrays. + + + + + Initializes a new instance of the BsonArraySerializer class. + + + + + Gets an instance of the BsonArraySerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonBinaryDatas. + + + + + Initializes a new instance of the BsonBinaryDataSerializer class. + + + + + Gets an instance of the BsonBinaryDataSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonDecimal128s. + + + + + Initializes a new instance of the BsonBooleanSerializer class. + + + + + Gets an instance of the BsonBooleanSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonBooleans. + + + + + Initializes a new instance of the BsonBooleanSerializer class. + + + + + Gets an instance of the BsonBooleanSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for Decimal128s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for a class that implements . + + The type of the dictionary. + The type of the key. + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation and key value serializers. + + The dictionary representation. + The key serializer. + The value serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified key serializer. + + The key serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified value serializer. + + The value serializer. + The reconfigured serializer. + + + + + + + + + + A serializer that serializes a document and appends elements to the end of it. + + The type of the document. + + + + + Initializes a new instance of the class. + + The document serializer. + The elements to append. + The writer settings configurator. + + + + + + + + + + + + + Represents a serializer for a BsonDocument with some parts raw. + + + + + Initializes a new instance of the class. + + The name. + The raw serializer. + + + + + + + Wraps a serializer and projects using a function. + + The type of from. + The type of to. + + + + Initializes a new instance of the class. + + From serializer. + The projector. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Represents a helper for serializers. + + + + + Initializes a new instance of the class. + + The members. + + + + Deserializes the members. + + The deserialization context. + The member handler. + The found member flags. + + + + Represents information about a member. + + + + + Initializes a new instance of the class. + + The name of the element. + The flag. + Whether the member is optional. + + + + Gets the flag. + + + The flag. + + + + + Gets the name of the element. + + + The name of the element. + + + + + Gets a value indicating whether this member is optional. + + Whether this member is optional. + + + + Represents a serializer that serializes values as a discriminator/value pair. + + The type of the value. + + + + Initializes a new instance of the class. + + The discriminator convention. + The wrapped serializer. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Determines whether the reader is positioned at a discriminated wrapper. + + The context. + True if the reader is positioned at a discriminated wrapper. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents an abstract base class for serializers. + + The type of the value. + + + + Gets the type of the values. + + + The type of the values. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Creates an exception to throw when a type cannot be deserialized. + + An exception. + + + + Creates an exception to throw when a type cannot be deserialized. + + An exception. + + + + Creates an exception to throw when a type cannot be deserialized from a BsonType. + + The BSON type. + An exception. + + + + Ensures that the BsonType equals the expected type. + + The reader. + The expected type. + + + + Represents an abstract base class for sealed class serializers. + + The type of the value. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value of type {TValue}. + + The serialization context. + The serialization args. + The value. + + + + Represents an abstract base class for struct serializers. + + The type of the value. + + + + Represents a serializer for a BsonValue that can round trip C# null. + + The type of the BsonValue. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for a BsonValue that can round trip C# null and implements IBsonArraySerializer and IBsonDocumentSerializer. + + The type of the bson value. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + The serialization info for the items. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Represents a serializer for a BsonValue that can round trip C# null and implements IBsonArraySerializer. + + The type of the bson value. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Represents a serializer for a BsonValue that can round trip C# null and implements IBsonDocumentSerializer. + + The type of the bson value. + + + + Initializes a new instance of the class. + + The wrapped serializer. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Represents a serializer for BsonDateTimes. + + + + + Initializes a new instance of the BsonDateTimeSerializer class. + + + + + Gets an instance of the BsonDateTimeSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonDocuments. + + + + + Initializes a new instance of the BsonDocumentSerializer class. + + + + + Gets an instance of the BsonDocumentSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Gets the document Id. + + The document. + The Id. + The nominal type of the Id. + The IdGenerator for the Id type. + True if the document has an Id. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Sets the document Id. + + The document. + The Id. + + + + Represents a serializer for BsonDocumentWrappers. + + + + + Initializes a new instance of the BsonDocumentWrapperSerializer class. + + + + + Gets an instance of the BsonDocumentWrapperSerializer class. + + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + An object. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonDoubles. + + + + + Initializes a new instance of the BsonDoubleSerializer class. + + + + + Gets an instance of the BsonDoubleSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonInt32s. + + + + + Initializes a new instance of the BsonInt32Serializer class. + + + + + Gets an instance of the BsonInt32Serializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonInt64s. + + + + + Initializes a new instance of the BsonInt64Serializer class. + + + + + Gets an instance of the BsonInt64Serializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonJavaScripts. + + + + + Initializes a new instance of the BsonJavaScriptSerializer class. + + + + + Gets an instance of the BsonJavaScriptSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonJavaScriptWithScopes. + + + + + Initializes a new instance of the BsonJavaScriptWithScopeSerializer class. + + + + + Gets an instance of the BsonJavaScriptWithScopeSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonMaxKeys. + + + + + Initializes a new instance of the BsonMaxKeySerializer class. + + + + + Gets an instance of the BsonMaxKeySerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonMinKeys. + + + + + Initializes a new instance of the BsonMinKeySerializer class. + + + + + Gets an instance of the BsonMinKeySerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonNulls. + + + + + Initializes a new instance of the BsonNullSerializer class. + + + + + Gets an instance of the BsonNullSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonObjectIds. + + + + + Initializes a new instance of the BsonObjectIdSerializer class. + + + + + Gets an instance of the BsonObjectIdSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonRegularExpressions. + + + + + Initializes a new instance of the BsonRegularExpressionSerializer class. + + + + + Gets an instance of the BsonRegularExpressionSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonStrings. + + + + + Initializes a new instance of the BsonStringSerializer class. + + + + + Gets an instance of the BsonStringSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonSymbols. + + + + + Initializes a new instance of the BsonSymbolSerializer class. + + + + + Gets an instance of the BsonSymbolSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonTimestamps. + + + + + Initializes a new instance of the BsonTimestampSerializer class. + + + + + Gets an instance of the BsonTimestampSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonUndefineds. + + + + + Initializes a new instance of the BsonUndefinedSerializer class. + + + + + Gets an instance of the BsonUndefinedSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for BsonValues. + + + + + Initializes a new instance of the BsonValueSerializer class. + + + + + Gets an instance of the BsonValueSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a base class for BsonValue serializers. + + The type of the BsonValue. + + + + Initializes a new instance of the class. + + The Bson type. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for ByteArrays. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Bytes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Chars. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for CultureInfos. + + + + + Initializes a new instance of the CultureInfoSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for DateTimeOffsets. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for DateTimes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + if set to true [date only]. + + + + Initializes a new instance of the class. + + if set to true [date only]. + The representation. + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The kind. + + + + Initializes a new instance of the class. + + The kind. + The representation. + + + + Gets an instance of DateTimeSerializer with DateOnly=true. + + + + + Gets an instance of DateTimeSerializer with Kind=Local. + + + + + Gets an instance of DateTimeSerializer with Kind=Utc. + + + + + Gets whether this DateTime consists of a Date only. + + + + + Gets the DateTimeKind (Local, Unspecified or Utc). + + + + + Gets the external representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified dateOnly value. + + if set to true the values will be required to be Date's only (zero time component). + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified dateOnly value and representation. + + if set to true the values will be required to be Date's only (zero time component). + The representation. + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified DateTimeKind value. + + The DateTimeKind. + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified DateTimeKind value and representation. + + The DateTimeKind. + The representation. + + The reconfigured serializer. + + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Decimals. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for a class that implements IDictionary. + + The type of the dictionary. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation and key value serializers. + + The dictionary representation. + The key serializer. + The value serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified key serializer. + + The key serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified value serializer. + + The value serializer. + The reconfigured serializer. + + + + Creates the instance. + + The instance. + + + + Represents a serializer for a class that implements . + + The type of the dictionary. + The type of the key. + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation. + + The dictionary representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified dictionary representation and key value serializers. + + The dictionary representation. + The key serializer. + The value serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified key serializer. + + The key serializer. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified value serializer. + + The value serializer. + The reconfigured serializer. + + + + + + + Represents a serializer for dictionaries. + + The type of the dictionary. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Creates the instance. + + The instance. + + + + Represents a serializer for dictionaries. + + The type of the dictionary. + The type of the keys. + The type of the values. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The dictionary representation. + + + + Initializes a new instance of the class. + + The dictionary representation. + The key serializer. + The value serializer. + + + + Initializes a new instance of the class. + + The dictionary representation. + The serializer registry. + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Creates an accumulator. + + The accumulator. + + + + Creates the instance. + + The instance. + + + + Finalizes an accumulator. + + The accumulator to finalize + The instance. + + + + Represents a serializer for Interfaces. + + The type of the interface. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The discriminator convention. + interfaceType + interfaceType + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The document. + + + + Represents a serializer for Doubles. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Base serializer for dynamic types. + + The dynamic type. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Configures the deserialization context. + + The builder. + + + + Configures the serialization context. + + The builder. + + + + Creates the document. + + A + + + + Sets the value for the member. + + The document. + Name of the member. + The value. + + + + Tries to get the value for a member. Returns true if the member should be serialized. + + The document. + Name of the member. + The value. + true if the member should be serialized; otherwise false. + + + + Represents a serializer for a class that implements IEnumerable. + + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Creates the accumulator. + + The accumulator. + + + + Represents a serializer for a class that implementes . + + The type of the value. + The type of the item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Creates the accumulator. + + The accumulator. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for enumerable values. + + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Adds the item. + + The accumulator. + The item. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for enumerable values. + + The type of the value. + The type of the items. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Adds the item. + + The accumulator. + The item. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a base serializer for enumerable values. + + The type of the value. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for enumerable values. + + The type of the value. + The type of the items. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + The serialization info for the items. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Serializer for . + + + The use of will serialize any without type information. + To get the best experience out of using an , any member wanting to be used + as an array should use . + + + + + Initializes a new instance of the class. + + + + + Configures the deserialization context. + + The builder. + + + + Configures the serialization context. + + The builder. + + + + Creates the document. + + + A . + + + + + Sets the value for the member. + + The document. + Name of the member. + The value. + + + + Tries to get the value for a member. Returns true if the member should be serialized. + + The value. + Name of the member. + The member value. + true if the member should be serialized; otherwise false. + + + + Represents a serializer for Guids. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Interfaces. + + The type of the interface. + The type of the implementation. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The implementation serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the dictionary representation. + + + The dictionary representation. + + + + + + Gets the key serializer. + + + The key serializer. + + + + + + Gets the implementation serializer. + + + The implementation serializer. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The document. + + + + Returns a serializer that has been reconfigured with the specified implementation serializer. + + The implementation serializer. + + The reconfigured serializer. + + + + + Represents a serializer for Int16s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Int32. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Int64s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for IPAddresses. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for IPEndPoints. + + + + + Initializes a new instance of the IPEndPointSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for KeyValuePairs. + + The type of the keys. + The type of the values. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The key serializer. + The value serializer. + + + + Initializes a new instance of the class. + + The representation. + The serializer registry. + + + + Gets the key serializer. + + + The key serializer. + + + + + Gets the representation. + + + The representation. + + + + + Gets the value serializer. + + + The value serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + + + + Represents a serializer for LazyBsonArrays. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for LazyBsonDocuments. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for nullable values. + + The underlying type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified serializer. + + The serializer. + + The reconfigured serializer. + + + + + Represents a serializer for ObjectIds. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for objects. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The discriminator convention. + discriminatorConvention + + + + Gets the standard instance. + + + The standard instance. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents an abstract base class for class serializers. + + The type of the value. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Gets the actual type. + + The context. + The actual type. + + + + Serializes a value of type {TValue}. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for enums. + + The type of the enum. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for one-dimensional arrays. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for Queues. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items. + + The value. + The items. + + + + Finalizes the result. + + The instance. + The result. + + + + Represents a serializer for Queues. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for RawBsonArrays. + + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for RawBsonDocuments. + + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + The instance. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for readonly collection. + + The type of the item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Creates the accumulator. + + The accumulator. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for a subclass of ReadOnlyCollection. + + The type of the value. + The type of the item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Creates the accumulator. + + The accumulator. + + + + Finalizes the result. + + The accumulator. + The final result. + + + + Represents a serializer for SBytes. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for a class that will be serialized as if it were one of its base classes. + + The actual type. + The nominal type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The base class serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for Singles. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for Stacks. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for Stacks. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Adds the item. + + The accumulator. + The item. + + + + Creates the accumulator. + + The accumulator. + + + + Enumerates the items in serialization order. + + The value. + The items. + + + + Finalizes the result. + + The accumulator. + The result. + + + + Represents a serializer for Strings. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for three-dimensional arrays. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Represents a serializer for Timespans. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The units. + + + + Gets the representation. + + + The representation. + + + + + Gets the units. + + + The units. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation and units. + + The representation. + The units. + + The reconfigured serializer. + + + + + Represents a serializer for a . + + The type of item 1. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + The type of item 6. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + The Item6 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Gets the Item6 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + The type of item 6. + The type of item 7. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + The Item6 serializer. + The Item7 serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Gets the Item6 serializer. + + + + + Gets the Item7 serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a . + + The type of item 1. + The type of item 2. + The type of item 3. + The type of item 4. + The type of item 5. + The type of item 6. + The type of item 7. + The type of the rest item. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The Item1 serializer. + The Item2 serializer. + The Item3 serializer. + The Item4 serializer. + The Item5 serializer. + The Item6 serializer. + The Item7 serializer. + The Rest serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the Item1 serializer. + + + + + Gets the Item2 serializer. + + + + + Gets the Item3 serializer. + + + + + Gets the Item4 serializer. + + + + + Gets the Item5 serializer. + + + + + Gets the Item6 serializer. + + + + + Gets the Item7 serializer. + + + + + Gets the Rest serializer. + + + + + Deserializes the value. + + The context. + The deserialization args. + A deserialized value. + + + + Serializes the value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for two-dimensional arrays. + + The type of the elements. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The item serializer. + + + + Initializes a new instance of the class. + + The serializer registry. + + + + Gets the item serializer. + + + The item serializer. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The item serializer. + The reconfigured serializer. + + + + Represents a serializer for UInt16s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for UInt32s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for UInt64s. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Initializes a new instance of the class. + + The representation. + The converter. + + + + Gets the converter. + + + The converter. + + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified item serializer. + + The converter. + The reconfigured serializer. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Represents a serializer for interfaces and base classes that delegates to the actual type interface without writing a discriminator. + + Type type of the value. + + + + Initializes a new instance of the class. + + + + + Gets the instance. + + + The instance. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The document. + + + + Represents a serializer for Uris. + + + + + Initializes a new instance of the UriSerializer class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Represents a serializer for Versions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The representation. + + + + Gets the representation. + + + The representation. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Returns a serializer that has been reconfigured with the specified representation. + + The representation. + The reconfigured serializer. + + + + Extensions methods for IBsonSerializer. + + + + + Deserializes a value. + + The serializer. + The deserialization context. + A deserialized value. + + + + Deserializes a value. + + The type that this serializer knows how to serialize. + The serializer. + The deserialization context. + A deserialized value. + + + + Serializes a value. + + The serializer. + The serialization context. + The value. + + + + Serializes a value. + + The type that this serializer knows how to serialize. + The serializer. + The serialization context. + The value. + + + + Converts a value to a BsonValue by serializing it. + + The serializer. + The value. + The serialized value. + + + + Converts a value to a BsonValue by serializing it. + + The type of the value. + The serializer. + The value. + The serialized value. + + + + Represents a serializer for TClass (a subclass of BsonDocumentBackedClass). + + The subclass of BsonDocumentBackedClass. + + + + Initializes a new instance of the class. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + + + + Registers a member. + + The member name. + The element name. + The serializer. + + + + + + + Creates the instance. + + The backing document. + An instance of TClass. + + + + Contract for serializers to implement if they serialize an array of items. + + + + + Tries to get the serialization info for the individual items of the array. + + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Contract for serializers that can get and set Id values. + + + + + Gets the document Id. + + The document. + The Id. + The nominal type of the Id. + The IdGenerator for the Id type. + True if the document has an Id. + + + + Sets the document Id. + + The document. + The Id. + + + + Contract for composite serializers that contain a number of named serializers. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + true if the serialization info exists; otherwise false. + + + + Represents the information needed to serialize a member. + + + + + Initializes a new instance of the BsonSerializationInfo class. + + The element name. + The serializer. + The nominal type. + + + + Gets or sets the dotted element name. + + + + + Gets or sets the serializer. + + + + + Gets or sets the nominal type. + + + + + Deserializes the value. + + The value. + A deserialized value. + + + + Merges the new BsonSerializationInfo by taking its properties and concatenating its ElementName. + + The new info. + A new BsonSerializationInfo. + + + + Serializes the value. + + The value. + The serialized value. + + + + Serializes the values. + + The values. + The serialized values. + + + + Creates a new BsonSerializationInfo object using the elementName provided and copying all other attributes. + + Name of the element. + A new BsonSerializationInfo. + + + + Represents a mapping between a class and a BSON document. + + + + + Initializes a new instance of the BsonClassMap class. + + The class type. + + + + Initializes a new instance of the class. + + Type of the class. + The base class map. + + + + Gets all the member maps (including maps for inherited members). + + + + + Gets the base class map. + + + + + Gets the class type. + + + + + Gets the constructor maps. + + + + + Gets the conventions used for auto mapping. + + + + + Gets the declared member maps (only for members declared in this class). + + + + + Gets the discriminator. + + + + + Gets whether a discriminator is required when serializing this class. + + + + + Gets the member map of the member used to hold extra elements. + + + + + Gets whether this class map has any creator maps. + + + + + Gets whether this class has a root class ancestor. + + + + + Gets the Id member map (null if none). + + + + + Gets whether extra elements should be ignored when deserializing. + + + + + Gets whether the IgnoreExtraElements value should be inherited by derived classes. + + + + + Gets whether this class is anonymous. + + + + + Gets whether the class map is frozen. + + + + + Gets whether this class is a root class. + + + + + Gets the known types of this class. + + + + + Gets the element name to member index trie. + + + + + Gets the member index of the member used to hold extra elements. + + + + + Gets the type of a member. + + The member info. + The type of the member. + + + + Gets all registered class maps. + + All registered class maps. + + + + Checks whether a class map is registered for a type. + + The type to check. + True if there is a class map registered for the type. + + + + Looks up a class map (will AutoMap the class if no class map is registered). + + The class type. + The class map. + + + + Creates and registers a class map. + + The class. + The class map. + + + + Creates and registers a class map. + + The class. + The class map initializer. + The class map. + + + + Registers a class map. + + The class map. + + + + Automaps the class. + + + + + Creates an instance of the class. + + An object. + + + + Freezes the class map. + + The frozen class map. + + + + Gets a member map (only considers members declared in this class). + + The member name. + The member map (or null if the member was not found). + + + + Gets the member map for a BSON element. + + The name of the element. + The member map. + + + + Creates a creator map for a constructor and adds it to the class map. + + The constructor info. + The creator map (so method calls can be chained). + + + + Creates a creator map for a constructor and adds it to the class map. + + The constructor info. + The argument names. + The creator map (so method calls can be chained). + + + + Creates a creator map and adds it to the class. + + The delegate. + The factory method map (so method calls can be chained). + + + + Creates a creator map and adds it to the class. + + The delegate. + The argument names. + The factory method map (so method calls can be chained). + + + + Creates a member map for the extra elements field and adds it to the class map. + + The name of the extra elements field. + The member map (so method calls can be chained). + + + + Creates a member map for the extra elements member and adds it to the class map. + + The member info for the extra elements member. + The member map (so method calls can be chained). + + + + Creates a member map for the extra elements property and adds it to the class map. + + The name of the property. + The member map (so method calls can be chained). + + + + Creates a creator map for a factory method and adds it to the class. + + The method info. + The creator map (so method calls can be chained). + + + + Creates a creator map for a factory method and adds it to the class. + + The method info. + The argument names. + The creator map (so method calls can be chained). + + + + Creates a member map for a field and adds it to the class map. + + The name of the field. + The member map (so method calls can be chained). + + + + Creates a member map for the Id field and adds it to the class map. + + The name of the Id field. + The member map (so method calls can be chained). + + + + Creates a member map for the Id member and adds it to the class map. + + The member info for the Id member. + The member map (so method calls can be chained). + + + + Creates a member map for the Id property and adds it to the class map. + + The name of the Id property. + The member map (so method calls can be chained). + + + + Creates a member map for a member and adds it to the class map. + + The member info. + The member map (so method calls can be chained). + + + + Creates a member map for a property and adds it to the class map. + + The name of the property. + The member map (so method calls can be chained). + + + + Resets the class map back to its initial state. + + + + + Sets the creator for the object. + + The creator. + The class map (so method calls can be chained). + + + + Sets the discriminator. + + The discriminator. + + + + Sets whether a discriminator is required when serializing this class. + + Whether a discriminator is required. + + + + Sets the member map of the member used to hold extra elements. + + The extra elements member map. + + + + Adds a known type to the class map. + + The known type. + + + + Sets the Id member. + + The Id member (null if none). + + + + Sets whether extra elements should be ignored when deserializing. + + Whether extra elements should be ignored when deserializing. + + + + Sets whether the IgnoreExtraElements value should be inherited by derived classes. + + Whether the IgnoreExtraElements value should be inherited by derived classes. + + + + Sets whether this class is a root class. + + Whether this class is a root class. + + + + Removes a creator map for a constructor from the class map. + + The constructor info. + + + + Removes a creator map for a factory method from the class map. + + The method info. + + + + Removes the member map for a field from the class map. + + The name of the field. + + + + Removes a member map from the class map. + + The member info. + + + + Removes the member map for a property from the class map. + + The name of the property. + + + + Gets the discriminator convention for the class. + + The discriminator convention for the class. + + + + Represents a mapping between a class and a BSON document. + + The class. + + + + Initializes a new instance of the BsonClassMap class. + + + + + Initializes a new instance of the BsonClassMap class. + + The class map initializer. + + + + Creates an instance. + + An instance. + + + + Gets a member map. + + The member type. + A lambda expression specifying the member. + The member map. + + + + Creates a creator map and adds it to the class map. + + Lambda expression specifying the creator code and parameters to use. + The member map. + + + + Creates a member map for the extra elements field and adds it to the class map. + + The member type. + A lambda expression specifying the extra elements field. + The member map. + + + + Creates a member map for the extra elements member and adds it to the class map. + + The member type. + A lambda expression specifying the extra elements member. + The member map. + + + + Creates a member map for the extra elements property and adds it to the class map. + + The member type. + A lambda expression specifying the extra elements property. + The member map. + + + + Creates a member map for a field and adds it to the class map. + + The member type. + A lambda expression specifying the field. + The member map. + + + + Creates a member map for the Id field and adds it to the class map. + + The member type. + A lambda expression specifying the Id field. + The member map. + + + + Creates a member map for the Id member and adds it to the class map. + + The member type. + A lambda expression specifying the Id member. + The member map. + + + + Creates a member map for the Id property and adds it to the class map. + + The member type. + A lambda expression specifying the Id property. + The member map. + + + + Creates a member map and adds it to the class map. + + The member type. + A lambda expression specifying the member. + The member map. + + + + Creates a member map for the Id property and adds it to the class map. + + The member type. + A lambda expression specifying the Id property. + The member map. + + + + Removes the member map for a field from the class map. + + The member type. + A lambda expression specifying the field. + + + + Removes a member map from the class map. + + The member type. + A lambda expression specifying the member. + + + + Removes a member map for a property from the class map. + + The member type. + A lambda expression specifying the property. + + + + Represents a serializer for a class map. + + The type of the class. + + + + Initializes a new instance of the BsonClassMapSerializer class. + + The class map. + + + + Gets a value indicating whether this serializer's discriminator is compatible with the object serializer. + + + true if this serializer's discriminator is compatible with the object serializer; otherwise, false. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Deserializes a value. + + The deserialization context. + A deserialized value. + + + + Gets the document Id. + + The document. + The Id. + The nominal type of the Id. + The IdGenerator for the Id type. + True if the document has an Id. + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Serializes a value. + + The serialization context. + The serialization args. + The object. + + + + Sets the document Id. + + The document. + The Id. + + + + Represents the mapping between a field or property and a BSON element. + + + + + Initializes a new instance of the BsonMemberMap class. + + The class map this member map belongs to. + The member info. + + + + Gets the class map that this member map belongs to. + + + + + Gets the name of the member. + + + + + Gets the type of the member. + + + + + Gets whether the member type is a BsonValue. + + + + + Gets the name of the element. + + + + + Gets the serialization order. + + + + + Gets the member info. + + + + + Gets the getter function. + + + + + Gets the setter function. + + + + + Gets the Id generator. + + + + + Gets whether a default value was specified. + + + + + Gets whether an element is required for this member when deserialized. + + + + + Gets the method that will be called to determine whether the member should be serialized. + + + + + Gets whether default values should be ignored when serialized. + + + + + Gets whether null values should be ignored when serialized. + + + + + Gets the default value. + + + + + Gets whether the member is readonly. + + + Readonly indicates that the member is written to the database, but not read from the database. + + + + + Applies the default value to the member of an object. + + The object. + + + + Freezes this instance. + + + + + Gets the serializer. + + The serializer. + + + + Resets the member map back to its initial state. + + The member map. + + + + Sets the default value creator. + + The default value creator (note: the supplied delegate must be thread safe). + The member map. + + + + Sets the default value. + + The default value. + The member map. + + + + Sets the name of the element. + + The name of the element. + The member map. + + + + Sets the Id generator. + + The Id generator. + The member map. + + + + Sets whether default values should be ignored when serialized. + + Whether default values should be ignored when serialized. + The member map. + + + + Sets whether null values should be ignored when serialized. + + Wether null values should be ignored when serialized. + The member map. + + + + Sets whether an element is required for this member when deserialized + + Whether an element is required for this member when deserialized + The member map. + + + + Sets the serialization order. + + The serialization order. + The member map. + + + + Sets the serializer. + + The serializer. + + The member map. + + serializer + serializer + + + + Sets the method that will be called to determine whether the member should be serialized. + + The method. + The member map. + + + + Determines whether a value should be serialized + + The object. + The value. + True if the value should be serialized. + + + + A static class that represents the BSON serialization functionality. + + + + + Gets the serializer registry. + + + + + Gets or sets whether to use the NullIdChecker on reference Id types that don't have an IdGenerator registered. + + + + + Gets or sets whether to use the ZeroIdChecker on value Id types that don't have an IdGenerator registered. + + + + + Deserializes an object from a BsonDocument. + + The nominal type of the object. + The BsonDocument. + The configurator. + A deserialized value. + + + + Deserializes a value. + + The nominal type of the object. + The BsonReader. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON byte array. + + The nominal type of the object. + The BSON byte array. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON Stream. + + The nominal type of the object. + The BSON Stream. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON string. + + The nominal type of the object. + The JSON string. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON TextReader. + + The nominal type of the object. + The JSON TextReader. + The configurator. + A deserialized value. + + + + Deserializes an object from a BsonDocument. + + The BsonDocument. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes a value. + + The BsonReader. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON byte array. + + The BSON byte array. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a BSON Stream. + + The BSON Stream. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON string. + + The JSON string. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Deserializes an object from a JSON TextReader. + + The JSON TextReader. + The nominal type of the object. + The configurator. + A deserialized value. + + + + Returns whether the given type has any discriminators registered for any of its subclasses. + + A Type. + True if the type is discriminated. + + + + Looks up the actual type of an object to be deserialized. + + The nominal type of the object. + The discriminator. + The actual type of the object. + + + + Looks up the discriminator convention for a type. + + The type. + A discriminator convention. + + + + Looks up an IdGenerator. + + The Id type. + An IdGenerator for the Id type. + + + + Looks up a serializer for a Type. + + The type. + A serializer for type T. + + + + Looks up a serializer for a Type. + + The Type. + A serializer for the Type. + + + + Registers the discriminator for a type. + + The type. + The discriminator. + + + + Registers the discriminator convention for a type. + + Type type. + The discriminator convention. + + + + Registers a generic serializer definition for a generic type. + + The generic type. + The generic serializer definition. + + + + Registers an IdGenerator for an Id Type. + + The Id Type. + The IdGenerator for the Id Type. + + + + Registers a serialization provider. + + The serialization provider. + + + + Registers a serializer for a type. + + The type. + The serializer. + + + + Registers a serializer for a type. + + The type. + The serializer. + + + + Serializes a value. + + The nominal type of the object. + The BsonWriter. + The object. + The serialization context configurator. + The serialization args. + + + + Serializes a value. + + The BsonWriter. + The nominal type of the object. + The object. + The serialization context configurator. + The serialization args. + + + + An interface implemented by Id generators. + + + + + Generates an Id for a document. + + The container of the document (will be a MongoCollection when called from the C# driver). + The document. + An Id. + + + + Tests whether an Id is empty. + + The Id. + True if the Id is empty. + + + + An interface implemented by a serializer. + + + + + Gets the type of the value. + + + The type of the value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + An interface implemented by a serializer for values of type TValue. + + The type that this serializer knows how to serialize. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + A deserialized value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + An interface implemented by serialization providers. + + + + + Gets a serializer for a type. + + The type. + A serializer. + + + + An interface implemented by serialization providers that are aware of registries. + + + This interface was added to preserve backward compatability (changing IBsonSerializationProvider would have been a backward breaking change). + + + + + Gets a serializer for a type. + + The type. + The serializer registry. + + A serializer. + + + + + Represents a serialization provider based on a mapping from value types to serializer types. + + + + + Initializes a new instance of the class. + + + + + + + + Registers the serializer mapping. + + The type. + Type of the serializer. + + + + Supports using type names as discriminators. + + + + + Resolves a type name discriminator. + + The type name. + The type if type type name can be resolved; otherwise, null. + + + + Gets a type name to be used as a discriminator (like AssemblyQualifiedName but shortened for common DLLs). + + The type. + The type name. + + + + Represents a truncation exception. + + + + + Initializes a new instance of the TruncationException class. + + + + + Initializes a new instance of the TruncationException class. + + The error message. + + + + Initializes a new instance of the TruncationException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the TruncationException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Represents the BSON undefined value. + + + + + Compares two BsonUndefined values. + + The first BsonUndefined. + The other BsonUndefined. + True if the two BsonUndefined values are not equal according to ==. + + + + Compares two BsonUndefined values. + + The first BsonUndefined. + The other BsonUndefined. + True if the two BsonUndefined values are equal according to ==. + + + + Gets the singleton instance of BsonUndefined. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonUndefined to another BsonUndefined. + + The other BsonUndefined. + A 32-bit signed integer that indicates whether this BsonUndefined is less than, equal to, or greather than the other. + + + + Compares the BsonUndefined to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonUndefined is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonUndefined to another BsonUndefined. + + The other BsonUndefined. + True if the two BsonUndefined values are equal. + + + + Compares this BsonUndefined to another object. + + The other object. + True if the other object is a BsonUndefined and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON internal exception (almost surely the result of a bug). + + + + + Initializes a new instance of the BsonInternalException class. + + + + + Initializes a new instance of the BsonInternalException class. + + The error message. + + + + Initializes a new instance of the BsonInternalException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the BsonInternalException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Represents a BSON serialization exception. + + + + + Initializes a new instance of the BsonSerializationException class. + + + + + Initializes a new instance of the BsonSerializationException class. + + The error message. + + + + Initializes a new instance of the BsonSerializationException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the BsonSerializationException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + An interface implemented by objects that convert themselves to a BsonDocument. + + + + + Converts this object to a BsonDocument. + + A BsonDocument. + + + + Represents a BSON array. + + + + + Initializes a new instance of the BsonArray class. + + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + A list of values to add to the array. + + + + Initializes a new instance of the BsonArray class. + + The initial capacity of the array. + + + + Compares two BsonArray values. + + The first BsonArray. + The other BsonArray. + True if the two BsonArray values are not equal according to ==. + + + + Compares two BsonArray values. + + The first BsonArray. + The other BsonArray. + True if the two BsonArray values are equal according to ==. + + + + Gets the BsonType of this BsonValue. + + + + + Gets or sets the total number of elements the internal data structure can hold without resizing. + + + + + Gets the count of array elements. + + + + + Gets whether the array is read-only. + + + + + Gets the array elements as raw values (see BsonValue.RawValue). + + + + + Gets the array elements. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Creates a new BsonArray. + + A value to be mapped to a BsonArray. + A BsonArray or null. + + + + Adds an element to the array. + + The value to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Adds multiple elements to the array. + + A list of values to add to the array. + The array (so method calls can be chained). + + + + Creates a shallow clone of the array (see also DeepClone). + + A shallow clone of the array. + + + + Clears the array. + + + + + Compares the array to another array. + + The other array. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other. + + + + Compares the array to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this array is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the array contains a value. + + The value to test for. + True if the array contains the value. + + + + Copies elements from this array to another array. + + The other array. + The zero based index of the other array at which to start copying. + + + + Copies elements from this array to another array as raw values (see BsonValue.RawValue). + + The other array. + The zero based index of the other array at which to start copying. + + + + Creates a deep clone of the array (see also Clone). + + A deep clone of the array. + + + + Compares this array to another array. + + The other array. + True if the two arrays are equal. + + + + Compares this BsonArray to another object. + + The other object. + True if the other object is a BsonArray and equal to this one. + + + + Gets an enumerator that can enumerate the elements of the array. + + An enumerator. + + + + Gets the hash code. + + The hash code. + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The zero based index of the value (or -1 if not found). + + + + Gets the index of a value in the array. + + The value to search for. + The zero based index at which to start the search. + The number of elements to search. + The zero based index of the value (or -1 if not found). + + + + Inserts a new value into the array. + + The zero based index at which to insert the new value. + The new value. + + + + Removes the first occurrence of a value from the array. + + The value to remove. + True if the value was removed. + + + + Removes an element from the array. + + The zero based index of the element to remove. + + + + Converts the BsonArray to an array of BsonValues. + + An array of BsonValues. + + + + Converts the BsonArray to a list of BsonValues. + + A list of BsonValues. + + + + Returns a string representation of the array. + + A string representation of the array. + + + + A static helper class containing BSON defaults. + + + + + Gets or sets the dynamic array serializer. + + + + + Gets or sets the dynamic document serializer. + + + + + Gets or sets the default representation to be used in serialization of + Guids to the database. + + + + + + Gets or sets the default max document size. The default is 4MiB. + + + + + Gets or sets the default max serialization depth (used to detect circular references during serialization). The default is 100. + + + + + Represents a BSON boolean value. + + + + + Initializes a new instance of the BsonBoolean class. + + The value. + + + + Gets the instance of BsonBoolean that represents false. + + + + + Gets the instance of BsonBoolean that represents true. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonBoolean as a bool. + + + + + Gets the value of this BsonBoolean. + + + + + Converts a bool to a BsonBoolean. + + A bool. + A BsonBoolean. + + + + Compares two BsonBoolean values. + + The first BsonBoolean. + The other BsonBoolean. + True if the two BsonBoolean values are not equal according to ==. + + + + Compares two BsonBoolean values. + + The first BsonBoolean. + The other BsonBoolean. + True if the two BsonBoolean values are equal according to ==. + + + + Returns one of the two possible BsonBoolean values. + + An object to be mapped to a BsonBoolean. + A BsonBoolean or null. + + + + Compares this BsonBoolean to another BsonBoolean. + + The other BsonBoolean. + A 32-bit signed integer that indicates whether this BsonBoolean is less than, equal to, or greather than the other. + + + + Compares the BsonBoolean to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonBoolean is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonBoolean to another BsonBoolean. + + The other BsonBoolean. + True if the two BsonBoolean values are equal. + + + + Compares this BsonBoolean to another object. + + The other object. + True if the other object is a BsonBoolean and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a BSON DateTime value. + + + + + Initializes a new instance of the BsonDateTime class. + + A DateTime. + + + + Initializes a new instance of the BsonDateTime class. + + Milliseconds since Unix Epoch. + + + + Gets the BsonType of this BsonValue. + + + + + Gets whether this BsonDateTime is a valid .NET DateTime. + + + + + Gets the number of milliseconds since the Unix Epoch. + + + + + Gets the number of milliseconds since the Unix Epoch. + + + + + Gets the DateTime value. + + + + + Converts a DateTime to a BsonDateTime. + + A DateTime. + A BsonDateTime. + + + + Compares two BsonDateTime values. + + The first BsonDateTime. + The other BsonDateTime. + True if the two BsonDateTime values are not equal according to ==. + + + + Compares two BsonDateTime values. + + The first BsonDateTime. + The other BsonDateTime. + True if the two BsonDateTime values are equal according to ==. + + + + Creates a new BsonDateTime. + + An object to be mapped to a BsonDateTime. + A BsonDateTime or null. + + + + Compares this BsonDateTime to another BsonDateTime. + + The other BsonDateTime. + A 32-bit signed integer that indicates whether this BsonDateTime is less than, equal to, or greather than the other. + + + + Compares the BsonDateTime to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonDateTime is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonDateTime to another BsonDateTime. + + The other BsonDateTime. + True if the two BsonDateTime values are equal. + + + + Compares this BsonDateTime to another object. + + The other object. + True if the other object is a BsonDateTime and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a DateTime in local time. + + A DateTime. + + + + Converts this BsonValue to a DateTime? in local time. + + A DateTime?. + + + + Converts this BsonValue to a DateTime? in UTC. + + A DateTime?. + + + + Converts this BsonValue to a DateTime in UTC. + + A DateTime. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + Represents a BsonDocument wrapper. + + + + + Initializes a new instance of the class. + + The value. + + + + Initializes a new instance of the class. + + The value. + The serializer. + + + + Gets the serializer. + + + The serializer. + + + + + Gets the wrapped value. + + + + + Creates a new instance of the BsonDocumentWrapper class. + + The nominal type of the wrapped object. + The wrapped object. + A BsonDocumentWrapper. + + + + Creates a new instance of the BsonDocumentWrapper class. + + The nominal type of the wrapped object. + The wrapped object. + A BsonDocumentWrapper. + + + + Creates a list of new instances of the BsonDocumentWrapper class. + + The nominal type of the wrapped objects. + A list of wrapped objects. + A list of BsonDocumentWrappers. + + + + Creates a list of new instances of the BsonDocumentWrapper class. + + The nominal type of the wrapped object. + A list of wrapped objects. + A list of BsonDocumentWrappers. + + + + Creates a shallow clone of the document (see also DeepClone). + + + A shallow clone of the document. + + + + + Materializes the BsonDocument. + + The materialized elements. + + + + Informs subclasses that the Materialize process completed so they can free any resources related to the unmaterialized state. + + + + + Represents a BSON long value. + + + + + Initializes a new instance of the BsonInt64 class. + + The value. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonInt64 as a long. + + + + + Gets the value of this BsonInt64. + + + + + Converts a long to a BsonInt64. + + A long. + A BsonInt64. + + + + Compares two BsonInt64 values. + + The first BsonInt64. + The other BsonInt64. + True if the two BsonInt64 values are not equal according to ==. + + + + Compares two BsonInt64 values. + + The first BsonInt64. + The other BsonInt64. + True if the two BsonInt64 values are equal according to ==. + + + + Creates a new BsonInt64. + + An object to be mapped to a BsonInt64. + A BsonInt64 or null. + + + + Compares this BsonInt64 to another BsonInt64. + + The other BsonInt64. + A 32-bit signed integer that indicates whether this BsonInt64 is less than, equal to, or greather than the other. + + + + Compares the BsonInt64 to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonInt64 is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonInt64 to another BsonInt64. + + The other BsonInt64. + True if the two BsonInt64 values are equal. + + + + Compares this BsonInt64 to another object. + + The other object. + True if the other object is a BsonInt64 and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + + + + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int32. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compares this BsonInt32 against another BsonValue. + + The other BsonValue. + True if this BsonInt64 and the other BsonValue are equal according to ==. + + + + Represents the BSON Null value. + + + + + Compares two BsonNull values. + + The first BsonNull. + The other BsonNull. + True if the two BsonNull values are not equal according to ==. + + + + Compares two BsonNull values. + + The first BsonNull. + The other BsonNull. + True if the two BsonNull values are equal according to ==. + + + + Gets the singleton instance of BsonNull. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonNull to another BsonNull. + + The other BsonNull. + A 32-bit signed integer that indicates whether this BsonNull is less than, equal to, or greather than the other. + + + + Compares the BsonNull to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonNull is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonNull to another BsonNull. + + The other BsonNull. + True if the two BsonNull values are equal. + + + + Compares this BsonNull to another object. + + The other object. + True if the other object is a BsonNull and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Converts this BsonValue to a DateTime? in local time. + + A DateTime?. + + + + Converts this BsonValue to a DateTime? in UTC. + + A DateTime?. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents BSON binary data. + + + + + Initializes a new instance of the BsonBinaryData class. + + The binary data. + + + + Initializes a new instance of the BsonBinaryData class. + + The binary data. + The binary data subtype. + + + + Initializes a new instance of the BsonBinaryData class. + + The binary data. + The binary data subtype. + The representation for Guids. + + + + Initializes a new instance of the BsonBinaryData class. + + A Guid. + + + + Initializes a new instance of the BsonBinaryData class. + + A Guid. + The representation for Guids. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the binary data. + + + + + Gets the representation to use when representing the Guid as BSON binary data. + + + + + Gets the BsonBinaryData as a Guid if the subtype is UuidStandard or UuidLegacy, otherwise null. + + + + + Gets the binary data subtype. + + + + + Converts a byte array to a BsonBinaryData. + + A byte array. + A BsonBinaryData. + + + + Converts a Guid to a BsonBinaryData. + + A Guid. + A BsonBinaryData. + + + + Compares two BsonBinaryData values. + + The first BsonBinaryData. + The other BsonBinaryData. + True if the two BsonBinaryData values are not equal according to ==. + + + + Compares two BsonBinaryData values. + + The first BsonBinaryData. + The other BsonBinaryData. + True if the two BsonBinaryData values are equal according to ==. + + + + Creates a new BsonBinaryData. + + An object to be mapped to a BsonBinaryData. + A BsonBinaryData or null. + + + + Compares this BsonBinaryData to another BsonBinaryData. + + The other BsonBinaryData. + A 32-bit signed integer that indicates whether this BsonBinaryData is less than, equal to, or greather than the other. + + + + Compares the BsonBinaryData to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonBinaryData is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonBinaryData to another BsonBinaryData. + + The other BsonBinaryData. + True if the two BsonBinaryData values are equal. + + + + Compares this BsonBinaryData to another object. + + The other object. + True if the other object is a BsonBinaryData and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonBinaryData to a Guid. + + A Guid. + + + + Converts this BsonBinaryData to a Guid. + + The representation for Guids. + A Guid. + + + + Returns a string representation of the binary data. + + A string representation of the binary data. + + + + Represents a BSON JavaScript value with a scope. + + + + + Initializes a new instance of the BsonJavaScriptWithScope class. + + The JavaScript code. + A scope (a set of variables with values). + + + + Compares two BsonJavaScriptWithScope values. + + The first BsonJavaScriptWithScope. + The other BsonJavaScriptWithScope. + True if the two BsonJavaScriptWithScope values are not equal according to ==. + + + + Compares two BsonJavaScriptWithScope values. + + The first BsonJavaScriptWithScope. + The other BsonJavaScriptWithScope. + True if the two BsonJavaScriptWithScope values are equal according to ==. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the scope (a set of variables with values). + + + + + Creates a new BsonJavaScriptWithScope. + + An object to be mapped to a BsonJavaScriptWithScope. + A BsonJavaScriptWithScope or null. + + + + Creates a shallow clone of the BsonJavaScriptWithScope (see also DeepClone). + + A shallow clone of the BsonJavaScriptWithScope. + + + + Creates a deep clone of the BsonJavaScriptWithScope (see also Clone). + + A deep clone of the BsonJavaScriptWithScope. + + + + Compares this BsonJavaScriptWithScope to another BsonJavaScriptWithScope. + + The other BsonJavaScriptWithScope. + A 32-bit signed integer that indicates whether this BsonJavaScriptWithScope is less than, equal to, or greather than the other. + + + + Compares the BsonJavaScriptWithScope to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonJavaScriptWithScope is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonJavaScriptWithScope to another BsonJavaScriptWithScope. + + The other BsonJavaScriptWithScope. + True if the two BsonJavaScriptWithScope values are equal. + + + + Compares this BsonJavaScriptWithScope to another object. + + The other object. + True if the other object is a BsonJavaScriptWithScope and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents an ObjectId (see also BsonObjectId). + + + + + Initializes a new instance of the ObjectId class. + + The bytes. + + + + Initializes a new instance of the ObjectId class. + + The bytes. + The index into the byte array where the ObjectId starts. + + + + Initializes a new instance of the ObjectId class. + + The timestamp (expressed as a DateTime). + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the ObjectId class. + + The timestamp. + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the ObjectId class. + + The value. + + + + Gets an instance of ObjectId where the value is empty. + + + + + Gets the timestamp. + + + + + Gets the machine. + + + + + Gets the PID. + + + + + Gets the increment. + + + + + Gets the creation time (derived from the timestamp). + + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is less than the second ObjectId. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is less than or equal to the second ObjectId. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId. + True if the two ObjectIds are equal. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId. + True if the two ObjectIds are not equal. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is greather than or equal to the second ObjectId. + + + + Compares two ObjectIds. + + The first ObjectId. + The other ObjectId + True if the first ObjectId is greather than the second ObjectId. + + + + Generates a new ObjectId with a unique value. + + An ObjectId. + + + + Generates a new ObjectId with a unique value (with the timestamp component based on a given DateTime). + + The timestamp component (expressed as a DateTime). + An ObjectId. + + + + Generates a new ObjectId with a unique value (with the given timestamp). + + The timestamp component. + An ObjectId. + + + + Packs the components of an ObjectId into a byte array. + + The timestamp. + The machine hash. + The PID. + The increment. + A byte array. + + + + Parses a string and creates a new ObjectId. + + The string value. + A ObjectId. + + + + Tries to parse a string and create a new ObjectId. + + The string value. + The new ObjectId. + True if the string was parsed successfully. + + + + Unpacks a byte array into the components of an ObjectId. + + A byte array. + The timestamp. + The machine hash. + The PID. + The increment. + + + + Gets the current process id. This method exists because of how CAS operates on the call stack, checking + for permissions before executing the method. Hence, if we inlined this call, the calling method would not execute + before throwing an exception requiring the try/catch at an even higher level that we don't necessarily control. + + + + + Compares this ObjectId to another ObjectId. + + The other ObjectId. + A 32-bit signed integer that indicates whether this ObjectId is less than, equal to, or greather than the other. + + + + Compares this ObjectId to another ObjectId. + + The other ObjectId. + True if the two ObjectIds are equal. + + + + Compares this ObjectId to another object. + + The other object. + True if the other object is an ObjectId and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts the ObjectId to a byte array. + + A byte array. + + + + Converts the ObjectId to a byte array. + + The destination. + The offset. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + A static class that maps between .NET objects and BsonValues. + + + + + Maps an object to an instance of the closest BsonValue class. + + An object. + A BsonValue. + + + + Maps an object to a specific BsonValue type. + + An object. + The BsonType to map to. + A BsonValue of the desired type (or BsonNull.Value if value is null and bsonType is Null). + + + + Maps a BsonValue to a .NET value using the default BsonTypeMapperOptions. + + The BsonValue. + The mapped .NET value. + + + + Maps a BsonValue to a .NET value. + + The BsonValue. + The BsonTypeMapperOptions. + The mapped .NET value. + + + + Registers a custom type mapper. + + The type. + A custom type mapper. + + + + Tries to map an object to an instance of the closest BsonValue class. + + An object. + The BsonValue. + True if the mapping was successfull. + + + + Compares this Mapping to another object. + + The other object. + True if the other object is a Mapping and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + A static class containing BSON utility methods. + + + + + Gets a friendly class name suitable for use in error messages. + + The type. + A friendly class name. + + + + Parses a hex string into its equivalent byte array. + + The hex string to parse. + The byte equivalent of the hex string. + + + + Converts from number of milliseconds since Unix epoch to DateTime. + + The number of milliseconds since Unix epoch. + A DateTime. + + + + Converts a value to a hex character. + + The value (assumed to be between 0 and 15). + The hex character. + + + + Converts a byte array to a hex string. + + The byte array. + A hex string. + + + + Converts a DateTime to local time (with special handling for MinValue and MaxValue). + + A DateTime. + The DateTime in local time. + + + + Converts a DateTime to number of milliseconds since Unix epoch. + + A DateTime. + Number of seconds since Unix epoch. + + + + Converts a DateTime to UTC (with special handling for MinValue and MaxValue). + + A DateTime. + The DateTime in UTC. + + + + Tries to parse a hex string to a byte array. + + The hex string. + A byte array. + True if the hex string was successfully parsed. + + + + Represents a BSON double value. + + + + + + Initializes a new instance of the BsonDouble class. + + The value. + + + + + + + + + + Gets the value of this BsonDouble. + + + + + Converts a double to a BsonDouble. + + A double. + A BsonDouble. + + + + Compares two BsonDouble values. + + The first BsonDouble. + The other BsonDouble. + True if the two BsonDouble values are not equal according to ==. + + + + Compares two BsonDouble values. + + The first BsonDouble. + The other BsonDouble. + True if the two BsonDouble values are equal according to ==. + + + + Creates a new instance of the BsonDouble class. + + An object to be mapped to a BsonDouble. + A BsonDouble. + + + + Compares this BsonDouble to another BsonDouble. + + The other BsonDouble. + A 32-bit signed integer that indicates whether this BsonDouble is less than, equal to, or greather than the other. + + + + + + + Compares this BsonDouble to another BsonDouble. + + The other BsonDouble. + True if the two BsonDouble values are equal. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a BSON int value. + + + + + Creates a new instance of the BsonInt32 class. + + The value. + + + + Gets an instance of BsonInt32 that represents -1. + + + + + Gets an instance of BsonInt32 that represents -0. + + + + + Gets an instance of BsonInt32 that represents 1. + + + + + Gets an instance of BsonInt32 that represents 2. + + + + + Gets an instance of BsonInt32 that represents 3. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonInt32 as an int. + + + + + Gets the value of this BsonInt32. + + + + + Converts an int to a BsonInt32. + + An int. + A BsonInt32. + + + + Compares two BsonInt32 values. + + The first BsonInt32. + The other BsonInt32. + True if the two BsonInt32 values are not equal according to ==. + + + + Compares two BsonInt32 values. + + The first BsonInt32. + The other BsonInt32. + True if the two BsonInt32 values are equal according to ==. + + + + Creates a new BsonInt32. + + An object to be mapped to a BsonInt32. + A BsonInt32 or null. + + + + Compares this BsonInt32 to another BsonInt32. + + The other BsonInt32. + A 32-bit signed integer that indicates whether this BsonInt32 is less than, equal to, or greather than the other. + + + + Compares the BsonInt32 to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonInt32 is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonInt32 to another BsonInt32. + + The other BsonInt32. + True if the two BsonInt32 values are equal. + + + + Compares this BsonInt32 to another object. + + The other object. + True if the other object is a BsonInt32 and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + + + + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int32. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Compares this BsonInt32 against another BsonValue. + + The other BsonValue. + True if this BsonInt32 and the other BsonValue are equal according to ==. + + + + Represents a BSON string value. + + + + + Initializes a new instance of the BsonString class. + + The value. + + + + Gets an instance of BsonString that represents an empty string. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the BsonString as a string. + + + + + Gets the value of this BsonString. + + + + + Converts a string to a BsonString. + + A string. + A BsonString. + + + + Compares two BsonString values. + + The first BsonString. + The other BsonString. + True if the two BsonString values are not equal according to ==. + + + + Compares two BsonString values. + + The first BsonString. + The other BsonString. + True if the two BsonString values are equal according to ==. + + + + Creates a new BsonString. + + An object to be mapped to a BsonString. + A BsonString or null. + + + + Compares this BsonString to another BsonString. + + The other BsonString. + A 32-bit signed integer that indicates whether this BsonString is less than, equal to, or greather than the other. + + + + Compares the BsonString to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonString is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonString to another BsonString. + + The other BsonString. + True if the two BsonString values are equal. + + + + Compares this BsonString to another object. + + The other object. + True if the other object is a BsonString and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + + + + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int32. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a BSON value (this is an abstract class, see the various subclasses). + + + + + Casts the BsonValue to a Boolean (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonArray (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonBinaryData (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonDateTime (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonDocument (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonJavaScript (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonJavaScriptWithScope (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonMaxKey (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonMinKey (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonNull (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonRegularExpression (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonSymbol (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonTimestamp (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonUndefined (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a BsonValue (a way of upcasting subclasses of BsonValue to BsonValue at compile time). + + + + + Casts the BsonValue to a Byte[] (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a DateTime in UTC (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Double (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Guid (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to an Int32 (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a DateTime in the local timezone (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Int64 (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Boolean} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{DateTime} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Decimal} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Decimal128} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Double} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Guid} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Int32} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{Int64} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Nullable{ObjectId} (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to an ObjectId (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a Regex (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a String (throws an InvalidCastException if the cast is not valid). + + + + + Casts the BsonValue to a DateTime in UTC (throws an InvalidCastException if the cast is not valid). + + + + + Gets the BsonType of this BsonValue. + + + + + Tests whether this BsonValue is a Boolean. + + + + + Tests whether this BsonValue is a BsonArray. + + + + + Tests whether this BsonValue is a BsonBinaryData. + + + + + Tests whether this BsonValue is a BsonDateTime. + + + + + Tests whether this BsonValue is a BsonDocument. + + + + + Tests whether this BsonValue is a BsonJavaScript. + + + + + Tests whether this BsonValue is a BsonJavaScriptWithScope. + + + + + Tests whether this BsonValue is a BsonMaxKey. + + + + + Tests whether this BsonValue is a BsonMinKey. + + + + + Tests whether this BsonValue is a BsonNull. + + + + + Tests whether this BsonValue is a BsonRegularExpression. + + + + + Tests whether this BsonValue is a BsonSymbol . + + + + + Tests whether this BsonValue is a BsonTimestamp. + + + + + Tests whether this BsonValue is a BsonUndefined. + + + + + Tests whether this BsonValue is a DateTime. + + + + + Tests whether this BsonValue is a Decimal128. + + + + + Tests whether this BsonValue is a Double. + + + + + Tests whether this BsonValue is a Guid. + + + + + Tests whether this BsonValue is an Int32. + + + + + Tests whether this BsonValue is an Int64. + + + + + Tests whether this BsonValue is a numeric value. + + + + + Tests whether this BsonValue is an ObjectId . + + + + + Tests whether this BsonValue is a String. + + + + + Tests whether this BsonValue is a valid DateTime. + + + + + Gets the raw value of this BsonValue (or null if this BsonValue doesn't have a single scalar value). + + + + + Casts a BsonValue to a bool. + + The BsonValue. + A bool. + + + + Casts a BsonValue to a bool?. + + The BsonValue. + A bool?. + + + + Converts a bool to a BsonValue. + + A bool. + A BsonValue. + + + + Converts a bool? to a BsonValue. + + A bool?. + A BsonValue. + + + + Converts a byte[] to a BsonValue. + + A byte[]. + A BsonValue. + + + + Converts a DateTime to a BsonValue. + + A DateTime. + A BsonValue. + + + + Converts a DateTime? to a BsonValue. + + A DateTime?. + A BsonValue. + + + + Converts a decimal to a BsonValue. + + A decimal. + A BsonValue. + + + + Converts a decimal? to a BsonValue. + + A decimal?. + A BsonValue. + + + + Converts a to a BsonValue. + + A Decimal128. + A BsonValue. + + + + Converts a nullable to a BsonValue. + + A Decimal128?. + A BsonValue. + + + + Converts a double to a BsonValue. + + A double. + A BsonValue. + + + + Converts a double? to a BsonValue. + + A double?. + A BsonValue. + + + + Converts an Enum to a BsonValue. + + An Enum. + A BsonValue. + + + + Converts a Guid to a BsonValue. + + A Guid. + A BsonValue. + + + + Converts a Guid? to a BsonValue. + + A Guid?. + A BsonValue. + + + + Converts an int to a BsonValue. + + An int. + A BsonValue. + + + + Converts an int? to a BsonValue. + + An int?. + A BsonValue. + + + + Converts a long to a BsonValue. + + A long. + A BsonValue. + + + + Converts a long? to a BsonValue. + + A long?. + A BsonValue. + + + + Converts an ObjectId to a BsonValue. + + An ObjectId. + A BsonValue. + + + + Converts an ObjectId? to a BsonValue. + + An ObjectId?. + A BsonValue. + + + + Converts a Regex to a BsonValue. + + A Regex. + A BsonValue. + + + + Converts a string to a BsonValue. + + A string. + A BsonValue. + + + + Casts a BsonValue to a byte[]. + + The BsonValue. + A byte[]. + + + + Casts a BsonValue to a DateTime. + + The BsonValue. + A DateTime. + + + + Casts a BsonValue to a DateTime?. + + The BsonValue. + A DateTime?. + + + + Casts a BsonValue to a decimal. + + The BsonValue. + A decimal. + + + + Casts a BsonValue to a decimal?. + + The BsonValue. + A decimal?. + + + + Casts a BsonValue to a . + + The BsonValue. + A . + + + + Casts a BsonValue to a nullable ?. + + The BsonValue. + A nullable . + + + + Casts a BsonValue to a double. + + The BsonValue. + A double. + + + + Casts a BsonValue to a double?. + + The BsonValue. + A double?. + + + + Casts a BsonValue to a Guid. + + The BsonValue. + A Guid. + + + + Casts a BsonValue to a Guid?. + + The BsonValue. + A Guid?. + + + + Casts a BsonValue to an int. + + The BsonValue. + An int. + + + + Casts a BsonValue to an int?. + + The BsonValue. + An int?. + + + + Casts a BsonValue to a long. + + The BsonValue. + A long. + + + + Casts a BsonValue to a long?. + + The BsonValue. + A long?. + + + + Casts a BsonValue to an ObjectId. + + The BsonValue. + An ObjectId. + + + + Casts a BsonValue to an ObjectId?. + + The BsonValue. + An ObjectId?. + + + + Casts a BsonValue to a Regex. + + The BsonValue. + A Regex. + + + + Casts a BsonValue to a string. + + The BsonValue. + A string. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is less than the other one. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is less than or equal to the other one. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the two BsonValues are not equal according to ==. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the two BsonValues are equal according to ==. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is greater than the other one. + + + + Compares two BsonValues. + + The first BsonValue. + The other BsonValue. + True if the first BsonValue is greater than or equal to the other one. + + + + Gets or sets a value by position (only applies to BsonDocument and BsonArray). + + The position. + The value. + + + + Gets or sets a value by name (only applies to BsonDocument). + + The name. + The value. + + + + Creates a new instance of the BsonValue class. + + A value to be mapped to a BsonValue. + A BsonValue. + + + + Creates a shallow clone of the BsonValue (see also DeepClone). + + A shallow clone of the BsonValue. + + + + Compares this BsonValue to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonValue is less than, equal to, or greather than the other BsonValue. + + + + Compares the type of this BsonValue to the type of another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether the type of this BsonValue is less than, equal to, or greather than the type of the other BsonValue. + + + + Creates a deep clone of the BsonValue (see also Clone). + + A deep clone of the BsonValue. + + + + Compares this BsonValue to another BsonValue. + + The other BsonValue. + True if the two BsonValue values are equal. + + + + Compares this BsonValue to another object. + + The other object. + True if the other object is a BsonValue and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts this BsonValue to a Boolean (using the JavaScript definition of truthiness). + + A Boolean. + + + + Converts this BsonValue to a Decimal. + + A Decimal. + + + + Converts this BsonValue to a Decimal128. + + A Decimal128. + + + + Converts this BsonValue to a Double. + + A Double. + + + + Converts this BsonValue to an Int32. + + An Int32. + + + + Converts this BsonValue to an Int64. + + An Int64. + + + + Converts this BsonValue to a DateTime in local time. + + A DateTime. + + + + Converts this BsonValue to a DateTime? in local time. + + A DateTime?. + + + + Converts this BsonValue to a DateTime? in UTC. + + A DateTime?. + + + + Converts this BsonValue to a DateTime in UTC. + + A DateTime. + + + + Implementation of the IConvertible GetTypeCode method. + + The TypeCode. + + + + Implementation of the IConvertible ToBoolean method. + + The format provider. + A bool. + + + + Implementation of the IConvertible ToByte method. + + The format provider. + A byte. + + + + Implementation of the IConvertible ToChar method. + + The format provider. + A char. + + + + Implementation of the IConvertible ToDateTime method. + + The format provider. + A DateTime. + + + + Implementation of the IConvertible ToDecimal method. + + The format provider. + A decimal. + + + + Implementation of the IConvertible ToDouble method. + + The format provider. + A double. + + + + Implementation of the IConvertible ToInt16 method. + + The format provider. + A short. + + + + Implementation of the IConvertible ToInt32 method. + + The format provider. + An int. + + + + Implementation of the IConvertible ToInt64 method. + + The format provider. + A long. + + + + Implementation of the IConvertible ToSByte method. + + The format provider. + An sbyte. + + + + Implementation of the IConvertible ToSingle method. + + The format provider. + A float. + + + + Implementation of the IConvertible ToString method. + + The format provider. + A string. + + + + Implementation of the IConvertible ToUInt16 method. + + The format provider. + A ushort. + + + + Implementation of the IConvertible ToUInt32 method. + + The format provider. + A uint. + + + + Implementation of the IConvertible ToUInt64 method. + + The format provider. + A ulong. + + + + Implementation of operator ==. + + The other BsonValue. + True if the two BsonValues are equal according to ==. + + + + Represents a BSON JavaScript value. + + + + + Initializes a new instance of the BsonJavaScript class. + + The JavaScript code. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the JavaScript code. + + + + + Compares two BsonJavaScript values. + + The first BsonJavaScript. + The other BsonJavaScript. + True if the two BsonJavaScript values are not equal according to ==. + + + + Compares two BsonJavaScript values. + + The first BsonJavaScript. + The other BsonJavaScript. + True if the two BsonJavaScript values are equal according to ==. + + + + Converts a string to a BsonJavaScript. + + A string. + A BsonJavaScript. + + + + Creates a new BsonJavaScript. + + An object to be mapped to a BsonJavaScript. + A BsonJavaScript or null. + + + + Compares this BsonJavaScript to another BsonJavaScript. + + The other BsonJavaScript. + A 32-bit signed integer that indicates whether this BsonJavaScript is less than, equal to, or greather than the other. + + + + Compares the BsonJavaScript to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonJavaScript is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonJavaScript to another BsonJavaScript. + + The other BsonJavaScript. + True if the two BsonJavaScript values are equal. + + + + Compares this BsonJavaScript to another object. + + The other object. + True if the other object is a BsonJavaScript and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON timestamp value. + + + + + Initializes a new instance of the BsonTimestamp class. + + The combined timestamp/increment value. + + + + Initializes a new instance of the BsonTimestamp class. + + The timestamp. + The increment. + + + + Compares two BsonTimestamp values. + + The first BsonTimestamp. + The other BsonTimestamp. + True if the two BsonTimestamp values are not equal according to ==. + + + + Compares two BsonTimestamp values. + + The first BsonTimestamp. + The other BsonTimestamp. + True if the two BsonTimestamp values are equal according to ==. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the value of this BsonTimestamp. + + + + + Gets the increment. + + + + + Gets the timestamp. + + + + + Creates a new BsonTimestamp. + + An object to be mapped to a BsonTimestamp. + A BsonTimestamp or null. + + + + Compares this BsonTimestamp to another BsonTimestamp. + + The other BsonTimestamp. + A 32-bit signed integer that indicates whether this BsonTimestamp is less than, equal to, or greather than the other. + + + + Compares the BsonTimestamp to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonTimestamp is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonTimestamp to another BsonTimestamp. + + The other BsonTimestamp. + True if the two BsonTimestamp values are equal. + + + + Compares this BsonTimestamp to another object. + + The other object. + True if the other object is a BsonTimestamp and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + A static class containing BSON constants. + + + + + Gets the number of milliseconds since the Unix epoch for DateTime.MaxValue. + + + + + Gets the number of milliseconds since the Unix epoch for DateTime.MinValue. + + + + + Gets the Unix Epoch for BSON DateTimes (1970-01-01). + + + + + Represents the binary data subtype of a BsonBinaryData. + + + + + Binary data. + + + + + A function. + + + + + Obsolete binary data subtype (use Binary instead). + + + + + A UUID in a driver dependent legacy byte order. + + + + + A UUID in standard network byte order. + + + + + An MD5 hash. + + + + + User defined binary data. + + + + + Represents the type of a BSON element. + + + + + Not a real BSON type. Used to signal the end of a document. + + + + + A BSON double. + + + + + A BSON string. + + + + + A BSON document. + + + + + A BSON array. + + + + + BSON binary data. + + + + + A BSON undefined value. + + + + + A BSON ObjectId. + + + + + A BSON bool. + + + + + A BSON DateTime. + + + + + A BSON null value. + + + + + A BSON regular expression. + + + + + BSON JavaScript code. + + + + + A BSON symbol. + + + + + BSON JavaScript code with a scope (a set of variables with values). + + + + + A BSON 32-bit integer. + + + + + A BSON timestamp. + + + + + A BSON 64-bit integer. + + + + + A BSON 128-bit decimal. + + + + + A BSON MinKey value. + + + + + A BSON MaxKey value. + + + + + Represents a BSON exception. + + + + + Initializes a new instance of the BsonException class. + + + + + Initializes a new instance of the BsonException class. + + The error message. + + + + Initializes a new instance of the BsonException class. + + The error message. + The inner exception. + + + + Initializes a new instance of the BsonException class. + + The error message format string. + One or more args for the error message. + + + + Initializes a new instance of the BsonException class (this overload used by deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Represents the symbol table of BsonSymbols. + + + + + Looks up a symbol (and creates a new one if necessary). + + The name of the symbol. + The symbol. + + + + Represents a BSON document. + + + + + Initializes a new instance of the BsonDocument class. + + + + + Initializes a new instance of the BsonDocument class specifying whether duplicate element names are allowed + (allowing duplicate element names is not recommended). + + Whether duplicate element names are allowed. + + + + Initializes a new instance of the BsonDocument class and adds one element. + + An element to add to the document. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + A list of keys to select values from the dictionary. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + A list of keys to select values from the dictionary. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a dictionary of key/value pairs. + + A dictionary to initialize the document from. + A list of keys to select values from the dictionary. + + + + Initializes a new instance of the BsonDocument class and adds new elements from a list of elements. + + A list of elements to add to the document. + + + + Initializes a new instance of the BsonDocument class and adds one or more elements. + + One or more elements to add to the document. + + + + Initializes a new instance of the BsonDocument class and creates and adds a new element. + + The name of the element to add to the document. + The value of the element to add to the document. + + + + Compares two BsonDocument values. + + The first BsonDocument. + The other BsonDocument. + True if the two BsonDocument values are not equal according to ==. + + + + Compares two BsonDocument values. + + The first BsonDocument. + The other BsonDocument. + True if the two BsonDocument values are equal according to ==. + + + + Gets or sets whether to allow duplicate names (allowing duplicate names is not recommended). + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the number of elements. + + + + + Gets the elements. + + + + + Gets the element names. + + + + + Gets the raw values (see BsonValue.RawValue). + + + + + Gets the values. + + + + + Gets or sets a value by position. + + The position. + The value. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value to return if the element is not found. + Teh value of the element or a default value if the element is not found. + + + + Gets or sets a value by name. + + The name. + The value. + + + + Creates a new BsonDocument by mapping an object to a BsonDocument. + + The object to be mapped to a BsonDocument. + A BsonDocument. + + + + Parses a JSON string and returns a BsonDocument. + + The JSON string. + A BsonDocument. + + + + Tries to parse a JSON string and returns a value indicating whether it succeeded or failed. + + The JSON string. + The result. + Whether it succeeded or failed. + + + + Adds an element to the document. + + The element to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + Which keys of the hash table to add. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Creates and adds an element to the document. + + The name of the element. + The value of the element. + The document (so method calls can be chained). + + + + Creates and adds an element to the document, but only if the condition is true. + + The name of the element. + The value of the element. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Creates and adds an element to the document, but only if the condition is true. + If the condition is false the value factory is not called at all. + + The name of the element. + A delegate called to compute the value of the element if condition is true. + Whether to add the element to the document. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Adds a list of elements to the document. + + The list of elements. + The document (so method calls can be chained). + + + + Adds elements to the document from a dictionary of key/value pairs. + + The dictionary. + The document (so method calls can be chained). + + + + Clears the document (removes all elements). + + + + + Creates a shallow clone of the document (see also DeepClone). + + A shallow clone of the document. + + + + Compares this document to another document. + + The other document. + A 32-bit signed integer that indicates whether this document is less than, equal to, or greather than the other. + + + + Compares the BsonDocument to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonDocument is less than, equal to, or greather than the other BsonValue. + + + + Tests whether the document contains an element with the specified name. + + The name of the element to look for. + True if the document contains an element with the specified name. + + + + Tests whether the document contains an element with the specified value. + + The value of the element to look for. + True if the document contains an element with the specified value. + + + + Creates a deep clone of the document (see also Clone). + + A deep clone of the document. + + + + Compares this document to another document. + + The other document. + True if the two documents are equal. + + + + Compares this BsonDocument to another object. + + The other object. + True if the other object is a BsonDocument and equal to this one. + + + + Gets an element of this document. + + The zero based index of the element. + The element. + + + + Gets an element of this document. + + The name of the element. + A BsonElement. + + + + Gets an enumerator that can be used to enumerate the elements of this document. + + An enumerator. + + + + Gets the hash code. + + The hash code. + + + + Gets the value of an element. + + The zero based index of the element. + The value of the element. + + + + Gets the value of an element. + + The name of the element. + The value of the element. + + + + Gets the value of an element or a default value if the element is not found. + + The name of the element. + The default value returned if the element is not found. + The value of the element or the default value if the element is not found. + + + + Gets the index of an element. + + The name of the element. + The index of the element, or -1 if the element is not found. + + + + Inserts a new element at a specified position. + + The position of the new element. + The element. + + + + Merges another document into this one. Existing elements are not overwritten. + + The other document. + The document (so method calls can be chained). + + + + Merges another document into this one, specifying whether existing elements are overwritten. + + The other document. + Whether to overwrite existing elements. + The document (so method calls can be chained). + + + + Removes an element from this document (if duplicate element names are allowed + then all elements with this name will be removed). + + The name of the element to remove. + + + + Removes an element from this document. + + The zero based index of the element to remove. + + + + Removes an element from this document. + + The element to remove. + + + + Sets the value of an element. + + The zero based index of the element whose value is to be set. + The new value. + The document (so method calls can be chained). + + + + Sets the value of an element (an element will be added if no element with this name is found). + + The name of the element whose value is to be set. + The new value. + The document (so method calls can be chained). + + + + Sets an element of the document (replacing the existing element at that position). + + The zero based index of the element to replace. + The new element. + The document. + + + + Sets an element of the document (replaces any existing element with the same name or adds a new element if an element with the same name is not found). + + The new element. + The document. + + + + Converts the BsonDocument to a Dictionary<string, object>. + + A dictionary. + + + + Converts the BsonDocument to a Hashtable. + + A hashtable. + + + + Returns a string representation of the document. + + A string representation of the document. + + + + Tries to get an element of this document. + + The name of the element. + The element. + True if an element with that name was found. + + + + Tries to get the value of an element of this document. + + The name of the element. + The value of the element. + True if an element with that name was found. + + + + Represents a BSON element. + + + + + Initializes a new instance of the BsonElement class. + + The name of the element. + The value of the element. + + + + Gets the name of the element. + + + + + Gets or sets the value of the element. + + + + + Compares two BsonElements. + + The first BsonElement. + The other BsonElement. + True if the two BsonElements are equal (or both null). + + + + Compares two BsonElements. + + The first BsonElement. + The other BsonElement. + True if the two BsonElements are not equal (or one is null and the other is not). + + + + Creates a shallow clone of the element (see also DeepClone). + + A shallow clone of the element. + + + + Creates a deep clone of the element (see also Clone). + + A deep clone of the element. + + + + Compares this BsonElement to another BsonElement. + + The other BsonElement. + A 32-bit signed integer that indicates whether this BsonElement is less than, equal to, or greather than the other. + + + + Compares this BsonElement to another BsonElement. + + The other BsonElement. + True if the two BsonElement values are equal. + + + + Compares this BsonElement to another object. + + The other object. + True if the other object is a BsonElement and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON ObjectId value (see also ObjectId). + + + + + Initializes a new instance of the BsonObjectId class. + + The value. + + + + Initializes a new instance of the BsonObjectId class. + + The bytes. + + + + Initializes a new instance of the BsonObjectId class. + + The timestamp (expressed as a DateTime). + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the BsonObjectId class. + + The timestamp. + The machine hash. + The PID. + The increment. + + + + Initializes a new instance of the BsonObjectId class. + + The value. + + + + Gets an instance of BsonObjectId where the value is empty. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the timestamp. + + + + + Gets the machine. + + + + + Gets the PID. + + + + + Gets the increment. + + + + + Gets the creation time (derived from the timestamp). + + + + + Gets the BsonObjectId as an ObjectId. + + + + + Gets the value of this BsonObjectId. + + + + + Converts an ObjectId to a BsonObjectId. + + An ObjectId. + A BsonObjectId. + + + + Compares two BsonObjectId values. + + The first BsonObjectId. + The other BsonObjectId. + True if the two BsonObjectId values are not equal according to ==. + + + + Compares two BsonObjectId values. + + The first BsonObjectId. + The other BsonObjectId. + True if the two BsonObjectId values are equal according to ==. + + + + Creates a new BsonObjectId. + + An object to be mapped to a BsonObjectId. + A BsonObjectId or null. + + + + Generates a new BsonObjectId with a unique value. + + A BsonObjectId. + + + + Generates a new BsonObjectId with a unique value (with the timestamp component based on a given DateTime). + + The timestamp component (expressed as a DateTime). + A BsonObjectId. + + + + Generates a new BsonObjectId with a unique value (with the given timestamp). + + The timestamp component. + A BsonObjectId. + + + + Parses a string and creates a new BsonObjectId. + + The string value. + A BsonObjectId. + + + + Tries to parse a string and create a new BsonObjectId. + + The string value. + The new BsonObjectId. + True if the string was parsed successfully. + + + + Compares this BsonObjectId to another BsonObjectId. + + The other BsonObjectId. + A 32-bit signed integer that indicates whether this BsonObjectId is less than, equal to, or greather than the other. + + + + Compares the BsonObjectId to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonObjectId is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonObjectId to another BsonObjectId. + + The other BsonObjectId. + True if the two BsonObjectId values are equal. + + + + Compares this BsonObjectId to another object. + + The other object. + True if the other object is a BsonObjectId and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts the BsonObjectId to a byte array. + + A byte array. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + + + + Represents a BSON regular expression value. + + + + + Initializes a new instance of the BsonRegularExpression class. + + A regular expression pattern. + + + + Initializes a new instance of the BsonRegularExpression class. + + A regular expression pattern. + Regular expression options. + + + + Initializes a new instance of the BsonRegularExpression class. + + A Regex. + + + + Gets the BsonType of this BsonValue. + + + + + Gets the regular expression pattern. + + + + + Gets the regular expression options. + + + + + Converts a Regex to a BsonRegularExpression. + + A Regex. + A BsonRegularExpression. + + + + Converts a string to a BsonRegularExpression. + + A string. + A BsonRegularExpression. + + + + Compares two BsonRegularExpression values. + + The first BsonRegularExpression. + The other BsonRegularExpression. + True if the two BsonRegularExpression values are not equal according to ==. + + + + Compares two BsonRegularExpression values. + + The first BsonRegularExpression. + The other BsonRegularExpression. + True if the two BsonRegularExpression values are equal according to ==. + + + + Creates a new BsonRegularExpression. + + An object to be mapped to a BsonRegularExpression. + A BsonRegularExpression or null. + + + + Compares this BsonRegularExpression to another BsonRegularExpression. + + The other BsonRegularExpression. + A 32-bit signed integer that indicates whether this BsonRegularExpression is less than, equal to, or greather than the other. + + + + Compares the BsonRegularExpression to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonRegularExpression is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonRegularExpression to another BsonRegularExpression. + + The other BsonRegularExpression. + True if the two BsonRegularExpression values are equal. + + + + Compares this BsonRegularExpression to another object. + + The other object. + True if the other object is a BsonRegularExpression and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Converts the BsonRegularExpression to a Regex. + + A Regex. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a BSON symbol value. + + + + + Gets the BsonType of this BsonValue. + + + + + Gets the name of the symbol. + + + + + Converts a string to a BsonSymbol. + + A string. + A BsonSymbol. + + + + Compares two BsonSymbol values. + + The first BsonSymbol. + The other BsonSymbol. + True if the two BsonSymbol values are not equal according to ==. + + + + Compares two BsonSymbol values. + + The first BsonSymbol. + The other BsonSymbol. + True if the two BsonSymbol values are equal according to ==. + + + + Creates a new BsonSymbol. + + An object to be mapped to a BsonSymbol. + A BsonSymbol or null. + + + + Compares this BsonSymbol to another BsonSymbol. + + The other BsonSymbol. + A 32-bit signed integer that indicates whether this BsonSymbol is less than, equal to, or greather than the other. + + + + Compares the BsonSymbol to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonSymbol is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonSymbol to another BsonSymbol. + + The other BsonSymbol. + True if the two BsonSymbol values are equal. + + + + Compares this BsonSymbol to another object. + + The other object. + True if the other object is a BsonSymbol and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents the BSON MaxKey value. + + + + + Compares two BsonMaxKey values. + + The first BsonMaxKey. + The other BsonMaxKey. + True if the two BsonMaxKey values are not equal according to ==. + + + + Compares two BsonMaxKey values. + + The first BsonMaxKey. + The other BsonMaxKey. + True if the two BsonMaxKey values are equal according to ==. + + + + Gets the singleton instance of BsonMaxKey. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonMaxKey to another BsonMaxKey. + + The other BsonMaxKey. + A 32-bit signed integer that indicates whether this BsonMaxKey is less than, equal to, or greather than the other. + + + + Compares the BsonMaxKey to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonMaxKey is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonMaxKey to another BsonMaxKey. + + The other BsonMaxKey. + True if the two BsonMaxKey values are equal. + + + + Compares this BsonMaxKey to another object. + + The other object. + True if the other object is a BsonMaxKey and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents the BSON MinKey value. + + + + + Compares two BsonMinKey values. + + The first BsonMinKey. + The other BsonMinKey. + True if the two BsonMinKey values are not equal according to ==. + + + + Compares two BsonMinKey values. + + The first BsonMinKey. + The other BsonMinKey. + True if the two BsonMinKey values are equal according to ==. + + + + Gets the singleton instance of BsonMinKey. + + + + + Gets the BsonType of this BsonValue. + + + + + Compares this BsonMinKey to another BsonMinKey. + + The other BsonMinKey. + A 32-bit signed integer that indicates whether this BsonMinKey is less than, equal to, or greather than the other. + + + + Compares the BsonMinKey to another BsonValue. + + The other BsonValue. + A 32-bit signed integer that indicates whether this BsonMinKey is less than, equal to, or greather than the other BsonValue. + + + + Compares this BsonMinKey to another BsonMinKey. + + The other BsonMinKey. + True if the two BsonMinKey values are equal. + + + + Compares this BsonMinKey to another object. + + The other object. + True if the other object is a BsonMinKey and equal to this one. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.Core.dll b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.Core.dll new file mode 100644 index 0000000000000000000000000000000000000000..df0de92df388c412584d844b6a42dfb51c587362 GIT binary patch literal 763392 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 z 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 + + + MongoDB.Driver.Core + + + + + Change stream FullDocument option. + + + + + Do not return the full document. + + + + + The change stream for partial updates will include both a delta describing the + changes to the document as well as a copy of the entire document that was + changed from some time after the change occurred. + + + + + The operation type of a change stream result. + + + + + An insert operation type. + + + + + An update operation type. + + + + + A replace operation type. + + + + + A delete operation type. + + + + + An invalidate operation type. + + + + + A serializer for ChangeStreamOperationType values. + + + + + Gets a ChangeStreamOperationTypeSerializer. + + + A ChangeStreamOperationTypeSerializer. + + + + + + + + + + + An output document from a $changeStream pipeline stage. + + The type of the document. + + + + Initializes a new instance of the class. + + The backing document. + The document serializer. + + + + Gets the backing document. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Gets the namespace of the collection. + + + The namespace of the collection. + + + + + Gets the document key. + + + The document key. + + + + + Gets the full document. + + + The full document. + + + + + Gets the type of the operation. + + + The type of the operation. + + + + + Gets the resume token. + + + The resume token. + + + + + Gets the update description. + + + The update description. + + + + + A serializer for ChangeStreamDocument instances. + + The type of the document. + + + + Initializes a new instance of the class. + + The document serializer. + + + + + + + An UpdateDescription in a ChangeStreamDocument instance. + + + + + Initializes a new instance of the class. + + The updated fields. + The removed fields. + + + + Gets the removed fields. + + + The removed fields. + + + + + Gets the updated fields. + + + The updated fields. + + + + + + + + + + + A serialize for ChangeStreamUpdateDescription values. + + + + + Gets a ChangeStreamUpdateDescriptionSerializer. + + + A ChangeStreamUpdateDescriptionSerializer. + + + + + + + + + + + Controls whether spaces and punctuation are considered base characters. + + + + + Spaces and punctuation are considered base characters (the default). + + + + + Spaces and characters are not considered base characters, and are only distinguised at strength > 3. + + + + + Uppercase or lowercase first. + + + + + Off (the default). + + + + + Uppercase first. + + + + + Lowercase first. + + + + + Controls which characters are affected by alternate: "Shifted". + + + + + Punctuation and spaces are affected (the default). + + + + + Only spaces. + + + + + Prioritizes the comparison properties. + + + + + Primary. + + + + + Secondary. + + + + + Tertiary (the default). + + + + + Quaternary. + + + + + Identical. + + + + + Represents a MongoDB collation. + + + + + Gets the simple binary compare collation. + + + + + Creates a Collation instance from a BsonDocument. + + The document. + A Collation instance. + + + + Initializes a new instance of the class. + + The locale. + The case level. + The case that is ordered first. + The strength. + Whether numbers are ordered numerically. + The alternate. + The maximum variable. + The normalization. + Whether secondary differences are to be considered in reverse order. + + + + Gets whether spaces and punctuation are considered base characters. + + + + + Gets whether secondary differencs are to be considered in reverse order. + + + + + Gets whether upper case or lower case is ordered first. + + + + + Gets whether the collation is case sensitive at strength 1 and 2. + + + + + Gets the locale. + + + + + Gets which characters are affected by the alternate: "Shifted". + + + + + Gets the normalization. + + + + + Gets whether numbers are ordered numerically. + + + + + Gets the strength. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + + true if the current object is equal to the parameter; otherwise, false. + + + + + + + + + + + + + + + + + Creates a new Collation instance with some properties changed. + + The new locale. + The new case level. + The new case first. + The new strength. + The new numeric ordering. + The new alternate. + The new maximum variable. + The new normalization. + The new backwards. + A new Collation instance. + + + + The default authenticator. + If saslSupportedMechs is not present in the isMaster results for mechanism negotiation + uses SCRAM-SHA-1 when talking to servers >= 3.0. Prior to server 3.0, uses MONGODB-CR. + Else, uses SCRAM-SHA-256 if present in the list of mechanisms. Otherwise, uses + SCRAM-SHA-1 the default, regardless of whether SCRAM-SHA-1 is in the list. + + + + + Initializes a new instance of the class. + + The credential. + + + + + + + + + + + + + + + + A GSSAPI SASL authenticator. + + + + + Gets the name of the canonicalize host name property. + + + The name of the canonicalize host name property. + + + + + Gets the default service name. + + + The default service name. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Gets the name of the realm property. + + + The name of the realm property. + + + + + Gets the name of the service name property. + + + The name of the service name property. + + + + + Gets the name of the service realm property. + + + The name of the service realm property. + + + + + Initializes a new instance of the class. + + The credential. + The properties. + + + + Initializes a new instance of the class. + + The username. + The properties. + + + + + + + Per RFC5802: https://tools.ietf.org/html/rfc5802 + "SCRAM is a SASL mechanism whose client response and server challenge + messages are text-based messages containing one or more attribute- + value pairs separated by commas. Each attribute has a one-letter + name." + + + + + A SCRAM-SHA256 SASL authenticator. + In .NET Standard, this class does not normalize the password in the credentials, so non-ASCII + passwords may not work unless they are normalized into Unicode Normalization Form KC beforehand. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + In .NET Standard, this class does not normalize the password in , so non-ASCII + passwords may not work unless they are normalized into Unicode Normalization Form KC beforehand. + + The credential. + + + + A SCRAM-SHA SASL authenticator. + + + + + An H function as defined in RFC5802. + + The data to hash. Also called "str" in RFC5802. + + + + A Hi function used to compute the SaltedPassword as defined in RFC5802, except with "str" parameter replaced + with a UsernamePassword credential so that the password can be optionally digested/prepped in a secure fashion + before being consumed as the "str" parameter would be in RFC5802's Hi. + + The credential to be digested/prepped before being consumed as the "str" + parameter would be in RFC5802's Hi + The salt. + The iteration count. + + + + An HMAC function as defined in RFC5802, plus the encoding of the data. + + The encoding of the data. + The data. Also called "str" in RFC5802. + The key. + + + + Initializes a new instance of the class. + + The credential. + The hash algorithm name. + The H function to use. + The Hi function to use. + The Hmac function to use. + + + + Initializes a new instance of the class. + + The credential. + The hash algorithm name. + The random string generator. + The H function to use. + The Hi function to use. + The Hmac function to use. + + + + + + + SEC_WINNT_AUTH_IDENTITY + + + + + Flag for the AuthIdentity structure. + + + + + SEC_WINNT_AUTH_IDENTITY_ANSI + + + + + SEC_WINNT_AUTH_IDENTITY_UNICODE + + + + + Flags for InitiateSecurityContext. + + + See the TargetDataRep parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375507(v=vs.85).aspx + + + + + SECURITY_NETWORK_DREP + + + + + SECURITY_NATIVE_DREP + + + + + Flags for EncryptMessage. + + + See the fQOP parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375378(v=vs.85).aspx. + + + + + SECQOP_WRAP_NO_ENCRYPT + + + + + Creates an exception for the specified error code. + + The error code. + The default message. + + + + + Acquires the credentials handle. + + The principal. + The package. + The credential usage. + The logon id. + The identity. + The key callback. + The key argument. + The credential handle. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa374712(v=vs.85).aspx + + + + + Acquires the credentials handle. + + The principal. + The package. + The credential usage. + The logon id. + The identity. + The key callback. + The key argument. + The credential handle. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa374712(v=vs.85).aspx + + + + + Deletes the security context. + + The context. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375354(v=vs.85).aspx + + + + + Decrypts the message. + + The context. + The p message. + The sequence number. + The quality. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375211(v=vs.85).aspx + + + + + Encrypts the message. + + The context. + The quality. + The p message. + The sequence number. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375378(v=vs.85).aspx + + + + + Enumerates the security packages. + + The pc packages. + The pp package information. + A result code. + + http://msdn.microsoft.com/en-us/library/aa375397%28v=VS.85%29.aspx + + + + + Frees the context buffer. + + The context buffer. + A result code. + + http://msdn.microsoft.com/en-us/library/aa375416(v=vs.85).aspx + + + + + Frees the credentials handle. + + The sspi handle. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375417(v=vs.85).aspx + + + + + Initializes the security context. + + The credential handle. + The in context PTR. + Name of the target. + The flags. + The reserved1. + The data representation. + The input buffer. + The reserved2. + The out context handle. + The output buffer. + The out attributes. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375506(v=vs.85).aspx + + + + + Initializes the security context. + + The credential handle. + The in context handle. + Name of the target. + The flags. + The reserved1. + The data representation. + The input buffer. + The reserved2. + The out context. + The output buffer. + The out attributes. + The timestamp. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375506(v=vs.85).aspx + + + + + Queries the context attributes. + + The in context handle. + The attribute. + The sizes. + A result code. + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379326(v=vs.85).aspx + + + + + Flags for QueryContextAttributes. + + + See the ulAttribute parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379326(v=vs.85).aspx. + + + + + SECPKG_ATTR_SIZES + + + + + A SecBuffer structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379814(v=vs.85).aspx + + + + + A SecBufferDesc structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa379815(v=vs.85).aspx + + + + + To the byte array. + + + Object has already been disposed!!! + + + + Types for the SecurityBuffer structure. + + + + + SECBUFFER_VERSION + + + + + SECBUFFER_EMPTY + + + + + SECBUFFER_DATA + + + + + SECBUFFER_TOKEN + + + + + SECBUFFER_PADDING + + + + + SECBUFFER_STREAM + + + + + A wrapper around the SspiHandle structure specifically used as a security context handle. + + + + + A wrapper around the SspiHandle structure specifically used as a credential handle. + + + + + When overridden in a derived class, executes the code required to free the handle. + + + true if the handle is released successfully; otherwise, in the event of a catastrophic failure, false. In this case, it generates a releaseHandleFailed MDA Managed Debugging Assistant. + + + + + Flags for AcquireCredentialsHandle. + + + See the fCredentialUse at http://msdn.microsoft.com/en-us/library/windows/desktop/aa374712(v=vs.85).aspx. + + + + + SECPKG_CRED_OUTBOUND + + + + + A SecPkgContext_Sizes structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa380097(v=vs.85).aspx + + + + + A SecPkgInfo structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa380104(v=vs.85).aspx + + + + + Flags for InitiateSecurityContext. + + + See the fContextReq parameter at + http://msdn.microsoft.com/en-us/library/windows/desktop/aa375507(v=vs.85).aspx + + + + + ISC_REQ_MUTUAL_AUTH + + + + + ISC_REQ_CONFIDENTIALITY + + + + + ISC_REQ_INTEGRITY + + + + + A SecHandle structure. + + + http://msdn.microsoft.com/en-us/library/windows/desktop/aa380495(v=vs.85).aspx + + + + + Gets a value indicating whether this instance is zero. + + + true if this instance is zero; otherwise, false. + + + + + Sets to invalid. + + + + + This is represented as a string in AcquireCredentialsHandle. This value will have .ToString() called on it. + + + + + Kerberos + + + + + Thrown from a win32 wrapped operation. + + + + + Initializes a new instance of the class. + + The error code. + + + + Initializes a new instance of the class. + + The error code. + The message. + + + + Initializes a new instance of the class. + + The info. + The context. + + + + Utility class for Sasl string preparation. + + + + + The string to canonicalise. + The canonicalised string. + + + + Return the SASLPrep-canonicalised version of the given for use as a stored string. + This implements the SASLPrep algorithm defined in RFC 4013. + See RFC 3454, Section 7 for discussion of what a + stored string is. + String normalization step in the .NET Standard version of the driver is skipped due to a lack of a string + normalization function. + + The string to canonicalise. + The canonicalised string. + + + + Return true if the given is an ASCII control character as defined by + RFC 3454, Appendix C.2.1. + + The character. + Whether the given character is an ASCII control character. + + + + Return true if the given is a "change display properties" or a deprecated + character as defined by RFC 3454, Appendix C.8. + + The Unicode character's codepoint. + Whether the codepoint is a "change display properties" or a deprecated character. + + + + Returns the number of characters required to represent a specified Unicode character. + + The Unicode character's codepoint. + Number of characters required to represent a specified Unicode character. + + + + Return true if the given is inappropriate for canonical representation + characters as defined by RFC 3454, Appendix C.7. + + The Unicode character's codepoint. + + + + + Return true if the given is inappropriate for plain text characters as defined + by RFC 3454, Appendix C.6. + + The Unicode character's codepoint. + + + + + Returns whether or not a Unicode character represented by a codepoint is defined in Unicode. + A character is considered to be defined if its Unicode designation is "Cn" (other, not assigned) OR if it is + part of a surrogate pair. + + The Unicode character's codepoint. + Whether or not the Unicode character represnted by codepoint is defined in Unicode. + + + + Returns whether or not a Unicode character represented by a codepoint is an "LCat" character. + See RFC 3454: Section 6 and + RFC 3454: Appendix D.2 for more details. + + The Unicode character's codepoint. + Whether or not the character is an "LCat" character. + + + + Returns whether or not a Unicode character represented by a codepoint is an "RandALCat" character. + See RFC 3454: Section 6 and + RFC 3454: Appendix D.1 for more details. + + The Unicode character's codepoint. + Whether or not the character is an "RandALCat" character. + + + + Return true if the given is a "commonly mapped to nothing" character as defined by + RFC 3454, Appendix B.1. + + The character. + Whether the given character is a "commonly mapped to nothing" character. + + + + Return true if the given is a non-ASCII control character as defined by + RFC 3454, Appendix C.2.2. + + The Unicode character's codepoint. + Whether the given character is a non-ASCII control character. + + + + Return true if the given is a non-ASCII space character as defined by + RFC 3454, Appendix C.1.2. + + The character. + Whether the given character is a non-ASCII space character. + + + + Return true if the given is a non-character code point as defined by + RFC 3454, Appendix C.4. + + The Unicode character's codepoint. + Whether the given is a non-character code point. + + + + Return true if the given is a private use character as defined by + RFC 3454, Appendix C.3. + + The Unicode character's codepoint. + Whether if the given codepoint is a private use character. + + + + Return true if the given is a prohibited character as defined by + RFC 4013, Section 2.3. + + The Unicode character's codepoint. + Whether the codepoint is a prohibited character. + + + + Return true if the given is a surrogate code point as defined by + RFC 3454, Appendix C.5. + + The Unicode character's codepoint. + Whether the given is a surrogate code point. + + + + Return true if the given is a tagging character as defined by + RFC 3454, Appendix C.9. + + The Unicode character's codepoint. + + + + + Specifies the name of a cryptographic hash algorithm. + + + Asymmetric Algorithms implemented using Microsoft's CNG (Cryptography Next Generation) API + will interpret the underlying string value as a CNG algorithm identifier: + * https://msdn.microsoft.com/en-us/library/windows/desktop/aa375534(v=vs.85).aspx + + As with CNG, the names are case-sensitive. + + Asymmetric Algorithms implemented using other technologies: + * Must recognize at least "MD5", "SHA1", "SHA256", "SHA384", and "SHA512". + * Should recognize additional CNG IDs for any other hash algorithms that they also support. + + + + + Gets a representing "MD5" + + + + + Gets a representing "SHA1" + + + + + Gets a representing "SHA256" + + + + + Gets a representing "SHA384" + + + + + Gets a representing "SHA512" + + + + + Gets a representing a custom name. + + The custom hash algorithm name. + + + + Gets the underlying string representation of the algorithm name. + + + May be null or empty to indicate that no hash algorithm is applicable. + + + + + + + + + + + + + + + + + Implements the operator ==. + + The left operand. + The right operand. + + The result of the == operator. + + + + + Implements the operator !=. + + The left operand. + The right operand. + + The result of the != operator. + + + + + A MongoDB-X509 authenticator. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The username. + + + + + + + + + + + + + + + + A PLAIN SASL authenticator. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The credential. + + + + + + + Base class for a SASL authenticator. + + + + + Initializes a new instance of the class. + + The mechanism. + + + + + + + Gets the name of the database. + + + The name of the database. + + + + + + + + + + + + + + Represents a SASL conversation. + + + + + Initializes a new instance of the class. + + The connection identifier. + + + + Gets the connection identifier. + + + The connection identifier. + + + + + + + + Registers the item for disposal. + + The disposable item. + + + + Represents a SASL mechanism. + + + + + Gets the name of the mechanism. + + + The name. + + + + + Initializes the mechanism. + + The connection. + The SASL conversation. + The connection description. + The initial SASL step. + + + + Represents a SASL step. + + + + + Gets the bytes to send to server. + + + The bytes to send to server. + + + + + Gets a value indicating whether this instance is complete. + + + true if this instance is complete; otherwise, false. + + + + + Transitions the SASL conversation to the next step. + + The SASL conversation. + The bytes received from server. + The next SASL step. + + + + Represents a completed SASL step. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The bytes to send to server. + + + + + + + + + + + + + A SCRAM-SHA1 SASL authenticator. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The credential. + + + + Represents a username/password credential. + + + + + Initializes a new instance of the class. + + The source. + The username. + The password. + + + + Initializes a new instance of the class. + Less secure when used in conjunction with SCRAM-SHA-256, due to the need to store the password in a managed + string in order to SaslPrep it. + See Driver Authentication: SCRAM-SHA-256 + for additional details. + + The source. + The username. + The password. + + + + Gets the password. + + + The password. + + + + + Gets the the SASLprepped password. + May create a cleartext copy of the password in managed memory the first time it is accessed. + Use only as needed e.g. for SCRAM-SHA-256. + + The SASLprepped password. + + + + Gets the source. + + + The source. + + + + + Gets the username. + + + The username. + + + + + Gets the password (converts the password from a SecureString to a regular string). + + The password. + + + + Represents a connection authenticator. + + + + + Gets the name of the authenticator. + + + The name. + + + + + Authenticates the connection. + + The connection. + The connection description. + The cancellation token. + + + + Authenticates the connection. + + The connection. + The connection description. + The cancellation token. + A Task. + + + + Optionally customizes isMaster command. + + Initial isMaster command. + Optionally mutated isMaster command. + + + + A MONGODB-CR authenticator. + This authenticator was replaced by in MongoDB 3.0, and is now deprecated. + + + + + Gets the name of the mechanism. + + + The name of the mechanism. + + + + + Initializes a new instance of the class. + + The credential. + + + + + + + + + + + + + + + + Represents a read binding that is bound to a channel. + + + + + Initializes a new instance of the class. + + The server. + The channel. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + Represents a read-write binding that is bound to a channel. + + + + + Initializes a new instance of the class. + + The server. + The channel. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a read-write binding to a channel source. + + + + + Initializes a new instance of the class. + + The channel source. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a session. + + + + + + Initializes a new instance of the class. + + The cluster. + The server session. + The options. + + + + Gets the cluster. + + + The cluster. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A handle to a reference counted core session. + + + + + + Initializes a new instance of the class. + + The session. + + + + Initializes a new instance of the class. + + The wrapped. + + + + + + + + + + Core session options. + + + + + Initializes a new instance of the class. + + if set to true this session is causally consistent] + if set to true this session is an implicit session. + The default transaction options. + + + + Gets the default transaction options. + + + The default transaction options. + + + + + Gets a value indicating whether this session is causally consistent. + + + true if this session is causally consistent; otherwise, false. + + + + + Gets a value indicating whether this session is an implicit session. + + + true if this session is an implicit session; otherwise, false. + + + + + Represents the current state of a Core transaction. + + + + + StartTransaction has been called but no operations have been performed yet. + + + + + The transaction is in progress. + + + + + CommitTransaction has been called. + + + + + AbortTransaction has been called. + + + + + The interface for a session in Core. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Gets the current transaction. + + + The current transaction. + + + + + Gets the session Id. + + + The session Id. + + + + + Gets a value indicate whether this instance is causally consistent. + + + true if the session is causally consistent. + + + + + Gets a value indicating whether this instance is implicit session. + + + true if this instance is implicit session; otherwise, false. + + + + + Gets a value indicating whether this instance is in a transaction. + + + true if this instance is in a transaction; otherwise, false. + + + + + Gets the operation time. + + + The operation time. + + + + + Gets the session options. + + + The session options. + + + + + Gets the server session. + + + The server session. + + + + + Aborts the transaction. + + The cancellation token. + + + + Aborts the transaction. + + The cancellation token. + A Task. + + + + The driver is about to send a command on this session. Called to track session state. + + + + + Advances the cluster time. + + The new cluster time. + + + + Advances the operation time. + + The new operation time. + + + + Advances the transaction id. + + The transaction id. + + + + Commits the transaction. + + The cancellation token. + + + + Commits the transaction. + + The cancellation token. + A Task. + + + + Starts a transaction. + + The transaction options. + + + + Called by the driver when the session is used (i.e. sent to the server). + + + + + A handle to a reference counted core session. + + + + + + Increments the reference count of the underlying session and returns a new handle to it. + + A new handle. + + + + An object that represents no core session. + + + + + + Gets the pre-created instance. + + + The instance. + + + + + Returns a new handle to a NoCoreSession object. + + A new handle to the NoCoreSession object. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A handle to a core session that should not be disposed when the handle is disposed. + + + + + + Initializes a new instance of the class. + + The wrapped session. + + + + + + + + + + A reference counted core session. + + + + + + Initializes a new instance of the class. + + The wrapped. + + + + Decrements the reference count. + + + + + Increments the reference count. + + + + + The state of a transaction. + + + + + Initializes a new instance of the class. + + The transaction number. + The transaction options. + + + + Gets a value indicating whether the transaction is empty. + + + true if the transaction is empty; otherwise, false. + + + + + Gets the transaction state. + + + The transaction state. + + + + + Gets the transaction number. + + + The transaction number. + + + + + Gets the transaction options. + + + The transaction options. + + + + + An abstract base class for a core session that wraps another core session. + + + + + + Initializes a new instance of the class. + + The wrapped. + if set to true [owns wrapped]. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Gets the wrapped session. + + + The wrapped session. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Determines whether this instance is disposed. + + + true if this instance is disposed; otherwise, false. + + + + + Throws if disposed. + + + + + + Represents a handle to a read-write binding. + + + + + Initializes a new instance of the class. + + The write binding. + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a handle to a read binding. + + + + + Initializes a new instance of the class. + + The read binding. + + + + + + + + + + + + + + + + + + + + + + Represents a read binding to a single server; + + + + + Initializes a new instance of the class. + + The server. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + Represents a read/write binding to a single server. + + + + + Initializes a new instance of the class. + + The server. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a split read-write binding, where the reads use one binding and the writes use another. + + + + + Initializes a new instance of the class. + + The read binding. + The write binding. + + + + Initializes a new instance of the class. + + The cluster. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a channel source. + + + + + Gets the server. + + + The server. + + + + + Gets the server description. + + + The server description. + + + + + Gets the session. + + + The session. + + + + + Gets a channel. + + The cancellation token. + A channel. + + + + Gets a channel. + + The cancellation token. + A Task whose result is a channel. + + + + Represents a handle to a channel source. + + + + + Returns a new handle to the underlying channel source. + + A handle to a channel source. + + + + Represents a channel (similar to a connection but operates at the level of protocols rather than messages). + + + + + Gets the connection description. + + + The connection description. + + + + + Executes a Command protocol. + + The type of the result. + The database namespace. + The command. + The command validator. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + The result of the Command protocol. + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command validator. + The additional options. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + + The result of the Command protocol. + + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command payloads. + The command validator. + The additional options. + The post write action. + The response handling. + The result serializer. + The message encoder settings. + The cancellation token. + + The result of the Command protocol. + + + + + Executes a Command protocol. + + The type of the result. + The database namespace. + The command. + The command validator. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + A Task whose result is the result of the Command protocol. + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command validator. + The additional options. + The response handling. + if set to true sets the SlaveOk bit to true in the command message sent to the server. + The result serializer. + The message encoder settings. + The cancellation token. + + A Task whose result is the result of the Command protocol. + + + + + Executes a Command protocol. + + The type of the result. + The session. + The read preference. + The database namespace. + The command. + The command payloads. + The command validator. + The additional options. + The post write action. + The response handling. + The result serializer. + The message encoder settings. + The cancellation token. + + A Task whose result is the result of the Command protocol. + + + + + Executes a Delete protocol. + + The collection namespace. + The query. + if set to true all matching documents are deleted. + The message encoder settings. + The write concern. + The cancellation token. + The result of the Delete protocol. + + + + Executes a Delete protocol. + + The collection namespace. + The query. + if set to true all matching documents are deleted. + The message encoder settings. + The write concern. + The cancellation token. + A Task whose result is the result of the Delete protocol. + + + + Executes a GetMore protocol. + + The type of the document. + The collection namespace. + The query. + The cursor identifier. + Size of the batch. + The serializer. + The message encoder settings. + The cancellation token. + The result of the GetMore protocol. + + + + Executes a GetMore protocol. + + The type of the document. + The collection namespace. + The query. + The cursor identifier. + Size of the batch. + The serializer. + The message encoder settings. + The cancellation token. + A Task whose result is the result of the GetMore protocol. + + + + Executes an Insert protocol. + + The type of the document. + The collection namespace. + The write concern. + The serializer. + The message encoder settings. + The document source. + The maximum batch count. + Maximum size of the message. + if set to true the server will continue with subsequent Inserts even if errors occur. + A delegate that determines whether to piggy-back a GetLastError messsage with the Insert message. + The cancellation token. + The result of the Insert protocol. + + + + Executes an Insert protocol. + + The type of the document. + The collection namespace. + The write concern. + The serializer. + The message encoder settings. + The document source. + The maximum batch count. + Maximum size of the message. + if set to true the server will continue with subsequent Inserts even if errors occur. + A delegate that determines whether to piggy-back a GetLastError messsage with the Insert message. + The cancellation token. + A Task whose result is the result of the Insert protocol. + + + + Executes a KillCursors protocol. + + The cursor ids. + The message encoder settings. + The cancellation token. + + + + Executes a KillCursors protocol. + + The cursor ids. + The message encoder settings. + The cancellation token. + A Task that represents the KillCursors protocol. + + + + Executes a Query protocol. + + The type of the document. + The collection namespace. + The query. + The fields. + The query validator. + The number of documents to skip. + The size of a batch. + if set to true sets the SlaveOk bit to true in the query message sent to the server. + if set to true the server is allowed to return partial results if any shards are unavailable. + if set to true the server will not timeout the cursor. + if set to true the OplogReplay bit will be set. + if set to true the query should return a tailable cursor. + if set to true the server should await awhile before returning an empty batch for a tailable cursor. + The serializer. + The message encoder settings. + The cancellation token. + The result of the Insert protocol. + + + + Executes a Query protocol. + + The type of the document. + The collection namespace. + The query. + The fields. + The query validator. + The number of documents to skip. + The size of a batch. + if set to true sets the SlaveOk bit to true in the query message sent to the server. + if set to true the server is allowed to return partial results if any shards are unavailable. + if set to true the server will not timeout the cursor. + if set to true the OplogReplay bit will be set. + if set to true the query should return a tailable cursor. + if set to true the server should await awhile before returning an empty batch for a tailable cursor. + The serializer. + The message encoder settings. + The cancellation token. + A Task whose result is the result of the Insert protocol. + + + + Executes an Update protocol. + + The collection namespace. + The message encoder settings. + The write concern. + The query. + The update. + The update validator. + if set to true the Update can affect multiple documents. + if set to true the document will be inserted if it is not found. + The cancellation token. + The result of the Update protocol. + + + + Executes an Update protocol. + + The collection namespace. + The message encoder settings. + The write concern. + The query. + The update. + The update validator. + if set to true the Update can affect multiple documents. + if set to true the document will be inserted if it is not found. + The cancellation token. + A Task whose result is the result of the Update protocol. + + + + Represents a handle to a channel. + + + + + Returns a new handle to the underlying channel. + + A channel handle. + + + + Represents a read binding to a cluster using a ReadPreference to select the server. + + + + + Initializes a new instance of the class. + + The cluster. + The read preference. + The session. + + + + + + + + + + + + + + + + + + + Represents a write binding to a writable server. + + + + + Initializes a new instance of the class. + + The cluster. + The session. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a handle to a channel source. + + + + + Initializes a new instance of the class. + + The channel source. + + + + + + + + + + + + + + + + + + + + + + + + + Represents a read or write binding associated with a session. + + + + + + Gets the session. + + + The session. + + + + + Represents a binding that determines which channel source gets used for read operations. + + + + + Gets the read preference. + + + The read preference. + + + + + Gets a channel source for read operations. + + The cancellation token. + A channel source. + + + + Gets a channel source for read operations. + + The cancellation token. + A channel source. + + + + Represents a binding that determines which channel source gets used for write operations. + + + + + Gets a channel source for write operations. + + The cancellation token. + A channel source. + + + + Gets a channel source for write operations. + + The cancellation token. + A channel source. + + + + Represents a binding that can be used for both read and write operations. + + + + + Represents a handle to a read binding. + + + + + Returns a new handle to the underlying read binding. + + A read binding handle. + + + + Represents a handle to a write binding. + + + + + Returns a new handle to the underlying write binding. + + A write binding handle. + + + + Represents a handle to a read-write binding. + + + + + Returns a new handle to the underlying read-write binding. + + A read-write binding handle. + + + + Represents a channel source that is bound to a server. + + + + + Initializes a new instance of the class. + + The server. + The session. + + + + + + + + + + + + + + + + + + + + + + Represents settings for SDAM logging. + + + + + Initializes a new instance of the class. + + The filename to log to. An empty string or null will disable logging. + "stdout" sneds output to stdout. + + + + The filename to log to. + + + + + Returns a new SdamLoggingSettings instance with some settings changed. + + The filename. + A new SdamLoggingSettings instance. + + + + Whether or not SDAM logging is enabled. + + + + + Whether or not logging should be written to stdout. + + + + + Represents settings for an SSL stream. + + + + + Initializes a new instance of the class. + + Whether to check for certificate revocation. + The client certificates. + The client certificate selection callback. + The enabled protocols. + The server certificate validation callback. + + + + Gets a value indicating whether to check for certificate revocation. + + + true if certificate should be checked for revocation; otherwise, false. + + + + + Gets the client certificates. + + + The client certificates. + + + + + Gets the client certificate selection callback. + + + The client certificate selection callback. + + + + + Gets the enabled SSL protocols. + + + The enabled SSL protocols. + + + + + Gets the server certificate validation callback. + + + The server certificate validation callback. + + + + + Returns a new SsslStreamSettings instance with some settings changed. + + Whether to check certificate revocation. + The client certificates. + The client certificate selection callback. + The enabled protocols. + The server certificate validation callback. + A new SsslStreamSettings instance. + + + + Represents settings for a cluster. + + + + + Initializes a new instance of the class. + + The connection mode. + The end points. + Maximum size of the server selection wait queue. + Name of the replica set. + The server selection timeout. + The pre server selector. + The post server selector. + + + + Gets the connection mode. + + + The connection mode. + + + + + Gets the end points. + + + The end points. + + + + + Gets the maximum size of the server selection wait queue. + + + The maximum size of the server selection wait queue. + + + + + Gets the name of the replica set. + + + The name of the replica set. + + + + + Gets the server selection timeout. + + + The server selection timeout. + + + + + Gets the pre server selector. + + + The pre server selector. + + + + + Gets the post server selector. + + + The post server selector. + + + + + Returns a new ClusterSettings instance with some settings changed. + + The connection mode. + The end points. + Maximum size of the server selection wait queue. + Name of the replica set. + The server selection timeout. + The pre server selector. + The post server selector. + A new ClusterSettings instance. + + + + Represents a cluster builder. + + + + + Initializes a new instance of the class. + + + + + Builds the cluster. + + A cluster. + + + + Configures the cluster settings. + + The cluster settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the connection settings. + + The connection settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the connection pool settings. + + The connection pool settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the SDAM logging settings. + + The SDAM logging settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the server settings. + + The server settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the SSL stream settings. + + The SSL stream settings configurator delegate. + A reconfigured cluster builder. + + + + Configures the TCP stream settings. + + The TCP stream settings configurator delegate. + A reconfigured cluster builder. + + + + Registers a stream factory wrapper. + + The stream factory wrapper. + A reconfigured cluster builder. + + + + Subscribes to events of type . + + The type of the event. + The handler. + A reconfigured cluster builder. + + + + Subscribes the specified subscriber. + + The subscriber. + A reconfigured cluster builder. + + + + Extension methods for a ClusterBuilder. + + + + + Configures a cluster builder from a connection string. + + The cluster builder. + The connection string. + A reconfigured cluster builder. + + + + Configures a cluster builder from a connection string. + + The cluster builder. + The connection string. + A reconfigured cluster builder. + + + + Configures the cluster to write performance counters. + + The cluster builder. + The name of the application. + if set to true install the performance counters first. + A reconfigured cluster builder. + + + + Configures the cluster to trace events to the specified . + + The builder. + The trace source. + A reconfigured cluster builder. + + + + Configures the cluster to trace command events to the specified . + + The builder. + The trace source. + A reconfigured cluster builder. + + + + Represents settings for a connection pool. + + + + + Initializes a new instance of the class. + + The maintenance interval. + The maximum number of connections. + The minimum number of connections. + Size of the wait queue. + The wait queue timeout. + + + + Gets the maintenance interval. + + + The maintenance interval. + + + + + Gets the maximum number of connections. + + + The maximum number of connections. + + + + + Gets the minimum number of connections. + + + The minimum number of connections. + + + + + Gets the size of the wait queue. + + + The size of the wait queue. + + + + + Gets the wait queue timeout. + + + The wait queue timeout. + + + + + Returns a new ConnectionPoolSettings instance with some settings changed. + + The maintenance interval. + The maximum connections. + The minimum connections. + Size of the wait queue. + The wait queue timeout. + A new ConnectionPoolSettings instance. + + + + Represents settings for a connection. + + + + + Initializes a new instance of the class. + + The authenticators. + The maximum idle time. + The maximum life time. + The application name. + + + + Gets the name of the application. + + + The name of the application. + + + + + Gets the authenticators. + + + The authenticators. + + + + + Gets the maximum idle time. + + + The maximum idle time. + + + + + Gets the maximum life time. + + + The maximum life time. + + + + + Returns a new ConnectionSettings instance with some settings changed. + + The authenticators. + The maximum idle time. + The maximum life time. + The application name. + A new ConnectionSettings instance. + + + + Represents settings for a TCP stream. + + + + + Initializes a new instance of the class. + + The address family. + The connect timeout. + The read timeout. + Size of the receive buffer. + Size of the send buffer. + The socket configurator. + The write timeout. + + + + Gets the address family. + + + The address family. + + + + + Gets the connect timeout. + + + The connect timeout. + + + + + Gets the read timeout. + + + The read timeout. + + + + + Gets the size of the receive buffer. + + + The size of the receive buffer. + + + + + Gets the size of the send buffer. + + + The size of the send buffer. + + + + + Gets the socket configurator. + + + The socket configurator. + + + + + Gets the write timeout. + + + The write timeout. + + + + + Returns a new TcpStreamSettings instance with some settings changed. + + The address family. + The connect timeout. + The read timeout. + Size of the receive buffer. + Size of the send buffer. + The socket configurator. + The write timeout. + A new TcpStreamSettings instance. + + + + Represents the scheme used to construct the connection string. + + + + + Mongodb scheme (mongodb://) + + + + + SRV scheme (mongodb+srv://) + + + + + Represents a connection string. + + + + + Initializes a new instance of the class. + + The connection string. + + + + Gets all the option names. + + + + + Gets all the unknown option names. + + + + + Gets the application name. + + + + + Gets the auth mechanism. + + + + + Gets the auth mechanism properties. + + + + + Gets the auth source. + + + + + Gets the connection mode. + + + + + Gets the connect timeout. + + + + + Gets the name of the database. + + + + + Gets the fsync value of the write concern. + + + + + Gets the heartbeat interval. + + + + + Gets the heartbeat timeout. + + + + + Gets the hosts. + + + + + Gets whether to use IPv6. + + + + + Gets the journal value of the write concern. + + + + + Gets the local threshold. + + + + + Gets the max idle time. + + + + + Gets the max life time. + + + + + Gets the max size of the connection pool. + + + + + Gets the max staleness. + + + + + Gets the min size of the connection pool. + + + + + Gets the password. + + + + + Gets the read concern level. + + + The read concern level. + + + + + Gets the read preference. + + + + + Gets the replica set name. + + + + + Gets the read preference tags. + + + + + Gets a value indicating whether or not to retry writes. + + + + + Gets the scheme. + + + + + Gets the server selection timeout. + + + + + Gets the socket timeout. + + + + + Gets whether to use SSL. + + + + + Gets whether to verify SSL certificates. + + + + + Gets the username. + + + + + Gets the UUID representation. + + + + + Gets the wait queue multiple. + + + + + Gets the wait queue size. + + + + + Gets the wait queue timeout. + + + + + Gets the w value of the write concern. + + + + + Gets the wtimeout value of the write concern. + + + + + Gets the option. + + The name. + The option with the specified name. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + A resolved ConnectionString. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + The cancellation token. + A resolved ConnectionString. + + + + + + + Represents settings for a server. + + + + + Gets the default heartbeat interval. + + + + + Gets the default heartbeat timeout. + + + + + Initializes a new instance of the class. + + The heartbeat interval. + The heartbeat timeout. + + + + Gets the heartbeat interval. + + + The heartbeat interval. + + + + + Gets the heartbeat timeout. + + + The heartbeat timeout. + + + + + Returns a new ServerSettings instance with some settings changed. + + The heartbeat interval. + The heartbeat timeout. + A new ServerSettings instance. + + + + Represents a connection identifier. + + + + + Initializes a new instance of the class. + + The server identifier. + + + + Initializes a new instance of the class. + + The server identifier. + The local value. + + + + Gets the server identifier. + + + The server identifier. + + + + + Gets the local value. + + + The local value. + + + + + Gets the server value. + + + The server value. + + + + + + + + + + + + + + Compares all fields of two ConnectionId instances (Equals ignores the ServerValue). + + The other ConnectionId. + True if both instances are equal. + + + + + + + Returns a new instance of ConnectionId with a new server value. + + The server value. + A ConnectionId. + + + + Represents a connection using the binary wire protocol over a binary stream. + + + + + Represents a factory of BinaryConnections. + + + + + Represents information describing a connection. + + + + + Initializes a new instance of the class. + + The connection identifier. + The issMaster result. + The buildInfo result. + + + + Gets the buildInfo result. + + + The buildInfo result. + + + + + Gets the connection identifier. + + + The connection identifier. + + + + + Gets the isMaster result. + + + The isMaster result. + + + + + Gets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the maximum size of a wire document. + + + The maximum size of a wire document. + + + + + Gets the server version. + + + The server version. + + + + + + + + + + + + + + Returns a new instance of ConnectionDescription with a different connection identifier. + + The value. + A connection description. + + + + Represents internal IConnection extension methods (used to easily access the IConnectionInternal methods). + + + + + Represents a connection initializer (opens and authenticates connections). + + + + + Represents a connection. + + + + + Gets the connection identifier. + + + The connection identifier. + + + + + Gets the connection description. + + + The connection description. + + + + + Gets the end point. + + + The end point. + + + + + Gets a value indicating whether this instance is expired. + + + true if this instance is expired; otherwise, false. + + + + + Gets the connection settings. + + + The connection settings. + + + + + Opens the connection. + + The cancellation token. + + + + Opens the connection. + + The cancellation token. + A Task. + + + + Receives a message. + + The id of the sent message for which a response is to be received. + The encoder selector. + The message encoder settings. + The cancellation token. + + The response message. + + + + + Receives a message. + + The id of the sent message for which a response is to be received. + The encoder selector. + The message encoder settings. + The cancellation token. + + A Task whose result is the response message. + + + + + Sends the messages. + + The messages. + The message encoder settings. + The cancellation token. + + + + Sends the messages. + + The messages. + The message encoder settings. + The cancellation token. + A Task. + + + + Represents a handle to a connection. + + + + + A new handle to the underlying connection. + + A connection handle. + + + + Represents a connection factory. + + + + + Creates the connection. + + The server identifier. + The end point. + A connection. + + + + Represents a stream factory. + + + + + Creates a stream. + + The end point. + The cancellation token. + A Stream. + + + + Creates a stream. + + The end point. + The cancellation token. + A Task whose result is the Stream. + + + + Represents a factory for a binary stream over a TCP/IP connection. + + + + + Represents the result of a buildInfo command. + + + + + Initializes a new instance of the class. + + The wrapped result document. + + + + Gets the server version. + + + The server version. + + + + + Gets the wrapped result document. + + + The wrapped result document. + + + + + + + + + + + + + + Represents the result of an isMaster command. + + + + + Initializes a new instance of the class. + + The wrapped result document. + + + + Gets the election identifier. + + + + + Get whether SaslSupportedMechs was part of the isMaster response. + + + Whether SaslSupportedMechs was part of the isMaster response. + + + + + Gets a value indicating whether this instance is an arbiter. + + + true if this instance is an arbiter; otherwise, false. + + + + + Gets a value indicating whether this instance is a replica set member. + + + true if this instance is a replica set member; otherwise, false. + + + + + Gets the last write timestamp. + + + The last write timestamp. + + + + + Gets the logical session timeout. + + + The logical session timeout. + + + + + Gets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the endpoint the server is claiming it is known as. + + + + + Get the SaslSupportedMechs. + + + The SaslSupportedMechs. Empty if saslSupportedMechs was an empty list or if saslSupportedMechs was not + included in the isMaster response. + + + + + Gets the type of the server. + + + The type of the server. + + + + + Gets the replica set tags. + + + The replica set tags. + + + + + Gets the maximum wire version. + + + The maximum wire version. + + + + + Gets the minimum wire version. + + + The minimum wire version. + + + + + Gets the wrapped result document. + + + The wrapped result document. + + + + + + + + + + + + + + Gets the replica set configuration. + + The replica set configuration. + + + + An event subscriber that writes SDAM events to a trace source. + + + + + Initializes a new instance of the class. + + The trace source. + + + + + + + An event subscriber that writes command events to a trace source. + + + + + Initializes a new instance of the class. + + The trace source. + + + + + + + An event subscriber that writes to a trace source. + + + + + Initializes a new instance of the class. + + The trace source. + + + + + + + + Represents an event subscriber that records certain events to Windows performance counters. + + + + + Installs the performance counters. + + + + + Initializes a new instance of the class. + + The name of the application. + + + + + + + + An informational event used for logging Server Discovery and Monitoring (SDAM) events. + + + + + Initializes a new instance of the struct. + + Function that creates the message to log. + + + + Initializes a new instance of the struct. + + The message to log. + + + + Gets the message. + + + + + + + + + Occurs before a server is selected. + + + + + Initializes a new instance of the struct. + + The cluster description. + The server selector. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the cluster description. + + + + + Gets the operation identifier. + + + + + Gets the server selector. + + + + + + Occurs after a server is selected. + + + + + Initializes a new instance of the struct. + + The cluster description. + The server selector. + The selected server. + The duration of time it took to select the server. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the cluster description. + + + + + Gets the duration of time it took to select the server. + + + + + Gets the operation identifier. + + + + + Gets the server selector. + + + + + Gets the selected server. + + + + + + Occurs when selecting a server fails. + + + + + Initializes a new instance of the struct. + + The cluster description. + The server selector. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the cluster description. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the server selector. + + + + + + Occurs when a cluster has changed. + + + + + Initializes a new instance of the struct. + + The old description. + The new description. + + + + Gets the cluster identifier. + + + + + Gets the old description. + + + + + Gets the new description. + + + + + + Occurs before a server is removed from the cluster. + + + + + Initializes a new instance of the struct. + + The server identifier. + The reason the server is being removed. + + + + Gets the cluster identifier. + + + + + Gets the reason the server is being removed. + + + + + Gets the server identifier. + + + + + + Occurs after a server has been removed from the cluster. + + + + + Initializes a new instance of the struct. + + The server identifier. + The reason. + The duration of time it took to remove the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to remove the server. + + + + + Gets the reason the server was removed. + + + + + Gets the server identifier. + + + + + + Occurs after a cluster is closed. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The duration of time it took to close the cluster. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to close the cluster. + + + + + + Occurs after a cluster is opened. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The cluster settings. + The duration of time it took to open the cluster. + + + + Gets the cluster identifier. + + + + + Gets the cluster settings. + + + + + Gets the duration of time it took to open the cluster. + + + + + + Occurs after a server is added to the cluster. + + + + + Initializes a new instance of the struct. + + The server identifier. + The duration of time it took to add the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to add a server, + + + + + Gets the server identifier. + + + + + + Occurs before a server is added to the cluster. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The end point. + + + + Gets the cluster identifier. + + + + + Gets the end point. + + + + + + Occurs before a cluster is opened. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + The cluster settings. + + + + Gets the cluster identifier. + + + + + Gets the cluster settings. + + + + + + Occurs before a cluster is closed. + + + + + Initializes a new instance of the struct. + + The cluster identifier. + + + + Gets the cluster identifier. + + + + + Occurs when a command has failed. + + + + + Initializes a new instance of the struct. + + Name of the command. + The exception. + The operation identifier. + The request identifier. + The connection identifier. + The duration. + + + + Gets the name of the command. + + + + + Gets the connection identifier. + + + + + Gets the duration. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the request identifier. + + + + + Occurs when a command has succeeded. + + + + + Initializes a new instance of the struct. + + Name of the command. + The reply. + The operation identifier. + The request identifier. + The connection identifier. + The duration. + + + + Gets the name of the command. + + + + + Gets the connection identifier. + + + + + Gets the duration. + + + + + Gets the operation identifier. + + + + + Gets the reply. + + + + + Gets the request identifier. + + + + + Occurs when a command has started. + + + + + Initializes a new instance of the class. + + Name of the command. + The command. + The database namespace. + The operation identifier. + The request identifier. + The connection identifier. + + + + Gets the command. + + + + + Gets the name of the command. + + + + + Gets the connection identifier. + + + + + Gets the database namespace. + + + + + Gets the operation identifier. + + + + + Gets the request identifier. + + + + + + Occurs after a connection is closed. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to close the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to close the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is closed. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is opened. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The connection settings. + The duration of time it took to open the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the connection settings. + + + + + Gets the duration of time it took to open the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is opened. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The connection settings. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the connection settings. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs when a connection fails to open. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The connection settings. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the connection settings. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + Occurs after a message is received. + + + + + + Initializes a new instance of the struct. + + The connection identifier. + The id of the message we received a response to. + The length of the received message. + The duration of network time it took to receive the message. + The duration of deserialization time it took to receive the message. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to receive the message. + + + + + Gets the duration of deserialization time it took to receive the message. + + + + + Gets the duration of network time it took to receive the message. + + + + + Gets the length of the received message. + + + + + Gets the operation identifier. + + + + + Gets the id of the message we received a response to. + + + + + Gets the server identifier. + + + + + + Occurs before a message is received. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The id of the message we are receiving a response to. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the id of the message we are receiving a response to. + + + + + Gets the server identifier. + + + + + + Occurs when a message was unable to be received. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The id of the message we were receiving a response to. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets id of the message we were receiving a response to. + + + + + Gets the server identifier. + + + + + + Occurs before a message is sent. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The request ids. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the request ids. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs when a message could not be sent. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The request ids. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the request ids. + + + + + Gets the server identifier. + + + + + + Occurs after a message has been sent. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The request ids. + The length. + The duration of time spent on the network. + The duration of time spent serializing the messages. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to send the message. + + + + + Gets the duration of time spent on the network. + + + + + Gets the operation identifier. + + + + + Gets the duration of time spent serializing the messages. + + + + + Gets the combined length of the messages. + + + + + Gets the request ids. + + + + + Gets the server identifier. + + + + + A subscriber to events. + + + + + Tries to get an event handler for an event of type . + + The type of the event. + The handler. + true if this subscriber has provided an event handler; otherwise false. + + + + Subscribes methods with a single argument to events + of that single argument's type. + + + + + Initializes a new instance of the class. + + The instance. + Name of the method to match against. + The binding flags. + + + + + + + + Occurs after a server is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + The duration of time it took to close the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to close the server. + + + + + Gets the server identifier. + + + + + + Occurs after a server's description has changed. + + + + + Initializes a new instance of the struct. + + The old description. + The new description. + + + + Gets the cluster identifier. + + + + + Gets the new description. + + + + + Gets the old description. + + + + + Gets the server identifier. + + + + + + Occurs when a heartbeat failed. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The exception. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + + + Gets the server identifier. + + + + + + Occurs after a server is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The server settings. + The duration of time it took to open the server. + + + + Gets the cluster identifier. + + + + + Gets the duration of time it took to open the server. + + + + + Gets the server identifier. + + + + + Gets the server settings. + + + + + + Occurs before heartbeat is issued. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to complete the heartbeat. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to complete the heartbeat. + + + + + Gets the server identifier. + + + + + + Occurs when a heartbeat succeeded. + + + + + Initializes a new instance of the struct. + + The connection identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a server is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The server settings. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + Gets the server settings. + + + + + + Occurs before a server is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is checked in to the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to check in the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to check in the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is checked out of the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to check out the connection. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to check out the connection. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is checked in to the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is checking out of the pool. + + + + + Initializes a new instance of the struct. + + The server identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs when a connection could not be checked out of the pool. + + + + + Initializes a new instance of the struct. + + The server identifier. + The exception. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the exception. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is removed from the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is removed from the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to remove the connection from the pool. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to remove the connection from the pool. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs after the pool is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The connection pool settings. + + + + Gets the cluster identifier. + + + + + Gets the connection pool settings. + + + + + Gets the server identifier. + + + + + + Occurs after the pool is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + + Occurs after a connection is added to the pool. + + + + + Initializes a new instance of the struct. + + The connection identifier. + The duration of time it took to add the connection to the pool. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the duration of time it took to add the server to the pool. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before a connection is added to the pool. + + + + + Initializes a new instance of the struct. + + The server identifier. + The operation identifier. + + + + Gets the cluster identifier. + + + + + Gets the operation identifier. + + + + + Gets the server identifier. + + + + + + Occurs before the pool is closed. + + + + + Initializes a new instance of the struct. + + The server identifier. + + + + Gets the cluster identifier. + + + + + Gets the server identifier. + + + + + + Occurs before the pool is opened. + + + + + Initializes a new instance of the struct. + + The server identifier. + The connection pool settings. + + + + Gets the cluster identifier. + + + + + Gets the connection pool settings. + + + + + Gets the server identifier. + + + + + Occurs when a connection fails. + + + + + + Initializes a new instance of the struct. + + The connection identifier. + The exception. + + + + Gets the cluster identifier. + + + + + Gets the connection identifier. + + + + + Gets the exception. + + + The exception. + + + + + Gets the server identifier. + + + + + Subscriber for a single type of event. + + The type of the single event. + + + + Initializes a new instance of the class. + + The handler. + + + + + + + Represents the arrayFilters feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Throws if arrayFilters value is not null and arrayFilters are not supported. + + The server version. + The value. + + + + Represents the collation feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Throws if collation value is not null and collations are not supported. + + The server version. + The value. + + + + Represents the commands that write accept write concern concern feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Returns true if the write concern value supplied is one that should be sent to the server and the server version supports the commands that write accept write concern feature. + + The server version. + The write concern value. + Whether the write concern should be sent to the server. + + + + Represents a feature that is not supported by all versions of the server. + + + + + Gets the aggregate feature. + + + + + Gets the aggregate allow disk use feature. + + + + + Gets the aggregate bucket stage feature. + + + + + Gets the aggregate comment feature. + + + + + Gets the aggregate count stage feature. + + + + + Gets the aggregate cursor result feature. + + + + + Gets the aggregate explain feature. + + + + + Gets the aggregate $facet stage feature. + + + + + Gets the aggregate $graphLookup stage feature. + + + + + Gets the aggregate hint feature. + + + + + Gets the aggregate out feature. + + + + + Gets the arrayFilters feature. + + + + + Gets the bypass document validation feature. + + + + + Gets the aggregate $changeStream stage feature. + + + + + Gets the collation feature. + + + + + Gets the command message feature. + + + + + Gets the commands that write accept write concern feature. + + + + + Gets the create indexes command feature. + + + + + Gets the current op command feature. + + + + + Gets the document validation feature. + + + + + Gets the explain command feature. + + + + + Gets the fail points feature. + + + + + Gets the find and modify write concern feature. + + + + + Gets the find command feature. + + + + + Gets the geoNear command feature. + + + + + Gets the group command feature. + + + + + Gets the index options defaults feature. + + + + + Gets the list databases filter feature. + + + + + Get the list databases nameOnly feature. + + + + + Gets the list collections command feature. + + + + + Gets the list indexes command feature. + + + + + Gets the maximum staleness feature. + + + + + Gets the maximum time feature. + + + + + Gets the partial indexes feature. + + + + + Gets the read concern feature. + + + + + Gets the scram sha1 authentication feature. + + + + + Gets the scram sha256 authentication feature. + + + + + Gets the server extracts username from X509 certificate feature. + + + + + Gets the transactions feature. + + + + + Gets the user management commands feature. + + + + + Gets the views feature. + + + + + Gets the write commands feature. + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + /// The server version that stops support the feature. + + + + Gets the name of the feature. + + + + + Gets the first server version that supports the feature. + + + + + Gets the last server version that does not support the feature. + + + + + Determines whether a feature is supported by a version of the server. + + The server version. + Whether a feature is supported by a version of the server. + + + + Returns a version of the server where the feature is or is not supported. + + Whether the feature is supported or not. + A version of the server where the feature is or is not supported. + + + + Throws if the feature is not supported by a version of the server. + + The server version. + + + + A serializer for BatchableSource that serializes a fixed count of items. + + The type of the items. + + + + Initializes a new instance of the class. + + The item serializer. + The item element name validator. + The count. + + + + + + + Represents a batch of items that can be split if not all items can be processed at once. + + The type of the items. + + + + Gets a value indicating whether all items were processed. + + + true if all items were processed; otherwise, false. + + + + + Gets a value indicating whether the batch can be split. + + + true if the batch can be split; otherwise, false. + + + + + Gets the count. + + + The count. + + + + + Gets the items. + + + The items. + + + + + Gets the offset. + + + The offset. + + + + + Gets the count of processed items. Equal to zero until SetProcessedCount has been called. + + + The count of processed items. + + + + + Advances past the processed items. + + + + + Gets the items in the batch. + + + The items in the batch. + + + + + Gets the items that were processed. + + + The items that were processed. + + + + + Gets the items that were not processed. + + + The items that were not processed. + + + + + Sets the processed count. + + The value. + + + + Represents the read concern feature. + + + + + + Initializes a new instance of the class. + + The name of the feature. + The first server version that supports the feature. + + + + Throws if the read concern value is not the server default and read concern is not supported. + + The server version. + The value. + + + + A serializer for BatchableSource that serializes as much of the BatchableSource as fits in the max batch count and size. + + The type of the items. + + + + Initializes a new instance of the class. + + The item serializer. + The item element name validator. + The maximum batch count. + The maximum size of a serialized item. + The maximum size of the batch. + + + + + + + A mapper from error responses to custom exceptions. + + + + + Maps the specified response to a custom exception (if possible). + + The connection identifier. + The response. + + The custom exception (or null if the response could not be mapped to a custom exception). + + + + + Maps the specified writeConcernResult to a custom exception (if necessary). + + The connection identifier. + The write concern result. + + The custom exception (or null if the writeConcernResult was not mapped to an exception). + + + + + Maps the server response to a MongoNotPrimaryException or MongoNodeIsRecoveringException (if appropriate). + + The connection identifier. + The command. + The server response. + Name of the error message field. + The exception, or null if no exception necessary. + + + + Represents a tentative request to acquire a SemaphoreSlim. + + + + + Initializes a new instance of the class. + + The semaphore. + The cancellation token. + + + + Gets the semaphore wait task. + + + The semaphore wait task. + + + + + + + + Represents a batch of items that can be split if not all items can be processed at once. + + The type of the items. + + + + Initializes a new instance of the class. + + + Use this overload when you know the batch is small and won't have to be broken up into sub-batches. + In that case using this overload is simpler than using an enumerator and using the other constructor. + + The single batch. + + + + Initializes a new instance of the class. + + The enumerator that will provide the items for the batch. + + + + Initializes a new instance of the class. + + The items. + if set to true the batch can be split. + + + + Initializes a new instance of the class. + + The items. + The offset. + The count. + if set to true the batch can be split. + + + + Gets a value indicating whether all items were processed. + + + true if all items were processed; otherwise, false. + + + + + Gets a value indicating whether the batch can be split. + + + true if the batch can be split; otherwise, false. + + + + + Gets the count. + + + The count. + + + + + Gets the items. + + + The items. + + + + + Gets the offset. + + + The offset. + + + + + Gets the count of processed items. Equal to zero until SetProcessedCount has been called. + + + The count of processed items. + + + + + Advances past the processed items. + + + + + Gets the items in the batch. + + + The items in the batch. + + + + + Gets the items that were processed. + + + The items that were processed. + + + + + Gets the items that were not processed. + + + The items that were not processed. + + + + + Sets the processed count. + + The value. + + + + Represents a range between a minimum and a maximum value. + + The type of the value. + + + + Initializes a new instance of the class. + + The minimum value. + The maximum value. + + + + Gets the maximum value. + + + The maximum value. + + + + + Gets the minimum value. + + + The minimum value. + + + + + + + + + + + + + + Determines whether this range overlaps with another range. + + The other range. + True if this range overlaps with the other + + + + + + + Thread-safe helper to manage a value. + + + + + Represents helper methods for EndPoints. + + + + + Gets an end point equality comparer. + + + An end point equality comparer. + + + + + Determines whether a list of end points contains a specific end point. + + The list of end points. + The specific end point to search for. + True if the list of end points contains the specific end point. + + + + Compares two end points. + + The first end point. + The second end point. + True if both end points are equal, or if both are null. + + + + Creates an end point from object data saved during serialization. + + The object data. + An end point. + + + + Gets the object data required to serialize an end point. + + The end point. + The object data. + + + + Compares two sequences of end points. + + The first sequence of end points. + The second sequence of end points. + True if both sequences contain the same end points in the same order, or if both sequences are null. + + + + Parses the string representation of an end point. + + The value to parse. + An end point. + + + + Returns a that represents the end point. + + The end point. + + A that represents the end point. + + + + + Tries to parse the string representation of an end point. + + The value to parse. + The result. + True if the string representation was parsed successfully. + + + + Represents methods that can be used to ensure that parameter values meet expected conditions. + + + + + Ensures that the value of a parameter is between a minimum and a maximum value. + + Type type of the value. + The value of the parameter. + The minimum value. + The maximum value. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is equal to a comparand. + + Type type of the value. + The value of the parameter. + The comparand. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to a comparand. + + Type type of the value. + The value of the parameter. + The comparand. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is infinite or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is infinite or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is not null. + + Type type of the value. + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is not null or empty. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null. + + Type type of the value. + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or greater than zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null, or infinite, or greater than or equal to zero. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or not empty. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is null or a valid timeout. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that the value of a parameter is a valid timeout. + + The value of the parameter. + The name of the parameter. + The value of the parameter. + + + + Ensures that an assertion is true. + + The assertion. + The message to use with the exception that is thrown if the assertion is false. + + + + Ensures that an assertion is true. + + The assertion. + The message to use with the exception that is thrown if the assertion is false. + The parameter name. + + + + Ensures that the value of a parameter meets an assertion. + + Type type of the value. + The value of the parameter. + The assertion. + The name of the parameter. + The message to use with the exception that is thrown if the assertion is false. + The value of the parameter. + + + + Represents a semantic version number. + + + + + Initializes a new instance of the class. + + The major version. + The minor version. + The patch version. + + + + Initializes a new instance of the class. + + The major version. + The minor version. + The patch version. + The pre release version. + + + + Gets the major version. + + + The major version. + + + + + Gets the minor version. + + + The minor version. + + + + + Gets the patch version. + + + The patch version. + + + + + Gets the pre release version. + + + The pre release version. + + + + + + + + + + + + + + + + + + + + Parses a string representation of a semantic version. + + The string value to parse. + A semantic version. + + + + Tries to parse a string representation of a semantic version. + + The string value to parse. + The result. + True if the string representation was parsed successfully; otherwise false. + + + + Determines whether two specified semantic versions have the same value. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is the same as the value of b; otherwise false. + + + + + Determines whether two specified semantic versions have different values. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is different from the value of b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is greater than the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is greater than b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is greater than or equal to the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is greater than or equal to b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is less than the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is less than b; otherwise false. + + + + + Determines whether the first specified SemanticVersion is less than or equal to the second specified SemanticVersion. + + The first semantic version to compare, or null. + The second semantic version to compare, or null. + + True if the value of a is less than or equal to b; otherwise false. + + + + + A change stream cursor. + + The type of the output documents. + + + + + + + + Initializes a new instance of the class. + + The cursor. + The document serializer. + The binding. + The change stream operation. + + + + + + + + + + + + + A change stream operation. + + The type of the result. + + + + Gets or sets the resume after value. + + + The resume after value. + + + + + Gets or sets the start at operation time. + + + The start at operation time. + + + + + Resumes the operation after a resume token. + + The binding. + The cancellation token. + A cursor. + + + + Resumes the operation after a resume token. + + The binding. + The cancellation token. + A Task whose result is a cursor. + + + + A change stream operation. + + The type of the result values. + + + + Initializes a new instance of the class. + + The pipeline. + The result value serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The database namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Gets or sets the size of the batch. + + + The size of the batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets or sets the full document option. + + + The full document option. + + + + + Gets or sets the maximum await time. + + + The maximum await time. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + + + + + + + + + + + + + + + + + + + Represents a count documents operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the index hint. + + + The index hint. + + + + + Gets or sets a limit on the number of matching documents to count. + + + A limit on the number of matching documents to count. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets or sets the number of documents to skip before counting the remaining matching documents. + + + The number of documents to skip before counting the remaining matching documents. + + + + + + + + + + + Represents a create view operation. + + + + + Initializes a new instance of the class. + + The name of the database. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the namespace of the database. + + + The namespace of the database. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets the name of the view. + + + The name of the view. + + + + + Gets the name of the collection that the view is on. + + + The name of the collection that the view is on. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Abstract base class for AbortTransactionOperation and CommitTransactionOperation. + + + + + Initializes a new instance of the class. + + The write concern. + + + + Gets or sets the message encoder settings. + + + The message encoder settings. + + + + + Gets the write concern. + + + The write concern. + + + + + Gets the name of the command. + + + The name of the command. + + + + + + + + + + + The abort transaction operation. + + + + + Initializes a new instance of the class. + + The write concern. + + + + + + + The commit transaction operation. + + + + + Initializes a new instance of the class. + + The write concern. + + + + + + + + + + + + + Represents a delete command operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The deletes. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the deletes. + + + The deletes. + + + + + + + + + + + Represents an insert command operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The documents. + The document serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the documents. + + + The documents. + + + + + Gets the document serializer. + + + The document serializer. + + + + + + + + + + + An operation clock. + + + + + Gets the operation time. + + + The operation time. + + + + + Advances the operation time. + + The new operation time. + + + + Represents an operation (that may or may not be retryable) that can be executed in a retryable write context. + + The type of the result. + + + + Executes the first attempt. + + The context. + The cancellation token. + The result. + + + + Executes the first attempt. + + The context. + The cancellation token. + The result. + + + + Represents a retryable operation. + + The type of the result. + + + + Executes the first attempt. + + The context. + The attempt. + The transaction number. + The cancellation token. + The result. + + + + Executes the first attempt. + + The context. + The attempt. + The transaction number. + The cancellation token. + The result. + + + + An operation clock. + + + + + + Returns the greater of two operation times. + + The x. + The y. + The greater operation time. + + + + + + + + + + An object that represents no operation clock. + + + + + + + + + + + + Represents a reindex operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern (ignored and will eventually be deprecated and later removed). + + + The write concern. + + + + + + + + + + + Represents a base class for a delete, insert or update command operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets or sets a value indicating whether the server should process the requests in order. + + A value indicating whether the server should process the requests in order. + + + + Gets or sets the maximum batch count. + + + The maximum batch count. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + + + + + + + Creates the command. + + The session. + The connection description. + The attempt. + The transaction number. + + A command. + + + + + Creates the command payloads. + + The channel. + The attempt. + + The command payloads. + + + + + Represents a context for retryable writes. + + + + + + Creates and initializes a retryable write operation context. + + The binding. + if set to true [retry requested]. + The cancellation token. + A retryable write context. + + + + Creates and initializes a retryable write operation context. + + The binding. + if set to true [retry requested]. + The cancellation token. + A retryable write context. + + + + Initializes a new instance of the class. + + The binding. + if set to true the operation can be retried. + + + + Gets the binding. + + + The binding. + + + + + Gets the channel. + + + The channel. + + + + + Gets the channel source. + + + The channel source. + + + + + Gets a value indicating whether the operation can be retried. + + + true if the operation can be retried; otherwise, false. + + + + + Disables retries. + + The requests. + + + + + + + Replaces the channel. + + The channel. + + + + Replaces the channel source. + + The channel source. + + + + Represents an update command operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The updates. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + A value indicating whether to bypass document validation. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the updates. + + + The updates. + + + + + + + + + + + Represents a create indexes operation that uses the createIndexes command. + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the create index requests. + + + The create index requests. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + Gets or sets the MaxTime + + + The maxtime. + + + + + + + + + + + Represents a create indexes operation that inserts into the system.indexes collection (used with older server versions). + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the create index requests. + + + The create index requests. + + + + + + + + + + + Represents the geoSearch command. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The point for which to find the closest documents. + The result serializer. + The message encoder settings. + + + + Gets the collection namespace. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum distance. + + + + + Gets or sets the maximum time. + + + + + Gets the message encoder settings. + + + + + Gets the point for which to find the closest documents. + + + + + Gets or sets the read concern. + + + + + Gets the result serializer. + + + + + Gets or sets the search. + + + + + + + + + + + Represents the geoNear command. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The point for which to find the closest documents. + The result serializer. + The message encoder settings. + + + + Gets or sets the collation. + + + + + Gets the collection namespace. + + + + + Gets or sets the distance multiplier. + + + + + Gets or sets the filter. + + + + + Gets or sets whether to include the locations of the matching documents. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum distance. + + + + + Gets or sets the maximum time. + + + + + Gets the message encoder settings. + + + + + Gets the point for which to find the closest documents. + + + + + Gets or sets the read concern. + + + + + Gets the result serializer. + + + + + Gets or sets whether to use spherical geometry. + + + + + Gets or sets whether to return a document only once. + + + + + + + + + + + Represents a list collections operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the name only option. + + + The name only option. + + + + + + + + + + + Represents a list collections operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a list indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a list indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + A helper class for deserializing documents in a cursor batch. + + + + + Deserializes the documents. + + The type of the document. + The batch. + The document serializer. + The message encoder settings. + The documents. + + + + Represents a Find command operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + true if the server is allowed to return partial results if any shards are unavailable; otherwise, false. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the type of the cursor. + + + The type of the cursor. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the size of the first batch. + + + The size of the first batch. + + + + + Gets or sets the hint. + + + The hint. + + + + + Gets or sets the limit. + + + The limit. + + + + + Gets or sets the max key value. + + + The max key value. + + + + + Gets or sets the maximum await time for TailableAwait cursors. + + + The maximum await time for TailableAwait cursors. + + + + + Gets or sets the max scan. + + + The max scan. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the min key value. + + + The max min value. + + + + + Gets or sets a value indicating whether the server will not timeout the cursor. + + + true if the server will not timeout the cursor; otherwise, false. + + + + + Gets or sets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets whether to only return the key values. + + + Whether to only return the key values. + + + + + Gets or sets whether the record Id should be added to the result document. + + + Whether the record Id should be added to the result documentr. + + + + + Gets or sets whether to return only a single batch. + + + Whether to return only a single batchThe single batch. + + + + + Gets or sets the number of documents skip. + + + The number of documents skip. + + + + + Gets or sets whether to use snapshot behavior. + + + Whether to use snapshot behavior. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + + + + Represents a Find opcode operation. + + The type of the returned documents. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + true if the server is allowed to return partial results if any shards are unavailable; otherwise, false. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the type of the cursor. + + + The type of the cursor. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the size of the first batch. + + + The size of the first batch. + + + + + Gets or sets the hint. + + + The hint. + + + + + Gets or sets the limit. + + + The limit. + + + + + Gets or sets the max key value. + + + The max key value. + + + + + Gets or sets the max scan. + + + The max scan. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the min key value. + + + The max min value. + + + + + Gets or sets any additional query modifiers. + + + The additional query modifiers. + + + + + Gets or sets a value indicating whether the server will not timeout the cursor. + + + true if the server will not timeout the cursor; otherwise, false. + + + + + Gets or sets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets whether the record Id should be added to the result document. + + + Whether the record Id should be added to the result documentr. + + + + + Gets or sets the number of documents skip. + + + The number of documents skip. + + + + + Gets or sets whether to use snapshot behavior. + + + Whether to use snapshot behavior. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + + + + Returns an explain operation for this find operation. + + The verbosity. + An explain operation. + + + + Represents an aggregate explain operations. + + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to use the disk. + + + A value indicating whether the server is allowed to use the disk. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + The hint. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + + + + + + + Represents a map-reduce operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The map function. + The reduce function. + The message encoder settings. + + + + Gets or sets the read concern. + + + The read concern. + + + + + + + + + + + + + + + + + Represents a bulk write operation exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The result. + The write errors. + The write concern error. + The unprocessed requests. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the result of the bulk write operation. + + + + + Gets the unprocessed requests. + + + The unprocessed requests. + + + + + + Gets the write concern error. + + + The write concern error. + + + + + Gets the write errors. + + + The write errors. + + + + + + + + Represents a create index request. + + + + + Initializes a new instance of the class. + + The keys. + + + + Gets or sets the additional options. + + + The additional options. + + + + + Gets or sets a value indicating whether the index should be created in the background. + + + A value indicating whether the index should be created in the background. + + + + + Gets or sets the bits of precision of the geohash values for 2d geo indexes. + + + The bits of precision of the geohash values for 2d geo indexes. + + + + + Gets or sets the size of the bucket for geo haystack indexes. + + + The size of the bucket for geo haystack indexes. + + + + + Gets or sets the collation. + + + + + Gets or sets the default language for text indexes. + + + The default language for text indexes. + + + + + Gets or sets when documents in a TTL collection expire. + + + When documents in a TTL collection expire. + + + + + Gets or sets the language override for text indexes. + + + The language override for text indexes. + + + + + Gets the keys. + + + The keys. + + + + + Gets or sets the maximum coordinate value for 2d indexes. + + + The maximum coordinate value for 2d indexesThe maximum. + + + + + Gets or sets the minimum coordinate value for 2d indexes. + + + The minimum coordinate value for 2d indexes. + + + + + Gets or sets the index name. + + + The index name. + + + + + Gets or sets the partial filter expression. + + + The partial filter expression. + + + + + Gets or sets a value indicating whether the index is a sparse index. + + + A value indicating whether the index is a sparse index. + + + + + Gets or sets the 2dsphere index version. + + + The 2dsphere index version. + + + + + Gets or sets the storage engine options. + + + The storage engine options. + + + + + Gets or sets the text index version. + + + The text index version. + + + + + Gets or sets a value indicating whether the index enforces the uniqueness of the key values. + + + A value indicating whether the index enforces the uniqueness of the key values. + + + + + Gets or sets the index version. + + + The index version. + + + + + Gets or sets the weights for text indexes. + + + The weights for text indexes. + + + + + Gets the name of the index. + + The name of the index. + + + + The cursor type. + + + + + A non-tailable cursor. This is sufficient for most uses. + + + + + A tailable cursor. + + + + + A tailable cursor with a built-in server sleep. + + + + + Represents an element name validator that checks that element names are valid for MongoDB collections. + + + + + Gets a pre-created instance of a CollectionElementNameValidator. + + + The pre-created instance. + + + + + + + + + + + Represents a factory for element name validators based on the update type. + + + + + Returns an element name validator for the update type. + + Type of the update. + An element name validator. + + + + Represents an element name validator for update operations. + + + + + Gets a pre-created instance of an UpdateElementNameValidator. + + + The pre-created instance. + + + + + + + + + + + Represents an element name validator that will validate element names for either an update or a replacement based on whether the first element name starts with a "$". + + + + + Initializes a new instance of the class. + + + + + + + + + + + Represents an explain operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the command to be explained. + + + The command to be explained. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the verbosity. + + + The verbosity. + + + + + + + + + + + + + + + + + The verbosity of an explanation. + + + + + Runs the query planner and chooses the winning plan, but does not actually execute it. + + + + + Runs the query optimizer, and then runs the winning plan to completion. In addition to the + planner information, this makes execution stats available. + + + + + Runs the query optimizer and chooses the winning plan, but then runs all generated plans + to completion. This makes execution stats available for all of the query plans. + + + + + Represents a base class for find and modify operations. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets the write concern. + + + + + Gets or sets whether the operation can be retried. + + + + + + + + + + + + + + + + + + + + + + + Gets the command validator. + + An element name validator for the command. + + + + Represents a deserializer for find and modify result values. + + The type of the result. + + + + Initializes a new instance of the class. + + The value serializer. + + + + + + + Represents a find one and update operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The filter. + The update. + The result serializer. + The message encoder settings. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the filter. + + + The filter. + + + + + Gets a value indicating whether a document should be inserted if no matching document is found. + + + true if a document should be inserted if no matching document is found; otherwise, false. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets which version of the modified document to return. + + + Which version of the modified document to return. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + Gets or sets the update specification. + + + The update specification. + + + + + + + + Represents a find one and replace operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The filter. + The replacement. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the filter. + + + The filter. + + + + + Gets a value indicating whether a document should be inserted if no matching document is found. + + + true if a document should be inserted if no matching document is found; otherwise, false. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets the replacement document. + + + The replacement document. + + + + + Gets or sets which version of the modified document to return. + + + Which version of the modified document to return. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + Represents a find one and delete operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The filter. + The result serializer. + The message encoder settings. + + + + Gets the filter. + + + The filter. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + The document to return when executing a FindAndModify command. + + + + + Returns the document before the modification. + + + + + Returns the document after the modification. + + + + + Represents helper methods for index names. + + + + + Gets the name of the index derived from the keys specification. + + The keys specification. + The name of the index. + + + + Gets the name of the index derived from the key names. + + The key names. + The name of the index. + + + + Represents a list indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a list collections operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the name only option. + + + The name only option. + + + + + + + + + + + Represents a ping operation. + + + + + Initializes a new instance of the class. + + The message encoder settings. + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents the update type. + + + + + The update type is unknown. + + + + + This update uses an update specification to update an existing document. + + + + + This update completely replaces an existing document with a new one. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Represents the type of a write request. + + + + + A delete request. + + + + + An insert request. + + + + + An udpate request. + + + + + Represents a mixed write bulk operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets a value indicating whether the writes must be performed in order. + + + true if the writes must be performed in order; otherwise, false. + + + + + Gets or sets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets or sets the maximum length of a batch. + + + The maximum length of a batch. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets or sets the maximum size of a wire document. + + + The maximum size of a wire document. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the requests. + + + The requests. + + + + + Gets or sets a value indicating whether [retry requested]. + + + true if [retry requested]; otherwise, false. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents the result of one batch executed using a write command. + + + + + Represents the details of a write error for a particular request. + + + + + Initializes a new instance of the class. + + The index. + The code. + The message. + The details. + + + + Gets the error category. + + + The error category. + + + + + Gets the error code. + + + The error code. + + + + + Gets the error details. + + + The error details. + + + + + Gets the index of the request that had an error. + + + The index. + + + + + Gets the error message. + + + The error message. + + + + + Represents the result of a bulk write operation. + + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + Gets the number of documents that were deleted. + + + The number of document that were deleted. + + + + + Gets the number of documents that were inserted. + + + The number of document that were inserted. + + + + + Gets a value indicating whether the bulk write operation was acknowledged. + + + true if the bulk write operation was acknowledged; otherwise, false. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + true if the modified count is available; otherwise, false. + + + + + Gets the number of documents that were matched. + + + The number of document that were matched. + + + + + Gets the number of documents that were actually modified during an update. + + + The number of document that were actually modified during an update. + + + + + Gets the processed requests. + + + The processed requests. + + + + + Gets the request count. + + + The request count. + + + + + Gets a list with information about each request that resulted in an upsert. + + + The list with information about each request that resulted in an upsert. + + + + + Represents the result of an acknowledged bulk write operation. + + + + + Initializes a new instance of the class. + + The request count. + The matched count. + The deleted count. + The inserted count. + The modified count. + The processed requests. + The upserts. + + + + + + + + + + + + + + + + + + + + + + + + + Represents the result of an unacknowledged BulkWrite operation. + + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + + + + + + + + + + + + + + + + + + + + + + Represents the information about one Upsert. + + + + + Gets the identifier. + + + The identifier. + + + + + Gets the index. + + + The index. + + + + + Represents a request to insert a document. + + + + + Initializes a new instance of the class. + + The document. + + + + Gets or sets the document. + + + The document. + + + + + + + + Represents the details of a write concern error. + + + + + Initializes a new instance of the class. + + The code. + The message. + The details. + + + + Initializes a new instance of the class. + + The code. + The name of the code. + The message. + The details. + + + + Gets the error code. + + + The error code. + + + + + Gets the name of the error code. + + + The name of the error code. + + + + + Gets the error details. + + + The error details. + + + + + Gets the error message. + + + The error message. + + + + + Represents a request to write something to the database. + + + + + Initializes a new instance of the class. + + The request type. + + + + Gets or sets the correlation identifier. + + + + + Gets the request type. + + + The request type. + + + + + Determines whether the request is retryable on a given connection. + + The connection description. + + true if the request is retryable; otherwise, false. + + + + + Represents an aggregate operation. + + The type of the result values. + + + + Initializes a new instance of the class. + + The database namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The result value serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to use the disk. + + + A value indicating whether the server is allowed to use the disk. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets or sets the collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + The hint. + + + + + Gets or sets the maximum await time. + + + The maximum await time. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result value serializer. + + + The result value serializer. + + + + + Gets or sets a value indicating whether the server should use a cursor to return the results. + + + A value indicating whether the server should use a cursor to return the results. + + + + + + + + + + + Returns an AggregateExplainOperation for this AggregateOperation. + + The verbosity. + An AggregateExplainOperation. + + + + Represents an aggregate operation that writes the results to an output collection. + + + + + Initializes a new instance of the class. + + The collection namespace. + The pipeline. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to use the disk. + + + A value indicating whether the server is allowed to use the disk. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + The hint. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the pipeline. + + + The pipeline. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents the base class for a command operation. + + The type of the command result. + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The result serializer. + The message encoder settings. + + + + Gets or sets the additional options. + + + The additional options. + + + + + Gets the command. + + + The command. + + + + + Gets or sets the command validator. + + + The command validator. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Executes the protocol. + + The channel source. + The session. + The read preference. + The cancellation token. + + A Task whose result is the command result. + + + + + Executes the protocol. + + The channel source. + The session. + The read preference. + The cancellation token. + + A Task whose result is the command result. + + + + + Represents a count operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the index hint. + + + The index hint. + + + + + Gets or sets a limit on the number of matching documents to count. + + + A limit on the number of matching documents to count. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets or sets the number of documents to skip before counting the remaining matching documents. + + + The number of documents to skip before counting the remaining matching documents. + + + + + + + + + + + Represents a create collection operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets or sets a value indicating whether an index on _id should be created automatically. + + + A value indicating whether an index on _id should be created automatically. + + + + + Gets or sets a value indicating whether the collection is a capped collection. + + + A value indicating whether the collection is a capped collection. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the index option defaults. + + + The index option defaults. + + + + + Gets or sets the maximum number of documents in a capped collection. + + + The maximum number of documents in a capped collection. + + + + + Gets or sets the maximum size of a capped collection. + + + The maximum size of a capped collection. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets whether padding should not be used. + + + + + Gets or sets the storage engine options. + + + The storage engine options. + + + + + Gets or sets a value indicating whether the collection should use power of 2 sizes. + + + A value indicating whether the collection should use power of 2 sizes.. + + + + + Gets or sets the validation action. + + + The validation action. + + + + + Gets or sets the validation level. + + + The validation level. + + + + + Gets or sets the validator. + + + The validator. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a create indexes operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The requests. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the create index requests. + + + The create index requests. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + Gets or sets the max time. + + + The max time + + + + + + + + + + + Represents an async cursor. + + The type of the documents. + + + + Initializes a new instance of the class. + + The channel source. + The collection namespace. + The query. + The first batch. + The cursor identifier. + The size of a batch. + The limit. + The serializer. + The message encoder settings. + The maxTime for each batch. + + + + + + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + + + + + + + Represents a database exists operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + + + + + + + Represents a delete operation using the delete opcode. + + + + + Initializes a new instance of the class. + + The collection namespace. + The request. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the request. + + + The request. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + Represents a request to delete one or more documents. + + + + + Initializes a new instance of the class. + + The filter. + + + + Gets or sets the collation. + + + + + Gets or sets the filter. + + + + + Gets or sets a limit on the number of documents that should be deleted. + + + The server only supports 0 or 1, and 0 means that all matching documents should be deleted. + + + A limit on the number of documents that should be deleted. + + + + + + + + Represents a distinct operation. + + The type of the value. + + + + Initializes a new instance of the class. + + The collection namespace. + The value serializer. + The name of the field. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the name of the field. + + + The name of the field. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the value serializer. + + + The value serializer. + + + + + + + + + + + Represents a drop collection operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a drop database operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The message encoder settings. + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a drop index operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The keys. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The name of the index. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the name of the index. + + + The name of the index. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + + + + + + + Represents an eval operation. + + + + + Initializes a new instance of the class. + + The database namespace. + The JavaScript function. + The message encoder settings. + + + + Gets or sets the arguments to the JavaScript function. + + + The arguments to the JavaScript function. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the JavaScript function. + + + The JavaScript function. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether the server should not take a global write lock before evaluating the JavaScript function. + + + A value indicating whether the server should not take a global write lock before evaluating the JavaScript function. + + + + + + + + + + + Represents a deserializer that deserializes the selected element and skips any others. + + The type of the value. + + + + Represents a Find operation. + + The type of the returned documents. + + + + Initializes a new instance of the class. + + The collection namespace. + The result serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + true if the server is allowed to return partial results if any shards are unavailable; otherwise, false. + + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the comment. + + + The comment. + + + + + Gets or sets the type of the cursor. + + + The type of the cursor. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the size of the first batch. + + + The size of the first batch. + + + + + Gets or sets the hint. + + + The hint. + + + + + Gets or sets the limit. + + + The limit. + + + + + Gets or sets the max key value. + + + The max key value. + + + + + Gets or sets the maximum await time for TailableAwait cursors. + + + The maximum await time for TailableAwait cursors. + + + + + Gets or sets the max scan. + + + The max scan. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the min key value. + + + The max min value. + + + + + Gets or sets any additional query modifiers. + + + The additional query modifiers. + + + + + Gets or sets a value indicating whether the server will not timeout the cursor. + + + true if the server will not timeout the cursor; otherwise, false. + + + + + Gets or sets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets or sets the projection. + + + The projection. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + Gets or sets whether to only return the key values. + + + Whether to only return the key values. + + + + + Gets or sets whether the record Id should be added to the result document. + + + Whether the record Id should be added to the result documentr. + + + + + Gets or sets whether to return only a single batch. + + + Whether to return only a single batchThe single batch. + + + + + Gets or sets the number of documents skip. + + + The number of documents skip. + + + + + Gets or sets whether to use snapshot behavior. + + + Whether to use snapshot behavior. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + + + + + + + Represents a group operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The key. + The initial aggregation result for each group. + The reduce function. + The filter. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The key function. + The initial aggregation result for each group. + The reduce function. + The filter. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the filter. + + + The filter. + + + + + Gets or sets the finalize function. + + + The finalize function. + + + + + Gets the initial aggregation result for each group. + + + The initial aggregation result for each group. + + + + + Gets the key. + + + The key. + + + + + Gets the key function. + + + The key function. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the reduce function. + + + The reduce function. + + + + + Gets or sets the result serializer. + + + The result serializer. + + + + + + + + + + + Represents an insert operation using the insert opcode. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The documents. + The serializer. + The message encoder settings. + + + + Initializes a new instance of the class. + + The collection namespace. + The document source. + The serializer. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets a value indicating whether the server should continue on error. + + + true if the server should continue on error; otherwise, false. + + + + + Gets the documents. + + + The documents. + + + + + Gets the document source. + + + The document source. + + + + + Gets or sets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets or sets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets the serializer. + + + The serializer. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents a database read operation. + + The type of the result. + + + + Executes the operation. + + The binding. + The cancellation token. + The result of the operation. + + + + Executes the operation. + + The binding. + The cancellation token. + A Task whose result is the result of the operation. + + + + Represents a database write operation. + + The type of the result. + + + + Executes the operation. + + The binding. + The cancellation token. + The result of the operation. + + + + Executes the operation. + + The binding. + The cancellation token. + A Task whose result is the result of the operation. + + + + Represents the listDatabases command. + + + + + Initializes a new instance of the class. + + The message encoder settings. + + + + Gets or sets the filter. + + + The filter. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets or sets the NameOnly flag. + + + The NameOnly flag. + + + + + + + + + + + Represents a map-reduce operation. + + The type of the result. + + + + Initializes a new instance of the class. + + The collection namespace. + The map function. + The reduce function. + The result serializer. + The message encoder settings. + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the result serializer. + + + The result serializer. + + + + + + + + + + + + + + + + + Represents a base class for map-reduce operations. + + + + + Initializes a new instance of the class. + + The collection namespace. + The map function. + The reduce function. + The message encoder settings. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the filter. + + + The filter. + + + + + Gets or sets the finalize function. + + + The finalize function. + + + + + Gets or sets a value indicating whether objects emitted by the map function remain as JavaScript objects. + + + + Setting this value to true can result in faster execution, but requires more memory on the server, and if + there are too many emitted objects the map-reduce operation may fail. + + true if objects emitted by the map function remain as JavaScript objects; otherwise, false. + + + + + Gets or sets the maximum number of documents to pass to the map function. + + + The maximum number of documents to pass to the map function. + + + + + Gets the map function. + + + The map function. + + + + + Gets or sets the maximum time the server should spend on this operation. + + + The maximum time the server should spend on this operation. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the reduce function. + + + The reduce function. + + + + + Gets or sets the scope document. + + + The scode document defines global variables that are accessible from the map, reduce and finalize functions. + + + The scope document. + + + + + Gets or sets the sort specification. + + + The sort specification. + + + + + Gets or sets a value indicating whether to include extra information, such as timing, in the result. + + + true if extra information, such as timing, should be included in the result; otherwise, false. + + + + + Creates the command. + + The session. + The connection description. + + The command. + + + + + Creates the output options. + + The output options. + + + + Represents the map-reduce output mode. + + + + + The output of the map-reduce operation replaces the output collection. + + + + + The output of the map-reduce operation is merged with the output collection. + If an existing document has the same key as the new result, overwrite the existing document. + + + + + The output of the map-reduce operation is merged with the output collection. + If an existing document has the same key as the new result, apply the reduce function to both + the new and the existing documents and overwrite the existing document with the result. + + + + + Represents a map-reduce operation that outputs its results to a collection. + + + + + Initializes a new instance of the class. + + The collection namespace. + The output collection namespace. + The map function. + The reduce function. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether the server should not lock the database for merge and reduce output modes. + + + true if the server should not lock the database for merge and reduce output modes; otherwise, false. + + + + + Gets the output collection namespace. + + + The output collection namespace. + + + + + Gets or sets the output mode. + + + The output mode. + + + + + Gets or sets a value indicating whether the output collection should be sharded. + + + true if the output collection should be sharded; otherwise, false. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + Represents extension methods for operations. + + + + + Executes a read operation using a channel source. + + The type of the result. + The read operation. + The channel source. + The read preference. + The session. + The cancellation token. + + The result of the operation. + + + + + Executes a write operation using a channel source. + + The type of the result. + The write operation. + The channel source. + The session. + The cancellation token. + + The result of the operation. + + + + + Executes a read operation using a channel source. + + The type of the result. + The read operation. + The channel source. + The read preference. + The session. + The cancellation token. + + A Task whose result is the result of the operation. + + + + + Executes a write operation using a channel source. + + The type of the result. + The write operation. + The channel source. + The session. + The cancellation token. + + A Task whose result is the result of the operation. + + + + + Represents a parallel scan operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The collection namespace. + The number of cursors. + The serializer. + The message encoder settings. + + + + Gets or sets the size of a batch. + + + The size of a batch. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the number of cursors. + + + The number of cursors. + + + + + Gets or sets the read concern. + + + The read concern. + + + + + Gets the serializer. + + + The serializer. + + + + + + + + + + + Represents a read command operation. + + The type of the command result. + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The result serializer. + The message encoder settings. + + + + + + + + + + Represents a rename collection operation. + + + + + Initializes a new instance of the class. + + The collection namespace. + The new collection namespace. + The message encoder settings. + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets a value indicating whether to drop the target collection first if it already exists. + + + true if the target collection should be dropped first if it already exists.; otherwise, false. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the new collection namespace. + + + The new collection namespace. + + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + Represents an update operation using the update opcode. + + + + + Initializes a new instance of the class. + + The collection namespace. + The request. + The message encoder settings. + + + + Gets or sets a value indicating whether to bypass document validation. + + + A value indicating whether to bypass document validation. + + + + + Gets the collection namespace. + + + The collection namespace. + + + + + Gets or sets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the message encoder settings. + + + The message encoder settings. + + + + + Gets the request. + + + The request. + + + + + Gets or sets a value indicating whether retry is enabled for the operation. + + A value indicating whether retry is enabled. + + + + Gets or sets the write concern. + + + The write concern. + + + + + + + + + + + + + + + + + Represents a request to update one or more documents. + + + + + Initializes a new instance of the class. + + The update type. + The filter. + The update. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether this update should affect all matching documents. + + + true if this update should affect all matching documents; otherwise, false. + + + + + Gets or sets a value indicating whether a document should be inserted if no matching document is found. + + + true if a document should be inserted if no matching document is found; otherwise, false. + + + + + Gets the update specification. + + + + + Gets the update type. + + + + + + + + Represents a write command operation. + + The type of the command result. + + + + Initializes a new instance of the class. + + The database namespace. + The command. + The result serializer. + The message encoder settings. + + + + + + + + + + A cluster clock. + + + + + + Returns the greater of two cluster times. + + The x. + The y. + The greater cluster time. + + + + + + + + + + An object that represents no cluster clock. + + + + + + + + + + + + A cluster clock. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Advances the cluster time. + + The new cluster time. + + + + An election id from the server. + + + + + Initializes a new instance of the class. + + The identifier. + + + + Compares the current object with another object of the same type. + + An object to compare with this object. + + A value that indicates the relative order of the objects being compared. The return value has the following meanings: Value Meaning Less than zero This object is less than the parameter.Zero This object is equal to . Greater than zero This object is greater than . + + + + + Determines whether the specified , is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Indicates whether the current object is equal to another object of the same type. + + An object to compare with this object. + + true if the current object is equal to the parameter; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Represents a server selector that selects writable servers. + + + + + Gets a WritableServerSelector. + + + A server selector. + + + + + + + + + + + Represents a server selector that wraps a delegate. + + + + + Initializes a new instance of the class. + + The selector. + + + + + + + + + + Represents a selector that selects servers within an acceptable latency range. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The allowed latency range. + + + + + + + + + + Represents a selector that selects servers based on multiple partial selectors + + + + + Initializes a new instance of the class. + + The selectors. + + + + + + + + + + Represents a selector that selects servers based on an end point. + + + + + Initializes a new instance of the class. + + The end point. + + + + + + + + + + Represents a selector that selects servers. + + + + + Selects the servers. + + The cluster. + The servers. + The selected servers. + + + + Represents a selector that selects a random server. + + + + + Initializes a new instance of the class. + + + + + + + + + + + Represents a selector that selects servers based on a read preference. + + + + + Gets a ReadPreferenceServerSelector that selects the Primary. + + + A server selector. + + + + + Initializes a new instance of the class. + + The read preference. + + + + + + + + + + Represents a cluster. + + + + + Gets the minimum supported server version. + + + The minimum supported server version + + + + + Gets the supported wire version range. + + + The supported wire version range. + + + + + Represents the cluster connection mode. + + + + + Determine the cluster type automatically. + + + + + Connect directly to a single server of any type. + + + + + Connect directly to a Standalone server. + + + + + Connect to a replica set. + + + + + Connect to one or more shard routers. + + + + + Represents information about a cluster. + + + + + Initializes a new instance of the class. + + The cluster identifier. + The connection mode. + The type. + The servers. + + + + Gets the cluster identifier. + + + + + Gets the connection mode. + + + + + Gets a value indicating whether this cluster is compatible with the driver. + + + true if this cluster is compatible with the driver; otherwise, false. + + + + + Gets the logical session timeout. + + + + + Gets the servers. + + + + + Gets the cluster state. + + + + + Gets the cluster type. + + + + + + + + + + + + + + + + + Returns a new ClusterDescription with a changed ServerDescription. + + The server description. + A ClusterDescription. + + + + Returns a new ClusterDescription with a ServerDescription removed. + + The end point of the server description to remove. + A ClusterDescription. + + + + Returns a new ClusterDescription with a changed ClusterType. + + The value. + A ClusterDescription. + + + + Represents a cluster identifier. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The value. + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + Represents the state of a cluster. + + + + + The cluster is disconnected. + + + + + The cluster is connected. + + + + + Represents the type of a cluster. + + + + + The type of the cluster is unknown. + + + + + The cluster is a standalone cluster. + + + + + The cluster is a replica set. + + + + + The cluster is a sharded cluster. + + + + + Represents the data for the event that fires when a cluster description changes. + + + + + Initializes a new instance of the class. + + The old cluster description. + The new cluster description. + + + + Gets the old cluster description. + + + The old cluster description. + + + + + Gets the new cluster description. + + + The new cluster description. + + + + + Represents a MongoDB cluster. + + + + + Occurs when the cluster description has changed. + + + + + Gets the cluster identifier. + + + The cluster identifier. + + + + + Gets the cluster description. + + + The cluster description. + + + + + Gets the cluster settings. + + + The cluster settings. + + + + + Acquires a core server session. + + A core server session. + + + + Initializes the cluster. + + + + + Selects a server from the cluster. + + The server selector. + The cancellation token. + The selected server. + + + + Selects a server from the cluster. + + The server selector. + The cancellation token. + A Task representing the operation. The result of the Task is the selected server. + + + + Starts a session. + + The options. + + A session. + + + + + Represents a cluster factory. + + + + + Creates a cluster. + + A cluster. + + + + Represents a multi server cluster. + + + + + Represents the config of a replica set (as reported by one of the members of the replica set). + + + + + Gets an empty replica set config. + + + An empty replica set config. + + + + + Initializes a new instance of the class. + + The members. + The name. + The primary. + The version. + + + + Gets the members. + + + The members. + + + + + Gets the name of the replica set. + + + The name of the replica set. + + + + + Gets the primary. + + + The primary. + + + + + Gets the replica set config version. + + + The replica set config version. + + + + + + + + + + + + + + Represents a standalone cluster. + + + + + Monitors a server for state changes. + + + + + + Occurs when the server description changes. + + + + + Initializes this instance. + + + + + Instructs the monitor to refresh its description immediately. + + + + + Requests a heartbeat as soon as possible. + + + + + Represents a server monitor factory. + + + + + Creates a server monitor. + + The server identifier. + The end point. + A server monitor. + + + + + + + Represents the arguments to the event that occurs when the server description changes. + + + + + Initializes a new instance of the class. + + The old server description. + The new server description. + + + + Gets the old server description. + + + The old server description. + + + + + Gets the new server description. + + + The new server description. + + + + + Represents a server identifier. + + + + + Initializes a new instance of the class. + + The cluster identifier. + The end point. + + + + Gets the cluster identifier. + + + The cluster identifier. + + + + + Gets the end point. + + + The end point. + + + + + + + + + + + + + + + + + Represents a MongoDB server. + + + + + Occurs when the server description changes. + + + + + Gets the server description. + + + The server description. + + + + + Gets the end point. + + + The end point. + + + + + Gets the server identifier. + + + The server identifier. + + + + + Gets a channel to the server. + + The cancellation token. + A channel. + + + + Gets a channel to the server. + + The cancellation token. + A Task whose result is a channel. + + + + Represents a server that can be part of a cluster. + + + + + Gets a value indicating whether this instance is initialized. + + + true if this instance is initialized; otherwise, false. + + + + + Initializes this instance. + + + + + Invalidates this instance (sets the server type to Unknown and clears the connection pool). + + + + + Requests a heartbeat as soon as possible. + + + + + Represents a server factory. + + + + + Creates the server. + + The cluster identifier. + The cluster clock. + The end point. + + A server. + + + + + Represents a server in a MongoDB cluster. + + + + + Represents information about a server. + + + + + Initializes a new instance of the class. + + The server identifier. + The end point. + The average round trip time. + The canonical end point. + The election identifier. + The heartbeat exception. + The heartbeat interval. + The last update timestamp. + The last write timestamp. + The logical session timeout. + The maximum batch count. + The maximum size of a document. + The maximum size of a message. + The maximum size of a wire document. + The replica set configuration. + The server state. + The replica set tags. + The server type. + The server version. + The wire version range. + EndPoint and ServerId.EndPoint must match. + + + + Gets the average round trip time. + + + The average round trip time. + + + + + Gets the canonical end point. This is the endpoint that the cluster knows this + server by. Currently, it only applies to a replica set config and will match + what is in the replica set configuration. + + + + + Gets the election identifier. + + + + + Gets the end point. + + + The end point. + + + + + Gets the most recent heartbeat exception. + + + The the most recent heartbeat exception (null if the most recent heartbeat succeeded). + + + + + Gets the heartbeat interval. + + + The heartbeat interval. + + + + + Gets a value indicating whether this server is compatible with the driver. + + + true if this server is compatible with the driver; otherwise, false. + + + + + Gets a value indicating whether this instance is a data bearing server. + + + true if this instance is a data bearing server; otherwise, false. + + + + + Gets the last update timestamp (when the ServerDescription itself was last updated). + + + The last update timestamp. + + + + + Gets the last write timestamp (from the lastWrite field of the isMaster result). + + + The last write timestamp. + + + + + Gets the logical session timeout. + + + The logical session timeout. + + + + + Gets the maximum number of documents in a batch. + + + The maximum number of documents in a batch. + + + + + Gets the maximum size of a document. + + + The maximum size of a document. + + + + + Gets the maximum size of a message. + + + The maximum size of a message. + + + + + Gets the maximum size of a wire document. + + + The maximum size of a wire document. + + + + + Gets the replica set configuration. + + + The replica set configuration. + + + + + Gets the server identifier. + + + The server identifier. + + + + + Gets the server state. + + + The server state. + + + + + Gets the replica set tags. + + + The replica set tags (null if not a replica set or if the replica set has no tags). + + + + + Gets the server type. + + + The server type. + + + + + Gets the server version. + + + The server version. + + + + + Gets the wire version range. + + + The wire version range. + + + + + + + + + + + + + + + + + Returns a new instance of ServerDescription with some values changed. + + The average round trip time. + The canonical end point. + The election identifier. + The heartbeat exception. + The heartbeat interval. + The last update timestamp. + The last write timestamp. + The logical session timeout. + The maximum batch count. + The maximum size of a document. + The maximum size of a message. + The maximum size of a wire document. + The replica set configuration. + The server state. + The replica set tags. + The server type. + The server version. + The wire version range. + + A new instance of ServerDescription. + + + + + Returns a new ServerDescription with a new HeartbeatException. + + The heartbeat exception. + + A new instance of ServerDescription. + + + + + + + + Represents the server state. + + + + + The server is disconnected. + + + + + The server is connected. + + + + + Represents the server type. + + + + + The server type is unknown. + + + + + The server is a standalone server. + + + + + The server is a shard router. + + + + + The server is a replica set primary. + + + + + The server is a replica set secondary. + + + + + Use ReplicaSetSecondary instead. + + + + + The server is a replica set arbiter. + + + + + The server is a replica set member of some other type. + + + + + The server is a replica set ghost member. + + + + + Represents extension methods on ServerType. + + + + + Determines whether this server type is a replica set member. + + The type of the server. + Whether this server type is a replica set member. + + + + Determines whether this server type is a writable server. + + The type of the server. + Whether this server type is a writable server. + + + + Infers the cluster type from the server type. + + The type of the server. + The cluster type. + + + + Instructions for handling the response from a command. + + + + + Return the response from the server. + + + + + Ignore the response from the server. + + + + + No response is expected from the server. + + + + + Represents a binary encoder for a CommandMessage. + + + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a CommandRequestMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a CommandResponseMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a base class for binary message encoders. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Gets the encoding. + + + The encoding. + + + + + Gets the maximum size of the document. + + + The maximum size of the document. + + + + + Gets the maximum size of the message. + + + The maximum size of the message. + + + + + Gets the maximum size of the wire document. + + + The maximum size of the wire document. + + + + + Creates a binary reader for this encoder. + + A binary reader. + + + + Creates a binary writer for this encoder. + + A binary writer. + + + + Represents a factory for binary message encoders. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a binary encoder for a Delete message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a GetMore message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for an Insert message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a KillCursors message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a Query message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for a Reply message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a binary encoder for an Update message. + + + + + Initializes a new instance of the class. + + The stream. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a message encoder selector for CommandResponseMessages. + + + + + + + + Represents the changes that can be made to a message after it has been encoded. + + + + + Changes the write concern from w0 to w1. + + + + + Represents a JSON encoder for a CommandMessage. + + + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a Json encoder for a CommandRequestMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a Json encoder for a CommandResponseMessage. + + + + + + Initializes a new instance of the class. + + The wrapped encoder. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a base class for JSON message encoders. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Creates a JsonReader for this encoder. + + A JsonReader. + + + + Creates a JsonWriter for this encoder. + + A JsonWriter. + + + + Represents a JSON encoder for a Delete message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for a GetMore message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for an Insert message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a factory for JSON message encoders. + + + + + Initializes a new instance of the class. + + The text reader. + The encoder settings. + + + + Initializes a new instance of the class. + + The text writer. + The encoder settings. + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Represents a JSON encoder for a KillCursors message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for a Query message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for a Reply message. + + The type of the documents. + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + The serializer. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a JSON encoder for an Update message. + + + + + Initializes a new instance of the class. + + The text reader. + The text writer. + The encoder settings. + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a message encoder selector that gets the appropriate encoder from an encoder factory. + + + + + Get the appropriate encoder from an encoder factory. + + The encoder factory. + A message encoder. + + + + Represents a message encoder selector for ReplyMessages. + + The type of the document. + + + + Initializes a new instance of the class. + + The document serializer. + + + + + + + Represents the names of different encoder settings. + + + + + The name of the FixOldBinarySubTypeOnInput setting. + + + + + The name of the FixOldBinarySubTypeOnOutput setting. + + + + + The name of the FixOldDateTimeMaxValueOnInput setting. + + + + + The name of the GuidRepresentation setting. + + + + + The name of the MaxDocumentSize setting. + + + + + The name of the MaxMessageSize setting. + + + + + The name of the MaxSerializationDepth setting. + + + + + The maximum wire document size. + + + + + The name of the ReadEncoding setting. + + + + + The name of the WriteEncoding setting. + + + + + The name of the Indent setting. + + + + + The name of the IndentChars setting. + + + + + The name of the NewLineChars setting. + + + + + The name of the OutputMode setting. + + + + + The name of the ShellVersion setting. + + + + + Represents settings for message encoders. + + + + + Adds a setting. + + The type of the value. + The name. + The value. + The settings. + + + + Clones this instance. + + The clone. + + + + + + + Gets a setting, or a default value if the setting does not exist. + + The type of the value. + The name. + The default value. + The value of the setting, or a default value if the setting does not exist. + + + + Represents an encodable message. + + + + + Gets an encoder for the message from an encoder factory. + + The encoder factory. + A message encoder. + + + + Represents a message encoder. + + + + + Reads the message. + + A message. + + + + Writes the message. + + The message. + + + + Represents a message encoder factory. + + + + + Gets an encoder for a Command message. + + An encoder. + + + + Gets an encoder for a Command request message. + + An encoder. + + + + Gets an encoder for a Command response message. + + An encoder. + + + + Gets an encoder for a Delete message. + + An encoder. + + + + Gets an encoder for a GetMore message. + + An encoder. + + + + Gets an encoder for an Insert message. + + The type of the document. + The serializer. + An encoder. + + + + Gets an encoder for a KillCursors message. + + An encoder. + + + + Gets an encoder for a Query message. + + An encoder. + + + + Gets an encoder for a Reply message. + + The type of the document. + The serializer. + An encoder. + + + + Gets an encoder for an Update message. + + An encoder. + + + + Represents a command message. + + + + + + Initializes a new instance of the class. + + The request identifier. + The response to. + The sections. + if set to true [more to come]. + + + + + + + Gets or sets a value indicating whether another message immediately follows this one with no response expected. + + + true if another message immediately follows this one; otherwise, false. + + + + + Gets or sets the delegate called to after the message has been written by the encoder. + + + The post write delegate. + + + + + Gets the request identifier. + + + The request identifier. + + + + + Gets a value indicating whether a response is expected. + + + true if a response is expected; otherwise, false. + + + + + Gets the response to. + + + The response to. + + + + + Gets the sections. + + + The sections. + + + + + + + + Represents the payload type. + + + + + Payload type 0. + + + + + Payload type 1. + + + + + Represents a CommandMessage section. + + + + + Gets the type of the payload. + + + The type of the payload. + + + + + Represents a Type 0 CommandMessage section. + + + + + + Initializes a new instance of the class. + + The document. + The document serializer. + + + + Gets the document. + + + The document. + + + + + Gets the document serializer. + + + The document serializer. + + + + + + + + Represents a Type 0 CommandMessage section. + + The type of the document. + + + + + Initializes a new instance of the class. + + The document. + The document serializer. + + + + Gets the document. + + + The document. + + + + + Gets the document serializer. + + + The document serializer. + + + + + Represents a Type 1 CommandMessage section. + + + + + Initializes a new instance of the class. + + The identifier. + The documents. + The document serializer. + The element name validator. + The maximum batch count. + Maximum size of the document. + + + + Gets the documents. + + + The documents. + + + + + Gets the document serializer. + + + The document serializer. + + + + + Gets the type of the document. + + + The type of the document. + + + + + Gets the element name validator. + + + The element name validator. + + + + + Gets the identifier. + + + The identifier. + + + + + Gets the maximum batch count. + + + The maximum batch count. + + + + + Gets the maximum size of the document. + + + The maximum size of the document. + + + + + + + + Represents a Type 1 CommandMessage section. + + The type of the document. + + + + + Initializes a new instance of the class. + + The identifier. + The documents. + The document serializer. + The element name validator. + The maximum batch count. + Maximum size of the document. + + + + Gets the documents. + + + The documents. + + + + + Gets the document serializer. + + + The document serializer. + + + + + + + + Represents a command request message. + + + + + + Initializes a new instance of the class. + + The wrapped message. + The should be sent. + + + + + + + Gets the wrapped message. + + + The wrapped message. + + + + + + + + Represents a command response message. + + + + + + Initializes a new instance of the class. + + The wrapped message. + + + + + + + Gets the wrapped message. + + + The wrapped message. + + + + + + + + Represents the type of message. + + + + + OP MSG + + + + + OP_DELETE + + + + + OP_GETMORE + + + + + OP_INSERT + + + + + OP_KILLCURSORS + + + + + OP_QUERY + + + + + OP_REPLY + + + + + OP_UPDATE + + + + + Represents a base class for response messages. + + + + + Initializes a new instance of the class. + + The request identifier. + The identifier of the message this is a response to. + + + + + + + Gets the request identifier. + + + + + Gets the identifier of the message this is a response to. + + + + + Represents a Delete message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The query. + if set to true [is multi]. + + + + Gets the collection namespace. + + + + + Gets a value indicating whether to delete all matching documents. + + + + + + + + Gets the query. + + + + + + + + Represents a GetMore message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The cursor identifier. + The size of a batch. + + + + Gets the size of a batch. + + + + + Gets the collection namespace. + + + + + Gets the cursor identifier. + + + + + + + + + + + Represents an Insert message. + + The type of the document. + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The serializer. + The document source. + The maximum batch count. + Maximum size of the message. + if set to true the server should continue on error. + + + + Gets the collection namespace. + + + + + Gets a value indicating whether the server should continue on error. + + + + + Gets the document source. + + + + + Gets the maximum number of documents in a batch. + + + + + Gets the maximum size of a message. + + + + + + + + Gets the serializer. + + + + + + + + Represents a KillCursors message. + + + + + Initializes a new instance of the class. + + The request identifier. + The cursor ids. + + + + Gets the cursor ids. + + + + + + + + + + + Represents a base class for messages. + + + + + Gets the type of the message. + + + + + + + + Represents a Query message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The query. + The fields. + The query validator. + The number of documents to skip. + The size of a batch. + if set to true it is OK if the server is not the primary. + if set to true the server is allowed to return partial results if any shards are unavailable. + if set to true the server should not timeout the cursor. + if set to true the OplogReplay bit will be set. + if set to true the query should return a tailable cursor. + if set to true the server should await data (used with tailable cursors). + A delegate that determines whether this message should be sent. + + + + Gets a value indicating whether the server should await data (used with tailable cursors). + + + + + Gets the size of a batch. + + + + + Gets the collection namespace. + + + + + Gets the fields. + + + + + + + + Gets a value indicating whether the server should not timeout the cursor. + + + + + Gets a value indicating whether the OplogReplay bit will be set. + + + true if the OplogReplay bit will be set; otherwise, false. + + + + + Gets a value indicating whether the server is allowed to return partial results if any shards are unavailable. + + + + + Gets or sets the delegate called to after the message has been written by the encoder. + + + The post write delegate. + + + + + Gets the query. + + + + + Gets the query validator. + + + + + Gets or sets the response handling. + + + The response handling. + + + + + Gets the number of documents to skip. + + + + + Gets a value indicating whether it is OK if the server is not the primary. + + + + + Gets a value indicating whether the query should return a tailable cursor. + + + + + + + + Represents a Reply message. + + The type of the document. + + + + Initializes a new instance of the class. + + if set to true the server is await capable. + The cursor identifier. + if set to true the cursor was not found. + The documents. + The number of documents returned. + if set to true the query failed. + The query failure document. + The request identifier. + The identifier of the message this is a response to. + The serializer. + The position of the first document in this batch in the overall result. + + + + Gets a value indicating whether the server is await capable. + + + + + Gets the cursor identifier. + + + + + Gets a value indicating whether the cursor was not found. + + + + + Gets the documents. + + + + + + + + Gets the number of documents returned. + + + + + Gets a value indicating whether the query failed. + + + + + Gets the query failure document. + + + + + Gets the serializer. + + + + + Gets the position of the first document in this batch in the overall result. + + + + + + + + Represents a base class for request messages. + + + + + Gets the current global request identifier. + + + The current global request identifier. + + + + + Gets the next request identifier. + + The next request identifier. + + + + Initializes a new instance of the class. + + The request identifier. + A delegate that determines whether this message should be sent. + + + + Gets the request identifier. + + + The request identifier. + + + + + Gets a delegate that determines whether this message should be sent. + + + A delegate that determines whether this message be sent. + + + + + Gets or sets a value indicating whether this message was sent. + + + true if this message was sent; otherwise, false. + + + + + Represents an Update message. + + + + + Initializes a new instance of the class. + + The request identifier. + The collection namespace. + The query. + The update. + The update validator. + if set to true all matching documents should be updated. + if set to true a document should be inserted if no matching document is found. + + + + Gets the collection namespace. + + + + + Gets a value indicating whether all matching documents should be updated. + + + + + Gets a value indicating whether a document should be inserted if no matching document is found. + + + + + + + + Gets the query. + + + + + Gets the update. + + + + + Gets the update validator. + + + + + + + + Represents one result batch (returned from either a Query or a GetMore message) + + The type of the document. + + + + Initializes a new instance of the struct. + + The cursor identifier. + The documents. + + + + Gets the cursor identifier. + + + The cursor identifier. + + + + + Gets the documents. + + + The documents. + + + + + Represents a connection pool. + + + + + Gets the server identifier. + + + The server identifier. + + + + + Acquires a connection. + + The cancellation token. + A connection. + + + + Acquires a connection. + + The cancellation token. + A Task whose result is a connection. + + + + Clears the connection pool. + + + + + Initializes the connection pool. + + + + + Represents a connection pool factory. + + + + + Creates a connection pool. + + The server identifier. + The end point. + A connection pool. + + + + A server session. + + + + + + + + + + + + + + + + + + + + + + + + + + + A server session pool. + + + + + Acquires a server session. + + A server session. + + + + Releases a server session. + + The server session. + + + + The interface for a core server session. + + + + + Gets the session Id. + + + The session Id. + + + + + Gets the time this server session was last used (in UTC). + + + The time this server session was last used (in UTC). + + + + + Gets the next transaction number. + + The transaction number. + + + + Called by the driver when the session is used (i.e. sent to the server). + + + + + Represents the document validation action. + + + + + Validation failures result in an error. + + + + + Validation failures result in a warning. + + + + + Represents the document validation level. + + + + + Strict document validation. + + + + + Moderate document validation. + + + + + No document validation. + + + + + Represents helper methods for use with the struct. + + + + + Creates an instance of an optional parameter with a value. + + + This helper method can be used when the implicit conversion doesn't work (due to compiler limitations). + + The type of the optional parameter. + The value. + An instance of an optional parameter with a value. + + + + Creates an instance of an optional parameter with an enumerable value. + + The type of the items of the optional paramater. + The value. + An instance of an optional parameter with an enumerable value. + + + + Represents an optional parameter that might or might not have a value. + + The type of the parameter. + + + + Initializes a new instance of the struct with a value. + + The value of the parameter. + + + + Gets a value indicating whether the optional parameter has a value. + + + true if the optional parameter has a value; otherwise, false. + + + + + Gets the value of the optional parameter. + + + The value of the optional parameter. + + + + + Performs an implicit conversion from to an with a value. + + The value. + + The result of the conversion. + + + + + Returns a value indicating whether this optional parameter contains a value that is not equal to an existing value. + + The value. + True if this optional parameter contains a value that is not equal to an existing value. + + + + Returns either the value of this optional parameter if it has a value, otherwise a default value. + + The default value. + Either the value of this optional parameter if it has a value, otherwise a default value. + + + + Represents a read concern. + + + + + Gets a default read concern. + + + + + Gets a linearizable read concern. + + + + + Gets a local read concern. + + + + + Gets a majority read concern. + + + + + Gets a snapshot read concern. + + + + + Creates a read concern from a document. + + The document. + A read concern. + + + + Initializes a new instance of the class. + + The level. + + + + Gets a value indicating whether this is the server's default read concern. + + + true if this instance is default; otherwise, false. + + + + + Gets the level. + + + + + + + + + + + + + + Converts this read concern to a BsonDocument suitable to be sent to the server. + + + A BsonDocument. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a new instance of ReadConcern with some values changed. + + The level. + + A ReadConcern. + + + + + The leve of the read concern. + + + + + Reads data committed locally. + + + + + Reads data committed to a majority of nodes. + + + + + Avoids returning data from a "stale" primary + (one that has already been superseded by a new primary but doesn't know it yet). + It is important to note that readConcern level linearizable does not by itself + produce linearizable reads; they must be issued in conjunction with w:majority + writes to the same document(s) in order to be linearizable. + + + + + Snapshot read concern level. + + + + + Represents the category for an error from the server. + + + + + An error without a category. + + + + + A duplicate key error. + + + + + An execution timeout error. + + + + + Represents a cursor for an operation that is not actually executed until MoveNextAsync is called for the first time. + + The type of the document. + + + + Initializes a new instance of the class. + + The dispose action. + The delegate to execute the first time MoveNext is called. + The delegate to execute the first time MoveNextAsync is called. + + + + + + + + + + + + + + + + Represents an asynchronous cursor. + + The type of the document. + + + + Gets the current batch of documents. + + + The current batch of documents. + + + + + Moves to the next batch of documents. + + The cancellation token. + Whether any more documents are available. + + + + Moves to the next batch of documents. + + The cancellation token. + A Task whose result indicates whether any more documents are available. + + + + Represents extension methods for IAsyncCursor. + + + + + Determines whether the cursor contains any documents. + + The type of the document. + The cursor. + The cancellation token. + True if the cursor contains any documents. + + + + Determines whether the cursor contains any documents. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is true if the cursor contains any documents. + + + + Returns the first document of a cursor. + + The type of the document. + The cursor. + The cancellation token. + The first document. + + + + Returns the first document of a cursor. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is the first document. + + + + Returns the first document of a cursor, or a default value if the cursor contains no documents. + + The type of the document. + The cursor. + The cancellation token. + The first document of the cursor, or a default value if the cursor contains no documents. + + + + Returns the first document of the cursor, or a default value if the cursor contains no documents. + + The type of the document. + The cursor. + The cancellation token. + A task whose result is the first document of the cursor, or a default value if the cursor contains no documents. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Returns the only document of a cursor. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The cursor. + The cancellation token. + The only document of a cursor. + + + + Returns the only document of a cursor. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is the only document of a cursor. + + + + Returns the only document of a cursor, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The cursor. + The cancellation token. + The only document of a cursor, or a default value if the cursor contains no documents. + + + + Returns the only document of a cursor, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The cursor. + The cancellation token. + A Task whose result is the only document of a cursor, or a default value if the cursor contains no documents. + + + + Wraps a cursor in an IEnumerable that can be enumerated one time. + + The type of the document. + The cursor. + The cancellation token. + An IEnumerable + + + + Returns a list containing all the documents returned by a cursor. + + The type of the document. + The source. + The cancellation token. + The list of documents. + + + + Returns a list containing all the documents returned by a cursor. + + The type of the document. + The source. + The cancellation token. + A Task whose value is the list of documents. + + + + Represents a collection namespace. + + + + + Creates a new instance of the class from a collection full name. + + The collection full name. + A CollectionNamespace. + + + + Determines whether the specified collection name is valid. + + The name of the collection. + Whether the specified collection name is valid. + + + + Initializes a new instance of the class. + + The name of the database. + The name of the collection. + + + + Initializes a new instance of the class. + + The database namespace. + The name of the collection. + + + + Gets the name of the collection. + + + The name of the collection. + + + + + Gets the database namespace. + + + The database namespace. + + + + + Gets the collection full name. + + + The collection full name. + + + + + + + + + + + + + + + + + Represents a database namespace. + + + + + Gets the admin database namespace. + + + The admin database namespace. + + + + + Determines whether the specified database name is valid. + + The database name. + True if the database name is valid. + + + + Initializes a new instance of the class. + + The name of the database. + + + + Gets the name of the database. + + + The name of the database. + + + + + + + + + + + + + + + + + Represents a MongoDB execution timeout exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents an operation that will return a cursor when executed. + + The type of the document. + + + + Executes the operation and returns a cursor to the results. + + The cancellation token. + A cursor. + + + + Executes the operation and returns a cursor to the results. + + The cancellation token. + A Task whose result is a cursor. + + + + Represents extension methods for IAsyncCursorSource. + + + + + Determines whether the cursor returned by a cursor source contains any documents. + + The type of the document. + The source. + The cancellation token. + True if the cursor contains any documents. + + + + Determines whether the cursor returned by a cursor source contains any documents. + + The type of the document. + The source. + The cancellation token. + A Task whose result is true if the cursor contains any documents. + + + + Returns the first document of a cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + The first document. + + + + Returns the first document of a cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the first document. + + + + Returns the first document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + + The type of the document. + The source. + The cancellation token. + The first document of the cursor, or a default value if the cursor contains no documents. + + + + Returns the first document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the first document of the cursor, or a default value if the cursor contains no documents. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Calls a delegate for each document returned by the cursor. + + + If your delegate is going to take a long time to execute or is going to block + consider using a different overload of ForEachAsync that uses a delegate that + returns a Task instead. + + The type of the document. + The source. + The processor. + The cancellation token. + A Task that completes when all the documents have been processed. + + + + Returns the only document of a cursor returned by a cursor source. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The source. + The cancellation token. + The only document of a cursor. + + + + Returns the only document of a cursor returned by a cursor source. This method throws an exception if the cursor does not contain exactly one document. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the only document of a cursor. + + + + Returns the only document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The source. + The cancellation token. + The only document of a cursor, or a default value if the cursor contains no documents. + + + + Returns the only document of a cursor returned by a cursor source, or a default value if the cursor contains no documents. + This method throws an exception if the cursor contains more than one document. + + The type of the document. + The source. + The cancellation token. + A Task whose result is the only document of a cursor, or a default value if the cursor contains no documents. + + + + Wraps a cursor source in an IEnumerable. Each time GetEnumerator is called a new cursor is fetched from the cursor source. + + The type of the document. + The source. + The cancellation token. + An IEnumerable. + + + + Returns a list containing all the documents returned by the cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + The list of documents. + + + + Returns a list containing all the documents returned by the cursor returned by a cursor source. + + The type of the document. + The source. + The cancellation token. + A Task whose value is the list of documents. + + + + Represents a MongoDB client exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB cursor not found exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The cursor identifier. + The query. + + + + Initializes a new instance of the class. + + The information. + The context. + + + + Gets the cursor identifier. + + + The cursor identifier. + + + + + + + + Represents a MongoDB incompatible driver exception. + + + + + Initializes a new instance of the class. + + The cluster description. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB server exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the connection identifier. + + + + + + + + Represents a MongoDB connection pool wait queue full exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB node is recovering exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The command. + The result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB not primary exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The command. + The result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a cursor that wraps another cursor with a transformation function on the documents. + + The type of from document. + The type of to document. + + + + + Initializes a new instance of the class. + + The wrapped. + The transformer. + + + + + + + + + + + + + + + + Represents a read preference. + + + + + Gets an instance of ReadPreference that represents a Nearest read preference. + + + An instance of ReadPreference that represents a Nearest read preference. + + + + + Gets an instance of ReadPreference that represents a Primary read preference. + + + An instance of ReadPreference that represents a Primary read preference. + + + + + Gets an instance of ReadPreference that represents a PrimaryPreferred read preference. + + + An instance of ReadPreference that represents a PrimaryPreferred read preference. + + + + + Gets an instance of ReadPreference that represents a Secondary read preference. + + + An instance of ReadPreference that represents a Secondary read preference. + + + + + Gets an instance of ReadPreference that represents a SecondaryPreferred read preference. + + + An instance of ReadPreference that represents a SecondaryPreferred read preference. + + + + + Creates a new ReadPreference instance from a BsonDocument. + + The document. + A ReadPreference. + + + + Initializes a new instance of the class. + + The read preference mode. + The tag sets. + The maximum staleness. + + + + Gets the maximum staleness. + + + The maximum staleness. + + + + + Gets the read preference mode. + + + The read preference mode. + + + + + Gets the tag sets. + + + The tag sets. + + + + + + + + + + + + + + + + + Returns a new instance of ReadPreference with some values changed. + + The read preference mode. + A new instance of ReadPreference. + + + + Returns a new instance of ReadPreference with some values changed. + + The tag sets. + A new instance of ReadPreference. + + + + Returns a new instance of ReadPreference with some values changed. + + The maximum staleness. + A new instance of ReadPreference. + + + + Represents the read preference mode. + + + + + Reads should be from the primary. + + + + + Reads should be from the primary if possible, otherwise from a secondary. + + + + + Reads should be from a secondary. + + + + + Reads should be from a secondary if possible, otherwise from the primary. + + + + + Reads should be from any server that is within the latency threshold window. + + + + + Represents a replica set member tag. + + + + + Initializes a new instance of the class. + + The name. + The value. + + + + Gets the name. + + + The name. + + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + Represents a replica set member tag set. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The tags. + + + + Gets a value indicating whether the tag set is empty. + + + true if the tag set is empty; otherwise, false. + + + + + Gets the tags. + + + The tags. + + + + + Determines whether the tag set contains all of the required tags. + + The required tags. + True if the tag set contains all of the required tags. + + + + + + + + + + + + + + + + Represents a MongoDB configuration exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB connection failed exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Transaction options. + + + + + Initializes a new instance of the class. + + The read concern. + The read preference. + The write concern. + + + + Gets the read concern. + + + The read concern. + + + + + Gets the read preference. + + + The read preference. + + + + + Gets the write concern. + + + The write concern. + + + + + Returns a new TransactionOptions with some values changed. + + The new read concern. + The read preference. + The new write concern. + + The new TransactionOptions. + + + + + Represents the results of an operation performed with an acknowledged WriteConcern. + + + + + Initializes a new instance of the class. + + The response. + + + + Gets the number of documents affected. + + + + + Gets whether the result has a LastErrorMessage. + + + + + Gets the last error message (null if none). + + + + + Gets the _id of an upsert that resulted in an insert. + + + + + Gets whether the last command updated an existing document. + + + + + Gets the wrapped result. + + + + + Represents a MongoDB authentication exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB connection exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the connection identifier. + + + + + + + + Represents a MongoDB duplicate key exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The command result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB exception. + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the error labels. + + + The error labels. + + + + + Adds an error label. + + The error label. + + + + Determines whether the exception has some error label. + + The error label. + + true if the exception has some error label; otherwise, false. + + + + + Removes the error label. + + The error label. + + + + + + + Represents a MongoDB internal exception (almost surely the result of a bug). + + + + + Initializes a new instance of the class. + + The error message. + + + + Initializes a new instance of the class. + + The error message. + The inner exception. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Represents a MongoDB query exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The message. + The query. + The query result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the query. + + + The query. + + + + + Gets the query result. + + + The query result. + + + + + + + + Represents a MongoDB write concern exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The error message. + The command result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the write concern result. + + + The write concern result. + + + + + + + + Determines whether the exception is due to a write concern error only. + + + true if the exception is due to a write concern error only; otherwise, false. + + + + + Represents a MongoDB command exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The message. + The command. + + + + Initializes a new instance of the class. + + The connection identifier. + The message. + The command. + The command result. + + + + Initializes a new instance of the class. + + The SerializationInfo. + The StreamingContext. + + + + Gets the error code. + + + The error code. + + + + + Gets the name of the error code. + + + The name of the error code. + + + + + Gets the command. + + + The command. + + + + + Gets the error message. + + + The error message. + + + + + Gets the command result. + + + The command result. + + + + + + + + Represents a write concern. + + + + + Gets an instance of WriteConcern that represents an acknowledged write concern. + + + An instance of WriteConcern that represents an acknowledged write concern. + + + + + Gets an instance of WriteConcern that represents an unacknowledged write concern. + + + An instance of WriteConcern that represents an unacknowledged write concern. + + + + + Gets an instance of WriteConcern that represents a W1 write concern. + + + An instance of WriteConcern that represents a W1 write concern. + + + + + Gets an instance of WriteConcern that represents a W2 write concern. + + + An instance of WriteConcern that represents a W2 write concern. + + + + + Gets an instance of WriteConcern that represents a W3 write concern. + + + An instance of WriteConcern that represents a W3 write concern. + + + + + Gets an instance of WriteConcern that represents a majority write concern. + + + An instance of WriteConcern that represents a majority write concern. + + + + + Creates a write concern from a document. + + The document. + A write concern. + + + + Initializes a new instance of the class. + + The w value. + The wtimeout value. + The fsync value . + The journal value. + + + + Initializes a new instance of the class. + + The mode. + The wtimeout value. + The fsync value . + The journal value. + + + + Initializes a new instance of the class. + + The w value. + The wtimeout value. + The fsync value . + The journal value. + + + + Gets the fsync value. + + + The fsync value. + + + + + Gets a value indicating whether this instance is an acknowledged write concern. + + + true if this instance is an acknowledged write concern; otherwise, false. + + + + + Gets a value indicating whether this write concern will use the default on the server. + + + true if this instance is the default; otherwise, false. + + + + + Gets the journal value. + + + The journal value. + + + + + Gets the w value. + + + The w value. + + + + + Gets the wtimeout value. + + + The wtimeout value. + + + + + + + + + + + + + + Converts this write concern to a BsonDocument suitable to be sent to the server. + + + A BsonDocument. + + + + + + + + Returns a new instance of WriteConcern with some values changed. + + The w value. + The wtimeout value. + The fsync value. + The journal value. + A WriteConcern. + + + + Returns a new instance of WriteConcern with some values changed. + + The mode. + The wtimeout value. + The fsync value. + The journal value. + A WriteConcern. + + + + Returns a new instance of WriteConcern with some values changed. + + The w value. + The wtimeout value. + The fsync value. + The journal value. + A WriteConcern. + + + + Represents the base class for w values. + + + + + Parses the specified value. + + The value. + A WValue. + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from Nullable{Int32} to . + + The value. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The value. + + The result of the conversion. + + + + + + + + Converts this WValue to a BsonValue suitable to be included in a BsonDocument representing a write concern. + + A BsonValue. + + + + Represents a numeric WValue. + + + + + Initializes a new instance of the class. + + The w value. + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + + + + Represents a mode string WValue. + + + + + Gets an instance of WValue that represents the majority mode. + + + An instance of WValue that represents the majority mode. + + + + + Initializes a new instance of the class. + + The mode. + + + + Gets the value. + + + The value. + + + + + + + + + + + + + + + + + + + diff --git a/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.dll b/FifthLesson/EnglishLessonsAPI/bin/Debug/netcoreapp2.1/MongoDB.Driver.dll new file mode 100644 index 0000000000000000000000000000000000000000..8314e5c22d461e97b6a481659860ac0608827dc0 GIT binary patch literal 660992 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®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Ύ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 + + + MongoDB.Driver + + + +

      + Represents the granularity value for a $bucketAuto stage. + + + + + Gets the E6 granularity. + + + + + Gets the E12 granularity. + + + + + Gets the E24 granularity. + + + + + Gets the E48 granularity. + + + + + Gets the E96 granularity. + + + + + Gets the E192 granularity. + + + + + Gets the POWERSOF2 granularity. + + + + + Gets the R5 granularity. + + + + + Gets the R10 granularity. + + + + + Gets the R20 granularity. + + + + + Gets the R40 granularity. + + + + + Gets the R80 granularity. + + + + + Gets the 1-2-5 granularity. + + + + + Initializes a new instance of the struct. + + The value. + + + + Gets the value. + + + + + Represents options for the BucketAuto method. + + + + + Gets or sets the granularity. + + + + + Represents the result of the $bucketAuto stage. + + The type of the value. + + + + Initializes a new instance of the class. + + The inclusive lower boundary of the bucket. + The count. + + + + Initializes a new instance of the class. + + The minimum. + The maximum. + The count. + + + + Gets the inclusive lower boundary of the bucket. + + + The inclusive lower boundary of the bucket. + + + + + Gets the count. + + + The count. + + + + + Gets the maximum. + + + + + Gets the minimum. + + + + + Represents the _id value in the result of a $bucketAuto stage. + + The type of the values. + + + + Initializes a new instance of the class. + + The minimum. + The maximum. + + + + Gets the max value. + + + + + Gets the min value. + + + + + Represents options for the Bucket method. + + The type of the value. + + + + Gets or sets the default bucket. + + + + + Represents the result of the $bucket stage. + + The type of the value. + + + + Initializes a new instance of the class. + + The inclusive lower boundary of the bucket. + The count. + + + + Gets the inclusive lower boundary of the bucket. + + + The inclusive lower boundary of the bucket. + + + + + Gets the count. + + + The count. + + + + + Result type for the aggregate $count stage. + + + + + Initializes a new instance of the class. + + The count. + + + + Gets the count. + + + The count. + + + + + An aggregation expression. + + The type of the source. + The type of the result. + + + + Performs an implicit conversion from to . + + The expression. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The expression. + + The result of the conversion. + + + + + Renders the aggregation expression. + + The source serializer. + The serializer registry. + The rendered aggregation expression. + + + + A based aggregate expression. + + The type of the source. + The type of the result. + + + + + Initializes a new instance of the class. + + The expression. + + + + + + + A based aggregate expression. + + The type of the source. + The type of the result. + + + + + Initializes a new instance of the class. + + The expression. + The translation options. + + + + + + + Represents static methods for creating facets. + + + + + Creates a new instance of the class. + + The type of the input documents. + The type of the output documents. + The facet name. + The facet pipeline. + + A new instance of the class + + + + + Represents a facet to be passed to the Facet method. + + The type of the input documents. + + + + Initializes a new instance of the class. + + The facet name. + + + + Gets the facet name. + + + + + Gets the output serializer. + + + + + Gets the type of the output documents. + + + + + Renders the facet pipeline. + + The input serializer. + The serializer registry. + The rendered pipeline. + + + + Represents a facet to be passed to the Facet method. + + The type of the input documents. + The type of the otuput documents. + + + + Initializes a new instance of the class. + + The facet name. + The facet pipeline. + + + + + + + + + + Gets the facet pipeline. + + + + + + + + Options for the aggregate $facet stage. + + The type of the output documents. + + + + Gets or sets the output serializer. + + + + + Represents an abstract AggregateFacetResult with an arbitrary TOutput type. + + + + + Initializes a new instance of the class. + + The name of the facet. + + + + Gets the name of the facet. + + + + + Gets the output of the facet. + + The type of the output documents. + The output of the facet. + + + + Represents the result of a single facet. + + The type of the output. + + + + Initializes a new instance of the class. + + The name. + The output. + + + + Gets or sets the output. + + + The output. + + + + + Represents the results of a $facet stage with an arbitrary number of facets. + + + + + Initializes a new instance of the class. + + The facets. + + + + Gets the facets. + + + + + Represents options for the GraphLookup method. + + The type of from documents. + The type of the as field elements. + The type of the output documents. + + + + Gets or sets the TAsElement serialzier. + + + + + Gets or sets the TFrom serializer. + + + + + Gets or sets the maximum depth. + + + + + Gets or sets the output serializer. + + + + + Gets the filter to restrict the search with. + + + + + Options for the aggregate $lookup stage. + + The type of the foreign document. + The type of the result. + + + + Gets or sets the foreign document serializer. + + + + + Gets or sets the result serializer. + + + + + Result type for the aggregate $sortByCount stage. + + The type of the identifier. + + + + Initializes a new instance of the class. + + The identifier. + The count. + + + + Gets the count. + + + The count. + + + + + Gets the identifier. + + + The identifier. + + + + + Option for which expression to generate for certain string operations. + + + + + Translate to the byte variation. + + + + + Translate to the code points variation. This is only supported in >= MongoDB 3.4. + + + + + Base class for array filters. + + + + + Gets the type of an item. + + + The type of an item. + + + + + Renders the array filter to a . + + The item serializer. + The serializer registry. + + A . + + + + + Base class for array filters. + + The type of an item. + + + + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Renders the array filter to a . + + The item serializer. + The serializer registry. + + A . + + + + + A based array filter. + + The type of an item. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + The document. + + + + + + + + + + + A JSON based array filter. + + The type of an item. + + + + Initializes a new instance of the class. + + The JSON string. + + + + Gets the document. + + + The document. + + + + + Gets the JSON string. + + + The JSON string. + + + + + + + + + + + A static helper class containing various builders. + + The type of the document. + + + + Gets a . + + + + + Gets an . + + + + + Gets a . + + + + + Gets a . + + + + + Gets an . + + + + + Options for a change stream operation. + + + + + Gets or sets the size of the batch. + + + The size of the batch. + + + + + Gets or sets the collation. + + + The collation. + + + + + Gets or sets the full document. + + + The full document. + + + + + Gets or sets the maximum await time. + + + The maximum await time. + + + + + Gets or sets the resume after. + + + The resume after. + + + + + Gets or sets the start at operation time. + + + The start at operation time. + + + + + Options for a $changeStream stage. + + + + + Gets or sets whether to include all changes for an entire cluster in the change stream. + + + Whether to include all changes for an entire cluster in the change stream. + + + + + Gets or sets the full document. + + + The full document. + + + + + Gets or sets the resume after. + + + The resume after. + + + + + Gets or sets the start at operation time. + + + The start at operation time. + + + + + A client session handle. + + + + + + Initializes a new instance of the class. + + The client. + The options. + The wrapped session. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Client session options. + + + + + When true or unspecified, an application will read its own writes and subsequent + reads will never observe an earlier version of the data. + + + + + Gets or sets the default transaction options. + + + The default transaction options. + + + + + Model for creating an index. + + The type of the document. + + + + Initializes a new instance of the class. + + The keys. + The options. + + + + Gets the keys. + + + + + Gets the options. + + + + + Options for creating a single index. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + Options for creating a view. + + The type of the documents. + + + + Gets or sets the collation. + + + The collation. + + + + + Gets or sets the document serializer. + + + The document serializer. + + + + + Gets or sets the serializer registry. + + + The serializer registry. + + + + + Options for the Delete methods. + + + + + Gets or sets the collation. + + + + + Options for creating multiple indexes. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + Options for dropping an index. + + + + + Gets or sets the maximum time. + + The maximum time. + + + + Options for estimated document count. + + + + + Gets or sets the maximum time. + + + + + The interface for a client session. + + + + + Gets the client. + + + The client. + + + + + Gets the cluster time. + + + The cluster time. + + + + + Gets a value indicating whether this session is an implicit session. + + + true if this session is an implicit session; otherwise, false. + + + + + Gets a value indicating whether this instance is in a transaction. + + + true if this instance is in a transaction; otherwise, false. + + + + + Gets the operation time. + + + The operation time. + + + + + Gets the options. + + + The options. + + + + + Gets the server session. + + + The server session. + + + + + Gets the wrapped core session (intended for internal use only). + + + The wrapped core session. + + + + + Aborts the transaction. + + The cancellation token. + + + + Aborts the transaction. + + The cancellation token. + A Task. + + + + Advances the cluster time. + + The new cluster time. + + + + Advances the operation time. + + The new operation time. + + + + Commits the transaction. + + The cancellation token. + + + + Commits the transaction. + + The cancellation token. + A Task. + + + + Starts a transaction. + + The transaction options. + + + + A handle to an underlying reference counted IClientSession. + + + + + + Forks this instance. + + A session. + + + + Extension methods on IMongoClient. + + + + + Watches changes on all collections in all databases. + + The client. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The client. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The client. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The client. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Extension methods on IMongoDatabase. + + + + + Watches changes on all collection in a database. + + The database. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collection in a database. + + The database. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collection in a database. + + The database. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collection in a database. + + The database. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Base class for an index keys definition. + + The type of the document. + + + + Renders the index keys definition to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based index keys definition. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A JSON based index keys definition. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + Represents index option defaults. + + + + + Gets or sets the storage engine options. + + + + + Returns this instance represented as a BsonDocument. + + A BsonDocument. + + + + Options for inserting one document. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + A model for a queryable to be executed using the aggregation framework. + + The type of the output. + + + + Gets the stages. + + + + + Gets the output serializer. + + + + + Gets the type of the output. + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Compare two expressions to determine if they are equivalent. + + + + + Provides functionality to evaluate queries against MongoDB. + + + + + Gets the execution model. + + + The execution model. + + + + + Provides functionality to evaluate queries against MongoDB + wherein the type of the data is known. + + + The type of the data in the data source. + This type parameter is covariant. + That is, you can use either the type you specified or any type that is more + derived. For more information about covariance and contravariance, see Covariance + and Contravariance in Generics. + + + + + Represents the result of a sorting operation. + + + The type of the data in the data source. + This type parameter is covariant. + That is, you can use either the type you specified or any type that is more + derived. For more information about covariance and contravariance, see Covariance + and Contravariance in Generics. + + + + + An implementation of for MongoDB. + + + + + Gets the collection namespace. + + + + + Gets the collection document serializer. + + + + + Gets the execution model. + + The expression. + The execution model. + + + + Executes the strongly-typed query represented by a specified expression tree. + + The type of the result. + An expression tree that represents a LINQ query. + The cancellation token. + The value that results from executing the specified query. + + + + This static class holds methods that can be used to express MongoDB specific operations in LINQ queries. + + + + + Injects a low level FilterDefinition{TDocument} into a LINQ where clause. Can only be used in LINQ queries. + + The type of the document. + The filter. + + Throws an InvalidOperationException if called. + + + + + Enumerable Extensions for MongoDB. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Extension for . + + + + + Determines whether a sequence contains any elements. + + The type of the elements of . + A sequence to check for being empty. + The cancellation token. + + true if the source sequence contains any elements; otherwise, false. + + + + + Determines whether any element of a sequence satisfies a condition. + + The type of the elements of . + A sequence whose elements to test for a condition. + A function to test each element for a condition. + The cancellation token. + + true if any elements in the source sequence pass the test in the specified predicate; otherwise, false. + + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of a sequence of values. + + A sequence of values to calculate the average of. + The cancellation token. + The average of the values in the sequence. + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Computes the average of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The average of the projected values. + + + + + Returns the number of elements in a sequence. + + The type of the elements of . + The that contains the elements to be counted. + The cancellation token. + + The number of elements in the input sequence. + + + + + Returns the number of elements in the specified sequence that satisfies a condition. + + The type of the elements of . + An that contains the elements to be counted. + A function to test each element for a condition. + The cancellation token. + + The number of elements in the sequence that satisfies the condition in the predicate function. + + + + + Returns distinct elements from a sequence by using the default equality comparer to compare values. + + The type of the elements of . + The to remove duplicates from. + + An that contains distinct elements from . + + + + + Returns the first element of a sequence. + + The type of the elements of . + The to return the first element of. + The cancellation token. + + The first element in . + + + + + Returns the first element of a sequence that satisfies a specified condition. + + The type of the elements of . + An to return an element from. + A function to test each element for a condition. + The cancellation token. + + The first element in that passes the test in . + + + + + Returns the first element of a sequence, or a default value if the sequence contains no elements. + + The type of the elements of . + The to return the first element of. + The cancellation token. + + default() if is empty; otherwise, the first element in . + + + + + Returns the first element of a sequence that satisfies a specified condition or a default value if no such element is found. + + The type of the elements of . + An to return an element from. + A function to test each element for a condition. + The cancellation token. + + default() if is empty or if no element passes the test specified by ; otherwise, the first element in that passes the test specified by . + + + + + Groups the elements of a sequence according to a specified key selector function. + + The type of the elements of . + The type of the key returned by the function represented in keySelector. + An whose elements to group. + A function to extract the key for each element. + + An that has a type argument of + and where each object contains a sequence of objects + and a key. + + + + + Groups the elements of a sequence according to a specified key selector function + and creates a result value from each group and its key. + + The type of the elements of . + The type of the key returned by the function represented in keySelector. + The type of the result value returned by resultSelector. + An whose elements to group. + A function to extract the key for each element. + A function to create a result value from each group. + + An that has a type argument of TResult and where + each element represents a projection over a group and its key. + + + + + Correlates the elements of two sequences based on key equality and groups the results. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence. + + An that contains elements of type obtained by performing a grouped join on two sequences. + + + + + Correlates the elements of two sequences based on key equality and groups the results. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The collection to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from an element from the first sequence and a collection of matching elements from the second sequence. + + An that contains elements of type obtained by performing a grouped join on two sequences. + + + + + Correlates the elements of two sequences based on matching keys. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + + An that has elements of type obtained by performing an inner join on two sequences. + + + + + Correlates the elements of two sequences based on matching keys. + + The type of the elements of the first sequence. + The type of the elements of the second sequence. + The type of the keys returned by the key selector functions. + The type of the result elements. + The first sequence to join. + The sequence to join to the first sequence. + A function to extract the join key from each element of the first sequence. + A function to extract the join key from each element of the second sequence. + A function to create a result element from two matching elements. + + An that has elements of type obtained by performing an inner join on two sequences. + + + + + Returns the number of elements in a sequence. + + The type of the elements of . + The that contains the elements to be counted. + The cancellation token. + + The number of elements in the input sequence. + + + + + Returns the number of elements in the specified sequence that satisfies a condition. + + The type of the elements of . + An that contains the elements to be counted. + A function to test each element for a condition. + The cancellation token. + + The number of elements in the sequence that satisfies the condition in the predicate function. + + + + + Returns the maximum value in a generic . + + The type of the elements of . + A sequence of values to determine the maximum of. + The cancellation token. + + The maximum value in the sequence. + + + + + Invokes a projection function on each element of a generic and returns the maximum resulting value. + + The type of the elements of . + The type of the value returned by the function represented by . + A sequence of values to determine the maximum of. + A projection function to apply to each element. + The cancellation token. + + The maximum value in the sequence. + + + + + Returns the minimum value in a generic . + + The type of the elements of . + A sequence of values to determine the minimum of. + The cancellation token. + + The minimum value in the sequence. + + + + + Invokes a projection function on each element of a generic and returns the minimum resulting value. + + The type of the elements of . + The type of the value returned by the function represented by . + A sequence of values to determine the minimum of. + A projection function to apply to each element. + The cancellation token. + + The minimum value in the sequence. + + + + + Filters the elements of an based on a specified type. + + The type to filter the elements of the sequence on. + An whose elements to filter. + + A collection that contains the elements from that have type . + + + + + Sorts the elements of a sequence in ascending order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted according to a key. + + + + + Sorts the elements of a sequence in descending order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted in descending order according to a key. + + + + + Returns a sample of the elements in the . + + The type of the elements of . + An to return a sample of. + The number of elements in the sample. + + A sample of the elements in the . + + + + + Projects each element of a sequence into a new form by incorporating the + element's index. + + The type of the elements of . + The type of the value returned by the function represented by selector. + A sequence of values to project. + A projection function to apply to each element. + + An whose elements are the result of invoking a + projection function on each element of source. + + + + + Projects each element of a sequence to an and combines the resulting sequences into one sequence. + + The type of the elements of . + The type of the elements of the sequence returned by the function represented by . + A sequence of values to project. + A projection function to apply to each element. + + An whose elements are the result of invoking a one-to-many projection function on each element of the input sequence. + + + + + Projects each element of a sequence to an and + invokes a result selector function on each element therein. The resulting values from + each intermediate sequence are combined into a single, one-dimensional sequence and returned. + + The type of the elements of . + The type of the intermediate elements collected by the function represented by . + The type of the elements of the resulting sequence. + A sequence of values to project. + A projection function to apply to each element of the input sequence. + A projection function to apply to each element of each intermediate sequence. + + An whose elements are the result of invoking the one-to-many projection function on each element of and then mapping each of those sequence elements and their corresponding element to a result element. + + + + + Returns the only element of a sequence, and throws an exception if there is not exactly one element in the sequence. + + The type of the elements of . + An to return the single element of. + The cancellation token. + + The single element of the input sequence. + + + + + Returns the only element of a sequence that satisfies a specified condition, and throws an exception if more than one such element exists. + + The type of the elements of . + An to return a single element from. + A function to test an element for a condition. + The cancellation token. + + The single element of the input sequence that satisfies the condition in . + + + + + Returns the only element of a sequence, or a default value if the sequence is empty; this method throws an exception if there is more than one element in the sequence. + + The type of the elements of . + An to return the single element of. + The cancellation token. + + The single element of the input sequence, or default() if the sequence contains no elements. + + + + + Returns the only element of a sequence that satisfies a specified condition or a default value if no such element exists; this method throws an exception if more than one element satisfies the condition. + + The type of the elements of . + An to return a single element from. + A function to test an element for a condition. + The cancellation token. + + The single element of the input sequence that satisfies the condition in , or default() if no such element is found. + + + + + Bypasses a specified number of elements in a sequence and then returns the + remaining elements. + + The type of the elements of source + An to return elements from. + The number of elements to skip before returning the remaining elements. + + An that contains elements that occur after the + specified index in the input sequence. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the population standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values. + + A sequence of values to calculate the population standard deviation of. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sample standard deviation of a sequence of values that are obtained by invoking a transform function on each element of the input sequence. + + The type of the elements of . + A sequence of values to calculate the population standard deviation of. + A transform function to apply to each element. + The cancellation token. + + The population standard deviation of the sequence of values. + + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of a sequence of values. + + A sequence of values to calculate the sum of. + The cancellation token. + The sum of the values in the sequence. + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Computes the sum of the sequence of values that is obtained + by invoking a projection function on each element of the input sequence. + + The type of the elements of . + A sequence of values. + A projection function to apply to each element. + The cancellation token. + + The sum of the projected values. + + + + + Returns a specified number of contiguous elements from the start of a sequence. + + The type of the elements of . + The sequence to return elements from. + The number of elements to return. + + An that contains the specified number of elements + from the start of source. + + + + + Performs a subsequent ordering of the elements in a sequence in ascending + order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted according to a key. + + + + + Performs a subsequent ordering of the elements in a sequence in descending + order according to a key. + + The type of the elements of . + The type of the key returned by the function that is represented by keySelector. + A sequence of values to order. + A function to extract a key from an element. + + An whose elements are sorted in descending order according to a key. + + + + + Filters a sequence of values based on a predicate. + + The type of the elements of . + An to return elements from. + A function to test each element for a condition. + + An that contains elements from the input sequence + that satisfy the condition specified by predicate. + + + + + MongoDB only supports constants on the RHS for certain expressions, so we'll move them around + to make it easier to generate MongoDB syntax. + + + + + VB creates coalescing operations when dealing with nullable value comparisons, so we try and make this look like C# + + + + + VB uses a method for string comparisons, so we'll convert this into a BinaryExpression. + + + + + VB creates an IsNothing comparison using a method call. We'll translate this to a simple + null comparison. + + + + + VB introduces a Convert on the LHS with a Nothing comparison, so we make it look like + C# which does not have one with a comparison to null. + + + + + VB creates string index expressions using character comparison whereas C# uses ascii value comparison + we make VB's string index comparison look like C#. + + + + + An execution model. + + + + + Gets the type of the output. + + + + + This guy is going to replace calls like store.GetValue("d.y") with nestedStore.GetValue("y"). + + + + + Options for controlling translation from .NET expression trees into MongoDB expressions. + + + + + Gets or sets the string translation mode. + + + + + Options for a list collection names operation. + + + + + Gets or sets the filter. + + + + + Options for a list databases operation. + + + + + Gets or sets the filter. + + + + + Gets or sets the NameOnly flag. + + + + + Represents an identity defined by an X509 certificate. + + + + + Initializes a new instance of the class. + + The username. + + + + Extension methods for adding stages to a pipeline. + + + + + Appends a stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The stage. + The output serializer. + A new pipeline with an additional stage. + + + + Changes the output type of the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The output serializer. + + A new pipeline with an additional stage. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The group by expression. + The boundaries. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The type of the output documents. + The pipeline. + The group by expression. + The boundaries. + The output projection. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The group by expression. + The boundaries. + The options. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $bucket stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The type of the output documents. + The pipeline. + The group by expression. + The boundaries. + The output projection. + The options. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The group by expression. + The number of buckets. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The type of the output documents. + The pipeline. + The group by expression. + The number of buckets. + The output projection. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the value. + The pipeline. + The group by expression. + The number of buckets. + The options (optional). + The translation options. + + The fluent aggregate interface. + + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the value. + The type of the output documents. + The pipeline. + The group by expression. + The number of buckets. + The output projection. + The options (optional). + The translation options. + + The fluent aggregate interface. + + + + + Appends a $changeStream stage to the pipeline. + Normally you would prefer to use the Watch method of . + Only use this method if subsequent stages project away the resume token (the _id) + or you don't want the resulting cursor to automatically resume. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The options. + + The fluent aggregate interface. + + + + + Appends a $count stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + + A new pipeline with an additional stage. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The facets. + The options. + + A new pipeline with an additional stage. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The facets. + + The fluent aggregate interface. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The facets. + + The fluent aggregate interface. + + + + + Appends a $facet stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The facets. + + The fluent aggregate interface. + + + + + Used to start creating a pipeline for {TInput} documents. + + The type of the output. + The inputSerializer serializer. + + The fluent aggregate interface. + + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The stage. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The translation options. + The stage. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The pipeline. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The translation options. + The stage. + + + + Appends a $group stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The group projection. + + A new pipeline with an additional stage. + + + + + Appends a group stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The group projection. + + The fluent aggregate interface. + + + + + Appends a group stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the key. + The type of the output documents. + The pipeline. + The id. + The group projection. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $limit stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The limit. + + A new pipeline with an additional stage. + + + + + Appends a $lookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the foreign collection documents. + The type of the output documents. + The pipeline. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + + A new pipeline with an additional stage. + + + + + Appends a lookup stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the foreign collection documents. + The type of the output documents. + The pipeline. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + + The fluent aggregate interface. + + + + + Appends a $match stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The filter. + + A new pipeline with an additional stage. + + + + + Appends a match stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The filter. + + The fluent aggregate interface. + + + + + Appends a $match stage to the pipeline to select documents of a certain type. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The output serializer. + + A new pipeline with an additional stage. + + + + + + Appends a $out stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The output collection. + + A new pipeline with an additional stage. + + + + + + Appends a $project stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The projection. + + A new pipeline with an additional stage. + + + + + + Appends a project stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The projection. + + The fluent aggregate interface. + + + + + Appends a project stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The projection. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The new root. + + A new pipeline with an additional stage. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The new root. + The translation options. + + The fluent aggregate interface. + + + + + Appends a $skip stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The number of documents to skip. + + A new pipeline with an additional stage. + + + + + Appends a $sort stage to the pipeline. + + The type of the input documents. + The type of the output documents. + The pipeline. + The sort definition. + + A new pipeline with an additional stage. + + + + + Appends a $sortByCount stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The value expression. + + A new pipeline with an additional stage. + + + + + Appends a sortByCount stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the values. + The pipeline. + The value expression. + The translation options. + + The fluent aggregate interface. + + + + + Appends an $unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The field. + The options. + + A new pipeline with an additional stage. + + + + + Appends an unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The pipeline. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + The pipeline. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Represents a pipeline consisting of an existing pipeline with one additional stage appended. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + + + + Initializes a new instance of the class. + + The pipeline. + The stage. + The output serializer. + + + + + + + + + + + + + Represents an empty pipeline. + + The type of the input documents. + + + + Initializes a new instance of the class. + + The output serializer. + + + + + + + + + + + + + Represents a pipeline consisting of an existing pipeline with one additional stage prepended. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + + + + Initializes a new instance of the class. + + The stage. + The pipeline. + The output serializer. + + + + + + + + + + + + + Represents a pipeline with the output serializer replaced. + + The type of the input documents. + The type of the intermediate documents. + The type of the output documents. + + + + + Initializes a new instance of the class. + + The pipeline. + The output serializer. + + + + + + + + + + + + + A rendered pipeline stage. + + + + + Gets the name of the pipeline operator. + + + The name of the pipeline operator. + + + + + Gets the document. + + + + + Gets the output serializer. + + + + + A rendered pipeline stage. + + The type of the output. + + + + Initializes a new instance of the class. + + Name of the pipeline operator. + The document. + The output serializer. + + + + + + + Gets the output serializer. + + + + + + + + + + + A pipeline stage. + + + + + Gets the type of the input. + + + + + Gets the name of the pipeline operator. + + + + + Gets the type of the output. + + + + + Renders the specified document serializer. + + The input serializer. + The serializer registry. + An + + + + Returns a that represents this instance. + + The input serializer. + The serializer registry. + + A that represents this instance. + + + + + Base class for pipeline stages. + + The type of the input. + The type of the output. + + + + Gets the type of the input. + + + + + + + + Gets the type of the output. + + + + + Renders the specified document serializer. + + The input serializer. + The serializer registry. + A + + + + + + + Returns a that represents this instance. + + The input serializer. + The serializer registry. + + A that represents this instance. + + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + + + + A based stage. + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The document. + The output serializer. + + + + + + + + + + A JSON based pipeline stage. + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The json. + The output serializer. + + + + Gets the json. + + + + + + + + Gets the output serializer. + + + + + + + + A rendered pipeline. + + The type of the output. + + + + Initializes a new instance of the class. + + The pipeline. + The output serializer. + + + + Gets the documents. + + + + + Gets the serializer. + + + + + Base class for a pipeline. + + The type of the input. + The type of the output. + + + + Gets the output serializer. + + + + + Gets the stages. + + + + + Renders the pipeline. + + The input serializer. + The serializer registry. + A + + + + + + + Returns a that represents this instance. + + The input serializer. + The serializer registry. + + A that represents this instance. + + + + + Creates a pipeline. + + The stages. + The output serializer. + A . + + + + Creates a pipeline. + + The stages. + The output serializer. + A . + + + + Creates a pipeline. + + The stages. + The output serializer. + A . + + + + Creates a pipeline. + + The stages. + A . + + + + Creates a pipeline. + + The stages. + A . + + + + Performs an implicit conversion from [] to . + + The stages. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The stages. + + The result of the conversion. + + + + + Performs an implicit conversion from [] to . + + The stages. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The stages. + + The result of the conversion. + + + + + A pipeline composed of instances of . + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The stages. + The output serializer. + + + + + + + Gets the stages. + + + + + + + + + + + A pipeline composed of instances of . + + The type of the input. + The type of the output. + + + + Initializes a new instance of the class. + + The stages. + The output serializer. + + + + + + + Gets the serializer. + + + + + Gets the stages. + + + + + + + + + + + + + + Represents the details of a write error for a particular request. + + + + + Gets the index of the request that had an error. + + + + + Server connection mode. + + + + + Automatically determine how to connect. + + + + + Connect directly to a server. + + + + + Connect to a replica set. + + + + + Connect to one or more shard routers. + + + + + Connect to a standalone server. + + + + + Base class for filters. + + The type of the document. + + + + Gets an empty filter. An empty filter matches everything. + + + + + Renders the filter to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from a predicate expression to . + + The predicate. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Implements the operator &. + + The LHS. + The RHS. + + The result of the operator. + + + + + Implements the operator |. + + The LHS. + The RHS. + + The result of the operator. + + + + + Implements the operator !. + + The op. + + The result of the operator. + + + + + A based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + + + + An based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + A JSON based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + An based filter. + + The type of the document. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + Base class for implementors of . + + The type of the document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Methods for building pipeline stages. + + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The group by expression. + The boundaries. + The options. + The stage. + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The group by expression. + The boundaries. + The output projection. + The options. + The stage. + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The group by expression. + The boundaries. + The options. + The translation options. + The stage. + + + + Creates a $bucket stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The group by expression. + The boundaries. + The output projection. + The options. + The translation options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the values. + The group by expression. + The number of buckets. + The options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The group by expression. + The number of buckets. + The output projection. + The options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the value. + The group by expression. + The number of buckets. + The options (optional). + The translation options. + The stage. + + + + Creates a $bucketAuto stage. + + The type of the input documents. + The type of the output documents. + The type of the output documents. + The group by expression. + The number of buckets. + The output projection. + The options (optional). + The translation options. + The stage. + + + + Creates a $changeStream stage. + Normally you would prefer to use the Watch method of . + Only use this method if subsequent stages project away the resume token (the _id) + or you don't want the resulting cursor to automatically resume. + + The type of the input documents. + The options. + The stage. + + + + Creates a $count stage. + + The type of the input documents. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The type of the output documents. + The facets. + The options. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The facets. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The facets. + The stage. + + + + Creates a $facet stage. + + The type of the input documents. + The type of the output documents. + The facets. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The fluent aggregate interface. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The translation options. + The stage. + + + + Creates a $graphLookup stage. + + The type of the input documents. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the output documents. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The translation options. + The stage. + + + + Creates a $group stage. + + The type of the input documents. + The type of the output documents. + The group projection. + The stage. + + + + Creates a $group stage. + + The type of the input documents. + The group projection. + The stage. + + + + Creates a $group stage. + + The type of the input documents. + The type of the values. + The type of the output documents. + The value field. + The group projection. + The translation options. + The stage. + + + + Creates a $limit stage. + + The type of the input documents. + The limit. + The stage. + + + + Creates a $lookup stage. + + The type of the input documents. + The type of the foreign collection documents. + The type of the output documents. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + The stage. + + + + Creates a $lookup stage. + + The type of the input documents. + The type of the foreign collection documents. + The type of the output documents. + The foreign collection. + The local field. + The foreign field. + The "as" field. + The options. + The stage. + + + + Creates a $match stage. + + The type of the input documents. + The filter. + The stage. + + + + Creates a $match stage. + + The type of the input documents. + The filter. + The stage. + + + + Create a $match stage that select documents of a sub type. + + The type of the input documents. + The type of the output documents. + The output serializer. + The stage. + + + + Creates a $out stage. + + The type of the input documents. + The output collection. + The stage. + + + + Creates a $project stage. + + The type of the input documents. + The type of the output documents. + The projection. + The stage. + + + + Creates a $project stage. + + The type of the input documents. + The projection. + The stage. + + + + Creates a $project stage. + + The type of the input documents. + The type of the output documents. + The projection. + The translation options. + The stage. + + + + Creates a $replaceRoot stage. + + The type of the input documents. + The type of the output documents. + The new root. + The stage. + + + + Creates a $replaceRoot stage. + + The type of the input documents. + The type of the output documents. + The new root. + The translation options. + The stage. + + + + Creates a $skip stage. + + The type of the input documents. + The skip. + The stage. + + + + Creates a $sort stage. + + The type of the input documents. + The sort. + The stage. + + + + Creates a $sortByCount stage. + + The type of the input documents. + The type of the values. + The value expression. + The stage. + + + + Creates a $sortByCount stage. + + The type of the input documents. + The type of the values. + The value. + The translation options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The type of the output documents. + The field. + The options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The field to unwind. + The options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The field to unwind. + The options. + The stage. + + + + Creates an $unwind stage. + + The type of the input documents. + The type of the output documents. + The field to unwind. + The options. + The stage. + + + + Extension methods for projections. + + + + + Combines an existing projection with a projection that filters the contents of an array. + + The type of the document. + The type of the item. + The projection. + The field. + The filter. + + A combined projection. + + + + + Combines an existing projection with a projection that filters the contents of an array. + + The type of the document. + The type of the item. + The projection. + The field. + The filter. + + A combined projection. + + + + + Combines an existing projection with a projection that filters the contents of an array. + + The type of the document. + The type of the item. + The projection. + The field. + The filter. + + A combined projection. + + + + + Combines an existing projection with a projection that excludes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a projection that excludes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a projection that includes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a projection that includes a field. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with a text score projection. + + The type of the document. + The projection. + The field. + + A combined projection. + + + + + Combines an existing projection with an array slice projection. + + The type of the document. + The projection. + The field. + The skip. + The limit. + + A combined projection. + + + + + Combines an existing projection with an array slice projection. + + The type of the document. + The projection. + The field. + The skip. + The limit. + + A combined projection. + + + + + A builder for a projection. + + The type of the source. + + + + Creates a client side projection that is implemented solely by using a different serializer. + + The type of the projection. + The projection serializer. + A client side deserialization projection. + + + + Combines the specified projections. + + The projections. + + A combined projection. + + + + + Combines the specified projections. + + The projections. + + A combined projection. + + + + + Creates a projection that filters the contents of an array. + + The type of the item. + The field. + The filter. + + An array filtering projection. + + + + + Creates a projection that filters the contents of an array. + + The type of the item. + The field. + The filter. + + An array filtering projection. + + + + + Creates a projection that filters the contents of an array. + + The type of the item. + The field. + The filter. + + An array filtering projection. + + + + + Creates a projection that excludes a field. + + The field. + + An exclusion projection. + + + + + Creates a projection that excludes a field. + + The field. + + An exclusion projection. + + + + + Creates a projection based on the expression. + + The type of the result. + The expression. + + An expression projection. + + + + + Creates a projection that includes a field. + + The field. + + An inclusion projection. + + + + + Creates a projection that includes a field. + + The field. + + An inclusion projection. + + + + + Creates a text score projection. + + The field. + + A text score projection. + + + + + Creates an array slice projection. + + The field. + The skip. + The limit. + + An array slice projection. + + + + + Creates an array slice projection. + + The field. + The skip. + The limit. + + An array slice projection. + + + + + Extension methods for an index keys definition. + + + + + Combines an existing index keys definition with an ascending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with an ascending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a descending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a descending index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2d index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2d index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a geo haystack index key definition. + + The type of the document. + The keys. + The field. + Name of the additional field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a geo haystack index key definition. + + The type of the document. + The keys. + The field. + Name of the additional field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2dsphere index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a 2dsphere index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a hashed index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a hashed index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a text index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + Combines an existing index keys definition with a text index key definition. + + The type of the document. + The keys. + The field. + + A combined index keys definition. + + + + + A builder for an . + + The type of the document. + + + + Creates an ascending index key definition. + + The field. + An ascending index key definition. + + + + Creates an ascending index key definition. + + The field. + An ascending index key definition. + + + + Creates a combined index keys definition. + + The keys. + A combined index keys definition. + + + + Creates a combined index keys definition. + + The keys. + A combined index keys definition. + + + + Creates a descending index key definition. + + The field. + A descending index key definition. + + + + Creates a descending index key definition. + + The field. + A descending index key definition. + + + + Creates a 2d index key definition. + + The field. + A 2d index key definition. + + + + Creates a 2d index key definition. + + The field. + A 2d index key definition. + + + + Creates a geo haystack index key definition. + + The field. + Name of the additional field. + + A geo haystack index key definition. + + + + + Creates a geo haystack index key definition. + + The field. + Name of the additional field. + + A geo haystack index key definition. + + + + + Creates a 2dsphere index key definition. + + The field. + A 2dsphere index key definition. + + + + Creates a 2dsphere index key definition. + + The field. + A 2dsphere index key definition. + + + + Creates a hashed index key definition. + + The field. + A hashed index key definition. + + + + Creates a hashed index key definition. + + The field. + A hashed index key definition. + + + + Creates a text index key definition. + + The field. + A text index key definition. + + + + Creates a text index key definition. + + The field. + A text index key definition. + + + + The interface for a server session. + + + + + Gets the session Id. + + + The session Id. + + + + + Gets the time this server session was last used (in UTC). + + + The time this server session was last used (in UTC). + + + + + Gets the next transaction number. + + The transaction number. + + + + Called by the driver when the session is used (i.e. sent to the server). + + + + + A server session. + + + + + + + + + + + + + + + + + + + + + Extension methods for SortDefinition. + + + + + Combines an existing sort with an ascending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with an ascending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with an descending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with an descending field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + Combines an existing sort with a descending sort on the computed relevance score of a text search. + The field name should be the name of the projected relevance score field. + + The type of the document. + The sort. + The field. + + A combined sort. + + + + + A builder for a . + + The type of the document. + + + + Creates an ascending sort. + + The field. + An ascending sort. + + + + Creates an ascending sort. + + The field. + An ascending sort. + + + + Creates a combined sort. + + The sorts. + A combined sort. + + + + Creates a combined sort. + + The sorts. + A combined sort. + + + + Creates a descending sort. + + The field. + A descending sort. + + + + Creates a descending sort. + + The field. + A descending sort. + + + + Creates a descending sort on the computed relevance score of a text search. + The name of the key should be the name of the projected relevence score field. + + The field. + A meta text score sort. + + + + A builder for a . + + The type of the document. + + + + Gets an empty filter. An empty filter matches everything. + + + + + Creates an all filter for an array field. + + The type of the item. + The field. + The values. + An all filter. + + + + Creates an all filter for an array field. + + The type of the item. + The field. + The values. + An all filter. + + + + Creates an and filter. + + The filters. + A filter. + + + + Creates an and filter. + + The filters. + An and filter. + + + + Creates an equality filter for an array field. + + The type of the item. + The field. + The value. + An equality filter. + + + + Creates an equality filter for an array field. + + The type of the item. + The field. + The value. + An equality filter. + + + + Creates a greater than filter for an array field. + + The type of the item. + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for an array field. + + The type of the item. + The field. + The value. + A greater than filter. + + + + Creates a greater than or equal filter for an array field. + + The type of the item. + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for an array field. + + The type of the item. + The field. + The value. + A greater than or equal filter. + + + + Creates a less than filter for an array field. + + The type of the item. + The field. + The value. + A less than filter. + + + + Creates a less than filter for an array field. + + The type of the item. + The field. + The value. + A less than filter. + + + + Creates a less than or equal filter for an array field. + + The type of the item. + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for an array field. + + The type of the item. + The field. + The value. + A less than or equal filter. + + + + Creates an in filter for an array field. + + The type of the item. + The field. + The values. + An in filter. + + + + Creates an in filter for an array field. + + The type of the item. + The field. + The values. + An in filter. + + + + Creates a not equal filter for an array field. + + The type of the item. + The field. + The value. + A not equal filter. + + + + Creates a not equal filter for an array field. + + The type of the item. + The field. + The value. + A not equal filter. + + + + Creates a not in filter for an array field. + + The type of the item. + The field. + The values. + A not in filter. + + + + Creates a not in filter for an array field. + + The type of the item. + The field. + The values. + A not in filter. + + + + Creates a bits all clear filter. + + The field. + The bitmask. + A bits all clear filter. + + + + Creates a bits all clear filter. + + The field. + The bitmask. + A bits all clear filter. + + + + Creates a bits all set filter. + + The field. + The bitmask. + A bits all set filter. + + + + Creates a bits all set filter. + + The field. + The bitmask. + A bits all set filter. + + + + Creates a bits any clear filter. + + The field. + The bitmask. + A bits any clear filter. + + + + Creates a bits any clear filter. + + The field. + The bitmask. + A bits any clear filter. + + + + Creates a bits any set filter. + + The field. + The bitmask. + A bits any set filter. + + + + Creates a bits any set filter. + + The field. + The bitmask. + A bits any set filter. + + + + Creates an element match filter for an array field. + + The type of the item. + The field. + The filter. + An element match filter. + + + + Creates an element match filter for an array field. + + The type of the item. + The field. + The filter. + An element match filter. + + + + Creates an element match filter for an array field. + + The type of the item. + The field. + The filter. + An element match filter. + + + + Creates an equality filter. + + The type of the field. + The field. + The value. + An equality filter. + + + + Creates an equality filter. + + The type of the field. + The field. + The value. + An equality filter. + + + + Creates an exists filter. + + The field. + if set to true [exists]. + An exists filter. + + + + Creates an exists filter. + + The field. + if set to true [exists]. + An exists filter. + + + + Creates a geo intersects filter. + + The type of the coordinates. + The field. + The geometry. + A geo intersects filter. + + + + Creates a geo intersects filter. + + The type of the coordinates. + The field. + The geometry. + A geo intersects filter. + + + + Creates a geo within filter. + + The type of the coordinates. + The field. + The geometry. + A geo within filter. + + + + Creates a geo within filter. + + The type of the coordinates. + The field. + The geometry. + A geo within filter. + + + + Creates a geo within box filter. + + The field. + The lower left x. + The lower left y. + The upper right x. + The upper right y. + A geo within box filter. + + + + Creates a geo within box filter. + + The field. + The lower left x. + The lower left y. + The upper right x. + The upper right y. + A geo within box filter. + + + + Creates a geo within center filter. + + The field. + The x. + The y. + The radius. + A geo within center filter. + + + + Creates a geo within center filter. + + The field. + The x. + The y. + The radius. + A geo within center filter. + + + + Creates a geo within center sphere filter. + + The field. + The x. + The y. + The radius. + A geo within center sphere filter. + + + + Creates a geo within center sphere filter. + + The field. + The x. + The y. + The radius. + A geo within center sphere filter. + + + + Creates a geo within polygon filter. + + The field. + The points. + A geo within polygon filter. + + + + Creates a geo within polygon filter. + + The field. + The points. + A geo within polygon filter. + + + + Creates a greater than filter for a UInt32 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for a UInt64 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter. + + The type of the field. + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for a UInt32 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter for a UInt64 field. + + The field. + The value. + A greater than filter. + + + + Creates a greater than filter. + + The type of the field. + The field. + The value. + A greater than filter. + + + + Creates a greater than or equal filter for a UInt32 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for a UInt64 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter. + + The type of the field. + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for a UInt32 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter for a UInt64 field. + + The field. + The value. + A greater than or equal filter. + + + + Creates a greater than or equal filter. + + The type of the field. + The field. + The value. + A greater than or equal filter. + + + + Creates an in filter. + + The type of the field. + The field. + The values. + An in filter. + + + + Creates an in filter. + + The type of the field. + The field. + The values. + An in filter. + + + + Creates a less than filter for a UInt32 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter for a UInt64 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter. + + The type of the field. + The field. + The value. + A less than filter. + + + + Creates a less than filter for a UInt32 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter for a UInt64 field. + + The field. + The value. + A less than filter. + + + + Creates a less than filter. + + The type of the field. + The field. + The value. + A less than filter. + + + + Creates a less than or equal filter for a UInt32 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for a UInt64 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter. + + The type of the field. + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for a UInt32 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter for a UInt64 field. + + The field. + The value. + A less than or equal filter. + + + + Creates a less than or equal filter. + + The type of the field. + The field. + The value. + A less than or equal filter. + + + + Creates a modulo filter. + + The field. + The modulus. + The remainder. + A modulo filter. + + + + Creates a modulo filter. + + The field. + The modulus. + The remainder. + A modulo filter. + + + + Creates a not equal filter. + + The type of the field. + The field. + The value. + A not equal filter. + + + + Creates a not equal filter. + + The type of the field. + The field. + The value. + A not equal filter. + + + + Creates a near filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near filter. + + + + Creates a near sphere filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a near sphere filter. + + The field. + The x. + The y. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a near sphere filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a near sphere filter. + + The type of the coordinates. + The field. + The geometry. + The maximum distance. + The minimum distance. + A near sphere filter. + + + + Creates a not in filter. + + The type of the field. + The field. + The values. + A not in filter. + + + + Creates a not in filter. + + The type of the field. + The field. + The values. + A not in filter. + + + + Creates a not filter. + + The filter. + A not filter. + + + + Creates an OfType filter that matches documents of a derived type. + + The type of the matching derived documents. + An OfType filter. + + + + Creates an OfType filter that matches documents of a derived type and that also match a filter on the derived document. + + The type of the matching derived documents. + A filter on the derived document. + An OfType filter. + + + + Creates an OfType filter that matches documents of a derived type and that also match a filter on the derived document. + + The type of the matching derived documents. + A filter on the derived document. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived typer. + + The type of the field. + The type of the matching derived field value. + The field. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived type and that also match a filter on the derived field. + + The type of the field. + The type of the matching derived field value. + The field. + A filter on the derived field. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived type. + + The type of the field. + The type of the matching derived field value. + The field. + An OfType filter. + + + + Creates an OfType filter that matches documents with a field of a derived type and that also match a filter on the derived field. + + The type of the field. + The type of the matching derived field value. + The field. + A filter on the derived field. + An OfType filter. + + + + Creates an or filter. + + The filters. + An or filter. + + + + Creates an or filter. + + The filters. + An or filter. + + + + Creates a regular expression filter. + + The field. + The regex. + A regular expression filter. + + + + Creates a regular expression filter. + + The field. + The regex. + A regular expression filter. + + + + Creates a size filter. + + The field. + The size. + A size filter. + + + + Creates a size filter. + + The field. + The size. + A size filter. + + + + Creates a size greater than filter. + + The field. + The size. + A size greater than filter. + + + + Creates a size greater than filter. + + The field. + The size. + A size greater than filter. + + + + Creates a size greater than or equal filter. + + The field. + The size. + A size greater than or equal filter. + + + + Creates a size greater than or equal filter. + + The field. + The size. + A size greater than or equal filter. + + + + Creates a size less than filter. + + The field. + The size. + A size less than filter. + + + + Creates a size less than filter. + + The field. + The size. + A size less than filter. + + + + Creates a size less than or equal filter. + + The field. + The size. + A size less than or equal filter. + + + + Creates a size less than or equal filter. + + The field. + The size. + A size less than or equal filter. + + + + Creates a text filter. + + The search. + The text search options. + A text filter. + + + + Creates a text filter. + + The search. + The language. + A text filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a type filter. + + The field. + The type. + A type filter. + + + + Creates a filter based on the expression. + + The expression. + An expression filter. + + + + Extension methods for + + + + + Appends a $bucket stage to the pipeline. + + The type of the result. + The type of the value. + The aggregate. + The expression providing the value to group by. + The bucket boundaries. + The options. + The fluent aggregate interface. + + + + Appends a $bucket stage to the pipeline. + + The type of the result. + The type of the value. + The type of the new result. + The aggregate. + The expression providing the value to group by. + The bucket boundaries. + The output projection. + The options. + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the result. + The type of the value. + The aggregate. + The expression providing the value to group by. + The number of buckets. + The options (optional). + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the result. + The type of the value. + The type of the new result. + The aggregate. + The expression providing the value to group by. + The number of buckets. + The output projection. + The options (optional). + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the result. + The aggregate. + The facets. + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the result. + The aggregate. + The facets. + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The facets. + + The fluent aggregate interface. + + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The type of the new result (must be same as TResult with an additional as field). + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the from documents. + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the new result (must be same as TResult with an additional as field). + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field. + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The options. + The fluent aggregate interface. + + + + Appends a $graphLookup stage to the pipeline. + + The type of the result. + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the new result (must be same as TResult with an additional as field). + The aggregate. + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The fluent aggregate interface. + + + + Appends a group stage to the pipeline. + + The type of the result. + The aggregate. + The group projection. + + The fluent aggregate interface. + + + + + Appends a group stage to the pipeline. + + The type of the result. + The type of the key. + The type of the new result. + The aggregate. + The id. + The group projection. + + The fluent aggregate interface. + + + + + Appends a lookup stage to the pipeline. + + The type of the result. + The aggregate. + Name of the foreign collection. + The local field. + The foreign field. + The field in the result to place the foreign matches. + The fluent aggregate interface. + + + + Appends a lookup stage to the pipeline. + + The type of the result. + The type of the foreign collection. + The type of the new result. + The aggregate. + The foreign collection. + The local field. + The foreign field. + The field in the result to place the foreign matches. + The options. + The fluent aggregate interface. + + + + Appends a match stage to the pipeline. + + The type of the result. + The aggregate. + The filter. + + The fluent aggregate interface. + + + + + Appends a project stage to the pipeline. + + The type of the result. + The aggregate. + The projection. + + The fluent aggregate interface. + + + + + Appends a project stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The projection. + + The fluent aggregate interface. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The new root. + + The fluent aggregate interface. + + + + + Appends an ascending sort stage to the pipeline. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Appends a sortByCount stage to the pipeline. + + The type of the result. + The type of the key. + The aggregate. + The id. + + The fluent aggregate interface. + + + + + Appends a descending sort stage to the pipeline. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Modifies the current sort stage by appending an ascending field specification to it. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Modifies the current sort stage by appending a descending field specification to it. + + The type of the result. + The aggregate. + The field to sort by. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The aggregate. + The field to unwind. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The aggregate. + The field to unwind. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The field to unwind. + The new result serializer. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the result. + The type of the new result. + The aggregate. + The field to unwind. + The options. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result, or the default value if the result set is empty. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the first document of the aggregate result, or the default value if the result set is empty. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result. Throws an exception if the result set does not contain exactly one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result. Throws an exception if the result set does not contain exactly one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result, or the default value if the result set is empty. Throws an exception if the result set contains more than one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Returns the only document of the aggregate result, or the default value if the result set is empty. Throws an exception if the result set contains more than one document. + + The type of the result. + The aggregate. + The cancellation token. + + The fluent aggregate interface. + + + + + Options for an aggregate operation. + + + + + Gets or sets a value indicating whether to allow disk use. + + + + + Gets or sets the size of a batch. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets the comment. + + + + + Gets or sets the hint. This must either be a BsonString representing the index name or a BsonDocument representing the key pattern of the index. + + + + + Gets or sets the maximum await time. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the translation options. + + + + + Gets or sets a value indicating whether to use a cursor. + + + + + Options for a bulk write operation. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether the requests are fulfilled in order. + + + + + Represents a registry of already created clusters. + + + + + Gets the default cluster registry. + + + The default cluster registry. + + + + + Unregisters and disposes the cluster. + + The cluster. + + + + Options for a count operation. + + + + + Gets or sets the collation. + + + + + Gets or sets the hint. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the skip. + + + + + Options for creating an index. + + + + + Gets or sets a value indicating whether to create the index in the background. + + + + + Gets or sets the precision, in bits, used with geohash indexes. + + + + + Gets or sets the size of a geohash bucket. + + + + + Gets or sets the collation. + + + + + Gets or sets the default language. + + + + + Gets or sets when documents expire (used with TTL indexes). + + + + + Gets or sets the language override. + + + + + Gets or sets the max value for 2d indexes. + + + + + Gets or sets the min value for 2d indexes. + + + + + Gets or sets the index name. + + + + + Gets or sets a value indicating whether the index is a sparse index. + + + + + Gets or sets the index version for 2dsphere indexes. + + + + + Gets or sets the storage engine options. + + + + + Gets or sets the index version for text indexes. + + + + + Gets or sets a value indicating whether the index is a unique index. + + + + + Gets or sets the version of the index. + + + + + Gets or sets the weights for text indexes. + + + + + Options for creating an index. + + The type of the document. + + + + Gets or sets the partial filter expression. + + + + + Fluent interface for aggregate. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the result of the pipeline. + + + + Gets the database. + + + + + Gets the options. + + + + + Gets the stages. + + + + + Appends the stage to the pipeline. + + The type of the result of the stage. + The stage. + The fluent aggregate interface. + + + + Changes the result type of the pipeline. + + The type of the new result. + The new result serializer. + The fluent aggregate interface. + + + + Appends a $bucket stage to the pipeline. + + The type of the value. + The expression providing the value to group by. + The bucket boundaries. + The options. + The fluent aggregate interface. + + + + Appends a $bucket stage to the pipeline with a custom projection. + + The type of the value. + The type of the new result. + The expression providing the value to group by. + The bucket boundaries. + The output projection. + The options. + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline. + + The type of the value. + The expression providing the value to group by. + The number of buckets. + The options (optional). + The fluent aggregate interface. + + + + Appends a $bucketAuto stage to the pipeline with a custom projection. + + The type of the value. + The type of the new result. + The expression providing the value to group by. + The number of buckets. + The output projection. + The options (optional). + The fluent aggregate interface. + + + + Appends a $changeStream stage to the pipeline. + Normally you would prefer to use the Watch method of . + Only use this method if subsequent stages project away the resume token (the _id) + or you don't want the resulting cursor to automatically resume. + + The options. + The fluent aggregate interface. + + + + Appends a count stage to the pipeline. + + The fluent aggregate interface. + + + + Appends a $facet stage to the pipeline. + + The type of the new result. + The facets. + The options. + + The fluent aggregate interface. + + + + + Appends a $graphLookup stage to the pipeline. + + The type of the from documents. + The type of the connect from field (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the connect to field. + The type of the start with expression (must be either TConnectTo or a type that implements IEnumerable{TConnectTo}). + The type of the as field elements. + The type of the as field. + The type of the new result (must be same as TResult with an additional as field). + The from collection. + The connect from field. + The connect to field. + The start with value. + The as field. + The depth field. + The options. + The fluent aggregate interface. + + + + Appends a group stage to the pipeline. + + The type of the result of the stage. + The group projection. + The fluent aggregate interface. + + + + Appends a limit stage to the pipeline. + + The limit. + The fluent aggregate interface. + + + + Appends a lookup stage to the pipeline. + + The type of the foreign document. + The type of the new result. + Name of the other collection. + The local field. + The foreign field. + The field in to place the foreign results. + The options. + The fluent aggregate interface. + + + + Appends a match stage to the pipeline. + + The filter. + The fluent aggregate interface. + + + + Appends a match stage to the pipeline that matches derived documents and changes the result type to the derived type. + + The type of the derived documents. + The new result serializer. + The fluent aggregate interface. + + + + Appends an out stage to the pipeline and executes it, and then returns a cursor to read the contents of the output collection. + + Name of the collection. + The cancellation token. + A cursor. + + + + Appends an out stage to the pipeline and executes it, and then returns a cursor to read the contents of the output collection. + + Name of the collection. + The cancellation token. + A Task whose result is a cursor. + + + + Appends a project stage to the pipeline. + + The type of the result of the stage. + The projection. + + The fluent aggregate interface. + + + + + Appends a $replaceRoot stage to the pipeline. + + The type of the new result. + The new root. + The fluent aggregate interface. + + + + Appends a skip stage to the pipeline. + + The number of documents to skip. + The fluent aggregate interface. + + + + Appends a sort stage to the pipeline. + + The sort specification. + The fluent aggregate interface. + + + + Appends a sortByCount stage to the pipeline. + + The type of the identifier. + The identifier. + The fluent aggregate interface. + + + + Appends an unwind stage to the pipeline. + + The type of the result of the stage. + The field. + The new result serializer. + + The fluent aggregate interface. + + + + + Appends an unwind stage to the pipeline. + + The type of the new result. + The field. + The options. + The fluent aggregate interface. + + + + Fluent interface for aggregate. + + The type of the result. + + + + Combines the current sort definition with an additional sort definition. + + The new sort. + The fluent aggregate interface. + + + + Fluent interface for find. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Gets or sets the filter. + + + + + Gets the options. + + + + + A simplified type of projection that changes the result type by using a different serializer. + + The type of the result. + The result serializer. + The fluent find interface. + + + + Counts the number of documents. + + The cancellation token. + The count. + + + + Counts the number of documents. + + The cancellation token. + A Task whose result is the count. + + + + Counts the number of documents. + + + Note: when migrating from Count to CountDocuments the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The cancellation token. + The count. + + + + Counts the number of documents. + + + Note: when migrating from CountAsync to CountDocumentsAsync the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The cancellation token. + A Task whose result is the count. + + + + Limits the number of documents. + + The limit. + The fluent find interface. + + + + Projects the the result. + + The type of the projection. + The projection. + The fluent find interface. + + + + Skips the the specified number of documents. + + The skip. + The fluent find interface. + + + + Sorts the the documents. + + The sort. + The fluent find interface. + + + + Fluent interface for find. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Extension methods for + + + + + Projects the result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The projection. + The fluent find interface. + + + + Projects the result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The type of the new projection. + The fluent find. + The projection. + The fluent find interface. + + + + Sorts the results by an ascending field. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Sorts the results by a descending field. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Adds an ascending field to the existing sort. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Adds a descending field to the existing sort. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The field. + The fluent find interface. + + + + Get the first result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result. + + + + Get the first result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result. + + + + Get the first result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result or null. + + + + Get the first result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the first result or null. + + + + Gets a single result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result. + + + + Gets a single result. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result. + + + + Gets a single result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result or null. + + + + Gets a single result or null. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The fluent find. + The cancellation token. + A Task whose result is the single result or null. + + + + Extension methods for . + + + + + Begins a fluent aggregation interface. + + The type of the document. + The collection. + The options. + + A fluent aggregate interface. + + + + + Begins a fluent aggregation interface. + + The type of the document. + The collection. + The session. + The options. + + A fluent aggregate interface. + + + + + Creates a queryable source of documents. + + The type of the document. + The collection. + The aggregate options + A queryable source of documents. + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The session. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The session. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Gets the distinct values for a specified field. + + The type of the document. + The type of the result. + The collection. + The session. + The field. + The filter. + The options. + The cancellation token. + + The distinct values for the specified field. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The filter. + The options. + + A fluent find interface. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The session. + The filter. + The options. + + A fluent find interface. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The filter. + The options. + + A fluent interface. + + + + + Begins a fluent find interface. + + The type of the document. + The collection. + The session. + The filter. + The options. + + A fluent interface. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds the documents matching the filter. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The collection. + The session. + The filter. + The options. + The cancellation token. + + The deleted document if one was deleted. + + + + + Finds a single document and deletes it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The collection. + The filter. + The session. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Replaces a single document. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The type of the document. + The collection. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The type of the document. + The collection. + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Updates many documents. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The type of the document. + The collection. + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The session. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the document. + The collection. + The session. + The options. + The cancellation token. + + A change stream. + + + + + An interface representing methods used to create, delete and modify indexes. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the document. + + + + Gets the namespace of the collection. + + + + + Gets the document serializer. + + + + + Gets the collection settings. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + An of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates multiple indexes. + + The session. + The models defining each of the indexes. + The options for create multiple indexes. + The cancellation token. + + A task whose result is an of the names of the indexes that were created. + + + + + Creates an index. + + The model defining the index. + The create index operation options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The keys. + The create index request options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The session. + The keys. + The create index request options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The session. + The model defining the index. + The create index operation options. + The cancellation token. + + The name of the index that was created. + + + + + Creates an index. + + The model defining the index. + The create index operation options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Creates an index. + + The keys. + The create index request options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Creates an index. + + The session. + The keys. + The create index request options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Creates an index. + + The session. + The model defining the index. + The create index operation options. + The cancellation token. + + A task whose result is the name of the index that was created. + + + + + Drops all the indexes. + + The options. + The cancellation token. + + + + Drops all the indexes. + + The cancellation token. + + + + Drops all the indexes. + + The session. + The cancellation token. + + + + Drops all the indexes. + + The session. + The options. + The cancellation token. + + + + Drops all the indexes. + + The options. + The cancellation token. + + A task. + + + + + Drops all the indexes. + + The cancellation token. + A task. + + + + Drops all the indexes. + + The session. + The cancellation token. + + A task. + + + + + Drops all the indexes. + + The session. + The options. + The cancellation token. + + A task. + + + + + Drops an index by its name. + + The name. + The cancellation token. + + + + Drops an index by its name. + + The name. + The options. + The cancellation token. + + + + Drops an index by its name. + + The session. + The name. + The cancellation token. + + + + Drops an index by its name. + + The session. + The name. + The options. + The cancellation token. + + + + Drops an index by its name. + + The name. + The cancellation token. + A task. + + + + Drops an index by its name. + + The name. + The options. + The cancellation token. + A task. + + + + Drops an index by its name. + + The session. + The name. + The cancellation token. + + A task. + + + + + Drops an index by its name. + + The session. + The name. + The options. + The cancellation token. + + A task. + + + + + Lists the indexes. + + The cancellation token. + A cursor. + + + + Lists the indexes. + + The session. + The cancellation token. + + A cursor. + + + + + Lists the indexes. + + The cancellation token. + A Task whose result is a cursor. + + + + Lists the indexes. + + The session. + The cancellation token. + + A Task whose result is a cursor. + + + + + Options for inserting many documents. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether the requests are fulfilled in order. + + + + + Options for a list collections operation. + + + + + Gets or sets the filter. + + + + + Represents the options for a map-reduce operation. + + The type of the document. + The type of the result. + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets the filter. + + + + + Gets or sets the finalize function. + + + + + Gets or sets the java script mode. + + + + + Gets or sets the limit. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the output options. + + + + + Gets or sets the result serializer. + + + + + Gets or sets the scope. + + + + + Gets or sets the sort. + + + + + Gets or sets whether to include timing information. + + + + + Represents the output options for a map-reduce operation. + + + + + An inline map-reduce output options. + + + + + A merge map-reduce output options. + + The name of the collection. + The name of the database. + Whether the output collection should be sharded. + Whether the server should not lock the database for the duration of the merge. + A merge map-reduce output options. + + + + A reduce map-reduce output options. + + The name of the collection. + The name of the database. + Whether the output collection should be sharded. + Whether the server should not lock the database for the duration of the reduce. + A reduce map-reduce output options. + + + + A replace map-reduce output options. + + The name of the collection. + Name of the database. + Whether the output collection should be sharded. + A replace map-reduce output options. + + + + Base class for implementors of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + The type of the document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + The type of the document. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Base class for implementors of . + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + A rendered command. + + The type of the result. + + + + Initializes a new instance of the class. + + The document. + The result serializer. + + + + Gets the document. + + + + + Gets the result serializer. + + + + + Base class for commands. + + The type of the result. + + + + Renders the command to a . + + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based command. + + The type of the result. + + + + Initializes a new instance of the class. + + The document. + The result serializer. + + + + Gets the document. + + + + + Gets the result serializer. + + + + + + + + A JSON based command. + + The type of the result. + + + + Initializes a new instance of the class. + + The json. + The result serializer. + + + + Gets the json. + + + + + Gets the result serializer. + + + + + + + + An based command. + + The type of the result. + + + + Initializes a new instance of the class. + + The object. + The result serializer. + + + + Gets the object. + + + + + Gets the result serializer. + + + + + + + + Options for the $unwind aggregation stage. + + The type of the result. + + + + Gets or sets the field with which to include the array index. + + + + + Gets or sets whether to preserve null and empty arrays. + + + + + Gets or sets the result serializer. + + + + + Represents text search options. + + + + + Gets or sets whether a text search should be case sensitive. + + + + + Gets or sets whether a text search should be diacritic sensitive. + + + + + Gets or sets the language for a text search. + + + + + Extension methods for UpdateDefinition. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with an add to set operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with a bitwise and operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise and operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise or operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise or operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise xor operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a bitwise xor operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a current date operator. + + The type of the document. + The update. + The field. + The type. + + A combined update. + + + + + Combines an existing update with a current date operator. + + The type of the document. + The update. + The field. + The type. + + A combined update. + + + + + Combines an existing update with an increment operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an increment operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a max operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a max operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a min operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a min operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a multiply operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a multiply operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pop operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The filter. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The filter. + + A combined update. + + + + + Combines an existing update with a pull operator. + + The type of the document. + The type of the item. + The update. + The field. + The filter. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + The slice. + The position. + The sort. + + A combined update. + + + + + Combines an existing update with a push operator. + + The type of the document. + The type of the item. + The update. + The field. + The values. + The slice. + The position. + The sort. + + A combined update. + + + + + Combines an existing update with a field renaming operator. + + The type of the document. + The update. + The field. + The new name. + + A combined update. + + + + + Combines an existing update with a field renaming operator. + + The type of the document. + The update. + The field. + The new name. + + A combined update. + + + + + Combines an existing update with a set operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a set operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a set on insert operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with a set on insert operator. + + The type of the document. + The type of the field. + The update. + The field. + The value. + + A combined update. + + + + + Combines an existing update with an unset operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + Combines an existing update with an unset operator. + + The type of the document. + The update. + The field. + + A combined update. + + + + + The type to use for a $currentDate operator. + + + + + A date. + + + + + A timestamp. + + + + + A builder for an . + + The type of the document. + + + + Creates an add to set operator. + + The type of the item. + The field. + The value. + An add to set operator. + + + + Creates an add to set operator. + + The type of the item. + The field. + The value. + An add to set operator. + + + + Creates an add to set operator. + + The type of the item. + The field. + The values. + An add to set operator. + + + + Creates an add to set operator. + + The type of the item. + The field. + The values. + An add to set operator. + + + + Creates a bitwise and operator. + + The type of the field. + The field. + The value. + A bitwise and operator. + + + + Creates a bitwise and operator. + + The type of the field. + The field. + The value. + A bitwise and operator. + + + + Creates a bitwise or operator. + + The type of the field. + The field. + The value. + A bitwise or operator. + + + + Creates a bitwise or operator. + + The type of the field. + The field. + The value. + A bitwise or operator. + + + + Creates a bitwise xor operator. + + The type of the field. + The field. + The value. + A bitwise xor operator. + + + + Creates a bitwise xor operator. + + The type of the field. + The field. + The value. + A bitwise xor operator. + + + + Creates a combined update. + + The updates. + A combined update. + + + + Creates a combined update. + + The updates. + A combined update. + + + + Creates a current date operator. + + The field. + The type. + A current date operator. + + + + Creates a current date operator. + + The field. + The type. + A current date operator. + + + + Creates an increment operator. + + The type of the field. + The field. + The value. + An increment operator. + + + + Creates an increment operator. + + The type of the field. + The field. + The value. + An increment operator. + + + + Creates a max operator. + + The type of the field. + The field. + The value. + A max operator. + + + + Creates a max operator. + + The type of the field. + The field. + The value. + A max operator. + + + + Creates a min operator. + + The type of the field. + The field. + The value. + A min operator. + + + + Creates a min operator. + + The type of the field. + The field. + The value. + A min operator. + + + + Creates a multiply operator. + + The type of the field. + The field. + The value. + A multiply operator. + + + + Creates a multiply operator. + + The type of the field. + The field. + The value. + A multiply operator. + + + + Creates a pop operator. + + The field. + A pop operator. + + + + Creates a pop first operator. + + The field. + A pop first operator. + + + + Creates a pop operator. + + The field. + A pop operator. + + + + Creates a pop first operator. + + The field. + A pop first operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The value. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The value. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The values. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The values. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The filter. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The filter. + A pull operator. + + + + Creates a pull operator. + + The type of the item. + The field. + The filter. + A pull operator. + + + + Creates a push operator. + + The type of the item. + The field. + The value. + A push operator. + + + + Creates a push operator. + + The type of the item. + The field. + The value. + A push operator. + + + + Creates a push operator. + + The type of the item. + The field. + The values. + The slice. + The position. + The sort. + A push operator. + + + + Creates a push operator. + + The type of the item. + The field. + The values. + The slice. + The position. + The sort. + A push operator. + + + + Creates a field renaming operator. + + The field. + The new name. + A field rename operator. + + + + Creates a field renaming operator. + + The field. + The new name. + A field rename operator. + + + + Creates a set operator. + + The type of the field. + The field. + The value. + A set operator. + + + + Creates a set operator. + + The type of the field. + The field. + The value. + A set operator. + + + + Creates a set on insert operator. + + The type of the field. + The field. + The value. + A set on insert operator. + + + + Creates a set on insert operator. + + The type of the field. + The field. + The value. + A set on insert operator. + + + + Creates an unset operator. + + The field. + An unset operator. + + + + Creates an unset operator. + + The field. + An unset operator. + + + + A filtered mongo collection. The filter will be and'ed with all filters. + + The type of the document. + + + + Gets the filter. + + + + + Options for renaming a collection. + + + + + Gets or sets a value indicating whether to drop the target collection first if it already exists. + + + + + Options for creating a collection. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to automatically create an index on the _id. + + + + + Gets or sets a value indicating whether the collection is capped. + + + + + Gets or sets the index option defaults. + + + The index option defaults. + + + + + Gets or sets the maximum number of documents (used with capped collections). + + + + + Gets or sets the maximum size of the collection (used with capped collections). + + + + + Gets or sets whether padding should not be used. + + + + + Gets or sets the serializer registry. + + + + + Gets or sets the storage engine options. + + + + + Gets or sets a value indicating whether to use power of 2 sizes. + + + + + Gets or sets the validation action. + + + The validation action. + + + + + Gets or sets the validation level. + + + The validation level. + + + + + Options for creating a collection. + + The type of the document. + + + + Coerces a generic CreateCollectionOptions{TDocument} from a non-generic CreateCollectionOptions. + + The options. + The generic options. + + + + Gets or sets the document serializer. + + + + + Gets or sets the validator. + + + The validator. + + + + + Options for the distinct command. + + + + + Gets or sets the collation. + + + + + Gets or sets the maximum time. + + + + + Options for a find operation. + + + + + Initializes a new instance of the class. + + + + + Gets or sets a value indicating whether to allow partial results when some shards are unavailable. + + + + + Gets or sets the size of a batch. + + + + + Gets or sets the collation. + + + + + Gets or sets the comment. + + + + + Gets or sets the type of the cursor. + + + + + Gets or sets the maximum await time for TailableAwait cursors. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the modifiers. + + + + + Gets or sets whether a cursor will time out. + + + + + Gets or sets whether the OplogReplay bit will be set. + + + + + Options for finding documents. + + + + + Options for finding documents. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Gets or sets how many documents to return. + + + + + Gets or sets the projection. + + + + + Gets or sets how many documents to skip before returning the rest. + + + + + Gets or sets the sort. + + + + + Options for finding documents. + + The type of the document and the result. + + + + Options for a findAndModify command to delete an object. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Gets or sets the collation. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the projection. + + + + + Gets or sets the sort. + + + + + Options for a findAndModify command to delete an object. + + The type of the document and the result. + + + + Options for a findAndModify command to replace an object. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Initializes a new instance of the class. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the projection. + + + + + Gets or sets which version of the document to return. + + + + + Gets or sets the sort. + + + + + Options for a findAndModify command to replace an object. + + The type of the document and the result. + + + + Options for a findAndModify command to update an object. + + The type of the document. + The type of the projection (same as TDocument if there is no projection). + + + + Initializes a new instance of the class. + + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets or sets the maximum time. + + + + + Gets or sets the projection. + + + + + Gets or sets which version of the document to return. + + + + + Gets or sets the sort. + + + + + Options for a findAndModify command to update an object. + + The type of the document and the result. + + + + Represents a serializer helper for GeoJsonObjects. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The type. + The derived members. + + + + Deserializes a base member. + + The context. + The element name. + The flag. + The arguments. + + + + Serializes the members. + + The type of the value. + The context. + The value. + The delegate to serialize the derived members. + + + + Represents a serializer for a GeoJson2DGeographicCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson2DProjectedCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson3DCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson3DGeographicCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson3DProjectedCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonBoundingBox value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonCoordinateReferenceSystem value. + + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonCoordinates value. + + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonFeatureCollection value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonFeature value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonGeometryCollection value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonGeometry value. + + The type of the coordinates. + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonLinearRingCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonLineStringCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonLineString value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonLinkedCoordinateReferenceSystem value. + + + + + Initializes a new instance of the class. + + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + An object. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiLineStringCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPointCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPoint value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiLineString value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPolygonCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonMultiPolygon value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonNamedCoordinateReferenceSystem value. + + + + + Initializes a new instance of the class. + + + + + Deserializes a class. + + The deserialization context. + The deserialization args. + An object. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson object. + + The type of the coordinates. + + + + Gets the actual type. + + The context. + The actual type. + + + + Represents a serializer for a GeoJsonPoint value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonPolygonCoordinates value. + + The type of the coordinates. + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJsonPolygon value. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents a serializer for a GeoJson2DCoordinates value. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + A static class containing helper methods to create GeoJson objects. + + + + + Creates a GeoJson bounding box. + + The type of the coordinates. + The min. + The max. + A GeoJson bounding box. + + + + Creates a GeoJson Feature object. + + The type of the coordinates. + The geometry. + A GeoJson Feature object. + + + + Creates a GeoJson Feature object. + + The type of the coordinates. + The additional args. + The geometry. + A GeoJson Feature object. + + + + Creates a GeoJson FeatureCollection object. + + The type of the coordinates. + The additional args. + The features. + A GeoJson FeatureCollection object. + + + + Creates a GeoJson FeatureCollection object. + + The type of the coordinates. + The features. + A GeoJson FeatureCollection object. + + + + Creates a GeoJson 2D geographic position (longitude, latitude). + + The longitude. + The latitude. + A GeoJson 2D geographic position. + + + + Creates a GeoJson 3D geographic position (longitude, latitude, altitude). + + The longitude. + The latitude. + The altitude. + A GeoJson 3D geographic position. + + + + Creates a GeoJson GeometryCollection object. + + The type of the coordinates. + The additional args. + The geometries. + A GeoJson GeometryCollection object. + + + + Creates a GeoJson GeometryCollection object. + + The type of the coordinates. + The geometries. + A GeoJson GeometryCollection object. + + + + Creates the coordinates of a GeoJson linear ring. + + The type of the coordinates. + The positions. + The coordinates of a GeoJson linear ring. + + + + Creates a GeoJson LineString object. + + The type of the coordinates. + The additional args. + The positions. + A GeoJson LineString object. + + + + Creates a GeoJson LineString object. + + The type of the coordinates. + The positions. + A GeoJson LineString object. + + + + Creates the coordinates of a GeoJson LineString. + + The type of the coordinates. + The positions. + The coordinates of a GeoJson LineString. + + + + Creates a GeoJson MultiLineString object. + + The type of the coordinates. + The additional args. + The line strings. + A GeoJson MultiLineString object. + + + + Creates a GeoJson MultiLineString object. + + The type of the coordinates. + The line strings. + A GeoJson MultiLineString object. + + + + Creates a GeoJson MultiPoint object. + + The type of the coordinates. + The additional args. + The positions. + A GeoJson MultiPoint object. + + + + Creates a GeoJson MultiPoint object. + + The type of the coordinates. + The positions. + A GeoJson MultiPoint object. + + + + Creates a GeoJson MultiPolygon object. + + The type of the coordinates. + The additional args. + The polygons. + A GeoJson MultiPolygon object. + + + + Creates a GeoJson MultiPolygon object. + + The type of the coordinates. + The polygons. + A GeoJson MultiPolygon object. + + + + Creates a GeoJson Point object. + + The type of the coordinates. + The additional args. + The coordinates. + A GeoJson Point object. + + + + Creates a GeoJson Point object. + + The type of the coordinates. + The coordinates. + A GeoJson Point object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The additional args. + The positions. + A GeoJson Polygon object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The additional args. + The coordinates. + A GeoJson Polygon object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The coordinates. + A GeoJson Polygon object. + + + + Creates a GeoJson Polygon object. + + The type of the coordinates. + The positions. + A GeoJson Polygon object. + + + + Creates the coordinates of a GeoJson Polygon object. + + The type of the coordinates. + The positions. + The coordinates of a GeoJson Polygon object. + + + + Creates the coordinates of a GeoJson Polygon object. + + The type of the coordinates. + The exterior. + The holes. + The coordinates of a GeoJson Polygon object. + + + + Creates a GeoJson 2D position (x, y). + + The x. + The y. + A GeoJson 2D position. + + + + Creates a GeoJson 3D position (x, y, z). + + The x. + The y. + The z. + A GeoJson 3D position. + + + + Creates a GeoJson 2D projected position (easting, northing). + + The easting. + The northing. + A GeoJson 2D projected position. + + + + Creates a GeoJson 3D projected position (easting, northing, altitude). + + The easting. + The northing. + The altitude. + A GeoJson 3D projected position. + + + + Represents a GeoJson bounding box. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The min. + The max. + + + + Gets the max. + + + + + Gets the min. + + + + + Represents a GeoJson coordinate reference system (see subclasses). + + + + + Gets the type of the GeoJson coordinate reference system. + + + + + Represents a GeoJson Feature object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The geometry. + + + + Initializes a new instance of the class. + + The additional args. + The geometry. + + + + Gets the geometry. + + + + + Gets the id. + + + + + Gets the properties. + + + + + Gets the type of the GeoJson object. + + + + + Represents additional arguments for a GeoJson Feature object. + + The type of the coordinates. + + + + Gets or sets the id. + + + + + Gets or sets the properties. + + + + + Represents a GeoJson FeatureCollection. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The features. + + + + Initializes a new instance of the class. + + The additional args. + The features. + + + + Gets the features. + + + + + Gets the type of the GeoJson object. + + + + + Represents a GeoJson Geometry object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The additional args. + + + + Represents a GeoJson GeometryCollection object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The geometries. + + + + Initializes a new instance of the class. + + The additional args. + The geometries. + + + + Gets the geometries. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson linear ring. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The positions. + + + + Represents a GeoJson LineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson LineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The positions. + + + + Gets the positions. + + + + + Represents a GeoJson linked coordinate reference system. + + + + + Initializes a new instance of the class. + + The href. + + + + Initializes a new instance of the class. + + The href. + Type of the href. + + + + Gets the href. + + + + + Gets the type of the href. + + + + + Gets the type of the GeoJson coordinate reference system. + + + + + Represents a GeoJson MultiLineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson MultiLineString object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The line strings. + + + + Gets the LineStrings. + + + + + Represents a GeoJson MultiPoint object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson MultiPoint object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The positions. + + + + Gets the positions. + + + + + Represents the coordinates of a GeoJson MultiPolygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The polygons. + + + + Gets the Polygons. + + + + + Represents a GeoJson MultiPolygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents a GeoJson named coordinate reference system. + + + + + Initializes a new instance of the class. + + The name. + + + + Gets the name. + + + + + Gets the type of the GeoJson coordinate reference system. + + + + + Represents a GeoJson object (see subclasses). + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The additional args. + + + + Gets the bounding box. + + + + + Gets the coordinate reference system. + + + + + Gets the extra members. + + + + + Gets the type of the GeoJson object. + + + + + Represents additional args provided when creating a GeoJson object. + + The type of the coordinates. + + + + Gets or sets the bounding box. + + + + + Gets or sets the coordinate reference system. + + + + + Gets or sets the extra members. + + + + + Represents the type of a GeoJson object. + + + + + A Feature. + + + + + A FeatureCollection. + + + + + A GeometryCollection. + + + + + A LineString. + + + + + A MultiLineString. + + + + + A MultiPoint. + + + + + A MultiPolygon. + + + + + A Point. + + + + + A Polygon. + + + + + Represents a GeoJson Point object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents a GeoJson Polygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The coordinates. + + + + Initializes a new instance of the class. + + The additional args. + The coordinates. + + + + Gets the coordinates. + + + + + Gets the type of the GeoJson object. + + + + + Represents the coordinates of a GeoJson Polygon object. + + The type of the coordinates. + + + + Initializes a new instance of the class. + + The exterior. + + + + Initializes a new instance of the class. + + The exterior. + The holes. + + + + Gets the exterior. + + + + + Gets the holes. + + + + + Represents a GeoJson position in some coordinate system (see subclasses). + + + + + Gets the coordinate values. + + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a GeoJson 2D position (x, y). + + + + + Initializes a new instance of the class. + + The x coordinate. + The y coordinate. + + + + Gets the coordinate values. + + + + + Gets the X coordinate. + + + + + Gets the Y coordinate. + + + + + Represents a GeoJson 3D position (x, y, z). + + + + + Initializes a new instance of the class. + + The x coordinate. + The y coordinate. + The z coordinate. + + + + Gets the coordinate values. + + + + + Gets the X coordinate. + + + + + Gets the Y coordinate. + + + + + Gets the Z coordinate. + + + + + Represents a GeoJson 2D geographic position (longitude, latitude). + + + + + Initializes a new instance of the class. + + The longitude. + The latitude. + + + + Gets the coordinate values. + + + + + Gets the longitude. + + + + + Gets the latitude. + + + + + Represents a GeoJson 3D geographic position (longitude, latitude, altitude). + + + + + Initializes a new instance of the class. + + The longitude. + The latitude. + The altitude. + + + + Gets the coordinate values. + + + + + Gets the longitude. + + + + + Gets the latitude. + + + + + Gets the altitude. + + + + + Represents a GeoJson 2D projected position (easting, northing). + + + + + Initializes a new instance of the class. + + The easting. + The northing. + + + + Gets the coordinate values. + + + + + Gets the easting. + + + + + Gets the northing. + + + + + Represents a GeoJson 3D projected position (easting, northing, altitude). + + + + + Initializes a new instance of the class. + + The easting. + The northing. + The altitude. + + + + Gets the coordinate values. + + + + + Gets the easting. + + + + + Gets the northing. + + + + + Gets the altitude. + + + + + The client interface to MongoDB. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + + + + Gets the cluster. + + + The cluster. + + + + + Gets the settings. + + + + + Drops the database with the specified name. + + The name of the database to drop. + The cancellation token. + + + + Drops the database with the specified name. + + The session. + The name of the database to drop. + The cancellation token. + + + + Drops the database with the specified name. + + The name of the database to drop. + The cancellation token. + A task. + + + + Drops the database with the specified name. + + The session. + The name of the database to drop. + The cancellation token. + + A task. + + + + + Gets a database. + + The name of the database. + The database settings. + An implementation of a database. + + + + Returns the names of the databases on the server. + + The cancellation token. + The database names. + + + + Returns the names of the databases on the server. + + The session. + The cancellation token. + The database names. + + + + Returns the names of the databases on the server. + + The cancellation token. + The database names. + + + + Returns the names of the databases on the server. + + The session. + The cancellation token. + The database names. + + + + Lists the databases on the server. + + The cancellation token. + A cursor. + + + + Lists the databases on the server. + + The options. + The cancellation token. + A cursor. + + + + Lists the databases on the server. + + The session. + The cancellation token. + + A cursor. + + + + + Lists the databases on the server. + + The session. + The options. + The cancellation token. + + A cursor. + + + + + Lists the databases on the server. + + The cancellation token. + A Task whose result is a cursor. + + + + Lists the databases on the server. + + The cancellation token. + The options. + A Task whose result is a cursor. + + + + Lists the databases on the server. + + The session. + The cancellation token. + + A Task whose result is a cursor. + + + + + Lists the databases on the server. + + The session. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Starts a client session. + + The session options. + The cancellation token. + + A client session. + + + + + Starts a client session. + + The session options. + The cancellation token. + + A Task whose result is a client session. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in all databases. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Returns a new IMongoClient instance with a different read concern setting. + + The read concern. + A new IMongoClient instance with a different read concern setting. + + + + Returns a new IMongoClient instance with a different read preference setting. + + The read preference. + A new IMongoClient instance with a different read preference setting. + + + + Returns a new IMongoClient instance with a different write concern setting. + + The write concern. + A new IMongoClient instance with a different write concern setting. + + + + Represents a typed collection in MongoDB. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + The type of the documents stored in the collection. + + + + Gets the namespace of the collection. + + + + + Gets the database. + + + + + Gets the document serializer. + + + + + Gets the index manager. + + + + + Gets the settings. + + + + + Runs an aggregation pipeline. + + The type of the result. + The pipeline. + The options. + The cancellation token. + A cursor. + + + + Runs an aggregation pipeline. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A cursor. + + + + + Runs an aggregation pipeline. + + The type of the result. + The pipeline. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Runs an aggregation pipeline. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Performs multiple write operations. + + The requests. + The options. + The cancellation token. + The result of writing. + + + + Performs multiple write operations. + + The session. + The requests. + The options. + The cancellation token. + + The result of writing. + + + + + Performs multiple write operations. + + The requests. + The options. + The cancellation token. + The result of writing. + + + + Performs multiple write operations. + + The session. + The requests. + The options. + The cancellation token. + + The result of writing. + + + + + Counts the number of documents in the collection. + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from Count to CountDocuments the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from Count to CountDocuments the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from CountAsync to CountDocumentsAsync the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Counts the number of documents in the collection. + + + Note: when migrating from CountAsync to CountDocumentsAsync the following query operations must be replaced: + + + +-------------+--------------------------------+ + | Operator | Replacement | + +=============+================================+ + | $where | $expr | + +-------------+--------------------------------+ + | $near | $geoWithin with $center | + +-------------+--------------------------------+ + | $nearSphere | $geoWithin with $centerSphere | + +-------------+--------------------------------+ + + + The session. + The filter. + The options. + The cancellation token. + + The number of documents in the collection. + + + + + Deletes multiple documents. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes multiple documents. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Deletes a single document. + + The session. + The filter. + The options. + The cancellation token. + + The result of the delete operation. + + + + + Gets the distinct values for a specified field. + + The type of the result. + The field. + The filter. + The options. + The cancellation token. + A cursor. + + + + Gets the distinct values for a specified field. + + The type of the result. + The session. + The field. + The filter. + The options. + The cancellation token. + + A cursor. + + + + + Gets the distinct values for a specified field. + + The type of the result. + The field. + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Gets the distinct values for a specified field. + + The type of the result. + The session. + The field. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Returns an estimate of the number of documents in the collection. + + The options. + The cancellation token. + + An estimate of the number of documents in the collection. + + + + + Returns an estimate of the number of documents in the collection. + + The options. + The cancellation token. + + An estimate of the number of documents in the collection. + + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + A cursor. + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + A cursor. + + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Finds the documents matching the filter. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and deletes it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and replaces it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Finds a single document and updates it atomically. + + The type of the projection (same as TDocument if there is no projection). + The session. + The filter. + The update. + The options. + The cancellation token. + + The returned document. + + + + + Inserts a single document. + + The document. + The options. + The cancellation token. + + + + Inserts a single document. + + The session. + The document. + The options. + The cancellation token. + + + + Inserts a single document. + + The document. + The cancellation token. + + The result of the insert operation. + + + + + Inserts a single document. + + The document. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Inserts a single document. + + The session. + The document. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Inserts many documents. + + The documents. + The options. + The cancellation token. + + + + Inserts many documents. + + The session. + The documents. + The options. + The cancellation token. + + + + Inserts many documents. + + The documents. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Inserts many documents. + + The session. + The documents. + The options. + The cancellation token. + + The result of the insert operation. + + + + + Executes a map-reduce command. + + The type of the result. + The map function. + The reduce function. + The options. + The cancellation token. + A cursor. + + + + Executes a map-reduce command. + + The type of the result. + The session. + The map function. + The reduce function. + The options. + The cancellation token. + + A cursor. + + + + + Executes a map-reduce command. + + The type of the result. + The map function. + The reduce function. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Executes a map-reduce command. + + The type of the result. + The session. + The map function. + The reduce function. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Returns a filtered collection that appears to contain only documents of the derived type. + All operations using this filtered collection will automatically use discriminators as necessary. + + The type of the derived document. + A filtered collection. + + + + Replaces a single document. + + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Replaces a single document. + + The session. + The filter. + The replacement. + The options. + The cancellation token. + + The result of the replacement. + + + + + Updates many documents. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates many documents. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Updates a single document. + + The session. + The filter. + The update. + The options. + The cancellation token. + + The result of the update operation. + + + + + Watches changes on the collection. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on the collection. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Returns a new IMongoCollection instance with a different read concern setting. + + The read concern. + A new IMongoCollection instance with a different read concern setting. + + + + Returns a new IMongoCollection instance with a different read preference setting. + + The read preference. + A new IMongoCollection instance with a different read preference setting. + + + + Returns a new IMongoCollection instance with a different write concern setting. + + The write concern. + A new IMongoCollection instance with a different write concern setting. + + + + Represents a database in MongoDB. + + + This interface is not guaranteed to remain stable. Implementors should use + . + + + + + Gets the client. + + + + + Gets the namespace of the database. + + + + + Gets the settings. + + + + + Creates the collection with the specified name. + + The name. + The options. + The cancellation token. + + + + Creates the collection with the specified name. + + The session. + The name. + The options. + The cancellation token. + + + + Creates the collection with the specified name. + + The name. + The options. + The cancellation token. + A task. + + + + Creates the collection with the specified name. + + The session. + The name. + The options. + The cancellation token. + + A task. + + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The session. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + A task. + + + + Creates a view. + + The type of the input documents. + The type of the pipeline result documents. + The session. + The name of the view. + The name of the collection that the view is on. + The pipeline. + The options. + The cancellation token. + + A task. + + + + + Drops the collection with the specified name. + + The name of the collection to drop. + The cancellation token. + + + + Drops the collection with the specified name. + + The session. + The name of the collection to drop. + The cancellation token. + + + + Drops the collection with the specified name. + + The name of the collection to drop. + The cancellation token. + A task. + + + + Drops the collection with the specified name. + + The session. + The name of the collection to drop. + The cancellation token. + + A task. + + + + + Gets a collection. + + The document type. + The name of the collection. + The settings. + An implementation of a collection. + + + + Lists the names of all the collections in the database. + + The options. + The cancellation token. + A cursor. + + + + Lists the names of all the collections in the database. + + The session. + The options. + The cancellation token. + A cursor. + + + + Lists the names of all the collections in the database. + + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Lists the names of all the collections in the database. + + The session. + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Lists all the collections in the database. + + The options. + The cancellation token. + A cursor. + + + + Lists all the collections in the database. + + The session. + The options. + The cancellation token. + + A cursor. + + + + + Lists all the collections in the database. + + The options. + The cancellation token. + A Task whose result is a cursor. + + + + Lists all the collections in the database. + + The session. + The options. + The cancellation token. + + A Task whose result is a cursor. + + + + + Renames the collection. + + The old name. + The new name. + The options. + The cancellation token. + + + + Renames the collection. + + The session. + The old name. + The new name. + The options. + The cancellation token. + + + + Renames the collection. + + The old name. + The new name. + The options. + The cancellation token. + A task. + + + + Renames the collection. + + The session. + The old name. + The new name. + The options. + The cancellation token. + + A task. + + + + + Runs a command. + + The result type of the command. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Runs a command. + + The result type of the command. + The session. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Runs a command. + + The result type of the command. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Runs a command. + + The result type of the command. + The session. + The command. + The read preference. + The cancellation token. + + The result of the command. + + + + + Watches changes on all collections in a database. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in a database. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in a database. + + The type of the result. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Watches changes on all collections in a database. + + The type of the result. + The session. + The pipeline. + The options. + The cancellation token. + + A change stream. + + + + + Returns a new IMongoDatabase instance with a different read concern setting. + + The read concern. + A new IMongoDatabase instance with a different read concern setting. + + + + Returns a new IMongoDatabase instance with a different read preference setting. + + The read preference. + A new IMongoDatabase instance with a different read preference setting. + + + + Returns a new IMongoDatabase instance with a different write concern setting. + + The write concern. + A new IMongoDatabase instance with a different write concern setting. + + + + The result of a delete operation. + + + + + Gets the deleted count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets a value indicating whether the result is acknowledged. + + + + + Initializes a new instance of the class. + + + + + The result of an acknowledged delete operation. + + + + + Initializes a new instance of the class. + + The deleted count. + + + + + + + + + + The result of an unacknowledged delete operation. + + + + + Gets the instance. + + + + + + + + + + + Model for inserting a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + Gets the type of the model. + + + + + Model for replacing a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + The replacement. + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets the replacement. + + + + + Gets the type of the model. + + + + + The cursor type. + + + + + A non-tailable cursor. This is sufficient for a vast majority of uses. + + + + + A tailable cursor. + + + + + A tailable cursor with a built-in server sleep. + + + + + Which version of the document to return when executing a FindAndModify command. + + + + + Return the document before the modification. + + + + + Return the document after the modification. + + + + + A rendered projection. + + The type of the projection. + + + + Initializes a new instance of the class. + + The document. + The projection serializer. + + + + Gets the document. + + + + + Gets the serializer. + + + + + Base class for projections whose projection type is not yet known. + + The type of the source. + + + + Renders the projection to a . + + The source serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Base class for projections. + + The type of the source. + The type of the projection. + + + + Renders the projection to a . + + The source serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The projection. + + The result of the conversion. + + + + + A based projection whose projection type is not yet known. + + The type of the source. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The document. + The projection serializer. + + + + Gets the document. + + + + + Gets the projection serializer. + + + + + + + + A find based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + A JSON based projection whose projection type is not yet known. + + The type of the source. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + A JSON based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The json. + The projection serializer. + + + + Gets the json. + + + + + Gets the projection serializer. + + + + + + + + An based projection whose projection type is not yet known. + + The type of the source. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + An based projection. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The object. + The projection serializer. + + + + Gets the object. + + + + + Gets the projection serializer. + + + + + + + + A client side only projection that is implemented solely by deserializing using a different serializer. + + The type of the source. + The type of the projection. + + + + Initializes a new instance of the class. + + The projection serializer. + + + + Gets the result serializer. + + + The result serializer. + + + + + + + + A rendered field. + + + + + Initializes a new instance of the class. + + The field name. + The field serializer. + + + + Gets the field name. + + + + + Gets the field serializer. + + + + + A rendered field. + + The type of the field. + + + + Initializes a new instance of the class. + + The field name. + The field serializer. + + + + Initializes a new instance of the class. + + The field name. + The field serializer. + The value serializer. + The underlying serializer. + + + + Gets the field name. + + + + + Gets the field serializer. + + + + + Gets the underlying serializer. + + + + + Gets the value serializer. + + + + + Base class for field names. + + The type of the document. + + + + Renders the field to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + Name of the field. + + The result of the conversion. + + + + + Base class for field names. + + The type of the document. + The type of the field. + + + + Renders the field to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + Name of the field. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The field. + + The result of the conversion. + + + + + An based field. + + The type of the document. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + An based field. + + The type of the document. + The type of the field. + + + + Initializes a new instance of the class. + + The expression. + + + + Gets the expression. + + + + + + + + A based field name. + + The type of the document. + + + + Initializes a new instance of the class. + + Name of the field. + + + + + + + A based field name. + + The type of the document. + The type of the field. + + + + Initializes a new instance of the class. + + Name of the field. + The field serializer. + + + + + + + The direction of the sort. + + + + + Ascending. + + + + + Descending. + + + + + Base class for sorts. + + The type of the document. + + + + Renders the sort to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based sort. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A JSON based sort. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + An based sort. + + The type of the document. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + Base class for updates. + + The type of the document. + + + + Renders the update to a . + + The document serializer. + The serializer registry. + A . + + + + Performs an implicit conversion from to . + + The document. + + The result of the conversion. + + + + + Performs an implicit conversion from to . + + The JSON string. + + The result of the conversion. + + + + + A based update. + + The type of the document. + + + + Initializes a new instance of the class. + + The document. + + + + Gets the document. + + + + + + + + A JSON based update. + + The type of the document. + + + + Initializes a new instance of the class. + + The json. + + + + Gets the json. + + + + + + + + An based update. + + The type of the document. + + + + Initializes a new instance of the class. + + The object. + + + + Gets the object. + + + + + + + + Options for updating a single document. + + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets a value indicating whether to bypass document validation. + + + + + Gets or sets the collation. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Model for updating a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + The update. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets the update. + + + + + + + + Model for updating many documents. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + The update. + + + + Gets or sets the array filters. + + + The array filters. + + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets or sets a value indicating whether to insert the document if it doesn't already exist. + + + + + Gets the update. + + + + + + + + Model for deleting many documents. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets the type of the model. + + + + + Model for deleting a single document. + + The type of the document. + + + + Initializes a new instance of the class. + + The filter. + + + + Gets or sets the collation. + + + + + Gets the filter. + + + + + Gets the type of the model. + + + + + The result of an update operation. + + + + + Gets a value indicating whether the result is acknowledged. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + + + Gets the matched count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the modified count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the upserted id, if one exists. If IsAcknowledged is false, this will throw an exception. + + + + + Initializes a new instance of the class. + + + + + The result of an acknowledged update operation. + + + + + Initializes a new instance of the class. + + The matched count. + The modified count. + The upserted id. + + + + + + + + + + + + + + + + + + + The result of an unacknowledged update operation. + + + + + Gets the instance. + + + + + + + + + + + + + + + + + + + + The result of an update operation. + + + + + Gets a value indicating whether the result is acknowledged. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + + + Gets the matched count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the modified count. If IsAcknowledged is false, this will throw an exception. + + + + + Gets the upserted id, if one exists. If IsAcknowledged is false, this will throw an exception. + + + + + Initializes a new instance of the class. + + + + + The result of an acknowledged update operation. + + + + + Initializes a new instance of the class. + + The matched count. + The modified count. + The upserted id. + + + + + + + + + + + + + + + + + + + The result of an acknowledged update operation. + + + + + Gets the instance. + + + + + + + + + + + + + + + + + + + + Represents the details of a write concern error. + + + + + Gets the error code. + + + + + Gets the name of the error code. + + + The name of the error code. + + + + + Gets the error information. + + + + + Gets the error message. + + + + + Represents the result of a bulk write operation. + + + + + Initializes a new instance of the class. + + The request count. + + + + Gets the number of documents that were deleted. + + + + + Gets the number of documents that were inserted. + + + + + Gets a value indicating whether the bulk write operation was acknowledged. + + + + + Gets a value indicating whether the modified count is available. + + + The modified count is only available when all servers have been upgraded to 2.6 or above. + + + + + Gets the number of documents that were matched. + + + + + Gets the number of documents that were actually modified during an update. + + + + + Gets the request count. + + + + + Gets a list with information about each request that resulted in an upsert. + + + + + Represents the result of a bulk write operation. + + The type of the document. + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + Gets the processed requests. + + + + + Result from an acknowledged write concern. + + + + + Initializes a new instance of the class. + + The request count. + The matched count. + The deleted count. + The inserted count. + The modified count. + The processed requests. + The upserts. + + + + + + + + + + + + + + + + + + + + + + + + + Result from an unacknowledged write concern. + + + + + Initializes a new instance of the class. + + The request count. + The processed requests. + + + + + + + + + + + + + + + + + + + + + + + + + Represents the information about one Upsert. + + + + + Gets the id. + + + + + Gets the index. + + + + + Represents a bulk write exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The write errors. + The write concern error. + + + + Initializes a new instance of the MongoQueryException class (this overload supports deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Gets the write concern error. + + + + + Gets the write errors. + + + + + Gets the object data. + + The information. + The context. + + + + Represents a bulk write exception. + + The type of the document. + + + + Initializes a new instance of the class. + + The connection identifier. + The result. + The write errors. + The write concern error. + The unprocessed requests. + + + + Initializes a new instance of the MongoQueryException class (this overload supports deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Gets the result of the bulk write operation. + + + + + Gets the unprocessed requests. + + + + + Gets the object data. + + The information. + The context. + + + + + + + Initializes a new instance of the MongoClient class. + + + + + Initializes a new instance of the MongoClient class. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + The settings. + + + + Initializes a new instance of the MongoClient class. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + The URL. + + + + Initializes a new instance of the MongoClient class. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + The connection string. + + + + Gets the cluster. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Starts an implicit session. + + A session. + + + + Starts an implicit session. + + A Task whose result is a session. + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + The settings for a MongoDB client. + + + + + Creates a new instance of MongoClientSettings. Usually you would use a connection string instead. + + + + + Gets or sets the application name. + + + + + Gets or sets the cluster configurator. + + + + + Gets or sets the connection mode. + + + + + Gets or sets the connect timeout. + + + + + Gets or sets the credential. + + + + + Gets or sets the credentials. + + + + + Gets or sets the representation to use for Guids. + + + + + Gets a value indicating whether the settings have been frozen to prevent further changes. + + + + + Gets or sets the heartbeat interval. + + + + + Gets or sets the heartbeat timeout. + + + + + Gets or sets a value indicating whether to use IPv6. + + + + + Gets or sets the local threshold. + + + + + Gets or sets the max connection idle time. + + + + + Gets or sets the max connection life time. + + + + + Gets or sets the max connection pool size. + + + + + Gets or sets the min connection pool size. + + + + + Gets or sets the read concern. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the read preferences. + + + + + Gets or sets the name of the replica set. + + + + + Gets or sets whether to retry writes. + + + + + Gets or set the name of the SDAM log file. Null turns logging off. stdout will log to console. + + + + + Gets or sets the address of the server (see also Servers if using more than one address). + + + + + Gets or sets the list of server addresses (see also Server if using only one address). + + + + + Gets or sets the server selection timeout. + + + + + Gets or sets the socket timeout. + + + + + Gets or sets the SSL settings. + + + + + Gets or sets a value indicating whether to use SSL. + + + + + Gets or sets a value indicating whether to verify an SSL certificate. + + + + + Gets or sets the wait queue size. + + + + + Gets or sets the wait queue timeout. + + + + + Gets or sets the WriteConcern to use. + + + + + Gets or sets the Write Encoding. + + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Gets a MongoClientSettings object intialized with values from a connection string. + + The connection string. + A MongoClientSettings. + + + + Gets a MongoClientSettings object intialized with values from a MongoURL. + + The MongoURL. + A MongoClientSettings. + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + The settings used to access a collection. + + + + + Initializes a new instance of the MongoCollectionSettings class. + + + + + Gets or sets a value indicating whether the driver should assign Id values when missing. + + + + + Gets or sets the representation used for Guids. + + + + + Gets a value indicating whether the settings have been frozen to prevent further changes. + + + + + Gets or sets the read concern. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the read preference to use. + + + + + Gets the serializer registry. + + + + + Gets or sets the WriteConcern to use. + + + + + Gets or sets the Write Encoding. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Compares two MongoCollectionSettings instances. + + The other instance. + True if the two instances are equal. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + Represents a list of credentials and the rules about how credentials can be used together. + + + + + Creates a new instance of the MongoCredentialStore class. + + The credentials. + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Gets the enumerator. + + + + + + Gets the hashcode for the credential store. + + The hashcode. + + + + Returns a string representation of the credential store. + + A string representation of the credential store. + + + + Returns an enumerator that iterates through a collection. + + + An object that can be used to iterate through the collection. + + + + + The settings used to access a database. + + + + + Creates a new instance of MongoDatabaseSettings. + + + + + Gets or sets the representation to use for Guids. + + + + + Gets a value indicating whether the settings have been frozen to prevent further changes. + + + + + Gets or sets the read concern. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the read preference. + + + + + Gets the serializer registry. + + + + + Gets or sets the WriteConcern to use. + + + + + Gets or sets the Write Encoding. + + + + + Creates a clone of the settings. + + A clone of the settings. + + + + Compares two MongoDatabaseSettings instances. + + The other instance. + True if the two instances are equal. + + + + Freezes the settings. + + The frozen settings. + + + + Returns a frozen copy of the settings. + + A frozen copy of the settings. + + + + Gets the hash code. + + The hash code. + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + Represents a DBRef (a convenient way to refer to a document). + + + + + Creates a MongoDBRef. + + The name of the collection that contains the document. + The Id of the document. + + + + Creates a MongoDBRef. + + The name of the database that contains the document. + The name of the collection that contains the document. + The Id of the document. + + + + Gets the name of the database that contains the document. + + + + + Gets the name of the collection that contains the document. + + + + + Gets the Id of the document. + + + + + Determines whether two specified MongoDBRef objects have different values. + + The first value to compare, or null. + The second value to compare, or null. + True if the value of lhs is different from the value of rhs; otherwise, false. + + + + Determines whether two specified MongoDBRef objects have the same value. + + The first value to compare, or null. + The second value to compare, or null. + True if the value of lhs is the same as the value of rhs; otherwise, false. + + + + Determines whether two specified MongoDBRef objects have the same value. + + The first value to compare, or null. + The second value to compare, or null. + True if the value of lhs is the same as the value of rhs; otherwise, false. + + + + Determines whether this instance and another specified MongoDBRef object have the same value. + + The MongoDBRef object to compare to this instance. + True if the value of the rhs parameter is the same as this instance; otherwise, false. + + + + Determines whether this instance and a specified object, which must also be a MongoDBRef object, have the same value. + + The MongoDBRef object to compare to this instance. + True if obj is a MongoDBRef object and its value is the same as this instance; otherwise, false. + + + + Returns the hash code for this MongoDBRef object. + + A 32-bit signed integer hash code. + + + + Returns a string representation of the value. + + A string representation of the value. + + + + Represents a serializer for MongoDBRefs. + + + + + Initializes a new instance of the class. + + + + + Tries to get the serialization info for a member. + + Name of the member. + The serialization information. + + true if the serialization info exists; otherwise false. + + + + + Deserializes a value. + + The deserialization context. + The deserialization args. + The value. + + + + Serializes a value. + + The serialization context. + The serialization args. + The value. + + + + Represents an identity defined outside of mongodb. + + + + + Initializes a new instance of the class. + + The username. + + + + Initializes a new instance of the class. + + The source. + The username. + + + + Represents an identity in MongoDB. + + + + + Initializes a new instance of the class. + + The source. + The username. + Whether to allow null usernames. + + + + Gets the source. + + + + + Gets the username. + + + + + Compares two MongoIdentity values. + + The first MongoIdentity. + The other MongoIdentity. + True if the two MongoIdentity values are equal (or both null). + + + + Compares two MongoIdentity values. + + The first MongoIdentity. + The other MongoIdentity. + True if the two MongoIdentity values are not equal (or one is null and the other is not). + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified instance is equal to this instance. + + The right-hand side. + + true if the specified instance is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Evidence used as proof of a MongoIdentity. + + + + + Initializes a new instance of the class. + + + + + Compares two MongoIdentityEvidences. + + The first MongoIdentityEvidence. + The other MongoIdentityEvidence. + True if the two MongoIdentityEvidences are equal (or both null). + + + + Compares two MongoIdentityEvidences. + + The first MongoIdentityEvidence. + The other MongoIdentityEvidence. + True if the two MongoIdentityEvidences are not equal (or one is null and the other is not). + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents an identity defined inside mongodb. + + + + + Initializes a new instance of the class. + + Name of the database. + The username. + + + + Represents URL-style connection strings. + + + + + Creates a new instance of MongoUrlBuilder. + + + + + Creates a new instance of MongoUrlBuilder. + + The initial settings. + + + + Gets or sets the application name. + + + + + Gets or sets the authentication mechanism. + + + + + Gets or sets the authentication mechanism properties. + + + + + Gets or sets the authentication source. + + + + + Gets the actual wait queue size (either WaitQueueSize or WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets or sets the connection mode. + + + + + Gets or sets the connect timeout. + + + + + Gets or sets the optional database name. + + + + + Gets or sets the FSync component of the write concern. + + + + + Gets or sets the representation to use for Guids. + + + + + Gets or sets the heartbeat interval. + + + + + Gets or sets the heartbeat timeout. + + + + + Gets or sets a value indicating whether to use IPv6. + + + + + Gets or sets the Journal component of the write concern. + + + + + Gets or sets the local threshold. + + + + + Gets or sets the max connection idle time. + + + + + Gets or sets the max connection life time. + + + + + Gets or sets the max connection pool size. + + + + + Gets or sets the min connection pool size. + + + + + Gets or sets the password. + + + + + Gets or sets the read concern level. + + + + + Gets or sets the read preference. + + + + + Gets or sets the name of the replica set. + + + + + Gets or sets whether to retry writes. + + + + + The scheme used to connect with mongodb. + + + + + Gets or sets the address of the server (see also Servers if using more than one address). + + + + + Gets or sets the list of server addresses (see also Server if using only one address). + + + + + Gets or sets the server selection timeout. + + + + + Gets or sets the socket timeout. + + + + + Gets or sets the username. + + + + + Gets or sets a value indicating whether to use SSL. + + + + + Gets or sets a value indicating whether to verify an SSL certificate. + + + + + Gets or sets the W component of the write concern. + + + + + Gets or sets the wait queue multiple (the actual wait queue size will be WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets or sets the wait queue size. + + + + + Gets or sets the wait queue timeout. + + + + + Gets or sets the WTimeout component of the write concern. + + + + + Returns a WriteConcern value based on this instance's settings and a default enabled value. + + The default enabled value. + A WriteConcern. + + + + Parses a URL and sets all settings to match the URL. + + The URL. + + + + Creates a new instance of MongoUrl based on the settings in this MongoUrlBuilder. + + A new instance of MongoUrl. + + + + Returns the canonical URL based on the settings in this MongoUrlBuilder. + + The canonical URL. + + + + Evidence of a MongoIdentity via a shared secret. + + + +
      + Initializes a new instance of the class. + Less secure when used in conjunction with SCRAM-SHA-256, due to the need to store the password in a managed + string in order to SaslPrep it. + See Driver Authentication: SCRAM-SHA-256 + for additional details. + + The password. + + + + Initializes a new instance of the class. + + The password. + + + + Gets the password. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Computes the MONGODB-CR password digest. + + The username. + The MONGODB-CR password digest. + + + + Represents a setting that may or may not have been set. + + The type of the value. + + + + Gets the value of the setting. + + + + + Gets a value indicating whether the setting has been set. + + + + + Resets the setting to the unset state. + + + + + Gets a canonical string representation for this setting. + + A canonical string representation for this setting. + + + + Represents the settings for using SSL. + + + + + Gets or sets a value indicating whether to check for certificate revocation. + + + + + Gets or sets the client certificates. + + + + + Gets or sets the client certificate selection callback. + + + + + Gets or sets the enabled SSL protocols. + + + + + Gets or sets the server certificate validation callback. + + + + + Determines whether two instances are equal. + + The LHS. + The RHS. + + true if the left hand side is equal to the right hand side; otherwise, false. + + + + + Determines whether two instances are not equal. + + The LHS. + The RHS. + + true if the left hand side is not equal to the right hand side; otherwise, false. + + + + + Clones an SslSettings. + + The cloned SslSettings. + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Freezes the settings. + + The frozen settings. + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Returns a string representation of the settings. + + A string representation of the settings. + + + + Various static utility methods. + + + + + Gets the MD5 hash of a string. + + The string to get the MD5 hash of. + The MD5 hash. + + + + Creates a TimeSpan from microseconds. + + The microseconds. + The TimeSpan. + + + + Converts a string to camel case by lower casing the first letter (only the first letter is modified). + + The string to camel case. + The camel cased string. + + + + Should only be used when the safety of the data cannot be guaranteed. For instance, + when the secure string is a password used in a plain text protocol. + + The secure string. + The CLR string. + + + + Default values for various Mongo settings. + + + + + Gets or sets whether the driver should assign a value to empty Ids on Insert. + + + + + Gets or sets the default authentication mechanism. + + + + + Gets the actual wait queue size (either WaitQueueSize or WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets or sets the connect timeout. + + + + + Gets or sets the representation to use for Guids (this is an alias for BsonDefaults.GuidRepresentation). + + + + + Gets or sets the default local threshold. + + + + + Gets or sets the maximum batch count. + + + + + Gets or sets the max connection idle time. + + + + + Gets or sets the max connection life time. + + + + + Gets or sets the max connection pool size. + + + + + Gets or sets the max document size + + + + + Gets or sets the max message length. + + + + + Gets or sets the min connection pool size. + + + + + Gets or sets the operation timeout. + + + + + Gets or sets the Read Encoding. + + + + + Gets or sets the server selection timeout. + + + + + Gets or sets the socket timeout. + + + + + Gets or sets the TCP receive buffer size. + + + + + Gets or sets the TCP send buffer size. + + + + + Gets or sets the wait queue multiple (the actual wait queue size will be WaitQueueMultiple x MaxConnectionPoolSize, see also WaitQueueSize). + + + + + Gets or sets the wait queue size (see also WaitQueueMultiple). + + + + + Gets or sets the wait queue timeout. + + + + + Gets or sets the Write Encoding. + + + + + Credential to access a MongoDB database. + + + + + Initializes a new instance of the class. + + Mechanism to authenticate with. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + The identity. + The evidence. + + + + Gets the evidence. + + + + + Gets the identity. + + + + + Gets the mechanism to authenticate with. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + + + + Gets the password. + + + + + Gets the source. + + + + + Gets the username. + + + + + Compares two MongoCredentials. + + The first MongoCredential. + The other MongoCredential. + True if the two MongoCredentials are equal (or both null). + + + + Compares two MongoCredentials. + + The first MongoCredential. + The other MongoCredential. + True if the two MongoCredentials are not equal (or one is null and the other is not). + + + + Creates a default credential. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + Name of the database. + The username. + The password. + A default credential. + + + + Creates a default credential. + Less secure when used in conjunction with SCRAM-SHA-256, due to the need to store the password in a managed + string in order to SaslPrep it. + In .NET Standard, authenticating via SCRAM-SHA-256 may not work with non-ASCII passwords because SaslPrep is + not fully implemented due to the lack of a string normalization function in .NET Standard 1.5. + Normalizing the password into Unicode Normalization Form KC beforehand MAY help. + SCRAM-SHA-1 is the recommended alternative for now. + + Name of the database. + The username. + The password. + A default credential. + + + + Creates a GSSAPI credential. + + The username. + A credential for GSSAPI. + This overload is used primarily on linux. + + + + Creates a GSSAPI credential. + + The username. + The password. + A credential for GSSAPI. + + + + Creates a GSSAPI credential. + + The username. + The password. + A credential for GSSAPI. + + + + Creates a credential used with MONGODB-CR. + + Name of the database. + The username. + The password. + A credential for MONGODB-CR. + + + + Creates a credential used with MONGODB-CR. + + Name of the database. + The username. + The password. + A credential for MONGODB-CR. + + + + Creates a credential used with MONGODB-X509. + + The username. + A credential for MONGODB-X509. + + + + Creates a PLAIN credential. + + Name of the database. + The username. + The password. + A credential for PLAIN. + + + + Creates a PLAIN credential. + + Name of the database. + The username. + The password. + A credential for PLAIN. + + + + Gets the mechanism property. + + The type of the mechanism property. + The key. + The default value. + The mechanism property if one was set; otherwise the default value. + + + + Compares this MongoCredential to another MongoCredential. + + The other credential. + True if the two credentials are equal. + + + + Compares this MongoCredential to another MongoCredential. + + The other credential. + True if the two credentials are equal. + + + + Gets the hashcode for the credential. + + The hashcode. + + + + Returns a string representation of the credential. + + A string representation of the credential. + + + + Creates a new MongoCredential with the specified mechanism property. + + The key. + The value. + A new MongoCredential with the specified mechanism property. + + + + The address of a MongoDB server. + + + + + Initializes a new instance of MongoServerAddress. + + The server's host name. + + + + Initializes a new instance of MongoServerAddress. + + The server's host name. + The server's port number. + + + + Parses a string representation of a server address. + + The string representation of a server address. + A new instance of MongoServerAddress initialized with values parsed from the string. + + + + Tries to parse a string representation of a server address. + + The string representation of a server address. + The server address (set to null if TryParse fails). + True if the string is parsed succesfully. + + + + Gets the server's host name. + + + + + Gets the server's port number. + + + + + Compares two server addresses. + + The first address. + The other address. + True if the two addresses are equal (or both are null). + + + + Compares two server addresses. + + The first address. + The other address. + True if the two addresses are not equal (or one is null and the other is not). + + + + Compares two server addresses. + + The other server address. + True if the two server addresses are equal. + + + + Compares two server addresses. + + The other server address. + True if the two server addresses are equal. + + + + Gets the hash code for this object. + + The hash code. + + + + Returns a string representation of the server address. + + A string representation of the server address. + + + + Represents an immutable URL style connection string. See also MongoUrlBuilder. + + + + + Creates a new instance of MongoUrl. + + The URL containing the settings. + + + + Gets the application name. + + + + + Gets the authentication mechanism. + + + + + Gets the authentication mechanism properties. + + + + + Gets the authentication source. + + + + + Gets the actual wait queue size (either WaitQueueSize or WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets the connection mode. + + + + + Gets the connect timeout. + + + + + Gets the optional database name. + + + + + Gets the FSync component of the write concern. + + + + + Gets the representation to use for Guids. + + + + + Gets a value indicating whether this instance has authentication settings. + + + + + Gets the heartbeat interval. + + + + + Gets the heartbeat timeout. + + + + + Gets a value indicating whether to use IPv6. + + + + + Gets the Journal component of the write concern. + + + + + Gets the local threshold. + + + + + Gets the max connection idle time. + + + + + Gets the max connection life time. + + + + + Gets the max connection pool size. + + + + + Gets the min connection pool size. + + + + + Gets the password. + + + + + Gets the read concern level. + + + + + Gets the read preference. + + + + + Gets the name of the replica set. + + + + + Gets whether writes will be retried. + + + + + Gets the scheme. + + + + + Gets the address of the server (see also Servers if using more than one address). + + + + + Gets the list of server addresses (see also Server if using only one address). + + + + + Gets the server selection timeout. + + + + + Gets the socket timeout. + + + + + Gets the URL (in canonical form). + + + + + Gets the username. + + + + + Gets a value indicating whether to use SSL. + + + + + Gets a value indicating whether to verify an SSL certificate. + + + + + Gets the W component of the write concern. + + + + + Gets the wait queue multiple (the actual wait queue size will be WaitQueueMultiple x MaxConnectionPoolSize). + + + + + Gets the wait queue size. + + + + + Gets the wait queue timeout. + + + + + Gets the WTimeout component of the write concern. + + + + + Compares two MongoUrls. + + The first URL. + The other URL. + True if the two URLs are equal (or both null). + + + + Compares two MongoUrls. + + The first URL. + The other URL. + True if the two URLs are not equal (or one is null and the other is not). + + + + Clears the URL cache. When a URL is parsed it is stored in the cache so that it doesn't have to be + parsed again. There is rarely a need to call this method. + + + + + Creates an instance of MongoUrl (might be an existing existence if the same URL has been used before). + + The URL containing the settings. + An instance of MongoUrl. + + + + Compares two MongoUrls. + + The other URL. + True if the two URLs are equal. + + + + Compares two MongoUrls. + + The other URL. + True if the two URLs are equal. + + + + Gets the credential. + + The credential (or null if the URL has not authentication settings). + + + + Gets the hash code. + + The hash code. + + + + Returns a WriteConcern value based on this instance's settings and a default enabled value. + + The default enabled value. + A WriteConcern. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + A resolved MongoURL. + + + + Resolves a connection string. If the connection string indicates more information is available + in the DNS system, it will acquire that information as well. + + The cancellation token. + A resolved MongoURL. + + + + Returns the canonical URL based on the settings in this MongoUrlBuilder. + + The canonical URL. + + + + Evidence of a MongoIdentity via an external mechanism. For example, on windows this may + be the current process' user or, on linux, via kinit. + + + + + Initializes a new instance of the class. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a write exception. + + + + + Initializes a new instance of the class. + + The connection identifier. + The write error. + The write concern error. + The inner exception. + + + + Initializes a new instance of the MongoQueryException class (this overload supports deserialization). + + The SerializationInfo. + The StreamingContext. + + + + Gets the write concern error. + + + + + Gets the write error. + + + + + Gets the object data. + + The information. + The context. + + + + Represents the details of a write error. + + + + + Gets the category. + + + + + Gets the error code. + + + + + Gets the error details. + + + + + Gets the error message. + + + + + Base class for a write model. + + The type of the document. + + + + Gets the type of the model. + + + + + The type of a write model. + + + + + A model to insert a single document. + + + + + A model to delete a single document. + + + + + A model to delete multiple documents. + + + + + A model to replace a single document. + + + + + A model to update a single document. + + + + + A model to update many documents. + + + + diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfo.cs b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfo.cs new file mode 100644 index 0000000..1398a3e --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("EnglishLessonsAPI")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("EnglishLessonsAPI")] +[assembly: System.Reflection.AssemblyTitleAttribute("EnglishLessonsAPI")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Создано классом WriteCodeFragment MSBuild. + diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfoInputs.cache b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfoInputs.cache new file mode 100644 index 0000000..b6ce3f4 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +005acfefba43f6b82b3ce25b7cf0f96791f10965 diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cache b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cache new file mode 100644 index 0000000..a4ae0e1 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cache @@ -0,0 +1 @@ +9c6c0076576eca03cbb172f15dd4492d39caa57c diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cs b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cs new file mode 100644 index 0000000..44ff7b3 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorAssemblyInfo.cs @@ -0,0 +1,20 @@ +//------------------------------------------------------------------------------ +// +// Этот код создан программой. +// Исполняемая версия:4.0.30319.42000 +// +// Изменения в этом файле могут привести к неправильной работе и будут потеряны в случае +// повторной генерации кода. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: Microsoft.AspNetCore.Mvc.ApplicationParts.RelatedAssemblyAttribute("EnglishLessonsAPI.Views")] +[assembly: Microsoft.AspNetCore.Razor.Hosting.RazorLanguageVersionAttribute("2.1")] +[assembly: Microsoft.AspNetCore.Razor.Hosting.RazorConfigurationNameAttribute("MVC-2.1")] +[assembly: Microsoft.AspNetCore.Razor.Hosting.RazorExtensionAssemblyNameAttribute("MVC-2.1", "Microsoft.AspNetCore.Mvc.Razor.Extensions")] + +// Создано классом WriteCodeFragment MSBuild. + diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorTargetAssemblyInfo.cache b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorTargetAssemblyInfo.cache new file mode 100644 index 0000000..307f915 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.RazorTargetAssemblyInfo.cache @@ -0,0 +1 @@ +6afbf511a5b9a07caeb248e146f2014845609a7b diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.assets.cache b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.assets.cache new file mode 100644 index 0000000000000000000000000000000000000000..6bd8ed9bcebceb8d1d506aabf07b4c3b34e4a9f8 GIT binary patch literal 119200 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 L`37Ti9oqc=3p<`~ literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.CoreCompileInputs.cache b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..3cde836 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +53946c44ce4dbe30e4a5439461420fddaf1937d8 diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.FileListAbsolute.txt b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..5ad97a8 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csproj.FileListAbsolute.txt @@ -0,0 +1,25 @@ +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessonsAPI.deps.json +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessonsAPI.runtimeconfig.json +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessonsAPI.runtimeconfig.dev.json +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessonsAPI.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.csprojAssemblyReference.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.csproj.CoreCompileInputs.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.RazorAssemblyInfo.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.RazorAssemblyInfo.cs +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.AssemblyInfoInputs.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.AssemblyInfo.cs +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.RazorTargetAssemblyInfo.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessonsAPI.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessons.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\MongoDB.Driver.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\MongoDB.Bson.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\MongoDB.Driver.Core.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\DnsClient.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\EnglishLessons.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\MongoDB.Driver.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\MongoDB.Bson.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\MongoDB.Driver.Core.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\bin\Debug\netcoreapp2.1\DnsClient.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\Debug\netcoreapp2.1\EnglishLessonsAPI.csproj.CopyComplete diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csprojAssemblyReference.cache b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..eba1a3b0ada0055a08b3d06379f0f190ccb1c30f GIT binary patch literal 281596 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 lT5LbKXE_KEIJhU8p+lJL|Br$s$me+E7jZo2>g literal 0 HcmV?d00001 diff --git a/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.pdb b/FifthLesson/EnglishLessonsAPI/obj/Debug/netcoreapp2.1/EnglishLessonsAPI.pdb new file mode 100644 index 0000000000000000000000000000000000000000..61a56a4d08e36eedd9323a88af6c61da6e779cd1 GIT binary patch literal 1532 zcmZ`(U1%It6h8OPW`B~V-EDR^X&UXetC)s5Mu|f0L(<)(>6T5i$u=q|Hj~|(?U>EX zcJ6F#q?FmDpdd;G6)N?iN>zN3f`UHyiwgRpkOzNIEQo(#`r<=tLFzfP6L*w&moxW% z=kMP0-E%inJd|O;fW{`2!e}OS;!btYRX`9<;bImgT`13y?mLtbbWfiK=;HuUvK4Jh zH!70sdr%i3-AoY%aZQQR<1@KYoM#cAR}g2a<{aW*#)p5{HE?C*t-}`%JoV=*kKQJp z{}59L?@zoGiG;yD)e!noJ`9C+ln6>cN)iQAxjuAy67r#$&O|c})OpJ{nhH4M#;xa~ z7~IO$4KfA?7>9kF!4&6klfvL`g=2yT(NcBuaF|ESDU=nIXSo806a{8coN;co1jW`!Ys;$x}=LM;XEIIU=_%g_SG26C!u~p6t2t@axfu$FG{X(#p{6 zwYjO`PeZG*vqkt|@@0PEwdtevPo8;i?9I1R&mI41`dtVXm!vHgdz+J*HLF!ovUSst z>bNk3rI#X}DL2{St@65YJn5~E9J7R0#`aQ=XmUZuC-jnKN^{;;_siO0VP{QC^lhY6 z51P`(xLqyd*hyO$(%n028uNOkZfSHBU%byHZ&oT8A7_k(S(@F>_Ob#K%vom6MV`I4 zZ3fwqZHt<!J~@aU+yJSO&PG2=GiquS9uaqB>+V~typ*YZ37u3S+I}0&IB|OY6Wsvn}d* zOU9^SS{N(r-r%yAZ>)60BdgmttzE6`zOTPKf8M;L<>mDssm6Pv>oxB5j< + + + True + NuGet + C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\EnglishLessonsAPI\obj\project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\markp\.nuget\packages\;C:\Program Files\dotnet\sdk\NuGetFallbackFolder + PackageReference + 4.8.1 + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + + + + + + + + + + \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/obj/EnglishLessonsAPI.csproj.nuget.g.targets b/FifthLesson/EnglishLessonsAPI/obj/EnglishLessonsAPI.csproj.nuget.g.targets new file mode 100644 index 0000000..672dc3d --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/EnglishLessonsAPI.csproj.nuget.g.targets @@ -0,0 +1,15 @@ + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + + + + + + + + + + \ No newline at end of file diff --git a/FifthLesson/EnglishLessonsAPI/obj/project.assets.json b/FifthLesson/EnglishLessonsAPI/obj/project.assets.json new file mode 100644 index 0000000..4b7dea6 --- /dev/null +++ b/FifthLesson/EnglishLessonsAPI/obj/project.assets.json @@ -0,0 +1,12311 @@ +{ + "version": 3, + "targets": { + ".NETCoreApp,Version=v2.1": { + "Microsoft.AspNet.WebApi.Client/5.2.6": { + "type": "package", + "dependencies": { + "Newtonsoft.Json": "10.0.1", + "Newtonsoft.Json.Bson": "1.0.1" + }, + "compile": { + "lib/netstandard2.0/System.Net.Http.Formatting.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Net.Http.Formatting.dll": {} + } + }, + "Microsoft.AspNetCore/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Diagnostics": "2.1.1", + "Microsoft.AspNetCore.HostFiltering": "2.1.1", + "Microsoft.AspNetCore.Hosting": "2.1.1", + "Microsoft.AspNetCore.Routing": "2.1.1", + "Microsoft.AspNetCore.Server.IISIntegration": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Https": "2.1.1", + "Microsoft.Extensions.Configuration.CommandLine": "2.1.1", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "2.1.1", + "Microsoft.Extensions.Configuration.FileExtensions": "2.1.1", + "Microsoft.Extensions.Configuration.Json": "2.1.1", + "Microsoft.Extensions.Configuration.UserSecrets": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "Microsoft.Extensions.Logging.Configuration": "2.1.1", + "Microsoft.Extensions.Logging.Console": "2.1.1", + "Microsoft.Extensions.Logging.Debug": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.dll": {} + } + }, + "Microsoft.AspNetCore.Antiforgery/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.DataProtection": "2.1.1", + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.AspNetCore.WebUtilities": "2.1.1", + "Microsoft.Extensions.ObjectPool": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll": {} + } + }, + "Microsoft.AspNetCore.App/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNet.WebApi.Client": "[5.2.6, 5.3.0)", + "Microsoft.AspNetCore": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Antiforgery": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.Cookies": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.Core": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.Facebook": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.Google": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.JwtBearer": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.MicrosoftAccount": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.OAuth": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.OpenIdConnect": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.Twitter": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authentication.WsFederation": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authorization": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Authorization.Policy": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Connections.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.CookiePolicy": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Cors": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Cryptography.Internal": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Cryptography.KeyDerivation": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.DataProtection": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.DataProtection.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.DataProtection.Extensions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Diagnostics": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Diagnostics.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.HostFiltering": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Hosting": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Hosting.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Hosting.Server.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Html.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Http": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Http.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Http.Connections": "[1.0.1, 1.1.0)", + "Microsoft.AspNetCore.Http.Connections.Common": "[1.0.1, 1.1.0)", + "Microsoft.AspNetCore.Http.Extensions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Http.Features": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.HttpOverrides": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.HttpsPolicy": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Identity": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Identity.EntityFrameworkCore": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Identity.UI": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.JsonPatch": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Localization": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Localization.Routing": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.MiddlewareAnalysis": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Analyzers": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.ApiExplorer": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Core": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Cors": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.DataAnnotations": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Formatters.Json": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Formatters.Xml": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Localization": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Razor": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Razor.Extensions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.Razor.ViewCompilation": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.RazorPages": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.TagHelpers": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Mvc.ViewFeatures": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.NodeServices": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Owin": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Razor": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Razor.Design": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Razor.Language": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Razor.Runtime": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.ResponseCaching": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.ResponseCaching.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.ResponseCompression": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Rewrite": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Routing": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Routing.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.HttpSys": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.IISIntegration": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.Kestrel": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.Kestrel.Core": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.Kestrel.Https": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.Session": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.SignalR": "[1.0.1, 1.1.0)", + "Microsoft.AspNetCore.SignalR.Common": "[1.0.1, 1.1.0)", + "Microsoft.AspNetCore.SignalR.Core": "[1.0.1, 1.1.0)", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "[1.0.1, 1.1.0)", + "Microsoft.AspNetCore.SpaServices": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.SpaServices.Extensions": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.StaticFiles": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.WebSockets": "[2.1.1, 2.2.0)", + "Microsoft.AspNetCore.WebUtilities": "[2.1.1, 2.2.0)", + "Microsoft.CodeAnalysis.Razor": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.Analyzers": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.Design": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.InMemory": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.Relational": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.SqlServer": "[2.1.1, 2.2.0)", + "Microsoft.EntityFrameworkCore.Tools": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Caching.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Caching.Memory": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Caching.SqlServer": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.Binder": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.CommandLine": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.FileExtensions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.Ini": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.Json": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.KeyPerFile": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.UserSecrets": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Configuration.Xml": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.DependencyInjection": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.DependencyInjection.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.DiagnosticAdapter": "[2.1.0, 2.2.0)", + "Microsoft.Extensions.FileProviders.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.FileProviders.Composite": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.FileProviders.Embedded": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.FileProviders.Physical": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.FileSystemGlobbing": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Hosting": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Hosting.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Http": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Identity.Core": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Identity.Stores": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Localization": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Localization.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging.Abstractions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging.Configuration": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging.Console": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging.Debug": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging.EventSource": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Logging.TraceSource": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.ObjectPool": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Options": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Options.ConfigurationExtensions": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.Primitives": "[2.1.1, 2.2.0)", + "Microsoft.Extensions.WebEncoders": "[2.1.1, 2.2.0)", + "Microsoft.Net.Http.Headers": "[2.1.1, 2.2.0)" + }, + "compile": { + "lib/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + }, + "build": { + "build/netcoreapp2.1/Microsoft.AspNetCore.App.props": {}, + "build/netcoreapp2.1/Microsoft.AspNetCore.App.targets": {} + } + }, + "Microsoft.AspNetCore.Authentication/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Core": "2.1.1", + "Microsoft.AspNetCore.DataProtection": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "Microsoft.Extensions.WebEncoders": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.Cookies/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Cookies.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Cookies.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.Core/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Core.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Core.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.Facebook/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.OAuth": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Facebook.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Facebook.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.Google/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.OAuth": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Google.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Google.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication": "2.1.1", + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "5.2.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.MicrosoftAccount/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.OAuth": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.MicrosoftAccount.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.MicrosoftAccount.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.OAuth/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication": "2.1.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OAuth.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OAuth.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.OpenIdConnect/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.OAuth": "2.1.1", + "Microsoft.IdentityModel.Protocols.OpenIdConnect": "5.2.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OpenIdConnect.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OpenIdConnect.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.Twitter/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.OAuth": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Twitter.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Twitter.dll": {} + } + }, + "Microsoft.AspNetCore.Authentication.WsFederation/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication": "2.1.1", + "Microsoft.IdentityModel.Protocols.WsFederation": "5.2.0", + "System.IdentityModel.Tokens.Jwt": "5.2.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.WsFederation.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.WsFederation.dll": {} + } + }, + "Microsoft.AspNetCore.Authorization/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll": {} + } + }, + "Microsoft.AspNetCore.Authorization.Policy/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Authorization": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll": {} + } + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.1.1", + "System.IO.Pipelines": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.CookiePolicy/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.CookiePolicy.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.CookiePolicy.dll": {} + } + }, + "Microsoft.AspNetCore.Cors/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Cors.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Cors.dll": {} + } + }, + "Microsoft.AspNetCore.Cryptography.Internal/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.Internal.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.Internal.dll": {} + } + }, + "Microsoft.AspNetCore.Cryptography.KeyDerivation/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Cryptography.Internal": "2.1.1" + }, + "compile": { + "lib/netcoreapp2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll": {} + }, + "runtime": { + "lib/netcoreapp2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll": {} + } + }, + "Microsoft.AspNetCore.DataProtection/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Cryptography.Internal": "2.1.1", + "Microsoft.AspNetCore.DataProtection.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "Microsoft.Win32.Registry": "4.5.0", + "System.Security.Cryptography.Xml": "4.5.0", + "System.Security.Principal.Windows": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.dll": {} + } + }, + "Microsoft.AspNetCore.DataProtection.Abstractions/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.DataProtection.Extensions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.DataProtection": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Extensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Extensions.dll": {} + } + }, + "Microsoft.AspNetCore.Diagnostics/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Diagnostics.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.AspNetCore.WebUtilities": "2.1.1", + "Microsoft.Extensions.FileProviders.Physical": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.Diagnostics.DiagnosticSource": "4.5.0", + "System.Reflection.Metadata": "1.6.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.dll": {} + } + }, + "Microsoft.AspNetCore.Diagnostics.Abstractions/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.EntityFrameworkCore.Relational": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.dll": {} + } + }, + "Microsoft.AspNetCore.HostFiltering/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.HostFiltering.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.HostFiltering.dll": {} + } + }, + "Microsoft.AspNetCore.Hosting/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.Configuration.EnvironmentVariables": "2.1.1", + "Microsoft.Extensions.Configuration.FileExtensions": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.Extensions.FileProviders.Physical": "2.1.1", + "Microsoft.Extensions.Hosting.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.Diagnostics.DiagnosticSource": "4.5.0", + "System.Reflection.Metadata": "1.6.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.dll": {} + } + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Server.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.Extensions.Hosting.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.1.1", + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Html.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "System.Text.Encodings.Web": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Html.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Html.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Http/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.AspNetCore.WebUtilities": "2.1.1", + "Microsoft.Extensions.ObjectPool": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "Microsoft.Net.Http.Headers": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll": {} + } + }, + "Microsoft.AspNetCore.Http.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Features": "2.1.1", + "System.Text.Encodings.Web": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Http.Connections/1.0.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authorization.Policy": "2.1.1", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Connections.Common": "1.0.1", + "Microsoft.AspNetCore.Routing": "2.1.1", + "Microsoft.AspNetCore.WebSockets": "2.1.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Http.Connections.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Http.Connections.dll": {} + } + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.0.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.1.1", + "Newtonsoft.Json": "11.0.2", + "System.Buffers": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll": {} + } + }, + "Microsoft.AspNetCore.Http.Extensions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1", + "Microsoft.Net.Http.Headers": "2.1.1", + "System.Buffers": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll": {} + } + }, + "Microsoft.AspNetCore.Http.Features/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll": {} + } + }, + "Microsoft.AspNetCore.HttpOverrides/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.HttpOverrides.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.HttpOverrides.dll": {} + } + }, + "Microsoft.AspNetCore.HttpsPolicy/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Configuration.Binder": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.HttpsPolicy.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.HttpsPolicy.dll": {} + } + }, + "Microsoft.AspNetCore.Identity/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Cookies": "2.1.1", + "Microsoft.AspNetCore.Cryptography.KeyDerivation": "2.1.1", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.Extensions.Identity.Core": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.dll": {} + } + }, + "Microsoft.AspNetCore.Identity.EntityFrameworkCore/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Identity": "2.1.1", + "Microsoft.EntityFrameworkCore.Relational": "2.1.1", + "Microsoft.Extensions.Identity.Stores": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll": {} + } + }, + "Microsoft.AspNetCore.Identity.UI/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Identity": "2.1.1", + "Microsoft.AspNetCore.Mvc": "2.1.1", + "Microsoft.AspNetCore.StaticFiles": "2.1.1", + "Microsoft.Extensions.FileProviders.Embedded": "2.1.1", + "Microsoft.Extensions.Identity.Stores": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.UI.Views.dll": {}, + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.UI.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.UI.Views.dll": {}, + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.UI.dll": {} + } + }, + "Microsoft.AspNetCore.JsonPatch/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.CSharp": "4.5.0", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.JsonPatch.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.JsonPatch.dll": {} + } + }, + "Microsoft.AspNetCore.Localization/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Localization.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.dll": {} + } + }, + "Microsoft.AspNetCore.Localization.Routing/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Localization": "2.1.1", + "Microsoft.AspNetCore.Routing.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.Routing.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.Routing.dll": {} + } + }, + "Microsoft.AspNetCore.MiddlewareAnalysis/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "System.Diagnostics.DiagnosticSource": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.MiddlewareAnalysis.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.MiddlewareAnalysis.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.ApiExplorer": "2.1.1", + "Microsoft.AspNetCore.Mvc.Cors": "2.1.1", + "Microsoft.AspNetCore.Mvc.DataAnnotations": "2.1.1", + "Microsoft.AspNetCore.Mvc.Formatters.Json": "2.1.1", + "Microsoft.AspNetCore.Mvc.Localization": "2.1.1", + "Microsoft.AspNetCore.Mvc.Razor.Extensions": "2.1.1", + "Microsoft.AspNetCore.Mvc.RazorPages": "2.1.1", + "Microsoft.AspNetCore.Mvc.TagHelpers": "2.1.1", + "Microsoft.AspNetCore.Mvc.ViewFeatures": "2.1.1", + "Microsoft.AspNetCore.Razor.Design": "2.1.1", + "Microsoft.Extensions.Caching.Memory": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Routing.Abstractions": "2.1.1", + "Microsoft.Net.Http.Headers": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Analyzers/2.1.1": { + "type": "package" + }, + "Microsoft.AspNetCore.Mvc.ApiExplorer/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.Core": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ApiExplorer.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ApiExplorer.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Core/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Core": "2.1.1", + "Microsoft.AspNetCore.Authorization.Policy": "2.1.1", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.AspNetCore.Mvc.Abstractions": "2.1.1", + "Microsoft.AspNetCore.ResponseCaching.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Routing": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.Extensions.DependencyModel": "2.1.0", + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "System.Diagnostics.DiagnosticSource": "4.5.0", + "System.Threading.Tasks.Extensions": "4.5.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Core.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Core.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Cors/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Cors": "2.1.1", + "Microsoft.AspNetCore.Mvc.Core": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Cors.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Cors.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.DataAnnotations/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.Core": "2.1.1", + "Microsoft.Extensions.Localization": "2.1.1", + "System.ComponentModel.Annotations": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.DataAnnotations.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.DataAnnotations.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Formatters.Json/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.JsonPatch": "2.1.1", + "Microsoft.AspNetCore.Mvc.Core": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Json.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Json.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Formatters.Xml/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.Core": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Xml.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Xml.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Localization/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Localization": "2.1.1", + "Microsoft.AspNetCore.Mvc.Razor": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.Extensions.Localization": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Localization.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Localization.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Razor/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.Razor.Extensions": "2.1.1", + "Microsoft.AspNetCore.Mvc.ViewFeatures": "2.1.1", + "Microsoft.AspNetCore.Razor.Runtime": "2.1.1", + "Microsoft.CodeAnalysis.CSharp": "2.8.0", + "Microsoft.CodeAnalysis.Razor": "2.1.1", + "Microsoft.Extensions.Caching.Memory": "2.1.1", + "Microsoft.Extensions.FileProviders.Composite": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.Razor.Extensions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "2.1.1", + "Microsoft.CodeAnalysis.Razor": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.dll": {} + }, + "build": { + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.props": {}, + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.targets": {} + } + }, + "Microsoft.AspNetCore.Mvc.Razor.ViewCompilation/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting": "2.1.1", + "Microsoft.AspNetCore.Mvc.RazorPages": "2.1.1" + }, + "build": { + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.targets": {} + } + }, + "Microsoft.AspNetCore.Mvc.RazorPages/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.Razor": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.RazorPages.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.RazorPages.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.TagHelpers/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.Razor": "2.1.1", + "Microsoft.AspNetCore.Razor.Runtime": "2.1.1", + "Microsoft.AspNetCore.Routing.Abstractions": "2.1.1", + "Microsoft.Extensions.Caching.Memory": "2.1.1", + "Microsoft.Extensions.FileSystemGlobbing": "2.1.1", + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.TagHelpers.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.TagHelpers.dll": {} + } + }, + "Microsoft.AspNetCore.Mvc.ViewFeatures/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Antiforgery": "2.1.1", + "Microsoft.AspNetCore.Diagnostics.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Html.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Mvc.Core": "2.1.1", + "Microsoft.AspNetCore.Mvc.DataAnnotations": "2.1.1", + "Microsoft.AspNetCore.Mvc.Formatters.Json": "2.1.1", + "Microsoft.Extensions.WebEncoders": "2.1.1", + "Newtonsoft.Json.Bson": "1.0.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ViewFeatures.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ViewFeatures.dll": {} + } + }, + "Microsoft.AspNetCore.NodeServices/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Console": "2.1.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.NodeServices.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.NodeServices.dll": {} + } + }, + "Microsoft.AspNetCore.Owin/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Owin.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Owin.dll": {} + } + }, + "Microsoft.AspNetCore.Razor/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Html.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.dll": {} + } + }, + "Microsoft.AspNetCore.Razor.Design/2.1.2": { + "type": "package", + "build": { + "build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.props": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/Microsoft.AspNetCore.Razor.Design.props": {} + } + }, + "Microsoft.AspNetCore.Razor.Language/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll": {} + } + }, + "Microsoft.AspNetCore.Razor.Runtime/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Html.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Razor": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Runtime.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Runtime.dll": {} + } + }, + "Microsoft.AspNetCore.ResponseCaching/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.AspNetCore.ResponseCaching.Abstractions": "2.1.1", + "Microsoft.Extensions.Caching.Memory": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.dll": {} + } + }, + "Microsoft.AspNetCore.ResponseCaching.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.ResponseCompression/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCompression.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCompression.dll": {} + } + }, + "Microsoft.AspNetCore.Rewrite/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1", + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Rewrite.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Rewrite.dll": {} + } + }, + "Microsoft.AspNetCore.Routing/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.AspNetCore.Routing.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.ObjectPool": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll": {} + } + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Server.HttpSys/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Core": "2.1.1", + "Microsoft.AspNetCore.Hosting": "2.1.1", + "Microsoft.Net.Http.Headers": "2.1.1", + "Microsoft.Win32.Registry": "4.5.0", + "System.Security.Principal.Windows": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.HttpSys.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.HttpSys.dll": {} + } + }, + "Microsoft.AspNetCore.Server.IISIntegration/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authentication.Core": "2.1.1", + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.AspNetCore.HttpOverrides": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.Buffers": "4.5.0", + "System.IO.Pipelines": "4.5.0", + "System.Memory": "4.5.1", + "System.Numerics.Vectors": "4.5.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.1", + "System.Security.Principal.Windows": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.IISIntegration.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.IISIntegration.dll": {} + } + }, + "Microsoft.AspNetCore.Server.Kestrel/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Core": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Https": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.dll": {} + } + }, + "Microsoft.AspNetCore.Server.Kestrel.Core/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions": "2.1.1", + "Microsoft.AspNetCore.WebUtilities": "2.1.1", + "Microsoft.Extensions.Configuration.Binder": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "Microsoft.Net.Http.Headers": "2.1.1", + "System.Memory": "4.5.1", + "System.Numerics.Vectors": "4.5.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.1", + "System.Security.Cryptography.Cng": "4.5.0", + "System.Threading.Tasks.Extensions": "4.5.1" + }, + "compile": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Core.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Core.dll": {} + } + }, + "Microsoft.AspNetCore.Server.Kestrel.Https/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Core": "2.1.1" + }, + "compile": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Https.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Https.dll": {} + } + }, + "Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions.dll": {} + } + }, + "Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll": {} + } + }, + "Microsoft.AspNetCore.Session/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.DataProtection": "2.1.1", + "Microsoft.AspNetCore.Http.Abstractions": "2.1.1", + "Microsoft.Extensions.Caching.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.Session.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.Session.dll": {} + } + }, + "Microsoft.AspNetCore.SignalR/1.0.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Connections": "1.0.1", + "Microsoft.AspNetCore.SignalR.Core": "1.0.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll": {} + } + }, + "Microsoft.AspNetCore.SignalR.Common/1.0.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Connections.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "Newtonsoft.Json": "11.0.2", + "System.Buffers": "4.5.0" + }, + "compile": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.SignalR.Common.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/Microsoft.AspNetCore.SignalR.Common.dll": {} + } + }, + "Microsoft.AspNetCore.SignalR.Core/1.0.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Authorization": "2.1.1", + "Microsoft.AspNetCore.SignalR.Common": "1.0.1", + "Microsoft.AspNetCore.SignalR.Protocols.Json": "1.0.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "System.Reflection.Emit": "4.3.0", + "System.Threading.Channels": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll": {} + } + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.0.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SignalR.Common": "1.0.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll": {} + } + }, + "Microsoft.AspNetCore.SpaServices/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Mvc.TagHelpers": "2.1.1", + "Microsoft.AspNetCore.Mvc.ViewFeatures": "2.1.1", + "Microsoft.AspNetCore.NodeServices": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.dll": {} + } + }, + "Microsoft.AspNetCore.SpaServices.Extensions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.SpaServices": "2.1.1", + "Microsoft.AspNetCore.StaticFiles": "2.1.1", + "Microsoft.AspNetCore.WebSockets": "2.1.1", + "Microsoft.Extensions.FileProviders.Physical": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.Extensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.Extensions.dll": {} + } + }, + "Microsoft.AspNetCore.StaticFiles/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Hosting.Abstractions": "2.1.1", + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.WebEncoders": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.StaticFiles.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.StaticFiles.dll": {} + } + }, + "Microsoft.AspNetCore.WebSockets/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Http.Extensions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.Net.WebSockets.WebSocketProtocol": "4.5.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll": {} + } + }, + "Microsoft.AspNetCore.WebUtilities/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Net.Http.Headers": "2.1.1", + "System.Text.Encodings.Web": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll": {} + } + }, + "Microsoft.CodeAnalysis.Analyzers/1.1.0": { + "type": "package" + }, + "Microsoft.CodeAnalysis.Common/2.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Analyzers": "1.1.0", + "System.AppContext": "4.3.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Collections.Immutable": "1.3.1", + "System.Console": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.FileVersionInfo": "4.3.0", + "System.Diagnostics.StackTrace": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Dynamic.Runtime": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO.Compression": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Metadata": "1.4.2", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.CodePages": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Tasks.Parallel": "4.3.0", + "System.Threading.Thread": "4.3.0", + "System.ValueTuple": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XDocument": "4.3.0", + "System.Xml.XPath.XDocument": "4.3.0", + "System.Xml.XmlDocument": "4.3.0" + }, + "compile": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.dll": {} + }, + "runtime": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.dll": {} + } + }, + "Microsoft.CodeAnalysis.CSharp/2.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[2.8.0]" + }, + "compile": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.dll": {} + }, + "runtime": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.dll": {} + } + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/2.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.CSharp": "[2.8.0]", + "Microsoft.CodeAnalysis.Workspaces.Common": "[2.8.0]" + }, + "compile": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": {} + }, + "runtime": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.Workspaces.dll": {} + } + }, + "Microsoft.CodeAnalysis.Razor/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "2.1.1", + "Microsoft.CodeAnalysis.CSharp": "2.8.0", + "Microsoft.CodeAnalysis.Common": "2.8.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll": {} + } + }, + "Microsoft.CodeAnalysis.Workspaces.Common/2.8.0": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.Common": "[2.8.0]", + "System.Composition": "1.0.31", + "System.Diagnostics.Contracts": "4.3.0", + "System.Linq.Parallel": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading.Tasks.Parallel": "4.3.0" + }, + "compile": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.Workspaces.dll": {} + }, + "runtime": { + "lib/netstandard1.3/Microsoft.CodeAnalysis.Workspaces.dll": {} + } + }, + "Microsoft.CSharp/4.5.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "Microsoft.DotNet.PlatformAbstractions/2.1.0": { + "type": "package", + "dependencies": { + "System.AppContext": "4.1.0", + "System.Collections": "4.0.11", + "System.IO": "4.1.0", + "System.IO.FileSystem": "4.0.1", + "System.Reflection.TypeExtensions": "4.1.0", + "System.Runtime.Extensions": "4.1.0", + "System.Runtime.InteropServices": "4.1.0", + "System.Runtime.InteropServices.RuntimeInformation": "4.0.0" + }, + "compile": { + "lib/netstandard1.3/Microsoft.DotNet.PlatformAbstractions.dll": {} + }, + "runtime": { + "lib/netstandard1.3/Microsoft.DotNet.PlatformAbstractions.dll": {} + } + }, + "Microsoft.EntityFrameworkCore/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Abstractions": "2.1.1", + "Microsoft.EntityFrameworkCore.Analyzers": "2.1.1", + "Microsoft.Extensions.Caching.Memory": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "Remotion.Linq": "2.2.0", + "System.Collections.Immutable": "1.5.0", + "System.ComponentModel.Annotations": "4.5.0", + "System.Diagnostics.DiagnosticSource": "4.5.0", + "System.Interactive.Async": "3.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.dll": {} + } + }, + "Microsoft.EntityFrameworkCore.Abstractions/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Abstractions.dll": {} + } + }, + "Microsoft.EntityFrameworkCore.Analyzers/2.1.1": { + "type": "package" + }, + "Microsoft.EntityFrameworkCore.Design/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.CSharp": "4.5.0", + "Microsoft.EntityFrameworkCore.Relational": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Design.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Design.dll": {} + }, + "build": { + "build/netcoreapp2.0/Microsoft.EntityFrameworkCore.Design.props": {} + } + }, + "Microsoft.EntityFrameworkCore.InMemory/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.InMemory.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.InMemory.dll": {} + } + }, + "Microsoft.EntityFrameworkCore.Relational/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Relational.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Relational.dll": {} + } + }, + "Microsoft.EntityFrameworkCore.SqlServer/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Relational": "2.1.1", + "System.Data.SqlClient": "4.5.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll": {} + } + }, + "Microsoft.EntityFrameworkCore.Tools/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.EntityFrameworkCore.Design": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/_._": {} + } + }, + "Microsoft.Extensions.Caching.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.Caching.Memory/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll": {} + } + }, + "Microsoft.Extensions.Caching.SqlServer/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Caching.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.Data.SqlClient": "4.5.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.SqlServer.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Caching.SqlServer.dll": {} + } + }, + "Microsoft.Extensions.Configuration/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.dll": {} + } + }, + "Microsoft.Extensions.Configuration.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.Configuration.Binder/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.dll": {} + } + }, + "Microsoft.Extensions.Configuration.CommandLine/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.CommandLine.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.CommandLine.dll": {} + } + }, + "Microsoft.Extensions.Configuration.EnvironmentVariables/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.EnvironmentVariables.dll": {} + } + }, + "Microsoft.Extensions.Configuration.FileExtensions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.FileProviders.Physical": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.FileExtensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.FileExtensions.dll": {} + } + }, + "Microsoft.Extensions.Configuration.Ini/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.Configuration.FileExtensions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Ini.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Ini.dll": {} + } + }, + "Microsoft.Extensions.Configuration.Json/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.Configuration.FileExtensions": "2.1.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Json.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Json.dll": {} + } + }, + "Microsoft.Extensions.Configuration.KeyPerFile/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.FileProviders.Physical": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.KeyPerFile.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.KeyPerFile.dll": {} + } + }, + "Microsoft.Extensions.Configuration.UserSecrets/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Json": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.dll": {} + }, + "build": { + "build/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.props": {}, + "build/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.targets": {} + } + }, + "Microsoft.Extensions.Configuration.Xml/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.Configuration.FileExtensions": "2.1.1", + "System.Security.Cryptography.Xml": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Xml.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Xml.dll": {} + } + }, + "Microsoft.Extensions.DependencyInjection/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1" + }, + "compile": { + "lib/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.dll": {} + }, + "runtime": { + "lib/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.dll": {} + } + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.DependencyModel/2.1.0": { + "type": "package", + "dependencies": { + "Microsoft.DotNet.PlatformAbstractions": "2.1.0", + "Newtonsoft.Json": "9.0.1", + "System.Diagnostics.Debug": "4.0.11", + "System.Dynamic.Runtime": "4.0.11", + "System.Linq": "4.1.0" + }, + "compile": { + "lib/netstandard1.6/Microsoft.Extensions.DependencyModel.dll": {} + }, + "runtime": { + "lib/netstandard1.6/Microsoft.Extensions.DependencyModel.dll": {} + } + }, + "Microsoft.Extensions.DiagnosticAdapter/2.1.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.DiagnosticSource": "4.5.0" + }, + "compile": { + "lib/netcoreapp2.0/Microsoft.Extensions.DiagnosticAdapter.dll": {} + }, + "runtime": { + "lib/netcoreapp2.0/Microsoft.Extensions.DiagnosticAdapter.dll": {} + } + }, + "Microsoft.Extensions.FileProviders.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.FileProviders.Composite/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Composite.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Composite.dll": {} + } + }, + "Microsoft.Extensions.FileProviders.Embedded/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.dll": {} + }, + "build": { + "build/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.props": {}, + "build/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.targets": {} + }, + "buildMultiTargeting": { + "buildMultiTargeting/Microsoft.Extensions.FileProviders.Embedded.props": {}, + "buildMultiTargeting/Microsoft.Extensions.FileProviders.Embedded.targets": {} + } + }, + "Microsoft.Extensions.FileProviders.Physical/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1", + "Microsoft.Extensions.FileSystemGlobbing": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Physical.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Physical.dll": {} + } + }, + "Microsoft.Extensions.FileSystemGlobbing/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.FileSystemGlobbing.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.FileSystemGlobbing.dll": {} + } + }, + "Microsoft.Extensions.Hosting/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration": "2.1.1", + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.Extensions.FileProviders.Physical": "2.1.1", + "Microsoft.Extensions.Hosting.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Hosting.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Hosting.dll": {} + } + }, + "Microsoft.Extensions.Hosting.Abstractions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.FileProviders.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.Http/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Http.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Http.dll": {} + } + }, + "Microsoft.Extensions.Identity.Core/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Cryptography.KeyDerivation": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.ComponentModel.Annotations": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Identity.Core.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Identity.Core.dll": {} + } + }, + "Microsoft.Extensions.Identity.Stores/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Identity.Core": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "System.ComponentModel.Annotations": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Identity.Stores.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Identity.Stores.dll": {} + } + }, + "Microsoft.Extensions.Localization/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Localization.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Localization.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Localization.dll": {} + } + }, + "Microsoft.Extensions.Localization.Abstractions/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Localization.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Localization.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.Logging/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Binder": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll": {} + } + }, + "Microsoft.Extensions.Logging.Abstractions/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll": {} + } + }, + "Microsoft.Extensions.Logging.Configuration/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging": "2.1.1", + "Microsoft.Extensions.Options.ConfigurationExtensions": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Configuration.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Configuration.dll": {} + } + }, + "Microsoft.Extensions.Logging.Console/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1", + "Microsoft.Extensions.Logging": "2.1.1", + "Microsoft.Extensions.Logging.Configuration": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Console.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Console.dll": {} + } + }, + "Microsoft.Extensions.Logging.Debug/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Debug.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.Debug.dll": {} + } + }, + "Microsoft.Extensions.Logging.EventSource/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging": "2.1.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.EventSource.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.EventSource.dll": {} + } + }, + "Microsoft.Extensions.Logging.TraceSource/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Logging": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.TraceSource.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Logging.TraceSource.dll": {} + } + }, + "Microsoft.Extensions.ObjectPool/2.1.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.dll": {} + } + }, + "Microsoft.Extensions.Options/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Primitives": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Options.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Options.dll": {} + } + }, + "Microsoft.Extensions.Options.ConfigurationExtensions/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Configuration.Abstractions": "2.1.1", + "Microsoft.Extensions.Configuration.Binder": "2.1.1", + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Options.ConfigurationExtensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Options.ConfigurationExtensions.dll": {} + } + }, + "Microsoft.Extensions.Primitives/2.1.1": { + "type": "package", + "dependencies": { + "System.Memory": "4.5.1", + "System.Runtime.CompilerServices.Unsafe": "4.5.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll": {} + } + }, + "Microsoft.Extensions.WebEncoders/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection.Abstractions": "2.1.1", + "Microsoft.Extensions.Options": "2.1.1", + "System.Text.Encodings.Web": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Extensions.WebEncoders.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Extensions.WebEncoders.dll": {} + } + }, + "Microsoft.IdentityModel.Logging/5.2.0": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Logging.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Logging.dll": {} + } + }, + "Microsoft.IdentityModel.Protocols/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Logging": "5.2.0", + "Microsoft.IdentityModel.Tokens": "5.2.0", + "NETStandard.Library": "1.6.1", + "System.Collections.Specialized": "4.3.0", + "System.Diagnostics.Contracts": "4.3.0", + "System.Net.Http": "4.3.0" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.dll": {} + } + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols": "5.2.0", + "NETStandard.Library": "1.6.1", + "Newtonsoft.Json": "10.0.1", + "System.Dynamic.Runtime": "4.3.0", + "System.IdentityModel.Tokens.Jwt": "5.2.0" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll": {} + } + }, + "Microsoft.IdentityModel.Protocols.WsFederation/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Protocols": "5.2.0", + "Microsoft.IdentityModel.Tokens.Saml": "5.2.0", + "Microsoft.IdentityModel.Xml": "5.2.0", + "NETStandard.Library": "1.6.1", + "System.Xml.XmlDocument": "4.3.0" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.WsFederation.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.WsFederation.dll": {} + } + }, + "Microsoft.IdentityModel.Tokens/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Logging": "5.2.0", + "NETStandard.Library": "1.6.1", + "Newtonsoft.Json": "10.0.1", + "System.Collections": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.InteropServices.RuntimeInformation": "4.3.0", + "System.Runtime.Serialization.Xml": "4.3.0", + "System.Security.Claims": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.dll": {} + } + }, + "Microsoft.IdentityModel.Tokens.Saml/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Tokens": "5.2.0", + "Microsoft.IdentityModel.Xml": "5.2.0", + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.Saml.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.Saml.dll": {} + } + }, + "Microsoft.IdentityModel.Xml/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Tokens": "5.2.0", + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.4/Microsoft.IdentityModel.Xml.dll": {} + }, + "runtime": { + "lib/netstandard1.4/Microsoft.IdentityModel.Xml.dll": {} + } + }, + "Microsoft.Net.Http.Headers/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.Primitives": "2.1.1", + "System.Buffers": "4.5.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll": {} + } + }, + "Microsoft.NETCore.App/2.1.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.DotNetHostPolicy": "2.1.0", + "Microsoft.NETCore.Platforms": "2.1.0", + "Microsoft.NETCore.Targets": "2.1.0", + "NETStandard.Library": "2.0.3" + }, + "compile": { + "ref/netcoreapp2.1/Microsoft.CSharp.dll": {}, + "ref/netcoreapp2.1/Microsoft.VisualBasic.dll": {}, + "ref/netcoreapp2.1/Microsoft.Win32.Primitives.dll": {}, + "ref/netcoreapp2.1/System.AppContext.dll": {}, + "ref/netcoreapp2.1/System.Buffers.dll": {}, + "ref/netcoreapp2.1/System.Collections.Concurrent.dll": {}, + "ref/netcoreapp2.1/System.Collections.Immutable.dll": {}, + "ref/netcoreapp2.1/System.Collections.NonGeneric.dll": {}, + "ref/netcoreapp2.1/System.Collections.Specialized.dll": {}, + "ref/netcoreapp2.1/System.Collections.dll": {}, + "ref/netcoreapp2.1/System.ComponentModel.Annotations.dll": {}, + "ref/netcoreapp2.1/System.ComponentModel.DataAnnotations.dll": {}, + "ref/netcoreapp2.1/System.ComponentModel.EventBasedAsync.dll": {}, + "ref/netcoreapp2.1/System.ComponentModel.Primitives.dll": {}, + "ref/netcoreapp2.1/System.ComponentModel.TypeConverter.dll": {}, + "ref/netcoreapp2.1/System.ComponentModel.dll": {}, + "ref/netcoreapp2.1/System.Configuration.dll": {}, + "ref/netcoreapp2.1/System.Console.dll": {}, + "ref/netcoreapp2.1/System.Core.dll": {}, + "ref/netcoreapp2.1/System.Data.Common.dll": {}, + "ref/netcoreapp2.1/System.Data.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.Contracts.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.Debug.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.FileVersionInfo.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.Process.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.StackTrace.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.TextWriterTraceListener.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.Tools.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.TraceSource.dll": {}, + "ref/netcoreapp2.1/System.Diagnostics.Tracing.dll": {}, + "ref/netcoreapp2.1/System.Drawing.Primitives.dll": {}, + "ref/netcoreapp2.1/System.Drawing.dll": {}, + "ref/netcoreapp2.1/System.Dynamic.Runtime.dll": {}, + "ref/netcoreapp2.1/System.Globalization.Calendars.dll": {}, + "ref/netcoreapp2.1/System.Globalization.Extensions.dll": {}, + "ref/netcoreapp2.1/System.Globalization.dll": {}, + "ref/netcoreapp2.1/System.IO.Compression.Brotli.dll": {}, + "ref/netcoreapp2.1/System.IO.Compression.FileSystem.dll": {}, + "ref/netcoreapp2.1/System.IO.Compression.ZipFile.dll": {}, + "ref/netcoreapp2.1/System.IO.Compression.dll": {}, + "ref/netcoreapp2.1/System.IO.FileSystem.DriveInfo.dll": {}, + "ref/netcoreapp2.1/System.IO.FileSystem.Primitives.dll": {}, + "ref/netcoreapp2.1/System.IO.FileSystem.Watcher.dll": {}, + "ref/netcoreapp2.1/System.IO.FileSystem.dll": {}, + "ref/netcoreapp2.1/System.IO.IsolatedStorage.dll": {}, + "ref/netcoreapp2.1/System.IO.MemoryMappedFiles.dll": {}, + "ref/netcoreapp2.1/System.IO.Pipes.dll": {}, + "ref/netcoreapp2.1/System.IO.UnmanagedMemoryStream.dll": {}, + "ref/netcoreapp2.1/System.IO.dll": {}, + "ref/netcoreapp2.1/System.Linq.Expressions.dll": {}, + "ref/netcoreapp2.1/System.Linq.Parallel.dll": {}, + "ref/netcoreapp2.1/System.Linq.Queryable.dll": {}, + "ref/netcoreapp2.1/System.Linq.dll": {}, + "ref/netcoreapp2.1/System.Memory.dll": {}, + "ref/netcoreapp2.1/System.Net.Http.dll": {}, + "ref/netcoreapp2.1/System.Net.HttpListener.dll": {}, + "ref/netcoreapp2.1/System.Net.Mail.dll": {}, + "ref/netcoreapp2.1/System.Net.NameResolution.dll": {}, + "ref/netcoreapp2.1/System.Net.NetworkInformation.dll": {}, + "ref/netcoreapp2.1/System.Net.Ping.dll": {}, + "ref/netcoreapp2.1/System.Net.Primitives.dll": {}, + "ref/netcoreapp2.1/System.Net.Requests.dll": {}, + "ref/netcoreapp2.1/System.Net.Security.dll": {}, + "ref/netcoreapp2.1/System.Net.ServicePoint.dll": {}, + "ref/netcoreapp2.1/System.Net.Sockets.dll": {}, + "ref/netcoreapp2.1/System.Net.WebClient.dll": {}, + "ref/netcoreapp2.1/System.Net.WebHeaderCollection.dll": {}, + "ref/netcoreapp2.1/System.Net.WebProxy.dll": {}, + "ref/netcoreapp2.1/System.Net.WebSockets.Client.dll": {}, + "ref/netcoreapp2.1/System.Net.WebSockets.dll": {}, + "ref/netcoreapp2.1/System.Net.dll": {}, + "ref/netcoreapp2.1/System.Numerics.Vectors.dll": {}, + "ref/netcoreapp2.1/System.Numerics.dll": {}, + "ref/netcoreapp2.1/System.ObjectModel.dll": {}, + "ref/netcoreapp2.1/System.Reflection.DispatchProxy.dll": {}, + "ref/netcoreapp2.1/System.Reflection.Emit.ILGeneration.dll": {}, + "ref/netcoreapp2.1/System.Reflection.Emit.Lightweight.dll": {}, + "ref/netcoreapp2.1/System.Reflection.Emit.dll": {}, + "ref/netcoreapp2.1/System.Reflection.Extensions.dll": {}, + "ref/netcoreapp2.1/System.Reflection.Metadata.dll": {}, + "ref/netcoreapp2.1/System.Reflection.Primitives.dll": {}, + "ref/netcoreapp2.1/System.Reflection.TypeExtensions.dll": {}, + "ref/netcoreapp2.1/System.Reflection.dll": {}, + "ref/netcoreapp2.1/System.Resources.Reader.dll": {}, + "ref/netcoreapp2.1/System.Resources.ResourceManager.dll": {}, + "ref/netcoreapp2.1/System.Resources.Writer.dll": {}, + "ref/netcoreapp2.1/System.Runtime.CompilerServices.VisualC.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Extensions.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Handles.dll": {}, + "ref/netcoreapp2.1/System.Runtime.InteropServices.RuntimeInformation.dll": {}, + "ref/netcoreapp2.1/System.Runtime.InteropServices.WindowsRuntime.dll": {}, + "ref/netcoreapp2.1/System.Runtime.InteropServices.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Loader.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Numerics.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Serialization.Formatters.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Serialization.Json.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Serialization.Primitives.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Serialization.Xml.dll": {}, + "ref/netcoreapp2.1/System.Runtime.Serialization.dll": {}, + "ref/netcoreapp2.1/System.Runtime.dll": {}, + "ref/netcoreapp2.1/System.Security.Claims.dll": {}, + "ref/netcoreapp2.1/System.Security.Cryptography.Algorithms.dll": {}, + "ref/netcoreapp2.1/System.Security.Cryptography.Csp.dll": {}, + "ref/netcoreapp2.1/System.Security.Cryptography.Encoding.dll": {}, + "ref/netcoreapp2.1/System.Security.Cryptography.Primitives.dll": {}, + "ref/netcoreapp2.1/System.Security.Cryptography.X509Certificates.dll": {}, + "ref/netcoreapp2.1/System.Security.Principal.dll": {}, + "ref/netcoreapp2.1/System.Security.SecureString.dll": {}, + "ref/netcoreapp2.1/System.Security.dll": {}, + "ref/netcoreapp2.1/System.ServiceModel.Web.dll": {}, + "ref/netcoreapp2.1/System.ServiceProcess.dll": {}, + "ref/netcoreapp2.1/System.Text.Encoding.Extensions.dll": {}, + "ref/netcoreapp2.1/System.Text.Encoding.dll": {}, + "ref/netcoreapp2.1/System.Text.RegularExpressions.dll": {}, + "ref/netcoreapp2.1/System.Threading.Overlapped.dll": {}, + "ref/netcoreapp2.1/System.Threading.Tasks.Dataflow.dll": {}, + "ref/netcoreapp2.1/System.Threading.Tasks.Extensions.dll": {}, + "ref/netcoreapp2.1/System.Threading.Tasks.Parallel.dll": {}, + "ref/netcoreapp2.1/System.Threading.Tasks.dll": {}, + "ref/netcoreapp2.1/System.Threading.Thread.dll": {}, + "ref/netcoreapp2.1/System.Threading.ThreadPool.dll": {}, + "ref/netcoreapp2.1/System.Threading.Timer.dll": {}, + "ref/netcoreapp2.1/System.Threading.dll": {}, + "ref/netcoreapp2.1/System.Transactions.Local.dll": {}, + "ref/netcoreapp2.1/System.Transactions.dll": {}, + "ref/netcoreapp2.1/System.ValueTuple.dll": {}, + "ref/netcoreapp2.1/System.Web.HttpUtility.dll": {}, + "ref/netcoreapp2.1/System.Web.dll": {}, + "ref/netcoreapp2.1/System.Windows.dll": {}, + "ref/netcoreapp2.1/System.Xml.Linq.dll": {}, + "ref/netcoreapp2.1/System.Xml.ReaderWriter.dll": {}, + "ref/netcoreapp2.1/System.Xml.Serialization.dll": {}, + "ref/netcoreapp2.1/System.Xml.XDocument.dll": {}, + "ref/netcoreapp2.1/System.Xml.XPath.XDocument.dll": {}, + "ref/netcoreapp2.1/System.Xml.XPath.dll": {}, + "ref/netcoreapp2.1/System.Xml.XmlDocument.dll": {}, + "ref/netcoreapp2.1/System.Xml.XmlSerializer.dll": {}, + "ref/netcoreapp2.1/System.Xml.dll": {}, + "ref/netcoreapp2.1/System.dll": {}, + "ref/netcoreapp2.1/WindowsBase.dll": {}, + "ref/netcoreapp2.1/mscorlib.dll": {}, + "ref/netcoreapp2.1/netstandard.dll": {} + }, + "build": { + "build/netcoreapp2.1/Microsoft.NETCore.App.props": {}, + "build/netcoreapp2.1/Microsoft.NETCore.App.targets": {} + } + }, + "Microsoft.NETCore.DotNetAppHost/2.1.0": { + "type": "package" + }, + "Microsoft.NETCore.DotNetHostPolicy/2.1.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.DotNetHostResolver": "2.1.0" + } + }, + "Microsoft.NETCore.DotNetHostResolver/2.1.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.DotNetAppHost": "2.1.0" + } + }, + "Microsoft.NETCore.Platforms/2.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.NETCore.Targets/2.1.0": { + "type": "package", + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Contracts/2.1.1": { + "type": "package", + "dependencies": { + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Contracts.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Contracts.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Core/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.Extensions.DependencyInjection": "2.1.1", + "Microsoft.VisualStudio.Web.CodeGeneration.Templating": "2.1.1", + "Newtonsoft.Json": "11.0.2" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/dotnet-aspnet-codegenerator-design.dll": {} + }, + "runtime": { + "lib/netstandard2.0/dotnet-aspnet-codegenerator-design.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.VisualStudio.Web.CodeGeneration.Core": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Templating/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.AspNetCore.Razor.Language": "2.1.1", + "Microsoft.CodeAnalysis.CSharp": "2.8.0", + "Microsoft.VisualStudio.Web.CodeGeneration.Utils": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Utils/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.CodeAnalysis.CSharp.Workspaces": "2.8.0", + "Microsoft.VisualStudio.Web.CodeGeneration.Contracts": "2.1.1", + "Newtonsoft.Json": "11.0.2", + "NuGet.Frameworks": "4.7.0" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll": {} + } + }, + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc/2.1.1": { + "type": "package", + "dependencies": { + "Microsoft.VisualStudio.Web.CodeGeneration": "2.1.1" + }, + "compile": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll": {} + } + }, + "Microsoft.Win32.Registry/4.5.0": { + "type": "package", + "dependencies": { + "System.Security.AccessControl": "4.5.0", + "System.Security.Principal.Windows": "4.5.0" + }, + "compile": { + "ref/netstandard2.0/Microsoft.Win32.Registry.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Microsoft.Win32.Registry.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard2.0/Microsoft.Win32.Registry.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard2.0/Microsoft.Win32.Registry.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "NETStandard.Library/2.0.3": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + }, + "build": { + "build/netstandard2.0/NETStandard.Library.targets": {} + } + }, + "Newtonsoft.Json/11.0.2": { + "type": "package", + "compile": { + "lib/netstandard2.0/Newtonsoft.Json.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Newtonsoft.Json.dll": {} + } + }, + "Newtonsoft.Json.Bson/1.0.1": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1", + "Newtonsoft.Json": "10.0.1" + }, + "compile": { + "lib/netstandard1.3/Newtonsoft.Json.Bson.dll": {} + }, + "runtime": { + "lib/netstandard1.3/Newtonsoft.Json.Bson.dll": {} + } + }, + "NuGet.Frameworks/4.7.0": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.1" + }, + "compile": { + "lib/netstandard1.6/NuGet.Frameworks.dll": {} + }, + "runtime": { + "lib/netstandard1.6/NuGet.Frameworks.dll": {} + } + }, + "Remotion.Linq/2.2.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.11", + "System.Diagnostics.Debug": "4.0.11", + "System.Linq": "4.1.0", + "System.Linq.Expressions": "4.1.0", + "System.Linq.Queryable": "4.0.1", + "System.ObjectModel": "4.0.12", + "System.Reflection": "4.1.0", + "System.Reflection.Extensions": "4.0.1", + "System.Runtime": "4.1.0", + "System.Runtime.Extensions": "4.1.0", + "System.Threading": "4.0.11" + }, + "compile": { + "lib/netstandard1.0/Remotion.Linq.dll": {} + }, + "runtime": { + "lib/netstandard1.0/Remotion.Linq.dll": {} + } + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "debian.8-x64" + } + } + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "fedora.23-x64" + } + } + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "fedora.24-x64" + } + } + }, + "runtime.native.System/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Data.SqlClient.sni/4.4.0": { + "type": "package", + "dependencies": { + "runtime.win-arm64.runtime.native.System.Data.SqlClient.sni": "4.4.0", + "runtime.win-x64.runtime.native.System.Data.SqlClient.sni": "4.4.0", + "runtime.win-x86.runtime.native.System.Data.SqlClient.sni": "4.4.0" + } + }, + "runtime.native.System.IO.Compression/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "dependencies": { + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "dependencies": { + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0", + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.0/_._": {} + } + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "opensuse.13.2-x64" + } + } + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "opensuse.42.1-x64" + } + } + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib": { + "assetType": "native", + "rid": "osx.10.10-x64" + } + } + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib": { + "assetType": "native", + "rid": "osx.10.10-x64" + } + } + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "rhel.7-x64" + } + } + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.14.04-x64" + } + } + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.04-x64" + } + } + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "runtimeTargets": { + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so": { + "assetType": "native", + "rid": "ubuntu.16.10-x64" + } + } + }, + "runtime.win-arm64.runtime.native.System.Data.SqlClient.sni/4.4.0": { + "type": "package", + "runtimeTargets": { + "runtimes/win-arm64/native/sni.dll": { + "assetType": "native", + "rid": "win-arm64" + } + } + }, + "runtime.win-x64.runtime.native.System.Data.SqlClient.sni/4.4.0": { + "type": "package", + "runtimeTargets": { + "runtimes/win-x64/native/sni.dll": { + "assetType": "native", + "rid": "win-x64" + } + } + }, + "runtime.win-x86.runtime.native.System.Data.SqlClient.sni/4.4.0": { + "type": "package", + "runtimeTargets": { + "runtimes/win-x86/native/sni.dll": { + "assetType": "native", + "rid": "win-x86" + } + } + }, + "System.AppContext/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.AppContext.dll": {} + }, + "runtime": { + "lib/netstandard1.6/System.AppContext.dll": {} + } + }, + "System.Buffers/4.5.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "System.Collections/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.dll": {} + } + }, + "System.Collections.Concurrent/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.Concurrent.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Collections.Concurrent.dll": {} + } + }, + "System.Collections.Immutable/1.5.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/System.Collections.Immutable.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Collections.Immutable.dll": {} + } + }, + "System.Collections.NonGeneric/4.3.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Collections.NonGeneric.dll": {} + } + }, + "System.Collections.Specialized/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections.NonGeneric": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Collections.Specialized.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Collections.Specialized.dll": {} + } + }, + "System.ComponentModel.Annotations/4.5.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "System.Composition/1.0.31": { + "type": "package", + "dependencies": { + "System.Composition.AttributedModel": "1.0.31", + "System.Composition.Convention": "1.0.31", + "System.Composition.Hosting": "1.0.31", + "System.Composition.Runtime": "1.0.31", + "System.Composition.TypedParts": "1.0.31" + } + }, + "System.Composition.AttributedModel/1.0.31": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/System.Composition.AttributedModel.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Composition.AttributedModel.dll": {} + } + }, + "System.Composition.Convention/1.0.31": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Composition.AttributedModel": "1.0.31", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/System.Composition.Convention.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Composition.Convention.dll": {} + } + }, + "System.Composition.Hosting/1.0.31": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Composition.Runtime": "1.0.31", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/System.Composition.Hosting.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Composition.Hosting.dll": {} + } + }, + "System.Composition.Runtime/1.0.31": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.Linq": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/System.Composition.Runtime.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Composition.Runtime.dll": {} + } + }, + "System.Composition.TypedParts/1.0.31": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Composition.AttributedModel": "1.0.31", + "System.Composition.Hosting": "1.0.31", + "System.Composition.Runtime": "1.0.31", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/System.Composition.TypedParts.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Composition.TypedParts.dll": {} + } + }, + "System.Console/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Console.dll": {} + } + }, + "System.Data.SqlClient/4.5.1": { + "type": "package", + "dependencies": { + "Microsoft.Win32.Registry": "4.5.0", + "System.Security.Principal.Windows": "4.5.0", + "System.Text.Encoding.CodePages": "4.5.0", + "runtime.native.System.Data.SqlClient.sni": "4.4.0" + }, + "compile": { + "ref/netcoreapp2.1/System.Data.SqlClient.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/System.Data.SqlClient.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Diagnostics.Contracts/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Diagnostics.Contracts.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Diagnostics.Contracts.dll": {} + } + }, + "System.Diagnostics.Debug/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Diagnostics.Debug.dll": {} + } + }, + "System.Diagnostics.DiagnosticSource/4.5.0": { + "type": "package", + "compile": { + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll": {} + } + }, + "System.Diagnostics.FileVersionInfo/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Reflection.Metadata": "1.4.1", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Diagnostics.FileVersionInfo.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Diagnostics.FileVersionInfo.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Diagnostics.StackTrace/4.3.0": { + "type": "package", + "dependencies": { + "System.IO.FileSystem": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Metadata": "1.4.1", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Diagnostics.StackTrace.dll": {} + } + }, + "System.Diagnostics.Tools/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Diagnostics.Tools.dll": {} + } + }, + "System.Diagnostics.Tracing/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Diagnostics.Tracing.dll": {} + } + }, + "System.Dynamic.Runtime/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Linq": "4.3.0", + "System.Linq.Expressions": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Dynamic.Runtime.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Dynamic.Runtime.dll": {} + } + }, + "System.Globalization/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Globalization.dll": {} + } + }, + "System.Globalization.Calendars/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + } + }, + "System.Globalization.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.IdentityModel.Tokens.Jwt/5.2.0": { + "type": "package", + "dependencies": { + "Microsoft.IdentityModel.Tokens": "5.2.0", + "NETStandard.Library": "1.6.1", + "Newtonsoft.Json": "10.0.1" + }, + "compile": { + "lib/netstandard1.4/System.IdentityModel.Tokens.Jwt.dll": {} + }, + "runtime": { + "lib/netstandard1.4/System.IdentityModel.Tokens.Jwt.dll": {} + } + }, + "System.Interactive.Async/3.1.1": { + "type": "package", + "dependencies": { + "NETStandard.Library": "1.6.0" + }, + "compile": { + "lib/netstandard1.3/System.Interactive.Async.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Interactive.Async.dll": {} + } + }, + "System.IO/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.IO.dll": {} + } + }, + "System.IO.Compression/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Buffers": "4.3.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.IO.Compression": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.Compression.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.IO.FileSystem/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.FileSystem.dll": {} + } + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll": {} + } + }, + "System.IO.Pipelines/4.5.0": { + "type": "package", + "compile": { + "ref/netstandard1.3/System.IO.Pipelines.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/System.IO.Pipelines.dll": {} + } + }, + "System.Linq/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Linq.dll": {} + }, + "runtime": { + "lib/netstandard1.6/System.Linq.dll": {} + } + }, + "System.Linq.Expressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Linq": "4.3.0", + "System.ObjectModel": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Emit.Lightweight": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Linq.Expressions.dll": {} + }, + "runtime": { + "lib/netstandard1.6/System.Linq.Expressions.dll": {} + } + }, + "System.Linq.Parallel/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Linq.Parallel.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Linq.Parallel.dll": {} + } + }, + "System.Linq.Queryable/4.0.1": { + "type": "package", + "dependencies": { + "System.Collections": "4.0.11", + "System.Diagnostics.Debug": "4.0.11", + "System.Linq": "4.1.0", + "System.Linq.Expressions": "4.1.0", + "System.Reflection": "4.1.0", + "System.Reflection.Extensions": "4.0.1", + "System.Resources.ResourceManager": "4.0.1", + "System.Runtime": "4.1.0" + }, + "compile": { + "ref/netstandard1.0/System.Linq.Queryable.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Linq.Queryable.dll": {} + } + }, + "System.Memory/4.5.1": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Net.Http/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.DiagnosticSource": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Extensions": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.Net.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Security.Cryptography.X509Certificates": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Http.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Net.Http.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Net.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Net.Primitives.dll": {} + } + }, + "System.Net.WebSockets.WebSocketProtocol/4.5.1": { + "type": "package", + "compile": { + "ref/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/System.Net.WebSockets.WebSocketProtocol.dll": {} + } + }, + "System.Numerics.Vectors/4.5.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.0/_._": {} + }, + "runtime": { + "lib/netcoreapp2.0/_._": {} + } + }, + "System.ObjectModel/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.ObjectModel.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.ObjectModel.dll": {} + } + }, + "System.Private.DataContractSerialization/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Linq": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Emit.Lightweight": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Serialization.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XDocument": "4.3.0", + "System.Xml.XmlDocument": "4.3.0", + "System.Xml.XmlSerializer": "4.3.0" + }, + "compile": { + "ref/netstandard/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Private.DataContractSerialization.dll": {} + } + }, + "System.Reflection/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Reflection.dll": {} + } + }, + "System.Reflection.Emit/4.3.0": { + "type": "package", + "dependencies": { + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Reflection.Emit.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.dll": {} + } + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll": {} + } + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll": {} + } + }, + "System.Reflection.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Extensions.dll": {} + } + }, + "System.Reflection.Metadata/1.6.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/System.Reflection.Metadata.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Reflection.Metadata.dll": {} + } + }, + "System.Reflection.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Reflection.Primitives.dll": {} + } + }, + "System.Reflection.TypeExtensions/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Reflection.TypeExtensions.dll": {} + }, + "runtime": { + "lib/netstandard1.5/System.Reflection.TypeExtensions.dll": {} + } + }, + "System.Resources.ResourceManager/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Globalization": "4.3.0", + "System.Reflection": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Resources.ResourceManager.dll": {} + } + }, + "System.Runtime/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.dll": {} + } + }, + "System.Runtime.CompilerServices.Unsafe/4.5.1": { + "type": "package", + "compile": { + "ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": {} + }, + "runtime": { + "lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll": {} + } + }, + "System.Runtime.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.5/System.Runtime.Extensions.dll": {} + } + }, + "System.Runtime.Handles/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Runtime.Handles.dll": {} + } + }, + "System.Runtime.InteropServices/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Reflection": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Handles": "4.3.0" + }, + "compile": { + "ref/netcoreapp1.1/System.Runtime.InteropServices.dll": {} + } + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "type": "package", + "dependencies": { + "System.Reflection": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + }, + "runtime": { + "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Runtime.Numerics/4.3.0": { + "type": "package", + "dependencies": { + "System.Globalization": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Runtime.Numerics.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Runtime.Numerics.dll": {} + } + }, + "System.Runtime.Serialization.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Runtime.Serialization.Primitives.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Runtime.Serialization.Primitives.dll": {} + } + }, + "System.Runtime.Serialization.Xml/4.3.0": { + "type": "package", + "dependencies": { + "System.IO": "4.3.0", + "System.Private.DataContractSerialization": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Serialization.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Runtime.Serialization.Xml.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Runtime.Serialization.Xml.dll": {} + } + }, + "System.Security.AccessControl/4.5.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "2.0.0", + "System.Security.Principal.Windows": "4.5.0" + }, + "compile": { + "ref/netstandard2.0/System.Security.AccessControl.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.AccessControl.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp2.0/System.Security.AccessControl.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Claims/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Security.Principal": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Claims.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Security.Claims.dll": {} + } + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.Apple": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll": {} + }, + "runtimeTargets": { + "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "osx" + }, + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Cng/4.5.0": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/System.Security.Cryptography.Cng.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/System.Security.Cryptography.Cng.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp2.1/System.Security.Cryptography.Cng.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Csp/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Collections.Concurrent": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.6/_._": {} + }, + "runtime": { + "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll": { + "assetType": "runtime", + "rid": "unix" + } + } + }, + "System.Security.Cryptography.Pkcs/4.5.0": { + "type": "package", + "dependencies": { + "System.Security.Cryptography.Cng": "4.5.0" + }, + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll": {} + } + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.Globalization.Calendars": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.Handles": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Runtime.Numerics": "4.3.0", + "System.Security.Cryptography.Algorithms": "4.3.0", + "System.Security.Cryptography.Cng": "4.3.0", + "System.Security.Cryptography.Csp": "4.3.0", + "System.Security.Cryptography.Encoding": "4.3.0", + "System.Security.Cryptography.OpenSsl": "4.3.0", + "System.Security.Cryptography.Primitives": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "runtime.native.System": "4.3.0", + "runtime.native.System.Net.Http": "4.3.0", + "runtime.native.System.Security.Cryptography.OpenSsl": "4.3.0" + }, + "compile": { + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.Xml/4.5.0": { + "type": "package", + "dependencies": { + "System.Security.Cryptography.Pkcs": "4.5.0", + "System.Security.Permissions": "4.5.0" + }, + "compile": { + "ref/netstandard2.0/System.Security.Cryptography.Xml.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.Cryptography.Xml.dll": {} + } + }, + "System.Security.Permissions/4.5.0": { + "type": "package", + "dependencies": { + "System.Security.AccessControl": "4.5.0" + }, + "compile": { + "ref/netstandard2.0/System.Security.Permissions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.Permissions.dll": {} + } + }, + "System.Security.Principal/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.0/System.Security.Principal.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.Security.Principal.dll": {} + } + }, + "System.Security.Principal.Windows/4.5.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "2.0.0" + }, + "compile": { + "ref/netstandard2.0/System.Security.Principal.Windows.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.Principal.Windows.dll": {} + }, + "runtimeTargets": { + "runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.dll": { + "assetType": "runtime", + "rid": "unix" + }, + "runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Text.Encoding/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.dll": {} + } + }, + "System.Text.Encoding.CodePages/4.5.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "2.0.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.0" + }, + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Text.Encoding.CodePages.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Text.Encoding.Extensions/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0", + "System.Text.Encoding": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll": {} + } + }, + "System.Text.Encodings.Web/4.5.0": { + "type": "package", + "compile": { + "lib/netstandard2.0/System.Text.Encodings.Web.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Text.Encodings.Web.dll": {} + } + }, + "System.Text.RegularExpressions/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netcoreapp1.1/System.Text.RegularExpressions.dll": {} + }, + "runtime": { + "lib/netstandard1.6/System.Text.RegularExpressions.dll": {} + } + }, + "System.Threading/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Threading.dll": {} + } + }, + "System.Threading.Channels/4.5.0": { + "type": "package", + "compile": { + "lib/netcoreapp2.1/System.Threading.Channels.dll": {} + }, + "runtime": { + "lib/netcoreapp2.1/System.Threading.Channels.dll": {} + } + }, + "System.Threading.Tasks/4.3.0": { + "type": "package", + "dependencies": { + "Microsoft.NETCore.Platforms": "1.1.0", + "Microsoft.NETCore.Targets": "1.1.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Threading.Tasks.dll": {} + } + }, + "System.Threading.Tasks.Extensions/4.5.1": { + "type": "package", + "compile": { + "ref/netcoreapp2.1/_._": {} + }, + "runtime": { + "lib/netcoreapp2.1/_._": {} + } + }, + "System.Threading.Tasks.Parallel/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections.Concurrent": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tracing": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Threading.Tasks": "4.3.0" + }, + "compile": { + "ref/netstandard1.1/System.Threading.Tasks.Parallel.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Threading.Tasks.Parallel.dll": {} + } + }, + "System.Threading.Thread/4.3.0": { + "type": "package", + "dependencies": { + "System.Runtime": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Threading.Thread.dll": {} + } + }, + "System.ValueTuple/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0" + }, + "compile": { + "lib/netstandard1.0/System.ValueTuple.dll": {} + }, + "runtime": { + "lib/netstandard1.0/System.ValueTuple.dll": {} + } + }, + "System.Xml.ReaderWriter/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.IO.FileSystem": "4.3.0", + "System.IO.FileSystem.Primitives": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Runtime.InteropServices": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Text.Encoding.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading.Tasks": "4.3.0", + "System.Threading.Tasks.Extensions": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.ReaderWriter.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Xml.ReaderWriter.dll": {} + } + }, + "System.Xml.XDocument/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Diagnostics.Tools": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Reflection": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.XDocument.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XDocument.dll": {} + } + }, + "System.Xml.XmlDocument/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.Encoding": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/System.Xml.XmlDocument.dll": {} + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XmlDocument.dll": {} + } + }, + "System.Xml.XmlSerializer/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Linq": "4.3.0", + "System.Reflection": "4.3.0", + "System.Reflection.Emit": "4.3.0", + "System.Reflection.Emit.ILGeneration": "4.3.0", + "System.Reflection.Extensions": "4.3.0", + "System.Reflection.Primitives": "4.3.0", + "System.Reflection.TypeExtensions": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Text.RegularExpressions": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XmlDocument": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XmlSerializer.dll": {} + } + }, + "System.Xml.XPath/4.3.0": { + "type": "package", + "dependencies": { + "System.Collections": "4.3.0", + "System.Diagnostics.Debug": "4.3.0", + "System.Globalization": "4.3.0", + "System.IO": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XPath.dll": {} + } + }, + "System.Xml.XPath.XDocument/4.3.0": { + "type": "package", + "dependencies": { + "System.Diagnostics.Debug": "4.3.0", + "System.Linq": "4.3.0", + "System.Resources.ResourceManager": "4.3.0", + "System.Runtime": "4.3.0", + "System.Runtime.Extensions": "4.3.0", + "System.Threading": "4.3.0", + "System.Xml.ReaderWriter": "4.3.0", + "System.Xml.XDocument": "4.3.0", + "System.Xml.XPath": "4.3.0" + }, + "compile": { + "ref/netstandard1.3/_._": {} + }, + "runtime": { + "lib/netstandard1.3/System.Xml.XPath.XDocument.dll": {} + } + }, + "EnglishLessons/1.0.0": { + "type": "project", + "compile": { + "bin/placeholder/EnglishLessons.dll": {} + }, + "runtime": { + "bin/placeholder/EnglishLessons.dll": {} + } + } + } + }, + "libraries": { + "Microsoft.AspNet.WebApi.Client/5.2.6": { + "sha512": "rMDlyePoxggkmN/qgha1+BR2Uy+dOr38xKCQOPfVNKGY07R2nYJGMTKJFE1XFgwD70RYUNazf2fqutjJF18XgQ==", + "type": "package", + "path": "microsoft.aspnet.webapi.client/5.2.6", + "files": [ + ".signature.p7s", + "lib/net45/System.Net.Http.Formatting.dll", + "lib/net45/System.Net.Http.Formatting.xml", + "lib/netstandard2.0/System.Net.Http.Formatting.dll", + "lib/netstandard2.0/System.Net.Http.Formatting.xml", + "lib/portable-wp8+netcore45+net45+wp81+wpa81/System.Net.Http.Formatting.dll", + "lib/portable-wp8+netcore45+net45+wp81+wpa81/System.Net.Http.Formatting.xml", + "microsoft.aspnet.webapi.client.5.2.6.nupkg.sha512", + "microsoft.aspnet.webapi.client.nuspec" + ] + }, + "Microsoft.AspNetCore/2.1.1": { + "sha512": "YN6f5seFJb8EzODtccEnSW73q7yS6kgozun/TDAJQK4vbWG/PK9WKR2dPO1pXkrDlau3f/8yTRzof+j3hsDLOw==", + "type": "package", + "path": "microsoft.aspnetcore/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.xml", + "microsoft.aspnetcore.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.nuspec" + ] + }, + "Microsoft.AspNetCore.Antiforgery/2.1.1": { + "sha512": "BKDp2thf1k3Q2XBSIxC0TvHLvGFOr3ga3DdsxOJNTQ2MEvCuqlNFAoBxXIXWtvP9EHNfLbmKA0+VF7nBqXTlYg==", + "type": "package", + "path": "microsoft.aspnetcore.antiforgery/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Antiforgery.xml", + "microsoft.aspnetcore.antiforgery.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.antiforgery.nuspec" + ] + }, + "Microsoft.AspNetCore.App/2.1.1": { + "sha512": "PR5ozWADVe9vPfJj5gbp+JRMKu/6q8Mc6Sq0S1wLJITXDcVzsXYEvmVVS+bBXkJtlIqenNPsEcDSX2oKBJsvsQ==", + "type": "package", + "path": "microsoft.aspnetcore.app/2.1.1", + "files": [ + ".signature.p7s", + "build/netcoreapp2.1/Microsoft.AspNetCore.App.props", + "build/netcoreapp2.1/Microsoft.AspNetCore.App.targets", + "lib/netcoreapp2.1/_._", + "microsoft.aspnetcore.app.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.app.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication/2.1.1": { + "sha512": "WgbDLOGoyX0/EoUdAlihMaKIpON6LwCYZ8fiPhZZe+qdCJhvl1aTBmJ/carHcv3NJGT+ETuq2ppYQr7PKLq1CQ==", + "type": "package", + "path": "microsoft.aspnetcore.authentication/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.xml", + "microsoft.aspnetcore.authentication.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.Abstractions/2.1.1": { + "sha512": "kl1yZmNeUMm9/kWtqoOvIATBavqHPwJICl0FA9rpvNqETqeTgakAbbY25TdG82wKKbjo4LpqZ0YCHwktNPaR2Q==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Abstractions.xml", + "microsoft.aspnetcore.authentication.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.Cookies/2.1.1": { + "sha512": "Yz9dgcZvZ+OJjJ8ZX/+DtgY0+9ZuKzNO0cHkDUdQubY4W4Ozn5e194s70lNQiiEGJjah9hd/5yuayPAePiz7DQ==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.cookies/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Cookies.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Cookies.xml", + "microsoft.aspnetcore.authentication.cookies.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.cookies.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.Core/2.1.1": { + "sha512": "I7CfHtUAwVH67ayCG9ZrkRI5si0yOlttb0ltMR36dMwXfPR9CYab0o9PyWfTOfGIT9VQ+UgAEH9U9+jVoEjPeg==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.core/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Core.xml", + "microsoft.aspnetcore.authentication.core.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.core.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.Facebook/2.1.1": { + "sha512": "Zx6Gr6Ks3EyG8MlaTVM/XHlO7nZDbnoPy4Umv/Nh80DLgciWilITwTNmNtILxPCivW+qzn8NySjqbFvCLJwBVw==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.facebook/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Facebook.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Facebook.xml", + "microsoft.aspnetcore.authentication.facebook.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.facebook.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.Google/2.1.1": { + "sha512": "08ivngAB+2CgVteg2q/dd+M+MAAKi0mJZmbRwghZefRQrIG0YSK2pCINHhUtDBsOTVrWQCgQiwcZwCKTMwfKrg==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.google/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Google.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Google.xml", + "microsoft.aspnetcore.authentication.google.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.google.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.JwtBearer/2.1.1": { + "sha512": "u4lJIWhWp2+YIOofX98LwvK1dDuaMBwkNmDk8IDurTv8AivWdTDGocyBC5Guzxf6vb9DvILM+8JEzmzkUWhJIg==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.jwtbearer/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.JwtBearer.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.JwtBearer.xml", + "microsoft.aspnetcore.authentication.jwtbearer.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.jwtbearer.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.MicrosoftAccount/2.1.1": { + "sha512": "5Fd5ei39mXQLAkTlrI95mW+zyOGgzVgz9KgB8Jq1jMa99Mgf2e90oKLqKLAsSBSqZ8Qx3DLlbVC81+28mnjK9g==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.microsoftaccount/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.MicrosoftAccount.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.MicrosoftAccount.xml", + "microsoft.aspnetcore.authentication.microsoftaccount.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.microsoftaccount.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.OAuth/2.1.1": { + "sha512": "3WkJT0eUYBxox4ByRJO09gzq7vjYppxRuzl9lZu0nhur5paVD5ogSAFYMdfl4XQtN/Eq09X9xbB2USS6bth5qg==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.oauth/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OAuth.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OAuth.xml", + "microsoft.aspnetcore.authentication.oauth.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.oauth.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.OpenIdConnect/2.1.1": { + "sha512": "3hUta6Wmi6LERPxV90YZhZTDg76MdWjy5Yl23RDmnnVuq4xQDua4tgyDqIweV5NwbIUgXQzdYgtMsJv4ipuldQ==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.openidconnect/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OpenIdConnect.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.OpenIdConnect.xml", + "microsoft.aspnetcore.authentication.openidconnect.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.openidconnect.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.Twitter/2.1.1": { + "sha512": "XUw8+b3Q58kpR4wavOBbWg14ujUUSYTexZD6/lr6Luwg7pVlzLfW9OVKRSTtwSykjzTIwQ4ie1+Sz+ATn8mUQA==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.twitter/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Twitter.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.Twitter.xml", + "microsoft.aspnetcore.authentication.twitter.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.twitter.nuspec" + ] + }, + "Microsoft.AspNetCore.Authentication.WsFederation/2.1.1": { + "sha512": "wVunuX+o7ctflbHHnTt8rMSqAAApX46bNW7q6KFPOSjfoog2I7EPInGMpnlxwUKi5IcAZ1ml1kdaoRAYW+xjfQ==", + "type": "package", + "path": "microsoft.aspnetcore.authentication.wsfederation/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.WsFederation.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authentication.WsFederation.xml", + "microsoft.aspnetcore.authentication.wsfederation.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authentication.wsfederation.nuspec" + ] + }, + "Microsoft.AspNetCore.Authorization/2.1.1": { + "sha512": "z/5haIkI/G2NcCMO288l6l7Jy3BDqzZjHLb2VxjCfj4NKRVv6KlsDD7nGIyAtAbDVKnbOsGBXF6xwhyo4aFGBw==", + "type": "package", + "path": "microsoft.aspnetcore.authorization/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.xml", + "microsoft.aspnetcore.authorization.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authorization.nuspec" + ] + }, + "Microsoft.AspNetCore.Authorization.Policy/2.1.1": { + "sha512": "ipuhLj35k90+q6GbBuJaouPDLGwaJilBUUE+y0rtGL+yncCtA1gYFrs3jZ+tRX/zNqlVtlAb1u7wXm5NJ/TkQw==", + "type": "package", + "path": "microsoft.aspnetcore.authorization.policy/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Authorization.Policy.xml", + "microsoft.aspnetcore.authorization.policy.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.authorization.policy.nuspec" + ] + }, + "Microsoft.AspNetCore.Connections.Abstractions/2.1.1": { + "sha512": "F3+HhBB2Xh9EbJDLJq9PqKIvLiiFHWwoSU/LLjltbV/p0ch7fXCvmQqZV+p+Od/Gji2QsSwsr2EhVEA9FCZh1g==", + "type": "package", + "path": "microsoft.aspnetcore.connections.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Connections.Abstractions.xml", + "microsoft.aspnetcore.connections.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.connections.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.CookiePolicy/2.1.1": { + "sha512": "1VXR36rwz55yTA4z2S2C8/M2kkgMNMkiZi6YFyYBYSXKep3ekNgY75Y9zlkHJHiUiKXMj3nz1fHNBohODbBLZg==", + "type": "package", + "path": "microsoft.aspnetcore.cookiepolicy/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.CookiePolicy.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.CookiePolicy.xml", + "microsoft.aspnetcore.cookiepolicy.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.cookiepolicy.nuspec" + ] + }, + "Microsoft.AspNetCore.Cors/2.1.1": { + "sha512": "ajz3/gjo4OYDFId5nJUrBAYJhKW3sJrK5+dLJ3ynTuVyGwY5me3QICukzMeADSKNV+JapSrPKLXIythHwDrQjA==", + "type": "package", + "path": "microsoft.aspnetcore.cors/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Cors.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Cors.xml", + "microsoft.aspnetcore.cors.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.cors.nuspec" + ] + }, + "Microsoft.AspNetCore.Cryptography.Internal/2.1.1": { + "sha512": "9X49e4ZTv6ipL/Yh1GvVxpgh+ghWMHi+PPE3tQI2HRgG6Jixvmt8LgT/KvAvfgYEDnjsSTRyt/arrHsekHwfMA==", + "type": "package", + "path": "microsoft.aspnetcore.cryptography.internal/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.Internal.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.Internal.xml", + "microsoft.aspnetcore.cryptography.internal.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.cryptography.internal.nuspec" + ] + }, + "Microsoft.AspNetCore.Cryptography.KeyDerivation/2.1.1": { + "sha512": "HqgqUlIbOUgCWcW51NyJuws2FcY4mCfhIFcw1+NnK+p3XwdYmJ/XI+Q/WM4GTshTh9Dgn1h7i/WsrzgQr/292g==", + "type": "package", + "path": "microsoft.aspnetcore.cryptography.keyderivation/2.1.1", + "files": [ + ".signature.p7s", + "lib/netcoreapp2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll", + "lib/netcoreapp2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Cryptography.KeyDerivation.xml", + "microsoft.aspnetcore.cryptography.keyderivation.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.cryptography.keyderivation.nuspec" + ] + }, + "Microsoft.AspNetCore.DataProtection/2.1.1": { + "sha512": "561yQw2Xu5DH05p6uv4G6dD0tfO2KeNuFz/kPREHHFzOk4PF3tdmH9LjCz2fX8eyOvgvfiLSib3atE7thRvZDQ==", + "type": "package", + "path": "microsoft.aspnetcore.dataprotection/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.xml", + "microsoft.aspnetcore.dataprotection.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.dataprotection.nuspec" + ] + }, + "Microsoft.AspNetCore.DataProtection.Abstractions/2.1.1": { + "sha512": "94UHZlJQUeCeCsrDNrEVDO7nOoFsr1KSetcHAttPA6DDe80XJ57wbWUpzxjoGRimoGG2yS95n7M0bueZCMD7ag==", + "type": "package", + "path": "microsoft.aspnetcore.dataprotection.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Abstractions.xml", + "microsoft.aspnetcore.dataprotection.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.dataprotection.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.DataProtection.Extensions/2.1.1": { + "sha512": "kwZ6maQQXmDpGBL+XW2Hqvy2TUzON2h+9FG3b0b0wNnocNNCJ3SqgvuXxjMjkpGwD2oS9/BXb1XL7S17YPKBtw==", + "type": "package", + "path": "microsoft.aspnetcore.dataprotection.extensions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Extensions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.DataProtection.Extensions.xml", + "microsoft.aspnetcore.dataprotection.extensions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.dataprotection.extensions.nuspec" + ] + }, + "Microsoft.AspNetCore.Diagnostics/2.1.1": { + "sha512": "F9GjtKSe4HeOqZJjnnI110wDcvsY0aguALGswbr+R3iuw6X+Mzko7S/Vx7LxQXxInOCJoxnNEkd7Kf59dFFSRg==", + "type": "package", + "path": "microsoft.aspnetcore.diagnostics/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.xml", + "microsoft.aspnetcore.diagnostics.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.diagnostics.nuspec" + ] + }, + "Microsoft.AspNetCore.Diagnostics.Abstractions/2.1.1": { + "sha512": "rLn97UtnaXvD1E8K2UFQg5MBZ/D6KLuMZEEt47qkIIEsEQar84yIlR3HdDDF7ovJ/Bg546EyJXHxXvi7t6G7yw==", + "type": "package", + "path": "microsoft.aspnetcore.diagnostics.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.Abstractions.xml", + "microsoft.aspnetcore.diagnostics.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.diagnostics.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore/2.1.1": { + "sha512": "gOlYU6k5UTARQKs1RefT03Z+J4+kCUeAcB13P2ytOeGoN9NXJ+1+4zIOlwbvUgsJwelBiW2XcpxlXzyaUvwe2A==", + "type": "package", + "path": "microsoft.aspnetcore.diagnostics.entityframeworkcore/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore.xml", + "microsoft.aspnetcore.diagnostics.entityframeworkcore.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.diagnostics.entityframeworkcore.nuspec" + ] + }, + "Microsoft.AspNetCore.HostFiltering/2.1.1": { + "sha512": "j0EXj9gWL3I+66wlozjuefGmKnbK6CJUcpnczmenxkFOPhQ2/3T9m9I0pj8ztCfktbM22R/6Dzzt1QUz+mHtjw==", + "type": "package", + "path": "microsoft.aspnetcore.hostfiltering/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.HostFiltering.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.HostFiltering.xml", + "microsoft.aspnetcore.hostfiltering.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.hostfiltering.nuspec" + ] + }, + "Microsoft.AspNetCore.Hosting/2.1.1": { + "sha512": "rO2JSJGuHJMYE68vm72bFI+PEj1e6zgv9r3izNMEMwyGtjsEDFSHALoGqffnehY63TKqpXdAKElKzPV0UYrMqA==", + "type": "package", + "path": "microsoft.aspnetcore.hosting/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.xml", + "microsoft.aspnetcore.hosting.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.hosting.nuspec" + ] + }, + "Microsoft.AspNetCore.Hosting.Abstractions/2.1.1": { + "sha512": "FFZxJAK3sV9JxZ7YP47upycv6VZOcNvJLiLM0FXfvlrb67RC9y4AjCUX1RvI0W1n1v6GMZhWSNb3KYs+O6s26g==", + "type": "package", + "path": "microsoft.aspnetcore.hosting.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Abstractions.xml", + "microsoft.aspnetcore.hosting.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.hosting.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Hosting.Server.Abstractions/2.1.1": { + "sha512": "xqfxC5t1Jk4ZOQN5xfR2Q0nqTOTN5R6FORk4LqjEzmfX8NDdEsds+Fj6d9bMYqhPWZ4ATRAi8RmaUKYPQuAWbQ==", + "type": "package", + "path": "microsoft.aspnetcore.hosting.server.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Hosting.Server.Abstractions.xml", + "microsoft.aspnetcore.hosting.server.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.hosting.server.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Html.Abstractions/2.1.1": { + "sha512": "tPZG0aA3V8tljooIgKhAiVxu7ZnAnL7QPzz3uxQgs4v7vwwCZTigzh2PIL4QRtezlGFk1jn7PbOtxi+FsmEe0g==", + "type": "package", + "path": "microsoft.aspnetcore.html.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Html.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Html.Abstractions.xml", + "microsoft.aspnetcore.html.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.html.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http/2.1.1": { + "sha512": "u8Fmky/nirrxOU1gBGh97J5gPoniWDc1QiT+J0EFuXJWcFo3BgPGiv7RLvYCi89QpLgIt5CkkPqTkPnWz0eaSA==", + "type": "package", + "path": "microsoft.aspnetcore.http/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.xml", + "microsoft.aspnetcore.http.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.http.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Abstractions/2.1.1": { + "sha512": "0TPQgjRy2xJ75GcK18vvrT6/zCtSAWUEBSskSJN/lY0zuvQx2or8lzwr0TdKyMNK8A8MLP4QMLPqL9NOAxe0yg==", + "type": "package", + "path": "microsoft.aspnetcore.http.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Abstractions.xml", + "microsoft.aspnetcore.http.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.http.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections/1.0.1": { + "sha512": "VpNZjRdXDjiIb+ZmpjYChFWLYEv6344JjOHFjafq7Q2cQtXVC242BAvBuM+o3LeovPfMyZr3LSS54mRHXDpqxg==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections/1.0.1", + "files": [ + ".signature.p7s", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Http.Connections.dll", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Http.Connections.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.xml", + "microsoft.aspnetcore.http.connections.1.0.1.nupkg.sha512", + "microsoft.aspnetcore.http.connections.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Connections.Common/1.0.1": { + "sha512": "bWPi3xZNxTzobUldHtCixRwkJ3uCyCAMO7PVdtzVP3Sq1q5krRYM1EOR2d7h0AUT5uktRnpGz2yxqUYtb79fXg==", + "type": "package", + "path": "microsoft.aspnetcore.http.connections.common/1.0.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Connections.Common.xml", + "microsoft.aspnetcore.http.connections.common.1.0.1.nupkg.sha512", + "microsoft.aspnetcore.http.connections.common.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Extensions/2.1.1": { + "sha512": "0dgKLajNfwElW6fLElwjo+fEyfhXdSN74QeXhOUgPam5UIbU3EBQU/+xD83MnfprAiUPDWHqueTKuB8oa/cjNQ==", + "type": "package", + "path": "microsoft.aspnetcore.http.extensions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Extensions.xml", + "microsoft.aspnetcore.http.extensions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.http.extensions.nuspec" + ] + }, + "Microsoft.AspNetCore.Http.Features/2.1.1": { + "sha512": "cMnTXRH+8T7GLht6cXRCMmN1HaYfXti2WEUdXqMUuyJgi4oH9cmzW4nECSBkQjsCs5O06BphyDDDAsTW/zQmpg==", + "type": "package", + "path": "microsoft.aspnetcore.http.features/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Http.Features.xml", + "microsoft.aspnetcore.http.features.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.http.features.nuspec" + ] + }, + "Microsoft.AspNetCore.HttpOverrides/2.1.1": { + "sha512": "BiIpB0HjMUq1nc45ss4N9A4KbxUgyBWemXEdA5Iv1VQZDy3gUI/eR3+Ist9Oo1ATA7LxXgJ++LGSrCVN2UWYNg==", + "type": "package", + "path": "microsoft.aspnetcore.httpoverrides/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.HttpOverrides.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.HttpOverrides.xml", + "microsoft.aspnetcore.httpoverrides.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.httpoverrides.nuspec" + ] + }, + "Microsoft.AspNetCore.HttpsPolicy/2.1.1": { + "sha512": "8pHFcicNlPyEuPsjsUHpROdAHmM0j+StbRekbncft/5kbMKPVJAp7y6PusFbYmizOVXNKGKfHNwo3UA/lG5Ckw==", + "type": "package", + "path": "microsoft.aspnetcore.httpspolicy/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.HttpsPolicy.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.HttpsPolicy.xml", + "microsoft.aspnetcore.httpspolicy.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.httpspolicy.nuspec" + ] + }, + "Microsoft.AspNetCore.Identity/2.1.1": { + "sha512": "bTnsTimS6tFwZXDWPgexZo9gzr2jLuCEHRV8ib8gjMzR6TzQ/3/tl5lxP72Db446PJl1s479Qj1rnflQc6+PSw==", + "type": "package", + "path": "microsoft.aspnetcore.identity/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.xml", + "microsoft.aspnetcore.identity.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.identity.nuspec" + ] + }, + "Microsoft.AspNetCore.Identity.EntityFrameworkCore/2.1.1": { + "sha512": "0Xd+Q8uwwPnj7rt95h5p1FQFClwLMHwnGxZykK/GM9Wkttw5AE47yXvNKlkgM+GPyDhhB6JWd+w+aiOwLfG0jA==", + "type": "package", + "path": "microsoft.aspnetcore.identity.entityframeworkcore/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.EntityFrameworkCore.xml", + "microsoft.aspnetcore.identity.entityframeworkcore.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.identity.entityframeworkcore.nuspec" + ] + }, + "Microsoft.AspNetCore.Identity.UI/2.1.1": { + "sha512": "Mw+WI+OUhgSvatpqYZY0FJx2ri1THLFHQZsYlOfNa1AB4j/Qx6RpkV9iFB9iopNM1I+iviHeiHY0Nw6WqQXIUA==", + "type": "package", + "path": "microsoft.aspnetcore.identity.ui/2.1.1", + "files": [ + ".signature.p7s", + "THIRD-PARTY-NOTICES", + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.UI.Views.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Identity.UI.dll", + "microsoft.aspnetcore.identity.ui.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.identity.ui.nuspec" + ] + }, + "Microsoft.AspNetCore.JsonPatch/2.1.1": { + "sha512": "T5kx4u+0CH5bD3hB+QEozR4MmLZ7CDGdm0+OD1wxyQBJKNNA6jRSJmbvsZ8nmOEwoGtAfHdXLYM0r3/Zw6J4JQ==", + "type": "package", + "path": "microsoft.aspnetcore.jsonpatch/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.JsonPatch.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.JsonPatch.xml", + "microsoft.aspnetcore.jsonpatch.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.jsonpatch.nuspec" + ] + }, + "Microsoft.AspNetCore.Localization/2.1.1": { + "sha512": "oy13Ppp0iBLHAzq03R5tEBNTAfatboreqW7YEMhVA2fu6L0KLmBk3njHc0FJaFnwZwCbmPnRtr81J8A7NWqQuQ==", + "type": "package", + "path": "microsoft.aspnetcore.localization/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.xml", + "microsoft.aspnetcore.localization.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.localization.nuspec" + ] + }, + "Microsoft.AspNetCore.Localization.Routing/2.1.1": { + "sha512": "aINDrKmXV4PkqYsIOKv3Y5Mqg8/dVBAvKmubT0jEpdX18dSeUNKdhOSjadGUYgwUmu11bsqFeplo7gYGcbK8TA==", + "type": "package", + "path": "microsoft.aspnetcore.localization.routing/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.Routing.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Localization.Routing.xml", + "microsoft.aspnetcore.localization.routing.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.localization.routing.nuspec" + ] + }, + "Microsoft.AspNetCore.MiddlewareAnalysis/2.1.1": { + "sha512": "qEH68Ps12p0xCEf68ZEWVTWRqvxJAr0Fy1JivDx80d4GSFN9WdDuljVAYCeE6S3tExBQx2m7/o9P/TGbmRfIUw==", + "type": "package", + "path": "microsoft.aspnetcore.middlewareanalysis/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.MiddlewareAnalysis.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.MiddlewareAnalysis.xml", + "microsoft.aspnetcore.middlewareanalysis.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.middlewareanalysis.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc/2.1.1": { + "sha512": "3mHitdj9MClvbFThDsVhojGH2PxWWxhJNFzFwNnofSdORrnRby9bikM+HCqUOz2gvxnyYz5jsgbA88+CGkNy4A==", + "type": "package", + "path": "microsoft.aspnetcore.mvc/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.xml", + "microsoft.aspnetcore.mvc.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Abstractions/2.1.1": { + "sha512": "/XgeeXi0LrykMlMCNMQftj2XyEua4JT5AFAt3D3xE6KChx0PydXTFiwQtDvbGpNvarPQWWdyEfq1rKlgyVGlXA==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Abstractions.xml", + "microsoft.aspnetcore.mvc.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Analyzers/2.1.1": { + "sha512": "TNWptMY99Iojeihp2MBxZhOb2IhZMMGtXxg5wy/Z2Bsb/MeQiazIFyiAjKFBY9ccq3Qd23EEjJAReYQClFjvmQ==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.analyzers/2.1.1", + "files": [ + ".signature.p7s", + "analyzers/dotnet/cs/Microsoft.AspNetCore.Mvc.Analyzers.dll", + "microsoft.aspnetcore.mvc.analyzers.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.analyzers.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.ApiExplorer/2.1.1": { + "sha512": "GGPbYZfzJvu6rigtCN0FRQD4B8ERmMO+grCyf/lfQhmqK9cTfhDcU8Zfw75SXrQ3Ity1lSvYpf26XeFVIi5Y5A==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.apiexplorer/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ApiExplorer.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ApiExplorer.xml", + "microsoft.aspnetcore.mvc.apiexplorer.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.apiexplorer.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Core/2.1.1": { + "sha512": "QoYLsJHrN7LNnL1LWzSGzQm3v/1ERI5csb4LSzNYm71EcCG8SWckw76GgXNx6mjsJXfxsvoqRAovnLQKCCBtvA==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.core/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Core.xml", + "microsoft.aspnetcore.mvc.core.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.core.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Cors/2.1.1": { + "sha512": "a04jcvPbG6IfaugJe3CS59ZhSRAVLmwVEGDLp4wGuR4/9yW3T4mCZgqcSQz+5921j/hRGn1Jwu/b05bWkg+wBg==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.cors/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Cors.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Cors.xml", + "microsoft.aspnetcore.mvc.cors.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.cors.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.DataAnnotations/2.1.1": { + "sha512": "3/LdPk7u3VitfUxVu+forzb+YFa/G4tqFDQKG20mMHrAnE7ranDUhqURD7qoy8JFLRWdhvvdBhUJaATfvvmTVg==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.dataannotations/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.DataAnnotations.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.DataAnnotations.xml", + "microsoft.aspnetcore.mvc.dataannotations.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.dataannotations.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Formatters.Json/2.1.1": { + "sha512": "nBzpBR0Ei/4L63+ylGS6P4gP+u+/S1cIvUU4+G+4Rk+vtzNT5KsoFP9TfCvW8hGQ6ShehjT7wXMuci/D2SbCQQ==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.formatters.json/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Json.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Json.xml", + "microsoft.aspnetcore.mvc.formatters.json.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.formatters.json.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Formatters.Xml/2.1.1": { + "sha512": "WgK7shj6rok4qc0Jc2yOCltN+XO81gP4IVTlXU8vS6AHHKVt6m0UN8mirgcZCRetUnY466hnZNyPHHq/a+7zWw==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.formatters.xml/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Xml.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Formatters.Xml.xml", + "microsoft.aspnetcore.mvc.formatters.xml.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.formatters.xml.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Localization/2.1.1": { + "sha512": "JN/d/T8JUYoF/YMBupIu92ZcP9PcYfLLQqIZWvfyJrNNftgXENAHMLn1999POEzG44RjGouWdioSH8QZJ1mTTQ==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.localization/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Localization.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Localization.xml", + "microsoft.aspnetcore.mvc.localization.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.localization.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Razor/2.1.1": { + "sha512": "9WCfQX8+xZN8pzRK8ZxCJw/3lpsKsg3iQvFr6CRz4UtayLEoq/uzLKL5xvY8fj1rVJjt3wBh+YBhheB/196QSg==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.razor/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.xml", + "microsoft.aspnetcore.mvc.razor.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.razor.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Razor.Extensions/2.1.1": { + "sha512": "w/4GAxZS5y9CnlIO4z04sC7I+cLVVYsvI+hC+Thh2vy5AQxNZj9ZIxmdIPtvqQfZ2JdURQ7cpBsr8pzf4YhTEA==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.razor.extensions/2.1.1", + "files": [ + ".signature.p7s", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.props", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.targets", + "lib/net46/Microsoft.AspNetCore.Mvc.Razor.Extensions.dll", + "lib/net46/Microsoft.AspNetCore.Mvc.Razor.Extensions.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.Extensions.xml", + "microsoft.aspnetcore.mvc.razor.extensions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.razor.extensions.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.Razor.ViewCompilation/2.1.1": { + "sha512": "9fZ7Ut3yhJZUzf0yI8OBeQhN2CdJOcITVbwvM58Xe5L/Ws+Xh3BRsCYzWzj6UvstdZXs47pkZZkGABE2rqQ4zQ==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.razor.viewcompilation/2.1.1", + "files": [ + ".signature.p7s", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation-x64.exe", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation-x86.exe", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.Tasks.dll", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.dll", + "build/netstandard2.0/Microsoft.AspNetCore.Mvc.Razor.ViewCompilation.targets", + "microsoft.aspnetcore.mvc.razor.viewcompilation.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.razor.viewcompilation.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.RazorPages/2.1.1": { + "sha512": "icxhGYO1z5IQsrmJhbIJUHM2a0mTK7g1kdPR/mnB5L4r35im8ElX0449AFN3KlA0C00E6mzXVe1CCJ3wO+TUxQ==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.razorpages/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.RazorPages.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.RazorPages.xml", + "microsoft.aspnetcore.mvc.razorpages.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.razorpages.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.TagHelpers/2.1.1": { + "sha512": "wLHZ9TUdD9Gl2rVihrNGmRJ1LGTjiRzPM4d78efClOpFJwhMaHCnr9ktfQhnJX4XQj0w22XvPPCV0GxSrVp4Lg==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.taghelpers/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.TagHelpers.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.TagHelpers.xml", + "microsoft.aspnetcore.mvc.taghelpers.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.taghelpers.nuspec" + ] + }, + "Microsoft.AspNetCore.Mvc.ViewFeatures/2.1.1": { + "sha512": "4F4uu3Hh5pgQ/2XkKgG2XEfPIvzUUjpOrSPIdOpMzxloTfYM/jK6xEW6kM9DE5vYhyW9EE02sngRBh8cmU0vng==", + "type": "package", + "path": "microsoft.aspnetcore.mvc.viewfeatures/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ViewFeatures.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Mvc.ViewFeatures.xml", + "microsoft.aspnetcore.mvc.viewfeatures.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.mvc.viewfeatures.nuspec" + ] + }, + "Microsoft.AspNetCore.NodeServices/2.1.1": { + "sha512": "/9VSehGhQMV8tz+ddKl6jt8IorFlGGtc/7kEDyfcGWGgsE8WswlfszIRxGMa4BWrhaWovQVteshQCyBBqEG6/g==", + "type": "package", + "path": "microsoft.aspnetcore.nodeservices/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.NodeServices.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.NodeServices.xml", + "microsoft.aspnetcore.nodeservices.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.nodeservices.nuspec" + ] + }, + "Microsoft.AspNetCore.Owin/2.1.1": { + "sha512": "X6M3UwpwYcBK33mCp/xa9kcMKgfxZnMd4+q8RWGpLWI2Gy5V0jri0+HFfgHVXc9pVkKOrEHGn1K6Z+iT4nibWA==", + "type": "package", + "path": "microsoft.aspnetcore.owin/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Owin.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Owin.xml", + "microsoft.aspnetcore.owin.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.owin.nuspec" + ] + }, + "Microsoft.AspNetCore.Razor/2.1.1": { + "sha512": "oDxJTufrOF2Y7g+p2jU5+2xtrcsb3KX20pH/KosLW5rbsJMAqaOwprI6gJlBQCGtMCYl/MbnC45ZObPmzyI0NQ==", + "type": "package", + "path": "microsoft.aspnetcore.razor/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.xml", + "microsoft.aspnetcore.razor.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.razor.nuspec" + ] + }, + "Microsoft.AspNetCore.Razor.Design/2.1.2": { + "sha512": "ab4+TZw3Sxqrr5TwrwVyABeQkhSxYMJXgG6yZw7T+r6Vz+hcOt+pK79o15ESG7kZvWAK9wRG7emnTIia5O6R1Q==", + "type": "package", + "path": "microsoft.aspnetcore.razor.design/2.1.2", + "files": [ + ".signature.p7s", + "build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.CodeGeneration.targets", + "build/netstandard2.0/Microsoft.AspNetCore.Razor.Design.props", + "buildMultiTargeting/Microsoft.AspNetCore.Razor.Design.props", + "microsoft.aspnetcore.razor.design.2.1.2.nupkg.sha512", + "microsoft.aspnetcore.razor.design.nuspec", + "tasks/net46/Microsoft.AspNetCore.Razor.Tasks.dll", + "tasks/netstandard2.0/Microsoft.AspNetCore.Razor.Tasks.dll", + "tools/Microsoft.AspNetCore.Razor.Language.dll", + "tools/Microsoft.CodeAnalysis.CSharp.dll", + "tools/Microsoft.CodeAnalysis.Razor.dll", + "tools/Microsoft.CodeAnalysis.dll", + "tools/Newtonsoft.Json.dll", + "tools/runtimes/unix/lib/netstandard1.3/System.Text.Encoding.CodePages.dll", + "tools/runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll", + "tools/rzc.deps.json", + "tools/rzc.dll", + "tools/rzc.runtimeconfig.json" + ] + }, + "Microsoft.AspNetCore.Razor.Language/2.1.1": { + "sha512": "5HX7/SguN9F8cdJ6GBBFJauEii/k6XPuI1gHucOcOBKKetgm4nG/xrHzRGSBTxmc1rbCcVKrBl10/PYItE7JyA==", + "type": "package", + "path": "microsoft.aspnetcore.razor.language/2.1.1", + "files": [ + ".signature.p7s", + "lib/net46/Microsoft.AspNetCore.Razor.Language.dll", + "lib/net46/Microsoft.AspNetCore.Razor.Language.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Language.xml", + "microsoft.aspnetcore.razor.language.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.razor.language.nuspec" + ] + }, + "Microsoft.AspNetCore.Razor.Runtime/2.1.1": { + "sha512": "dGublvci7Lwu8gAegh81YXATyKGupWHb5RDHPsIO/Ct++xG7Lv9/6nNbci05sqYienZgprDbTAH8G7PmBCpIKQ==", + "type": "package", + "path": "microsoft.aspnetcore.razor.runtime/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Runtime.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Razor.Runtime.xml", + "microsoft.aspnetcore.razor.runtime.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.razor.runtime.nuspec" + ] + }, + "Microsoft.AspNetCore.ResponseCaching/2.1.1": { + "sha512": "w3pH2ex82TdMRexWxXIr7EpdE0LJB0/EE/jlU1t+VltijKot7KrSSR5cxYBCafL7WmxjHfVnGKq0eVosxh7MvA==", + "type": "package", + "path": "microsoft.aspnetcore.responsecaching/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.xml", + "microsoft.aspnetcore.responsecaching.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.responsecaching.nuspec" + ] + }, + "Microsoft.AspNetCore.ResponseCaching.Abstractions/2.1.1": { + "sha512": "F2/eDBTwGdTdQ+YPrlf7DBprzbHVZmZqnCTkHT6Jge7MQDu0xgUmDfNyBUzg9jn38RSKnDp6RWLQSJ6yqsYdIQ==", + "type": "package", + "path": "microsoft.aspnetcore.responsecaching.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCaching.Abstractions.xml", + "microsoft.aspnetcore.responsecaching.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.responsecaching.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.ResponseCompression/2.1.1": { + "sha512": "jJWsmkyWdmd74kNCZy9qoAMTL6bbYMqPPRRket07kpjm1IWcbW833IuhcE6t+wCC/Wrs8ECyMwRHFtvQUxkV2g==", + "type": "package", + "path": "microsoft.aspnetcore.responsecompression/2.1.1", + "files": [ + ".signature.p7s", + "lib/net461/Microsoft.AspNetCore.ResponseCompression.dll", + "lib/net461/Microsoft.AspNetCore.ResponseCompression.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCompression.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.ResponseCompression.xml", + "microsoft.aspnetcore.responsecompression.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.responsecompression.nuspec" + ] + }, + "Microsoft.AspNetCore.Rewrite/2.1.1": { + "sha512": "PWragHOb23NSybDojbJGezzXr0dl/1VwQME3YR5jH3Yanl9CmO8Uuak72L1dCbiASMOKBFnR+gr6YIymDrXaXw==", + "type": "package", + "path": "microsoft.aspnetcore.rewrite/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Rewrite.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Rewrite.xml", + "microsoft.aspnetcore.rewrite.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.rewrite.nuspec" + ] + }, + "Microsoft.AspNetCore.Routing/2.1.1": { + "sha512": "BnVEKMGIkRcZecG3zR+tl9tYGkViz1k/WzYVNRfdaAN0LeuSabNP0NlG037oz+pDPsLzzNkFeLSOh/w0AKLaig==", + "type": "package", + "path": "microsoft.aspnetcore.routing/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.xml", + "microsoft.aspnetcore.routing.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.routing.nuspec" + ] + }, + "Microsoft.AspNetCore.Routing.Abstractions/2.1.1": { + "sha512": "+Yxsy/ZcCthcziktuhfC6WpQ/cZzgD/IsQ96xefNKrCzIm9jXjfNK3ONsoScvyFFihNohp7zAVPiic5J6CvUDw==", + "type": "package", + "path": "microsoft.aspnetcore.routing.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Routing.Abstractions.xml", + "microsoft.aspnetcore.routing.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.routing.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.HttpSys/2.1.1": { + "sha512": "4aLacPVSAp5ByErwN9PQfcNUmt/PAjXmK6kkCIkn2UJFABkPz0x/AX2fnjzEeHhHiGHTT6segApNJsh8wXTlcw==", + "type": "package", + "path": "microsoft.aspnetcore.server.httpsys/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.HttpSys.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.HttpSys.xml", + "microsoft.aspnetcore.server.httpsys.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.httpsys.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.IISIntegration/2.1.1": { + "sha512": "GOEg75Bb+hoJ5/e1fouBn02MotR9ITs3pQBqT6y6DGTplQ0+/VQsb2R7utro39joHwB1HX4LgLBzfSjkjyYHvQ==", + "type": "package", + "path": "microsoft.aspnetcore.server.iisintegration/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.IISIntegration.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.IISIntegration.xml", + "microsoft.aspnetcore.server.iisintegration.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.iisintegration.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.Kestrel/2.1.1": { + "sha512": "nHJ7DAcZUYIgTpqs5GKlsEo16uGlEk73LO2fX7YQDvF/L1zX1Fe7f5KyynepGorIenzJHvAJEtfTHpqFFSPNsA==", + "type": "package", + "path": "microsoft.aspnetcore.server.kestrel/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.xml", + "microsoft.aspnetcore.server.kestrel.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.kestrel.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.Kestrel.Core/2.1.1": { + "sha512": "lJHti9K7nUoFdx3czli+ITiTOOT1GBgKZxhe5dT0K/6lIniyDZAHZ+s9n4JGej2fUEFBZvfSxIGBWZUGe1ffmw==", + "type": "package", + "path": "microsoft.aspnetcore.server.kestrel.core/2.1.1", + "files": [ + ".signature.p7s", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Core.dll", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Core.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Core.xml", + "microsoft.aspnetcore.server.kestrel.core.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.kestrel.core.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.Kestrel.Https/2.1.1": { + "sha512": "7DtRvE3ffWAqa2zyOt2pKKmi9xToQCP/WFBmujTZTfB8FX+1sEHc0/2h2WuaCZTmXC+jwLdO95HZx8Bu0XctSQ==", + "type": "package", + "path": "microsoft.aspnetcore.server.kestrel.https/2.1.1", + "files": [ + ".signature.p7s", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Https.dll", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Https.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Https.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Https.xml", + "microsoft.aspnetcore.server.kestrel.https.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.kestrel.https.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions/2.1.1": { + "sha512": "118KSszFP/b81+AS+h1M3Tm6pSL3Py8y65UjEzM9BE3S5qlTRC+w/ExHqy5avZOkvunfAlEFKu8Gyl9IJQFdXw==", + "type": "package", + "path": "microsoft.aspnetcore.server.kestrel.transport.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Transport.Abstractions.xml", + "microsoft.aspnetcore.server.kestrel.transport.abstractions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.kestrel.transport.abstractions.nuspec" + ] + }, + "Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets/2.1.1": { + "sha512": "Q2obTqdWPxLqSm8RVLNq+RWRNiMNXkckVnHvM6UwHryw7KCDOW8TiBh52hTBNVmuRjZQ2bTeqYO1luSGYKpcPQ==", + "type": "package", + "path": "microsoft.aspnetcore.server.kestrel.transport.sockets/2.1.1", + "files": [ + ".signature.p7s", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll", + "lib/netcoreapp2.1/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Server.Kestrel.Transport.Sockets.xml", + "microsoft.aspnetcore.server.kestrel.transport.sockets.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.server.kestrel.transport.sockets.nuspec" + ] + }, + "Microsoft.AspNetCore.Session/2.1.1": { + "sha512": "M7p1xCZd4pjBFruviakM7g8PKYZenrog4iCrhetVNkCgcqKljsUrRYvViwZNCYMS58aEhbzBBxGGNL7XAXU72A==", + "type": "package", + "path": "microsoft.aspnetcore.session/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.Session.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.Session.xml", + "microsoft.aspnetcore.session.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.session.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR/1.0.1": { + "sha512": "UqXok7HEQrR6OIIYA4NEYHL5LM/xtTue1NR6irXxglfaP/IZwfPz64OGechQJ+GDZ/tzR6U+nvZR9ggnegCxQg==", + "type": "package", + "path": "microsoft.aspnetcore.signalr/1.0.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.xml", + "microsoft.aspnetcore.signalr.1.0.1.nupkg.sha512", + "microsoft.aspnetcore.signalr.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Common/1.0.1": { + "sha512": "6zUQE2tROCr2Lh6HprHdX5sY+mmD6EGtdnUW5vJ4zDyWOYIbzb7xgzBMx+GUxF/acl+ffhGX9kk5omRYmmXjOQ==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.common/1.0.1", + "files": [ + ".signature.p7s", + "lib/netcoreapp2.1/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/netcoreapp2.1/Microsoft.AspNetCore.SignalR.Common.xml", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Common.xml", + "microsoft.aspnetcore.signalr.common.1.0.1.nupkg.sha512", + "microsoft.aspnetcore.signalr.common.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Core/1.0.1": { + "sha512": "yJVbHWRwI2lu0h7D58V8kxUAyg63bf84BW5xv0i9KFE9I3BGE/OChQKuQsPc02qSTAb3YfT7n4s5guCGvfXefA==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.core/1.0.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Core.xml", + "microsoft.aspnetcore.signalr.core.1.0.1.nupkg.sha512", + "microsoft.aspnetcore.signalr.core.nuspec" + ] + }, + "Microsoft.AspNetCore.SignalR.Protocols.Json/1.0.1": { + "sha512": "FT+l9BokJmQnvuXBWcFPC/EciP3h3KvUzlvq+dLwIf8lDw82ndcX6DzjUxkjR1PSvRbEblW8TekfOrmz+7blDw==", + "type": "package", + "path": "microsoft.aspnetcore.signalr.protocols.json/1.0.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SignalR.Protocols.Json.xml", + "microsoft.aspnetcore.signalr.protocols.json.1.0.1.nupkg.sha512", + "microsoft.aspnetcore.signalr.protocols.json.nuspec" + ] + }, + "Microsoft.AspNetCore.SpaServices/2.1.1": { + "sha512": "KGGarPSicaywgCy/qfZmJ+aBMOtbOWEqAL9QVvTiFDCBuE2TXuoD808HGrh5go+p4E9iUY6fJX1Pqvot1WzDxg==", + "type": "package", + "path": "microsoft.aspnetcore.spaservices/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.xml", + "microsoft.aspnetcore.spaservices.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.spaservices.nuspec" + ] + }, + "Microsoft.AspNetCore.SpaServices.Extensions/2.1.1": { + "sha512": "xpMbtgKWD6aDRfb8znqm/uhPIiaws4m+Mv6ezGB0wIajvGCsHc/CQVMSB5N1Cj/AZY8GO2THRd+4zdSS1D5Dfg==", + "type": "package", + "path": "microsoft.aspnetcore.spaservices.extensions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.Extensions.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.SpaServices.Extensions.xml", + "microsoft.aspnetcore.spaservices.extensions.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.spaservices.extensions.nuspec" + ] + }, + "Microsoft.AspNetCore.StaticFiles/2.1.1": { + "sha512": "3xumS58evfsC4cd8OXtYRafbwuVk5c37dsGQ1E1m0wZvRVUXScRWkTGdcPJcijoImlhoQK2pj6sY7NFMc5PfbQ==", + "type": "package", + "path": "microsoft.aspnetcore.staticfiles/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.StaticFiles.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.StaticFiles.xml", + "microsoft.aspnetcore.staticfiles.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.staticfiles.nuspec" + ] + }, + "Microsoft.AspNetCore.WebSockets/2.1.1": { + "sha512": "6m4KkYR1UG3f0Aucop1s+XmJbAlrDVLNvq69nJ9evhmdWiuJAc/yuR07e3HVED3RvdFzUFla6AQm0gnEiViUJQ==", + "type": "package", + "path": "microsoft.aspnetcore.websockets/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.WebSockets.xml", + "microsoft.aspnetcore.websockets.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.websockets.nuspec" + ] + }, + "Microsoft.AspNetCore.WebUtilities/2.1.1": { + "sha512": "gvCdObgQDLdZ9enyFQuPb3Rae6QyzZAPgHiv5JhYjORLMW1UNgWXvdqLov6iGtnyG+BBCavPooW9ScWGQCJHLg==", + "type": "package", + "path": "microsoft.aspnetcore.webutilities/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.dll", + "lib/netstandard2.0/Microsoft.AspNetCore.WebUtilities.xml", + "microsoft.aspnetcore.webutilities.2.1.1.nupkg.sha512", + "microsoft.aspnetcore.webutilities.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Analyzers/1.1.0": { + "sha512": "HS3iRWZKcUw/8eZ/08GXKY2Bn7xNzQPzf8gRPHGSowX7u7XXu9i9YEaBeBNKUXWfI7qjvT2zXtLUvbN0hds8vg==", + "type": "package", + "path": "microsoft.codeanalysis.analyzers/1.1.0", + "files": [ + "ThirdPartyNotices.rtf", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/cs/Microsoft.CodeAnalysis.CSharp.Analyzers.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.Analyzers.dll", + "analyzers/dotnet/vb/Microsoft.CodeAnalysis.VisualBasic.Analyzers.dll", + "microsoft.codeanalysis.analyzers.1.1.0.nupkg.sha512", + "microsoft.codeanalysis.analyzers.nuspec", + "tools/install.ps1", + "tools/uninstall.ps1" + ] + }, + "Microsoft.CodeAnalysis.Common/2.8.0": { + "sha512": "lYUBqh3OD3iEQqxt9KB472VzgOnEKoUVG4Lx5Xw4oJe9dZtITkHFtct+T73jH3FOASFI1NSzzP5MBM0c9zZspA==", + "type": "package", + "path": "microsoft.codeanalysis.common/2.8.0", + "files": [ + ".signature.p7s", + "lib/netstandard1.3/Microsoft.CodeAnalysis.dll", + "lib/netstandard1.3/Microsoft.CodeAnalysis.pdb", + "lib/netstandard1.3/Microsoft.CodeAnalysis.xml", + "microsoft.codeanalysis.common.2.8.0.nupkg.sha512", + "microsoft.codeanalysis.common.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp/2.8.0": { + "sha512": "+4CHAwHMwLO5GRqPJ7Khv2Ny//omhukPKP3Ny/d2XDpt11bX35zb9pTziwZN0eNvxj6a46joIdHEYQ1JsekI3w==", + "type": "package", + "path": "microsoft.codeanalysis.csharp/2.8.0", + "files": [ + ".signature.p7s", + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.dll", + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.pdb", + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.xml", + "microsoft.codeanalysis.csharp.2.8.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.nuspec" + ] + }, + "Microsoft.CodeAnalysis.CSharp.Workspaces/2.8.0": { + "sha512": "hpSNX6kgb13ABbOmxAD2sj/7J7IN3HWz1AWcmEuouTZM+OeWLSHDmPGlN4eaUDPMCoe1DY7v16D3V0BY+q7BTw==", + "type": "package", + "path": "microsoft.codeanalysis.csharp.workspaces/2.8.0", + "files": [ + ".signature.p7s", + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.Workspaces.dll", + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.Workspaces.pdb", + "lib/netstandard1.3/Microsoft.CodeAnalysis.CSharp.Workspaces.xml", + "microsoft.codeanalysis.csharp.workspaces.2.8.0.nupkg.sha512", + "microsoft.codeanalysis.csharp.workspaces.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Razor/2.1.1": { + "sha512": "D5zUSmQHsgKosYlWLQjs6uXn4n7llEdUwFhJz7EIwR16ge18q8p8BJ547out9ScnMDuwHA8MeCPe8WMwCaFAPw==", + "type": "package", + "path": "microsoft.codeanalysis.razor/2.1.1", + "files": [ + ".signature.p7s", + "lib/net46/Microsoft.CodeAnalysis.Razor.dll", + "lib/net46/Microsoft.CodeAnalysis.Razor.xml", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.dll", + "lib/netstandard2.0/Microsoft.CodeAnalysis.Razor.xml", + "microsoft.codeanalysis.razor.2.1.1.nupkg.sha512", + "microsoft.codeanalysis.razor.nuspec" + ] + }, + "Microsoft.CodeAnalysis.Workspaces.Common/2.8.0": { + "sha512": "xt6VmGncJW14z3O0/k7+0cO8w9tB3O6CUL6sM6LesgGmD6zZPbWKY9KpRgV7RewA1flLuXBaUknRjwj0kLA6/g==", + "type": "package", + "path": "microsoft.codeanalysis.workspaces.common/2.8.0", + "files": [ + ".signature.p7s", + "lib/net46/Microsoft.CodeAnalysis.Workspaces.Desktop.dll", + "lib/net46/Microsoft.CodeAnalysis.Workspaces.Desktop.pdb", + "lib/net46/Microsoft.CodeAnalysis.Workspaces.Desktop.xml", + "lib/net46/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/net46/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/net46/Microsoft.CodeAnalysis.Workspaces.xml", + "lib/netstandard1.3/Microsoft.CodeAnalysis.Workspaces.dll", + "lib/netstandard1.3/Microsoft.CodeAnalysis.Workspaces.pdb", + "lib/netstandard1.3/Microsoft.CodeAnalysis.Workspaces.xml", + "microsoft.codeanalysis.workspaces.common.2.8.0.nupkg.sha512", + "microsoft.codeanalysis.workspaces.common.nuspec" + ] + }, + "Microsoft.CSharp/4.5.0": { + "sha512": "EGoBmf3Na2ppbhPePDE9PlX81r1HuOZH5twBrq7couJZiPTjUnD3648balerQJO6EJ8Sj+43+XuRwQ7r+3tE3w==", + "type": "package", + "path": "microsoft.csharp/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/Microsoft.CSharp.dll", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.3/Microsoft.CSharp.dll", + "lib/netstandard2.0/Microsoft.CSharp.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/uap10.0.16299/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "microsoft.csharp.4.5.0.nupkg.sha512", + "microsoft.csharp.nuspec", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/Microsoft.CSharp.dll", + "ref/netcore50/Microsoft.CSharp.xml", + "ref/netcore50/de/Microsoft.CSharp.xml", + "ref/netcore50/es/Microsoft.CSharp.xml", + "ref/netcore50/fr/Microsoft.CSharp.xml", + "ref/netcore50/it/Microsoft.CSharp.xml", + "ref/netcore50/ja/Microsoft.CSharp.xml", + "ref/netcore50/ko/Microsoft.CSharp.xml", + "ref/netcore50/ru/Microsoft.CSharp.xml", + "ref/netcore50/zh-hans/Microsoft.CSharp.xml", + "ref/netcore50/zh-hant/Microsoft.CSharp.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.0/Microsoft.CSharp.dll", + "ref/netstandard1.0/Microsoft.CSharp.xml", + "ref/netstandard1.0/de/Microsoft.CSharp.xml", + "ref/netstandard1.0/es/Microsoft.CSharp.xml", + "ref/netstandard1.0/fr/Microsoft.CSharp.xml", + "ref/netstandard1.0/it/Microsoft.CSharp.xml", + "ref/netstandard1.0/ja/Microsoft.CSharp.xml", + "ref/netstandard1.0/ko/Microsoft.CSharp.xml", + "ref/netstandard1.0/ru/Microsoft.CSharp.xml", + "ref/netstandard1.0/zh-hans/Microsoft.CSharp.xml", + "ref/netstandard1.0/zh-hant/Microsoft.CSharp.xml", + "ref/netstandard2.0/Microsoft.CSharp.dll", + "ref/netstandard2.0/Microsoft.CSharp.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/uap10.0.16299/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "Microsoft.DotNet.PlatformAbstractions/2.1.0": { + "sha512": "wkCXkBS0q+5hsbeikjfsHCGP3nNe1L1MrDEBPCBKm+4UH8nXqHLxDZuBrTYaVY85CGIx2y1qW90nO6b+ORAfrA==", + "type": "package", + "path": "microsoft.dotnet.platformabstractions/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net45/Microsoft.DotNet.PlatformAbstractions.dll", + "lib/netstandard1.3/Microsoft.DotNet.PlatformAbstractions.dll", + "microsoft.dotnet.platformabstractions.2.1.0.nupkg.sha512", + "microsoft.dotnet.platformabstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore/2.1.1": { + "sha512": "R0zD5lDEA0Aari3+stBhAP5dredWIHcu4+tKfumG7Q6r34Psl5a3fC4hXOBD4W8Mc+aRaee3xehLQC0M0EHEdA==", + "type": "package", + "path": "microsoft.entityframeworkcore/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.dll", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.xml", + "microsoft.entityframeworkcore.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Abstractions/2.1.1": { + "sha512": "eAkWeRhvwMLbAmS73HUESlE/sRmGYdKr1nzZ/IOmyRFz37e8BGEGwwbazKhi2OjjzdIWJxmMdB4nGQUP2mco7A==", + "type": "package", + "path": "microsoft.entityframeworkcore.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Abstractions.dll", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Abstractions.xml", + "microsoft.entityframeworkcore.abstractions.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.abstractions.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Analyzers/2.1.1": { + "sha512": "Cvyj3q8j0vhhEBbxRXXTZZhrO0RW/hRJQ6VzfGcfvMh+Zhkr8Jl4CP8gA5GXOgg+0dxYYC+GfT27EqjbxM3Qbg==", + "type": "package", + "path": "microsoft.entityframeworkcore.analyzers/2.1.1", + "files": [ + ".signature.p7s", + "analyzers/dotnet/cs/Microsoft.EntityFrameworkCore.Analyzers.dll", + "microsoft.entityframeworkcore.analyzers.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.analyzers.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Design/2.1.1": { + "sha512": "/kmRSJHgtcng6eNsy7ab3Ac2ofqqoQAZTiTPMKlLaD6WaEG0t5KJuj71/jAMo9LGgaeKGMI0m5wmG+LsIAlaSA==", + "type": "package", + "path": "microsoft.entityframeworkcore.design/2.1.1", + "files": [ + ".signature.p7s", + "build/net461/Microsoft.EntityFrameworkCore.Design.props", + "build/netcoreapp2.0/Microsoft.EntityFrameworkCore.Design.props", + "lib/net461/Microsoft.EntityFrameworkCore.Design.dll", + "lib/net461/Microsoft.EntityFrameworkCore.Design.xml", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Design.dll", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Design.xml", + "microsoft.entityframeworkcore.design.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.design.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.InMemory/2.1.1": { + "sha512": "eX6plbREvKOq06f2XU6n4ZCSpTXjS9khC9jNH4BeyG/m2WXbYnpTW3zX6RT/UCM8wVqO9U3YUr7QbTsuOysK7w==", + "type": "package", + "path": "microsoft.entityframeworkcore.inmemory/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.InMemory.dll", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.InMemory.xml", + "microsoft.entityframeworkcore.inmemory.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.inmemory.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Relational/2.1.1": { + "sha512": "GdS22wCLqf+W+NvWzuz/0oXmulD0mlxa65Z/RO65YiAJRDhLZ/4/QYeDEIvh8HF9Fw4kB/UnrQ756uv0+IDDKQ==", + "type": "package", + "path": "microsoft.entityframeworkcore.relational/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Relational.dll", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.Relational.xml", + "microsoft.entityframeworkcore.relational.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.relational.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.SqlServer/2.1.1": { + "sha512": "+owJ/RcmFOrRseb+9PEjqhoOcE7l+DeTe0Jwte0tqhYoiPxZpC6jtGhUhpftPSBkC662siPR7kNm2TfxpPVilQ==", + "type": "package", + "path": "microsoft.entityframeworkcore.sqlserver/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.dll", + "lib/netstandard2.0/Microsoft.EntityFrameworkCore.SqlServer.xml", + "microsoft.entityframeworkcore.sqlserver.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.sqlserver.nuspec" + ] + }, + "Microsoft.EntityFrameworkCore.Tools/2.1.1": { + "sha512": "OYHhKbFNJCSHpkLAKI9yqTx3+SZ7aHKZaCP+G5ctlL/rZm5Y37Ke00abUhp5mFEJlvEueYfOGDx/GjltEs210A==", + "type": "package", + "path": "microsoft.entityframeworkcore.tools/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/_._", + "microsoft.entityframeworkcore.tools.2.1.1.nupkg.sha512", + "microsoft.entityframeworkcore.tools.nuspec", + "tools/EntityFrameworkCore.PowerShell2.psd1", + "tools/EntityFrameworkCore.PowerShell2.psm1", + "tools/EntityFrameworkCore.psd1", + "tools/EntityFrameworkCore.psm1", + "tools/about_EntityFrameworkCore.help.txt", + "tools/init.ps1", + "tools/install.ps1", + "tools/net461/any/ef.exe", + "tools/net461/win-x86/ef.exe", + "tools/netcoreapp2.0/any/ef.dll", + "tools/netcoreapp2.0/any/ef.runtimeconfig.json" + ] + }, + "Microsoft.Extensions.Caching.Abstractions/2.1.1": { + "sha512": "gcPRTtchou4pIEdLYhh9xoBDjwCaCLiTHJaFN2IWJCP+TGJcIHQYblPMftw6fajHER9ZrvPO5RYZUyLmH1eNIA==", + "type": "package", + "path": "microsoft.extensions.caching.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Abstractions.xml", + "microsoft.extensions.caching.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.caching.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.Caching.Memory/2.1.1": { + "sha512": "KV2w9nelcxgl1Y028qmexCcgBK+CtZ18fE2eIypB1lUtLOGBrzP+XhcJTxBYwXPnYPkxazqdzcOfIRxz/Bq2uQ==", + "type": "package", + "path": "microsoft.extensions.caching.memory/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.Memory.xml", + "microsoft.extensions.caching.memory.2.1.1.nupkg.sha512", + "microsoft.extensions.caching.memory.nuspec" + ] + }, + "Microsoft.Extensions.Caching.SqlServer/2.1.1": { + "sha512": "kRMsRtpyhuZiRBFu2tXmcMkhZl0kfBQ2JxRmERUp5K+P7fJd3DYN47w5vNURkFUlzDskgsPJ2s3Ug07wHDwCJw==", + "type": "package", + "path": "microsoft.extensions.caching.sqlserver/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Caching.SqlServer.dll", + "lib/netstandard2.0/Microsoft.Extensions.Caching.SqlServer.xml", + "microsoft.extensions.caching.sqlserver.2.1.1.nupkg.sha512", + "microsoft.extensions.caching.sqlserver.nuspec" + ] + }, + "Microsoft.Extensions.Configuration/2.1.1": { + "sha512": "1JaydycXzbfAExlsD7XIWykzVnU/wZM86KzrHyGlXuxqnqzcWSXLJn4Ejn8bDnq07CEJNZ+GjsxWKlJ8kFfnvQ==", + "type": "package", + "path": "microsoft.extensions.configuration/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.xml", + "microsoft.extensions.configuration.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Abstractions/2.1.1": { + "sha512": "9EMhOWU2eOQOtMIJ+vfwKJpnLRc1Wl3vXu8qXeevA91cSY4j3WvArmF7ApGtJwa7yKewJTvlQlBSn9OSnLFg6Q==", + "type": "package", + "path": "microsoft.extensions.configuration.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Abstractions.xml", + "microsoft.extensions.configuration.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Binder/2.1.1": { + "sha512": "t7KFAv6AxyUsZj9QN8FAbusg+X5baCELl+XtscyuP1IGUv5UctyY7/rNZLyiKaV7HhAcDQ1zC5ZQNQQFn6JpAA==", + "type": "package", + "path": "microsoft.extensions.configuration.binder/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Binder.xml", + "microsoft.extensions.configuration.binder.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.binder.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.CommandLine/2.1.1": { + "sha512": "mLtD/B9sx0jycMcPcIweb5x0bRKBoDcN+xONQnw6urMZTyazyJED+zTfj2ZCbVsloh7SW2W6f16UpELD+xtaOA==", + "type": "package", + "path": "microsoft.extensions.configuration.commandline/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.CommandLine.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.CommandLine.xml", + "microsoft.extensions.configuration.commandline.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.commandline.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.EnvironmentVariables/2.1.1": { + "sha512": "rDFRChBvs6sPGC+JjshKsP4kWRvsG8Y9MQKduDu60RWnJpFiIpQ7HK2K9sPrCL1MaYEk894PUkiZ5Xdsm9cPvg==", + "type": "package", + "path": "microsoft.extensions.configuration.environmentvariables/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.EnvironmentVariables.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.EnvironmentVariables.xml", + "microsoft.extensions.configuration.environmentvariables.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.environmentvariables.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.FileExtensions/2.1.1": { + "sha512": "JnhKotPCs1+X4CPSsHOk8CpxmBeIS/vIXYewsoM8XflXNhpzMe1gfIckQyuRKyORlGaNFEBr4WrPjpZ159bS/Q==", + "type": "package", + "path": "microsoft.extensions.configuration.fileextensions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.FileExtensions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.FileExtensions.xml", + "microsoft.extensions.configuration.fileextensions.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.fileextensions.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Ini/2.1.1": { + "sha512": "7ioG8k0YazFgodMBc1ATX+7KgLktQeczJjBY4sjVrKvA3b0QLi438Q4XLnQemdFJZnvQYUf6rjuu1tWz3xslPw==", + "type": "package", + "path": "microsoft.extensions.configuration.ini/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Ini.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Ini.xml", + "microsoft.extensions.configuration.ini.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.ini.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Json/2.1.1": { + "sha512": "f6KcI9v0GVA4YL/ExoxrEfeQv9La3hyQnySfgxGkFtMeDJIUun0ANoMjspbdpXXnuaScwgbQ2mFE3lJHt9lpJw==", + "type": "package", + "path": "microsoft.extensions.configuration.json/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Json.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Json.xml", + "microsoft.extensions.configuration.json.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.json.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.KeyPerFile/2.1.1": { + "sha512": "Qet/MJCnaTOws1FRGu3l7Y5Ob2WZVN2guuViLKZTBjZhyZ7AWtnerJ6K1jfVSVplNp/dfsesu2T+7wTtySjwYw==", + "type": "package", + "path": "microsoft.extensions.configuration.keyperfile/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.KeyPerFile.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.KeyPerFile.xml", + "microsoft.extensions.configuration.keyperfile.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.keyperfile.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.UserSecrets/2.1.1": { + "sha512": "a/VCXjvqr0+e1fBHyeRFKenhr8zfDiqGSL0I7xncDjZyj40bRUlTJhzX8BbgPkbA8F1EOxsOrWbSClap8LsYKg==", + "type": "package", + "path": "microsoft.extensions.configuration.usersecrets/2.1.1", + "files": [ + ".signature.p7s", + "build/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.props", + "build/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.targets", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.UserSecrets.xml", + "microsoft.extensions.configuration.usersecrets.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.usersecrets.nuspec" + ] + }, + "Microsoft.Extensions.Configuration.Xml/2.1.1": { + "sha512": "Bs2wJX9BbtXcwAL2KlUNMKyVQfy2r5Iq9pweMaPFN5aCB719YCnOK4dT3tyZfvrtN9XxlJUZ2DeJjNsFxklexA==", + "type": "package", + "path": "microsoft.extensions.configuration.xml/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Xml.dll", + "lib/netstandard2.0/Microsoft.Extensions.Configuration.Xml.xml", + "microsoft.extensions.configuration.xml.2.1.1.nupkg.sha512", + "microsoft.extensions.configuration.xml.nuspec" + ] + }, + "Microsoft.Extensions.DependencyInjection/2.1.1": { + "sha512": "2nshYaLTn73Ie+/yTkb7EZIXwQeFIXsYCBy/jSY9bMayYykGNjdWa25frayhuPAGVbZpEgfgp3d4JRVEuVyEqQ==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection/2.1.1", + "files": [ + ".signature.p7s", + "lib/net461/Microsoft.Extensions.DependencyInjection.dll", + "lib/net461/Microsoft.Extensions.DependencyInjection.xml", + "lib/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.xml", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml", + "microsoft.extensions.dependencyinjection.2.1.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.nuspec" + ] + }, + "Microsoft.Extensions.DependencyInjection.Abstractions/2.1.1": { + "sha512": "PW1596sF97gpIc1JuUuYvTmeLfeqC5whbWPsWgJhN0fdwz683him3b/HB0dqhFesVssOjnnA0fEz4+S0gUeBqA==", + "type": "package", + "path": "microsoft.extensions.dependencyinjection.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml", + "microsoft.extensions.dependencyinjection.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.dependencyinjection.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.DependencyModel/2.1.0": { + "sha512": "3KPT6CLH0VEGr2um9aG1rYTmqfMVlkRuueFpN6AxeIKpcMA4OVHf4aNpgYXZ6oF+x4uh9VhK/66FgPCd1mMlnQ==", + "type": "package", + "path": "microsoft.extensions.dependencymodel/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net451/Microsoft.Extensions.DependencyModel.dll", + "lib/netstandard1.3/Microsoft.Extensions.DependencyModel.dll", + "lib/netstandard1.6/Microsoft.Extensions.DependencyModel.dll", + "microsoft.extensions.dependencymodel.2.1.0.nupkg.sha512", + "microsoft.extensions.dependencymodel.nuspec" + ] + }, + "Microsoft.Extensions.DiagnosticAdapter/2.1.0": { + "sha512": "ZZeKarCCSZujTN2h4fZv6/tAjz9Ra5EyGaRYEXYd65YxwEDpIbx11rIoE0e1h5HBsB6Rsd345zV0LAajUzX8Qg==", + "type": "package", + "path": "microsoft.extensions.diagnosticadapter/2.1.0", + "files": [ + ".signature.p7s", + "lib/net461/Microsoft.Extensions.DiagnosticAdapter.dll", + "lib/net461/Microsoft.Extensions.DiagnosticAdapter.xml", + "lib/netcoreapp2.0/Microsoft.Extensions.DiagnosticAdapter.dll", + "lib/netcoreapp2.0/Microsoft.Extensions.DiagnosticAdapter.xml", + "lib/netstandard2.0/Microsoft.Extensions.DiagnosticAdapter.dll", + "lib/netstandard2.0/Microsoft.Extensions.DiagnosticAdapter.xml", + "microsoft.extensions.diagnosticadapter.2.1.0.nupkg.sha512", + "microsoft.extensions.diagnosticadapter.nuspec" + ] + }, + "Microsoft.Extensions.FileProviders.Abstractions/2.1.1": { + "sha512": "qOJP+VAlXDeMQSJ6iflW62bEsN3S1NJIPHmhKFA9L37yU+jce2wbwesA7sDe9WdJ8+SoKtLnHPUxvOyQrAcRCA==", + "type": "package", + "path": "microsoft.extensions.fileproviders.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Abstractions.xml", + "microsoft.extensions.fileproviders.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.fileproviders.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.FileProviders.Composite/2.1.1": { + "sha512": "SovLUACJ3C+iRlHo4VdZw0IDX+v7+32paTJf7v5ZyzyWqijUkDYXr81gL7tkCfCkJmBYnrc6bScoj2Eaxlrudw==", + "type": "package", + "path": "microsoft.extensions.fileproviders.composite/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Composite.dll", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Composite.xml", + "microsoft.extensions.fileproviders.composite.2.1.1.nupkg.sha512", + "microsoft.extensions.fileproviders.composite.nuspec" + ] + }, + "Microsoft.Extensions.FileProviders.Embedded/2.1.1": { + "sha512": "LHf10DjPIUj3mR0FfsTAisO0Cx6iRT+I15LlYY0zDz8US24I8NEdSG9vceXwLFuHiWrrr2/gFQ3uX7fPsBNmag==", + "type": "package", + "path": "microsoft.extensions.fileproviders.embedded/2.1.1", + "files": [ + ".signature.p7s", + "build/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.props", + "build/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.targets", + "buildMultiTargeting/Microsoft.Extensions.FileProviders.Embedded.props", + "buildMultiTargeting/Microsoft.Extensions.FileProviders.Embedded.targets", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.dll", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Embedded.xml", + "microsoft.extensions.fileproviders.embedded.2.1.1.nupkg.sha512", + "microsoft.extensions.fileproviders.embedded.nuspec", + "tasks/net461/Microsoft.Extensions.FileProviders.Embedded.Manifest.Task.dll", + "tasks/netstandard1.5/Microsoft.Extensions.FileProviders.Embedded.Manifest.Task.dll" + ] + }, + "Microsoft.Extensions.FileProviders.Physical/2.1.1": { + "sha512": "pbT/J3B686Xgktv5WH11FbcbZXDmBQuCN3ce8IKIF+DpOk3p0RgUPrOXcYNp81TyH+K/5Cosr4VFVjYMoirNDg==", + "type": "package", + "path": "microsoft.extensions.fileproviders.physical/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Physical.dll", + "lib/netstandard2.0/Microsoft.Extensions.FileProviders.Physical.xml", + "microsoft.extensions.fileproviders.physical.2.1.1.nupkg.sha512", + "microsoft.extensions.fileproviders.physical.nuspec" + ] + }, + "Microsoft.Extensions.FileSystemGlobbing/2.1.1": { + "sha512": "Pu/O8jBc7QlEmqmbDGVosuDlyzGspMuKc71rOsJigwGMF5574aWYw9uRMX+ho1dmbnL502ZYHo6PlBP3IXkm5A==", + "type": "package", + "path": "microsoft.extensions.filesystemglobbing/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.FileSystemGlobbing.dll", + "lib/netstandard2.0/Microsoft.Extensions.FileSystemGlobbing.xml", + "microsoft.extensions.filesystemglobbing.2.1.1.nupkg.sha512", + "microsoft.extensions.filesystemglobbing.nuspec" + ] + }, + "Microsoft.Extensions.Hosting/2.1.1": { + "sha512": "JCQMO9b49MO7b2e3myP6b0KsAJvRL9auv0A/Pn4w2Q1dt9D29tWvuji8b2jGfHVZcal9GRbtwwdnAD1mN4x3VQ==", + "type": "package", + "path": "microsoft.extensions.hosting/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Hosting.dll", + "lib/netstandard2.0/Microsoft.Extensions.Hosting.xml", + "microsoft.extensions.hosting.2.1.1.nupkg.sha512", + "microsoft.extensions.hosting.nuspec" + ] + }, + "Microsoft.Extensions.Hosting.Abstractions/2.1.1": { + "sha512": "v7mPlJ68Dsev9gn6w5tJJZI798r6gCmwKBv0pwJ5PunLEITYjrv1+QJ/wYkp7KuRcr8VRUML8mJg/mgUjgHggA==", + "type": "package", + "path": "microsoft.extensions.hosting.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Hosting.Abstractions.xml", + "microsoft.extensions.hosting.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.hosting.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.Http/2.1.1": { + "sha512": "mDh9zlNwbdvb3BXjJejdcdovI5nsJZ4y0IU84QPFS9OB0q3e8BUVknTKr1Mub1nWQGEt6ZZDkP5vYf0KM7wVRw==", + "type": "package", + "path": "microsoft.extensions.http/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Http.dll", + "lib/netstandard2.0/Microsoft.Extensions.Http.xml", + "microsoft.extensions.http.2.1.1.nupkg.sha512", + "microsoft.extensions.http.nuspec" + ] + }, + "Microsoft.Extensions.Identity.Core/2.1.1": { + "sha512": "Ob9ms69b2qhQhi3SMNhE3SPsCIWhyC4e3IZWSRWxWXwfVLcOfrjaC3qJDPiTOE6Gs7QB/A7jM16i86v6TZ2g5A==", + "type": "package", + "path": "microsoft.extensions.identity.core/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Identity.Core.dll", + "lib/netstandard2.0/Microsoft.Extensions.Identity.Core.xml", + "microsoft.extensions.identity.core.2.1.1.nupkg.sha512", + "microsoft.extensions.identity.core.nuspec" + ] + }, + "Microsoft.Extensions.Identity.Stores/2.1.1": { + "sha512": "SYqJ9R96S27fv7gWmnUFW+YF5Rd6mKYTETZo+j5WVXXxowojwsn9lkm/6EvyhIwKFbhR5SLw7Y+ajnzlVRua3g==", + "type": "package", + "path": "microsoft.extensions.identity.stores/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Identity.Stores.dll", + "lib/netstandard2.0/Microsoft.Extensions.Identity.Stores.xml", + "microsoft.extensions.identity.stores.2.1.1.nupkg.sha512", + "microsoft.extensions.identity.stores.nuspec" + ] + }, + "Microsoft.Extensions.Localization/2.1.1": { + "sha512": "XPVATgcnzWwo6NYXsZfiEBSSFWWOEdFMn099BIlJCgwVSTLdZD130xRFH4wGXg5sMos3xXsBLv1fffQ67Ju+qg==", + "type": "package", + "path": "microsoft.extensions.localization/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Localization.dll", + "lib/netstandard2.0/Microsoft.Extensions.Localization.xml", + "microsoft.extensions.localization.2.1.1.nupkg.sha512", + "microsoft.extensions.localization.nuspec" + ] + }, + "Microsoft.Extensions.Localization.Abstractions/2.1.1": { + "sha512": "V1znqxUEDHAfnCDXLsfrbY+RmtrFkJqOFhVBOIrcqQMp6MFJvIV9QpDTMq8JzqYc++aAraIoUEAsAwoa8otlOw==", + "type": "package", + "path": "microsoft.extensions.localization.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Localization.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Localization.Abstractions.xml", + "microsoft.extensions.localization.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.localization.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.Logging/2.1.1": { + "sha512": "x4/RzeReQSIi4nVpOjXEySm/xUSr6lBjuecdYnlUboWxbLSm2j3vhFV5OLGRp3gfte3cRMdysMNa/wyZN0t/Tw==", + "type": "package", + "path": "microsoft.extensions.logging/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.xml", + "microsoft.extensions.logging.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.nuspec" + ] + }, + "Microsoft.Extensions.Logging.Abstractions/2.1.1": { + "sha512": "QWFWKrdeoDSEr8nVJaBAVDMj24wnh9clGzDNmMdgHHRsOIwTUMeh4XljeZXJhIKPT00jWuzwEzn3uNxOtO4cYg==", + "type": "package", + "path": "microsoft.extensions.logging.abstractions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml", + "microsoft.extensions.logging.abstractions.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.abstractions.nuspec" + ] + }, + "Microsoft.Extensions.Logging.Configuration/2.1.1": { + "sha512": "eWFdWiyDpzXrzIOQlNUIJ5Tv1nTkxDGEdaxFqcBmCKs5USFBEtwlmSSg06Z2EZ06aQKtWLLi9KjARdlh62zDIQ==", + "type": "package", + "path": "microsoft.extensions.logging.configuration/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Configuration.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Configuration.xml", + "microsoft.extensions.logging.configuration.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.configuration.nuspec" + ] + }, + "Microsoft.Extensions.Logging.Console/2.1.1": { + "sha512": "38NHT66tf9+0Sq28TbhayRS1+LrybqFz9oycPyYDm+sQID47tsPoQA/ZqPIK81zsA1z5r+7BrUflXwmNmvzW4A==", + "type": "package", + "path": "microsoft.extensions.logging.console/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Console.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Console.xml", + "microsoft.extensions.logging.console.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.console.nuspec" + ] + }, + "Microsoft.Extensions.Logging.Debug/2.1.1": { + "sha512": "JP/wI5pbt+7r6U80lfsHimQp1qJN6v97XG2dzgH8O1hv5zNhYvB9m1EeARJruppcTXrXrgBIl8Hjeh5Mvu/AyQ==", + "type": "package", + "path": "microsoft.extensions.logging.debug/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Debug.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.Debug.xml", + "microsoft.extensions.logging.debug.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.debug.nuspec" + ] + }, + "Microsoft.Extensions.Logging.EventSource/2.1.1": { + "sha512": "+9wgYYIct5VlfOGGAYeIFEFDy1sLtUc3pJxwZap4FDnpjcViHJwI0Uq9GMz6w+PgasjfiRLCDxu339VikVS09Q==", + "type": "package", + "path": "microsoft.extensions.logging.eventsource/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.EventSource.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.EventSource.xml", + "microsoft.extensions.logging.eventsource.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.eventsource.nuspec" + ] + }, + "Microsoft.Extensions.Logging.TraceSource/2.1.1": { + "sha512": "lPUHCOezUB7W9hvfJL/5Zaggpy0plgOaqHLM2T5Lv+v3/B4ISWTc4Pd1l33R5dv9v0MF6I4u3Kf732wEX6OPdg==", + "type": "package", + "path": "microsoft.extensions.logging.tracesource/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Logging.TraceSource.dll", + "lib/netstandard2.0/Microsoft.Extensions.Logging.TraceSource.xml", + "microsoft.extensions.logging.tracesource.2.1.1.nupkg.sha512", + "microsoft.extensions.logging.tracesource.nuspec" + ] + }, + "Microsoft.Extensions.ObjectPool/2.1.1": { + "sha512": "FE4JmV6FEZdmqSKqvld5TRnvHfJfrw9QzvvZlAiTn+FCiq/1ZaQDpcYBRH7dMHFWIsYD6Z2UTsufdbCGznox8g==", + "type": "package", + "path": "microsoft.extensions.objectpool/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.dll", + "lib/netstandard2.0/Microsoft.Extensions.ObjectPool.xml", + "microsoft.extensions.objectpool.2.1.1.nupkg.sha512", + "microsoft.extensions.objectpool.nuspec" + ] + }, + "Microsoft.Extensions.Options/2.1.1": { + "sha512": "j0zOfTt1Qm+JDW2m+6Q/aj1m4C8+onudUu4ls/fN69VxruZkMWmX1bPKkbkYIPNNxJsf4k7FOkVq5o1vEFq9pQ==", + "type": "package", + "path": "microsoft.extensions.options/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Options.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.xml", + "microsoft.extensions.options.2.1.1.nupkg.sha512", + "microsoft.extensions.options.nuspec" + ] + }, + "Microsoft.Extensions.Options.ConfigurationExtensions/2.1.1": { + "sha512": "rRGENwWe/jAfAKWYV/P0TQW5T8zsQv+Cx3lfUgQrdP4YLHx/fPIs3hQplMklawcdzAGTR4FN4e4xU7Qgk5KHnA==", + "type": "package", + "path": "microsoft.extensions.options.configurationextensions/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Options.ConfigurationExtensions.dll", + "lib/netstandard2.0/Microsoft.Extensions.Options.ConfigurationExtensions.xml", + "microsoft.extensions.options.configurationextensions.2.1.1.nupkg.sha512", + "microsoft.extensions.options.configurationextensions.nuspec" + ] + }, + "Microsoft.Extensions.Primitives/2.1.1": { + "sha512": "Svz25/egj1TsNL4118jyMqkhDiu0l8QYWq2p52P4BBN0GbqwR18ZRIctSP5TTDJy0m0EFC8aB2FOVjGtvEGWSA==", + "type": "package", + "path": "microsoft.extensions.primitives/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.dll", + "lib/netstandard2.0/Microsoft.Extensions.Primitives.xml", + "microsoft.extensions.primitives.2.1.1.nupkg.sha512", + "microsoft.extensions.primitives.nuspec" + ] + }, + "Microsoft.Extensions.WebEncoders/2.1.1": { + "sha512": "0fR5UV3qREnTpGiqUkz6p30gHzRNvZExgTpch0Gwc+lVUh7D2MBLK/2ohmsMnXp7ckYiEAHhEb9Z/NTUdajKXA==", + "type": "package", + "path": "microsoft.extensions.webencoders/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Extensions.WebEncoders.dll", + "lib/netstandard2.0/Microsoft.Extensions.WebEncoders.xml", + "microsoft.extensions.webencoders.2.1.1.nupkg.sha512", + "microsoft.extensions.webencoders.nuspec" + ] + }, + "Microsoft.IdentityModel.Logging/5.2.0": { + "sha512": "OgiaeDGsuTpXrx77a4gyN6Flp4y7jro4La92UtVEEVxnRb+TnRxawVYY3Z5EVme5fSwvE31vo2iNAwI/jBKjPg==", + "type": "package", + "path": "microsoft.identitymodel.logging/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Logging.dll", + "lib/net45/Microsoft.IdentityModel.Logging.xml", + "lib/net451/Microsoft.IdentityModel.Logging.dll", + "lib/net451/Microsoft.IdentityModel.Logging.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Logging.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Logging.xml", + "microsoft.identitymodel.logging.5.2.0.nupkg.sha512", + "microsoft.identitymodel.logging.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols/5.2.0": { + "sha512": "pakGqbE3FRort3vb0qqWI0Qfy84IOXs8sG7ygANUpoRT+544svQ62JfvCX4UPnqf5bCUpSxVc3rDh8yCQBtc7w==", + "type": "package", + "path": "microsoft.identitymodel.protocols/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Protocols.dll", + "lib/net45/Microsoft.IdentityModel.Protocols.xml", + "lib/net451/Microsoft.IdentityModel.Protocols.dll", + "lib/net451/Microsoft.IdentityModel.Protocols.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.xml", + "microsoft.identitymodel.protocols.5.2.0.nupkg.sha512", + "microsoft.identitymodel.protocols.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols.OpenIdConnect/5.2.0": { + "sha512": "hMjsfdvgI/Gk/HWPgyVnju6fy3iULralgn1XU6eL17KkkFN2rJ1fDzJX3RKrjr888Y5S+hTSQAUcGzb4Fe3aBA==", + "type": "package", + "path": "microsoft.identitymodel.protocols.openidconnect/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net45/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/net451/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.OpenIdConnect.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.OpenIdConnect.xml", + "microsoft.identitymodel.protocols.openidconnect.5.2.0.nupkg.sha512", + "microsoft.identitymodel.protocols.openidconnect.nuspec" + ] + }, + "Microsoft.IdentityModel.Protocols.WsFederation/5.2.0": { + "sha512": "7yohKgLzTObwy+Yq/WNshe2ar+9MZJischkn+L+IIQhpZCKWixr0QFR0V/1TzvGVeXBR/AJY/luZRLx84RlzJw==", + "type": "package", + "path": "microsoft.identitymodel.protocols.wsfederation/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Protocols.WsFederation.dll", + "lib/net45/Microsoft.IdentityModel.Protocols.WsFederation.xml", + "lib/net451/Microsoft.IdentityModel.Protocols.WsFederation.dll", + "lib/net451/Microsoft.IdentityModel.Protocols.WsFederation.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.WsFederation.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Protocols.WsFederation.xml", + "microsoft.identitymodel.protocols.wsfederation.5.2.0.nupkg.sha512", + "microsoft.identitymodel.protocols.wsfederation.nuspec" + ] + }, + "Microsoft.IdentityModel.Tokens/5.2.0": { + "sha512": "Uz1Dk5Gw/jgIHEzac9cXhq7pH0Hf5P73vf23hR6QJn0IamLbPG4qoHnGyPMn9qQXc+jDb/j3fWOhvWGrteJXtA==", + "type": "package", + "path": "microsoft.identitymodel.tokens/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Tokens.dll", + "lib/net45/Microsoft.IdentityModel.Tokens.xml", + "lib/net451/Microsoft.IdentityModel.Tokens.dll", + "lib/net451/Microsoft.IdentityModel.Tokens.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.xml", + "microsoft.identitymodel.tokens.5.2.0.nupkg.sha512", + "microsoft.identitymodel.tokens.nuspec" + ] + }, + "Microsoft.IdentityModel.Tokens.Saml/5.2.0": { + "sha512": "db9y9zHTxeVwTi91mqBu4u1h5tlseQxhXMlGBd7bousED/FcEuhRiVK1maXjoHyQTnYbFDGPvYKXxznDI5jBGQ==", + "type": "package", + "path": "microsoft.identitymodel.tokens.saml/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Tokens.Saml.dll", + "lib/net45/Microsoft.IdentityModel.Tokens.Saml.xml", + "lib/net451/Microsoft.IdentityModel.Tokens.Saml.dll", + "lib/net451/Microsoft.IdentityModel.Tokens.Saml.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.Saml.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Tokens.Saml.xml", + "microsoft.identitymodel.tokens.saml.5.2.0.nupkg.sha512", + "microsoft.identitymodel.tokens.saml.nuspec" + ] + }, + "Microsoft.IdentityModel.Xml/5.2.0": { + "sha512": "0WB90AfR16LT0ANCQTb+183yWrusPt4QK1F3f9eL59ZiDKeZLx2AeXgrkDUO+7kG55nCPqmeOUDjHDVK4gsRgA==", + "type": "package", + "path": "microsoft.identitymodel.xml/5.2.0", + "files": [ + "lib/net45/Microsoft.IdentityModel.Xml.dll", + "lib/net45/Microsoft.IdentityModel.Xml.xml", + "lib/net451/Microsoft.IdentityModel.Xml.dll", + "lib/net451/Microsoft.IdentityModel.Xml.xml", + "lib/netstandard1.4/Microsoft.IdentityModel.Xml.dll", + "lib/netstandard1.4/Microsoft.IdentityModel.Xml.xml", + "microsoft.identitymodel.xml.5.2.0.nupkg.sha512", + "microsoft.identitymodel.xml.nuspec" + ] + }, + "Microsoft.Net.Http.Headers/2.1.1": { + "sha512": "tNh1YCfZ943/d3WSE6cD57O05rhvi3lmKgwoi3zFg4wc/O/oec5FNHZmBCRau4GfzRC5zS/CBdOAkRwbvtZSaQ==", + "type": "package", + "path": "microsoft.net.http.headers/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.Net.Http.Headers.dll", + "lib/netstandard2.0/Microsoft.Net.Http.Headers.xml", + "microsoft.net.http.headers.2.1.1.nupkg.sha512", + "microsoft.net.http.headers.nuspec" + ] + }, + "Microsoft.NETCore.App/2.1.0": { + "sha512": "AvT774nTFgU8cYcGO9j1EMwuayKslxqYTurg32HGpWa2hEYNuW2+XgYVVNcZe6Ndbr84QX6fwaOZfd5n+1m2OA==", + "type": "package", + "path": "microsoft.netcore.app/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "Microsoft.NETCore.App.versions.txt", + "THIRD-PARTY-NOTICES.TXT", + "build/netcoreapp2.1/Microsoft.NETCore.App.PlatformManifest.txt", + "build/netcoreapp2.1/Microsoft.NETCore.App.props", + "build/netcoreapp2.1/Microsoft.NETCore.App.targets", + "microsoft.netcore.app.2.1.0.nupkg.sha512", + "microsoft.netcore.app.nuspec", + "ref/netcoreapp/_._", + "ref/netcoreapp2.1/Microsoft.CSharp.dll", + "ref/netcoreapp2.1/Microsoft.CSharp.xml", + "ref/netcoreapp2.1/Microsoft.VisualBasic.dll", + "ref/netcoreapp2.1/Microsoft.VisualBasic.xml", + "ref/netcoreapp2.1/Microsoft.Win32.Primitives.dll", + "ref/netcoreapp2.1/Microsoft.Win32.Primitives.xml", + "ref/netcoreapp2.1/System.AppContext.dll", + "ref/netcoreapp2.1/System.Buffers.dll", + "ref/netcoreapp2.1/System.Buffers.xml", + "ref/netcoreapp2.1/System.Collections.Concurrent.dll", + "ref/netcoreapp2.1/System.Collections.Concurrent.xml", + "ref/netcoreapp2.1/System.Collections.Immutable.dll", + "ref/netcoreapp2.1/System.Collections.Immutable.xml", + "ref/netcoreapp2.1/System.Collections.NonGeneric.dll", + "ref/netcoreapp2.1/System.Collections.NonGeneric.xml", + "ref/netcoreapp2.1/System.Collections.Specialized.dll", + "ref/netcoreapp2.1/System.Collections.Specialized.xml", + "ref/netcoreapp2.1/System.Collections.dll", + "ref/netcoreapp2.1/System.Collections.xml", + "ref/netcoreapp2.1/System.ComponentModel.Annotations.dll", + "ref/netcoreapp2.1/System.ComponentModel.Annotations.xml", + "ref/netcoreapp2.1/System.ComponentModel.DataAnnotations.dll", + "ref/netcoreapp2.1/System.ComponentModel.EventBasedAsync.dll", + "ref/netcoreapp2.1/System.ComponentModel.EventBasedAsync.xml", + "ref/netcoreapp2.1/System.ComponentModel.Primitives.dll", + "ref/netcoreapp2.1/System.ComponentModel.Primitives.xml", + "ref/netcoreapp2.1/System.ComponentModel.TypeConverter.dll", + "ref/netcoreapp2.1/System.ComponentModel.TypeConverter.xml", + "ref/netcoreapp2.1/System.ComponentModel.dll", + "ref/netcoreapp2.1/System.ComponentModel.xml", + "ref/netcoreapp2.1/System.Configuration.dll", + "ref/netcoreapp2.1/System.Console.dll", + "ref/netcoreapp2.1/System.Console.xml", + "ref/netcoreapp2.1/System.Core.dll", + "ref/netcoreapp2.1/System.Data.Common.dll", + "ref/netcoreapp2.1/System.Data.Common.xml", + "ref/netcoreapp2.1/System.Data.dll", + "ref/netcoreapp2.1/System.Diagnostics.Contracts.dll", + "ref/netcoreapp2.1/System.Diagnostics.Contracts.xml", + "ref/netcoreapp2.1/System.Diagnostics.Debug.dll", + "ref/netcoreapp2.1/System.Diagnostics.Debug.xml", + "ref/netcoreapp2.1/System.Diagnostics.DiagnosticSource.dll", + "ref/netcoreapp2.1/System.Diagnostics.DiagnosticSource.xml", + "ref/netcoreapp2.1/System.Diagnostics.FileVersionInfo.dll", + "ref/netcoreapp2.1/System.Diagnostics.FileVersionInfo.xml", + "ref/netcoreapp2.1/System.Diagnostics.Process.dll", + "ref/netcoreapp2.1/System.Diagnostics.Process.xml", + "ref/netcoreapp2.1/System.Diagnostics.StackTrace.dll", + "ref/netcoreapp2.1/System.Diagnostics.StackTrace.xml", + "ref/netcoreapp2.1/System.Diagnostics.TextWriterTraceListener.dll", + "ref/netcoreapp2.1/System.Diagnostics.TextWriterTraceListener.xml", + "ref/netcoreapp2.1/System.Diagnostics.Tools.dll", + "ref/netcoreapp2.1/System.Diagnostics.Tools.xml", + "ref/netcoreapp2.1/System.Diagnostics.TraceSource.dll", + "ref/netcoreapp2.1/System.Diagnostics.TraceSource.xml", + "ref/netcoreapp2.1/System.Diagnostics.Tracing.dll", + "ref/netcoreapp2.1/System.Diagnostics.Tracing.xml", + "ref/netcoreapp2.1/System.Drawing.Primitives.dll", + "ref/netcoreapp2.1/System.Drawing.Primitives.xml", + "ref/netcoreapp2.1/System.Drawing.dll", + "ref/netcoreapp2.1/System.Dynamic.Runtime.dll", + "ref/netcoreapp2.1/System.Globalization.Calendars.dll", + "ref/netcoreapp2.1/System.Globalization.Extensions.dll", + "ref/netcoreapp2.1/System.Globalization.dll", + "ref/netcoreapp2.1/System.IO.Compression.Brotli.dll", + "ref/netcoreapp2.1/System.IO.Compression.FileSystem.dll", + "ref/netcoreapp2.1/System.IO.Compression.ZipFile.dll", + "ref/netcoreapp2.1/System.IO.Compression.ZipFile.xml", + "ref/netcoreapp2.1/System.IO.Compression.dll", + "ref/netcoreapp2.1/System.IO.Compression.xml", + "ref/netcoreapp2.1/System.IO.FileSystem.DriveInfo.dll", + "ref/netcoreapp2.1/System.IO.FileSystem.DriveInfo.xml", + "ref/netcoreapp2.1/System.IO.FileSystem.Primitives.dll", + "ref/netcoreapp2.1/System.IO.FileSystem.Watcher.dll", + "ref/netcoreapp2.1/System.IO.FileSystem.Watcher.xml", + "ref/netcoreapp2.1/System.IO.FileSystem.dll", + "ref/netcoreapp2.1/System.IO.FileSystem.xml", + "ref/netcoreapp2.1/System.IO.IsolatedStorage.dll", + "ref/netcoreapp2.1/System.IO.IsolatedStorage.xml", + "ref/netcoreapp2.1/System.IO.MemoryMappedFiles.dll", + "ref/netcoreapp2.1/System.IO.MemoryMappedFiles.xml", + "ref/netcoreapp2.1/System.IO.Pipes.dll", + "ref/netcoreapp2.1/System.IO.Pipes.xml", + "ref/netcoreapp2.1/System.IO.UnmanagedMemoryStream.dll", + "ref/netcoreapp2.1/System.IO.dll", + "ref/netcoreapp2.1/System.Linq.Expressions.dll", + "ref/netcoreapp2.1/System.Linq.Expressions.xml", + "ref/netcoreapp2.1/System.Linq.Parallel.dll", + "ref/netcoreapp2.1/System.Linq.Parallel.xml", + "ref/netcoreapp2.1/System.Linq.Queryable.dll", + "ref/netcoreapp2.1/System.Linq.Queryable.xml", + "ref/netcoreapp2.1/System.Linq.dll", + "ref/netcoreapp2.1/System.Linq.xml", + "ref/netcoreapp2.1/System.Memory.dll", + "ref/netcoreapp2.1/System.Memory.xml", + "ref/netcoreapp2.1/System.Net.Http.dll", + "ref/netcoreapp2.1/System.Net.Http.xml", + "ref/netcoreapp2.1/System.Net.HttpListener.dll", + "ref/netcoreapp2.1/System.Net.HttpListener.xml", + "ref/netcoreapp2.1/System.Net.Mail.dll", + "ref/netcoreapp2.1/System.Net.Mail.xml", + "ref/netcoreapp2.1/System.Net.NameResolution.dll", + "ref/netcoreapp2.1/System.Net.NameResolution.xml", + "ref/netcoreapp2.1/System.Net.NetworkInformation.dll", + "ref/netcoreapp2.1/System.Net.NetworkInformation.xml", + "ref/netcoreapp2.1/System.Net.Ping.dll", + "ref/netcoreapp2.1/System.Net.Ping.xml", + "ref/netcoreapp2.1/System.Net.Primitives.dll", + "ref/netcoreapp2.1/System.Net.Primitives.xml", + "ref/netcoreapp2.1/System.Net.Requests.dll", + "ref/netcoreapp2.1/System.Net.Requests.xml", + "ref/netcoreapp2.1/System.Net.Security.dll", + "ref/netcoreapp2.1/System.Net.Security.xml", + "ref/netcoreapp2.1/System.Net.ServicePoint.dll", + "ref/netcoreapp2.1/System.Net.ServicePoint.xml", + "ref/netcoreapp2.1/System.Net.Sockets.dll", + "ref/netcoreapp2.1/System.Net.Sockets.xml", + "ref/netcoreapp2.1/System.Net.WebClient.dll", + "ref/netcoreapp2.1/System.Net.WebClient.xml", + "ref/netcoreapp2.1/System.Net.WebHeaderCollection.dll", + "ref/netcoreapp2.1/System.Net.WebHeaderCollection.xml", + "ref/netcoreapp2.1/System.Net.WebProxy.dll", + "ref/netcoreapp2.1/System.Net.WebProxy.xml", + "ref/netcoreapp2.1/System.Net.WebSockets.Client.dll", + "ref/netcoreapp2.1/System.Net.WebSockets.Client.xml", + "ref/netcoreapp2.1/System.Net.WebSockets.dll", + "ref/netcoreapp2.1/System.Net.WebSockets.xml", + "ref/netcoreapp2.1/System.Net.dll", + "ref/netcoreapp2.1/System.Numerics.Vectors.dll", + "ref/netcoreapp2.1/System.Numerics.Vectors.xml", + "ref/netcoreapp2.1/System.Numerics.dll", + "ref/netcoreapp2.1/System.ObjectModel.dll", + "ref/netcoreapp2.1/System.ObjectModel.xml", + "ref/netcoreapp2.1/System.Reflection.DispatchProxy.dll", + "ref/netcoreapp2.1/System.Reflection.DispatchProxy.xml", + "ref/netcoreapp2.1/System.Reflection.Emit.ILGeneration.dll", + "ref/netcoreapp2.1/System.Reflection.Emit.ILGeneration.xml", + "ref/netcoreapp2.1/System.Reflection.Emit.Lightweight.dll", + "ref/netcoreapp2.1/System.Reflection.Emit.Lightweight.xml", + "ref/netcoreapp2.1/System.Reflection.Emit.dll", + "ref/netcoreapp2.1/System.Reflection.Emit.xml", + "ref/netcoreapp2.1/System.Reflection.Extensions.dll", + "ref/netcoreapp2.1/System.Reflection.Metadata.dll", + "ref/netcoreapp2.1/System.Reflection.Metadata.xml", + "ref/netcoreapp2.1/System.Reflection.Primitives.dll", + "ref/netcoreapp2.1/System.Reflection.Primitives.xml", + "ref/netcoreapp2.1/System.Reflection.TypeExtensions.dll", + "ref/netcoreapp2.1/System.Reflection.TypeExtensions.xml", + "ref/netcoreapp2.1/System.Reflection.dll", + "ref/netcoreapp2.1/System.Resources.Reader.dll", + "ref/netcoreapp2.1/System.Resources.ResourceManager.dll", + "ref/netcoreapp2.1/System.Resources.ResourceManager.xml", + "ref/netcoreapp2.1/System.Resources.Writer.dll", + "ref/netcoreapp2.1/System.Resources.Writer.xml", + "ref/netcoreapp2.1/System.Runtime.CompilerServices.VisualC.dll", + "ref/netcoreapp2.1/System.Runtime.CompilerServices.VisualC.xml", + "ref/netcoreapp2.1/System.Runtime.Extensions.dll", + "ref/netcoreapp2.1/System.Runtime.Extensions.xml", + "ref/netcoreapp2.1/System.Runtime.Handles.dll", + "ref/netcoreapp2.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "ref/netcoreapp2.1/System.Runtime.InteropServices.RuntimeInformation.xml", + "ref/netcoreapp2.1/System.Runtime.InteropServices.WindowsRuntime.dll", + "ref/netcoreapp2.1/System.Runtime.InteropServices.WindowsRuntime.xml", + "ref/netcoreapp2.1/System.Runtime.InteropServices.dll", + "ref/netcoreapp2.1/System.Runtime.InteropServices.xml", + "ref/netcoreapp2.1/System.Runtime.Loader.dll", + "ref/netcoreapp2.1/System.Runtime.Loader.xml", + "ref/netcoreapp2.1/System.Runtime.Numerics.dll", + "ref/netcoreapp2.1/System.Runtime.Numerics.xml", + "ref/netcoreapp2.1/System.Runtime.Serialization.Formatters.dll", + "ref/netcoreapp2.1/System.Runtime.Serialization.Formatters.xml", + "ref/netcoreapp2.1/System.Runtime.Serialization.Json.dll", + "ref/netcoreapp2.1/System.Runtime.Serialization.Json.xml", + "ref/netcoreapp2.1/System.Runtime.Serialization.Primitives.dll", + "ref/netcoreapp2.1/System.Runtime.Serialization.Primitives.xml", + "ref/netcoreapp2.1/System.Runtime.Serialization.Xml.dll", + "ref/netcoreapp2.1/System.Runtime.Serialization.Xml.xml", + "ref/netcoreapp2.1/System.Runtime.Serialization.dll", + "ref/netcoreapp2.1/System.Runtime.dll", + "ref/netcoreapp2.1/System.Runtime.xml", + "ref/netcoreapp2.1/System.Security.Claims.dll", + "ref/netcoreapp2.1/System.Security.Claims.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Algorithms.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Algorithms.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Csp.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Csp.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Encoding.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Encoding.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Primitives.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Primitives.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.X509Certificates.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.X509Certificates.xml", + "ref/netcoreapp2.1/System.Security.Principal.dll", + "ref/netcoreapp2.1/System.Security.Principal.xml", + "ref/netcoreapp2.1/System.Security.SecureString.dll", + "ref/netcoreapp2.1/System.Security.dll", + "ref/netcoreapp2.1/System.ServiceModel.Web.dll", + "ref/netcoreapp2.1/System.ServiceProcess.dll", + "ref/netcoreapp2.1/System.Text.Encoding.Extensions.dll", + "ref/netcoreapp2.1/System.Text.Encoding.Extensions.xml", + "ref/netcoreapp2.1/System.Text.Encoding.dll", + "ref/netcoreapp2.1/System.Text.RegularExpressions.dll", + "ref/netcoreapp2.1/System.Text.RegularExpressions.xml", + "ref/netcoreapp2.1/System.Threading.Overlapped.dll", + "ref/netcoreapp2.1/System.Threading.Overlapped.xml", + "ref/netcoreapp2.1/System.Threading.Tasks.Dataflow.dll", + "ref/netcoreapp2.1/System.Threading.Tasks.Dataflow.xml", + "ref/netcoreapp2.1/System.Threading.Tasks.Extensions.dll", + "ref/netcoreapp2.1/System.Threading.Tasks.Extensions.xml", + "ref/netcoreapp2.1/System.Threading.Tasks.Parallel.dll", + "ref/netcoreapp2.1/System.Threading.Tasks.Parallel.xml", + "ref/netcoreapp2.1/System.Threading.Tasks.dll", + "ref/netcoreapp2.1/System.Threading.Tasks.xml", + "ref/netcoreapp2.1/System.Threading.Thread.dll", + "ref/netcoreapp2.1/System.Threading.Thread.xml", + "ref/netcoreapp2.1/System.Threading.ThreadPool.dll", + "ref/netcoreapp2.1/System.Threading.ThreadPool.xml", + "ref/netcoreapp2.1/System.Threading.Timer.dll", + "ref/netcoreapp2.1/System.Threading.Timer.xml", + "ref/netcoreapp2.1/System.Threading.dll", + "ref/netcoreapp2.1/System.Threading.xml", + "ref/netcoreapp2.1/System.Transactions.Local.dll", + "ref/netcoreapp2.1/System.Transactions.Local.xml", + "ref/netcoreapp2.1/System.Transactions.dll", + "ref/netcoreapp2.1/System.ValueTuple.dll", + "ref/netcoreapp2.1/System.Web.HttpUtility.dll", + "ref/netcoreapp2.1/System.Web.HttpUtility.xml", + "ref/netcoreapp2.1/System.Web.dll", + "ref/netcoreapp2.1/System.Windows.dll", + "ref/netcoreapp2.1/System.Xml.Linq.dll", + "ref/netcoreapp2.1/System.Xml.ReaderWriter.dll", + "ref/netcoreapp2.1/System.Xml.ReaderWriter.xml", + "ref/netcoreapp2.1/System.Xml.Serialization.dll", + "ref/netcoreapp2.1/System.Xml.XDocument.dll", + "ref/netcoreapp2.1/System.Xml.XDocument.xml", + "ref/netcoreapp2.1/System.Xml.XPath.XDocument.dll", + "ref/netcoreapp2.1/System.Xml.XPath.XDocument.xml", + "ref/netcoreapp2.1/System.Xml.XPath.dll", + "ref/netcoreapp2.1/System.Xml.XPath.xml", + "ref/netcoreapp2.1/System.Xml.XmlDocument.dll", + "ref/netcoreapp2.1/System.Xml.XmlSerializer.dll", + "ref/netcoreapp2.1/System.Xml.XmlSerializer.xml", + "ref/netcoreapp2.1/System.Xml.dll", + "ref/netcoreapp2.1/System.dll", + "ref/netcoreapp2.1/WindowsBase.dll", + "ref/netcoreapp2.1/mscorlib.dll", + "ref/netcoreapp2.1/netstandard.dll", + "runtime.json" + ] + }, + "Microsoft.NETCore.DotNetAppHost/2.1.0": { + "sha512": "f/47I60Wg3SrveTvnecCQhCZCAMYlUujWF15EQ/AZTqF/54qeEJjbCIAxKcZI8ToUYzSg6JdfrHggsgjCyCE9Q==", + "type": "package", + "path": "microsoft.netcore.dotnetapphost/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "microsoft.netcore.dotnetapphost.2.1.0.nupkg.sha512", + "microsoft.netcore.dotnetapphost.nuspec", + "runtime.json" + ] + }, + "Microsoft.NETCore.DotNetHostPolicy/2.1.0": { + "sha512": "p50yZYKzhH64lmArJgoKjtvsNehECa+/sAuOQzZh5uDNBTbRKxjN8IXP1e517xdVsgrFcSNxSEVDKZIOWVjGcQ==", + "type": "package", + "path": "microsoft.netcore.dotnethostpolicy/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "microsoft.netcore.dotnethostpolicy.2.1.0.nupkg.sha512", + "microsoft.netcore.dotnethostpolicy.nuspec", + "runtime.json" + ] + }, + "Microsoft.NETCore.DotNetHostResolver/2.1.0": { + "sha512": "fS9D8a+y55n6mHMbNqgHXaPGkjmpVH9h97OyrBxsCuo3Z8aQaFMJ5xIfmzji2ntUd/3truhMbSgSfIelHOkQpg==", + "type": "package", + "path": "microsoft.netcore.dotnethostresolver/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "microsoft.netcore.dotnethostresolver.2.1.0.nupkg.sha512", + "microsoft.netcore.dotnethostresolver.nuspec", + "runtime.json" + ] + }, + "Microsoft.NETCore.Platforms/2.1.0": { + "sha512": "TT+QCi9LcxGTjBssH7S7n5+8DVcwfG4DYgXX7Dk7+BfZ4oVHj8Q0CbYk9glzAlHLsSt3bYzol+fOdra2iu6GOw==", + "type": "package", + "path": "microsoft.netcore.platforms/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard1.0/_._", + "microsoft.netcore.platforms.2.1.0.nupkg.sha512", + "microsoft.netcore.platforms.nuspec", + "runtime.json", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "Microsoft.NETCore.Targets/2.1.0": { + "sha512": "etaYwrLZQUS+b3UWTpCnUggd6SQ/ZIkZ5pHnoR7+dIWt/wp2Rv3CvMKOZISsrt7FYCHKwCxfcepuuyEWkQxADg==", + "type": "package", + "path": "microsoft.netcore.targets/2.1.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard1.0/_._", + "microsoft.netcore.targets.2.1.0.nupkg.sha512", + "microsoft.netcore.targets.nuspec", + "runtime.json", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration/2.1.1": { + "sha512": "xvNRQmZOYfuReVC9trT8sTYVRm7yJzI5z1YZ4iO6Im/EWOWoqqLNoYG0sY8EHnp4DOtioGJ/hmJ+ksqaJN8aBA==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.xml", + "microsoft.visualstudio.web.codegeneration.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Contracts/2.1.1": { + "sha512": "Su++Q22kR3EaWmg7flhuAX0xZFPVL4z99HYc9CNQZksi4L/lCzxyIRXJUV3qTEyyX8wkl6sx3RDVUcYcBTdjlg==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.contracts/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Contracts.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Contracts.xml", + "microsoft.visualstudio.web.codegeneration.contracts.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.contracts.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Core/2.1.1": { + "sha512": "uIhfMpJOjQi/fBtKglWDP8lSuiX5AOQwomCS6hZ37EzKB5tMnaH+Z7DbkEFoZLaGcLDaskoOJ0nhIjA9A2i0Rg==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.core/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Core.xml", + "microsoft.visualstudio.web.codegeneration.core.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.core.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design/2.1.1": { + "sha512": "d4xk6rWvW9HR2/QdwQ7OfrbmQcMi4EE3IlZT3JwfIRFdbtCXDFz+PCjs/qomLC+d+vlEXZuPvneX+G5FF9d1MA==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.design/2.1.1", + "files": [ + ".signature.p7s", + "lib/net461/dotnet-aspnet-codegenerator-design.exe", + "lib/net461/dotnet-aspnet-codegenerator-design.xml", + "lib/netstandard2.0/dotnet-aspnet-codegenerator-design.dll", + "lib/netstandard2.0/dotnet-aspnet-codegenerator-design.xml", + "microsoft.visualstudio.web.codegeneration.design.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.design.nuspec", + "runtimes/win-arm/lib/net461/dotnet-aspnet-codegenerator-design.exe", + "runtimes/win-arm/lib/net461/dotnet-aspnet-codegenerator-design.xml", + "runtimes/win-arm64/lib/net461/dotnet-aspnet-codegenerator-design.exe", + "runtimes/win-arm64/lib/net461/dotnet-aspnet-codegenerator-design.xml", + "runtimes/win7-x64/lib/net461/dotnet-aspnet-codegenerator-design.exe", + "runtimes/win7-x64/lib/net461/dotnet-aspnet-codegenerator-design.xml", + "runtimes/win7-x86/lib/net461/dotnet-aspnet-codegenerator-design.exe", + "runtimes/win7-x86/lib/net461/dotnet-aspnet-codegenerator-design.xml" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore/2.1.1": { + "sha512": "03wiQubZKezzT5OKgnExDOnzrtn/TQG4QDQfOJI524yZ2CCC/h4PxtPmO5FDH7x1qP/99EXLaZYojE9fZ7u9Yw==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.entityframeworkcore/2.1.1", + "files": [ + ".signature.p7s", + "Templates/DbContext/NewLocalDbContext.cshtml", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.EntityFrameworkCore.xml", + "microsoft.visualstudio.web.codegeneration.entityframeworkcore.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.entityframeworkcore.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Templating/2.1.1": { + "sha512": "8rubHXs2ufTJ205H2c9aSga/X8ToURtGguISBHEGkAcz/1Qp922jAaGvGvvJNhoXiBg/9K5VupkfkJDvnhN3/Q==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.templating/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Templating.xml", + "microsoft.visualstudio.web.codegeneration.templating.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.templating.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Utils/2.1.1": { + "sha512": "MRtBhRi0CQ36yi9r08l/j7I24a2bfiAW9N6fSq69M5mZFw1vjijPaM2NPokWv9hqT0aUCLNKCX7A6E20XgYE1w==", + "type": "package", + "path": "microsoft.visualstudio.web.codegeneration.utils/2.1.1", + "files": [ + ".signature.p7s", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGeneration.Utils.xml", + "microsoft.visualstudio.web.codegeneration.utils.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegeneration.utils.nuspec" + ] + }, + "Microsoft.VisualStudio.Web.CodeGenerators.Mvc/2.1.1": { + "sha512": "LhsJrKf4fMqOyaVqAexbpkR6GmHDuVeek+s1NFGwFYFZAgSbnLmBt8DIw41zGbEXO/GYiPLTOTA7F1fJknsf6g==", + "type": "package", + "path": "microsoft.visualstudio.web.codegenerators.mvc/2.1.1", + "files": [ + ".signature.p7s", + "Generators/ParameterDefinitions/area.json", + "Generators/ParameterDefinitions/controller.json", + "Generators/ParameterDefinitions/identity.json", + "Generators/ParameterDefinitions/razorpage.json", + "Generators/ParameterDefinitions/view.json", + "Templates/ControllerGenerator/ApiControllerWithActions.cshtml", + "Templates/ControllerGenerator/ApiControllerWithContext.cshtml", + "Templates/ControllerGenerator/ApiEmptyController.cshtml", + "Templates/ControllerGenerator/ControllerWithActions.cshtml", + "Templates/ControllerGenerator/EmptyController.cshtml", + "Templates/ControllerGenerator/MvcControllerWithContext.cshtml", + "Templates/Identity/Data/ApplicationDbContext.cshtml", + "Templates/Identity/Data/ApplicationUser.cshtml", + "Templates/Identity/IdentityHostingStartup.cshtml", + "Templates/Identity/Pages/Account/Account.AccessDenied.cs.cshtml", + "Templates/Identity/Pages/Account/Account.AccessDenied.cshtml", + "Templates/Identity/Pages/Account/Account.ConfirmEmail.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ConfirmEmail.cshtml", + "Templates/Identity/Pages/Account/Account.ExternalLogin.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ExternalLogin.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPassword.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPassword.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPasswordConfirmation.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ForgotPasswordConfirmation.cshtml", + "Templates/Identity/Pages/Account/Account.Lockout.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Lockout.cshtml", + "Templates/Identity/Pages/Account/Account.Login.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Login.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWith2fa.cs.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWith2fa.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWithRecoveryCode.cs.cshtml", + "Templates/Identity/Pages/Account/Account.LoginWithRecoveryCode.cshtml", + "Templates/Identity/Pages/Account/Account.Logout.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Logout.cshtml", + "Templates/Identity/Pages/Account/Account.Register.cs.cshtml", + "Templates/Identity/Pages/Account/Account.Register.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPassword.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPassword.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPasswordConfirmation.cs.cshtml", + "Templates/Identity/Pages/Account/Account.ResetPasswordConfirmation.cshtml", + "Templates/Identity/Pages/Account/Account._ViewImports.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ChangePassword.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ChangePassword.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DeletePersonalData.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DeletePersonalData.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Disable2fa.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Disable2fa.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.DownloadPersonalData.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.EnableAuthenticator.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ExternalLogins.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ExternalLogins.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.GenerateRecoveryCodes.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Index.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.Index.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ManageNavPages.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.PersonalData.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.PersonalData.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ResetAuthenticator.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.SetPassword.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.SetPassword.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.ShowRecoveryCodes.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cs.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage.TwoFactorAuthentication.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._Layout.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._ManageNav.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._StatusMessage.cshtml", + "Templates/Identity/Pages/Account/Manage/Account.Manage._ViewImports.cshtml", + "Templates/Identity/Pages/Error.cs.cshtml", + "Templates/Identity/Pages/Error.cshtml", + "Templates/Identity/Pages/_Layout.cshtml", + "Templates/Identity/Pages/_ValidationScriptsPartial.cshtml", + "Templates/Identity/Pages/_ViewImports.cshtml", + "Templates/Identity/Pages/_ViewStart.cshtml", + "Templates/Identity/ScaffoldingReadme.cshtml", + "Templates/Identity/SupportPages._CookieConsentPartial.cshtml", + "Templates/Identity/SupportPages._ViewImports.cshtml", + "Templates/Identity/SupportPages._ViewStart.cshtml", + "Templates/Identity/_LoginPartial.cshtml", + "Templates/Identity/wwwroot/css/site.css", + "Templates/Identity/wwwroot/css/site.min.css", + "Templates/Identity/wwwroot/favicon.ico", + "Templates/Identity/wwwroot/images/banner1.svg", + "Templates/Identity/wwwroot/images/banner2.svg", + "Templates/Identity/wwwroot/images/banner3.svg", + "Templates/Identity/wwwroot/js/site.js", + "Templates/Identity/wwwroot/js/site.min.js", + "Templates/Identity/wwwroot/lib/bootstrap/.bower.json", + "Templates/Identity/wwwroot/lib/bootstrap/LICENSE", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap-theme.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css", + "Templates/Identity/wwwroot/lib/bootstrap/dist/css/bootstrap.min.css.map", + "Templates/Identity/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.eot", + "Templates/Identity/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.svg", + "Templates/Identity/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.ttf", + "Templates/Identity/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff", + "Templates/Identity/wwwroot/lib/bootstrap/dist/fonts/glyphicons-halflings-regular.woff2", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/bootstrap.min.js", + "Templates/Identity/wwwroot/lib/bootstrap/dist/js/npm.js", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/.bower.json", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/LICENSE.txt", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js", + "Templates/Identity/wwwroot/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js", + "Templates/Identity/wwwroot/lib/jquery-validation/.bower.json", + "Templates/Identity/wwwroot/lib/jquery-validation/LICENSE.md", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/additional-methods.js", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/additional-methods.min.js", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/jquery.validate.js", + "Templates/Identity/wwwroot/lib/jquery-validation/dist/jquery.validate.min.js", + "Templates/Identity/wwwroot/lib/jquery/.bower.json", + "Templates/Identity/wwwroot/lib/jquery/LICENSE.txt", + "Templates/Identity/wwwroot/lib/jquery/dist/jquery.js", + "Templates/Identity/wwwroot/lib/jquery/dist/jquery.min.js", + "Templates/Identity/wwwroot/lib/jquery/dist/jquery.min.map", + "Templates/MvcLayout/Error.cshtml", + "Templates/MvcLayout/_Layout.cshtml", + "Templates/RazorPageGenerator/Create.cshtml", + "Templates/RazorPageGenerator/CreatePageModel.cshtml", + "Templates/RazorPageGenerator/Delete.cshtml", + "Templates/RazorPageGenerator/DeletePageModel.cshtml", + "Templates/RazorPageGenerator/Details.cshtml", + "Templates/RazorPageGenerator/DetailsPageModel.cshtml", + "Templates/RazorPageGenerator/Edit.cshtml", + "Templates/RazorPageGenerator/EditPageModel.cshtml", + "Templates/RazorPageGenerator/Empty.cshtml", + "Templates/RazorPageGenerator/EmptyPageModel.cshtml", + "Templates/RazorPageGenerator/List.cshtml", + "Templates/RazorPageGenerator/ListPageModel.cshtml", + "Templates/RazorPageGenerator/_ValidationScriptsPartial.cshtml", + "Templates/Startup/ReadMe.cshtml", + "Templates/Startup/Startup.cshtml", + "Templates/ViewGenerator/Create.cshtml", + "Templates/ViewGenerator/Delete.cshtml", + "Templates/ViewGenerator/Details.cshtml", + "Templates/ViewGenerator/Edit.cshtml", + "Templates/ViewGenerator/Empty.cshtml", + "Templates/ViewGenerator/List.cshtml", + "Templates/ViewGenerator/_ValidationScriptsPartial.cshtml", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.dll", + "lib/netstandard2.0/Microsoft.VisualStudio.Web.CodeGenerators.Mvc.xml", + "lib/netstandard2.0/identitygeneratorfilesconfig.json", + "microsoft.visualstudio.web.codegenerators.mvc.2.1.1.nupkg.sha512", + "microsoft.visualstudio.web.codegenerators.mvc.nuspec" + ] + }, + "Microsoft.Win32.Registry/4.5.0": { + "sha512": "vduxuHEqRgRrTE8wYG8Wxj/+6wwzddOmZzjKZx6rFMc/91aUBxI5etAFYxesoNaIja5NpgSTcnk6cN8BeYXf9A==", + "type": "package", + "path": "microsoft.win32.registry/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/Microsoft.Win32.Registry.dll", + "lib/net461/Microsoft.Win32.Registry.dll", + "lib/netstandard1.3/Microsoft.Win32.Registry.dll", + "lib/netstandard2.0/Microsoft.Win32.Registry.dll", + "microsoft.win32.registry.4.5.0.nupkg.sha512", + "microsoft.win32.registry.nuspec", + "ref/net46/Microsoft.Win32.Registry.dll", + "ref/net461/Microsoft.Win32.Registry.dll", + "ref/net461/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/Microsoft.Win32.Registry.dll", + "ref/netstandard1.3/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/de/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/es/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/fr/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/it/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/ja/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/ko/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/ru/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/zh-hans/Microsoft.Win32.Registry.xml", + "ref/netstandard1.3/zh-hant/Microsoft.Win32.Registry.xml", + "ref/netstandard2.0/Microsoft.Win32.Registry.dll", + "ref/netstandard2.0/Microsoft.Win32.Registry.xml", + "runtimes/unix/lib/netstandard2.0/Microsoft.Win32.Registry.dll", + "runtimes/win/lib/net46/Microsoft.Win32.Registry.dll", + "runtimes/win/lib/net461/Microsoft.Win32.Registry.dll", + "runtimes/win/lib/netstandard1.3/Microsoft.Win32.Registry.dll", + "runtimes/win/lib/netstandard2.0/Microsoft.Win32.Registry.dll", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "NETStandard.Library/2.0.3": { + "sha512": "st47PosZSHrjECdjeIzZQbzivYBJFv6P2nv4cj2ypdI204DO+vZ7l5raGMiX4eXMJ53RfOIg+/s4DHVZ54Nu2A==", + "type": "package", + "path": "netstandard.library/2.0.3", + "files": [ + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "build/netstandard2.0/NETStandard.Library.targets", + "build/netstandard2.0/ref/Microsoft.Win32.Primitives.dll", + "build/netstandard2.0/ref/System.AppContext.dll", + "build/netstandard2.0/ref/System.Collections.Concurrent.dll", + "build/netstandard2.0/ref/System.Collections.NonGeneric.dll", + "build/netstandard2.0/ref/System.Collections.Specialized.dll", + "build/netstandard2.0/ref/System.Collections.dll", + "build/netstandard2.0/ref/System.ComponentModel.Composition.dll", + "build/netstandard2.0/ref/System.ComponentModel.EventBasedAsync.dll", + "build/netstandard2.0/ref/System.ComponentModel.Primitives.dll", + "build/netstandard2.0/ref/System.ComponentModel.TypeConverter.dll", + "build/netstandard2.0/ref/System.ComponentModel.dll", + "build/netstandard2.0/ref/System.Console.dll", + "build/netstandard2.0/ref/System.Core.dll", + "build/netstandard2.0/ref/System.Data.Common.dll", + "build/netstandard2.0/ref/System.Data.dll", + "build/netstandard2.0/ref/System.Diagnostics.Contracts.dll", + "build/netstandard2.0/ref/System.Diagnostics.Debug.dll", + "build/netstandard2.0/ref/System.Diagnostics.FileVersionInfo.dll", + "build/netstandard2.0/ref/System.Diagnostics.Process.dll", + "build/netstandard2.0/ref/System.Diagnostics.StackTrace.dll", + "build/netstandard2.0/ref/System.Diagnostics.TextWriterTraceListener.dll", + "build/netstandard2.0/ref/System.Diagnostics.Tools.dll", + "build/netstandard2.0/ref/System.Diagnostics.TraceSource.dll", + "build/netstandard2.0/ref/System.Diagnostics.Tracing.dll", + "build/netstandard2.0/ref/System.Drawing.Primitives.dll", + "build/netstandard2.0/ref/System.Drawing.dll", + "build/netstandard2.0/ref/System.Dynamic.Runtime.dll", + "build/netstandard2.0/ref/System.Globalization.Calendars.dll", + "build/netstandard2.0/ref/System.Globalization.Extensions.dll", + "build/netstandard2.0/ref/System.Globalization.dll", + "build/netstandard2.0/ref/System.IO.Compression.FileSystem.dll", + "build/netstandard2.0/ref/System.IO.Compression.ZipFile.dll", + "build/netstandard2.0/ref/System.IO.Compression.dll", + "build/netstandard2.0/ref/System.IO.FileSystem.DriveInfo.dll", + "build/netstandard2.0/ref/System.IO.FileSystem.Primitives.dll", + "build/netstandard2.0/ref/System.IO.FileSystem.Watcher.dll", + "build/netstandard2.0/ref/System.IO.FileSystem.dll", + "build/netstandard2.0/ref/System.IO.IsolatedStorage.dll", + "build/netstandard2.0/ref/System.IO.MemoryMappedFiles.dll", + "build/netstandard2.0/ref/System.IO.Pipes.dll", + "build/netstandard2.0/ref/System.IO.UnmanagedMemoryStream.dll", + "build/netstandard2.0/ref/System.IO.dll", + "build/netstandard2.0/ref/System.Linq.Expressions.dll", + "build/netstandard2.0/ref/System.Linq.Parallel.dll", + "build/netstandard2.0/ref/System.Linq.Queryable.dll", + "build/netstandard2.0/ref/System.Linq.dll", + "build/netstandard2.0/ref/System.Net.Http.dll", + "build/netstandard2.0/ref/System.Net.NameResolution.dll", + "build/netstandard2.0/ref/System.Net.NetworkInformation.dll", + "build/netstandard2.0/ref/System.Net.Ping.dll", + "build/netstandard2.0/ref/System.Net.Primitives.dll", + "build/netstandard2.0/ref/System.Net.Requests.dll", + "build/netstandard2.0/ref/System.Net.Security.dll", + "build/netstandard2.0/ref/System.Net.Sockets.dll", + "build/netstandard2.0/ref/System.Net.WebHeaderCollection.dll", + "build/netstandard2.0/ref/System.Net.WebSockets.Client.dll", + "build/netstandard2.0/ref/System.Net.WebSockets.dll", + "build/netstandard2.0/ref/System.Net.dll", + "build/netstandard2.0/ref/System.Numerics.dll", + "build/netstandard2.0/ref/System.ObjectModel.dll", + "build/netstandard2.0/ref/System.Reflection.Extensions.dll", + "build/netstandard2.0/ref/System.Reflection.Primitives.dll", + "build/netstandard2.0/ref/System.Reflection.dll", + "build/netstandard2.0/ref/System.Resources.Reader.dll", + "build/netstandard2.0/ref/System.Resources.ResourceManager.dll", + "build/netstandard2.0/ref/System.Resources.Writer.dll", + "build/netstandard2.0/ref/System.Runtime.CompilerServices.VisualC.dll", + "build/netstandard2.0/ref/System.Runtime.Extensions.dll", + "build/netstandard2.0/ref/System.Runtime.Handles.dll", + "build/netstandard2.0/ref/System.Runtime.InteropServices.RuntimeInformation.dll", + "build/netstandard2.0/ref/System.Runtime.InteropServices.dll", + "build/netstandard2.0/ref/System.Runtime.Numerics.dll", + "build/netstandard2.0/ref/System.Runtime.Serialization.Formatters.dll", + "build/netstandard2.0/ref/System.Runtime.Serialization.Json.dll", + "build/netstandard2.0/ref/System.Runtime.Serialization.Primitives.dll", + "build/netstandard2.0/ref/System.Runtime.Serialization.Xml.dll", + "build/netstandard2.0/ref/System.Runtime.Serialization.dll", + "build/netstandard2.0/ref/System.Runtime.dll", + "build/netstandard2.0/ref/System.Security.Claims.dll", + "build/netstandard2.0/ref/System.Security.Cryptography.Algorithms.dll", + "build/netstandard2.0/ref/System.Security.Cryptography.Csp.dll", + "build/netstandard2.0/ref/System.Security.Cryptography.Encoding.dll", + "build/netstandard2.0/ref/System.Security.Cryptography.Primitives.dll", + "build/netstandard2.0/ref/System.Security.Cryptography.X509Certificates.dll", + "build/netstandard2.0/ref/System.Security.Principal.dll", + "build/netstandard2.0/ref/System.Security.SecureString.dll", + "build/netstandard2.0/ref/System.ServiceModel.Web.dll", + "build/netstandard2.0/ref/System.Text.Encoding.Extensions.dll", + "build/netstandard2.0/ref/System.Text.Encoding.dll", + "build/netstandard2.0/ref/System.Text.RegularExpressions.dll", + "build/netstandard2.0/ref/System.Threading.Overlapped.dll", + "build/netstandard2.0/ref/System.Threading.Tasks.Parallel.dll", + "build/netstandard2.0/ref/System.Threading.Tasks.dll", + "build/netstandard2.0/ref/System.Threading.Thread.dll", + "build/netstandard2.0/ref/System.Threading.ThreadPool.dll", + "build/netstandard2.0/ref/System.Threading.Timer.dll", + "build/netstandard2.0/ref/System.Threading.dll", + "build/netstandard2.0/ref/System.Transactions.dll", + "build/netstandard2.0/ref/System.ValueTuple.dll", + "build/netstandard2.0/ref/System.Web.dll", + "build/netstandard2.0/ref/System.Windows.dll", + "build/netstandard2.0/ref/System.Xml.Linq.dll", + "build/netstandard2.0/ref/System.Xml.ReaderWriter.dll", + "build/netstandard2.0/ref/System.Xml.Serialization.dll", + "build/netstandard2.0/ref/System.Xml.XDocument.dll", + "build/netstandard2.0/ref/System.Xml.XPath.XDocument.dll", + "build/netstandard2.0/ref/System.Xml.XPath.dll", + "build/netstandard2.0/ref/System.Xml.XmlDocument.dll", + "build/netstandard2.0/ref/System.Xml.XmlSerializer.dll", + "build/netstandard2.0/ref/System.Xml.dll", + "build/netstandard2.0/ref/System.dll", + "build/netstandard2.0/ref/mscorlib.dll", + "build/netstandard2.0/ref/netstandard.dll", + "build/netstandard2.0/ref/netstandard.xml", + "lib/netstandard1.0/_._", + "netstandard.library.2.0.3.nupkg.sha512", + "netstandard.library.nuspec" + ] + }, + "Newtonsoft.Json/11.0.2": { + "sha512": "znZGbws7E4BA9jxNZ7FuiIRI3C9hrgatVQSTKhIYZYNOud4M5VfGlTYi6RdYO5sQrebFuF/g9UEV3hOxDMXF6Q==", + "type": "package", + "path": "newtonsoft.json/11.0.2", + "files": [ + ".signature.p7s", + "LICENSE.md", + "lib/net20/Newtonsoft.Json.dll", + "lib/net20/Newtonsoft.Json.xml", + "lib/net35/Newtonsoft.Json.dll", + "lib/net35/Newtonsoft.Json.xml", + "lib/net40/Newtonsoft.Json.dll", + "lib/net40/Newtonsoft.Json.xml", + "lib/net45/Newtonsoft.Json.dll", + "lib/net45/Newtonsoft.Json.xml", + "lib/netstandard1.0/Newtonsoft.Json.dll", + "lib/netstandard1.0/Newtonsoft.Json.xml", + "lib/netstandard1.3/Newtonsoft.Json.dll", + "lib/netstandard1.3/Newtonsoft.Json.xml", + "lib/netstandard2.0/Newtonsoft.Json.dll", + "lib/netstandard2.0/Newtonsoft.Json.xml", + "lib/portable-net40+sl5+win8+wp8+wpa81/Newtonsoft.Json.dll", + "lib/portable-net40+sl5+win8+wp8+wpa81/Newtonsoft.Json.xml", + "lib/portable-net45+win8+wp8+wpa81/Newtonsoft.Json.dll", + "lib/portable-net45+win8+wp8+wpa81/Newtonsoft.Json.xml", + "newtonsoft.json.11.0.2.nupkg.sha512", + "newtonsoft.json.nuspec" + ] + }, + "Newtonsoft.Json.Bson/1.0.1": { + "sha512": "5PYT/IqQ+UK31AmZiSS102R6EsTo+LGTSI8bp7WAUqDKaF4wHXD8U9u4WxTI1vc64tYi++8p3dk3WWNqPFgldw==", + "type": "package", + "path": "newtonsoft.json.bson/1.0.1", + "files": [ + "lib/net45/Newtonsoft.Json.Bson.dll", + "lib/net45/Newtonsoft.Json.Bson.xml", + "lib/netstandard1.3/Newtonsoft.Json.Bson.dll", + "lib/netstandard1.3/Newtonsoft.Json.Bson.xml", + "newtonsoft.json.bson.1.0.1.nupkg.sha512", + "newtonsoft.json.bson.nuspec" + ] + }, + "NuGet.Frameworks/4.7.0": { + "sha512": "/VaEPsEgj3p5YPLLxbYc6rB8gYIPf+8wCWOAlAe3l/SP0DXcefZ58uJer1ToBKIpwbPN5LkgTXtvilze5UJoYQ==", + "type": "package", + "path": "nuget.frameworks/4.7.0", + "files": [ + ".signature.p7s", + "lib/net40/NuGet.Frameworks.dll", + "lib/net40/NuGet.Frameworks.xml", + "lib/net46/NuGet.Frameworks.dll", + "lib/net46/NuGet.Frameworks.xml", + "lib/netstandard1.6/NuGet.Frameworks.dll", + "lib/netstandard1.6/NuGet.Frameworks.xml", + "nuget.frameworks.4.7.0.nupkg.sha512", + "nuget.frameworks.nuspec" + ] + }, + "Remotion.Linq/2.2.0": { + "sha512": "fK/76UmpC0FXBlGDFVPLJHQlDLYnGC+XY3eoDgCgbtrhi0vzbXDQ3n/IYHhqSKqXQfGw/u04A1drWs7rFVkRjw==", + "type": "package", + "path": "remotion.linq/2.2.0", + "files": [ + "lib/net35/Remotion.Linq.XML", + "lib/net35/Remotion.Linq.dll", + "lib/net40/Remotion.Linq.XML", + "lib/net40/Remotion.Linq.dll", + "lib/net45/Remotion.Linq.XML", + "lib/net45/Remotion.Linq.dll", + "lib/netstandard1.0/Remotion.Linq.dll", + "lib/netstandard1.0/Remotion.Linq.xml", + "lib/portable-net45+win+wpa81+wp80/Remotion.Linq.dll", + "lib/portable-net45+win+wpa81+wp80/Remotion.Linq.xml", + "remotion.linq.2.2.0.nupkg.sha512", + "remotion.linq.nuspec" + ] + }, + "runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "HdSSp5MnJSsg08KMfZThpuLPJpPwE5hBXvHwoKWosyHHfe8Mh5WKT0ylEOf6yNzX6Ngjxe4Whkafh5q7Ymac4Q==", + "type": "package", + "path": "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.debian.8-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/debian.8-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "+yH1a49wJMy8Zt4yx5RhJrxO/DBDByAiCzNwiETI+1S4mPdCu0OY4djdciC7Vssk0l22wQaDLrXxXkp+3+7bVA==", + "type": "package", + "path": "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.fedora.23-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/fedora.23-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "c3YNH1GQJbfIPJeCnr4avseugSqPrxwIqzthYyZDN6EuOyNOzq+y2KSUfRcXauya1sF4foESTgwM5e1A8arAKw==", + "type": "package", + "path": "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.fedora.24-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/fedora.24-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.native.System/4.3.0": { + "sha512": "c/qWt2LieNZIj1jGnVNsE2Kl23Ya2aSTBuXMD6V7k9KWr6l16Tqdwq+hJScEpWER9753NWC8h96PaVNY5Ld7Jw==", + "type": "package", + "path": "runtime.native.system/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.4.3.0.nupkg.sha512", + "runtime.native.system.nuspec" + ] + }, + "runtime.native.System.Data.SqlClient.sni/4.4.0": { + "sha512": "A8v6PGmk+UGbfWo5Ixup0lPM4swuSwOiayJExZwKIOjTlFFQIsu3QnDXECosBEyrWSPryxBVrdqtJyhK3BaupQ==", + "type": "package", + "path": "runtime.native.system.data.sqlclient.sni/4.4.0", + "files": [ + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "runtime.native.system.data.sqlclient.sni.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "runtime.native.System.IO.Compression/4.3.0": { + "sha512": "INBPonS5QPEgn7naufQFXJEp3zX6L4bwHgJ/ZH78aBTpeNfQMtf7C6VrAFhlq2xxWBveIOWyFzQjJ8XzHMhdOQ==", + "type": "package", + "path": "runtime.native.system.io.compression/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.io.compression.4.3.0.nupkg.sha512", + "runtime.native.system.io.compression.nuspec" + ] + }, + "runtime.native.System.Net.Http/4.3.0": { + "sha512": "ZVuZJqnnegJhd2k/PtAbbIcZ3aZeITq3sj06oKfMBSfphW3HDmk/t4ObvbOk/JA/swGR0LNqMksAh/f7gpTROg==", + "type": "package", + "path": "runtime.native.system.net.http/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.net.http.4.3.0.nupkg.sha512", + "runtime.native.system.net.http.nuspec" + ] + }, + "runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "sha512": "DloMk88juo0OuOWr56QG7MNchmafTLYWvABy36izkrLI5VledI0rq28KGs1i9wbpeT9NPQrx/wTf8U2vazqQ3Q==", + "type": "package", + "path": "runtime.native.system.security.cryptography.apple/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "runtime.native.system.security.cryptography.apple.nuspec" + ] + }, + "runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "NS1U+700m4KFRHR5o4vo9DSlTmlCKu/u7dtE5sUHVIPB+xpXxYQvgBgA6wEIeCz6Yfn0Z52/72WYsToCEPJnrw==", + "type": "package", + "path": "runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/_._", + "runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.native.system.security.cryptography.openssl.nuspec" + ] + }, + "runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "b3pthNgxxFcD+Pc0WSEoC0+md3MyhRS6aCEeenvNE3Fdw1HyJ18ZhRFVJJzIeR/O/jpxPboB805Ho0T3Ul7w8A==", + "type": "package", + "path": "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.opensuse.13.2-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/opensuse.13.2-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "KeLz4HClKf+nFS7p/6Fi/CqyLXh81FpiGzcmuS8DGi9lUqSnZ6Es23/gv2O+1XVGfrbNmviF7CckBpavkBoIFQ==", + "type": "package", + "path": "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.opensuse.42.1-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/opensuse.42.1-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple/4.3.0": { + "sha512": "kVXCuMTrTlxq4XOOMAysuNwsXWpYeboGddNGpIgNSZmv1b6r/s/DPk0fYMB7Q5Qo4bY68o48jt4T4y5BVecbCQ==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.4.3.0.nupkg.sha512", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.apple.nuspec", + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.Apple.dylib" + ] + }, + "runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "X7IdhILzr4ROXd8mI1BUCQMSHSQwelUlBjF1JyTKCjXaOGn2fB4EKBxQbCK2VjO3WaWIdlXZL3W6TiIVnrhX4g==", + "type": "package", + "path": "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.osx.10.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/osx.10.10-x64/native/System.Security.Cryptography.Native.OpenSsl.dylib" + ] + }, + "runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "nyFNiCk/r+VOiIqreLix8yN+q3Wga9+SE8BCgkf+2BwEKiNx6DyvFjCgkfV743/grxv8jHJ8gUK4XEQw7yzRYg==", + "type": "package", + "path": "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.rhel.7-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/rhel.7-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "ytoewC6wGorL7KoCAvRfsgoJPJbNq+64k2SqW6JcOAebWsFUvCCYgfzQMrnpvPiEl4OrblUlhF2ji+Q1+SVLrQ==", + "type": "package", + "path": "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.ubuntu.14.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.14.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "I8bKw2I8k58Wx7fMKQJn2R8lamboCAiHfHeV/pS65ScKWMMI0+wJkLYlEKvgW1D/XvSl/221clBoR2q9QNNM7A==", + "type": "package", + "path": "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.ubuntu.16.04-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.16.04-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "VB5cn/7OzUfzdnC8tqAIMQciVLiq2epm2NrAm1E9OjNRyG4lVhfR61SMcLizejzQP8R8Uf/0l5qOIbUEi+RdEg==", + "type": "package", + "path": "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "runtime.ubuntu.16.10-x64.runtime.native.system.security.cryptography.openssl.nuspec", + "runtimes/ubuntu.16.10-x64/native/System.Security.Cryptography.Native.OpenSsl.so" + ] + }, + "runtime.win-arm64.runtime.native.System.Data.SqlClient.sni/4.4.0": { + "sha512": "LbrynESTp3bm5O/+jGL8v0Qg5SJlTV08lpIpFesXjF6uGNMWqFnUQbYBJwZTeua6E/Y7FIM1C54Ey1btLWupdg==", + "type": "package", + "path": "runtime.win-arm64.runtime.native.system.data.sqlclient.sni/4.4.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.win-arm64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "runtime.win-arm64.runtime.native.system.data.sqlclient.sni.nuspec", + "runtimes/win-arm64/native/sni.dll", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "runtime.win-x64.runtime.native.System.Data.SqlClient.sni/4.4.0": { + "sha512": "38ugOfkYJqJoX9g6EYRlZB5U2ZJH51UP8ptxZgdpS07FgOEToV+lS11ouNK2PM12Pr6X/PpT5jK82G3DwH/SxQ==", + "type": "package", + "path": "runtime.win-x64.runtime.native.system.data.sqlclient.sni/4.4.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.win-x64.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "runtime.win-x64.runtime.native.system.data.sqlclient.sni.nuspec", + "runtimes/win-x64/native/sni.dll", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "runtime.win-x86.runtime.native.System.Data.SqlClient.sni/4.4.0": { + "sha512": "YhEdSQUsTx+C8m8Bw7ar5/VesXvCFMItyZF7G1AUY+OM0VPZUOeAVpJ4Wl6fydBGUYZxojTDR3I6Bj/+BPkJNA==", + "type": "package", + "path": "runtime.win-x86.runtime.native.system.data.sqlclient.sni/4.4.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "runtime.win-x86.runtime.native.system.data.sqlclient.sni.4.4.0.nupkg.sha512", + "runtime.win-x86.runtime.native.system.data.sqlclient.sni.nuspec", + "runtimes/win-x86/native/sni.dll", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.AppContext/4.3.0": { + "sha512": "fKC+rmaLfeIzUhagxY17Q9siv/sPrjjKcfNg1Ic8IlQkZLipo8ljcaZQu4VtI4Jqbzjc2VTjzGLF6WmsRXAEgA==", + "type": "package", + "path": "system.appcontext/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.AppContext.dll", + "lib/net463/System.AppContext.dll", + "lib/netcore50/System.AppContext.dll", + "lib/netstandard1.6/System.AppContext.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.AppContext.dll", + "ref/net463/System.AppContext.dll", + "ref/netstandard/_._", + "ref/netstandard1.3/System.AppContext.dll", + "ref/netstandard1.3/System.AppContext.xml", + "ref/netstandard1.3/de/System.AppContext.xml", + "ref/netstandard1.3/es/System.AppContext.xml", + "ref/netstandard1.3/fr/System.AppContext.xml", + "ref/netstandard1.3/it/System.AppContext.xml", + "ref/netstandard1.3/ja/System.AppContext.xml", + "ref/netstandard1.3/ko/System.AppContext.xml", + "ref/netstandard1.3/ru/System.AppContext.xml", + "ref/netstandard1.3/zh-hans/System.AppContext.xml", + "ref/netstandard1.3/zh-hant/System.AppContext.xml", + "ref/netstandard1.6/System.AppContext.dll", + "ref/netstandard1.6/System.AppContext.xml", + "ref/netstandard1.6/de/System.AppContext.xml", + "ref/netstandard1.6/es/System.AppContext.xml", + "ref/netstandard1.6/fr/System.AppContext.xml", + "ref/netstandard1.6/it/System.AppContext.xml", + "ref/netstandard1.6/ja/System.AppContext.xml", + "ref/netstandard1.6/ko/System.AppContext.xml", + "ref/netstandard1.6/ru/System.AppContext.xml", + "ref/netstandard1.6/zh-hans/System.AppContext.xml", + "ref/netstandard1.6/zh-hant/System.AppContext.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.AppContext.dll", + "system.appcontext.4.3.0.nupkg.sha512", + "system.appcontext.nuspec" + ] + }, + "System.Buffers/4.5.0": { + "sha512": "xpHYjjtyTEpzMwtSQBWdVc3dPjLdQtvyUg6fBlBqcLl1r2Y7gDG/W/enAYOB98nG3oD3Q153Y2FBO8JDWd+0Xw==", + "type": "package", + "path": "system.buffers/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.1/System.Buffers.dll", + "lib/netstandard1.1/System.Buffers.xml", + "lib/netstandard2.0/System.Buffers.dll", + "lib/netstandard2.0/System.Buffers.xml", + "lib/uap10.0.16299/_._", + "ref/net45/System.Buffers.dll", + "ref/net45/System.Buffers.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.1/System.Buffers.dll", + "ref/netstandard1.1/System.Buffers.xml", + "ref/netstandard2.0/System.Buffers.dll", + "ref/netstandard2.0/System.Buffers.xml", + "ref/uap10.0.16299/_._", + "system.buffers.4.5.0.nupkg.sha512", + "system.buffers.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Collections/4.3.0": { + "sha512": "3Dcj85/TBdVpL5Zr+gEEBUuFe2icOnLalmEh9hfck1PTYbbyWuZgh4fmm2ysCLTrqLQw6t3TgTyJ+VLp+Qb+Lw==", + "type": "package", + "path": "system.collections/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Collections.dll", + "ref/netcore50/System.Collections.xml", + "ref/netcore50/de/System.Collections.xml", + "ref/netcore50/es/System.Collections.xml", + "ref/netcore50/fr/System.Collections.xml", + "ref/netcore50/it/System.Collections.xml", + "ref/netcore50/ja/System.Collections.xml", + "ref/netcore50/ko/System.Collections.xml", + "ref/netcore50/ru/System.Collections.xml", + "ref/netcore50/zh-hans/System.Collections.xml", + "ref/netcore50/zh-hant/System.Collections.xml", + "ref/netstandard1.0/System.Collections.dll", + "ref/netstandard1.0/System.Collections.xml", + "ref/netstandard1.0/de/System.Collections.xml", + "ref/netstandard1.0/es/System.Collections.xml", + "ref/netstandard1.0/fr/System.Collections.xml", + "ref/netstandard1.0/it/System.Collections.xml", + "ref/netstandard1.0/ja/System.Collections.xml", + "ref/netstandard1.0/ko/System.Collections.xml", + "ref/netstandard1.0/ru/System.Collections.xml", + "ref/netstandard1.0/zh-hans/System.Collections.xml", + "ref/netstandard1.0/zh-hant/System.Collections.xml", + "ref/netstandard1.3/System.Collections.dll", + "ref/netstandard1.3/System.Collections.xml", + "ref/netstandard1.3/de/System.Collections.xml", + "ref/netstandard1.3/es/System.Collections.xml", + "ref/netstandard1.3/fr/System.Collections.xml", + "ref/netstandard1.3/it/System.Collections.xml", + "ref/netstandard1.3/ja/System.Collections.xml", + "ref/netstandard1.3/ko/System.Collections.xml", + "ref/netstandard1.3/ru/System.Collections.xml", + "ref/netstandard1.3/zh-hans/System.Collections.xml", + "ref/netstandard1.3/zh-hant/System.Collections.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.4.3.0.nupkg.sha512", + "system.collections.nuspec" + ] + }, + "System.Collections.Concurrent/4.3.0": { + "sha512": "ztl69Xp0Y/UXCL+3v3tEU+lIy+bvjKNUmopn1wep/a291pVPK7dxBd6T7WnlQqRog+d1a/hSsgRsmFnIBKTPLQ==", + "type": "package", + "path": "system.collections.concurrent/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Collections.Concurrent.dll", + "lib/netstandard1.3/System.Collections.Concurrent.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Collections.Concurrent.dll", + "ref/netcore50/System.Collections.Concurrent.xml", + "ref/netcore50/de/System.Collections.Concurrent.xml", + "ref/netcore50/es/System.Collections.Concurrent.xml", + "ref/netcore50/fr/System.Collections.Concurrent.xml", + "ref/netcore50/it/System.Collections.Concurrent.xml", + "ref/netcore50/ja/System.Collections.Concurrent.xml", + "ref/netcore50/ko/System.Collections.Concurrent.xml", + "ref/netcore50/ru/System.Collections.Concurrent.xml", + "ref/netcore50/zh-hans/System.Collections.Concurrent.xml", + "ref/netcore50/zh-hant/System.Collections.Concurrent.xml", + "ref/netstandard1.1/System.Collections.Concurrent.dll", + "ref/netstandard1.1/System.Collections.Concurrent.xml", + "ref/netstandard1.1/de/System.Collections.Concurrent.xml", + "ref/netstandard1.1/es/System.Collections.Concurrent.xml", + "ref/netstandard1.1/fr/System.Collections.Concurrent.xml", + "ref/netstandard1.1/it/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ja/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ko/System.Collections.Concurrent.xml", + "ref/netstandard1.1/ru/System.Collections.Concurrent.xml", + "ref/netstandard1.1/zh-hans/System.Collections.Concurrent.xml", + "ref/netstandard1.1/zh-hant/System.Collections.Concurrent.xml", + "ref/netstandard1.3/System.Collections.Concurrent.dll", + "ref/netstandard1.3/System.Collections.Concurrent.xml", + "ref/netstandard1.3/de/System.Collections.Concurrent.xml", + "ref/netstandard1.3/es/System.Collections.Concurrent.xml", + "ref/netstandard1.3/fr/System.Collections.Concurrent.xml", + "ref/netstandard1.3/it/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ja/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ko/System.Collections.Concurrent.xml", + "ref/netstandard1.3/ru/System.Collections.Concurrent.xml", + "ref/netstandard1.3/zh-hans/System.Collections.Concurrent.xml", + "ref/netstandard1.3/zh-hant/System.Collections.Concurrent.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.concurrent.4.3.0.nupkg.sha512", + "system.collections.concurrent.nuspec" + ] + }, + "System.Collections.Immutable/1.5.0": { + "sha512": "RGxi2aQoXgZ5ge0zxrKqI4PU9LrYYoLC+cnEnWXKsSduCOUhE1GEAAoTexUVT8RZOILQyy1B27HC8Xw/XLGzdQ==", + "type": "package", + "path": "system.collections.immutable/1.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard1.0/System.Collections.Immutable.dll", + "lib/netstandard1.0/System.Collections.Immutable.xml", + "lib/netstandard1.3/System.Collections.Immutable.dll", + "lib/netstandard1.3/System.Collections.Immutable.xml", + "lib/netstandard2.0/System.Collections.Immutable.dll", + "lib/netstandard2.0/System.Collections.Immutable.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Collections.Immutable.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Collections.Immutable.xml", + "system.collections.immutable.1.5.0.nupkg.sha512", + "system.collections.immutable.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Collections.NonGeneric/4.3.0": { + "sha512": "prtjIEMhGUnQq6RnPEYLpFt8AtLbp9yq2zxOSrY7KJJZrw25Fi97IzBqY7iqssbM61Ek5b8f3MG/sG1N2sN5KA==", + "type": "package", + "path": "system.collections.nongeneric/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Collections.NonGeneric.dll", + "lib/netstandard1.3/System.Collections.NonGeneric.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Collections.NonGeneric.dll", + "ref/netstandard1.3/System.Collections.NonGeneric.dll", + "ref/netstandard1.3/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/de/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/es/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/fr/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/it/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/ja/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/ko/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/ru/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/zh-hans/System.Collections.NonGeneric.xml", + "ref/netstandard1.3/zh-hant/System.Collections.NonGeneric.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.nongeneric.4.3.0.nupkg.sha512", + "system.collections.nongeneric.nuspec" + ] + }, + "System.Collections.Specialized/4.3.0": { + "sha512": "Epx8PoVZR0iuOnJJDzp7pWvdfMMOAvpUo95pC4ScH2mJuXkKA2Y4aR3cG9qt2klHgSons1WFh4kcGW7cSXvrxg==", + "type": "package", + "path": "system.collections.specialized/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Collections.Specialized.dll", + "lib/netstandard1.3/System.Collections.Specialized.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Collections.Specialized.dll", + "ref/netstandard1.3/System.Collections.Specialized.dll", + "ref/netstandard1.3/System.Collections.Specialized.xml", + "ref/netstandard1.3/de/System.Collections.Specialized.xml", + "ref/netstandard1.3/es/System.Collections.Specialized.xml", + "ref/netstandard1.3/fr/System.Collections.Specialized.xml", + "ref/netstandard1.3/it/System.Collections.Specialized.xml", + "ref/netstandard1.3/ja/System.Collections.Specialized.xml", + "ref/netstandard1.3/ko/System.Collections.Specialized.xml", + "ref/netstandard1.3/ru/System.Collections.Specialized.xml", + "ref/netstandard1.3/zh-hans/System.Collections.Specialized.xml", + "ref/netstandard1.3/zh-hant/System.Collections.Specialized.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.collections.specialized.4.3.0.nupkg.sha512", + "system.collections.specialized.nuspec" + ] + }, + "System.ComponentModel.Annotations/4.5.0": { + "sha512": "IjDa643EO77A4CL9dhxfZ6zzGu+pM8Ar0NYPRMN3TvDiga4uGDzFHOj/ArpyNxxKyO5IFT2LZ0rK3kUog7g3jA==", + "type": "package", + "path": "system.componentmodel.annotations/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net461/System.ComponentModel.Annotations.dll", + "lib/netcore50/System.ComponentModel.Annotations.dll", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.4/System.ComponentModel.Annotations.dll", + "lib/netstandard2.0/System.ComponentModel.Annotations.dll", + "lib/portable-net45+win8/_._", + "lib/uap10.0.16299/_._", + "lib/win8/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net461/System.ComponentModel.Annotations.dll", + "ref/net461/System.ComponentModel.Annotations.xml", + "ref/netcore50/System.ComponentModel.Annotations.dll", + "ref/netcore50/System.ComponentModel.Annotations.xml", + "ref/netcore50/de/System.ComponentModel.Annotations.xml", + "ref/netcore50/es/System.ComponentModel.Annotations.xml", + "ref/netcore50/fr/System.ComponentModel.Annotations.xml", + "ref/netcore50/it/System.ComponentModel.Annotations.xml", + "ref/netcore50/ja/System.ComponentModel.Annotations.xml", + "ref/netcore50/ko/System.ComponentModel.Annotations.xml", + "ref/netcore50/ru/System.ComponentModel.Annotations.xml", + "ref/netcore50/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netcore50/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.1/System.ComponentModel.Annotations.dll", + "ref/netstandard1.1/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/de/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/es/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/fr/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/it/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/ja/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/ko/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/ru/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/System.ComponentModel.Annotations.dll", + "ref/netstandard1.3/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/de/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/es/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/fr/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/it/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/ja/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/ko/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/ru/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/System.ComponentModel.Annotations.dll", + "ref/netstandard1.4/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/de/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/es/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/fr/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/it/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/ja/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/ko/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/ru/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard2.0/System.ComponentModel.Annotations.dll", + "ref/netstandard2.0/System.ComponentModel.Annotations.xml", + "ref/portable-net45+win8/_._", + "ref/uap10.0.16299/_._", + "ref/win8/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.componentmodel.annotations.4.5.0.nupkg.sha512", + "system.componentmodel.annotations.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Composition/1.0.31": { + "sha512": "I+D26qpYdoklyAVUdqwUBrEIckMNjAYnuPJy/h9dsQItpQwVREkDFs4b4tkBza0kT2Yk48Lcfsv2QQ9hWsh9Iw==", + "type": "package", + "path": "system.composition/1.0.31", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "system.composition.1.0.31.nupkg.sha512", + "system.composition.nuspec" + ] + }, + "System.Composition.AttributedModel/1.0.31": { + "sha512": "NHWhkM3ZkspmA0XJEsKdtTt1ViDYuojgSND3yHhTzwxepiwqZf+BCWuvCbjUt4fe0NxxQhUDGJ5km6sLjo9qnQ==", + "type": "package", + "path": "system.composition.attributedmodel/1.0.31", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Composition.AttributedModel.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Composition.AttributedModel.dll", + "system.composition.attributedmodel.1.0.31.nupkg.sha512", + "system.composition.attributedmodel.nuspec" + ] + }, + "System.Composition.Convention/1.0.31": { + "sha512": "GLjh2Ju71k6C0qxMMtl4efHa68NmWeIUYh4fkUI8xbjQrEBvFmRwMDFcylT8/PR9SQbeeL48IkFxU/+gd0nYEQ==", + "type": "package", + "path": "system.composition.convention/1.0.31", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Composition.Convention.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Composition.Convention.dll", + "system.composition.convention.1.0.31.nupkg.sha512", + "system.composition.convention.nuspec" + ] + }, + "System.Composition.Hosting/1.0.31": { + "sha512": "fN1bT4RX4vUqjbgoyuJFVUizAl2mYF5VAb+bVIxIYZSSc0BdnX+yGAxcavxJuDDCQ1K+/mdpgyEFc8e9ikjvrg==", + "type": "package", + "path": "system.composition.hosting/1.0.31", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Composition.Hosting.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Composition.Hosting.dll", + "system.composition.hosting.1.0.31.nupkg.sha512", + "system.composition.hosting.nuspec" + ] + }, + "System.Composition.Runtime/1.0.31": { + "sha512": "0LEJN+2NVM89CE4SekDrrk5tHV5LeATltkp+9WNYrR+Huiyt0vaCqHbbHtVAjPyeLWIc8dOz/3kthRBj32wGQg==", + "type": "package", + "path": "system.composition.runtime/1.0.31", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Composition.Runtime.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Composition.Runtime.dll", + "system.composition.runtime.1.0.31.nupkg.sha512", + "system.composition.runtime.nuspec" + ] + }, + "System.Composition.TypedParts/1.0.31": { + "sha512": "0Zae/FtzeFgDBBuILeIbC/T9HMYbW4olAmi8XqqAGosSOWvXfiQLfARZEhiGd0LVXaYgXr0NhxiU1LldRP1fpQ==", + "type": "package", + "path": "system.composition.typedparts/1.0.31", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/System.Composition.TypedParts.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Composition.TypedParts.dll", + "system.composition.typedparts.1.0.31.nupkg.sha512", + "system.composition.typedparts.nuspec" + ] + }, + "System.Console/4.3.0": { + "sha512": "DHDrIxiqk1h03m6khKWV2X8p/uvN79rgSqpilL6uzpmSfxfU5ng8VcPtW4qsDsQDHiTv6IPV9TmD5M/vElPNLg==", + "type": "package", + "path": "system.console/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Console.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Console.dll", + "ref/netstandard1.3/System.Console.dll", + "ref/netstandard1.3/System.Console.xml", + "ref/netstandard1.3/de/System.Console.xml", + "ref/netstandard1.3/es/System.Console.xml", + "ref/netstandard1.3/fr/System.Console.xml", + "ref/netstandard1.3/it/System.Console.xml", + "ref/netstandard1.3/ja/System.Console.xml", + "ref/netstandard1.3/ko/System.Console.xml", + "ref/netstandard1.3/ru/System.Console.xml", + "ref/netstandard1.3/zh-hans/System.Console.xml", + "ref/netstandard1.3/zh-hant/System.Console.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.console.4.3.0.nupkg.sha512", + "system.console.nuspec" + ] + }, + "System.Data.SqlClient/4.5.1": { + "sha512": "qXTvTFkBds7bnN+ntBMHGvmH3pCAkfT4TE1z2Xvfqo4wKMQC77O4aXsYCc7dzCESC+/Gom6l0GLuebpFx7MDvg==", + "type": "package", + "path": "system.data.sqlclient/4.5.1", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net451/System.Data.SqlClient.dll", + "lib/net46/System.Data.SqlClient.dll", + "lib/net461/System.Data.SqlClient.dll", + "lib/netcoreapp2.1/System.Data.SqlClient.dll", + "lib/netstandard1.2/System.Data.SqlClient.dll", + "lib/netstandard1.3/System.Data.SqlClient.dll", + "lib/netstandard2.0/System.Data.SqlClient.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net451/System.Data.SqlClient.dll", + "ref/net46/System.Data.SqlClient.dll", + "ref/net461/System.Data.SqlClient.dll", + "ref/net461/System.Data.SqlClient.xml", + "ref/netcoreapp2.1/System.Data.SqlClient.dll", + "ref/netcoreapp2.1/System.Data.SqlClient.xml", + "ref/netstandard1.2/System.Data.SqlClient.dll", + "ref/netstandard1.2/System.Data.SqlClient.xml", + "ref/netstandard1.2/de/System.Data.SqlClient.xml", + "ref/netstandard1.2/es/System.Data.SqlClient.xml", + "ref/netstandard1.2/fr/System.Data.SqlClient.xml", + "ref/netstandard1.2/it/System.Data.SqlClient.xml", + "ref/netstandard1.2/ja/System.Data.SqlClient.xml", + "ref/netstandard1.2/ko/System.Data.SqlClient.xml", + "ref/netstandard1.2/ru/System.Data.SqlClient.xml", + "ref/netstandard1.2/zh-hans/System.Data.SqlClient.xml", + "ref/netstandard1.2/zh-hant/System.Data.SqlClient.xml", + "ref/netstandard1.3/System.Data.SqlClient.dll", + "ref/netstandard1.3/System.Data.SqlClient.xml", + "ref/netstandard1.3/de/System.Data.SqlClient.xml", + "ref/netstandard1.3/es/System.Data.SqlClient.xml", + "ref/netstandard1.3/fr/System.Data.SqlClient.xml", + "ref/netstandard1.3/it/System.Data.SqlClient.xml", + "ref/netstandard1.3/ja/System.Data.SqlClient.xml", + "ref/netstandard1.3/ko/System.Data.SqlClient.xml", + "ref/netstandard1.3/ru/System.Data.SqlClient.xml", + "ref/netstandard1.3/zh-hans/System.Data.SqlClient.xml", + "ref/netstandard1.3/zh-hant/System.Data.SqlClient.xml", + "ref/netstandard2.0/System.Data.SqlClient.dll", + "ref/netstandard2.0/System.Data.SqlClient.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netcoreapp2.1/System.Data.SqlClient.dll", + "runtimes/unix/lib/netstandard1.3/System.Data.SqlClient.dll", + "runtimes/unix/lib/netstandard2.0/System.Data.SqlClient.dll", + "runtimes/win/lib/net451/System.Data.SqlClient.dll", + "runtimes/win/lib/net46/System.Data.SqlClient.dll", + "runtimes/win/lib/net461/System.Data.SqlClient.dll", + "runtimes/win/lib/netcoreapp2.1/System.Data.SqlClient.dll", + "runtimes/win/lib/netstandard1.3/System.Data.SqlClient.dll", + "runtimes/win/lib/netstandard2.0/System.Data.SqlClient.dll", + "runtimes/win/lib/uap10.0.16299/System.Data.SqlClient.dll", + "system.data.sqlclient.4.5.1.nupkg.sha512", + "system.data.sqlclient.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Diagnostics.Contracts/4.3.0": { + "sha512": "eelRRbnm+OloiQvp9CXS0ixjNQldjjkHO4iIkR5XH2VIP8sUB/SIpa1TdUW6/+HDcQ+MlhP3pNa1u5SbzYuWGA==", + "type": "package", + "path": "system.diagnostics.contracts/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Diagnostics.Contracts.dll", + "lib/netstandard1.0/System.Diagnostics.Contracts.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Contracts.dll", + "ref/netcore50/System.Diagnostics.Contracts.xml", + "ref/netcore50/de/System.Diagnostics.Contracts.xml", + "ref/netcore50/es/System.Diagnostics.Contracts.xml", + "ref/netcore50/fr/System.Diagnostics.Contracts.xml", + "ref/netcore50/it/System.Diagnostics.Contracts.xml", + "ref/netcore50/ja/System.Diagnostics.Contracts.xml", + "ref/netcore50/ko/System.Diagnostics.Contracts.xml", + "ref/netcore50/ru/System.Diagnostics.Contracts.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Contracts.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/System.Diagnostics.Contracts.dll", + "ref/netstandard1.0/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/de/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/es/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/it/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Contracts.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Contracts.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Diagnostics.Contracts.dll", + "system.diagnostics.contracts.4.3.0.nupkg.sha512", + "system.diagnostics.contracts.nuspec" + ] + }, + "System.Diagnostics.Debug/4.3.0": { + "sha512": "ZUhUOdqmaG5Jk3Xdb8xi5kIyQYAA4PnTNlHx1mu9ZY3qv4ELIdKbnL/akbGaKi2RnNUWaZsAs31rvzFdewTj2g==", + "type": "package", + "path": "system.diagnostics.debug/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Debug.dll", + "ref/netcore50/System.Diagnostics.Debug.xml", + "ref/netcore50/de/System.Diagnostics.Debug.xml", + "ref/netcore50/es/System.Diagnostics.Debug.xml", + "ref/netcore50/fr/System.Diagnostics.Debug.xml", + "ref/netcore50/it/System.Diagnostics.Debug.xml", + "ref/netcore50/ja/System.Diagnostics.Debug.xml", + "ref/netcore50/ko/System.Diagnostics.Debug.xml", + "ref/netcore50/ru/System.Diagnostics.Debug.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Debug.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/System.Diagnostics.Debug.dll", + "ref/netstandard1.0/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/de/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/es/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/it/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Debug.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/System.Diagnostics.Debug.dll", + "ref/netstandard1.3/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/de/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/es/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/fr/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/it/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ja/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ko/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/ru/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.Debug.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.Debug.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.debug.4.3.0.nupkg.sha512", + "system.diagnostics.debug.nuspec" + ] + }, + "System.Diagnostics.DiagnosticSource/4.5.0": { + "sha512": "UumL3CJklk5WyEt0eImPmjeuyY1JgJ7Thmg2hAeZGKCv+9iuuAsoc2wcXjypdo3J8VNEmVCH2Bgn/kIw8NI2bA==", + "type": "package", + "path": "system.diagnostics.diagnosticsource/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net45/System.Diagnostics.DiagnosticSource.dll", + "lib/net45/System.Diagnostics.DiagnosticSource.xml", + "lib/net46/System.Diagnostics.DiagnosticSource.dll", + "lib/net46/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard1.1/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard1.1/System.Diagnostics.DiagnosticSource.xml", + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.dll", + "lib/netstandard1.3/System.Diagnostics.DiagnosticSource.xml", + "lib/portable-net45+win8+wpa81/System.Diagnostics.DiagnosticSource.dll", + "lib/portable-net45+win8+wpa81/System.Diagnostics.DiagnosticSource.xml", + "system.diagnostics.diagnosticsource.4.5.0.nupkg.sha512", + "system.diagnostics.diagnosticsource.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Diagnostics.FileVersionInfo/4.3.0": { + "sha512": "omCF64wzQ3Q2CeIqkD6lmmxeMZtGHUmzgFMPjfVaOsyqpR66p/JaZzManMw1s33osoAb5gqpncsjie67+yUPHQ==", + "type": "package", + "path": "system.diagnostics.fileversioninfo/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Diagnostics.FileVersionInfo.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Diagnostics.FileVersionInfo.dll", + "ref/netstandard1.3/System.Diagnostics.FileVersionInfo.dll", + "ref/netstandard1.3/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/de/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/es/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/fr/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/it/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/ja/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/ko/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/ru/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.FileVersionInfo.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.FileVersionInfo.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Diagnostics.FileVersionInfo.dll", + "runtimes/win/lib/net46/System.Diagnostics.FileVersionInfo.dll", + "runtimes/win/lib/netcore50/System.Diagnostics.FileVersionInfo.dll", + "runtimes/win/lib/netstandard1.3/System.Diagnostics.FileVersionInfo.dll", + "system.diagnostics.fileversioninfo.4.3.0.nupkg.sha512", + "system.diagnostics.fileversioninfo.nuspec" + ] + }, + "System.Diagnostics.StackTrace/4.3.0": { + "sha512": "BiHg0vgtd35/DM9jvtaC1eKRpWZxr0gcQd643ABG7GnvSlf5pOkY2uyd42mMOJoOmKvnpNj0F4tuoS1pacTwYw==", + "type": "package", + "path": "system.diagnostics.stacktrace/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Diagnostics.StackTrace.dll", + "lib/netstandard1.3/System.Diagnostics.StackTrace.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Diagnostics.StackTrace.dll", + "ref/netstandard1.3/System.Diagnostics.StackTrace.dll", + "ref/netstandard1.3/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/de/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/es/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/fr/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/it/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/ja/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/ko/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/ru/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.StackTrace.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.StackTrace.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Diagnostics.StackTrace.dll", + "system.diagnostics.stacktrace.4.3.0.nupkg.sha512", + "system.diagnostics.stacktrace.nuspec" + ] + }, + "System.Diagnostics.Tools/4.3.0": { + "sha512": "UUvkJfSYJMM6x527dJg2VyWPSRqIVB0Z7dbjHst1zmwTXz5CcXSYJFWRpuigfbO1Lf7yfZiIaEUesfnl/g5EyA==", + "type": "package", + "path": "system.diagnostics.tools/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Diagnostics.Tools.dll", + "ref/netcore50/System.Diagnostics.Tools.xml", + "ref/netcore50/de/System.Diagnostics.Tools.xml", + "ref/netcore50/es/System.Diagnostics.Tools.xml", + "ref/netcore50/fr/System.Diagnostics.Tools.xml", + "ref/netcore50/it/System.Diagnostics.Tools.xml", + "ref/netcore50/ja/System.Diagnostics.Tools.xml", + "ref/netcore50/ko/System.Diagnostics.Tools.xml", + "ref/netcore50/ru/System.Diagnostics.Tools.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Tools.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/System.Diagnostics.Tools.dll", + "ref/netstandard1.0/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/de/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/es/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/fr/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/it/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ja/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ko/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/ru/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/zh-hans/System.Diagnostics.Tools.xml", + "ref/netstandard1.0/zh-hant/System.Diagnostics.Tools.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.tools.4.3.0.nupkg.sha512", + "system.diagnostics.tools.nuspec" + ] + }, + "System.Diagnostics.Tracing/4.3.0": { + "sha512": "rswfv0f/Cqkh78rA5S8eN8Neocz234+emGCtTF3lxPY96F+mmmUen6tbn0glN6PMvlKQb9bPAY5e9u7fgPTkKw==", + "type": "package", + "path": "system.diagnostics.tracing/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Diagnostics.Tracing.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.dll", + "ref/netcore50/System.Diagnostics.Tracing.xml", + "ref/netcore50/de/System.Diagnostics.Tracing.xml", + "ref/netcore50/es/System.Diagnostics.Tracing.xml", + "ref/netcore50/fr/System.Diagnostics.Tracing.xml", + "ref/netcore50/it/System.Diagnostics.Tracing.xml", + "ref/netcore50/ja/System.Diagnostics.Tracing.xml", + "ref/netcore50/ko/System.Diagnostics.Tracing.xml", + "ref/netcore50/ru/System.Diagnostics.Tracing.xml", + "ref/netcore50/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netcore50/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/System.Diagnostics.Tracing.dll", + "ref/netstandard1.1/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.1/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/System.Diagnostics.Tracing.dll", + "ref/netstandard1.2/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.2/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/System.Diagnostics.Tracing.dll", + "ref/netstandard1.3/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.3/zh-hant/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/System.Diagnostics.Tracing.dll", + "ref/netstandard1.5/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/de/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/es/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/fr/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/it/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ja/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ko/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/ru/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/zh-hans/System.Diagnostics.Tracing.xml", + "ref/netstandard1.5/zh-hant/System.Diagnostics.Tracing.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.diagnostics.tracing.4.3.0.nupkg.sha512", + "system.diagnostics.tracing.nuspec" + ] + }, + "System.Dynamic.Runtime/4.3.0": { + "sha512": "SNVi1E/vfWUAs/WYKhE9+qlS6KqK0YVhnlT0HQtr8pMIA8YX3lwy3uPMownDwdYISBdmAF/2holEIldVp85Wag==", + "type": "package", + "path": "system.dynamic.runtime/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Dynamic.Runtime.dll", + "lib/netstandard1.3/System.Dynamic.Runtime.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Dynamic.Runtime.dll", + "ref/netcore50/System.Dynamic.Runtime.xml", + "ref/netcore50/de/System.Dynamic.Runtime.xml", + "ref/netcore50/es/System.Dynamic.Runtime.xml", + "ref/netcore50/fr/System.Dynamic.Runtime.xml", + "ref/netcore50/it/System.Dynamic.Runtime.xml", + "ref/netcore50/ja/System.Dynamic.Runtime.xml", + "ref/netcore50/ko/System.Dynamic.Runtime.xml", + "ref/netcore50/ru/System.Dynamic.Runtime.xml", + "ref/netcore50/zh-hans/System.Dynamic.Runtime.xml", + "ref/netcore50/zh-hant/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/System.Dynamic.Runtime.dll", + "ref/netstandard1.0/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/de/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/es/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/fr/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/it/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/ja/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/ko/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/ru/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/zh-hans/System.Dynamic.Runtime.xml", + "ref/netstandard1.0/zh-hant/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/System.Dynamic.Runtime.dll", + "ref/netstandard1.3/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/de/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/es/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/fr/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/it/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/ja/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/ko/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/ru/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/zh-hans/System.Dynamic.Runtime.xml", + "ref/netstandard1.3/zh-hant/System.Dynamic.Runtime.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Dynamic.Runtime.dll", + "system.dynamic.runtime.4.3.0.nupkg.sha512", + "system.dynamic.runtime.nuspec" + ] + }, + "System.Globalization/4.3.0": { + "sha512": "kYdVd2f2PAdFGblzFswE4hkNANJBKRmsfa2X5LG2AcWE1c7/4t0pYae1L8vfZ5xvE2nK/R9JprtToA61OSHWIg==", + "type": "package", + "path": "system.globalization/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Globalization.dll", + "ref/netcore50/System.Globalization.xml", + "ref/netcore50/de/System.Globalization.xml", + "ref/netcore50/es/System.Globalization.xml", + "ref/netcore50/fr/System.Globalization.xml", + "ref/netcore50/it/System.Globalization.xml", + "ref/netcore50/ja/System.Globalization.xml", + "ref/netcore50/ko/System.Globalization.xml", + "ref/netcore50/ru/System.Globalization.xml", + "ref/netcore50/zh-hans/System.Globalization.xml", + "ref/netcore50/zh-hant/System.Globalization.xml", + "ref/netstandard1.0/System.Globalization.dll", + "ref/netstandard1.0/System.Globalization.xml", + "ref/netstandard1.0/de/System.Globalization.xml", + "ref/netstandard1.0/es/System.Globalization.xml", + "ref/netstandard1.0/fr/System.Globalization.xml", + "ref/netstandard1.0/it/System.Globalization.xml", + "ref/netstandard1.0/ja/System.Globalization.xml", + "ref/netstandard1.0/ko/System.Globalization.xml", + "ref/netstandard1.0/ru/System.Globalization.xml", + "ref/netstandard1.0/zh-hans/System.Globalization.xml", + "ref/netstandard1.0/zh-hant/System.Globalization.xml", + "ref/netstandard1.3/System.Globalization.dll", + "ref/netstandard1.3/System.Globalization.xml", + "ref/netstandard1.3/de/System.Globalization.xml", + "ref/netstandard1.3/es/System.Globalization.xml", + "ref/netstandard1.3/fr/System.Globalization.xml", + "ref/netstandard1.3/it/System.Globalization.xml", + "ref/netstandard1.3/ja/System.Globalization.xml", + "ref/netstandard1.3/ko/System.Globalization.xml", + "ref/netstandard1.3/ru/System.Globalization.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.globalization.4.3.0.nupkg.sha512", + "system.globalization.nuspec" + ] + }, + "System.Globalization.Calendars/4.3.0": { + "sha512": "GUlBtdOWT4LTV3I+9/PJW+56AnnChTaOqqTLFtdmype/L500M2LIyXgmtd9X2P2VOkmJd5c67H5SaC2QcL1bFA==", + "type": "package", + "path": "system.globalization.calendars/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Globalization.Calendars.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Globalization.Calendars.dll", + "ref/netstandard1.3/System.Globalization.Calendars.dll", + "ref/netstandard1.3/System.Globalization.Calendars.xml", + "ref/netstandard1.3/de/System.Globalization.Calendars.xml", + "ref/netstandard1.3/es/System.Globalization.Calendars.xml", + "ref/netstandard1.3/fr/System.Globalization.Calendars.xml", + "ref/netstandard1.3/it/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ja/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ko/System.Globalization.Calendars.xml", + "ref/netstandard1.3/ru/System.Globalization.Calendars.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.Calendars.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.Calendars.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.globalization.calendars.4.3.0.nupkg.sha512", + "system.globalization.calendars.nuspec" + ] + }, + "System.Globalization.Extensions/4.3.0": { + "sha512": "FhKmdR6MPG+pxow6wGtNAWdZh7noIOpdD5TwQ3CprzgIE1bBBoim0vbR1+AWsWjQmU7zXHgQo4TWSP6lCeiWcQ==", + "type": "package", + "path": "system.globalization.extensions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Globalization.Extensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Globalization.Extensions.dll", + "ref/netstandard1.3/System.Globalization.Extensions.dll", + "ref/netstandard1.3/System.Globalization.Extensions.xml", + "ref/netstandard1.3/de/System.Globalization.Extensions.xml", + "ref/netstandard1.3/es/System.Globalization.Extensions.xml", + "ref/netstandard1.3/fr/System.Globalization.Extensions.xml", + "ref/netstandard1.3/it/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ja/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ko/System.Globalization.Extensions.xml", + "ref/netstandard1.3/ru/System.Globalization.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Globalization.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Globalization.Extensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Globalization.Extensions.dll", + "runtimes/win/lib/net46/System.Globalization.Extensions.dll", + "runtimes/win/lib/netstandard1.3/System.Globalization.Extensions.dll", + "system.globalization.extensions.4.3.0.nupkg.sha512", + "system.globalization.extensions.nuspec" + ] + }, + "System.IdentityModel.Tokens.Jwt/5.2.0": { + "sha512": "E8tNMfMWPvlSF5fvmMIVZZHlGuIZzE5uktuR+GN2gFdngh0k6xoZquxfjKC02d0NqfsshNQVTCdSKXD5e9/lpA==", + "type": "package", + "path": "system.identitymodel.tokens.jwt/5.2.0", + "files": [ + "lib/net45/System.IdentityModel.Tokens.Jwt.dll", + "lib/net45/System.IdentityModel.Tokens.Jwt.xml", + "lib/net451/System.IdentityModel.Tokens.Jwt.dll", + "lib/net451/System.IdentityModel.Tokens.Jwt.xml", + "lib/netstandard1.4/System.IdentityModel.Tokens.Jwt.dll", + "lib/netstandard1.4/System.IdentityModel.Tokens.Jwt.xml", + "system.identitymodel.tokens.jwt.5.2.0.nupkg.sha512", + "system.identitymodel.tokens.jwt.nuspec" + ] + }, + "System.Interactive.Async/3.1.1": { + "sha512": "hZccYiIE5RS1/J9Tb/BNtosAGVggdlsJm4Ojdu+gDV0p4AIi+LUfUogMKkRacljQEJd2AG6vYzvcjhQFkqoZmw==", + "type": "package", + "path": "system.interactive.async/3.1.1", + "files": [ + "lib/net45/System.Interactive.Async.dll", + "lib/net45/System.Interactive.Async.xml", + "lib/net46/System.Interactive.Async.dll", + "lib/net46/System.Interactive.Async.xml", + "lib/netstandard1.0/System.Interactive.Async.dll", + "lib/netstandard1.0/System.Interactive.Async.xml", + "lib/netstandard1.3/System.Interactive.Async.dll", + "lib/netstandard1.3/System.Interactive.Async.xml", + "system.interactive.async.3.1.1.nupkg.sha512", + "system.interactive.async.nuspec" + ] + }, + "System.IO/4.3.0": { + "sha512": "3qjaHvxQPDpSOYICjUoTsmoq5u6QJAFRUITgeT/4gqkF1bajbSmb1kwSxEA8AHlofqgcKJcM8udgieRNhaJ5Cg==", + "type": "package", + "path": "system.io/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.IO.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.IO.dll", + "ref/netcore50/System.IO.dll", + "ref/netcore50/System.IO.xml", + "ref/netcore50/de/System.IO.xml", + "ref/netcore50/es/System.IO.xml", + "ref/netcore50/fr/System.IO.xml", + "ref/netcore50/it/System.IO.xml", + "ref/netcore50/ja/System.IO.xml", + "ref/netcore50/ko/System.IO.xml", + "ref/netcore50/ru/System.IO.xml", + "ref/netcore50/zh-hans/System.IO.xml", + "ref/netcore50/zh-hant/System.IO.xml", + "ref/netstandard1.0/System.IO.dll", + "ref/netstandard1.0/System.IO.xml", + "ref/netstandard1.0/de/System.IO.xml", + "ref/netstandard1.0/es/System.IO.xml", + "ref/netstandard1.0/fr/System.IO.xml", + "ref/netstandard1.0/it/System.IO.xml", + "ref/netstandard1.0/ja/System.IO.xml", + "ref/netstandard1.0/ko/System.IO.xml", + "ref/netstandard1.0/ru/System.IO.xml", + "ref/netstandard1.0/zh-hans/System.IO.xml", + "ref/netstandard1.0/zh-hant/System.IO.xml", + "ref/netstandard1.3/System.IO.dll", + "ref/netstandard1.3/System.IO.xml", + "ref/netstandard1.3/de/System.IO.xml", + "ref/netstandard1.3/es/System.IO.xml", + "ref/netstandard1.3/fr/System.IO.xml", + "ref/netstandard1.3/it/System.IO.xml", + "ref/netstandard1.3/ja/System.IO.xml", + "ref/netstandard1.3/ko/System.IO.xml", + "ref/netstandard1.3/ru/System.IO.xml", + "ref/netstandard1.3/zh-hans/System.IO.xml", + "ref/netstandard1.3/zh-hant/System.IO.xml", + "ref/netstandard1.5/System.IO.dll", + "ref/netstandard1.5/System.IO.xml", + "ref/netstandard1.5/de/System.IO.xml", + "ref/netstandard1.5/es/System.IO.xml", + "ref/netstandard1.5/fr/System.IO.xml", + "ref/netstandard1.5/it/System.IO.xml", + "ref/netstandard1.5/ja/System.IO.xml", + "ref/netstandard1.5/ko/System.IO.xml", + "ref/netstandard1.5/ru/System.IO.xml", + "ref/netstandard1.5/zh-hans/System.IO.xml", + "ref/netstandard1.5/zh-hant/System.IO.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.4.3.0.nupkg.sha512", + "system.io.nuspec" + ] + }, + "System.IO.Compression/4.3.0": { + "sha512": "YHndyoiV90iu4iKG115ibkhrG+S3jBm8Ap9OwoUAzO5oPDAWcr0SFwQFm0HjM8WkEZWo0zvLTyLmbvTkW1bXgg==", + "type": "package", + "path": "system.io.compression/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.IO.Compression.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.IO.Compression.dll", + "ref/netcore50/System.IO.Compression.dll", + "ref/netcore50/System.IO.Compression.xml", + "ref/netcore50/de/System.IO.Compression.xml", + "ref/netcore50/es/System.IO.Compression.xml", + "ref/netcore50/fr/System.IO.Compression.xml", + "ref/netcore50/it/System.IO.Compression.xml", + "ref/netcore50/ja/System.IO.Compression.xml", + "ref/netcore50/ko/System.IO.Compression.xml", + "ref/netcore50/ru/System.IO.Compression.xml", + "ref/netcore50/zh-hans/System.IO.Compression.xml", + "ref/netcore50/zh-hant/System.IO.Compression.xml", + "ref/netstandard1.1/System.IO.Compression.dll", + "ref/netstandard1.1/System.IO.Compression.xml", + "ref/netstandard1.1/de/System.IO.Compression.xml", + "ref/netstandard1.1/es/System.IO.Compression.xml", + "ref/netstandard1.1/fr/System.IO.Compression.xml", + "ref/netstandard1.1/it/System.IO.Compression.xml", + "ref/netstandard1.1/ja/System.IO.Compression.xml", + "ref/netstandard1.1/ko/System.IO.Compression.xml", + "ref/netstandard1.1/ru/System.IO.Compression.xml", + "ref/netstandard1.1/zh-hans/System.IO.Compression.xml", + "ref/netstandard1.1/zh-hant/System.IO.Compression.xml", + "ref/netstandard1.3/System.IO.Compression.dll", + "ref/netstandard1.3/System.IO.Compression.xml", + "ref/netstandard1.3/de/System.IO.Compression.xml", + "ref/netstandard1.3/es/System.IO.Compression.xml", + "ref/netstandard1.3/fr/System.IO.Compression.xml", + "ref/netstandard1.3/it/System.IO.Compression.xml", + "ref/netstandard1.3/ja/System.IO.Compression.xml", + "ref/netstandard1.3/ko/System.IO.Compression.xml", + "ref/netstandard1.3/ru/System.IO.Compression.xml", + "ref/netstandard1.3/zh-hans/System.IO.Compression.xml", + "ref/netstandard1.3/zh-hant/System.IO.Compression.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.IO.Compression.dll", + "runtimes/win/lib/net46/System.IO.Compression.dll", + "runtimes/win/lib/netstandard1.3/System.IO.Compression.dll", + "system.io.compression.4.3.0.nupkg.sha512", + "system.io.compression.nuspec" + ] + }, + "System.IO.FileSystem/4.3.0": { + "sha512": "3wEMARTnuio+ulnvi+hkRNROYwa1kylvYahhcLk4HSoVdl+xxTFVeVlYOfLwrDPImGls0mDqbMhrza8qnWPTdA==", + "type": "package", + "path": "system.io.filesystem/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.dll", + "ref/netstandard1.3/System.IO.FileSystem.dll", + "ref/netstandard1.3/System.IO.FileSystem.xml", + "ref/netstandard1.3/de/System.IO.FileSystem.xml", + "ref/netstandard1.3/es/System.IO.FileSystem.xml", + "ref/netstandard1.3/fr/System.IO.FileSystem.xml", + "ref/netstandard1.3/it/System.IO.FileSystem.xml", + "ref/netstandard1.3/ja/System.IO.FileSystem.xml", + "ref/netstandard1.3/ko/System.IO.FileSystem.xml", + "ref/netstandard1.3/ru/System.IO.FileSystem.xml", + "ref/netstandard1.3/zh-hans/System.IO.FileSystem.xml", + "ref/netstandard1.3/zh-hant/System.IO.FileSystem.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.filesystem.4.3.0.nupkg.sha512", + "system.io.filesystem.nuspec" + ] + }, + "System.IO.FileSystem.Primitives/4.3.0": { + "sha512": "6QOb2XFLch7bEc4lIcJH49nJN2HV+OC3fHDgsLVsBVBk3Y4hFAnOBGzJ2lUu7CyDDFo9IBWkSsnbkT6IBwwiMw==", + "type": "package", + "path": "system.io.filesystem.primitives/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.IO.FileSystem.Primitives.dll", + "lib/netstandard1.3/System.IO.FileSystem.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.IO.FileSystem.Primitives.dll", + "ref/netstandard1.3/System.IO.FileSystem.Primitives.dll", + "ref/netstandard1.3/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/de/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/es/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/fr/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/it/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ja/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ko/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/ru/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.IO.FileSystem.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.IO.FileSystem.Primitives.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.io.filesystem.primitives.4.3.0.nupkg.sha512", + "system.io.filesystem.primitives.nuspec" + ] + }, + "System.IO.Pipelines/4.5.0": { + "sha512": "Kq9eZWVKN9khHhkatLWLLxYCs3j9qSNMZELqn2YG1YsCMv6bPmAtaN0CfA6l7vxFbiV02C996Dy7yHO8DkaJLg==", + "type": "package", + "path": "system.io.pipelines/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netcoreapp2.1/System.IO.Pipelines.dll", + "lib/netcoreapp2.1/System.IO.Pipelines.xml", + "lib/netstandard1.3/System.IO.Pipelines.dll", + "lib/netstandard1.3/System.IO.Pipelines.xml", + "lib/netstandard2.0/System.IO.Pipelines.dll", + "lib/netstandard2.0/System.IO.Pipelines.xml", + "ref/netstandard1.3/System.IO.Pipelines.dll", + "system.io.pipelines.4.5.0.nupkg.sha512", + "system.io.pipelines.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Linq/4.3.0": { + "sha512": "5DbqIUpsDp0dFftytzuMmc0oeMdQwjcP/EWxsksIz/w1TcFRkZ3yKKz0PqiYFMmEwPSWw+qNVqD7PJ889JzHbw==", + "type": "package", + "path": "system.linq/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Linq.dll", + "lib/netcore50/System.Linq.dll", + "lib/netstandard1.6/System.Linq.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Linq.dll", + "ref/netcore50/System.Linq.dll", + "ref/netcore50/System.Linq.xml", + "ref/netcore50/de/System.Linq.xml", + "ref/netcore50/es/System.Linq.xml", + "ref/netcore50/fr/System.Linq.xml", + "ref/netcore50/it/System.Linq.xml", + "ref/netcore50/ja/System.Linq.xml", + "ref/netcore50/ko/System.Linq.xml", + "ref/netcore50/ru/System.Linq.xml", + "ref/netcore50/zh-hans/System.Linq.xml", + "ref/netcore50/zh-hant/System.Linq.xml", + "ref/netstandard1.0/System.Linq.dll", + "ref/netstandard1.0/System.Linq.xml", + "ref/netstandard1.0/de/System.Linq.xml", + "ref/netstandard1.0/es/System.Linq.xml", + "ref/netstandard1.0/fr/System.Linq.xml", + "ref/netstandard1.0/it/System.Linq.xml", + "ref/netstandard1.0/ja/System.Linq.xml", + "ref/netstandard1.0/ko/System.Linq.xml", + "ref/netstandard1.0/ru/System.Linq.xml", + "ref/netstandard1.0/zh-hans/System.Linq.xml", + "ref/netstandard1.0/zh-hant/System.Linq.xml", + "ref/netstandard1.6/System.Linq.dll", + "ref/netstandard1.6/System.Linq.xml", + "ref/netstandard1.6/de/System.Linq.xml", + "ref/netstandard1.6/es/System.Linq.xml", + "ref/netstandard1.6/fr/System.Linq.xml", + "ref/netstandard1.6/it/System.Linq.xml", + "ref/netstandard1.6/ja/System.Linq.xml", + "ref/netstandard1.6/ko/System.Linq.xml", + "ref/netstandard1.6/ru/System.Linq.xml", + "ref/netstandard1.6/zh-hans/System.Linq.xml", + "ref/netstandard1.6/zh-hant/System.Linq.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.linq.4.3.0.nupkg.sha512", + "system.linq.nuspec" + ] + }, + "System.Linq.Expressions/4.3.0": { + "sha512": "PGKkrd2khG4CnlyJwxwwaWWiSiWFNBGlgXvJpeO0xCXrZ89ODrQ6tjEWS/kOqZ8GwEOUATtKtzp1eRgmYNfclg==", + "type": "package", + "path": "system.linq.expressions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Linq.Expressions.dll", + "lib/netcore50/System.Linq.Expressions.dll", + "lib/netstandard1.6/System.Linq.Expressions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.dll", + "ref/netcore50/System.Linq.Expressions.xml", + "ref/netcore50/de/System.Linq.Expressions.xml", + "ref/netcore50/es/System.Linq.Expressions.xml", + "ref/netcore50/fr/System.Linq.Expressions.xml", + "ref/netcore50/it/System.Linq.Expressions.xml", + "ref/netcore50/ja/System.Linq.Expressions.xml", + "ref/netcore50/ko/System.Linq.Expressions.xml", + "ref/netcore50/ru/System.Linq.Expressions.xml", + "ref/netcore50/zh-hans/System.Linq.Expressions.xml", + "ref/netcore50/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.0/System.Linq.Expressions.dll", + "ref/netstandard1.0/System.Linq.Expressions.xml", + "ref/netstandard1.0/de/System.Linq.Expressions.xml", + "ref/netstandard1.0/es/System.Linq.Expressions.xml", + "ref/netstandard1.0/fr/System.Linq.Expressions.xml", + "ref/netstandard1.0/it/System.Linq.Expressions.xml", + "ref/netstandard1.0/ja/System.Linq.Expressions.xml", + "ref/netstandard1.0/ko/System.Linq.Expressions.xml", + "ref/netstandard1.0/ru/System.Linq.Expressions.xml", + "ref/netstandard1.0/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.0/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.3/System.Linq.Expressions.dll", + "ref/netstandard1.3/System.Linq.Expressions.xml", + "ref/netstandard1.3/de/System.Linq.Expressions.xml", + "ref/netstandard1.3/es/System.Linq.Expressions.xml", + "ref/netstandard1.3/fr/System.Linq.Expressions.xml", + "ref/netstandard1.3/it/System.Linq.Expressions.xml", + "ref/netstandard1.3/ja/System.Linq.Expressions.xml", + "ref/netstandard1.3/ko/System.Linq.Expressions.xml", + "ref/netstandard1.3/ru/System.Linq.Expressions.xml", + "ref/netstandard1.3/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.3/zh-hant/System.Linq.Expressions.xml", + "ref/netstandard1.6/System.Linq.Expressions.dll", + "ref/netstandard1.6/System.Linq.Expressions.xml", + "ref/netstandard1.6/de/System.Linq.Expressions.xml", + "ref/netstandard1.6/es/System.Linq.Expressions.xml", + "ref/netstandard1.6/fr/System.Linq.Expressions.xml", + "ref/netstandard1.6/it/System.Linq.Expressions.xml", + "ref/netstandard1.6/ja/System.Linq.Expressions.xml", + "ref/netstandard1.6/ko/System.Linq.Expressions.xml", + "ref/netstandard1.6/ru/System.Linq.Expressions.xml", + "ref/netstandard1.6/zh-hans/System.Linq.Expressions.xml", + "ref/netstandard1.6/zh-hant/System.Linq.Expressions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Linq.Expressions.dll", + "system.linq.expressions.4.3.0.nupkg.sha512", + "system.linq.expressions.nuspec" + ] + }, + "System.Linq.Parallel/4.3.0": { + "sha512": "td7x21K8LalpjTWCzW/nQboQIFbq9i0r+PCyBBCdLWWnm4NBcdN18vpz/G9hCpUaCIfRL+ZxJNVTywlNlB1aLQ==", + "type": "package", + "path": "system.linq.parallel/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Linq.Parallel.dll", + "lib/netstandard1.3/System.Linq.Parallel.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Linq.Parallel.dll", + "ref/netcore50/System.Linq.Parallel.xml", + "ref/netcore50/de/System.Linq.Parallel.xml", + "ref/netcore50/es/System.Linq.Parallel.xml", + "ref/netcore50/fr/System.Linq.Parallel.xml", + "ref/netcore50/it/System.Linq.Parallel.xml", + "ref/netcore50/ja/System.Linq.Parallel.xml", + "ref/netcore50/ko/System.Linq.Parallel.xml", + "ref/netcore50/ru/System.Linq.Parallel.xml", + "ref/netcore50/zh-hans/System.Linq.Parallel.xml", + "ref/netcore50/zh-hant/System.Linq.Parallel.xml", + "ref/netstandard1.1/System.Linq.Parallel.dll", + "ref/netstandard1.1/System.Linq.Parallel.xml", + "ref/netstandard1.1/de/System.Linq.Parallel.xml", + "ref/netstandard1.1/es/System.Linq.Parallel.xml", + "ref/netstandard1.1/fr/System.Linq.Parallel.xml", + "ref/netstandard1.1/it/System.Linq.Parallel.xml", + "ref/netstandard1.1/ja/System.Linq.Parallel.xml", + "ref/netstandard1.1/ko/System.Linq.Parallel.xml", + "ref/netstandard1.1/ru/System.Linq.Parallel.xml", + "ref/netstandard1.1/zh-hans/System.Linq.Parallel.xml", + "ref/netstandard1.1/zh-hant/System.Linq.Parallel.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.linq.parallel.4.3.0.nupkg.sha512", + "system.linq.parallel.nuspec" + ] + }, + "System.Linq.Queryable/4.0.1": { + "sha512": "Yn/WfYe9RoRfmSLvUt2JerP0BTGGykCZkQPgojaxgzF2N0oPo+/AhB8TXOpdCcNlrG3VRtsamtK2uzsp3cqRVw==", + "type": "package", + "path": "system.linq.queryable/4.0.1", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/monoandroid10/_._", + "lib/monotouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Linq.Queryable.dll", + "lib/netstandard1.3/System.Linq.Queryable.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/monoandroid10/_._", + "ref/monotouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Linq.Queryable.dll", + "ref/netcore50/System.Linq.Queryable.xml", + "ref/netcore50/de/System.Linq.Queryable.xml", + "ref/netcore50/es/System.Linq.Queryable.xml", + "ref/netcore50/fr/System.Linq.Queryable.xml", + "ref/netcore50/it/System.Linq.Queryable.xml", + "ref/netcore50/ja/System.Linq.Queryable.xml", + "ref/netcore50/ko/System.Linq.Queryable.xml", + "ref/netcore50/ru/System.Linq.Queryable.xml", + "ref/netcore50/zh-hans/System.Linq.Queryable.xml", + "ref/netcore50/zh-hant/System.Linq.Queryable.xml", + "ref/netstandard1.0/System.Linq.Queryable.dll", + "ref/netstandard1.0/System.Linq.Queryable.xml", + "ref/netstandard1.0/de/System.Linq.Queryable.xml", + "ref/netstandard1.0/es/System.Linq.Queryable.xml", + "ref/netstandard1.0/fr/System.Linq.Queryable.xml", + "ref/netstandard1.0/it/System.Linq.Queryable.xml", + "ref/netstandard1.0/ja/System.Linq.Queryable.xml", + "ref/netstandard1.0/ko/System.Linq.Queryable.xml", + "ref/netstandard1.0/ru/System.Linq.Queryable.xml", + "ref/netstandard1.0/zh-hans/System.Linq.Queryable.xml", + "ref/netstandard1.0/zh-hant/System.Linq.Queryable.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.linq.queryable.4.0.1.nupkg.sha512", + "system.linq.queryable.nuspec" + ] + }, + "System.Memory/4.5.1": { + "sha512": "vcG3/MbfpxznMkkkaAblJi7RHOmuP7kawQMhDgLSuA1tRpRQYsFSCTxRSINDUgn2QNn2jWeLxv8er5BXbyACkw==", + "type": "package", + "path": "system.memory/4.5.1", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.1/System.Memory.dll", + "lib/netstandard1.1/System.Memory.xml", + "lib/netstandard2.0/System.Memory.dll", + "lib/netstandard2.0/System.Memory.xml", + "ref/netcoreapp2.1/_._", + "ref/netstandard1.1/System.Memory.dll", + "ref/netstandard1.1/System.Memory.xml", + "ref/netstandard2.0/System.Memory.dll", + "ref/netstandard2.0/System.Memory.xml", + "system.memory.4.5.1.nupkg.sha512", + "system.memory.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Net.Http/4.3.0": { + "sha512": "sYg+FtILtRQuYWSIAuNOELwVuVsxVyJGWQyOnlAzhV4xvhyFnON1bAzYYC+jjRW8JREM45R0R5Dgi8MTC5sEwA==", + "type": "package", + "path": "system.net.http/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/Xamarinmac20/_._", + "lib/monoandroid10/_._", + "lib/monotouch10/_._", + "lib/net45/_._", + "lib/net46/System.Net.Http.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/Xamarinmac20/_._", + "ref/monoandroid10/_._", + "ref/monotouch10/_._", + "ref/net45/_._", + "ref/net46/System.Net.Http.dll", + "ref/net46/System.Net.Http.xml", + "ref/net46/de/System.Net.Http.xml", + "ref/net46/es/System.Net.Http.xml", + "ref/net46/fr/System.Net.Http.xml", + "ref/net46/it/System.Net.Http.xml", + "ref/net46/ja/System.Net.Http.xml", + "ref/net46/ko/System.Net.Http.xml", + "ref/net46/ru/System.Net.Http.xml", + "ref/net46/zh-hans/System.Net.Http.xml", + "ref/net46/zh-hant/System.Net.Http.xml", + "ref/netcore50/System.Net.Http.dll", + "ref/netcore50/System.Net.Http.xml", + "ref/netcore50/de/System.Net.Http.xml", + "ref/netcore50/es/System.Net.Http.xml", + "ref/netcore50/fr/System.Net.Http.xml", + "ref/netcore50/it/System.Net.Http.xml", + "ref/netcore50/ja/System.Net.Http.xml", + "ref/netcore50/ko/System.Net.Http.xml", + "ref/netcore50/ru/System.Net.Http.xml", + "ref/netcore50/zh-hans/System.Net.Http.xml", + "ref/netcore50/zh-hant/System.Net.Http.xml", + "ref/netstandard1.1/System.Net.Http.dll", + "ref/netstandard1.1/System.Net.Http.xml", + "ref/netstandard1.1/de/System.Net.Http.xml", + "ref/netstandard1.1/es/System.Net.Http.xml", + "ref/netstandard1.1/fr/System.Net.Http.xml", + "ref/netstandard1.1/it/System.Net.Http.xml", + "ref/netstandard1.1/ja/System.Net.Http.xml", + "ref/netstandard1.1/ko/System.Net.Http.xml", + "ref/netstandard1.1/ru/System.Net.Http.xml", + "ref/netstandard1.1/zh-hans/System.Net.Http.xml", + "ref/netstandard1.1/zh-hant/System.Net.Http.xml", + "ref/netstandard1.3/System.Net.Http.dll", + "ref/netstandard1.3/System.Net.Http.xml", + "ref/netstandard1.3/de/System.Net.Http.xml", + "ref/netstandard1.3/es/System.Net.Http.xml", + "ref/netstandard1.3/fr/System.Net.Http.xml", + "ref/netstandard1.3/it/System.Net.Http.xml", + "ref/netstandard1.3/ja/System.Net.Http.xml", + "ref/netstandard1.3/ko/System.Net.Http.xml", + "ref/netstandard1.3/ru/System.Net.Http.xml", + "ref/netstandard1.3/zh-hans/System.Net.Http.xml", + "ref/netstandard1.3/zh-hant/System.Net.Http.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.6/System.Net.Http.dll", + "runtimes/win/lib/net46/System.Net.Http.dll", + "runtimes/win/lib/netcore50/System.Net.Http.dll", + "runtimes/win/lib/netstandard1.3/System.Net.Http.dll", + "system.net.http.4.3.0.nupkg.sha512", + "system.net.http.nuspec" + ] + }, + "System.Net.Primitives/4.3.0": { + "sha512": "qOu+hDwFwoZPbzPvwut2qATe3ygjeQBDQj91xlsaqGFQUI5i4ZnZb8yyQuLGpDGivEPIt8EJkd1BVzVoP31FXA==", + "type": "package", + "path": "system.net.primitives/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Net.Primitives.dll", + "ref/netcore50/System.Net.Primitives.xml", + "ref/netcore50/de/System.Net.Primitives.xml", + "ref/netcore50/es/System.Net.Primitives.xml", + "ref/netcore50/fr/System.Net.Primitives.xml", + "ref/netcore50/it/System.Net.Primitives.xml", + "ref/netcore50/ja/System.Net.Primitives.xml", + "ref/netcore50/ko/System.Net.Primitives.xml", + "ref/netcore50/ru/System.Net.Primitives.xml", + "ref/netcore50/zh-hans/System.Net.Primitives.xml", + "ref/netcore50/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.0/System.Net.Primitives.dll", + "ref/netstandard1.0/System.Net.Primitives.xml", + "ref/netstandard1.0/de/System.Net.Primitives.xml", + "ref/netstandard1.0/es/System.Net.Primitives.xml", + "ref/netstandard1.0/fr/System.Net.Primitives.xml", + "ref/netstandard1.0/it/System.Net.Primitives.xml", + "ref/netstandard1.0/ja/System.Net.Primitives.xml", + "ref/netstandard1.0/ko/System.Net.Primitives.xml", + "ref/netstandard1.0/ru/System.Net.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.1/System.Net.Primitives.dll", + "ref/netstandard1.1/System.Net.Primitives.xml", + "ref/netstandard1.1/de/System.Net.Primitives.xml", + "ref/netstandard1.1/es/System.Net.Primitives.xml", + "ref/netstandard1.1/fr/System.Net.Primitives.xml", + "ref/netstandard1.1/it/System.Net.Primitives.xml", + "ref/netstandard1.1/ja/System.Net.Primitives.xml", + "ref/netstandard1.1/ko/System.Net.Primitives.xml", + "ref/netstandard1.1/ru/System.Net.Primitives.xml", + "ref/netstandard1.1/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.1/zh-hant/System.Net.Primitives.xml", + "ref/netstandard1.3/System.Net.Primitives.dll", + "ref/netstandard1.3/System.Net.Primitives.xml", + "ref/netstandard1.3/de/System.Net.Primitives.xml", + "ref/netstandard1.3/es/System.Net.Primitives.xml", + "ref/netstandard1.3/fr/System.Net.Primitives.xml", + "ref/netstandard1.3/it/System.Net.Primitives.xml", + "ref/netstandard1.3/ja/System.Net.Primitives.xml", + "ref/netstandard1.3/ko/System.Net.Primitives.xml", + "ref/netstandard1.3/ru/System.Net.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.Net.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.Net.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.net.primitives.4.3.0.nupkg.sha512", + "system.net.primitives.nuspec" + ] + }, + "System.Net.WebSockets.WebSocketProtocol/4.5.1": { + "sha512": "ME9tj5H/VM0SJW1Qq9zGcUxILhR+OBCNQEmEocoVxRwh5Y/H+Azob2dCP/7Tfk1ag7PmKZ1f5Iqv1ptgDYTHlQ==", + "type": "package", + "path": "system.net.websockets.websocketprotocol/4.5.1", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netcoreapp2.1/System.Net.WebSockets.WebSocketProtocol.dll", + "lib/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.dll", + "ref/netstandard2.0/System.Net.WebSockets.WebSocketProtocol.dll", + "system.net.websockets.websocketprotocol.4.5.1.nupkg.sha512", + "system.net.websockets.websocketprotocol.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Numerics.Vectors/4.5.0": { + "sha512": "MNcaYxUJvUcoXOa+jgKl/GDw/Mh+wMrxDjW4dre7qrp35LUGTjUBNtZsNjxsWX592ocdyqt1X5hMJB+5OStoYw==", + "type": "package", + "path": "system.numerics.vectors/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Numerics.Vectors.dll", + "lib/net46/System.Numerics.Vectors.xml", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.0/System.Numerics.Vectors.dll", + "lib/netstandard1.0/System.Numerics.Vectors.xml", + "lib/netstandard2.0/System.Numerics.Vectors.dll", + "lib/netstandard2.0/System.Numerics.Vectors.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.xml", + "lib/uap10.0.16299/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/System.Numerics.Vectors.dll", + "ref/net45/System.Numerics.Vectors.xml", + "ref/net46/System.Numerics.Vectors.dll", + "ref/net46/System.Numerics.Vectors.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.0/System.Numerics.Vectors.dll", + "ref/netstandard1.0/System.Numerics.Vectors.xml", + "ref/netstandard2.0/System.Numerics.Vectors.dll", + "ref/netstandard2.0/System.Numerics.Vectors.xml", + "ref/uap10.0.16299/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.numerics.vectors.4.5.0.nupkg.sha512", + "system.numerics.vectors.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.ObjectModel/4.3.0": { + "sha512": "bdX+80eKv9bN6K4N+d77OankKHGn6CH711a6fcOpMQu2Fckp/Ft4L/kW9WznHpyR0NRAvJutzOMHNNlBGvxQzQ==", + "type": "package", + "path": "system.objectmodel/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.ObjectModel.dll", + "lib/netstandard1.3/System.ObjectModel.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.ObjectModel.dll", + "ref/netcore50/System.ObjectModel.xml", + "ref/netcore50/de/System.ObjectModel.xml", + "ref/netcore50/es/System.ObjectModel.xml", + "ref/netcore50/fr/System.ObjectModel.xml", + "ref/netcore50/it/System.ObjectModel.xml", + "ref/netcore50/ja/System.ObjectModel.xml", + "ref/netcore50/ko/System.ObjectModel.xml", + "ref/netcore50/ru/System.ObjectModel.xml", + "ref/netcore50/zh-hans/System.ObjectModel.xml", + "ref/netcore50/zh-hant/System.ObjectModel.xml", + "ref/netstandard1.0/System.ObjectModel.dll", + "ref/netstandard1.0/System.ObjectModel.xml", + "ref/netstandard1.0/de/System.ObjectModel.xml", + "ref/netstandard1.0/es/System.ObjectModel.xml", + "ref/netstandard1.0/fr/System.ObjectModel.xml", + "ref/netstandard1.0/it/System.ObjectModel.xml", + "ref/netstandard1.0/ja/System.ObjectModel.xml", + "ref/netstandard1.0/ko/System.ObjectModel.xml", + "ref/netstandard1.0/ru/System.ObjectModel.xml", + "ref/netstandard1.0/zh-hans/System.ObjectModel.xml", + "ref/netstandard1.0/zh-hant/System.ObjectModel.xml", + "ref/netstandard1.3/System.ObjectModel.dll", + "ref/netstandard1.3/System.ObjectModel.xml", + "ref/netstandard1.3/de/System.ObjectModel.xml", + "ref/netstandard1.3/es/System.ObjectModel.xml", + "ref/netstandard1.3/fr/System.ObjectModel.xml", + "ref/netstandard1.3/it/System.ObjectModel.xml", + "ref/netstandard1.3/ja/System.ObjectModel.xml", + "ref/netstandard1.3/ko/System.ObjectModel.xml", + "ref/netstandard1.3/ru/System.ObjectModel.xml", + "ref/netstandard1.3/zh-hans/System.ObjectModel.xml", + "ref/netstandard1.3/zh-hant/System.ObjectModel.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.objectmodel.4.3.0.nupkg.sha512", + "system.objectmodel.nuspec" + ] + }, + "System.Private.DataContractSerialization/4.3.0": { + "sha512": "yDaJ2x3mMmjdZEDB4IbezSnCsnjQ4BxinKhRAaP6kEgL6Bb6jANWphs5SzyD8imqeC/3FxgsuXT6ykkiH1uUmA==", + "type": "package", + "path": "system.private.datacontractserialization/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.3/System.Private.DataContractSerialization.dll", + "ref/netstandard/_._", + "runtimes/aot/lib/netcore50/System.Private.DataContractSerialization.dll", + "system.private.datacontractserialization.4.3.0.nupkg.sha512", + "system.private.datacontractserialization.nuspec" + ] + }, + "System.Reflection/4.3.0": { + "sha512": "KMiAFoW7MfJGa9nDFNcfu+FpEdiHpWgTcS2HdMpDvt9saK3y/G4GwprPyzqjFH9NTaGPQeWNHU+iDlDILj96aQ==", + "type": "package", + "path": "system.reflection/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Reflection.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Reflection.dll", + "ref/netcore50/System.Reflection.dll", + "ref/netcore50/System.Reflection.xml", + "ref/netcore50/de/System.Reflection.xml", + "ref/netcore50/es/System.Reflection.xml", + "ref/netcore50/fr/System.Reflection.xml", + "ref/netcore50/it/System.Reflection.xml", + "ref/netcore50/ja/System.Reflection.xml", + "ref/netcore50/ko/System.Reflection.xml", + "ref/netcore50/ru/System.Reflection.xml", + "ref/netcore50/zh-hans/System.Reflection.xml", + "ref/netcore50/zh-hant/System.Reflection.xml", + "ref/netstandard1.0/System.Reflection.dll", + "ref/netstandard1.0/System.Reflection.xml", + "ref/netstandard1.0/de/System.Reflection.xml", + "ref/netstandard1.0/es/System.Reflection.xml", + "ref/netstandard1.0/fr/System.Reflection.xml", + "ref/netstandard1.0/it/System.Reflection.xml", + "ref/netstandard1.0/ja/System.Reflection.xml", + "ref/netstandard1.0/ko/System.Reflection.xml", + "ref/netstandard1.0/ru/System.Reflection.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.xml", + "ref/netstandard1.3/System.Reflection.dll", + "ref/netstandard1.3/System.Reflection.xml", + "ref/netstandard1.3/de/System.Reflection.xml", + "ref/netstandard1.3/es/System.Reflection.xml", + "ref/netstandard1.3/fr/System.Reflection.xml", + "ref/netstandard1.3/it/System.Reflection.xml", + "ref/netstandard1.3/ja/System.Reflection.xml", + "ref/netstandard1.3/ko/System.Reflection.xml", + "ref/netstandard1.3/ru/System.Reflection.xml", + "ref/netstandard1.3/zh-hans/System.Reflection.xml", + "ref/netstandard1.3/zh-hant/System.Reflection.xml", + "ref/netstandard1.5/System.Reflection.dll", + "ref/netstandard1.5/System.Reflection.xml", + "ref/netstandard1.5/de/System.Reflection.xml", + "ref/netstandard1.5/es/System.Reflection.xml", + "ref/netstandard1.5/fr/System.Reflection.xml", + "ref/netstandard1.5/it/System.Reflection.xml", + "ref/netstandard1.5/ja/System.Reflection.xml", + "ref/netstandard1.5/ko/System.Reflection.xml", + "ref/netstandard1.5/ru/System.Reflection.xml", + "ref/netstandard1.5/zh-hans/System.Reflection.xml", + "ref/netstandard1.5/zh-hant/System.Reflection.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.4.3.0.nupkg.sha512", + "system.reflection.nuspec" + ] + }, + "System.Reflection.Emit/4.3.0": { + "sha512": "228FG0jLcIwTVJyz8CLFKueVqQK36ANazUManGaJHkO0icjiIypKW7YLWLIWahyIkdh5M7mV2dJepllLyA1SKg==", + "type": "package", + "path": "system.reflection.emit/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/monotouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.dll", + "lib/netstandard1.3/System.Reflection.Emit.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/net45/_._", + "ref/netstandard1.1/System.Reflection.Emit.dll", + "ref/netstandard1.1/System.Reflection.Emit.xml", + "ref/netstandard1.1/de/System.Reflection.Emit.xml", + "ref/netstandard1.1/es/System.Reflection.Emit.xml", + "ref/netstandard1.1/fr/System.Reflection.Emit.xml", + "ref/netstandard1.1/it/System.Reflection.Emit.xml", + "ref/netstandard1.1/ja/System.Reflection.Emit.xml", + "ref/netstandard1.1/ko/System.Reflection.Emit.xml", + "ref/netstandard1.1/ru/System.Reflection.Emit.xml", + "ref/netstandard1.1/zh-hans/System.Reflection.Emit.xml", + "ref/netstandard1.1/zh-hant/System.Reflection.Emit.xml", + "ref/xamarinmac20/_._", + "system.reflection.emit.4.3.0.nupkg.sha512", + "system.reflection.emit.nuspec" + ] + }, + "System.Reflection.Emit.ILGeneration/4.3.0": { + "sha512": "59tBslAk9733NXLrUJrwNZEzbMAcu8k344OYo+wfSVygcgZ9lgBdGIzH/nrg3LYhXceynyvTc8t5/GD4Ri0/ng==", + "type": "package", + "path": "system.reflection.emit.ilgeneration/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.ILGeneration.dll", + "lib/netstandard1.3/System.Reflection.Emit.ILGeneration.dll", + "lib/portable-net45+wp8/_._", + "lib/wp80/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.dll", + "ref/netstandard1.0/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/de/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/es/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/fr/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/it/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ja/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ko/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/ru/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Emit.ILGeneration.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Emit.ILGeneration.xml", + "ref/portable-net45+wp8/_._", + "ref/wp80/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/_._", + "system.reflection.emit.ilgeneration.4.3.0.nupkg.sha512", + "system.reflection.emit.ilgeneration.nuspec" + ] + }, + "System.Reflection.Emit.Lightweight/4.3.0": { + "sha512": "oadVHGSMsTmZsAF864QYN1t1QzZjIcuKU3l2S9cZOwDdDueNTrqq1yRj7koFfIGEnKpt6NjpL3rOzRhs4ryOgA==", + "type": "package", + "path": "system.reflection.emit.lightweight/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Reflection.Emit.Lightweight.dll", + "lib/netstandard1.3/System.Reflection.Emit.Lightweight.dll", + "lib/portable-net45+wp8/_._", + "lib/wp80/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard1.0/System.Reflection.Emit.Lightweight.dll", + "ref/netstandard1.0/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/de/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/es/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/fr/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/it/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ja/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ko/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/ru/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Emit.Lightweight.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Emit.Lightweight.xml", + "ref/portable-net45+wp8/_._", + "ref/wp80/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/_._", + "system.reflection.emit.lightweight.4.3.0.nupkg.sha512", + "system.reflection.emit.lightweight.nuspec" + ] + }, + "System.Reflection.Extensions/4.3.0": { + "sha512": "rJkrJD3kBI5B712aRu4DpSIiHRtr6QlfZSQsb0hYHrDCZORXCFjQfoipo2LaMUHoT9i1B7j7MnfaEKWDFmFQNQ==", + "type": "package", + "path": "system.reflection.extensions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Extensions.dll", + "ref/netcore50/System.Reflection.Extensions.xml", + "ref/netcore50/de/System.Reflection.Extensions.xml", + "ref/netcore50/es/System.Reflection.Extensions.xml", + "ref/netcore50/fr/System.Reflection.Extensions.xml", + "ref/netcore50/it/System.Reflection.Extensions.xml", + "ref/netcore50/ja/System.Reflection.Extensions.xml", + "ref/netcore50/ko/System.Reflection.Extensions.xml", + "ref/netcore50/ru/System.Reflection.Extensions.xml", + "ref/netcore50/zh-hans/System.Reflection.Extensions.xml", + "ref/netcore50/zh-hant/System.Reflection.Extensions.xml", + "ref/netstandard1.0/System.Reflection.Extensions.dll", + "ref/netstandard1.0/System.Reflection.Extensions.xml", + "ref/netstandard1.0/de/System.Reflection.Extensions.xml", + "ref/netstandard1.0/es/System.Reflection.Extensions.xml", + "ref/netstandard1.0/fr/System.Reflection.Extensions.xml", + "ref/netstandard1.0/it/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ja/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ko/System.Reflection.Extensions.xml", + "ref/netstandard1.0/ru/System.Reflection.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.extensions.4.3.0.nupkg.sha512", + "system.reflection.extensions.nuspec" + ] + }, + "System.Reflection.Metadata/1.6.0": { + "sha512": "I4aWCii7N1bmn43vviRfJQYW6UAco1G/CcjJouvgGdb/sr2BRTSnddhaPMg2oxu9VHFn8T1z3dTLq0pna8zmtA==", + "type": "package", + "path": "system.reflection.metadata/1.6.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard1.1/System.Reflection.Metadata.dll", + "lib/netstandard1.1/System.Reflection.Metadata.xml", + "lib/netstandard2.0/System.Reflection.Metadata.dll", + "lib/netstandard2.0/System.Reflection.Metadata.xml", + "lib/portable-net45+win8/System.Reflection.Metadata.dll", + "lib/portable-net45+win8/System.Reflection.Metadata.xml", + "system.reflection.metadata.1.6.0.nupkg.sha512", + "system.reflection.metadata.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Reflection.Primitives/4.3.0": { + "sha512": "5RXItQz5As4xN2/YUDxdpsEkMhvw3e6aNveFXUn4Hl/udNTCNhnKp8lT9fnc3MhvGKh1baak5CovpuQUXHAlIA==", + "type": "package", + "path": "system.reflection.primitives/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Reflection.Primitives.dll", + "ref/netcore50/System.Reflection.Primitives.xml", + "ref/netcore50/de/System.Reflection.Primitives.xml", + "ref/netcore50/es/System.Reflection.Primitives.xml", + "ref/netcore50/fr/System.Reflection.Primitives.xml", + "ref/netcore50/it/System.Reflection.Primitives.xml", + "ref/netcore50/ja/System.Reflection.Primitives.xml", + "ref/netcore50/ko/System.Reflection.Primitives.xml", + "ref/netcore50/ru/System.Reflection.Primitives.xml", + "ref/netcore50/zh-hans/System.Reflection.Primitives.xml", + "ref/netcore50/zh-hant/System.Reflection.Primitives.xml", + "ref/netstandard1.0/System.Reflection.Primitives.dll", + "ref/netstandard1.0/System.Reflection.Primitives.xml", + "ref/netstandard1.0/de/System.Reflection.Primitives.xml", + "ref/netstandard1.0/es/System.Reflection.Primitives.xml", + "ref/netstandard1.0/fr/System.Reflection.Primitives.xml", + "ref/netstandard1.0/it/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ja/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ko/System.Reflection.Primitives.xml", + "ref/netstandard1.0/ru/System.Reflection.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Reflection.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Reflection.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.reflection.primitives.4.3.0.nupkg.sha512", + "system.reflection.primitives.nuspec" + ] + }, + "System.Reflection.TypeExtensions/4.3.0": { + "sha512": "7u6ulLcZbyxB5Gq0nMkQttcdBTx57ibzw+4IOXEfR+sXYQoHvjW5LTLyNr8O22UIMrqYbchJQJnos4eooYzYJA==", + "type": "package", + "path": "system.reflection.typeextensions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Reflection.TypeExtensions.dll", + "lib/net462/System.Reflection.TypeExtensions.dll", + "lib/netcore50/System.Reflection.TypeExtensions.dll", + "lib/netstandard1.5/System.Reflection.TypeExtensions.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Reflection.TypeExtensions.dll", + "ref/net462/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.3/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.3/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/de/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/es/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/fr/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/it/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ja/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ko/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/ru/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/zh-hans/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.3/zh-hant/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/System.Reflection.TypeExtensions.dll", + "ref/netstandard1.5/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/de/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/es/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/fr/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/it/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ja/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ko/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/ru/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/zh-hans/System.Reflection.TypeExtensions.xml", + "ref/netstandard1.5/zh-hant/System.Reflection.TypeExtensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Reflection.TypeExtensions.dll", + "system.reflection.typeextensions.4.3.0.nupkg.sha512", + "system.reflection.typeextensions.nuspec" + ] + }, + "System.Resources.ResourceManager/4.3.0": { + "sha512": "/zrcPkkWdZmI4F92gL/TPumP98AVDu/Wxr3CSJGQQ+XN6wbRZcyfSKVoPo17ilb3iOr0cCRqJInGwNMolqhS8A==", + "type": "package", + "path": "system.resources.resourcemanager/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Resources.ResourceManager.dll", + "ref/netcore50/System.Resources.ResourceManager.xml", + "ref/netcore50/de/System.Resources.ResourceManager.xml", + "ref/netcore50/es/System.Resources.ResourceManager.xml", + "ref/netcore50/fr/System.Resources.ResourceManager.xml", + "ref/netcore50/it/System.Resources.ResourceManager.xml", + "ref/netcore50/ja/System.Resources.ResourceManager.xml", + "ref/netcore50/ko/System.Resources.ResourceManager.xml", + "ref/netcore50/ru/System.Resources.ResourceManager.xml", + "ref/netcore50/zh-hans/System.Resources.ResourceManager.xml", + "ref/netcore50/zh-hant/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/System.Resources.ResourceManager.dll", + "ref/netstandard1.0/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/de/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/es/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/fr/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/it/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ja/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ko/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/ru/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/zh-hans/System.Resources.ResourceManager.xml", + "ref/netstandard1.0/zh-hant/System.Resources.ResourceManager.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.resources.resourcemanager.4.3.0.nupkg.sha512", + "system.resources.resourcemanager.nuspec" + ] + }, + "System.Runtime/4.3.0": { + "sha512": "JufQi0vPQ0xGnAczR13AUFglDyVYt4Kqnz1AZaiKZ5+GICq0/1MH/mO/eAJHt/mHW1zjKBJd7kV26SrxddAhiw==", + "type": "package", + "path": "system.runtime/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.dll", + "lib/portable-net45+win8+wp80+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.dll", + "ref/netcore50/System.Runtime.dll", + "ref/netcore50/System.Runtime.xml", + "ref/netcore50/de/System.Runtime.xml", + "ref/netcore50/es/System.Runtime.xml", + "ref/netcore50/fr/System.Runtime.xml", + "ref/netcore50/it/System.Runtime.xml", + "ref/netcore50/ja/System.Runtime.xml", + "ref/netcore50/ko/System.Runtime.xml", + "ref/netcore50/ru/System.Runtime.xml", + "ref/netcore50/zh-hans/System.Runtime.xml", + "ref/netcore50/zh-hant/System.Runtime.xml", + "ref/netstandard1.0/System.Runtime.dll", + "ref/netstandard1.0/System.Runtime.xml", + "ref/netstandard1.0/de/System.Runtime.xml", + "ref/netstandard1.0/es/System.Runtime.xml", + "ref/netstandard1.0/fr/System.Runtime.xml", + "ref/netstandard1.0/it/System.Runtime.xml", + "ref/netstandard1.0/ja/System.Runtime.xml", + "ref/netstandard1.0/ko/System.Runtime.xml", + "ref/netstandard1.0/ru/System.Runtime.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.xml", + "ref/netstandard1.2/System.Runtime.dll", + "ref/netstandard1.2/System.Runtime.xml", + "ref/netstandard1.2/de/System.Runtime.xml", + "ref/netstandard1.2/es/System.Runtime.xml", + "ref/netstandard1.2/fr/System.Runtime.xml", + "ref/netstandard1.2/it/System.Runtime.xml", + "ref/netstandard1.2/ja/System.Runtime.xml", + "ref/netstandard1.2/ko/System.Runtime.xml", + "ref/netstandard1.2/ru/System.Runtime.xml", + "ref/netstandard1.2/zh-hans/System.Runtime.xml", + "ref/netstandard1.2/zh-hant/System.Runtime.xml", + "ref/netstandard1.3/System.Runtime.dll", + "ref/netstandard1.3/System.Runtime.xml", + "ref/netstandard1.3/de/System.Runtime.xml", + "ref/netstandard1.3/es/System.Runtime.xml", + "ref/netstandard1.3/fr/System.Runtime.xml", + "ref/netstandard1.3/it/System.Runtime.xml", + "ref/netstandard1.3/ja/System.Runtime.xml", + "ref/netstandard1.3/ko/System.Runtime.xml", + "ref/netstandard1.3/ru/System.Runtime.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.xml", + "ref/netstandard1.5/System.Runtime.dll", + "ref/netstandard1.5/System.Runtime.xml", + "ref/netstandard1.5/de/System.Runtime.xml", + "ref/netstandard1.5/es/System.Runtime.xml", + "ref/netstandard1.5/fr/System.Runtime.xml", + "ref/netstandard1.5/it/System.Runtime.xml", + "ref/netstandard1.5/ja/System.Runtime.xml", + "ref/netstandard1.5/ko/System.Runtime.xml", + "ref/netstandard1.5/ru/System.Runtime.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.xml", + "ref/portable-net45+win8+wp80+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.4.3.0.nupkg.sha512", + "system.runtime.nuspec" + ] + }, + "System.Runtime.CompilerServices.Unsafe/4.5.1": { + "sha512": "qUJMNWhbm9oZ3XaMFiEMiYmRPszbnXIkRIi7+4b2Md2xZ6JUOepf0/kY3S85qistRohl9OdMe4PsO+RdG2kTIQ==", + "type": "package", + "path": "system.runtime.compilerservices.unsafe/4.5.1", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll", + "ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml", + "ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "system.runtime.compilerservices.unsafe.4.5.1.nupkg.sha512", + "system.runtime.compilerservices.unsafe.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Runtime.Extensions/4.3.0": { + "sha512": "guW0uK0fn5fcJJ1tJVXYd7/1h5F+pea1r7FLSOz/f8vPEqbR2ZAknuRDvTQ8PzAilDveOxNjSfr0CHfIQfFk8g==", + "type": "package", + "path": "system.runtime.extensions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.Extensions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.dll", + "ref/netcore50/System.Runtime.Extensions.xml", + "ref/netcore50/de/System.Runtime.Extensions.xml", + "ref/netcore50/es/System.Runtime.Extensions.xml", + "ref/netcore50/fr/System.Runtime.Extensions.xml", + "ref/netcore50/it/System.Runtime.Extensions.xml", + "ref/netcore50/ja/System.Runtime.Extensions.xml", + "ref/netcore50/ko/System.Runtime.Extensions.xml", + "ref/netcore50/ru/System.Runtime.Extensions.xml", + "ref/netcore50/zh-hans/System.Runtime.Extensions.xml", + "ref/netcore50/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.0/System.Runtime.Extensions.dll", + "ref/netstandard1.0/System.Runtime.Extensions.xml", + "ref/netstandard1.0/de/System.Runtime.Extensions.xml", + "ref/netstandard1.0/es/System.Runtime.Extensions.xml", + "ref/netstandard1.0/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.0/it/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.0/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.3/System.Runtime.Extensions.dll", + "ref/netstandard1.3/System.Runtime.Extensions.xml", + "ref/netstandard1.3/de/System.Runtime.Extensions.xml", + "ref/netstandard1.3/es/System.Runtime.Extensions.xml", + "ref/netstandard1.3/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.3/it/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.3/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Extensions.xml", + "ref/netstandard1.5/System.Runtime.Extensions.dll", + "ref/netstandard1.5/System.Runtime.Extensions.xml", + "ref/netstandard1.5/de/System.Runtime.Extensions.xml", + "ref/netstandard1.5/es/System.Runtime.Extensions.xml", + "ref/netstandard1.5/fr/System.Runtime.Extensions.xml", + "ref/netstandard1.5/it/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ja/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ko/System.Runtime.Extensions.xml", + "ref/netstandard1.5/ru/System.Runtime.Extensions.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.Extensions.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.extensions.4.3.0.nupkg.sha512", + "system.runtime.extensions.nuspec" + ] + }, + "System.Runtime.Handles/4.3.0": { + "sha512": "OKiSUN7DmTWeYb3l51A7EYaeNMnvxwE249YtZz7yooT4gOZhmTjIn48KgSsw2k2lYdLgTKNJw/ZIfSElwDRVgg==", + "type": "package", + "path": "system.runtime.handles/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/_._", + "ref/netstandard1.3/System.Runtime.Handles.dll", + "ref/netstandard1.3/System.Runtime.Handles.xml", + "ref/netstandard1.3/de/System.Runtime.Handles.xml", + "ref/netstandard1.3/es/System.Runtime.Handles.xml", + "ref/netstandard1.3/fr/System.Runtime.Handles.xml", + "ref/netstandard1.3/it/System.Runtime.Handles.xml", + "ref/netstandard1.3/ja/System.Runtime.Handles.xml", + "ref/netstandard1.3/ko/System.Runtime.Handles.xml", + "ref/netstandard1.3/ru/System.Runtime.Handles.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Handles.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Handles.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.handles.4.3.0.nupkg.sha512", + "system.runtime.handles.nuspec" + ] + }, + "System.Runtime.InteropServices/4.3.0": { + "sha512": "uv1ynXqiMK8mp1GM3jDqPCFN66eJ5w5XNomaK2XD+TuCroNTLFGeZ+WCmBMcBDyTFKou3P6cR6J/QsaqDp7fGQ==", + "type": "package", + "path": "system.runtime.interopservices/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net462/System.Runtime.InteropServices.dll", + "lib/net463/System.Runtime.InteropServices.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net462/System.Runtime.InteropServices.dll", + "ref/net463/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.dll", + "ref/netcore50/System.Runtime.InteropServices.xml", + "ref/netcore50/de/System.Runtime.InteropServices.xml", + "ref/netcore50/es/System.Runtime.InteropServices.xml", + "ref/netcore50/fr/System.Runtime.InteropServices.xml", + "ref/netcore50/it/System.Runtime.InteropServices.xml", + "ref/netcore50/ja/System.Runtime.InteropServices.xml", + "ref/netcore50/ko/System.Runtime.InteropServices.xml", + "ref/netcore50/ru/System.Runtime.InteropServices.xml", + "ref/netcore50/zh-hans/System.Runtime.InteropServices.xml", + "ref/netcore50/zh-hant/System.Runtime.InteropServices.xml", + "ref/netcoreapp1.1/System.Runtime.InteropServices.dll", + "ref/netstandard1.1/System.Runtime.InteropServices.dll", + "ref/netstandard1.1/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.1/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/System.Runtime.InteropServices.dll", + "ref/netstandard1.2/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.2/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/System.Runtime.InteropServices.dll", + "ref/netstandard1.3/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/System.Runtime.InteropServices.dll", + "ref/netstandard1.5/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/de/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/es/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/fr/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/it/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ja/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ko/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/ru/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/zh-hans/System.Runtime.InteropServices.xml", + "ref/netstandard1.5/zh-hant/System.Runtime.InteropServices.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.interopservices.4.3.0.nupkg.sha512", + "system.runtime.interopservices.nuspec" + ] + }, + "System.Runtime.InteropServices.RuntimeInformation/4.3.0": { + "sha512": "cbz4YJMqRDR7oLeMRbdYv7mYzc++17lNhScCX0goO2XpGWdvAt60CGN+FHdePUEHCe/Jy9jUlvNAiNdM+7jsOw==", + "type": "package", + "path": "system.runtime.interopservices.runtimeinformation/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/win8/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/wpa81/System.Runtime.InteropServices.RuntimeInformation.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/unix/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/net45/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/netcore50/System.Runtime.InteropServices.RuntimeInformation.dll", + "runtimes/win/lib/netstandard1.1/System.Runtime.InteropServices.RuntimeInformation.dll", + "system.runtime.interopservices.runtimeinformation.4.3.0.nupkg.sha512", + "system.runtime.interopservices.runtimeinformation.nuspec" + ] + }, + "System.Runtime.Numerics/4.3.0": { + "sha512": "yMH+MfdzHjy17l2KESnPiF2dwq7T+xLnSJar7slyimAkUh/gTrS9/UQOtv7xarskJ2/XDSNvfLGOBQPjL7PaHQ==", + "type": "package", + "path": "system.runtime.numerics/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Runtime.Numerics.dll", + "lib/netstandard1.3/System.Runtime.Numerics.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Runtime.Numerics.dll", + "ref/netcore50/System.Runtime.Numerics.xml", + "ref/netcore50/de/System.Runtime.Numerics.xml", + "ref/netcore50/es/System.Runtime.Numerics.xml", + "ref/netcore50/fr/System.Runtime.Numerics.xml", + "ref/netcore50/it/System.Runtime.Numerics.xml", + "ref/netcore50/ja/System.Runtime.Numerics.xml", + "ref/netcore50/ko/System.Runtime.Numerics.xml", + "ref/netcore50/ru/System.Runtime.Numerics.xml", + "ref/netcore50/zh-hans/System.Runtime.Numerics.xml", + "ref/netcore50/zh-hant/System.Runtime.Numerics.xml", + "ref/netstandard1.1/System.Runtime.Numerics.dll", + "ref/netstandard1.1/System.Runtime.Numerics.xml", + "ref/netstandard1.1/de/System.Runtime.Numerics.xml", + "ref/netstandard1.1/es/System.Runtime.Numerics.xml", + "ref/netstandard1.1/fr/System.Runtime.Numerics.xml", + "ref/netstandard1.1/it/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ja/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ko/System.Runtime.Numerics.xml", + "ref/netstandard1.1/ru/System.Runtime.Numerics.xml", + "ref/netstandard1.1/zh-hans/System.Runtime.Numerics.xml", + "ref/netstandard1.1/zh-hant/System.Runtime.Numerics.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.numerics.4.3.0.nupkg.sha512", + "system.runtime.numerics.nuspec" + ] + }, + "System.Runtime.Serialization.Primitives/4.3.0": { + "sha512": "Wz+0KOukJGAlXjtKr+5Xpuxf8+c8739RI1C+A2BoQZT+wMCCoMDDdO8/4IRHfaVINqL78GO8dW8G2lW/e45Mcw==", + "type": "package", + "path": "system.runtime.serialization.primitives/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.Runtime.Serialization.Primitives.dll", + "lib/netcore50/System.Runtime.Serialization.Primitives.dll", + "lib/netstandard1.3/System.Runtime.Serialization.Primitives.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.Runtime.Serialization.Primitives.dll", + "ref/netcore50/System.Runtime.Serialization.Primitives.dll", + "ref/netcore50/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/de/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/es/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/fr/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/it/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/ja/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/ko/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/ru/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/zh-hans/System.Runtime.Serialization.Primitives.xml", + "ref/netcore50/zh-hant/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/System.Runtime.Serialization.Primitives.dll", + "ref/netstandard1.0/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/de/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/es/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/fr/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/it/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/ja/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/ko/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/ru/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/System.Runtime.Serialization.Primitives.dll", + "ref/netstandard1.3/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/de/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/es/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/fr/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/it/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/ja/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/ko/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/ru/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Serialization.Primitives.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Serialization.Primitives.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Runtime.Serialization.Primitives.dll", + "system.runtime.serialization.primitives.4.3.0.nupkg.sha512", + "system.runtime.serialization.primitives.nuspec" + ] + }, + "System.Runtime.Serialization.Xml/4.3.0": { + "sha512": "nUQx/5OVgrqEba3+j7OdiofvVq9koWZAC7Z3xGI8IIViZqApWnZ5+lLcwYgTlbkobrl/Rat+Jb8GeD4WQESD2A==", + "type": "package", + "path": "system.runtime.serialization.xml/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.Runtime.Serialization.Xml.dll", + "lib/netcore50/System.Runtime.Serialization.Xml.dll", + "lib/netstandard1.3/System.Runtime.Serialization.Xml.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.Runtime.Serialization.Xml.dll", + "ref/netcore50/System.Runtime.Serialization.Xml.dll", + "ref/netcore50/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/de/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/es/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/fr/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/it/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/ja/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/ko/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/ru/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/zh-hans/System.Runtime.Serialization.Xml.xml", + "ref/netcore50/zh-hant/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/System.Runtime.Serialization.Xml.dll", + "ref/netstandard1.0/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/de/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/es/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/fr/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/it/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/ja/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/ko/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/ru/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/zh-hans/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.0/zh-hant/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/System.Runtime.Serialization.Xml.dll", + "ref/netstandard1.3/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/de/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/es/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/fr/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/it/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/ja/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/ko/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/ru/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/zh-hans/System.Runtime.Serialization.Xml.xml", + "ref/netstandard1.3/zh-hant/System.Runtime.Serialization.Xml.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.runtime.serialization.xml.4.3.0.nupkg.sha512", + "system.runtime.serialization.xml.nuspec" + ] + }, + "System.Security.AccessControl/4.5.0": { + "sha512": "aVjTe36YkO8FzfNhMLoPEzv3gF9rphoW9ngFhG/MH4zzEPLx07sNrgCLwMP4Wx2leI6qarMrGv21OwQXYUKLmw==", + "type": "package", + "path": "system.security.accesscontrol/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.AccessControl.dll", + "lib/net461/System.Security.AccessControl.dll", + "lib/netstandard1.3/System.Security.AccessControl.dll", + "lib/netstandard2.0/System.Security.AccessControl.dll", + "lib/uap10.0.16299/_._", + "ref/net46/System.Security.AccessControl.dll", + "ref/net461/System.Security.AccessControl.dll", + "ref/net461/System.Security.AccessControl.xml", + "ref/netstandard1.3/System.Security.AccessControl.dll", + "ref/netstandard1.3/System.Security.AccessControl.xml", + "ref/netstandard1.3/de/System.Security.AccessControl.xml", + "ref/netstandard1.3/es/System.Security.AccessControl.xml", + "ref/netstandard1.3/fr/System.Security.AccessControl.xml", + "ref/netstandard1.3/it/System.Security.AccessControl.xml", + "ref/netstandard1.3/ja/System.Security.AccessControl.xml", + "ref/netstandard1.3/ko/System.Security.AccessControl.xml", + "ref/netstandard1.3/ru/System.Security.AccessControl.xml", + "ref/netstandard1.3/zh-hans/System.Security.AccessControl.xml", + "ref/netstandard1.3/zh-hant/System.Security.AccessControl.xml", + "ref/netstandard2.0/System.Security.AccessControl.dll", + "ref/netstandard2.0/System.Security.AccessControl.xml", + "ref/uap10.0.16299/_._", + "runtimes/win/lib/net46/System.Security.AccessControl.dll", + "runtimes/win/lib/net461/System.Security.AccessControl.dll", + "runtimes/win/lib/netcoreapp2.0/System.Security.AccessControl.dll", + "runtimes/win/lib/netstandard1.3/System.Security.AccessControl.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.accesscontrol.4.5.0.nupkg.sha512", + "system.security.accesscontrol.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Claims/4.3.0": { + "sha512": "P/+BR/2lnc4PNDHt/TPBAWHVMLMRHsyYZbU1NphW4HIWzCggz8mJbTQQ3MKljFE7LS3WagmVFuBgoLcFzYXlkA==", + "type": "package", + "path": "system.security.claims/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Claims.dll", + "lib/netstandard1.3/System.Security.Claims.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Claims.dll", + "ref/netstandard1.3/System.Security.Claims.dll", + "ref/netstandard1.3/System.Security.Claims.xml", + "ref/netstandard1.3/de/System.Security.Claims.xml", + "ref/netstandard1.3/es/System.Security.Claims.xml", + "ref/netstandard1.3/fr/System.Security.Claims.xml", + "ref/netstandard1.3/it/System.Security.Claims.xml", + "ref/netstandard1.3/ja/System.Security.Claims.xml", + "ref/netstandard1.3/ko/System.Security.Claims.xml", + "ref/netstandard1.3/ru/System.Security.Claims.xml", + "ref/netstandard1.3/zh-hans/System.Security.Claims.xml", + "ref/netstandard1.3/zh-hant/System.Security.Claims.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.security.claims.4.3.0.nupkg.sha512", + "system.security.claims.nuspec" + ] + }, + "System.Security.Cryptography.Algorithms/4.3.0": { + "sha512": "W1kd2Y8mYSCgc3ULTAZ0hOP2dSdG5YauTb1089T0/kRcN2MpSAW1izOFROrJgxSlMn3ArsgHXagigyi+ibhevg==", + "type": "package", + "path": "system.security.cryptography.algorithms/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Algorithms.dll", + "lib/net461/System.Security.Cryptography.Algorithms.dll", + "lib/net463/System.Security.Cryptography.Algorithms.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Algorithms.dll", + "ref/net461/System.Security.Cryptography.Algorithms.dll", + "ref/net463/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.3/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.4/System.Security.Cryptography.Algorithms.dll", + "ref/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/osx/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/net463/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/netcore50/System.Security.Cryptography.Algorithms.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Algorithms.dll", + "system.security.cryptography.algorithms.4.3.0.nupkg.sha512", + "system.security.cryptography.algorithms.nuspec" + ] + }, + "System.Security.Cryptography.Cng/4.5.0": { + "sha512": "O4tqXxWCD8y1IU1VTgzbuBFwoRahrADhDUxHjwezhHCsqyFNyQ5EytjWBxu0EsZuH14b4UO2pFkG063K2h/9Ug==", + "type": "package", + "path": "system.security.cryptography.cng/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Cng.dll", + "lib/net461/System.Security.Cryptography.Cng.dll", + "lib/net462/System.Security.Cryptography.Cng.dll", + "lib/net47/System.Security.Cryptography.Cng.dll", + "lib/netcoreapp2.1/System.Security.Cryptography.Cng.dll", + "lib/netstandard1.3/System.Security.Cryptography.Cng.dll", + "lib/netstandard1.4/System.Security.Cryptography.Cng.dll", + "lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "lib/netstandard2.0/System.Security.Cryptography.Cng.dll", + "lib/uap10.0.16299/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Cng.dll", + "ref/net461/System.Security.Cryptography.Cng.dll", + "ref/net461/System.Security.Cryptography.Cng.xml", + "ref/net462/System.Security.Cryptography.Cng.dll", + "ref/net462/System.Security.Cryptography.Cng.xml", + "ref/net47/System.Security.Cryptography.Cng.dll", + "ref/net47/System.Security.Cryptography.Cng.xml", + "ref/netcoreapp2.0/System.Security.Cryptography.Cng.dll", + "ref/netcoreapp2.0/System.Security.Cryptography.Cng.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Cng.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Cng.xml", + "ref/netstandard1.3/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.4/System.Security.Cryptography.Cng.dll", + "ref/netstandard1.6/System.Security.Cryptography.Cng.dll", + "ref/netstandard2.0/System.Security.Cryptography.Cng.dll", + "ref/netstandard2.0/System.Security.Cryptography.Cng.xml", + "ref/uap10.0.16299/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/win/lib/net46/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net462/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/net47/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netcoreapp2.0/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netcoreapp2.1/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.4/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.Cng.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.cryptography.cng.4.5.0.nupkg.sha512", + "system.security.cryptography.cng.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Cryptography.Csp/4.3.0": { + "sha512": "X4s/FCkEUnRGnwR3aSfVIkldBmtURMhmexALNTwpjklzxWU7yjMk7GHLKOZTNkgnWnE0q7+BCf9N2LVRWxewaA==", + "type": "package", + "path": "system.security.cryptography.csp/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Csp.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Csp.dll", + "ref/netstandard1.3/System.Security.Cryptography.Csp.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Csp.dll", + "runtimes/win/lib/netcore50/_._", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Csp.dll", + "system.security.cryptography.csp.4.3.0.nupkg.sha512", + "system.security.cryptography.csp.nuspec" + ] + }, + "System.Security.Cryptography.Encoding/4.3.0": { + "sha512": "1DEWjZZly9ae9C79vFwqaO5kaOlI5q+3/55ohmq/7dpDyDfc8lYe7YVxJUZ5MF/NtbkRjwFRo14yM4OEo9EmDw==", + "type": "package", + "path": "system.security.cryptography.encoding/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Encoding.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Encoding.dll", + "ref/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "ref/netstandard1.3/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/de/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/es/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/fr/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/it/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ja/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ko/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/ru/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/zh-hans/System.Security.Cryptography.Encoding.xml", + "ref/netstandard1.3/zh-hant/System.Security.Cryptography.Encoding.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.Encoding.dll", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Encoding.dll", + "system.security.cryptography.encoding.4.3.0.nupkg.sha512", + "system.security.cryptography.encoding.nuspec" + ] + }, + "System.Security.Cryptography.OpenSsl/4.3.0": { + "sha512": "h4CEgOgv5PKVF/HwaHzJRiVboL2THYCou97zpmhjghx5frc7fIvlkY1jL+lnIQyChrJDMNEXS6r7byGif8Cy4w==", + "type": "package", + "path": "system.security.cryptography.openssl/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "ref/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.OpenSsl.dll", + "system.security.cryptography.openssl.4.3.0.nupkg.sha512", + "system.security.cryptography.openssl.nuspec" + ] + }, + "System.Security.Cryptography.Pkcs/4.5.0": { + "sha512": "1vv2x8cok3NAolee/nb6X/6PnTx+OBKUM3kt1Rlgg04uQ+IMwjc88xFIfJdwbYcvjlOtzT7CHba1pqVAu9tj/w==", + "type": "package", + "path": "system.security.cryptography.pkcs/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.Cryptography.Pkcs.dll", + "lib/net461/System.Security.Cryptography.Pkcs.dll", + "lib/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll", + "lib/netstandard1.3/System.Security.Cryptography.Pkcs.dll", + "lib/netstandard2.0/System.Security.Cryptography.Pkcs.dll", + "ref/net46/System.Security.Cryptography.Pkcs.dll", + "ref/net461/System.Security.Cryptography.Pkcs.dll", + "ref/net461/System.Security.Cryptography.Pkcs.xml", + "ref/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll", + "ref/netcoreapp2.1/System.Security.Cryptography.Pkcs.xml", + "ref/netstandard1.3/System.Security.Cryptography.Pkcs.dll", + "ref/netstandard2.0/System.Security.Cryptography.Pkcs.dll", + "ref/netstandard2.0/System.Security.Cryptography.Pkcs.xml", + "runtimes/win/lib/net46/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netcoreapp2.1/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.Pkcs.dll", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.Pkcs.dll", + "system.security.cryptography.pkcs.4.5.0.nupkg.sha512", + "system.security.cryptography.pkcs.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Cryptography.Primitives/4.3.0": { + "sha512": "7bDIyVFNL/xKeFHjhobUAQqSpJq9YTOpbEs6mR233Et01STBMXNAc/V+BM6dwYGc95gVh/Zf+iVXWzj3mE8DWg==", + "type": "package", + "path": "system.security.cryptography.primitives/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.Primitives.dll", + "lib/netstandard1.3/System.Security.Cryptography.Primitives.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.Primitives.dll", + "ref/netstandard1.3/System.Security.Cryptography.Primitives.dll", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.security.cryptography.primitives.4.3.0.nupkg.sha512", + "system.security.cryptography.primitives.nuspec" + ] + }, + "System.Security.Cryptography.X509Certificates/4.3.0": { + "sha512": "t2Tmu6Y2NtJ2um0RtcuhP7ZdNNxXEgUm2JeoA/0NvlMjAhKCnM1NX07TDl3244mVp3QU6LPEhT3HTtH1uF7IYw==", + "type": "package", + "path": "system.security.cryptography.x509certificates/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.X509Certificates.dll", + "lib/net461/System.Security.Cryptography.X509Certificates.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.X509Certificates.dll", + "ref/net461/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.3/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/de/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/es/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/fr/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/it/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ja/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ko/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/ru/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/zh-hans/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.3/zh-hant/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.dll", + "ref/netstandard1.4/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/de/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/es/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/fr/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/it/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ja/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ko/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/ru/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/zh-hans/System.Security.Cryptography.X509Certificates.xml", + "ref/netstandard1.4/zh-hant/System.Security.Cryptography.X509Certificates.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/unix/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/net46/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/netcore50/System.Security.Cryptography.X509Certificates.dll", + "runtimes/win/lib/netstandard1.6/System.Security.Cryptography.X509Certificates.dll", + "system.security.cryptography.x509certificates.4.3.0.nupkg.sha512", + "system.security.cryptography.x509certificates.nuspec" + ] + }, + "System.Security.Cryptography.Xml/4.5.0": { + "sha512": "UvxfrEg7YG7U6BQO8WdQ4Nu1LFt2lqYQnoZefaK/2RDvjYdJ+norsVe4dwOqo14XiipgYY5xNUo6VhQXNbl2vg==", + "type": "package", + "path": "system.security.cryptography.xml/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Security.Cryptography.Xml.dll", + "lib/netstandard2.0/System.Security.Cryptography.Xml.dll", + "ref/net461/System.Security.Cryptography.Xml.dll", + "ref/net461/System.Security.Cryptography.Xml.xml", + "ref/netstandard2.0/System.Security.Cryptography.Xml.dll", + "ref/netstandard2.0/System.Security.Cryptography.Xml.xml", + "system.security.cryptography.xml.4.5.0.nupkg.sha512", + "system.security.cryptography.xml.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Permissions/4.5.0": { + "sha512": "vDQ7q30Soe0a1cPhvxn+7IFmMeTG5IP+hTQrnKQDjTNpD2epqwbZSzMM2Git5TXBr4Kwwhc/0SEtJY0qPoiegA==", + "type": "package", + "path": "system.security.permissions/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Security.Permissions.dll", + "lib/netstandard2.0/System.Security.Permissions.dll", + "ref/net461/System.Security.Permissions.dll", + "ref/net461/System.Security.Permissions.xml", + "ref/netstandard2.0/System.Security.Permissions.dll", + "ref/netstandard2.0/System.Security.Permissions.xml", + "system.security.permissions.4.5.0.nupkg.sha512", + "system.security.permissions.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Principal/4.3.0": { + "sha512": "I1tkfQlAoMM2URscUtpcRo/hX0jinXx6a/KUtEQoz3owaYwl3qwsO8cbzYVVnjxrzxjHo3nJC+62uolgeGIS9A==", + "type": "package", + "path": "system.security.principal/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Security.Principal.dll", + "lib/netstandard1.0/System.Security.Principal.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Security.Principal.dll", + "ref/netcore50/System.Security.Principal.xml", + "ref/netcore50/de/System.Security.Principal.xml", + "ref/netcore50/es/System.Security.Principal.xml", + "ref/netcore50/fr/System.Security.Principal.xml", + "ref/netcore50/it/System.Security.Principal.xml", + "ref/netcore50/ja/System.Security.Principal.xml", + "ref/netcore50/ko/System.Security.Principal.xml", + "ref/netcore50/ru/System.Security.Principal.xml", + "ref/netcore50/zh-hans/System.Security.Principal.xml", + "ref/netcore50/zh-hant/System.Security.Principal.xml", + "ref/netstandard1.0/System.Security.Principal.dll", + "ref/netstandard1.0/System.Security.Principal.xml", + "ref/netstandard1.0/de/System.Security.Principal.xml", + "ref/netstandard1.0/es/System.Security.Principal.xml", + "ref/netstandard1.0/fr/System.Security.Principal.xml", + "ref/netstandard1.0/it/System.Security.Principal.xml", + "ref/netstandard1.0/ja/System.Security.Principal.xml", + "ref/netstandard1.0/ko/System.Security.Principal.xml", + "ref/netstandard1.0/ru/System.Security.Principal.xml", + "ref/netstandard1.0/zh-hans/System.Security.Principal.xml", + "ref/netstandard1.0/zh-hant/System.Security.Principal.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.security.principal.4.3.0.nupkg.sha512", + "system.security.principal.nuspec" + ] + }, + "System.Security.Principal.Windows/4.5.0": { + "sha512": "WA9ETb/pY3BjnxKjBUHEgO59B7d/nnmjHFsqjJ2eDT780nD769CT1/bw2ia0Z6W7NqlcqokE6sKGKa6uw88XGA==", + "type": "package", + "path": "system.security.principal.windows/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.Principal.Windows.dll", + "lib/net461/System.Security.Principal.Windows.dll", + "lib/netstandard1.3/System.Security.Principal.Windows.dll", + "lib/netstandard2.0/System.Security.Principal.Windows.dll", + "lib/uap10.0.16299/_._", + "ref/net46/System.Security.Principal.Windows.dll", + "ref/net461/System.Security.Principal.Windows.dll", + "ref/net461/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/System.Security.Principal.Windows.dll", + "ref/netstandard1.3/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/de/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/es/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/fr/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/it/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ja/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ko/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ru/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/zh-hans/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/zh-hant/System.Security.Principal.Windows.xml", + "ref/netstandard2.0/System.Security.Principal.Windows.dll", + "ref/netstandard2.0/System.Security.Principal.Windows.xml", + "ref/uap10.0.16299/_._", + "runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.dll", + "runtimes/win/lib/net46/System.Security.Principal.Windows.dll", + "runtimes/win/lib/net461/System.Security.Principal.Windows.dll", + "runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.dll", + "runtimes/win/lib/netstandard1.3/System.Security.Principal.Windows.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.principal.windows.4.5.0.nupkg.sha512", + "system.security.principal.windows.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Text.Encoding/4.3.0": { + "sha512": "BiIg+KWaSDOITze6jGQynxg64naAPtqGHBwDrLaCtixsa5bKiR8dpPOHA7ge3C0JJQizJE+sfkz1wV+BAKAYZw==", + "type": "package", + "path": "system.text.encoding/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.dll", + "ref/netcore50/System.Text.Encoding.xml", + "ref/netcore50/de/System.Text.Encoding.xml", + "ref/netcore50/es/System.Text.Encoding.xml", + "ref/netcore50/fr/System.Text.Encoding.xml", + "ref/netcore50/it/System.Text.Encoding.xml", + "ref/netcore50/ja/System.Text.Encoding.xml", + "ref/netcore50/ko/System.Text.Encoding.xml", + "ref/netcore50/ru/System.Text.Encoding.xml", + "ref/netcore50/zh-hans/System.Text.Encoding.xml", + "ref/netcore50/zh-hant/System.Text.Encoding.xml", + "ref/netstandard1.0/System.Text.Encoding.dll", + "ref/netstandard1.0/System.Text.Encoding.xml", + "ref/netstandard1.0/de/System.Text.Encoding.xml", + "ref/netstandard1.0/es/System.Text.Encoding.xml", + "ref/netstandard1.0/fr/System.Text.Encoding.xml", + "ref/netstandard1.0/it/System.Text.Encoding.xml", + "ref/netstandard1.0/ja/System.Text.Encoding.xml", + "ref/netstandard1.0/ko/System.Text.Encoding.xml", + "ref/netstandard1.0/ru/System.Text.Encoding.xml", + "ref/netstandard1.0/zh-hans/System.Text.Encoding.xml", + "ref/netstandard1.0/zh-hant/System.Text.Encoding.xml", + "ref/netstandard1.3/System.Text.Encoding.dll", + "ref/netstandard1.3/System.Text.Encoding.xml", + "ref/netstandard1.3/de/System.Text.Encoding.xml", + "ref/netstandard1.3/es/System.Text.Encoding.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.xml", + "ref/netstandard1.3/it/System.Text.Encoding.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.encoding.4.3.0.nupkg.sha512", + "system.text.encoding.nuspec" + ] + }, + "System.Text.Encoding.CodePages/4.5.0": { + "sha512": "16EVkWmNnoH3/Yj9c5s5VuLK5Uv/Dnkc3P2kMmnD7wJcUuvcHVvM2IhVJanf2hHRZUitH+cIkPCPHrBoCXc7Rw==", + "type": "package", + "path": "system.text.encoding.codepages/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Text.Encoding.CodePages.dll", + "lib/net461/System.Text.Encoding.CodePages.dll", + "lib/netstandard1.3/System.Text.Encoding.CodePages.dll", + "lib/netstandard2.0/System.Text.Encoding.CodePages.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/netstandard1.3/System.Text.Encoding.CodePages.dll", + "ref/netstandard1.3/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/de/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/es/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/it/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.CodePages.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.CodePages.xml", + "ref/netstandard2.0/System.Text.Encoding.CodePages.dll", + "ref/netstandard2.0/System.Text.Encoding.CodePages.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/win/lib/net461/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netcoreapp2.0/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netstandard1.3/System.Text.Encoding.CodePages.dll", + "runtimes/win/lib/netstandard2.0/System.Text.Encoding.CodePages.dll", + "system.text.encoding.codepages.4.5.0.nupkg.sha512", + "system.text.encoding.codepages.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Text.Encoding.Extensions/4.3.0": { + "sha512": "YVMK0Bt/A43RmwizJoZ22ei2nmrhobgeiYwFzC4YAN+nue8RF6djXDMog0UCn+brerQoYVyaS+ghy9P/MUVcmw==", + "type": "package", + "path": "system.text.encoding.extensions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Text.Encoding.Extensions.dll", + "ref/netcore50/System.Text.Encoding.Extensions.xml", + "ref/netcore50/de/System.Text.Encoding.Extensions.xml", + "ref/netcore50/es/System.Text.Encoding.Extensions.xml", + "ref/netcore50/fr/System.Text.Encoding.Extensions.xml", + "ref/netcore50/it/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ja/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ko/System.Text.Encoding.Extensions.xml", + "ref/netcore50/ru/System.Text.Encoding.Extensions.xml", + "ref/netcore50/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netcore50/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/System.Text.Encoding.Extensions.dll", + "ref/netstandard1.0/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/de/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/es/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/fr/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/it/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ja/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ko/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/ru/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.0/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/System.Text.Encoding.Extensions.dll", + "ref/netstandard1.3/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/de/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/es/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/fr/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/it/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ja/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ko/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/ru/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/zh-hans/System.Text.Encoding.Extensions.xml", + "ref/netstandard1.3/zh-hant/System.Text.Encoding.Extensions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.encoding.extensions.4.3.0.nupkg.sha512", + "system.text.encoding.extensions.nuspec" + ] + }, + "System.Text.Encodings.Web/4.5.0": { + "sha512": "JF+wDdfFiRl3rz3dPMfR6aR568AW2J5CUMmhSflgHDz4zbVK4/00ax8UHnHyEMvblPewgNugjuA4oyoL8Pex2g==", + "type": "package", + "path": "system.text.encodings.web/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netstandard1.0/System.Text.Encodings.Web.dll", + "lib/netstandard1.0/System.Text.Encodings.Web.xml", + "lib/netstandard2.0/System.Text.Encodings.Web.dll", + "lib/netstandard2.0/System.Text.Encodings.Web.xml", + "system.text.encodings.web.4.5.0.nupkg.sha512", + "system.text.encodings.web.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Text.RegularExpressions/4.3.0": { + "sha512": "RpT2DA+L660cBt1FssIE9CAGpLFdFPuheB7pLpKpn6ZXNby7jDERe8Ua/Ne2xGiwLVG2JOqziiaVCGDon5sKFA==", + "type": "package", + "path": "system.text.regularexpressions/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net463/System.Text.RegularExpressions.dll", + "lib/netcore50/System.Text.RegularExpressions.dll", + "lib/netstandard1.6/System.Text.RegularExpressions.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net463/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.dll", + "ref/netcore50/System.Text.RegularExpressions.xml", + "ref/netcore50/de/System.Text.RegularExpressions.xml", + "ref/netcore50/es/System.Text.RegularExpressions.xml", + "ref/netcore50/fr/System.Text.RegularExpressions.xml", + "ref/netcore50/it/System.Text.RegularExpressions.xml", + "ref/netcore50/ja/System.Text.RegularExpressions.xml", + "ref/netcore50/ko/System.Text.RegularExpressions.xml", + "ref/netcore50/ru/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hans/System.Text.RegularExpressions.xml", + "ref/netcore50/zh-hant/System.Text.RegularExpressions.xml", + "ref/netcoreapp1.1/System.Text.RegularExpressions.dll", + "ref/netstandard1.0/System.Text.RegularExpressions.dll", + "ref/netstandard1.0/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.0/zh-hant/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/System.Text.RegularExpressions.dll", + "ref/netstandard1.3/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.3/zh-hant/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/System.Text.RegularExpressions.dll", + "ref/netstandard1.6/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/de/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/es/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/fr/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/it/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ja/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ko/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/ru/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/zh-hans/System.Text.RegularExpressions.xml", + "ref/netstandard1.6/zh-hant/System.Text.RegularExpressions.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.text.regularexpressions.4.3.0.nupkg.sha512", + "system.text.regularexpressions.nuspec" + ] + }, + "System.Threading/4.3.0": { + "sha512": "VkUS0kOBcUf3Wwm0TSbrevDDZ6BlM+b/HRiapRFWjM5O0NS0LviG0glKmFK+hhPDd1XFeSdU1GmlLhb2CoVpIw==", + "type": "package", + "path": "system.threading/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Threading.dll", + "lib/netstandard1.3/System.Threading.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.dll", + "ref/netcore50/System.Threading.xml", + "ref/netcore50/de/System.Threading.xml", + "ref/netcore50/es/System.Threading.xml", + "ref/netcore50/fr/System.Threading.xml", + "ref/netcore50/it/System.Threading.xml", + "ref/netcore50/ja/System.Threading.xml", + "ref/netcore50/ko/System.Threading.xml", + "ref/netcore50/ru/System.Threading.xml", + "ref/netcore50/zh-hans/System.Threading.xml", + "ref/netcore50/zh-hant/System.Threading.xml", + "ref/netstandard1.0/System.Threading.dll", + "ref/netstandard1.0/System.Threading.xml", + "ref/netstandard1.0/de/System.Threading.xml", + "ref/netstandard1.0/es/System.Threading.xml", + "ref/netstandard1.0/fr/System.Threading.xml", + "ref/netstandard1.0/it/System.Threading.xml", + "ref/netstandard1.0/ja/System.Threading.xml", + "ref/netstandard1.0/ko/System.Threading.xml", + "ref/netstandard1.0/ru/System.Threading.xml", + "ref/netstandard1.0/zh-hans/System.Threading.xml", + "ref/netstandard1.0/zh-hant/System.Threading.xml", + "ref/netstandard1.3/System.Threading.dll", + "ref/netstandard1.3/System.Threading.xml", + "ref/netstandard1.3/de/System.Threading.xml", + "ref/netstandard1.3/es/System.Threading.xml", + "ref/netstandard1.3/fr/System.Threading.xml", + "ref/netstandard1.3/it/System.Threading.xml", + "ref/netstandard1.3/ja/System.Threading.xml", + "ref/netstandard1.3/ko/System.Threading.xml", + "ref/netstandard1.3/ru/System.Threading.xml", + "ref/netstandard1.3/zh-hans/System.Threading.xml", + "ref/netstandard1.3/zh-hant/System.Threading.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Threading.dll", + "system.threading.4.3.0.nupkg.sha512", + "system.threading.nuspec" + ] + }, + "System.Threading.Channels/4.5.0": { + "sha512": "Js7f30DXMo1plMo32fOpKF7AhCmuKyOKDT1fSayntGGOVfF5V/xKVu1UPI3N+/hTXuqKKgB++eACPZ120uLpGg==", + "type": "package", + "path": "system.threading.channels/4.5.0", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/netcoreapp2.1/System.Threading.Channels.dll", + "lib/netcoreapp2.1/System.Threading.Channels.xml", + "lib/netstandard1.3/System.Threading.Channels.dll", + "lib/netstandard1.3/System.Threading.Channels.xml", + "lib/netstandard2.0/System.Threading.Channels.dll", + "lib/netstandard2.0/System.Threading.Channels.xml", + "system.threading.channels.4.5.0.nupkg.sha512", + "system.threading.channels.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Threading.Tasks/4.3.0": { + "sha512": "LbSxKEdOUhVe8BezB/9uOGGppt+nZf6e1VFyw6v3DN6lqitm0OSn2uXMOdtP0M3W4iMcqcivm2J6UgqiwwnXiA==", + "type": "package", + "path": "system.threading.tasks/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.Tasks.dll", + "ref/netcore50/System.Threading.Tasks.xml", + "ref/netcore50/de/System.Threading.Tasks.xml", + "ref/netcore50/es/System.Threading.Tasks.xml", + "ref/netcore50/fr/System.Threading.Tasks.xml", + "ref/netcore50/it/System.Threading.Tasks.xml", + "ref/netcore50/ja/System.Threading.Tasks.xml", + "ref/netcore50/ko/System.Threading.Tasks.xml", + "ref/netcore50/ru/System.Threading.Tasks.xml", + "ref/netcore50/zh-hans/System.Threading.Tasks.xml", + "ref/netcore50/zh-hant/System.Threading.Tasks.xml", + "ref/netstandard1.0/System.Threading.Tasks.dll", + "ref/netstandard1.0/System.Threading.Tasks.xml", + "ref/netstandard1.0/de/System.Threading.Tasks.xml", + "ref/netstandard1.0/es/System.Threading.Tasks.xml", + "ref/netstandard1.0/fr/System.Threading.Tasks.xml", + "ref/netstandard1.0/it/System.Threading.Tasks.xml", + "ref/netstandard1.0/ja/System.Threading.Tasks.xml", + "ref/netstandard1.0/ko/System.Threading.Tasks.xml", + "ref/netstandard1.0/ru/System.Threading.Tasks.xml", + "ref/netstandard1.0/zh-hans/System.Threading.Tasks.xml", + "ref/netstandard1.0/zh-hant/System.Threading.Tasks.xml", + "ref/netstandard1.3/System.Threading.Tasks.dll", + "ref/netstandard1.3/System.Threading.Tasks.xml", + "ref/netstandard1.3/de/System.Threading.Tasks.xml", + "ref/netstandard1.3/es/System.Threading.Tasks.xml", + "ref/netstandard1.3/fr/System.Threading.Tasks.xml", + "ref/netstandard1.3/it/System.Threading.Tasks.xml", + "ref/netstandard1.3/ja/System.Threading.Tasks.xml", + "ref/netstandard1.3/ko/System.Threading.Tasks.xml", + "ref/netstandard1.3/ru/System.Threading.Tasks.xml", + "ref/netstandard1.3/zh-hans/System.Threading.Tasks.xml", + "ref/netstandard1.3/zh-hant/System.Threading.Tasks.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.tasks.4.3.0.nupkg.sha512", + "system.threading.tasks.nuspec" + ] + }, + "System.Threading.Tasks.Extensions/4.5.1": { + "sha512": "rckdhLJtzQ3EI+0BGuq7dUVtCSnerqAoAmL3S6oMRZ4VMZTL3Rq9DS8IDW57c6PYVebA4O0NbSA1BDvyE18UMA==", + "type": "package", + "path": "system.threading.tasks.extensions/4.5.1", + "files": [ + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.dll", + "lib/netstandard1.0/System.Threading.Tasks.Extensions.xml", + "lib/netstandard2.0/System.Threading.Tasks.Extensions.dll", + "lib/netstandard2.0/System.Threading.Tasks.Extensions.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/netcoreapp2.1/_._", + "ref/netstandard1.0/System.Threading.Tasks.Extensions.dll", + "ref/netstandard1.0/System.Threading.Tasks.Extensions.xml", + "ref/netstandard2.0/System.Threading.Tasks.Extensions.dll", + "ref/netstandard2.0/System.Threading.Tasks.Extensions.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.tasks.extensions.4.5.1.nupkg.sha512", + "system.threading.tasks.extensions.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Threading.Tasks.Parallel/4.3.0": { + "sha512": "cbjBNZHf/vQCfcdhzx7knsiygoCKgxL8mZOeocXZn5gWhCdzHIq6bYNKWX0LAJCWYP7bds4yBK8p06YkP0oa0g==", + "type": "package", + "path": "system.threading.tasks.parallel/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Threading.Tasks.Parallel.dll", + "lib/netstandard1.3/System.Threading.Tasks.Parallel.dll", + "lib/portable-net45+win8+wpa81/_._", + "lib/win8/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Threading.Tasks.Parallel.dll", + "ref/netcore50/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/de/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/es/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/fr/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/it/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/ja/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/ko/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/ru/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/zh-hans/System.Threading.Tasks.Parallel.xml", + "ref/netcore50/zh-hant/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/System.Threading.Tasks.Parallel.dll", + "ref/netstandard1.1/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/de/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/es/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/fr/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/it/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/ja/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/ko/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/ru/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/zh-hans/System.Threading.Tasks.Parallel.xml", + "ref/netstandard1.1/zh-hant/System.Threading.Tasks.Parallel.xml", + "ref/portable-net45+win8+wpa81/_._", + "ref/win8/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.tasks.parallel.4.3.0.nupkg.sha512", + "system.threading.tasks.parallel.nuspec" + ] + }, + "System.Threading.Thread/4.3.0": { + "sha512": "OHmbT+Zz065NKII/ZHcH9XO1dEuLGI1L2k7uYss+9C1jLxTC9kTZZuzUOyXHayRk+dft9CiDf3I/QZ0t8JKyBQ==", + "type": "package", + "path": "system.threading.thread/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Threading.Thread.dll", + "lib/netcore50/_._", + "lib/netstandard1.3/System.Threading.Thread.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Threading.Thread.dll", + "ref/netstandard1.3/System.Threading.Thread.dll", + "ref/netstandard1.3/System.Threading.Thread.xml", + "ref/netstandard1.3/de/System.Threading.Thread.xml", + "ref/netstandard1.3/es/System.Threading.Thread.xml", + "ref/netstandard1.3/fr/System.Threading.Thread.xml", + "ref/netstandard1.3/it/System.Threading.Thread.xml", + "ref/netstandard1.3/ja/System.Threading.Thread.xml", + "ref/netstandard1.3/ko/System.Threading.Thread.xml", + "ref/netstandard1.3/ru/System.Threading.Thread.xml", + "ref/netstandard1.3/zh-hans/System.Threading.Thread.xml", + "ref/netstandard1.3/zh-hant/System.Threading.Thread.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.threading.thread.4.3.0.nupkg.sha512", + "system.threading.thread.nuspec" + ] + }, + "System.ValueTuple/4.3.0": { + "sha512": "cNLEvBX3d6MMQRZe3SMFNukVbitDAEpVZO17qa0/2FHxZ7Y7PpFRpr6m2615XYM/tYYYf0B+WyHNujqIw8Luwg==", + "type": "package", + "path": "system.valuetuple/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/netstandard1.0/.xml", + "lib/netstandard1.0/System.ValueTuple.dll", + "lib/portable-net40+sl4+win8+wp8/.xml", + "lib/portable-net40+sl4+win8+wp8/System.ValueTuple.dll", + "system.valuetuple.4.3.0.nupkg.sha512", + "system.valuetuple.nuspec" + ] + }, + "System.Xml.ReaderWriter/4.3.0": { + "sha512": "GrprA+Z0RUXaR4N7/eW71j1rgMnEnEVlgii49GZyAjTH7uliMnrOU3HNFBr6fEDBCJCIdlVNq9hHbaDR621XBA==", + "type": "package", + "path": "system.xml.readerwriter/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net46/System.Xml.ReaderWriter.dll", + "lib/netcore50/System.Xml.ReaderWriter.dll", + "lib/netstandard1.3/System.Xml.ReaderWriter.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net46/System.Xml.ReaderWriter.dll", + "ref/netcore50/System.Xml.ReaderWriter.dll", + "ref/netcore50/System.Xml.ReaderWriter.xml", + "ref/netcore50/de/System.Xml.ReaderWriter.xml", + "ref/netcore50/es/System.Xml.ReaderWriter.xml", + "ref/netcore50/fr/System.Xml.ReaderWriter.xml", + "ref/netcore50/it/System.Xml.ReaderWriter.xml", + "ref/netcore50/ja/System.Xml.ReaderWriter.xml", + "ref/netcore50/ko/System.Xml.ReaderWriter.xml", + "ref/netcore50/ru/System.Xml.ReaderWriter.xml", + "ref/netcore50/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netcore50/zh-hant/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/System.Xml.ReaderWriter.dll", + "ref/netstandard1.0/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/de/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/es/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/fr/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/it/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ja/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ko/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/ru/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netstandard1.0/zh-hant/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/System.Xml.ReaderWriter.dll", + "ref/netstandard1.3/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/de/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/es/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/fr/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/it/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ja/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ko/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/ru/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/zh-hans/System.Xml.ReaderWriter.xml", + "ref/netstandard1.3/zh-hant/System.Xml.ReaderWriter.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.readerwriter.4.3.0.nupkg.sha512", + "system.xml.readerwriter.nuspec" + ] + }, + "System.Xml.XDocument/4.3.0": { + "sha512": "5zJ0XDxAIg8iy+t4aMnQAu0MqVbqyvfoUVl1yDV61xdo3Vth45oA2FoY4pPkxYAH5f8ixpmTqXeEIya95x0aCQ==", + "type": "package", + "path": "system.xml.xdocument/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Xml.XDocument.dll", + "lib/netstandard1.3/System.Xml.XDocument.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Xml.XDocument.dll", + "ref/netcore50/System.Xml.XDocument.xml", + "ref/netcore50/de/System.Xml.XDocument.xml", + "ref/netcore50/es/System.Xml.XDocument.xml", + "ref/netcore50/fr/System.Xml.XDocument.xml", + "ref/netcore50/it/System.Xml.XDocument.xml", + "ref/netcore50/ja/System.Xml.XDocument.xml", + "ref/netcore50/ko/System.Xml.XDocument.xml", + "ref/netcore50/ru/System.Xml.XDocument.xml", + "ref/netcore50/zh-hans/System.Xml.XDocument.xml", + "ref/netcore50/zh-hant/System.Xml.XDocument.xml", + "ref/netstandard1.0/System.Xml.XDocument.dll", + "ref/netstandard1.0/System.Xml.XDocument.xml", + "ref/netstandard1.0/de/System.Xml.XDocument.xml", + "ref/netstandard1.0/es/System.Xml.XDocument.xml", + "ref/netstandard1.0/fr/System.Xml.XDocument.xml", + "ref/netstandard1.0/it/System.Xml.XDocument.xml", + "ref/netstandard1.0/ja/System.Xml.XDocument.xml", + "ref/netstandard1.0/ko/System.Xml.XDocument.xml", + "ref/netstandard1.0/ru/System.Xml.XDocument.xml", + "ref/netstandard1.0/zh-hans/System.Xml.XDocument.xml", + "ref/netstandard1.0/zh-hant/System.Xml.XDocument.xml", + "ref/netstandard1.3/System.Xml.XDocument.dll", + "ref/netstandard1.3/System.Xml.XDocument.xml", + "ref/netstandard1.3/de/System.Xml.XDocument.xml", + "ref/netstandard1.3/es/System.Xml.XDocument.xml", + "ref/netstandard1.3/fr/System.Xml.XDocument.xml", + "ref/netstandard1.3/it/System.Xml.XDocument.xml", + "ref/netstandard1.3/ja/System.Xml.XDocument.xml", + "ref/netstandard1.3/ko/System.Xml.XDocument.xml", + "ref/netstandard1.3/ru/System.Xml.XDocument.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XDocument.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XDocument.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.xdocument.4.3.0.nupkg.sha512", + "system.xml.xdocument.nuspec" + ] + }, + "System.Xml.XmlDocument/4.3.0": { + "sha512": "lJ8AxvkX7GQxpC6GFCeBj8ThYVyQczx2+f/cWHJU8tjS7YfI6Cv6bon70jVEgs2CiFbmmM8b9j1oZVx0dSI2Ww==", + "type": "package", + "path": "system.xml.xmldocument/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Xml.XmlDocument.dll", + "lib/netstandard1.3/System.Xml.XmlDocument.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Xml.XmlDocument.dll", + "ref/netstandard1.3/System.Xml.XmlDocument.dll", + "ref/netstandard1.3/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/de/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/es/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/fr/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/it/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/ja/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/ko/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/ru/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XmlDocument.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XmlDocument.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.xmldocument.4.3.0.nupkg.sha512", + "system.xml.xmldocument.nuspec" + ] + }, + "System.Xml.XmlSerializer/4.3.0": { + "sha512": "MYoTCP7EZ98RrANESW05J5ZwskKDoN0AuZ06ZflnowE50LTpbR5yRg3tHckTVm5j/m47stuGgCrCHWePyHS70Q==", + "type": "package", + "path": "system.xml.xmlserializer/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netcore50/System.Xml.XmlSerializer.dll", + "lib/netstandard1.3/System.Xml.XmlSerializer.dll", + "lib/portable-net45+win8+wp8+wpa81/_._", + "lib/win8/_._", + "lib/wp80/_._", + "lib/wpa81/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netcore50/System.Xml.XmlSerializer.dll", + "ref/netcore50/System.Xml.XmlSerializer.xml", + "ref/netcore50/de/System.Xml.XmlSerializer.xml", + "ref/netcore50/es/System.Xml.XmlSerializer.xml", + "ref/netcore50/fr/System.Xml.XmlSerializer.xml", + "ref/netcore50/it/System.Xml.XmlSerializer.xml", + "ref/netcore50/ja/System.Xml.XmlSerializer.xml", + "ref/netcore50/ko/System.Xml.XmlSerializer.xml", + "ref/netcore50/ru/System.Xml.XmlSerializer.xml", + "ref/netcore50/zh-hans/System.Xml.XmlSerializer.xml", + "ref/netcore50/zh-hant/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/System.Xml.XmlSerializer.dll", + "ref/netstandard1.0/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/de/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/es/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/fr/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/it/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/ja/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/ko/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/ru/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/zh-hans/System.Xml.XmlSerializer.xml", + "ref/netstandard1.0/zh-hant/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/System.Xml.XmlSerializer.dll", + "ref/netstandard1.3/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/de/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/es/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/fr/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/it/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/ja/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/ko/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/ru/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XmlSerializer.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XmlSerializer.xml", + "ref/portable-net45+win8+wp8+wpa81/_._", + "ref/win8/_._", + "ref/wp80/_._", + "ref/wpa81/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/aot/lib/netcore50/System.Xml.XmlSerializer.dll", + "system.xml.xmlserializer.4.3.0.nupkg.sha512", + "system.xml.xmlserializer.nuspec" + ] + }, + "System.Xml.XPath/4.3.0": { + "sha512": "v1JQ5SETnQusqmS3RwStF7vwQ3L02imIzl++sewmt23VGygix04pEH+FCj1yWb+z4GDzKiljr1W7Wfvrx0YwgA==", + "type": "package", + "path": "system.xml.xpath/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Xml.XPath.dll", + "lib/netstandard1.3/System.Xml.XPath.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Xml.XPath.dll", + "ref/netstandard1.3/System.Xml.XPath.dll", + "ref/netstandard1.3/System.Xml.XPath.xml", + "ref/netstandard1.3/de/System.Xml.XPath.xml", + "ref/netstandard1.3/es/System.Xml.XPath.xml", + "ref/netstandard1.3/fr/System.Xml.XPath.xml", + "ref/netstandard1.3/it/System.Xml.XPath.xml", + "ref/netstandard1.3/ja/System.Xml.XPath.xml", + "ref/netstandard1.3/ko/System.Xml.XPath.xml", + "ref/netstandard1.3/ru/System.Xml.XPath.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XPath.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XPath.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.xpath.4.3.0.nupkg.sha512", + "system.xml.xpath.nuspec" + ] + }, + "System.Xml.XPath.XDocument/4.3.0": { + "sha512": "jw9oHHEIVW53mHY9PgrQa98Xo2IZ0ZjrpdOTmtvk+Rvg4tq7dydmxdNqUvJ5YwjDqhn75mBXWttWjiKhWP53LQ==", + "type": "package", + "path": "system.xml.xpath.xdocument/4.3.0", + "files": [ + "ThirdPartyNotices.txt", + "dotnet_library_license.txt", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Xml.XPath.XDocument.dll", + "lib/netstandard1.3/System.Xml.XPath.XDocument.dll", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Xml.XPath.XDocument.dll", + "ref/netstandard1.3/System.Xml.XPath.XDocument.dll", + "ref/netstandard1.3/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/de/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/es/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/fr/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/it/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/ja/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/ko/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/ru/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/zh-hans/System.Xml.XPath.XDocument.xml", + "ref/netstandard1.3/zh-hant/System.Xml.XPath.XDocument.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.xml.xpath.xdocument.4.3.0.nupkg.sha512", + "system.xml.xpath.xdocument.nuspec" + ] + }, + "EnglishLessons/1.0.0": { + "type": "project", + "path": "../EnglishLessons/EnglishLessons.csproj", + "msbuildProject": "../EnglishLessons/EnglishLessons.csproj" + } + }, + "projectFileDependencyGroups": { + ".NETCoreApp,Version=v2.1": [ + "EnglishLessons >= 1.0.0", + "Microsoft.AspNetCore.App >= 2.1.1", + "Microsoft.AspNetCore.Razor.Design >= 2.1.2", + "Microsoft.NETCore.App >= 2.1.0", + "Microsoft.VisualStudio.Web.CodeGeneration.Design >= 2.1.1" + ] + }, + "packageFolders": { + "C:\\Users\\markp\\.nuget\\packages\\": {}, + "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "C:\\Users\\markp\\Desktop\\Programming\\C#\\League\\EnglishLessons\\EnglishLessonsAPI\\EnglishLessonsAPI.csproj", + "projectName": "EnglishLessonsAPI", + "projectPath": "C:\\Users\\markp\\Desktop\\Programming\\C#\\League\\EnglishLessons\\EnglishLessonsAPI\\EnglishLessonsAPI.csproj", + "packagesPath": "C:\\Users\\markp\\.nuget\\packages\\", + "outputPath": "C:\\Users\\markp\\Desktop\\Programming\\C#\\League\\EnglishLessons\\EnglishLessonsAPI\\obj\\", + "projectStyle": "PackageReference", + "fallbackFolders": [ + "C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder" + ], + "configFilePaths": [ + "C:\\Users\\markp\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "netcoreapp2.1" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "netcoreapp2.1": { + "projectReferences": { + "C:\\Users\\markp\\Desktop\\Programming\\C#\\League\\EnglishLessons\\EnglishLessons\\EnglishLessons.csproj": { + "projectPath": "C:\\Users\\markp\\Desktop\\Programming\\C#\\League\\EnglishLessons\\EnglishLessons\\EnglishLessons.csproj" + } + } + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "netcoreapp2.1": { + "dependencies": { + "Microsoft.AspNetCore.App": { + "suppressParent": "All", + "target": "Package", + "version": "[2.1.1, )", + "autoReferenced": true + }, + "Microsoft.AspNetCore.Razor.Design": { + "suppressParent": "All", + "target": "Package", + "version": "[2.1.2, )" + }, + "Microsoft.NETCore.App": { + "target": "Package", + "version": "[2.1.0, )", + "autoReferenced": true + }, + "Microsoft.VisualStudio.Web.CodeGeneration.Design": { + "target": "Package", + "version": "[2.1.1, )" + } + }, + "imports": [ + "net461" + ], + "assetTargetFallback": true, + "warn": true + } + } + } +} \ No newline at end of file diff --git a/FifthLesson/UserWordTest/EnglishLessonsTest.csproj b/FifthLesson/UserWordTest/EnglishLessonsTest.csproj new file mode 100644 index 0000000..f40fbff --- /dev/null +++ b/FifthLesson/UserWordTest/EnglishLessonsTest.csproj @@ -0,0 +1,75 @@ + + + + + + Debug + AnyCPU + {48A657DC-7910-404A-8232-BB8E243C1C11} + Library + Properties + UserWordTest + UserWordTest + v4.6.1 + 512 + {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + 15.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + $(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages + False + UnitTest + + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll + + + ..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll + + + + + + + + + + + + + + + {dd163cdc-e328-436c-b273-63767e38334a} + EnglishLessons + + + + + + + Данный проект ссылается на пакеты NuGet, отсутствующие на этом компьютере. Используйте восстановление пакетов NuGet, чтобы скачать их. Дополнительную информацию см. по адресу: http://go.microsoft.com/fwlink/?LinkID=322105. Отсутствует следующий файл: {0}. + + + + + + \ No newline at end of file diff --git a/FifthLesson/UserWordTest/bin/Debug/EnglishLessons.dll b/FifthLesson/UserWordTest/bin/Debug/EnglishLessons.dll new file mode 100644 index 0000000000000000000000000000000000000000..4e12cad0c9c58f9e9131db873c0644383b2b9787 GIT binary patch literal 8704 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 F{|9eE_Fn)1 literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll new file mode 100644 index 0000000000000000000000000000000000000000..3e0f61b08bcba36e23386b0e0dc91b8196f2a6a4 GIT binary patch literal 130192 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 g4%iKB_;$yv2Mn{*lF;E%@sKeUNDYXATM literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll new file mode 100644 index 0000000000000000000000000000000000000000..ae7bcd58ae5ba63aeb1efe42d1ae16d4b81c8c85 GIT binary patch literal 113296 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 ac!lU>D_?23+?%nV{(YOUS16N1gaH8SIPtsy literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..93f6567 --- /dev/null +++ b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Used to specify deployment item (file or directory) for per-test deployment. + Can be specified on test class or test method. + Can have multiple instances of the attribute to specify more than one item. + The item path can be absolute or relative, if relative, it is relative to RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Initializes a new instance of the class. + + The file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + + + + Initializes a new instance of the class + + The relative or absolute path to the file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + The path of the directory to which the items are to be copied. It can be either absolute or relative to the deployment directory. All files and directories identified by will be copied to this directory. + + + + Gets the path of the source file or folder to be copied. + + + + + Gets the path of the directory to which the item is copied. + + + + + Contains literals for names of sections, properties, attributes. + + + + + The configuration section name. + + + + + The configuration section name for Beta2. Left around for compat. + + + + + Section name for Data source. + + + + + Attribute name for 'Name' + + + + + Attribute name for 'ConnectionString' + + + + + Attrbiute name for 'DataAccessMethod' + + + + + Attribute name for 'DataTable' + + + + + The Data Source element. + + + + + Gets or sets the name of this configuration. + + + + + Gets or sets the ConnectionStringSettings element in <connectionStrings> section in the .config file. + + + + + Gets or sets the name of the data table. + + + + + Gets or sets the type of data access. + + + + + Gets the key name. + + + + + Gets the configuration properties. + + + + + The Data source element collection. + + + + + Initializes a new instance of the class. + + + + + Returns the configuration element with the specified key. + + The key of the element to return. + The System.Configuration.ConfigurationElement with the specified key; otherwise, null. + + + + Gets the configuration element at the specified index location. + + The index location of the System.Configuration.ConfigurationElement to return. + + + + Adds a configuration element to the configuration element collection. + + The System.Configuration.ConfigurationElement to add. + + + + Removes a System.Configuration.ConfigurationElement from the collection. + + The . + + + + Removes a System.Configuration.ConfigurationElement from the collection. + + The key of the System.Configuration.ConfigurationElement to remove. + + + + Removes all configuration element objects from the collection. + + + + + Creates a new . + + A new . + + + + Gets the element key for a specified configuration element. + + The System.Configuration.ConfigurationElement to return the key for. + An System.Object that acts as the key for the specified System.Configuration.ConfigurationElement. + + + + Adds a configuration element to the configuration element collection. + + The System.Configuration.ConfigurationElement to add. + + + + Adds a configuration element to the configuration element collection. + + The index location at which to add the specified System.Configuration.ConfigurationElement. + The System.Configuration.ConfigurationElement to add. + + + + Support for configuration settings for Tests. + + + + + Gets the configuration section for tests. + + + + + The configuration section for tests. + + + + + Gets the data sources for this configuration section. + + + + + Gets the collection of properties. + + + The of properties for the element. + + + + + This class represents the live NON public INTERNAL object in the system + + + + + Initializes a new instance of the class that contains + the already existing object of the private class + + object that serves as starting point to reach the private members + the derefrencing string using . that points to the object to be retrived as in m_X.m_Y.m_Z + + + + Initializes a new instance of the class that wraps the + specified type. + + Name of the assembly + fully qualified name + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + Name of the assembly + fully qualified name + An array of objects representing the number, order, and type of the parameters for the constructor to get + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + type of the object to create + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + type of the object to create + An array of objects representing the number, order, and type of the parameters for the constructor to get + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps + the given object. + + object to wrap + + + + Initializes a new instance of the class that wraps + the given object. + + object to wrap + PrivateType object + + + + Gets or sets the target + + + + + Gets the type of underlying object + + + + + returns the hash code of the target object + + int representing hashcode of the target object + + + + Equals + + Object with whom to compare + returns true if the objects are equal. + + + + Invokes the specified method + + Name of the method + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + An array of types corresponding to the types of the generic arguments. + Result of method call + + + + Invokes the specified method + + Name of the method + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + An array of types corresponding to the types of the generic arguments. + Result of method call + + + + Gets the array element using array of subsrcipts for each dimension + + Name of the member + the indices of array + An arrya of elements. + + + + Sets the array element using array of subsrcipts for each dimension + + Name of the member + Value to set + the indices of array + + + + Gets the array element using array of subsrcipts for each dimension + + Name of the member + A bitmask comprised of one or more that specify how the search is conducted. + the indices of array + An arrya of elements. + + + + Sets the array element using array of subsrcipts for each dimension + + Name of the member + A bitmask comprised of one or more that specify how the search is conducted. + Value to set + the indices of array + + + + Get the field + + Name of the field + The field. + + + + Sets the field + + Name of the field + value to set + + + + Gets the field + + Name of the field + A bitmask comprised of one or more that specify how the search is conducted. + The field. + + + + Sets the field + + Name of the field + A bitmask comprised of one or more that specify how the search is conducted. + value to set + + + + Get the field or property + + Name of the field or property + The field or property. + + + + Sets the field or property + + Name of the field or property + value to set + + + + Gets the field or property + + Name of the field or property + A bitmask comprised of one or more that specify how the search is conducted. + The field or property. + + + + Sets the field or property + + Name of the field or property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + + + + Gets the property + + Name of the property + Arguments to pass to the member to invoke. + The property. + + + + Gets the property + + Name of the property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The property. + + + + Set the property + + Name of the property + value to set + Arguments to pass to the member to invoke. + + + + Set the property + + Name of the property + An array of objects representing the number, order, and type of the parameters for the indexed property. + value to set + Arguments to pass to the member to invoke. + + + + Gets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + The property. + + + + Gets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The property. + + + + Sets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + Arguments to pass to the member to invoke. + + + + Sets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Validate access string + + access string + + + + Invokes the memeber + + Name of the member + Additional attributes + Arguments for the invocation + Culture + Result of the invocation + + + + Extracts the most appropriate generic method signature from the current private type. + + The name of the method in which to search the signature cache. + An array of types corresponding to the types of the parameters in which to search. + An array of types corresponding to the types of the generic arguments. + to further filter the method signatures. + Modifiers for parameters. + A methodinfo instance. + + + + This class represents a private class for the Private Accessor functionality. + + + + + Binds to everything + + + + + The wrapped type. + + + + + Initializes a new instance of the class that contains the private type. + + Assembly name + fully qualified name of the + + + + Initializes a new instance of the class that contains + the private type from the type object + + The wrapped Type to create. + + + + Gets the referenced type + + + + + Invokes static member + + Name of the member to InvokeHelper + Arguements to the invoction + Result of invocation + + + + Invokes static member + + Name of the member to InvokeHelper + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invoction + Result of invocation + + + + Invokes static member + + Name of the member to InvokeHelper + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invoction + An array of types corresponding to the types of the generic arguments. + Result of invocation + + + + Invokes the static method + + Name of the member + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture info + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + /// An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + /// An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture + An array of types corresponding to the types of the generic arguments. + Result of invocation + + + + Gets the element in static array + + Name of the array + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to get. For instance, to access a[10][11] the indices would be {10,11} + + element at the specified location + + + + Sets the memeber of the static array + + Name of the array + value to set + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to set. For instance, to access a[10][11] the array would be {10,11} + + + + + Gets the element in satatic array + + Name of the array + Additional InvokeHelper attributes + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to get. For instance, to access a[10][11] the array would be {10,11} + + element at the spcified location + + + + Sets the memeber of the static array + + Name of the array + Additional InvokeHelper attributes + value to set + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to set. For instance, to access a[10][11] the array would be {10,11} + + + + + Gets the static field + + Name of the field + The static field. + + + + Sets the static field + + Name of the field + Arguement to the invocation + + + + Gets the static field using specified InvokeHelper attributes + + Name of the field + Additional invocation attributes + The static field. + + + + Sets the static field using binding attributes + + Name of the field + Additional InvokeHelper attributes + Arguement to the invocation + + + + Gets the static field or property + + Name of the field or property + The static field or property. + + + + Sets the static field or property + + Name of the field or property + Value to be set to field or property + + + + Gets the static field or property using specified InvokeHelper attributes + + Name of the field or property + Additional invocation attributes + The static field or property. + + + + Sets the static field or property using binding attributes + + Name of the field or property + Additional invocation attributes + Value to be set to field or property + + + + Gets the static property + + Name of the field or property + Arguements to the invocation + The static property. + + + + Sets the static property + + Name of the property + Value to be set to field or property + Arguments to pass to the member to invoke. + + + + Sets the static property + + Name of the property + Value to be set to field or property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Gets the static property + + Name of the property + Additional invocation attributes. + Arguments to pass to the member to invoke. + The static property. + + + + Gets the static property + + Name of the property + Additional invocation attributes. + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The static property. + + + + Sets the static property + + Name of the property + Additional invocation attributes. + Value to be set to field or property + Optional index values for indexed properties. The indexes of indexed properties are zero-based. This value should be null for non-indexed properties. + + + + Sets the static property + + Name of the property + Additional invocation attributes. + Value to be set to field or property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Culture + Result of invocation + + + + Provides method signature discovery for generic methods. + + + + + Compares the method signatures of these two methods. + + Method1 + Method2 + True if they are similiar. + + + + Gets the hierarchy depth from the base type of the provided type. + + The type. + The depth. + + + + Finds most dervied type with the provided information. + + Candidate matches. + Number of matches. + The most derived method. + + + + Given a set of methods that match the base criteria, select a method based + upon an array of types. This method should return null if no method matches + the criteria. + + Binding specification. + Candidate matches + Types + Parameter modifiers. + Matching method. Null if none matches. + + + + Finds the most specific method in the two methods provided. + + Method 1 + Parameter order for Method 1 + Paramter array type. + Method 2 + Parameter order for Method 2 + >Paramter array type. + Types to search in. + Args. + An int representing the match. + + + + Finds the most specific method in the two methods provided. + + Method 1 + Parameter order for Method 1 + Paramter array type. + Method 2 + Parameter order for Method 2 + >Paramter array type. + Types to search in. + Args. + An int representing the match. + + + + Finds the most specific type in the two provided. + + Type 1 + Type 2 + The defining type + An int representing the match. + + + + Used to store information that is provided to unit tests. + + + + + Gets test properties for a test. + + + + + Gets the current data row when test is used for data driven testing. + + + + + Gets current data connection row when test is used for data driven testing. + + + + + Gets base directory for the test run, under which deployed files and result files are stored. + + + + + Gets directory for files deployed for the test run. Typically a subdirectory of . + + + + + Gets base directory for results from the test run. Typically a subdirectory of . + + + + + Gets directory for test run result files. Typically a subdirectory of . + + + + + Gets directory for test result files. + + + + + Gets base directory for the test run, under which deployed files and result files are stored. + Same as . Use that property instead. + + + + + Gets directory for files deployed for the test run. Typically a subdirectory of . + Same as . Use that property instead. + + + + + Gets directory for test run result files. Typically a subdirectory of . + Same as . Use that property for test run result files, or + for test-specific result files instead. + + + + + Gets the Fully-qualified name of the class containing the test method currently being executed + + + + + Gets the name of the test method currently being executed + + + + + Gets the current test outcome. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + + Adds a file name to the list in TestResult.ResultFileNames + + + The file Name. + + + + + Begins a timer with the specified name + + Name of the timer. + + + + Ends a timer with the specified name + + Name of the timer. + + + diff --git a/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.dll b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.dll new file mode 100644 index 0000000000000000000000000000000000000000..740d01fd3857259353f56a8c44745531ec2ebd99 GIT binary patch literal 73384 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 LZzAJ}Rd)Ul&m9{B literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5a8d626 --- /dev/null +++ b/FifthLesson/UserWordTest/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4391 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Specification to disable parallelization. + + + + + Enum to specify whether the data is stored as property or in method. + + + + + Data is declared as property. + + + + + Data is declared in method. + + + + + Attribute to define dynamic data for a test method. + + + + + Initializes a new instance of the class. + + + The name of method or property having test data. + + + Specifies whether the data is stored as property or in method. + + + + + Initializes a new instance of the class when the test data is present in a class different + from test method's class. + + + The name of method or property having test data. + + + The declaring type of property or method having data. Useful in cases when declaring type is present in a class different from + test method's class. If null, declaring type defaults to test method's class type. + + + Specifies whether the data is stored as property or in method. + + + + + Gets or sets the name of method used to customize the display name in test results. + + + + + Gets or sets the declaring type used to customize the display name in test results. + + + + + + + + + + + Specification for parallelization level for a test run. + + + + + The default scope for the parallel run. Although method level gives maximum parallelization, the default is set to + class level to enable maximum number of customers to easily convert their tests to run in parallel. In most cases within + a class tests aren't thread safe. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the number of workers to be used for the parallel run. + + + + + Gets or sets the scope of the parallel run. + + + To enable all classes to run in parallel set this to . + To get the maximum parallelization level set this to . + + + + + Parallel execution mode. + + + + + Each thread of execution will be handed a TestClass worth of tests to execute. + Within the TestClass, the test methods will execute serially. + + + + + Each thread of execution will be handed TestMethods to execute. + + + + + Test data source for data driven tests. + + + + + Gets the test data from custom test data source. + + + The method info of test method. + + + Test data for calling test method. + + + + + Gets the display name corresponding to test data row for displaying in TestResults. + + + The method info of test method. + + + The test data which is passed to test method. + + + The . + + + + + TestMethod for execution. + + + + + Gets the name of test method. + + + + + Gets the name of test class. + + + + + Gets the return type of test method. + + + + + Gets the arguments with which test method is invoked. + + + + + Gets the parameters of test method. + + + + + Gets the methodInfo for test method. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invokes the test method. + + + Arguments to pass to test method. (E.g. For data driven) + + + Result of test method invocation. + + + This call handles asynchronous test methods as well. + + + + + Get all attributes of the test method. + + + Whether attribute defined in parent class is valid. + + + All attributes. + + + + + Get attribute of specific type. + + System.Attribute type. + + Whether attribute defined in parent class is valid. + + + The attributes of the specified type. + + + + + The helper. + + + + + The check parameter not null. + + + The parameter. + + + The parameter name. + + + The message. + + Throws argument null exception when parameter is null. + + + + The check parameter not null or empty. + + + The parameter. + + + The parameter name. + + + The message. + + Throws ArgumentException when parameter is null. + + + + Enumeration for how how we access data rows in data driven testing. + + + + + Rows are returned in sequential order. + + + + + Rows are returned in random order. + + + + + Attribute to define inline data for a test method. + + + + + Initializes a new instance of the class. + + The data object. + + + + Initializes a new instance of the class which takes in an array of arguments. + + A data object. + More data. + + + + Gets data for calling test method. + + + + + Gets or sets display name in test results for customization. + + + + + + + + + + + The assert inconclusive exception. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + InternalTestFailureException class. Used to indicate internal failure for a test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initializes a new instance of the class. + + The exception message. + The exception. + + + + Initializes a new instance of the class. + + The exception message. + + + + Initializes a new instance of the class. + + + + + Attribute that specifies to expect an exception of the specified type + + + + + Initializes a new instance of the class with the expected type + + Type of the expected exception + + + + Initializes a new instance of the class with + the expected type and the message to include when no exception is thrown by the test. + + Type of the expected exception + + Message to include in the test result if the test fails due to not throwing an exception + + + + + Gets a value indicating the Type of the expected exception + + + + + Gets or sets a value indicating whether to allow types derived from the type of the expected exception to + qualify as expected + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Verifies that the type of the exception thrown by the unit test is expected + + The exception thrown by the unit test + + + + Base class for attributes that specify to expect an exception from a unit test + + + + + Initializes a new instance of the class with a default no-exception message + + + + + Initializes a new instance of the class with a no-exception message + + + Message to include in the test result if the test fails due to not throwing an + exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the default no-exception message + + The ExpectedException attribute type name + The default no-exception message + + + + Determines whether the exception is expected. If the method returns, then it is + understood that the exception was expected. If the method throws an exception, then it + is understood that the exception was not expected, and the thrown exception's message + is included in the test result. The class can be used for + convenience. If is used and the assertion fails, + then the test outcome is set to Inconclusive. + + The exception thrown by the unit test + + + + Rethrow the exception if it is an AssertFailedException or an AssertInconclusiveException + + The exception to rethrow if it is an assertion exception + + + + This class is designed to help user doing unit testing for types which uses generic types. + GenericParameterHelper satisfies some common generic type constraints + such as: + 1. public default constructor + 2. implements common interface: IComparable, IEnumerable + + + + + Initializes a new instance of the class that + satisfies the 'newable' constraint in C# generics. + + + This constructor initializes the Data property to a random value. + + + + + Initializes a new instance of the class that + initializes the Data property to a user-supplied value. + + Any integer value + + + + Gets or sets the Data + + + + + Do the value comparison for two GenericParameterHelper object + + object to do comparison with + true if obj has the same value as 'this' GenericParameterHelper object. + false otherwise. + + + + Returns a hashcode for this object. + + The hash code. + + + + Compares the data of the two objects. + + The object to compare with. + + A signed number indicating the relative values of this instance and value. + + + Thrown when the object passed in is not an instance of . + + + + + Returns an IEnumerator object whose length is derived from + the Data property. + + The IEnumerator object + + + + Returns a GenericParameterHelper object that is equal to + the current object. + + The cloned object. + + + + Enables users to log/write traces from unit tests for diagnostics. + + + + + Handler for LogMessage. + + Message to log. + + + + Event to listen. Raised when unit test writer writes some message. + Mainly to consume by adapter. + + + + + API for test writer to call to Log messages. + + String format with placeholders. + Parameters for placeholders. + + + + TestCategory attribute; used to specify the category of a unit test. + + + + + Initializes a new instance of the class and applies the category to the test. + + + The test Category. + + + + + Gets the test categories that has been applied to the test. + + + + + Base class for the "Category" attribute + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initializes a new instance of the class. + Applies the category to the test. The strings returned by TestCategories + are used with the /category command to filter tests + + + + + Gets the test category that has been applied to the test. + + + + + AssertFailedException class. Used to indicate failure for a test case + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + A collection of helper classes to test various conditions within + unit tests. If the condition being tested is not met, an exception + is thrown. + + + + + Gets the singleton instance of the Assert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is false. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is true. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null. + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is not equal to . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Throws an AssertFailedException. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Static equals overloads are used for comparing instances of two types for reference + equality. This method should not be used for comparison of two instances for + equality. This object will always throw with Assert.Fail. Please use + Assert.AreEqual and associated overloads in your unit tests. + + Object A + Object B + False, always. + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Replaces null characters ('\0') with "\\0". + + + The string to search. + + + The converted string with null characters replaced by "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Helper function that creates and throws an AssertionFailedException + + + name of the assertion throwing an exception + + + message describing conditions for assertion failure + + + The parameters. + + + + + Checks the parameter for valid conditions + + + The parameter. + + + The assertion Name. + + + parameter name + + + message for the invalid parameter exception + + + The parameters. + + + + + Safely converts an object to a string, handling null values and null characters. + Null values are converted to "(null)". Null characters are converted to "\\0". + + + The object to convert to a string. + + + The converted string. + + + + + The string assert. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert customAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not end with + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if does not match + . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if matches . + + + + + A collection of helper classes to test various conditions associated + with collections within unit tests. If the condition being tested is not + met, an exception is thrown. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if is found in + . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if every element in is also found in + . + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Determines whether the first collection is a subset of the second + collection. If either set contains duplicate elements, the number + of occurrences of the element in the subset must be less than or + equal to the number of occurrences in the superset. + + + The collection the test expects to be contained in . + + + The collection the test expects to contain . + + + True if is a subset of + , false otherwise. + + + + + Constructs a dictionary containing the number of occurrences of each + element in the specified collection. + + + The collection to process. + + + The number of null elements in the collection. + + + A dictionary containing the number of occurrences of each element + in the specified collection. + + + + + Finds a mismatched element between the two collections. A mismatched + element is one that appears a different number of times in the + expected collection than it does in the actual collection. The + collections are assumed to be different non-null references with the + same number of elements. The caller is responsible for this level of + verification. If there is no mismatched element, the function returns + false and the out parameters should not be used. + + + The first collection to compare. + + + The second collection to compare. + + + The expected number of occurrences of + or 0 if there is no mismatched + element. + + + The actual number of occurrences of + or 0 if there is no mismatched + element. + + + The mismatched element (may be null) or null if there is no + mismatched element. + + + true if a mismatched element was found; false otherwise. + + + + + compares the objects using object.Equals + + + + + Base class for Framework Exceptions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Access string has invalid syntax.. + + + + + Looks up a localized string similar to The expected collection contains {1} occurrence(s) of <{2}>. The actual collection contains {3} occurrence(s). {0}. + + + + + Looks up a localized string similar to Duplicate item found:<{1}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Case is different for actual value:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference no greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1} ({2})>. Actual:<{3} ({4})>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected any value except:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Do not pass value types to AreSame(). Values converted to Object will never be the same. Consider using AreEqual(). {0}. + + + + + Looks up a localized string similar to {0} failed. {1}. + + + + + Looks up a localized string similar to async TestMethod with UITestMethodAttribute are not supported. Either remove async or use TestMethodAttribute.. + + + + + Looks up a localized string similar to Both collections are empty. {0}. + + + + + Looks up a localized string similar to Both collection contain same elements.. + + + + + Looks up a localized string similar to Both collection references point to the same collection object. {0}. + + + + + Looks up a localized string similar to Both collections contain the same elements. {0}. + + + + + Looks up a localized string similar to {0}({1}). + + + + + Looks up a localized string similar to (null). + + + + + Looks up a localized string similar to (object). + + + + + Looks up a localized string similar to String '{0}' does not contain string '{1}'. {2}.. + + + + + Looks up a localized string similar to {0} ({1}). + + + + + Looks up a localized string similar to Assert.Equals should not be used for Assertions. Please use Assert.AreEqual & overloads instead.. + + + + + Looks up a localized string similar to Method {0} must match the expected signature: public static {1} {0}({2}).. + + + + + Looks up a localized string similar to Property or method {0} on {1} does not return IEnumerable<object[]>.. + + + + + Looks up a localized string similar to Value returned by property or method {0} shouldn't be null.. + + + + + Looks up a localized string similar to The number of elements in the collections do not match. Expected:<{1}>. Actual:<{2}>.{0}. + + + + + Looks up a localized string similar to Element at index {0} do not match.. + + + + + Looks up a localized string similar to Element at index {1} is not of expected type. Expected type:<{2}>. Actual type:<{3}>.{0}. + + + + + Looks up a localized string similar to Element at index {1} is (null). Expected type:<{2}>.{0}. + + + + + Looks up a localized string similar to String '{0}' does not end with string '{1}'. {2}.. + + + + + Looks up a localized string similar to Invalid argument- EqualsTester can't use nulls.. + + + + + Looks up a localized string similar to Cannot convert object of type {0} to {1}.. + + + + + Looks up a localized string similar to The internal object referenced is no longer valid.. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. {1}.. + + + + + Looks up a localized string similar to The property {0} has type {1}; expected type {2}.. + + + + + Looks up a localized string similar to {0} Expected type:<{1}>. Actual type:<{2}>.. + + + + + Looks up a localized string similar to String '{0}' does not match pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to Wrong Type:<{1}>. Actual type:<{2}>. {0}. + + + + + Looks up a localized string similar to String '{0}' matches pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to No test data source specified. Atleast one TestDataSource is required with DataTestMethodAttribute.. + + + + + Looks up a localized string similar to No exception thrown. {1} exception was expected. {0}. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. The value cannot be null. {1}.. + + + + + Looks up a localized string similar to Different number of elements.. + + + + + Looks up a localized string similar to + The constructor with the specified signature could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to + The member specified ({0}) could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to String '{0}' does not start with string '{1}'. {2}.. + + + + + Looks up a localized string similar to The expected exception type must be System.Exception or a type derived from System.Exception.. + + + + + Looks up a localized string similar to (Failed to get the message for an exception of type {0} due to an exception.). + + + + + Looks up a localized string similar to Test method did not throw expected exception {0}. {1}. + + + + + Looks up a localized string similar to Test method did not throw an exception. An exception was expected by attribute {0} defined on the test method.. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} or a type derived from it was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Threw exception {2}, but exception {1} was expected. {0} + Exception Message: {3} + Stack Trace: {4}. + + + + + unit test outcomes + + + + + Test was executed, but there were issues. + Issues may involve exceptions or failed assertions. + + + + + Test has completed, but we can't say if it passed or failed. + May be used for aborted tests. + + + + + Test was executed without any issues. + + + + + Test is currently executing. + + + + + There was a system error while we were trying to execute a test. + + + + + The test timed out. + + + + + Test was aborted by the user. + + + + + Test is in an unknown state + + + + + Test cannot be executed. + + + + + Provides helper functionality for the unit test framework + + + + + Gets the exception messages, including the messages for all inner exceptions + recursively + + Exception to get messages for + string with error message information + + + + Enumeration for timeouts, that can be used with the class. + The type of the enumeration must match + + + + + The infinite. + + + + + The test class attribute. + + + + + Gets a test method attribute that enables running this test. + + The test method attribute instance defined on this method. + The to be used to run this test. + Extensions can override this method to customize how all methods in a class are run. + + + + The test method attribute. + + + + + Executes a test method. + + The test method to execute. + An array of TestResult objects that represent the outcome(s) of the test. + Extensions can override this method to customize running a TestMethod. + + + + Attribute for data driven test where data can be specified inline. + + + + + The test initialize attribute. + + + + + The test cleanup attribute. + + + + + The ignore attribute. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + Message specifies reason for ignoring. + + + + + Gets the owner. + + + + + The test property attribute. + + + + + Initializes a new instance of the class. + + + The name. + + + The value. + + + + + Gets the name. + + + + + Gets the value. + + + + + The class initialize attribute. + + + + + The class cleanup attribute. + + + + + The assembly initialize attribute. + + + + + The assembly cleanup attribute. + + + + + Test Owner + + + + + Initializes a new instance of the class. + + + The owner. + + + + + Gets the owner. + + + + + Priority attribute; used to specify the priority of a unit test. + + + + + Initializes a new instance of the class. + + + The priority. + + + + + Gets the priority. + + + + + Description of the test + + + + + Initializes a new instance of the class to describe a test. + + The description. + + + + Gets the description of a test. + + + + + CSS Project Structure URI + + + + + Initializes a new instance of the class for CSS Project Structure URI. + + The CSS Project Structure URI. + + + + Gets the CSS Project Structure URI. + + + + + CSS Iteration URI + + + + + Initializes a new instance of the class for CSS Iteration URI. + + The CSS Iteration URI. + + + + Gets the CSS Iteration URI. + + + + + WorkItem attribute; used to specify a work item associated with this test. + + + + + Initializes a new instance of the class for the WorkItem Attribute. + + The Id to a work item. + + + + Gets the Id to a workitem associated. + + + + + Timeout attribute; used to specify the timeout of a unit test. + + + + + Initializes a new instance of the class. + + + The timeout. + + + + + Initializes a new instance of the class with a preset timeout + + + The timeout + + + + + Gets the timeout. + + + + + TestResult object to be returned to adapter. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the display name of the result. Useful when returning multiple results. + If null then Method name is used as DisplayName. + + + + + Gets or sets the outcome of the test execution. + + + + + Gets or sets the exception thrown when test is failed. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the execution id of the result. + + + + + Gets or sets the parent execution id of the result. + + + + + Gets or sets the inner results count of the result. + + + + + Gets or sets the duration of test execution. + + + + + Gets or sets the data row index in data source. Set only for results of individual + run of data row of a data driven test. + + + + + Gets or sets the return value of the test method. (Currently null always). + + + + + Gets or sets the result files attached by the test. + + + + + Specifies connection string, table name and row access method for data driven testing. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + The default provider name for DataSource. + + + + + The default data access method. + + + + + Initializes a new instance of the class. This instance will be initialized with a data provider, connection string, data table and data access method to access the data source. + + Invariant data provider name, such as System.Data.SqlClient + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + Specifies the order to access data. + + + + Initializes a new instance of the class.This instance will be initialized with a connection string and table name. + Specify connection string and data table to access OLEDB data source. + + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + + + + Initializes a new instance of the class. This instance will be initialized with a data provider and connection string associated with the setting name. + + The name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + Gets a value representing the data provider of the data source. + + + The data provider name. If a data provider was not designated at object initialization, the default provider of System.Data.OleDb will be returned. + + + + + Gets a value representing the connection string for the data source. + + + + + Gets a value indicating the table name providing data. + + + + + Gets the method used to access the data source. + + + + One of the values. If the is not initialized, this will return the default value . + + + + + Gets the name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + diff --git a/FifthLesson/UserWordTest/bin/Debug/Newtonsoft.Json.dll b/FifthLesson/UserWordTest/bin/Debug/Newtonsoft.Json.dll new file mode 100644 index 0000000000000000000000000000000000000000..80699020cce0b5140994fb1ac2b06547ab21fe84 GIT binary patch literal 662528 zcmb@v37i~7**`wp-P3dIk<9MS%w{*qYyz8f=GYudV3Xwtfgm8F96~nSfgnUk<19hR zq(eYO#ehfv0p$h{yb(n_0dKreUvCT`ioST^t*FcI`+c73nV!AC_y5l)z4g>n&-2t% zPd#;ZRnN;dTphDxv6zGB`R8M?Pa@>MHS%}nKRc1!QTS9x?7q}D7kskisBbPf{+x5i z`Y)*Zud1GLe*c+gY}w*p*uQa8e|77Y{&TnVANum+`p@^z+BDeSp5EJte#N?2?5Gwy zw)JB}?+)|rmQl8WtJ3b-He8icXfY=JG+n+TVG_-`lDfq&~mX_V{q zHOz%7{O}0<;DwuB zcOl}x&X{tstk669uRj($eXu%KJrhXLjb&#+yAekIt%3G~)lKL5Af&D_=q$2&C(*5q zunG7a%Fln)&5FfiU%b$X-S^3OEG5{+pVy)MI~&nyq4}0~Wh|C1Ho{r~wNzYa*?|B^ zScFm(S8Euek?t)fKEl`^G72!?sx1f+0syfvLEi8v7160o|x zd75dh6yga)@B_qCdjVoy%UWW+D1A#Tma%FmiIeV(c~_yx6)RT+_%@b)U&|i58bCmT zVlxj)IWrFl>O61>R>+Cd_9y^C3Z<#}=L?hUeM_&vhZs_2eNz-Q1`S)*EVJ z77fz7qpYbrC0u0X=6EoSTkKmFj~#;Yqp4&p$2-r7x#_|h@2l~c+nOjW^xpv?3D@rS zZUErD9?5mAe zQiNfVW#_yjNpX!`SU8xq3yTM5SMyM%>f_JYyjZ;qc$^$GQ-ITeMMGcmIws3gi~8yPqSB_DA?1gx4qx zaV_2og`Xunr10+vFIV{Qgbz~qkA(M8_)mmUe#-na;r$f;3tv9GGw-KDm%&$h(e0o#8Qg0$7`DqGhwC$_-Q zI%UU+(mEln?Rv*)9^JOGNgn8CIi_bE?`)9?vg1isw7P9aIfM@0DRgnAa~=OE&|4un z`eY}DLbD^y^m7y(`#9Z`z5UoH@F(q#ec9qz;P@{EqyJ_*<~j+>_Qw#5_WiCjt)lk- zb7T1-?VH6&r`8K#Aec*_g=m7vv&3NwBV!2zv!jSptw%9F^?CP02irRZ0`6wK*o>zT z#j~yTqa3vRbhbpHCD%UCvdpcZwW)H7$JJFN} za_$}8%SlEW%;Op~1CAe`nv|7=9!K0g=bf#YkRMI9!Jl?*zXbx|X*L4uQ7S3b7|ELT zc_9-};W_V|y3lh)=zpoxtLyCN3A>bgW}VO#Osx|WWZs2=K>k&qL=Eh$V8E^Zh7hM2 z)xQ%$=jT*gEI`W$WeK5EbE=C8tspc)2%Vl&Oy~I@UXJcGjeKrBFQtVx&bzsH7X3Psgxq=Wf!*{ZG|pyRj1?y94ze?;dYSyOqUp zkq2RD%`*#gE6KPBETuYI#U1n55U#_!$0iYX(6GaGcf|)Jny*E*hyoV9AY3YIy zN67_{`qOp8EcPKa%-UoP@I@$K)(u~xE?hT!89+dS`g|UJH+WVVp06}`z8dm;jXWfv zS;YqRb8?5%4uj=G_^|m(*!DKbXYqBfszL z(mbn1GXD|e*|)xE)yTWqTL(AnSzoMP%If+$(zZcPG6uuO(1Sq#P)t- z4YJ(w6sMn$lG{$Gl%icY$zW7f|2vXgI7P9=L91slZp|5QDdy48IKE*-i*-TgT-qux z$#prUUf0Sv{&&IG74M9D*TZn@(-|kfzRSrtmj68@tauD_%KrgS?s5TrznRvRQL?qW zt-IYS4_p2ZnCzCaov!yof{D&VqSNZMy>~z~kUs*l^7B0%o$h!JJwu-^Wx^b?kqjDa z2^~>yHkA!tSWPJ zpsVkUMs8&UUV{Oa-H9Qx$}24&vp=_7ajG8=Ni5$5YS-_fjpZjo(ECDzuQ{jU#zNO7Y4U{sKN-rnH3Cgj;o9um}fvchw?;d!FL z^JK{LbMla&&SMMD5r*g52G4aN54<%Ukf6@fB0NVLo~s%>Zwq;@CJzbfJUQWcso{C5 z!Sjod=a=LmL7iu|@Em1$rtP;#z*;_@A!}Ix_-a^ZYRjXIoM~-If_mO+mzNu!Y3)LS zI*-}~qwLK4GbCU?dnHTW*f&A1;TAX89&#=XRN59jlmRCn9ufjJ0;Qz)KxS?2K(E!uvHd72Bx19wYBG;kAR)B~*E* z3Y-m2LFm>PQ+a5tlt+ZhgVt!RM(aPL93EP1iG@kl(P+u8mm<1emN_Qxvm_ro*d(F% z49jw+z}a9ULbt}4=ADKF(f=g6!=Pu?(SIcxPFBLE zjsHhRGKQwJPV*b0y9~O!j{Y6dXm2P@qi%Xlc{YpgcJOKmJYsZr@N6qwY75b8*K(7|7svT8E$&pYSCQJGekX&3B8y z+2DMHZjCX`7kW^n z=pYU$k_H;Ag+iL1i8PW1n$sFI`H3`=2Ab2u%mo1AWFkyGtUx#q_OR2rR=7TUm&9^A zS4trA6e8u>)n8$ZQ4Q|}g0n&q070*$AcQ9{JW|7fioK}2=zT0wH$%u{KI^7-1_%c# z&Z1l??tKpwX{|1Am5hbf_EDtE#HC`nMK`}*eIEwl8YmM@cXvF?9JCVp2744Jqy{?_ z!u$er;!;blg8CcJE{As{O08CnIgG(~k+o>!dN^dh3w)J<5{#>D_X84S}xTORV<}a$8FJ)Ctz}x#ubM`m(}nt=+Aj4 zJc#={8OxiEQlZbNxbsHWp$nE5Sm@|tyYSqB2R*oiAv}CD5S{VyEDe*17cKvB7`Zhu z(B*DL$K6t%m2vMT(3TwII9-&Ky_k|g3W4^N_gAE}p+`)J%XxoebWdMb!m7SDw0}aZ zo=JGUvXq>clo?*mYeCeA*1To&ugk%_ncY10(W;*fWw^T*!+4SE<9rn_?qVHR#rg)J z3hNR*Rcs+_VS5-8(&cWe(Aurpu=%ibHney7 z@Wj>wP=bN>^6XT%YUlq`%(^hK6~%7hilN(k4yZ~}XY8c}))pTn4Kz&}Q^H>7hq_L( z7wxlOODwi`v%YiPbv8=z03PHNL-oa|{&~Y_kAPZ7-Xmeh$gL7)Ms7qn`~&>4y#Ij0 z^5G$Fo8|pWB74ZxKDfZDekIgId&h~@XB9FHwZ-woIPED}B34pf55_92qUNQrcEVi5 zEw=(dCTSp(DevC`K}yEa(r27vXl6R_0L)e{z)cCTX$fnB3<<-K2y0~+j#0EYBGTpR zicd13)Hyog7-VL~PyIP371^2G@J31dn{yEMu@1}_ z-?uD9m+2cEDh;{w2D{)egNsU@RV}!1JMlGJJw+QBvPt{cLrv$f^vpruO{BX4*r^T8 zdjBT!TokGIaxv^9FkRxVTI_s0m*BBX7{aBX(;3gMW(VOIbFqVnZ$-0b2N9S3adZ%9 zD$+s3x1vF`lsl0^03C#dl=Iq3ZKi|3C;_LPpWHc0_y3Az3){T|70~YIyAd5+qe7(JcO|B4_g{fDZ%TV&8Y*woPe90; zradn<58={lJMHl-c>7YuoC95snyf41h{@WLxy@c2Dz=v3B#*-kTJbJXRw13(g^s{j zE+H?Bi%o{Z$OFR(qr5aRB-Kq}aVA@mK5`1QTQaR3sWI$`PBTH{<)DWf(Ze;FM6CBv zn4MYoYp)40$P1l&4DF%bZ%#dC-2$pO9)=-2%L0bT_DS?s%t`A09kKI<(s>i@d=l-92|$yb`)TL7urmSLIWabiW~SNI3yqnH z7{kctFldGborW|z z$+~|kYp$&iuN?0&Wyd*-Icc~JI}>yu^yxQ3fBp++AnY*9C#i8{bF+F1IXbDwp-n`1 z15aWlIu}H}eix~*OM}S*W;Tt~H`Yb8z;o*}g#5%=4fNppd|!m~S^qM|_YNhr9N692 z1HrOTEcfW#KdnjS6!Lo#i7Wn4EaF9PUgn+z9RpJCmsn8z!|L^wtPdx^IOEv)(RCSM zF}agDe*xiaisC*CN@%qh>s-4GfNRR)HnZwE z6pEE+Yh?RcL+rVStN#p6nQ|h;Rr4U7Ht_cg+qJyfTFsu5X zP#dF%?23yX$69KNic@IAqF?!*whQf}GDl}d%oMwBv67oF_7vy986R$KDqLiRwA#x1 z80lceZgvl+>Yld+@fL9C`y}Bp>1fHRdw1z6Yv~_YkSwZI0#W`UGyj>k@^ZYVipL) z)YDy5+F$qo7L|r{5woa-BrJQ7w7~LF7653aSV{tzWpPOcz#YrNn%gx0+_;TbfwBfb zkv;U#F6QLY2VnLao#%5d_Y4H^C4ll`rTAM+`+toWNNn5aFATkqrOb+=LESg_3wiN* z7QG4kRhvwBwuauNkj@<+?=k}N((?6n=naG}v+RzzMqq40SW-75E z(P=BN6$=a18lkO+!aoPnW$Y6g1g5vvKx;XXs6B)hQ>@-Vk=Qm#Z@Z_S%|Y#rY_?uZ zhDu_QJvKXutu{)fb4b|GEXq=+86z!sd<6g#TAd;U0OD0d=mu}^#En@=0}WO=A3{@vp8bTUW_b1%o;-O5LY_tBAwivISa>jyh;EC8 zN6uB_n3v|Wgghju^Q;n{?S`k=;3=rrNJ{8@+>6}3Ah=Lo)#|( z+(p&5pvB7ZabmDPjow%YE-?f#4g$6g1Z)5Z*me=n)e*4QKtQLq zc3`x3#51iOJ?QPEW3t2+Vh1bY%e`Y8rH9w~btkk)p)R~Lfy8->1m-xe0_YY`^{`Wc zvENzLU5fi~_q2DGGIETq^KF{QN4ZYy*BB!(4rgrtau9gE7$Yi!xpZl+vFyReMzzaxZ{t+e&hk0DXghM3Z!%To4n)zK!I8qYsWCGod zC9g3S(6?;=4kU{;2>591Fy^%(j(~r-;BF!gQx2bizZzNiXyqV&7ZYe_0zO(KaMy=8 z0zO(KaJPjx0zR5J%JEKW#m-N(VoZ8Gd;7bXz#dK#7?W>Avjkw=;oV zk0dZA{f%9_1EAmtNCUEKcN53#?;>s|{s1OYyN1qGnGH3KR6N<4tBxOoI z!uC-8A$l-9zgqoe2wK<<#8CsBKe#436)ULCTYgp+DpqwP<<%e<+0IpN2gA!~ct-h(5T%g8pWI=wsE`@0XWo zX!}p04`aJcS8`}1j2(k57}EH^K%`_l-N#tlIc%yo9%1|c1H2BkeA%%Oyn}YWlm<+H z#ara^-f^WGwKcw_z2R3e*WNqhAtnLl*KN9gowc|7!$7~gk1DSwTJd`Kd z7zgr8*Q$6CLURAdDjwQ1$*Q5Eo$_(E{}}LipIF<8I8Na?@`4q<3M)z;T|mLSX`mR$ z(zx8$fewS5mtxMtH|FH_f2LWu`X14$y@6Ta2;onF*P-6qAF7n|9XP*DB&+Q8SxV?(T}4u55AGm0b(8c4gfd+7aoBhh5oq!T}>mQ(A2M*8mZ1O5h-> z%MDx7ZW2s0#JKj@AUq2P55_KJPn^&ZChl*QSYwDu_)F_Uj9LAZ+xccI;wtJMz_y4- zn0gMIANoLPep*RdF`%`jE{uhBhz8aXLyCFo%?*v6Majg=NjnqwX^0}0c&~-&xx_nw z9RVYX!h%dzf3~-c4Gryz{lgN3YdCh4_r?r0Z|STQyB$6z*KXNL@aRz*=8}2o6Wzt5 zbw`9|K{Mtg&zuR=wE>1Aj6b583d7L~X;DYO847mamKy0jb!GMA?awbkWoQ#_?t_jPCd2~7;K|ODDYvAER zfIM6a7@q6Gysu~8B&hSCrGtlS1oCj1V0hMs`CyWr4oCofJ+2a{ulM%4PpH0V*pR~| z1?6y6VdNYd%E6)|9gv`&_d4O>yq-Lq+8Z9MdbA#2LLL&(R`)Tatpot#;~_$TBXKhp zO6eIonXIeN+I-g;I}CY^eS(*NTsx>@46xi91G&QHj=T3GX$-UewD(Sy4AMUlN*4f# z`$L2PQdgG9ehJIraf&Z{Yyxe)QHR`wJ84VpXv;r7t`u0>yBL}>twJ~t zdHh%B8YuwsILlW#>KFTnuI~hvx^mfL>X_YLW6y^Kb-!3CJnu3*95M|L2S4HAh!~Kd z&a!v@JzesLju^i=D=+FdgHdGv8#& zIp>SeNAT?XRtcQ|rwb9+^UnDE1mJ8ihS04shD8v)9J=DXGZ9VatSR@UMs7`b?I4g4 z%Wnx)E>01M+=~&qHO5r#T$M{iliY(L_b4M5UojAU-yosNyG-D0a4AB!#+b@O8>gN` zs5}@phg}((ievpTkoz(t_bnpB4z7^U3EnDUJlG|n_cEA0c(cIS;7thK8e^Id`Yh%{ zg!gi~JmgY7^*-9jzgl?h;O!Es-ft5)8(f9ZtudzZ3M!9?COgo+FE{dT6ka=cr-V*$ zlZ1NL;0A%S!8;JTHO5qKzse;da(BUr(fM8hxt3LX2;QDwA26`;ctQ0DY?a0p1bSa5 zCPQ>T@1H>Kz&MS!uder1TC-7J*i`)L{i1^%+#{jt^*({K!Fv(9HO5r01*#Vj5xvxY z#~OJb7G68}h=krNSRWq}I2(Krp<822XN>3 zypjJI;k5&t%B{D(PYaw4K84V&F{bkNR(V7;$)j()(#ZRw@Y=zbC3J!>NvL)31%b1{ z!wB6PV=8w*!~9C%Z16Nfx5k)egto}ehzK>z36^|WrI60c$wJ%v zE`1!>K{$UQor_}ETJqHeobNVd^?vLmqvNxZtsVSPLRIAt0%wEYBXnzwsVbP4QWYX5 z)zQgD-oJ&{4*n&f6Z}U)?>M&a=LF6M|3v847*n}rl}m*8O15v+_c))-T{Ff{Ez z#3Z?=8M(8C*A6-*bb^e8YTsD`XM+xeZjCXOyHw>8q4q`fVNQc%F7@iG*Wc+TpB|BA z2RMCS?`!e`XM-FfWC>la=-SRkS5TM#%K%tz?f7*l!6RUQ#d z{y=#fjl9LeYX_c$DsPd%*LMK=wq59{60%wB*5V|$SR4&#QluN`U z|9q8^dxY@X!Am7{f+HnVxrYm!4PJuKtudx@vHqZ3B2;d4I{lEDPXDrb{&0@T?^uy( z2ggb1oxuL!7=g3FD-gOh#xx(SKbQ{@-g@>2(R>~@`TVLmpL0z<8$>29)=8-MB}WC$ z2I~>JHO4d_tc{ot5qe(|b`R%yn~l7)gctWOCDi&nQ()Y`M2P#B_^a|T@1i^+v_7MH zV`?G`foGcaeznQxT#;!9n=7ZZX@YQT^9zwUqnC7#;=0k*c>co7$Z1VYib3W&re8xnk9b71(cN+7l z3Y-mIgAltJ_^bIGp!pEtoiQ<=ub6zEZO&(l$>((<(+)0{(A&s-UMp}mxCo(JV@&fo zQ1c;zue+Q5>Z>N7KQ-s$n|uP1X$Lzb^fob{?E+_m8bY_mnC5ek=0gPEw>RhWHIvU@ zn)A89_q6+7}I>#Xg)-Eo0-pZ79G^JE3NV-vi@ZcEOoip z@dXB!T-SUQ^G-{?1S6jU2|k4+ZmYoBSWi;`=Fp8#g9!Q>Ydf6F@jlFJSvf2&i0$WD z%dwB}Gz}ArpR>yatM++-I!E7KNDp;@7TrUAA)+zwIa*)?(x?{}DWaYopn*HZYbLOG z;~>T|I?shU)-nGkFVERs+!Bku2DZaVTnjh{hkR3L#@M`z-H9-c=aNXAI6h1tz6F4_ z9gggHpFsgCNx4ncTG|jn7WN+6TchK-GeIuLpwY3P!W9&^i2j8hzO}U2uzU(~4EX5= zNa^0IQA3fNPQ^)5BX`uWX^2TR)-ZB0xO}lQcgV@Nmu5NhhMb;uyeAfXdn!M)!m6*~cn#e7m6ZIm6a|!Q1bOWnKA2GDzFE}eh2eT5vgOZ~DM>uygUx-6x zIF8OM<1uW@#j2tkDIBaKRmc43K?x+;fZAQmrE@W0^g+x(akuH%8m>X(ARi)me?I{Wk8CM*pZA*|Myvs@DmS;6x%Z>Yd zscACEIFbYI1Ws*5!#BMZQ({Hk6WbIE>k$K(Q|7T;G(YTvp+41WT9DEFXxgetM`Kz) zi|6taUGRFPNvs#a3ETtB2NV|;h@`oj6U8lBws2j)BE`IH)*L?{gR$9>GooWscXfTl zuR@+tyv@nAT8^6-l{#-rmXnF(dVGj*#WM+aDfG{afBp&bE~K2vdwuLPuE4{v%{+ud ze3ya4_RW(OqFuk^W@lq3uyGFhh4u{hh3pQt{ID85IBn$l`7|9VX96TAkgC`DS z#6Fy7VxdCJI-1-WJ9UI}Z1{%{#7mWQv0xvMsz zy<0hREgA=rlXJX(vG0-FE*D~k+Sl%uN5U&Gd(iE^*!#RG?LTo_OufCnJ*QV=<+^Y_ zJ^YJtD9}vNV<`S0QwXmMdP1|Dc*^j7r1#o^8-CwpR;jhQgPmG^eS;|l<`1QLCFOYt zWEs6yuy2Dzd^XJ;-Y60m5j=5{#Nk6Hp^_dB5v5m`m=KEcy1@?7FXWWcwk}EVT<|rZI7kZ%ONCx!7cw2|uPg$8w z6pkL@D22!f4iUwMFPF&KBiBP*qOfIzJzJu1;mG9(hjCyn^yvSvULqcimkr|4wwFd7 z6|FpGPyos}7u0Bx`SrUCN65EThK0!XiU_q86z$$YP6Ho8%MG14VO*&9#nC~}!GvsF zmEy9i#fy(CkVB;#f*We=Hezv!-;1FcCNTod@G2Pg|k;?IR*`AWaN{OGW;?qcu4bB_rLztA&`^AgDQ=#{fDJ`NrWXmH(d zyWmb4xeWp^4i1)vu`~}`50`IK4}P} zVbV3?NvbA%+e~Q=j1CW+(rm?Db8n^8ybj|%<{fzx;b=JR(B-Q%NlUNT!ya+DHO{Q+ z%e!NmmUkF-qoa~6>$G#@cWeHuWnJ-MRY8><>f~w<9YZB=7SdQJHcdxz#XB_bN&yM= zeLC4okj(*2&0%*0`m-#5LSL|reTz)zu*`c1b&7AOF~D`uFCoZzAL9Onl*t{yI(v6} z3X|t-s=OpsNRI@NfcVHL!qSgZg@q%R3uf`i4hc^lJfLKX;pRt&?#G`rdLJprJ(jE1 ztsXTiyreu~La{9*$!Vol=2|llLpTq#e;#VPySw5%U+Z) zu09P2R|+uGNz3#l+lDXW0E~)NPsz(7)rcQHyD3d(>0#1KnWUbOAKh)Q z88M^@Z1=JUp#QruydRN&PJAd2v(RxI+Zi4EEDRj5e=EI2i)_c2<8VCNgElOsjoa~2 z?_+EpW|RDrfO7`^AmD}|eD_^Do8lvJXDV4v+%d8u+1TE_kitDVSB6Y%I^j1Bux(0B zwW#{HcRegw5OigQrQ+YYp>UiB@n zS4{>zY~D$T)u4y5w2E_gwaZb~!zMBR`W5owHe#dEVWB2atrXE&@ z%q(9wV6W1Ny%Qb7cCmA#vUlUxdX}s_2)j-z2i)@M_%@NQ5ubs&DbTY!;`1NGr8{!5 zRrWJPz&3Ink(hZSvUFwE#YWi&H8QfBDNjh`l)+IK1=)Z2JBT(7KRGk}tbR2cc%et% z&S0ge6;7B`Kf{LrHH~3BVO$`spYw&)@U379pIpdqIW8XJwBsQ(ed7#ntEF%767mMG zbTAGYE@U4t8+-Md;$gGR<;3Vcp^>BA)9#4|w`zD{>)=yG66!3|oBr*ae=2&!`;mTPqCV}U;*ugw*m>WfIVe1H9K_je5IQ%w5nyRWJ>^GlBFEgNBJu|X@VnbN+A!X`$RfTy&?)RgfYvxVC1n!1`nb~#!2 zE)s|vtAxTVaSgN45Oha44F>KAFT%TM-BBWa_|D4PS9NaA3sV4C2XxJ7eXB7EZC*Pv} z_iBkt_i*$`ngY&l)~0l&yz}JV%_VGm)$_X0O1aOzim%JU-tHmv7+Co=>KY5Y$^lIZ zMSGhIDMaRnYG}UZrHF6>z_BeQeH_NprlitMSSSw74%u`nUpfV=$e~#wQtGjEL`ui$ ze28wAQ%n^+RFq`fitkTUze=6h{iG%h7^X)|L_5P5*YkVq`RkIK3^YY95ff-vZ_UyE zAHCy>?$BhM*Og$PovaTX0i%YmFTlOIs3l(U_t4d0{?FfS%wS%6Dfuub=ORos!ktoP z9gp<&j&~t^n%{y$kE(}U^75hdHm9&`Xmb?3{A3fGFov?Z4-OtQec~p3I!?t;!MQH{ zGJCt-yXH0&S4ks#ML5||UYl{MJ7JkV{jgwL#wpC^Me6jT625CNU%@@2xHVh7oCak5 zV%5p%Gd_AyhF!L0oc{Mfyd>c_UK}=MR9c;UQoh37t;~f~YsN_r<9-3Qw$`{U*q<-Y zf`vxq1KjChOx9zmvN2Fp_e3TUQM{7QBPFVMO{}agF`>*jFDS(#>lfz8&vk?Y=d? zgx<;WJjZ)2%2HT1_BsR}_J7m6_Qnb(J*6M97p?sHt-~M3B*LD*=0{T2ymQ`O z0PyedHKX$7cFnS?&(=%Xp{1M^EoH>L zA|5?kJi46D%vMP(UR}-$74HY)&|S`!!m`byyRgIBl12qT2yCi+`XuJAOeWJ@rcAv| z8B-<|vS)5rXQYW`GFqHYEe^6c1zD*48D{34-QG!b?5<2#erQ&vyRKjX+?lSPq4kqg z9FUKn_iqQmav0*!+>7yj=^DHWIt!NmVbrMpqDFq`j2G51EB>WArZZXNV>@1~k4-8; zq-t|v)#e&i`{KH-`B*w}DS-_YbFvSGYFUFnv9HAz{UJ6N_Y`2F%UUWQZZYu9*3xfS z27bN0^j_P*CpyJT9f6O=bjzH2;o&RnQt~%g@tbh;Vl<2vnajju@1bOlK}`d)mDht# z{OskmtQIpph)gL8#UXs}u!Lzv6uA`V8`JdaC+d|MO@D!5R>%J)iFgN`UO78iE+8EF z7EChyH2&aZ(a4<=76*?U{vSY1vzx`?TIxReaA%|hHjZ3A#4&U!N8#o|m+(uzk{B*_ zS68`MHv80ik|e^Gb);2!uEn1#J0$1&>=@<-GRMZw+sY+&xQ4_n1o_VVW`ukgw=rKnlN)r0mrlhN z-O4uZ-DLpbM=4&$-8(FIgP}u^edyHO?u%%GsS#ES#X{mshmGb6y}G4@Df~o-te!w}VU%PUeUcM-d>7cP zlR)y`Itj8vFJMTRon8-{oESq~0oe0M{&=U@87{$|vwE0KJ3D?D<0nY1diV z&zf(>%4eUK-b>^*qj-c^1=HIEf`(7mHMFYzJz<$e37i^MeLehSC*4riPA^uEOD5}~ zDA7Y?iynla$Eo$at?Ko4SoFZ{A*06u|Gggnm~0P&5>`P?>@dwNay*Jpx*>J zTDNyFiiz*4$QOwE2F2OGK$9stypT2l9jevhmpL)&!(T}H8 zG2#Lo8KyWBJ*7FiB#c&9z|8ukYi}p??DqbREVo5VH)OOuLREkt>K*3Sqd(;D%)LqO zW!S-+CDgk?mkXQ?-iXkxF{XDl4u*!f8$?9?ZcyEft4&5D45J$CYZ8tU4Y*f_m)?4= z-g`aLtQronIvdd6d=C_@ZlP@%R?4)hReKzNa|w67?Zw3$_`ziFWk!zr)Ei7Wc8Sh* zaFv8kaHWLt;B69Wx!x*pHn;+zTVqViwN}eTMC1;eBj4S5Bj*Qp+}j3C!%OG*$u6pg ztJ#if1?c4w`yPYxU2gQcR`Rri-4Z&%brQyd>m^jZt`RsJyd9xiV@&lrMD-$Kvb~3m zS&w1Hp&Ry3<%X-2((#TXDOv)R$Gk|CkJi*0Bl49hvd}6QZ*A}BdfDP~EJnuCLTd9k z-)J~^PQyD0Z3oLX+v~p*H_nSZ{s~s>188mH)s2&L<64)n5q)71Lb36@W*et5bBlW? zFlP&2rH*^+RSEj<2Jqm0xA^Zn#ddaZlY~z2E(zno%@X2%@+|_Wp>Gs88{B}(qQisQId<7t~5zYf2XPPM4z9^S;95{XUV4?=nc}1Rszv9=u;d&HKFq zXM^`3bZd-h-iK-4L`-fYhicB=#xP%pzeS@q?dh>Sd~1J_%}z2+2sZZ44EgjP_gjs= z9~E8j-3JMs;9dz;Ph2dMdx$t@0zDa1Jzt`F5;0lNBaNP$!u%q7=CKJom7cYTo@a-A zs^>1F=l!CK9ehGUC&2ss`hDJy3!DuwhC)xqRL{dzPa;&$CMP|@RHb(gbEFR)0efC) z^1~hvxmC^MJq7QEBN$3P$lu+yNA%U~Og9z~{Dg0Gkk5pZW zn8G#}hqgJNS)PCy#k0VezQFXhO~yPnWbnzb786_B!$cR|i*&e6w8w?CI6sN6`{M_m zQIIqy-+f>>Tn9_XfL)vYmrTJdZVv70jMgis%Az>+-Og|d( zZYOV8E*!j)a^dij`23?1I>EOk)N*}OV0?!JA-+R`zgn)Nv|L0?QLYVPemg>4ai-en zdb#K-icG2NNg?mfsIG4}y8e&oV+TKw&&an$ zmxa2%sjlmrMORT|N?lJ0dEY?Z1FiYChY9AC)pu%0iqm*neQ&8}bA@ChGQw<{y#F-i z#Yp{TGFOogKB)(!h{*j9tLwjl8D3&Zy`0 z)~WMaHBDX{Oh0|sQ`bL{`m}?`By@tGN~m@HV}Y~5 zj}W>w#AUh0K$?wsXRy>qC9tUf1^;(N}mvu_svbkTqY+c)KN4XT6+{QFE?1nqo1Fd@dV76X9z|_p~a0!GfO8;XN_EIbn&_8YuwKIv4l-N?~7>9xj(e=dG%2Tw@o1W!sB51x`x zefe>Lv%wyOZjCYZ<(I236ETG^`(Xj@WX55ijw5B#r~gW1;+sbjI>E0c)cl?nI2-&D zp<822^LvHnN5mBQT@dDXH}hlLxq;S}@#jWBjwgytS&Oex-f$#ts)%YR_q~+MwsTXx z7IETk((v8HJQgx*Y{@8S9n5wKNRgZw~`k>F7y$2e?{g7AEc15 z1C_afzBiuIU$A2=zjj;q7`C1dQG)bwT(ewn>go4V7k2PF37y~%62^mPCDi)*t-#sf zHwfJtV_IL3!+9qWT3<~q=OQitls12DXq%5xDcby&y3KEWA)6l-GJi};)R-r|!<6YS zqOTqNO+qL5tAtvXKMR}<{)Eu2F{WiXR?9+!mgQ_yAN)k*0g@vYJNpxerW`0KbEZf+ zNK&xy5S}K_I9!rYC7;v+uT~f!VY&x%v%+gfJ!WQ(Ltk zf*ZT}+PRIT(BlV0X#zhF{^!1&?&@BNVT) zaY1~xjSJ$f)el9fm}+_7p;yM9key1h~J z(Ta%f>4~CGQuHI%oH-G6^-Pq}zf)?JCA1@O!BZC4g!UN~>rB|QoekuCJoqI!%{@>a z6Fa3Tw#3Ay*|5C=?ew=ShuO{X9)n?wpw-G6eUD+N9gH7QhSGsrx!g9FIupMUc146m zWW`TQR4^Ih!_(qY8&R#YbtTfg3igizZfId6h3EKBgb9|TjagIe<%W8gZCt$ExeNAQ z@8b+(y3`v@#qZE+qNE`*I*`sS`sojH4t_{B_o?qXdN(?=ftjxDyXEu;R+ZbL4>m3gNy?~^> zB*N{|LRqW9?4B0-HHy!*H+)ClHQ`-I?49g$bXvFM%}zcsjYB3dqi(3cMA`!m%)3E`mU|Vw|IXiB0?bX20_mI2MMmg1vj-q zbm^7zR$)0bUlsg0#!*@Q;O8VCpfy4k;JF5hGUlU<)5+$tE+Si2aZ||VTCQ1kgz;4D z$r#0DX9h8;u}Fc%A`|1_(|SPFa!Vqt>4|g`<0piL)}^pfU*^|4;aBKx_;n+#Vat=B zlQ<894F)!kzn0qrD2)AN~=B6Gt4p)Ebm&%c^`}t=?)|0 z@NrjufAw9`=IKf~WW+4wI-Qc?gJ27q6ymoAow7Hu@B)-j}pynPn+Mr=0`fC#xMmy$$JlK>M$6 zS>7LE7p>gt`O}Z#)v+)QKPuX^7b``=Mv!=|90}pPqp+9WETt=pAKLsK&+z@viXNQ9 z*u2baGUE^$UUTUXpf86kw_@8R%iiQ_k0*Y7kg03FA|t!JFFOt2tQOCV3gHgwKd19N zk;QTL7LF^~Ei18}J|CZt1AS3@bG#uyN1b-c9lRu}1UQM zYf2(NI?#&TQ|rHTb8>czUHOTut!%kwrtiB}BMfW_b>LAnM$XHn^?Ab(SD|VivH&7ZIoI22QrNO zR_q5bTgByIV)0wC$74b_>9=Ah^7X*IFPx4KGu=N!mV9H0(_V=@i9w(q`FS+*T}B#d z@We*s2}X{!YJY(|+y4l1#jG8Dyi@#yBK?mNXW)AQ^OrR+CnAIYF~pS`T9C_M(E)j| zZ69p>7AqFJUF^Z6N;ZGxoiM}zKK%AK#P1lp58TBFAHB9N#Q!++a(Da_q#@Bh5N>`d zJB~aucv{iN{1wme-|#2G9uY5 z>GqWGrqClU)X>PIj84aY00j6*TE_7|1t{ewN%=|*{Z9kc6)!Et@9%tuAbJleitxJL zXMyuRhd<@^1kPQ59*{@@`M&5HD_`ByhM(_AAUX%p#}Zolxha1(GwDwGX@+eH1%x#z zoU3^kZBIH`c9Vv+C?&)-=V%c>SubK&GL!T>Ag!_w00+P-%q3$6mV9#u;*D)AlQ6iP z|6r(YY0TitM>a7mABjdy(aSJfesp<%T~HIgAr!2gEL|Qz8-WhtAQ&y^0TT+ENfgyN zsy{^KR)2#(GBTK4=qtNE$7LeVzmGkHB5Xsc@DY`m6?-PO|Du*QL;>F#`{J1`X@xIq zdE_WdV9r6fCcA_FigtzAsGuPG$|IrQ zUC__2v|upkgyvjhd;uAkSK59LR2=&vBEWqKf%m^CA7+Tv_t)*T>jHELQV;lumKL1* zp*tb>ZYj5PVCT7gH`5liDi>u7p95l0h=_2XHL2QM>YrF{ysMT26YU&CGv zdNjyuFkgeh8Vxybq+SX90E+gYzkvdlHAsNYXU!HyHD{x}(h5>2GS^@xcmbP*F# z=_rfa0&Zm?-VkCpV=<*L<-LKJ-O97JIkYk`-Lpe{2BNf?-sB!k>qjRDDE- zw+aoTf^TG4UJ7L%TZtCqxqu=x_<$iTJ^<P#YxZz&>!OuK06Uo#X$Ink9?=RDFUWuyoPQafwE1!(0qdl27 z4}|c)Cg$Q~=60(mH8b;^?&;DaIYqk9E~k`1ug?JjcWZE!#zU?^z&F#Cr+ zz)0t`&AC-b3xXI)R zBrd|CY8gk3(d)B@Xa%-enKlp2p<(nFBdRXGUZ+LQP}19qEoZU+JE3L4Yr`?>eJu+f z3E{uCEXY}A>^j(5urY+Mv=)3Qgnw);crJts_WT2EL%-Rc|7L}GKW;W0_dPJ2naq6+ znWu+;j%q> zd0;0~yc5xySMh>x!e54@N`Itp@rKd=tmYyyF?Mh(2D{~;P&%c``R{>I731?5=jwGJ zj!5Vo*{3erKL{e)6Wt;uS-t?j%Ls8P@7gq4%zCI%KFX^8G#rw&AbGvHCL>cqrmj0u z&E;9$C=XLSObJRdgc=>4L&=oxlX*EYK( zYWUj_xVjV9Aog_NS5k9T429Z%6%XEr{)cZW!nhbAW4}Tu4g{EZ!klyS<7gd#`H$x; zX@>X0pJbk()88Q&A?>bu2U1)gqeFT}YqOR1r$!v|80yh1RKl9Z%F z(#1OX{jaNoX5!lNB!aE;{%%6zo8Z91Mh_DiCJXVQin{(vH&J!le|AclA$F2YAoKZ%Owvu3X|X*WY5NR) zTnhBJTV~V$pNj31*YyH@K7}@L zPu+gK)7uZG`-dqe_le6}=fahUkKa9pag-2eMLBo2{eOe0yzgZ8 z3b^xyusqXo|80^I#6*->3Ni1Fh-oB8m3XeML?fMLpb}1hLy1Oel>09cC023pcJ)=p zm@BU^+HF6i_z`T?9P@q*)Ts9p{Oxi&oxQ*<|Gb|9gI%z4Ys!3@v#s=!R5S0`W1#VV zM#9bfS`D0HZ&&vd_aJs&gPMExr+ABDaEQdm(b2Yd*Nf$0w-XgX9o2A+vcXMc@8c5) z-w(gg)#xg?NVq#8L+To|CW9D|F%=7+^?n6CPGsKMTH2V9Sts&euZ#BbD|E43Ib7H7 zWxU~%eFj}@D^eEmD;8PR--H@Rh@=mZ{x4|;GMUC+zbBn2W2~KnR{j_Yp}u}VY|Hy) z87BQZR(D);Y5#8bOz-PzQ5z1;AOEZ`#Yg zzK-d#PUmQ#HT(p))5f} zy{R<(dOgHxTe4!OL5B~}?{sr+wuX-X6f?tZL0h-tMl|$)0krh^=~A~VJ$|c`(9Jg| z-?j%E!Q%11*n{g9P+2@aS4mEQ3j{@ORW*WxodsiEao_4cq7vs%V;X!PL^ zx{T+J!cVK}G?TraxekVJHc^gMdmexDLsfTO5*b{ChZDv%coyMFMSLz5$6&n`gpsDWUVQec57$qlDRM*3?#1uAgj9Wli`>Wuz?ld04nuPL!lggq zi6rhp9gOh9umkU@^QF`Tx4Up;jS){oDW_=%Yk@2@9LmFcJJsZ(Tn zcRdkyv-x|2+<(WJjGK@k+jiL6sau@2TIZbZcU2>#&p1idjo)Q39fZGpC={FEzhZOS>T zKLLf^H1$>7ha_>&;NA-K4w8$WH-YQV!j*7*-nk6Z(vawQe~~2bV+inydNiFo;C$>> zPh0o5fo|HwJ7!9}Wu`>F(p0fi)$X13)NQkD<8blN;T-?2dh+#??7aOyFpwP_g1=U; z9=t0~;Uc%zMQGbP2G#OW)3*Ah9pU#9C3J$lB#Z|OCDgW75E#Foh!DS@h`-v_(Eqco z5ut5us^UFW&wP>9hpYLB7N?^7Or373RD8~5`kJ}9o(PY|+0mnz$EkL7Q{Ktv*$`xV*@C|4Ui$C^)7!GY%Dq+YdUxSLBZy%E&R=MjkFuSC@D4oPn0;07ycExI zcuvA|CZ1R08N-A9_}DO)<>~@f+&_|;BRrI$BfnJU;oPwc_r4JwW86Ptx&*x_=e^~#JWryBo-y@_8B@P9W9pA)O#S+dsgKQ=`i&V=e>P+4 zBQvJ{bjH*#%$WK=Gp0T~W9s*2O#SAJse5Kj{oIVH-<~n`!5LG(Gh-?bc24iHUz;)Y zCo`sgX~xta%$WMw8B@PCW9s8Grhb0L)JJDbeQ3ti@6MR|73hF_5$MZy2j8v#YmaAd=y13{xN6HgM$k^5XKL0ZdH1 zm!N1xGhH#?zra_7;(8^-g5dp0U_q_`GREmoD#;q8>cqG<$k;uj>pbYkSrlhb``}rN zhvVLB@LYrEHarjGc@)o|@We1t;@&rw;IU)zoQ~%*JXhnvDW}+jc(8F1dlpZp1zX`+ zi{}-1s(5zdxdYEf@O&4~6L>5eKP-c11)g5OO306FI{=NtNGh5n)jJrQHi zD1Cf9yNUGixc^#1|9hd|)SxF~?3eHd$alxHD@pIh{j&`{b~B;=@eO(+#(tyn6XRLD zAnMD&IoO^$FpaW9_FbUdQ?8->&#TjOT^gkls+|{#bTo`1N)p~ z=&>yW`mu(5BF28N^y%^JS)|9L@j^q-`DlGI%E~2T><>!cI-W&?>dUmo{f&m6b6Yc0 zRr?b$)}r)nD$M%I9lG9X^;CG4E;i(H#1Pu6EQYh z={v@=2avua?w@SvIS)6JaMg#1v82+^8qZ=+wl6a)?w@Mt2ZY|tNGYF)F*F<2@9gm` zHcI+3v*Z3*h93Jsknd}Z^hC%>W6)>xC^vpd#J|AM?}g;(0z#D{cI=OuN#}U>VrJ60 zi-B2Zps&HM6>{3Daice$G@;J_TXrxw1ByrS|yx!Q`@85I@8~e{v$SpYB+r8wC8Ym zU<6-my&gZf;{OSS$i&ZGwm1Ip_eiaVbnZV9Gfebzx%-!M-OtK+hb^McMRm~$O9Y5o;vc7 z269dvxnBd>TSu;GAp7dbmo$)br$WxFBUjZacZ%f#m~ z`;~l{#>c^fK0Q|I;9hM{aZa(f*jJp3Z;+)H#V*jTqFpp`^M)1mTL!iVn4j#M)DDKQ za#EGWfmZaFJoQS|@!mbV9M$D|SdZ%+;SJy|H1jrisDAGtzFb9ME-v2b&Q!5X`J4?4iy@(2Bdw)We$a^#XCPDm7{!^hCW?4w|p3< ztQ+D4nIHAP%Ul{f5e_6`Y)Rv^oai^6olEibHXH+QsEn&q-lZsJ8Lt*U%;GKzuQb9~ zdG9xhGS?Y_>IqTiDkD&H6om_&a)ppa_U|MgULwiztQa*91K|MqF{QXDI~ALBnYffU;@&Q=aQ4hN9B4?p*;kTOXYIEQTePa;)Q z^ZMUjJ$jH19Q(w1YsB-S;;@u^)!nJTK zTXgm0EwX0@`SsA60QQNeqvuJvO2UvCwo%zvz8dmBE%HSjC~Vnta+MLf^xxSP0V0SAfDcG#tE3RBSk)5-2ugDBrRRp$kwqpL7SbLf< z(d^|t-VT_Bt~u+SAv;0ltev2B1w5vFC)ljc0B44t&+lnO8wN^_-UU3Ekk7T{bL|+Y zq3aKkD7Zhz7>#Lu=!+a@@n9J1P9|PBzHtjFp~lwi2-0P1@pp@Gf}DeI_aN@SqXm1D zhW8l)L}b&>kWC;bI~I5B;g4~TSDo$t64Js+yn456%1zEADnH%haVJq&N$<(Yn|rdg( z#~?_`^TxaxrWz{2xKn|A_HG;pY5pTm;n3HCigPNxajcke6Ylwqj;!3{6Ebg9&UF>j@J^ zLRDn8V!#srP&9fNeGVEYB;@Eb4ov$OPPm_ALZ-)EQUa=Tju;Eo>Fa-QQD>6@qb-Q9 zPW{di?cd|BBT$EQNlM+OiK?U6hP~FuQ2O;_uJCvq9v;P&c?R=3m!{x%u{)=fO@gnV z8GHkSWqf07UfR+Wn|HT(l(R|f9W#S@&{~aVj7@cxrr6sVEF&O;ch02zt)yHAF$Ui} zGd6D(^1k7xecQ}nUY+7mP$#6lVP-H+FvL7c+9mj^nZXbb#k_C%!8gqeemjFHZI#%( zJgg~W*D+Yeds2?cO>^)y43;63!Pm|Velvq*%w;eXs+(g&Y86xCD1$K@Y7V}I!4$dX zkDq z^0yej!|_{>Um3qE@w*+rkKzaQ=@1kIL;u8&I-7WVIJ7^0WBB1p%n)vU3*mAwd3Wop zFn@#JAMxwJz_kd!qw#~tDRdTo5MG2vA#w6$d8*DR!31S{GevnG_h&G}5lNn&g6&n1 z=lxg%Q*5W|lfq2*OfjDKum+~kPE~vbJf{%P`-z6e60}9N0|ia@ED@eZnKh}Vz)tlR z3VKcfp7#R{O>v!SB?@{@@tyZ`4NYO4>S`1;-Lr&u-js&s6h-ws3YzX&qC4-08v0L! zmX1h4(>+UY=RK&Q8)w-ROVK?`Z0B+Jh&-uJ)D>>JX9?{*?o$!EpOonNF>%v9OJwIg zqM;WNTFaL(;dxQUzYS;9JRkA|jbPW2lK z_ne|SkGnO*y%^9<%ONH}&$$J4{-R0bbl$HO5)sp>B}~(bKrdP5l+k@#WOTui{y;>B ze#HtMg}&j-GABAtrna_sG|Vhs0252W$SvK_;CCbf3$ZEgUx?H$Zs8H|cXH4{#}iwh zzsxAV0f!>QOZR}(T~sqMHRm^_UqZ4n@5OvfreDxPS3wCmnk&uh>}|4~@3B>?`i-(TxD?6t5z{{&%A zQqxyo5lALPm=B(!r%0xnAz@8O;MGmO7-WiFri*J2J1e+A`5 zeY`_uAK$DVBBoWvJF^g(g{y~)30;N5#G*F+*NVNXdN53Tf-be`e-5U+P#&U(uT0>l zbFWTkokTUO$B1cFj}tRoeTA4v=UB0*bdDB#SM?~E_5@ujopV(>^k__HJ<9N_I-Qdw zs##qxrd2&z%y4ysm ztHj<_Jq4ycL6^e&YK4~`3NL2P5z5annqS35DNFxqTCn=ITvUE-dn0X!^4fa(;dx() zwc7CBgwhA(zgP*5Pb2m&gyRYb!>as)eg_#4Xdc8QY7pUA`E~6f(MBs7X`GpCK?9uO zg=SF5@2Z^v66K`X>99=OCqqHF@*?IH1CtCfDu3l1V^{5O^x}cEzr!+Zzl3k)AM~4K zh*7}=0B4T+H|BDVQB9Xc0TEbTm{FZ zV)O9u$#og`0(ea_?^$If1LP&3*yLLBVwaISb_b^r)x+Ra5=^uFbF>zvxMfx`zoAG` z=1gm0@{hNvJq4HwI=a|4i&wn;g-#LahUskCH*n$>8*3bb*t!?w2w~oJAL1I7xpQME z1Y_bz61RK^KG;ldg%@6;HYSdsZ;vrS0yD0Oyd@yF6j#J;XGDQdz-EQVV!2iELdkN* z?B$kijmJ$34+Pbtw)#<{5*2VAhGh@`K&>&^cP|G`;dMQy$8b7kzi@b+J-$KFfTxps zc5rf06^i18wDNb5fpuff*!Az$i}0uM#x}D;oVLs*7cifaJ-H!_@#SJ6(;CQvfa~9l zbh6_c?4D(?;D)g9x>73~QH_Yt(*RdEvbdWK@ z@??d&lNAd1{J!aHx=o*rx=o$rbHuc&=ZYDwo+l>yrdNwaHS)8>-c>ylraeKIYUHm~ zjhr5;kwfsT6Gk1DXD^r^jz`Q7mJm;XoVq5nt_sWlP5xAlf^3>@5*0x2?H_5l7V3!` z=Eue-kB4Kdaw{sOd|Zcq_h^B=S&6_|#Uwq3E+a;Joc3@vK?7NCh3U6}TS4>Jr92tI z>T6gJaK!odsPbQp=FlWF0`N+yL45x3WRP%_}@C7uhIhjH*A z7@V~E40~O8W!kGdR;K}sfK47Pc?u^>Kso`sCPspKvKUr zX7JA_d%!F`%M^w$HRCZnh{fbsg)#L?-_ymrB{q**7*ptt6=2|p*1&oj4lRaxKWLsh z+K0*Rz@9|QK*rqdWk@uSfAq0p2t39Y&Xtl=7$g!;f&V{t2d7UHg-{6^kuPPIBCTT{Z5*XgW~3uBy?FNb0+-de!d9y zQSWl(;Wj*z9CI&ZmyK)nE%zeWioA2d6z-x_PzxZ-J09k@K(keHTt>n3T_~Z~2PI_a z(&^HrV?k=WfT=egJ$bCLkmTrzE~i{*;aXKrOlt+w`Zm(aLL$pDj~8$dn`I6Gyd|{a z5J=2X$620eJiuk=Rk=q)IoHQ$$oE+(3M*3(Y(yn~e zKO++j?NjpWlO=aLvERTeXZ@DB9UD0FAO`LSLa}=bi5ithHf0TO5uC$6l|EG6nWW?P z&W<{Qi&7h7{jy8dH7hg<-e7!_ybxh_JYHC$Q%&I73rEuT79+@TB4SFu0B1YHKM`5` z8sPXYa8&jIRLnqtHvpTr1RvYOtHCjIaK7>@rk#wp6m@FrMpo!V(TcD-iX zFzRQ=M~&4NXUKcsYp@Ru>RyQ0OiQ&4NwFS8oxM=?eG~FIR#{8rZ|Y z63gEoVEt(TU@77hPOAawK8!K5EE-u2!3S>fotXi=VAoJ%;^qAdKK(u^(tPTq)B*NN zip!K%8|Ic9QO7OsAo3`d$zNkk91JV&-?@Tjg~|$PcP$A}A)FAAy`_QjEg(ZC9mW(( zLFp6m^j(8;CHS+Ifj9wLTGRlB3-0Y=s=?#UT!Uj|%jS<%9Az_A*~6l5;`N*=W6@U? z3p}>@9%8|=kd#XQ8AaWBGwTk{!ySvpulnY22wg+yNARy`8`uDEvi&3~!QE#I4PT!7uJ8sHIaF8k%PYjzm(^3E)t%fjOJsuLg-d)Jdu! zZ&&`vsgwPvYDNQ{2w|anI1*56fy+SWL!h&=32Vt1mZ2MAmJcn4F7f9f@EeEUZtn<0 z8YnGV;sb5m8&DjxjUxeE#A?=dUvPMTNg0iLsu?Es}E5vd$aloCQwq=eAY8kHmODg=#! zXJ%ree!z)T<(MGWvwj#YoLg1a1z{AkN<3PqqgHuE5ca$uMoS70eOHbR!v5rk(ZYM@ zD#uCKRt(5iB0_OoZog2Ab5K*%;W7|zppn{&^nL*0XLQfB!E z`23W0!oY=GpH@Cfmq_HcTACblQCM44#*DlgcJ$%G;p zgOC?H^jXmSGv)=eli$2!{&}zESo##&_Y8DDr!=u;jpnDQ*Tujjz@yUqj8ju z=2}bj3`Ny6ipelq{4HqlSw2b?V=Q-^fN=!yX+L^}4P3&{vS9E)DzX(BYANoUjNC~} z+?v7=)L888VW-m0Iz@lRQ57~(Txd;U+-L@kR9*$l+v)G4r@c4;^t7~EQ>^X{wJIL& zG~IuIWD4}miit*hOz>n<= zKzef!0|;mwkQi&~%;xBsq}3U9$H-4RoQwhlW!;mX;-XGc(d#J^k##rvL}0jXB%(cx zW<(n3&pfjTXontEM7p|E7#)t~o&+F-+kD0a%ebUn?BSB_G`NcG;iR3$oZ7?Fg+i+W zLWfiAPU5)y83bwzCmjHJn-q*u+YHM{kL6y=+Lj2Xaa8wJDiLHP3!xvLC$dW&mW!v1 z>=LTuqXY~iuv=vnb0jNtAd2SasKeG2Yjp#A4I^)q@UV)Yr}$DD><03SFFZi)1n5+f zYHYMZSXYJ~miEB2mCzOe>tjaI#dFZIGzH2UHku(UtDK6V!aEZ=h&#njY;T+eD@gVe zEAK>el77Y%ohwt?0W~4Zk0V4k=uZRxHp+0%W^6S-JOwm3q(L<>z8(~_=Z_!J4u8Lk z`M;P2tnnxe;2iWJ;Q9s92xm4}C8GzdxiMFoZo%CK9XOW_4-=xc7Arg60j7<`tz2xV z4WE&H2{<&~y}aK{6f#DHj@D>qI2_GImm^vvJC=wz!%ueSO{|Ab#qml)aKOq8+sUv3 z%EiL#HYUU4tV7{-%L{6uRG2?Ew7-mUhJS@pPud&m9=D@%gxB>WFOwq%0>kUh-H?^J z57v93M5LtF z?kh#cks6AG@GNlXm(1IA*FLE5|1o=z>Y`9uBPlDB3TG}z+4wn`R3wv%cH)EtCcyJL zaq@xYDDIUD8P1KVL^6>Z98BVS#Gs4sxr2*FcY`3uWaYq;G(s~P8C0&;Q7Dr5fl&<- zcQnwlFz%biSzF@Gq*{TlFxZZ7Y2?6cs+H^8!V38g`biI=vLte=Sfg@KzuySQ(D+!Y zEg4R>EwhqsDPV*OS7iA6$<|e!NIDrlHx(Ym9!H3v_1K_yh(05v84(5-`AH0}8NwX^ z2s?Mp;mUHvnl-TWYm`!+Or;Oyw^kY^ilKUuq2N`pu* zwG4-?c~duu9=~8LWf$6$PNN5|{ly`JNFmo5Q#5sS#v~P9F|Lq9B$0}${2sgvH^_l& z(J{6`oJ<&JV?;Vb?6KW*(Cb{qN>nKM&TJ-=A;9>96)0ZB-1G3krImzqU+sgVIUjVZ za3~oDF@Wz|js{3`eH7{wp{4{HXchFMZ2!qvsy&-ZYW60R>S`ZVlDN${oO^s2C!r(>_W~a` za&`bp2xX6)<>rrNhO%MkcGg}CfI?UdNgwC@mbV!~21U=&)ES?Qu}b#pYD!zH=$<6Rd6^Q&-$OCxGeFK3oVX zJQ?kCdH|EvKEWC*=a<6j0LCwd{s50(4hIA=_m7Ct&( zIZY3z*$Sp#`1#5lJ|`3434_TdCxrM^`A z1oM5o@uc{iZ1G|C6`x5;Msleg2VpQA$W+#01~yQiTzWW4We;RL=)~DLwKaEeRtI;_ z9h}=&hxh34pj{~Jy*jv82L}yH1$XPSI(>kI1_&C521xq=tr{R` z85+PZpIn;;2%3ck@OhYP*8o9X)&M>maC^C`0YRhD0Dd9mk{Y1TuWJe*AfZ!-2X#>+ zSgJBHNy%7x+CC8#s&WbX&B~?tOmdx}`gD_P68YHU1gBNhrEnGIzX+KoRF^FSY6;aF#p0d?h7=bWH46I6+4TV&Lvd zmD&iD{)q+ZI1?G!~2rmZrIm>%X{@8D55)>xQuC zo*+Ojw$T|AP);a-i_69hK+l3-X4!qi_u75S=BaD-Rg@YldY?Uh(?*FG(1yKyVkAwN zl&~KB3yit~{KL~`M0dbb!Z@MkMx21yI2g8b+eVT`whG;O9I?bgcl2w3F}ue!0k1&O zvW|i=(B;;Q+0U4uBX{;t(Z&KMYh(R_<9G^5jdd7^3LQAUA!vOcO~tZvaQUw;sv$`e zAD!GWtg+A$*9k%YfDR-y1d@Pr-#X}mW>B1R(V$@g)rp~oAwT3r4d$1~iyl9*i*>=U zT);bFOLk03NxQnmh5a}Q>k(IL#vWRMg~_sI8E2?~16lM zJ3`nHcQ019`RyTWU2H|78TT@L3-R)kz^YYWgnx#-v+*nN50J(?7@_533L9?qjfs7 zgS|%W^+4cm!v}|>Y7@Sr7@*PU&?jDj!10*9@a2Q||MOP&fx_}wV9i5vu?&xGL8)~= zbec@k-NJNvP_{w~ZrP4%RFvL%0mMN@jkRICzXLPG3r>X+iLz}J?=hWM(r<-ux+C;! z(9h%Fhoaa!SvL1TR0!h>%J?D-_e@|fMR5m5KWYKxqL;%XZcniJw?_4$x-gj0gWnza zjV=OaTu+H}e8^;0N_w=7eozNv-(pK^&bUA+!>bGLz##oT6|c_ zap}bHfECLlW#bv6IU_D_Z$^~pY>9L$Qr-X>JDt6g;;6y_DJ;Q&l;PAYQVMJ4qN6F+ zvi4>ybvmGvC-LlSB8G`UzZ84QCT#*Ot_`iaMZCCD6upN6;|Pml?&V& zvQ${zX{hX5s7CWAqDhJ>Kw1_(Ka51MaY9`^&Ef}hXW;HOolR!&Qj))hy zSHTs>e5tbqODFz4cd&ak{T$IL{VIGGsCLTwoH^(&c<4Hg#BKNU@Xak78HOJLa?#<} z80GvBdb@k!ES_qVN9p(~9Z(sBu3`25*yRYaeM9(_!u zvS9>T3P5lf5nx7V$wQWLEwLoU6~90c90 zkdcwMUy+M-$~zZ5co+R8AH7}*l&pG-crY)$9wyqc;)EgZzh+dF%9oJAAa|RfWhV*b zQo|=}n>%!jPDo{K4UP}0bT^DFGs*{%OYa2Y{z;^SEW81QP|UPhZPumzr~^&aUFRI{ z`tB{a?4#}hqNcKA|1w9}4f*Vk4xiIlcCTtIyLGthX_8z$q_N~y_)*=VeVa?Jx4Gov zi2gcVD5fg6o|)z5UZnvbv{p@X?lOA-*{GM<(LtHrO8>?(+b$jrWmcPAW;$2rG?ds_ zP-4e7mDt*b5?e8|#KP_ySzz<$N?}IEQH!w&J3F(ipPY-a%);3XMy}AO*}Gue{R-+= z%5WZ)nH|59>&2}Vo$L4CXjX&#U~nH_c+?F3|DAiGG2{g z^T>2hMXan$3|W8911*oUzv;wdQ0Tg<#MwBO@uYczSI&12W()gR=+-#KWZY|*TtAX4 zWPDHMbgYP2tU2nmD(g~6orT8=PZ|O?&!r)B;%;&F_pvt178F^i?)#%E;*j1~z z8n$)!T(7XC<0{aB^#tZ%rs}x3X{Py&d2KgXxsi+>BrjPinS3UpOU4|Zw|s#Q+XGl* z7Odr5=w1gBBNw{=1H;`;a)}1pqn73F@SUKZe6d4EzSEh>aU|#?cP}x3{oA{Sd;`d#Hjl9Kzmr=(oUW#@fQ!wI6{iEF8pQH^xm^ z&M&ZQVYyhA$9Q-9rK~IE%hAha47<ogEHz6MN4H@+ZDIFX))CyCQ+Jf#tkUdJY4+e4{$U1obl*hC zHY+<=1nQ9?!~QoJ2oU4^0L~Z0avN_IJxhyw%Ase#hg^z!=bZ+s-CKazFr8la8nN_3 z7;vj$&KtuFO8N9Dp9N!4-v>inZUcaF@iClgxgMDdLRzsDXGj}EZfFeY&>=~N+!%zw z!I@+K%+U2t>{#^v4e&6sr1doPA~o*m{Vi9L8g!%OIoNSq!GKY z*)goS?XmneTnKE2#|WJp!b`A>-C=}rLw1K*dIEC}~PBNatNCG+9JCMD(L*BX9kXsn?f-%9kMO>pnQ|Ys+qZA&x zZ>%IIh@l7_Tbj_Z?SPT5?80}O9~si3dSnl^htY_h%D^;D?_G?gad_{h1LeTC6b^&Q zKTStQncfKdkxMaGcOe)n_~$m;h)FF8 zO|Y$U=2LpR#%oHuXuu1R&5SI|VERVvPhgC03LHdM?qtAK{9tOLSks)6CC6l>UF?-7 zE69^AIVoz+5_@@!h$k;9})PRxPuPAz~`zh%NmM( zX5Q`;Qc&JTXl*ks8j~o#o7*u_pXc=h(Gs7SCQR}Ws_DI-*zQr8C_)&-%y=K5=UlAy zJ}8MZ?Ya5TnD)YkO!$0oFH_u>`tRK(*gz-xO3v^8z`jyQC~nlG3;{{3Fl2il1}tQHh5AqqMU=R6YjV9n82sF!ZfGC3`FOC0hnc=8}Sbe|WBpp)LL|;-b!| zvnA=!0Vm3hGPwU#5#;k`fM6O0{Gt;YK-A}Sg1>CN=4 zRLI=dq3mj(1C$&={X8tw_C5GkzCgc8hPaml#`_{{GkK)_ghyhBvh|k;=eGm&iX<5& zq5Dd*w%Al>l_tI=Wv%*7_ItDXDO5JWq4(uRg5LK1t}GrTUN^l`k{t+faa-B4J{KZ*!X?8~GFwO-=i|Vf8U1 zq#?6v&L{OpaMX1loI2Z;13c~E_00@Oh5*k{KKjQ zIAp0*S@-;;<|tB+W5beJsj}DgyWyr(8~bNTmEC!Mk508-llE=kc5|{@-UC+aMz8yt zp!-8Fz>^+0#PAgmz(Wi)n-4M2Cx5d}5XXK=g`YtB)XQhl&sM$$K%D5RejTQ5RKEcOZ{u+ubU&<+G}{vla=(cWuFYbI_W2fk zpzZ%{7?lU`NxR=64BMh3I-uAQPgcGQKjQx$OyK`M4XgSC7)JTtAej`B5r_$fxKsEb zF@`Ju><)|=IAm!{_-^-yL^Ewa2t(3#f5aHb6X(F|VLr#SAA%>-{xPAA>Q7)8<%fer znKuTxKg9>hF+}_5y!{LT3jfauqVbb=&lCT{@Ff0Uzy$tBU>N0>n(#Bo{UtuY&k%b; zd^G+&2$;#cc<3hJe}VXag<#@;6ejThnub;V4Gg2)vD_~r@=hQo7~(#LPaeE^9H!vL z`=A7F0(wGlsKR92%9HrGqzbRgJ_Q2^o~Azw*8MF$Y58KDvP0*BzCV$^XW&ozeg_lu z{ho$Z{R0f6Jk&&=Kuj>ieHI@ugW>i>gFi_^s(*yh%n~V6ruk>4`5eNT=JNzMsxQ#6 zs(*rEls7b`DG(D3asP}D(qy=%H4Vb`h(y*!)45R$XAQ{#%ftX;38^#BT zF}%rN^V3FfbC#qGF>wg}jcGavXPOb1NHa>qs>W!9t8o}c`GFwm9waS*69O>7a5sSu z2q4rPp{>L;ZMVS?GIZ}izMcab{!SX&5l9+32y0Z6G^}bT45R#;AaUkfASM{%rtm?s z3~%z+`A#EPB`DoRue*&s{w|}|g#ei?Wnh`MvxMuW-y}oa34*cj3WqRT4!s2WvOBt< zPc@LKYfKr^>A5|Kup8&507v*^U_#b}yEl6g5bNFnChs-cK-Tu=F+m=fE17no!>;3Z z=M%HSYlQlN_kQ5jr&e%0*8PP@SlwU4C_Zn<6YZS0+OjMAPrzbilfDBI3oC3xCd7V2 z@)ePrZJ|?;tf!ae%jB_GC5La^FVY|79UmD_OJ`31P~)3wv2z3MF>q; z-eMSa?Cw5r7W*Q?78NKNjCcbGP;uJA#b{eNA~YwmJ5X30VRmOV57i**E+O8AL3AnH zj_cy9khfWlY3vLC-EJOV!z~C5)ANe>05Gr%0gBfVp7{z*H}bEZ4aKCmFewq)JCh($ z444#AOo~Lj5>m~MJAus`gonF~1VOC<9g@nj^WS7SB3TCKrJVY}E16WdGc#<@&Lm}E zZ$%zoZp`EVrQH8xiSUgO9BUU6am=fML{%EIi2Jg^cNig&HQW)J5Vtb2;jX~fU5O74 zThS-&?nlQNiUbu)Cj5MF5tF;xCm?Xj?+nXn8(grB7Qj~@W7*0ohSQy`tfp1XQBDRw zLM?2!w_s{kFL3`<=G15WY1?koTZ4G+Ly$WTcn83W_GM?>pTa$Lw-3b!yJB1DROdc7 z?*)IizOAC3BD636Q({?_7$%WwCaDsmQ`-N-CbA-V=|+Q(;ruUXiCeXUVaTHbF{^e6 z?B1dHShd6OwRfJ+r^nzr9AC#fLhMK4J9V>PwQ9Ke$m07cF%LHr0`wSK1&70T-yi~e z1-_-U=^aZmVQEhFqldEUXJftN5SnN>*d!i!p&&d82?wqi2=C${8g;P-4qJK01Af(a z!9dtgfIa0{un`Ni^lk4%SXRFa!4^&fxC@aORQu%!@)ni#R8*Uwc|CxWQJue&=!ozY z6NGG_!{HkraGXL%Oo0KMxeKr(ad$DZRC^VnbbLS)s?areaIGP&(R*5$7ol+#wAbo{ zE0j@1krZ1hu4zwLwK3q=VJaVSO`v8*tEEzDohwI-ob*E^dkGyoE`)=g$B?O2SR{n% zWmSfH&n4i>IAXhZp=AW^VV7SmcDqNQmf;vnTiV?SuvH&rQ7Gcun~6S^H25r*l4#c@ z(U>(t)hW;gLRR}FMPT248c{Z4@dHjrfUe+Y5T=a}`S~U5XT4pOY$Ip=!c8VrdEy-! zU90?pOd>#F*ZRBuA3P6zVXkiq^$wW>VYH5=a&t9CXFVKS~{6RMA~YUjYu zlu|3KF>@=@LPOd+7v3>kS~wq-rI;zFL9#kX*l?YZ;vlX@1gxcU%J~d+uOy!vC7(fE ztoNBgtqgKLcQ5V!f;s(Mb57|*ziA3TP3AMpmw|-ZBT4PN@>v13swLcqLQr~a_FR3P zEd>rXy&7nw5Or?USaY?`kI4srV#NiO^I;5_X+EG7tG*VWY5PKaD;MFDFVD<%kjEg` z!RWu2T>o-!xh6ekATu`kR86eZ+thE@JouS>8V9dFShY(77of^;G-prN6{zy6yguGs zUg==43$nn$?%z?5OJ9CP;_qoLGCGw^bOY1EpP^_^;3Te$&Kz^hS_K5E`e`U)*>7vm zHnX+`!G_M7S=$=8%zEAX|2Hqc{x^A1vU}D)Tw#0}Xu-rujiY>%S+P7MR(xj^rTcn(-EH__pY4;JI7z*LoHoRD zgfT%s=qF&R?@a(IR(S?^)x6HT0v>7}rzX+FT7{qK)$nz%#0OYEC0JGc$Hte&OJCDp zhg-Y{0pQVB8-abbl&XXSptrp9~y%sn)PulS!DtDX~$Xs}7(kK=q zA)D8P;TUah)O#}kQ{hN78CEUYeF4mRPcl5U1Mo6Q&w6hGjElXMLhVl6(IHFGJ7Af% zZ{}Sc*CBLZk|FMufN>}B87M`T;Px?gekt2Y+L9_fARFZRs7qhSFDe z;5gBwy<1)9gyHHGoCP(edVD%E-VUI{^VF5!gG9+MG8YOXzxB}}X3vaJLiatQyKlRp z`=)*rTedpleJHxlxFNT32?r9k`#e%)UbxhU2~!z;chmor1XwNd56wMaCUcpU3rVod_r$sJv=#LnPtp^{`CaH{e^jk$#g5 zanb)4aJPuniKpF&6;l$y%Y!K_^Kq6Zcu@NSYlC+a;y_r-QiLKb>q}`+y{hH7*di+6 zfrR1iusy*#6WO&M`}*PViSBn$1UT+5V&$-nMe}orzdn3odYY;M(!TD3iFbq0z8E!T z2s7diugywSZbquDS!}$6Psc_|VJC8P@n~pS-nz_FnJa_R1hxn($6`3+$@IE*oZGB!=;7J&SJNdxw(WR)R=c$xZ1#$ zNC&HuZVm4k!Od$lDGoe@F*QrfR@5Pb!5RLo39l{VAKXg#Ue9&^ba955~}vM@nAdPVaD?OmX6 zn~{vk1t)o)xKCOsXY|)788cTz6M8oQQt@QGYeZ8>M=Akr51iWOEj`KjvaAWfdd8kW zU;;WmIGCSwmM2X*8iF6A_jsz+M1SWbTYKFk}rnL|3Ph{{BHpK$Y9LGU;!i=GAo8?ECbJp$pVhiwc0logt43MJYmrWTuj$z3Ct7{~2U`#2#q7;n4F~N++1ET-J%Px|9@&Z`{QWd?7Ik$PmZv*P*Q9mE9m3H#dYw zZ>D#%&;gAQ6_s*_BC4PkI%MG)-p*b`CK;({n}zoCJ^-a+Xc(xX5#Cl10$Wk_BgK{I zeeYl>uFBelVSOMOuYQoDeKJw~keEt#QN0TeJ~V_Y4^nXlT2b-c{uswK=4Mnny~b=; zt4qgyKcHI+!%EVEo6TgI>F^;mc+WG!YF(KTV*J1lGSJ+L87qqKG; zJ0_UVQg5;iR^}fD*`eg0{Qyd~>JaZ^bhWEXM!&Qtk!&wIaAMvPdnDNw6=5@g+xWH| zv@lt}m43)|El2&ZB>|`CuIz-_iuzFbIKa5K@Clgq1i$rLXq8)C!qbXPicca`F7M8V z>T@8B`;5hRmUt1WqZpH@ubCqmsh$nhlI!QzJsnGc^3y)b);%E-OImSoCUp1}p$;y7 z*fy_)k7}EL4%#N?CNf`aXr<-0m44&V%T!q;6k}=A{S2uqbQ!q*m1`hf`pVmgKt##X zOw^aZbGKtz4x_&ahb{q4ILU+lqMwOMe-Y3m_s^;=1GR1x67EL2agd+|8$Jo*Z8-IO zsDQZR_aydi_f2S{-sccsWSCz;+U?D0YiXkFm0*bZJV1*HcMbAndeH@ki0-X~vC7ZJBi<{{>=iEL7 zyI;b`a=%PSwK7D!`EYS%sMpCYpm0*gO1v!bc{D{VS-*s#6Dz|na|Au!n4oD)(9`7W zG2CPL8iN)XlVbMPzOJ2O_SU|konrRZ?$=H+du!j+PBD9H-_lModu!j;PBD9H4``>D zy|wRXr?Bz#msH#C*WvL9$Dc#ygO4z| z(m5JDCC6j1^N(vv7pBN|ph))(M4~8Ego|k_*S{&(KZt1$Y@2nUti?}cT$EwuHq0KN z@UF@O!WNF#<)45wT&hB3@d06qt#1AN2nJQEcxrS_#1fYBJO594In?P zV{c08E|af6VT04;yH0X)_#px1?gX%%QFja*wI9PJd5|#?3)&F05Fm^CIT*0&VK^%v zL8(H9`4a&0F7Y#ARzHpMu00AifIS~&ss9wd?psjb6OmPSAeQ4k0t6B7g9wy*-|G9^ z<@=;8%=z{~yy9h?DvIqw3@kr~SM6@rFur&48L3$xXBrP9U|^CV?sZ6si%{K7ue73m ziRwG~*JFBHzonnGCuN6KyS6uh_NXIIGU(C+~ z_%y~5&pAUDtp@lcKab$k7)Lzk3|X-T;5+$w0iVV=;yGu?Ne2L2KA(iGF;3fo2$9bP zu+>8*S;;jw?jub8Abj49PaS4JdCnOUI~d^dxdgU)oJm%o{5k{A-^$4|h?4pC8M+vw z=)k^*_HsQK$Gvb%D1CiES�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

      y#KQ zPuvGP+_g4@`^On!Y!|6|T!58a;Jt6af1ffVM)|8gB0cb9uF6MxU>$rJ_4HGc15+P` zbBt5c19UDz;i|q?bqhg0MOl z+G}G;#I~m8;R*YN$OVl3BA@n$ z%EP!HQ%>zLUz`U1>bmqD6z}FR`oqm(^n<&@xSyV)(_7tiiqRJOZzFRv`NFIDNVOEMHjL*#9#->hX(Ys8KZ@7! z7$Q;Aq}UXq{loFFU-wu>nvQQzMuv{>P)249?ssLz;C@#I#gnM(bEc6NgY}Y0_GIew zrI~PlNTuIA-LQthyyc2BGN~TQsoZmEA1sUF&!YG%bo<@ZEHjMvEUL`ELH}$F`}S%b z_thCy<~EI&Q$FqpRCj`Tkv&7-Lvgyz52$iz+HFw)*X@e}*#G7SF#jWB%I3g&uv-q% zT%vg~*dOy_RQui3ET77yfcP6UKC}C_m;*51hkI@s_wSB$X!oK(^7pF076n%IQnZl5 z=V>~wrQ9q&0Uwn|7|PPBsBQ>CWenp9A@ z%`sU1I9@DE?rF68qY!<2l!dmzIGP3YH8`)h31|}3^XwjY@8#|un`5Y7>2`6Iv4h&@ zZnD3I>br*OyOP?^Zpu$(4EFn4(yJxCImQuYrZ z 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 z

      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 + + + Newtonsoft.Json + + + +

      + Represents a BSON Oid (object id). + + + + + Gets or sets the value of the Oid. + + The value of the Oid. + + + + Initializes a new instance of the class. + + The Oid value. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized BSON data. + + + + + Gets or sets a value indicating whether binary data reading should be compatible with incorrect Json.NET 3.5 written binary. + + + true if binary data reading will be compatible with incorrect Json.NET 3.5 written binary; otherwise, false. + + + + + Gets or sets a value indicating whether the root object will be read as a JSON array. + + + true if the root object will be read as a JSON array; otherwise, false. + + + + + Gets or sets the used when reading values from BSON. + + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Initializes a new instance of the class. + + The containing the BSON data to read. + if set to true the root object will be read as a JSON array. + The used when reading values from BSON. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating BSON data. + + + + + Gets or sets the used when writing values to BSON. + When set to no conversion will occur. + + The used when writing values to BSON. + + + + Initializes a new instance of the class. + + The to write to. + + + + Initializes a new instance of the class. + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying stream. + + + + + Writes the end. + + The token. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes the beginning of a JSON array. + + + + + Writes the beginning of a JSON object. + + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value that represents a BSON object id. + + The Object ID value to write. + + + + Writes a BSON regex. + + The regex pattern. + The regex options. + + + + Specifies how constructors are used when initializing objects during deserialization by the . + + + + + First attempt to use the public default constructor, then fall back to a single parameterized constructor, then to the non-public default constructor. + + + + + Json.NET will use a non-public default constructor before falling back to a parameterized constructor. + + + + + Converts a binary value to and from a base 64 string value. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Creates a custom object. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Creates an object which will then be populated by the serializer. + + Type of the object. + The created object. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Provides a base class for converting a to and from JSON. + + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a F# discriminated union type to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an Entity Framework to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can write JSON. + + + true if this can write JSON; otherwise, false. + + + + + Converts a to and from the ISO 8601 date format (e.g. "2008-04-12T12:53Z"). + + + + + Gets or sets the date time styles used when converting a date to and from JSON. + + The date time styles used when converting a date to and from JSON. + + + + Gets or sets the date time format used when converting a date to and from JSON. + + The date time format used when converting a date to and from JSON. + + + + Gets or sets the culture used when converting a date to and from JSON. + + The culture used when converting a date to and from JSON. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Converts a to and from a JavaScript Date constructor (e.g. new Date(52231943)). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from JSON and BSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts an to and from its name string value. + + + + + Gets or sets a value indicating whether the written enum text should be camel case. + The default value is false. + + true if the written enum text will be camel case; otherwise, false. + + + + Gets or sets a value indicating whether integer values are allowed when deserializing. + The default value is true. + + true if integers are allowed when deserializing; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + true if the written enum text will be camel case; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts a to and from Unix epoch time + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Converts a to and from a string (e.g. "1.2.3.4"). + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing property value of the JSON that is being converted. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Converts XML to and from JSON. + + + + + Gets or sets the name of the root element to insert when deserializing to XML if the JSON structure has produced multiple root elements. + + The name of the deserialized root element. + + + + Gets or sets a flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + true if the array attribute is written to the XML; otherwise, false. + + + + Gets or sets a value indicating whether to write the root JSON object. + + true if the JSON root object is omitted; otherwise, false. + + + + Writes the JSON representation of the object. + + The to write to. + The calling serializer. + The value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Checks if the is a namespace attribute. + + Attribute name to test. + The attribute name prefix if it has one, otherwise an empty string. + true if attribute name is for a namespace attribute, otherwise false. + + + + Determines whether this instance can convert the specified value type. + + Type of the value. + + true if this instance can convert the specified value type; otherwise, false. + + + + + Specifies how dates are formatted when writing JSON text. + + + + + Dates are written in the ISO 8601 format, e.g. "2012-03-21T05:40Z". + + + + + Dates are written in the Microsoft JSON format, e.g. "\/Date(1198908717056)\/". + + + + + Specifies how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON text. + + + + + Date formatted strings are not parsed to a date type and are read as strings. + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed to . + + + + + Specifies how to treat the time value when converting between string and . + + + + + Treat as local time. If the object represents a Coordinated Universal Time (UTC), it is converted to the local time. + + + + + Treat as a UTC. If the object represents a local time, it is converted to a UTC. + + + + + Treat as a local time if a is being converted to a string. + If a string is being converted to , convert to a local time if a time zone is specified. + + + + + Time zone information should be preserved when converting. + + + + + Specifies default value handling options for the . + + + + + + + + + Include members where the member value is the same as the member's default value when serializing objects. + Included members are written to JSON. Has no effect when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + so that it is not written to JSON. + This option will ignore all default values (e.g. null for objects and nullable types; 0 for integers, + decimals and floating point numbers; and false for booleans). The default value ignored can be changed by + placing the on the property. + + + + + Members with a default value but no JSON will be set to their default value when deserializing. + + + + + Ignore members where the member value is the same as the member's default value when serializing objects + and set members to their default value when deserializing. + + + + + Specifies float format handling options when writing special floating point numbers, e.g. , + and with . + + + + + Write special floating point values as strings in JSON, e.g. "NaN", "Infinity", "-Infinity". + + + + + Write special floating point values as symbols in JSON, e.g. NaN, Infinity, -Infinity. + Note that this will produce non-valid JSON. + + + + + Write special floating point values as the property's default value in JSON, e.g. 0.0 for a property, null for a of property. + + + + + Specifies how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Floating point numbers are parsed to . + + + + + Floating point numbers are parsed to . + + + + + Specifies formatting options for the . + + + + + No special formatting is applied. This is the default. + + + + + Causes child objects to be indented according to the and settings. + + + + + Provides an interface for using pooled arrays. + + The array type content. + + + + Rent an array from the pool. This array must be returned when it is no longer needed. + + The minimum required length of the array. The returned array may be longer. + The rented array from the pool. This array must be returned when it is no longer needed. + + + + Return an array to the pool. + + The array that is being returned. + + + + Provides an interface to enable a class to return line and position information. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + The current line number or 0 if no line information is available (for example, when returns false). + + + + Gets the current line position. + + The current line position or 0 if no line information is available (for example, when returns false). + + + + Instructs the how to serialize the collection. + + + + + Gets or sets a value indicating whether null items are allowed in the collection. + + true if null items are allowed in the collection; otherwise, false. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with a flag indicating whether the array can contain null items. + + A flag indicating whether the array can contain null items. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to use the specified constructor when deserializing that object. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the id. + + The id. + + + + Gets or sets the title. + + The title. + + + + Gets or sets the description. + + The description. + + + + Gets or sets the collection's items converter. + + The collection's items converter. + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonContainer(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets a value that indicates whether to preserve object references. + + + true to keep object reference; otherwise, false. The default is false. + + + + + Gets or sets a value that indicates whether to preserve collection's items references. + + + true to keep collection's items object references; otherwise, false. The default is false. + + + + + Gets or sets the reference loop handling used when serializing the collection's items. + + The reference loop handling. + + + + Gets or sets the type name handling used when serializing the collection's items. + + The type name handling. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Provides methods for converting between .NET types and JSON types. + + + + + + + + Gets or sets a function that creates default . + Default settings are automatically used by serialization methods on , + and and on . + To serialize without using any default settings create a with + . + + + + + Represents JavaScript's boolean value true as a string. This field is read-only. + + + + + Represents JavaScript's boolean value false as a string. This field is read-only. + + + + + Represents JavaScript's null as a string. This field is read-only. + + + + + Represents JavaScript's undefined as a string. This field is read-only. + + + + + Represents JavaScript's positive infinity as a string. This field is read-only. + + + + + Represents JavaScript's negative infinity as a string. This field is read-only. + + + + + Represents JavaScript's NaN as a string. This field is read-only. + + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + The time zone handling when the date is converted to a string. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation using the specified. + + The value to convert. + The format the date will be converted to. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + The string delimiter character. + The string escape handling. + A JSON string representation of the . + + + + Converts the to its JSON string representation. + + The value to convert. + A JSON string representation of the . + + + + Serializes the specified object to a JSON string. + + The object to serialize. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting. + + The object to serialize. + Indicates how the output should be formatted. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a collection of . + + The object to serialize. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using formatting and a collection of . + + The object to serialize. + Indicates how the output should be formatted. + A collection of converters used while serializing. + A JSON string representation of the object. + + + + Serializes the specified object to a JSON string using . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + A JSON string representation of the object. + + + + + Serializes the specified object to a JSON string using a type, formatting and . + + The object to serialize. + Indicates how the output should be formatted. + The used to serialize the object. + If this is null, default serialization settings will be used. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + A JSON string representation of the object. + + + + + Deserializes the JSON to a .NET object. + + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to a .NET object using . + + The JSON to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The JSON to deserialize. + The of object being deserialized. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type. + + The type of the object to deserialize to. + The JSON to deserialize. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the given anonymous type. + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the given anonymous type using . + + + The anonymous type to deserialize to. This can't be specified + traditionally and must be inferred from the anonymous type passed + as a parameter. + + The JSON to deserialize. + The anonymous type object. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized anonymous type from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The type of the object to deserialize to. + The JSON to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The type of the object to deserialize to. + The object to deserialize. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using a collection of . + + The JSON to deserialize. + The type of the object to deserialize. + Converters to use while deserializing. + The deserialized object from the JSON string. + + + + Deserializes the JSON to the specified .NET type using . + + The JSON to deserialize. + The type of the object to deserialize to. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + The deserialized object from the JSON string. + + + + Populates the object with values from the JSON string. + + The JSON to populate values from. + The target object to populate values onto. + + + + Populates the object with values from the JSON string using . + + The JSON to populate values from. + The target object to populate values onto. + + The used to deserialize the object. + If this is null, default serialization settings will be used. + + + + + Serializes the to a JSON string. + + The node to serialize. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to serialize. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Serializes the to a JSON string. + + The node to convert to JSON. + A JSON string of the . + + + + Serializes the to a JSON string using formatting. + + The node to convert to JSON. + Indicates how the output should be formatted. + A JSON string of the . + + + + Serializes the to a JSON string using formatting and omits the root object if is true. + + The node to serialize. + Indicates how the output should be formatted. + Omits writing the root object. + A JSON string of the . + + + + Deserializes the from a JSON string. + + The JSON string. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by . + + The JSON string. + The name of the root element to append when deserializing. + The deserialized . + + + + Deserializes the from a JSON string nested in a root element specified by + and writes a Json.NET array attribute for collections. + + The JSON string. + The name of the root element to append when deserializing. + + A flag to indicate whether to write the Json.NET array attribute. + This attribute helps preserve arrays when converting the written XML back to JSON. + + The deserialized . + + + + Converts an object to and from JSON. + + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Gets a value indicating whether this can read JSON. + + true if this can read JSON; otherwise, false. + + + + Gets a value indicating whether this can write JSON. + + true if this can write JSON; otherwise, false. + + + + Converts an object to and from JSON. + + The object type to convert. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Writes the JSON representation of the object. + + The to write to. + The value. + The calling serializer. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. + The calling serializer. + The object value. + + + + Reads the JSON representation of the object. + + The to read from. + Type of the object. + The existing value of object being read. If there is no existing value then null will be used. + The existing value has a value. + The calling serializer. + The object value. + + + + Determines whether this instance can convert the specified object type. + + Type of the object. + + true if this instance can convert the specified object type; otherwise, false. + + + + + Instructs the to use the specified when serializing the member or class. + + + + + Gets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + + + + + Initializes a new instance of the class. + + Type of the . + + + + Initializes a new instance of the class. + + Type of the . + Parameter list to use when constructing the . Can be null. + + + + Represents a collection of . + + + + + Instructs the how to serialize the collection. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Instructs the to deserialize properties with no matching class member into the specified collection + and write values during serialization. + + + + + Gets or sets a value that indicates whether to write extension data when serializing the object. + + + true to write extension data when serializing the object; otherwise, false. The default is true. + + + + + Gets or sets a value that indicates whether to read extension data when deserializing the object. + + + true to read extension data when deserializing the object; otherwise, false. The default is true. + + + + + Initializes a new instance of the class. + + + + + Instructs the not to serialize the public field or public read/write property value. + + + + + Instructs the how to serialize the object. + + + + + Gets or sets the member serialization. + + The member serialization. + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified member serialization. + + The member serialization. + + + + Initializes a new instance of the class with the specified container Id. + + The container Id. + + + + Instructs the to always serialize the member with the specified name. + + + + + Gets or sets the used when serializing the property's collection items. + + The collection's items . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(ItemConverterType = typeof(MyContainerConverter), ItemConverterParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the of the . + + The of the . + + + + The parameter list to use when constructing the described by . + If null, the default constructor is used. + When non-null, there must be a constructor defined in the that exactly matches the number, + order, and type of these parameters. + + + + [JsonProperty(NamingStrategyType = typeof(MyNamingStrategy), NamingStrategyParameters = new object[] { 123, "Four" })] + + + + + + Gets or sets the null value handling used when serializing this property. + + The null value handling. + + + + Gets or sets the default value handling used when serializing this property. + + The default value handling. + + + + Gets or sets the reference loop handling used when serializing this property. + + The reference loop handling. + + + + Gets or sets the object creation handling used when deserializing this property. + + The object creation handling. + + + + Gets or sets the type name handling used when serializing this property. + + The type name handling. + + + + Gets or sets whether this property's value is serialized as a reference. + + Whether this property's value is serialized as a reference. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets a value indicating whether this property is required. + + + A value indicating whether this property is required. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class with the specified name. + + Name of the property. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously skips the children of the current token. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Specifies the state of the reader. + + + + + A read method has not been called. + + + + + The end of the file has been reached successfully. + + + + + Reader is at a property. + + + + + Reader is at the start of an object. + + + + + Reader is in an object. + + + + + Reader is at the start of an array. + + + + + Reader is in an array. + + + + + The method has been called. + + + + + Reader has just read a value. + + + + + Reader is at the start of a constructor. + + + + + Reader is in a constructor. + + + + + An error occurred that prevents the read operation from continuing. + + + + + The end of the file has been reached successfully. + + + + + Gets the current reader state. + + The current reader state. + + + + Gets or sets a value indicating whether the source should be closed when this reader is closed. + + + true to close the source when this reader is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether multiple pieces of JSON content can + be read from a continuous stream without erroring. + + + true to support reading multiple pieces of JSON content; otherwise false. + The default is false. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + Gets or sets how time zones are handled when reading JSON. + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + + + + + Gets or sets how custom date formatted strings are parsed when reading JSON. + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + + + + + Gets the type of the current JSON token. + + + + + Gets the text value of the current JSON token. + + + + + Gets the .NET type for the current JSON token. + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets or sets the culture used when reading JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Reads the next JSON token from the source. + + true if the next token was read successfully; false if there are no more tokens to read. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the source as a of . + + A of . This method will return null at the end of an array. + + + + Skips the children of the current token. + + + + + Sets the current token. + + The new token. + + + + Sets the current token and value. + + The new token. + The value. + + + + Sets the current token and value. + + The new token. + The value. + A flag indicating whether the position index inside an array should be updated. + + + + Sets the state based on current token type. + + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Changes the reader's state to . + If is set to true, the source is also closed. + + + + + The exception thrown when an error occurs while reading JSON text. + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path, line number, line position, and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The line number indicating where the error occurred. + The line position indicating where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Instructs the to always serialize the member, and to require that the member has a value. + + + + + The exception thrown when an error occurs during JSON serialization or deserialization. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Serializes and deserializes objects into and from the JSON format. + The enables you to control how objects are encoded into JSON. + + + + + Occurs when the errors during serialization and deserialization. + + + + + Gets or sets the used by the serializer when resolving references. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when resolving type names. + + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + + + + Gets or sets how reference loops (e.g. a class referencing itself) is handled. + The default value is . + + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets a collection that will be used during serialization. + + Collection that will be used during serialization. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Gets a value indicating whether there will be a check for additional JSON content after deserializing an object. + The default value is false. + + + true if there will be a check for additional JSON content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Creates a new instance. + The will not use default settings + from . + + + A new instance. + The will not use default settings + from . + + + + + Creates a new instance using the specified . + The will not use default settings + from . + + The settings to be applied to the . + + A new instance using the specified . + The will not use default settings + from . + + + + + Creates a new instance. + The will use default settings + from . + + + A new instance. + The will use default settings + from . + + + + + Creates a new instance using the specified . + The will use default settings + from as well as the specified . + + The settings to be applied to the . + + A new instance using the specified . + The will use default settings + from as well as the specified . + + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Populates the JSON values onto the target object. + + The that contains the JSON structure to reader values from. + The target object to populate values onto. + + + + Deserializes the JSON structure contained by the specified . + + The that contains the JSON structure to deserialize. + The being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The type of the object to deserialize. + The instance of being deserialized. + + + + Deserializes the JSON structure contained by the specified + into an instance of the specified type. + + The containing the object. + The of object being deserialized. + The instance of being deserialized. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + The type of the value being serialized. + This parameter is used when is Auto to write out the type name if the type of the value does not match. + Specifying the type is optional. + + + + + Serializes the specified and writes the JSON structure + using the specified . + + The used to write the JSON structure. + The to serialize. + + + + Specifies the settings on a object. + + + + + Gets or sets how reference loops (e.g. a class referencing itself) are handled. + The default value is . + + Reference loop handling. + + + + Gets or sets how missing members (e.g. JSON contains a property that isn't a member on the object) are handled during deserialization. + The default value is . + + Missing member handling. + + + + Gets or sets how objects are created during deserialization. + The default value is . + + The object creation handling. + + + + Gets or sets how null values are handled during serialization and deserialization. + The default value is . + + Null value handling. + + + + Gets or sets how default values are handled during serialization and deserialization. + The default value is . + + The default value handling. + + + + Gets or sets a collection that will be used during serialization. + + The converters. + + + + Gets or sets how object references are preserved by the serializer. + The default value is . + + The preserve references handling. + + + + Gets or sets how type name writing and reading is handled by the serializer. + The default value is . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + The type name handling. + + + + Gets or sets how metadata properties are used during deserialization. + The default value is . + + The metadata properties handling. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how a type name assembly is written and resolved by the serializer. + The default value is . + + The type name assembly format. + + + + Gets or sets how constructors are used during deserialization. + The default value is . + + The constructor handling. + + + + Gets or sets the contract resolver used by the serializer when + serializing .NET objects to JSON and vice versa. + + The contract resolver. + + + + Gets or sets the equality comparer used by the serializer when comparing references. + + The equality comparer. + + + + Gets or sets the used by the serializer when resolving references. + + The reference resolver. + + + + Gets or sets a function that creates the used by the serializer when resolving references. + + A function that creates the used by the serializer when resolving references. + + + + Gets or sets the used by the serializer when writing trace messages. + + The trace writer. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the used by the serializer when resolving type names. + + The binder. + + + + Gets or sets the error handler called during serialization and deserialization. + + The error handler called during serialization and deserialization. + + + + Gets or sets the used by the serializer when invoking serialization callback methods. + + The context. + + + + Gets or sets how and values are formatted when writing JSON text, + and the expected date format when reading JSON text. + The default value is "yyyy'-'MM'-'dd'T'HH':'mm':'ss.FFFFFFFK". + + + + + Gets or sets the maximum depth allowed when reading JSON. Reading past this depth will throw a . + A null value means there is no maximum. + The default value is null. + + + + + Indicates how JSON text output is formatted. + The default value is . + + + + + Gets or sets how dates are written to JSON text. + The default value is . + + + + + Gets or sets how time zones are handled during serialization and deserialization. + The default value is . + + + + + Gets or sets how date formatted strings, e.g. "\/Date(1198908717056)\/" and "2012-03-21T05:40Z", are parsed when reading JSON. + The default value is . + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written as JSON. + The default value is . + + + + + Gets or sets how floating point numbers, e.g. 1.0 and 9.9, are parsed when reading JSON text. + The default value is . + + + + + Gets or sets how strings are escaped when writing JSON text. + The default value is . + + + + + Gets or sets the culture used when reading JSON. + The default value is . + + + + + Gets a value indicating whether there will be a check for additional content after deserializing an object. + The default value is false. + + + true if there will be a check for additional content after deserializing an object; otherwise, false. + + + + + Initializes a new instance of the class. + + + + + Represents a reader that provides fast, non-cached, forward-only access to JSON text data. + + + + + Asynchronously reads the next JSON token from the source. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns true if the next token was read successfully; false if there are no more tokens to read. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a []. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the []. This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a of . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the of . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously reads the next JSON token from the source as a . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous read. The + property returns the . This result will be null at the end of an array. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Initializes a new instance of the class with the specified . + + The containing the JSON data to read. + + + + Gets or sets the reader's character buffer pool. + + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a []. + + A [] or null if the next JSON token is null. This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Gets a value indicating whether the class can return line information. + + + true if and can be provided; otherwise, false. + + + + + Gets the current line number. + + + The current line number or 0 if no line information is available (for example, returns false). + + + + + Gets the current line position. + + + The current line position or 0 if no line information is available (for example, returns false). + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + Derived classes must override this method to get asynchronous behaviour. Otherwise it will + execute synchronously, returning an already-completed task. + + + + Gets or sets the writer's character array pool. + + + + + Gets or sets how many s to write for each level in the hierarchy when is set to . + + + + + Gets or sets which character to use to quote attribute values. + + + + + Gets or sets which character to use for indenting when is set to . + + + + + Gets or sets a value indicating whether object names will be surrounded with quotes. + + + + + Initializes a new instance of the class using the specified . + + The to write to. + + + + Flushes whatever is in the buffer to the underlying and also flushes the underlying . + + + + + Closes this writer. + If is set to true, the underlying is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the specified end token. + + The end token to write. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Specifies the type of JSON token. + + + + + This is returned by the if a read method has not been called. + + + + + An object start token. + + + + + An array start token. + + + + + A constructor start token. + + + + + An object property name. + + + + + A comment. + + + + + Raw JSON. + + + + + An integer. + + + + + A float. + + + + + A string. + + + + + A boolean. + + + + + A null token. + + + + + An undefined token. + + + + + An object end token. + + + + + An array end token. + + + + + A constructor end token. + + + + + A Date. + + + + + Byte data. + + + + + + Represents a reader that provides validation. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Sets an event handler for receiving schema validation errors. + + + + + Gets the text value of the current JSON token. + + + + + + Gets the depth of the current token in the JSON document. + + The depth of the current token in the JSON document. + + + + Gets the path of the current JSON token. + + + + + Gets the quotation mark character used to enclose the value of a string. + + + + + + Gets the type of the current JSON token. + + + + + + Gets the .NET type for the current JSON token. + + + + + + Initializes a new instance of the class that + validates the content returned from the given . + + The to read from while validating. + + + + Gets or sets the schema. + + The schema. + + + + Gets the used to construct this . + + The specified in the constructor. + + + + Changes the reader's state to . + If is set to true, the underlying is also closed. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a []. + + + A [] or null if the next JSON token is null. + + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying as a . + + A . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . This method will return null at the end of an array. + + + + Reads the next JSON token from the underlying as a of . + + A of . + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Asynchronously closes this writer. + If is set to true, the destination is also closed. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously flushes whatever is in the buffer to the destination and also flushes the destination. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the specified end token. + + The end token to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes indent characters. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the JSON value delimiter. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an indent space. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON without changing the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of the current JSON object or array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of an array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a constructor. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the end of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a null value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON array. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the start of a constructor with the given name. + + The name of the constructor. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the beginning of a JSON object. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a [] value. + + The [] value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a value. + + The value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes a of value. + + The of value to write. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes an undefined value. + + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously writes the given white space. + + The string of white space characters. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Asynchronously ets the state of the . + + The being written. + The value being written. + The token to monitor for cancellation requests. The default value is . + A that represents the asynchronous operation. + The default behaviour is to execute synchronously, returning an already-completed task. Derived + classes can override this behaviour for true asynchronicity. + + + + Gets or sets a value indicating whether the destination should be closed when this writer is closed. + + + true to close the destination when this writer is closed; otherwise false. The default is true. + + + + + Gets or sets a value indicating whether the JSON should be auto-completed when this writer is closed. + + + true to auto-complete the JSON when this writer is closed; otherwise false. The default is true. + + + + + Gets the top. + + The top. + + + + Gets the state of the writer. + + + + + Gets the path of the writer. + + + + + Gets or sets a value indicating how JSON text output should be formatted. + + + + + Gets or sets how dates are written to JSON text. + + + + + Gets or sets how time zones are handled when writing JSON text. + + + + + Gets or sets how strings are escaped when writing JSON text. + + + + + Gets or sets how special floating point numbers, e.g. , + and , + are written to JSON text. + + + + + Gets or sets how and values are formatted when writing JSON text. + + + + + Gets or sets the culture used when writing JSON. Defaults to . + + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the destination and also flushes the destination. + + + + + Closes this writer. + If is set to true, the destination is also closed. + If is set to true, the JSON is auto-completed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the end of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the end of an array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end constructor. + + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + + + + Writes the property name of a name/value pair of a JSON object. + + The name of the property. + A flag to indicate whether the text should be escaped when it is written as a JSON property name. + + + + Writes the end of the current JSON object or array. + + + + + Writes the current token and its children. + + The to read the token from. + + + + Writes the current token. + + The to read the token from. + A flag indicating whether the current token's children should be written. + + + + Writes the token and its value. + + The to write. + + The value to write. + A value is only required for tokens that have an associated value, e.g. the property name for . + null can be passed to the method for tokens that don't have a value, e.g. . + + + + + Writes the token. + + The to write. + + + + Writes the specified end token. + + The end token to write. + + + + Writes indent characters. + + + + + Writes the JSON value delimiter. + + + + + Writes an indent space. + + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON without changing the writer's state. + + The raw JSON to write. + + + + Writes raw JSON where a value is expected and updates the writer's state. + + The raw JSON to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a of value. + + The of value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + An error will raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes the given white space. + + The string of white space characters. + + + + Releases unmanaged and - optionally - managed resources. + + true to release both managed and unmanaged resources; false to release only unmanaged resources. + + + + Sets the state of the . + + The being written. + The value being written. + + + + The exception thrown when an error occurs while writing JSON text. + + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + Initializes a new instance of the class + with a specified error message, JSON path and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The path to the JSON where the error occurred. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Specifies how JSON comments are handled when loading JSON. + + + + + Ignore comments. + + + + + Load comments as a with type . + + + + + Contains the LINQ to JSON extension methods. + + + + + Returns a collection of tokens that contains the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the ancestors of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, the ancestors of every token in the source collection. + + + + Returns a collection of tokens that contains the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains the descendants of every token in the source collection. + + + + Returns a collection of tokens that contains every token in the source collection, and the descendants of every token in the source collection. + + The type of the objects in source, constrained to . + An of that contains the source collection. + An of that contains every token in the source collection, and the descendants of every token in the source collection. + + + + Returns a collection of child properties of every object in the source collection. + + An of that contains the source collection. + An of that contains the properties of every object in the source collection. + + + + Returns a collection of child values of every object in the source collection with the given key. + + An of that contains the source collection. + The token key. + An of that contains the values of every token in the source collection with the given key. + + + + Returns a collection of child values of every object in the source collection. + + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child values of every object in the source collection with the given key. + + The type to convert the values to. + An of that contains the source collection. + The token key. + An that contains the converted values of every token in the source collection with the given key. + + + + Returns a collection of converted child values of every object in the source collection. + + The type to convert the values to. + An of that contains the source collection. + An that contains the converted values of every token in the source collection. + + + + Converts the value. + + The type to convert the value to. + A cast as a of . + A converted value. + + + + Converts the value. + + The source collection type. + The type to convert the value to. + A cast as a of . + A converted value. + + + + Returns a collection of child tokens of every array in the source collection. + + The source collection type. + An of that contains the source collection. + An of that contains the values of every token in the source collection. + + + + Returns a collection of converted child tokens of every array in the source collection. + + An of that contains the source collection. + The type to convert the values to. + The source collection type. + An that contains the converted values of every token in the source collection. + + + + Returns the input typed as . + + An of that contains the source collection. + The input typed as . + + + + Returns the input typed as . + + The source collection type. + An of that contains the source collection. + The input typed as . + + + + Represents a collection of objects. + + The type of token. + + + + Gets the of with the specified key. + + + + + + Represents a JSON array. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous load. The property contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Initializes a new instance of the class with the specified content. + + The contents of the array. + + + + Loads an from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads an from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the at the specified index. + + + + + + Determines the index of a specific item in the . + + The object to locate in the . + + The index of if found in the list; otherwise, -1. + + + + + Inserts an item to the at the specified index. + + The zero-based index at which should be inserted. + The object to insert into the . + + is not a valid index in the . + + + + + Removes the item at the specified index. + + The zero-based index of the item to remove. + + is not a valid index in the . + + + + + Returns an enumerator that iterates through the collection. + + + A of that can be used to iterate through the collection. + + + + + Adds an item to the . + + The object to add to the . + + + + Removes all items from the . + + + + + Determines whether the contains a specific value. + + The object to locate in the . + + true if is found in the ; otherwise, false. + + + + + Copies the elements of the to an array, starting at a particular array index. + + The array. + Index of the array. + + + + Gets a value indicating whether the is read-only. + + true if the is read-only; otherwise, false. + + + + Removes the first occurrence of a specific object from the . + + The object to remove from the . + + true if was successfully removed from the ; otherwise, false. This method also returns false if is not found in the original . + + + + + Represents a JSON constructor. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets or sets the name of this constructor. + + The constructor name. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name and content. + + The constructor name. + The contents of the constructor. + + + + Initializes a new instance of the class with the specified name. + + The constructor name. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified key. + + The with the specified key. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a token that can contain other tokens. + + + + + Occurs when the list changes or an item in the list changes. + + + + + Occurs before an item is added to the collection. + + + + + Occurs when the items list of the collection has changed, or the collection is reset. + + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Raises the event. + + The instance containing the event data. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Get the first child token of this token. + + + A containing the first child token of the . + + + + + Get the last child token of this token. + + + A containing the last child token of the . + + + + + Returns a collection of the child tokens of this token, in document order. + + + An of containing the child tokens of this , in document order. + + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + + A containing the child values of this , in document order. + + + + + Returns a collection of the descendant tokens for this token in document order. + + An of containing the descendant tokens of the . + + + + Returns a collection of the tokens that contain this token, and all descendant tokens of this token, in document order. + + An of containing this token, and all the descendant tokens of the . + + + + Adds the specified content as children of this . + + The content to be added. + + + + Adds the specified content as the first children of this . + + The content to be added. + + + + Creates a that can be used to add tokens to the . + + A that is ready to have content written to it. + + + + Replaces the child nodes of this token with the specified content. + + The content. + + + + Removes the child nodes from this token. + + + + + Merge the specified content into this . + + The content to be merged. + + + + Merge the specified content into this using . + + The content to be merged. + The used to merge the content. + + + + Gets the count of child JSON tokens. + + The count of child JSON tokens. + + + + Represents a collection of objects. + + The type of token. + + + + An empty collection of objects. + + + + + Initializes a new instance of the struct. + + The enumerable. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Gets the of with the specified key. + + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Determines whether the specified is equal to this instance. + + The to compare with this instance. + + true if the specified is equal to this instance; otherwise, false. + + + + + Returns a hash code for this instance. + + + A hash code for this instance, suitable for use in hashing algorithms and data structures like a hash table. + + + + + Represents a JSON object. + + + + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous load. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Occurs when a property value changes. + + + + + Occurs when a property value is changing. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Initializes a new instance of the class with the specified content. + + The contents of the object. + + + + Gets the node type for this . + + The type. + + + + Gets an of of this object's properties. + + An of of this object's properties. + + + + Gets a the specified name. + + The property name. + A with the specified name or null. + + + + Gets a of of this object's property values. + + A of of this object's property values. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets or sets the with the specified property name. + + + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + is not valid JSON. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + is not valid JSON. + + + + + + + + Creates a from an object. + + The object that will be used to create . + A with the values of the specified object. + + + + Creates a from an object. + + The object that will be used to create . + The that will be used to read the object. + A with the values of the specified object. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Gets the with the specified property name. + + Name of the property. + The with the specified property name. + + + + Gets the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + One of the enumeration values that specifies how the strings will be compared. + The with the specified property name. + + + + Tries to get the with the specified property name. + The exact property name will be searched for first and if no matching property is found then + the will be used to match a property. + + Name of the property. + The value. + One of the enumeration values that specifies how the strings will be compared. + true if a value was successfully retrieved; otherwise, false. + + + + Adds the specified property name. + + Name of the property. + The value. + + + + Determines whether the JSON object has the specified property name. + + Name of the property. + true if the JSON object has the specified property name; otherwise, false. + + + + Removes the property with the specified name. + + Name of the property. + true if item was successfully removed; otherwise, false. + + + + Tries to get the with the specified property name. + + Name of the property. + The value. + true if a value was successfully retrieved; otherwise, false. + + + + Returns an enumerator that can be used to iterate through the collection. + + + A that can be used to iterate through the collection. + + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Raises the event with the provided arguments. + + Name of the property. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Represents a JSON property. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Asynchronously loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns a that contains the JSON that was read from the specified . + + + + Gets the container's children tokens. + + The container's children tokens. + + + + Gets the property name. + + The property name. + + + + Gets or sets the property value. + + The property value. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Gets the node type for this . + + The type. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Initializes a new instance of the class. + + The property name. + The property content. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Loads a from a . + + A that will be read for the content of the . + A that contains the JSON that was read from the specified . + + + + Loads a from a . + + A that will be read for the content of the . + The used to load the JSON. + If this is null, default load settings will be used. + A that contains the JSON that was read from the specified . + + + + Represents a view of a . + + + + + Initializes a new instance of the class. + + The name. + + + + When overridden in a derived class, returns whether resetting an object changes its value. + + + true if resetting the component changes its value; otherwise, false. + + The component to test for reset capability. + + + + When overridden in a derived class, gets the current value of the property on a component. + + + The value of a property for a given component. + + The component with the property for which to retrieve the value. + + + + When overridden in a derived class, resets the value for this property of the component to the default value. + + The component with the property value that is to be reset to the default value. + + + + When overridden in a derived class, sets the value of the component to a different value. + + The component with the property value that is to be set. + The new value. + + + + When overridden in a derived class, determines a value indicating whether the value of this property needs to be persisted. + + + true if the property should be persisted; otherwise, false. + + The component with the property to be examined for persistence. + + + + When overridden in a derived class, gets the type of the component this property is bound to. + + + A that represents the type of component this property is bound to. + When the or + + methods are invoked, the object specified might be an instance of this type. + + + + + When overridden in a derived class, gets a value indicating whether this property is read-only. + + + true if the property is read-only; otherwise, false. + + + + + When overridden in a derived class, gets the type of the property. + + + A that represents the type of the property. + + + + + Gets the hash code for the name of the member. + + + + The hash code for the name of the member. + + + + + Represents a raw JSON string. + + + + + Asynchronously creates an instance of with the content of the reader's current token. + + The reader. + The token to monitor for cancellation requests. The default value is . + A representing the asynchronous creation. The + property returns an instance of with the content of the reader's current token. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class. + + The raw json. + + + + Creates an instance of with the content of the reader's current token. + + The reader. + An instance of with the content of the reader's current token. + + + + Specifies the settings used when loading JSON. + + + + + Initializes a new instance of the class. + + + + + Gets or sets how JSON comments are handled when loading JSON. + + The JSON comment handling. + + + + Gets or sets how JSON line info is handled when loading JSON. + + The JSON line info handling. + + + + Specifies the settings used when merging JSON. + + + + + Gets or sets the method used when merging JSON arrays. + + The method used when merging JSON arrays. + + + + Gets or sets how null value properties are merged. + + How null value properties are merged. + + + + Represents an abstract JSON token. + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Writes this token to a asynchronously. + + A into which this method will write. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains + the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Asynchronously creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + The token to monitor for cancellation requests. The default value is . + + A that represents the asynchronous creation. The + property returns a that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Gets a comparer that can compare two tokens for value equality. + + A that can compare two nodes for value equality. + + + + Gets or sets the parent. + + The parent. + + + + Gets the root of this . + + The root of this . + + + + Gets the node type for this . + + The type. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Compares the values of two tokens, including the values of all descendant tokens. + + The first to compare. + The second to compare. + true if the tokens are equal; otherwise false. + + + + Gets the next sibling token of this node. + + The that contains the next sibling token. + + + + Gets the previous sibling token of this node. + + The that contains the previous sibling token. + + + + Gets the path of the JSON token. + + + + + Adds the specified content immediately after this token. + + A content object that contains simple content or a collection of content objects to be added after this token. + + + + Adds the specified content immediately before this token. + + A content object that contains simple content or a collection of content objects to be added before this token. + + + + Returns a collection of the ancestor tokens of this token. + + A collection of the ancestor tokens of this token. + + + + Returns a collection of tokens that contain this token, and the ancestors of this token. + + A collection of tokens that contain this token, and the ancestors of this token. + + + + Returns a collection of the sibling tokens after this token, in document order. + + A collection of the sibling tokens after this tokens, in document order. + + + + Returns a collection of the sibling tokens before this token, in document order. + + A collection of the sibling tokens before this token, in document order. + + + + Gets the with the specified key. + + The with the specified key. + + + + Gets the with the specified key converted to the specified type. + + The type to convert the token to. + The token key. + The converted token value. + + + + Get the first child token of this token. + + A containing the first child token of the . + + + + Get the last child token of this token. + + A containing the last child token of the . + + + + Returns a collection of the child tokens of this token, in document order. + + An of containing the child tokens of this , in document order. + + + + Returns a collection of the child tokens of this token, in document order, filtered by the specified type. + + The type to filter the child tokens on. + A containing the child tokens of this , in document order. + + + + Returns a collection of the child values of this token, in document order. + + The type to convert the values to. + A containing the child values of this , in document order. + + + + Removes this token from its parent. + + + + + Replaces this token with the specified token. + + The value. + + + + Writes this token to a . + + A into which this method will write. + A collection of which will be used when writing the token. + + + + Returns the indented JSON for this token. + + + The indented JSON for this token. + + + + + Returns the JSON for this token using the given formatting and converters. + + Indicates how the output should be formatted. + A collection of s which will be used when writing the token. + The JSON for this token using the given formatting and converters. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to []. + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to of . + + The value. + The result of the conversion. + + + + Performs an explicit conversion from to . + + The value. + The result of the conversion. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from [] to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from to . + + The value to create a from. + The initialized with the specified value. + + + + Performs an implicit conversion from of to . + + The value to create a from. + The initialized with the specified value. + + + + Creates a for this token. + + A that can be used to read this token and its descendants. + + + + Creates a from an object. + + The object that will be used to create . + A with the value of the specified object. + + + + Creates a from an object using the specified . + + The object that will be used to create . + The that will be used when reading the object. + A with the value of the specified object. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the . + + The object type that the token will be deserialized to. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates an instance of the specified .NET type from the using the specified . + + The object type that the token will be deserialized to. + The that will be used when creating the object. + The new object created from the JSON value. + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + An positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Load a from a string that contains JSON. + + A that contains JSON. + A populated from the string that contains JSON. + + + + Load a from a string that contains JSON. + + A that contains JSON. + The used to load the JSON. + If this is null, default load settings will be used. + A populated from the string that contains JSON. + + + + Creates a from a . + + A positioned at the token to read into this . + The used to load the JSON. + If this is null, default load settings will be used. + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Creates a from a . + + A positioned at the token to read into this . + + A that contains the token and its descendant tokens + that were read from the reader. The runtime type of the token is determined + by the token type of the first token encountered in the reader. + + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A , or null. + + + + Selects a using a JPath expression. Selects the token that matches the object path. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + A . + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + An of that contains the selected elements. + + + + Selects a collection of elements using a JPath expression. + + + A that contains a JPath expression. + + A flag to indicate whether an error should be thrown if no tokens are found when evaluating part of the expression. + An of that contains the selected elements. + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Creates a new instance of the . All child tokens are recursively cloned. + + A new instance of the . + + + + Adds an object to the annotation list of this . + + The annotation to add. + + + + Get the first annotation object of the specified type from this . + + The type of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets the first annotation object of the specified type from this . + + The of the annotation to retrieve. + The first annotation object that matches the specified type, or null if no annotation is of the specified type. + + + + Gets a collection of annotations of the specified type for this . + + The type of the annotations to retrieve. + An that contains the annotations for this . + + + + Gets a collection of annotations of the specified type for this . + + The of the annotations to retrieve. + An of that contains the annotations that match the specified type for this . + + + + Removes the annotations of the specified type from this . + + The type of annotations to remove. + + + + Removes the annotations of the specified type from this . + + The of annotations to remove. + + + + Compares tokens to determine whether they are equal. + + + + + Determines whether the specified objects are equal. + + The first object of type to compare. + The second object of type to compare. + + true if the specified objects are equal; otherwise, false. + + + + + Returns a hash code for the specified object. + + The for which a hash code is to be returned. + A hash code for the specified object. + The type of is a reference type and is null. + + + + Represents a reader that provides fast, non-cached, forward-only access to serialized JSON data. + + + + + Gets the at the reader's current position. + + + + + Initializes a new instance of the class. + + The token to read from. + + + + Reads the next JSON token from the underlying . + + + true if the next token was read successfully; false if there are no more tokens to read. + + + + + Gets the path of the current JSON token. + + + + + Specifies the type of token. + + + + + No token type has been set. + + + + + A JSON object. + + + + + A JSON array. + + + + + A JSON constructor. + + + + + A JSON object property. + + + + + A comment. + + + + + An integer value. + + + + + A float value. + + + + + A string value. + + + + + A boolean value. + + + + + A null value. + + + + + An undefined value. + + + + + A date value. + + + + + A raw JSON value. + + + + + A collection of bytes value. + + + + + A Guid value. + + + + + A Uri value. + + + + + A TimeSpan value. + + + + + Represents a writer that provides a fast, non-cached, forward-only way of generating JSON data. + + + + + Gets the at the writer's current position. + + + + + Gets the token being written. + + The token being written. + + + + Initializes a new instance of the class writing to the given . + + The container being written to. + + + + Initializes a new instance of the class. + + + + + Flushes whatever is in the buffer to the underlying . + + + + + Closes this writer. + If is set to true, the JSON is auto-completed. + + + Setting to true has no additional effect, since the underlying is a type that cannot be closed. + + + + + Writes the beginning of a JSON object. + + + + + Writes the beginning of a JSON array. + + + + + Writes the start of a constructor with the given name. + + The name of the constructor. + + + + Writes the end. + + The token. + + + + Writes the property name of a name/value pair on a JSON object. + + The name of the property. + + + + Writes a value. + An error will be raised if the value cannot be written as a single JSON token. + + The value to write. + + + + Writes a null value. + + + + + Writes an undefined value. + + + + + Writes raw JSON. + + The raw JSON to write. + + + + Writes a comment /*...*/ containing the specified text. + + Text to place inside the comment. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a [] value. + + The [] value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Writes a value. + + The value to write. + + + + Represents a value in JSON (string, integer, date, etc). + + + + + Writes this token to a asynchronously. + + A into which this method will write. + The token to monitor for cancellation requests. + A collection of which will be used when writing the token. + A that represents the asynchronous write operation. + + + + Initializes a new instance of the class from another object. + + A object to copy from. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Initializes a new instance of the class with the given value. + + The value. + + + + Gets a value indicating whether this token has child tokens. + + + true if this token has child values; otherwise, false. + + + + + Creates a comment with the given value. + + The value. + A comment with the given value. + + + + Creates a string with the given value. + + The value. + A string with the given value. + + + + Creates a null value. + + A null value. + + + + Creates a undefined value. + + A undefined value. + + + + Gets the node type for this . + + The type. + + + + Gets or sets the underlying token value. + + The underlying token value. + + + + Writes this token to a . + + A into which this method will write. + A collection of s which will be used when writing the token. + + + + Indicates whether the current object is equal to another object of the same type. + + + true if the current object is equal to the parameter; otherwise, false. + + An object to compare with this object. + + + + Determines whether the specified is equal to the current . + + The to compare with the current . + + true if the specified is equal to the current ; otherwise, false. + + + + + Serves as a hash function for a particular type. + + + A hash code for the current . + + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format provider. + + A that represents this instance. + + + + + Returns a that represents this instance. + + The format. + The format provider. + + A that represents this instance. + + + + + Returns the responsible for binding operations performed on this object. + + The expression tree representation of the runtime value. + + The to bind this object. + + + + + Compares the current instance with another object of the same type and returns an integer that indicates whether the current instance precedes, follows, or occurs in the same position in the sort order as the other object. + + An object to compare with this instance. + + A 32-bit signed integer that indicates the relative order of the objects being compared. The return value has these meanings: + Value + Meaning + Less than zero + This instance is less than . + Zero + This instance is equal to . + Greater than zero + This instance is greater than . + + + is not of the same type as this instance. + + + + + Specifies how line information is handled when loading JSON. + + + + + Ignore line information. + + + + + Load line information. + + + + + Specifies how JSON arrays are merged together. + + + + Concatenate arrays. + + + Union arrays, skipping items that already exist. + + + Replace all array items. + + + Merge array items together, matched by index. + + + + Specifies how null value properties are merged. + + + + + The content's null value properties will be ignored during merging. + + + + + The content's null value properties will be merged. + + + + + Specifies the member serialization options for the . + + + + + All public members are serialized by default. Members can be excluded using or . + This is the default member serialization mode. + + + + + Only members marked with or are serialized. + This member serialization mode can also be set by marking the class with . + + + + + All public and private fields are serialized. Members can be excluded using or . + This member serialization mode can also be set by marking the class with + and setting IgnoreSerializableAttribute on to false. + + + + + Specifies metadata property handling options for the . + + + + + Read metadata properties located at the start of a JSON object. + + + + + Read metadata properties located anywhere in a JSON object. Note that this setting will impact performance. + + + + + Do not try to read metadata properties. + + + + + Specifies missing member handling options for the . + + + + + Ignore a missing member and do not attempt to deserialize it. + + + + + Throw a when a missing member is encountered during deserialization. + + + + + Specifies null value handling options for the . + + + + + + + + + Include null values when serializing and deserializing objects. + + + + + Ignore null values when serializing and deserializing objects. + + + + + Specifies how object creation is handled by the . + + + + + Reuse existing objects, create new objects when needed. + + + + + Only reuse existing objects. + + + + + Always create new objects. + + + + + Specifies reference handling options for the . + Note that references cannot be preserved when a value is set via a non-default constructor such as types that implement . + + + + + + + + Do not preserve references when serializing types. + + + + + Preserve references when serializing into a JSON object structure. + + + + + Preserve references when serializing into a JSON array structure. + + + + + Preserve references when serializing. + + + + + Specifies reference loop handling options for the . + + + + + Throw a when a loop is encountered. + + + + + Ignore loop references and do not serialize. + + + + + Serialize loop references. + + + + + Indicating whether a property is required. + + + + + The property is not required. The default state. + + + + + The property must be defined in JSON but can be a null value. + + + + + The property must be defined in JSON and cannot be a null value. + + + + + The property is not required but it cannot be a null value. + + + + + + Contains the JSON schema extension methods. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + true if the specified is valid; otherwise, false. + + + + + + Determines whether the is valid. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + When this method returns, contains any error messages generated while validating. + + true if the specified is valid; otherwise, false. + + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + + + + + Validates the specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + The source to test. + The schema to test with. + The validation event handler. + + + + + An in-memory representation of a JSON Schema. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the id. + + + + + Gets or sets the title. + + + + + Gets or sets whether the object is required. + + + + + Gets or sets whether the object is read-only. + + + + + Gets or sets whether the object is visible to users. + + + + + Gets or sets whether the object is transient. + + + + + Gets or sets the description of the object. + + + + + Gets or sets the types of values allowed by the object. + + The type. + + + + Gets or sets the pattern. + + The pattern. + + + + Gets or sets the minimum length. + + The minimum length. + + + + Gets or sets the maximum length. + + The maximum length. + + + + Gets or sets a number that the value should be divisible by. + + A number that the value should be divisible by. + + + + Gets or sets the minimum. + + The minimum. + + + + Gets or sets the maximum. + + The maximum. + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the minimum attribute (). + + A flag indicating whether the value can not equal the number defined by the minimum attribute (). + + + + Gets or sets a flag indicating whether the value can not equal the number defined by the maximum attribute (). + + A flag indicating whether the value can not equal the number defined by the maximum attribute (). + + + + Gets or sets the minimum number of items. + + The minimum number of items. + + + + Gets or sets the maximum number of items. + + The maximum number of items. + + + + Gets or sets the of items. + + The of items. + + + + Gets or sets a value indicating whether items in an array are validated using the instance at their array position from . + + + true if items are validated using their array position; otherwise, false. + + + + + Gets or sets the of additional items. + + The of additional items. + + + + Gets or sets a value indicating whether additional items are allowed. + + + true if additional items are allowed; otherwise, false. + + + + + Gets or sets whether the array items must be unique. + + + + + Gets or sets the of properties. + + The of properties. + + + + Gets or sets the of additional properties. + + The of additional properties. + + + + Gets or sets the pattern properties. + + The pattern properties. + + + + Gets or sets a value indicating whether additional properties are allowed. + + + true if additional properties are allowed; otherwise, false. + + + + + Gets or sets the required property if this property is present. + + The required property if this property is present. + + + + Gets or sets the a collection of valid enum values allowed. + + A collection of valid enum values allowed. + + + + Gets or sets disallowed types. + + The disallowed types. + + + + Gets or sets the default value. + + The default value. + + + + Gets or sets the collection of that this schema extends. + + The collection of that this schema extends. + + + + Gets or sets the format. + + The format. + + + + Initializes a new instance of the class. + + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The object representing the JSON Schema. + + + + Reads a from the specified . + + The containing the JSON Schema to read. + The to use when resolving schema references. + The object representing the JSON Schema. + + + + Load a from a string that contains JSON Schema. + + A that contains JSON Schema. + A populated from the string that contains JSON Schema. + + + + Load a from a string that contains JSON Schema using the specified . + + A that contains JSON Schema. + The resolver. + A populated from the string that contains JSON Schema. + + + + Writes this schema to a . + + A into which this method will write. + + + + Writes this schema to a using the specified . + + A into which this method will write. + The resolver used. + + + + Returns a that represents the current . + + + A that represents the current . + + + + + + Returns detailed information about the schema exception. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the line number indicating where the error occurred. + + The line number indicating where the error occurred. + + + + Gets the line position indicating where the error occurred. + + The line position indicating where the error occurred. + + + + Gets the path to the JSON where the error occurred. + + The path to the JSON where the error occurred. + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class + with a specified error message. + + The error message that explains the reason for the exception. + + + + Initializes a new instance of the class + with a specified error message and a reference to the inner exception that is the cause of this exception. + + The error message that explains the reason for the exception. + The exception that is the cause of the current exception, or null if no inner exception is specified. + + + + Initializes a new instance of the class. + + The that holds the serialized object data about the exception being thrown. + The that contains contextual information about the source or destination. + The parameter is null. + The class name is null or is zero (0). + + + + + Generates a from a specified . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets how undefined schemas are handled by the serializer. + + + + + Gets or sets the contract resolver. + + The contract resolver. + + + + Generate a from the specified type. + + The type to generate a from. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + Generate a from the specified type. + + The type to generate a from. + The used to resolve schema references. + Specify whether the generated root will be nullable. + A generated from the specified type. + + + + + Resolves from an id. + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets or sets the loaded schemas. + + The loaded schemas. + + + + Initializes a new instance of the class. + + + + + Gets a for the specified reference. + + The id. + A for the specified reference. + + + + + The value types allowed by the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + No type specified. + + + + + String type. + + + + + Float type. + + + + + Integer type. + + + + + Boolean type. + + + + + Object type. + + + + + Array type. + + + + + Null type. + + + + + Any type. + + + + + + Specifies undefined schema Id handling options for the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Do not infer a schema Id. + + + + + Use the .NET type name as the schema Id. + + + + + Use the assembly qualified .NET type name as the schema Id. + + + + + + Returns detailed information related to the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + Gets the associated with the validation error. + + The JsonSchemaException associated with the validation error. + + + + Gets the path of the JSON location where the validation error occurred. + + The path of the JSON location where the validation error occurred. + + + + Gets the text description corresponding to the validation error. + + The text description. + + + + + Represents the callback method that will handle JSON schema validation events and the . + + + JSON Schema validation has been moved to its own package. See http://www.newtonsoft.com/jsonschema for more details. + + + + + + A camel case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Resolves member mappings for a type, camel casing property names. + + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used by to resolve a for a given . + + + + + Gets a value indicating whether members are being get and set using dynamic code generation. + This value is determined by the runtime permissions available. + + + true if using dynamic code generation; otherwise, false. + + + + + Gets or sets the default members search flags. + + The default members search flags. + + + + Gets or sets a value indicating whether compiler generated members should be serialized. + + + true if serialized compiler generated members; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the interface when serializing and deserializing types. + + + true if the interface will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore the attribute when serializing and deserializing types. + + + true if the attribute will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore IsSpecified members when serializing and deserializing types. + + + true if the IsSpecified members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets a value indicating whether to ignore ShouldSerialize members when serializing and deserializing types. + + + true if the ShouldSerialize members will be ignored when serializing and deserializing types; otherwise, false. + + + + + Gets or sets the naming strategy used to resolve how property names and dictionary keys are serialized. + + The naming strategy used to resolve how property names and dictionary keys are serialized. + + + + Initializes a new instance of the class. + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Gets the serializable members for the type. + + The type to get serializable members for. + The serializable members for the type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates the constructor parameters. + + The constructor to create properties for. + The type's member properties. + Properties for the given . + + + + Creates a for the given . + + The matching member property. + The constructor parameter. + A created for the given . + + + + Resolves the default for the contract. + + Type of the object. + The contract's default . + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Creates a for the given type. + + Type of the object. + A for the given type. + + + + Determines which contract type is created for the given type. + + Type of the object. + A for the given type. + + + + Creates properties for the given . + + The type to create properties for. + /// The member serialization mode for the type. + Properties for the given . + + + + Creates the used by the serializer to get and set values from a member. + + The member. + The used by the serializer to get and set values from a member. + + + + Creates a for the given . + + The member's parent . + The member to create a for. + A created for the given . + + + + Resolves the name of the property. + + Name of the property. + Resolved name of the property. + + + + Resolves the name of the extension data. By default no changes are made to extension data names. + + Name of the extension data. + Resolved name of the extension data. + + + + Resolves the key of the dictionary. By default is used to resolve dictionary keys. + + Key of the dictionary. + Resolved key of the dictionary. + + + + Gets the resolved name of the property. + + Name of the property. + Name of the property. + + + + The default naming strategy. Property names and dictionary keys are unchanged. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + The default serialization binder used when resolving and loading classes from type names. + + + + + Initializes a new instance of the class. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + The type of the object the formatter creates a new instance of. + + + + + When overridden in a derived class, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer that writes to the application's instances. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides information surrounding an error. + + + + + Gets the error. + + The error. + + + + Gets the original object that caused the error. + + The original object that caused the error. + + + + Gets the member that caused the error. + + The member that caused the error. + + + + Gets the path of the JSON location where the error occurred. + + The path of the JSON location where the error occurred. + + + + Gets or sets a value indicating whether this is handled. + + true if handled; otherwise, false. + + + + Provides data for the Error event. + + + + + Gets the current object the error event is being raised against. + + The current object the error event is being raised against. + + + + Gets the error context. + + The error context. + + + + Initializes a new instance of the class. + + The current object. + The error context. + + + + Get and set values for a using dynamic methods. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Provides methods to get attributes. + + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Used by to resolve a for a given . + + + + + + + + + Resolves the contract for a given type. + + The type to resolve a contract for. + The contract for a given type. + + + + Used to resolve references when serializing and deserializing JSON by the . + + + + + Resolves a reference to its object. + + The serialization context. + The reference to resolve. + The object that was resolved from the reference. + + + + Gets the reference for the specified object. + + The serialization context. + The object to get a reference for. + The reference to the object. + + + + Determines whether the specified object is referenced. + + The serialization context. + The object to test for a reference. + + true if the specified object is referenced; otherwise, false. + + + + + Adds a reference to the specified object. + + The serialization context. + The reference. + The object to reference. + + + + Allows users to control class loading and mandate what class to load. + + + + + When implemented, controls the binding of a serialized object to a type. + + Specifies the name of the serialized object. + Specifies the name of the serialized object + The type of the object the formatter creates a new instance of. + + + + When implemented, controls the binding of a serialized object to a type. + + The type of the object the formatter creates a new instance of. + Specifies the name of the serialized object. + Specifies the name of the serialized object. + + + + Represents a trace writer. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + The that will be used to filter the trace messages passed to the writer. + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Provides methods to get and set values. + + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + Contract details for a used by the . + + + + + Gets the of the collection items. + + The of the collection items. + + + + Gets a value indicating whether the collection type is a multidimensional array. + + true if the collection type is a multidimensional array; otherwise, false. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the collection values. + + true if the creator has a parameter with the collection values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the default collection items . + + The converter. + + + + Gets or sets a value indicating whether the collection items preserve object references. + + true if collection items preserve object references; otherwise, false. + + + + Gets or sets the collection item reference loop handling. + + The reference loop handling. + + + + Gets or sets the collection item type name handling. + + The type name handling. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Handles serialization callback events. + + The object that raised the callback event. + The streaming context. + + + + Handles serialization error callback events. + + The object that raised the callback event. + The streaming context. + The error context. + + + + Sets extension data for an object during deserialization. + + The object to set extension data on. + The extension data key. + The extension data value. + + + + Gets extension data for an object during serialization. + + The object to set extension data on. + + + + Contract details for a used by the . + + + + + Gets the underlying type for the contract. + + The underlying type for the contract. + + + + Gets or sets the type created during deserialization. + + The type created during deserialization. + + + + Gets or sets whether this type contract is serialized as a reference. + + Whether this type contract is serialized as a reference. + + + + Gets or sets the default for this contract. + + The converter. + + + + Gets or sets all methods called immediately after deserialization of the object. + + The methods called immediately after deserialization of the object. + + + + Gets or sets all methods called during deserialization of the object. + + The methods called during deserialization of the object. + + + + Gets or sets all methods called after serialization of the object graph. + + The methods called after serialization of the object graph. + + + + Gets or sets all methods called before serialization of the object. + + The methods called before serialization of the object. + + + + Gets or sets all method called when an error is thrown during the serialization of the object. + + The methods called when an error is thrown during the serialization of the object. + + + + Gets or sets the default creator method used to create the object. + + The default creator method used to create the object. + + + + Gets or sets a value indicating whether the default creator is non-public. + + true if the default object creator is non-public; otherwise, false. + + + + Contract details for a used by the . + + + + + Gets or sets the dictionary key resolver. + + The dictionary key resolver. + + + + Gets the of the dictionary keys. + + The of the dictionary keys. + + + + Gets the of the dictionary values. + + The of the dictionary values. + + + + Gets or sets the function used to create the object. When set this function will override . + + The function used to create the object. + + + + Gets a value indicating whether the creator has a parameter with the dictionary values. + + true if the creator has a parameter with the dictionary values; otherwise, false. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets the object's properties. + + The object's properties. + + + + Gets or sets the property name resolver. + + The property name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object constructor. + + The object constructor. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Gets or sets the object member serialization. + + The member object serialization. + + + + Gets or sets a value that indicates whether the object's properties are required. + + + A value indicating whether the object's properties are required. + + + + + Gets or sets how the object's properties with null values are handled during serialization and deserialization. + + How the object's properties with null values are handled during serialization and deserialization. + + + + Gets the object's properties. + + The object's properties. + + + + Gets a collection of instances that define the parameters used with . + + + + + Gets or sets the function used to create the object. When set this function will override . + This function is called with a collection of arguments which are defined by the collection. + + The function used to create the object. + + + + Gets or sets the extension data setter. + + + + + Gets or sets the extension data getter. + + + + + Gets or sets the extension data value type. + + + + + Gets or sets the extension data name resolver. + + The extension data name resolver. + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Maps a JSON property to a .NET member or constructor parameter. + + + + + Gets or sets the name of the property. + + The name of the property. + + + + Gets or sets the type that declared this property. + + The type that declared this property. + + + + Gets or sets the order of serialization of a member. + + The numeric order of serialization. + + + + Gets or sets the name of the underlying member or parameter. + + The name of the underlying member or parameter. + + + + Gets the that will get and set the during serialization. + + The that will get and set the during serialization. + + + + Gets or sets the for this property. + + The for this property. + + + + Gets or sets the type of the property. + + The type of the property. + + + + Gets or sets the for the property. + If set this converter takes precedence over the contract converter for the property type. + + The converter. + + + + Gets or sets the member converter. + + The member converter. + + + + Gets or sets a value indicating whether this is ignored. + + true if ignored; otherwise, false. + + + + Gets or sets a value indicating whether this is readable. + + true if readable; otherwise, false. + + + + Gets or sets a value indicating whether this is writable. + + true if writable; otherwise, false. + + + + Gets or sets a value indicating whether this has a member attribute. + + true if has a member attribute; otherwise, false. + + + + Gets the default value. + + The default value. + + + + Gets or sets a value indicating whether this is required. + + A value indicating whether this is required. + + + + Gets or sets a value indicating whether this property preserves object references. + + + true if this instance is reference; otherwise, false. + + + + + Gets or sets the property null value handling. + + The null value handling. + + + + Gets or sets the property default value handling. + + The default value handling. + + + + Gets or sets the property reference loop handling. + + The reference loop handling. + + + + Gets or sets the property object creation handling. + + The object creation handling. + + + + Gets or sets or sets the type name handling. + + The type name handling. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets a predicate used to determine whether the property should be deserialized. + + A predicate used to determine whether the property should be deserialized. + + + + Gets or sets a predicate used to determine whether the property should be serialized. + + A predicate used to determine whether the property should be serialized. + + + + Gets or sets an action used to set whether the property has been deserialized. + + An action used to set whether the property has been deserialized. + + + + Returns a that represents this instance. + + + A that represents this instance. + + + + + Gets or sets the converter used when serializing the property's collection items. + + The collection's items converter. + + + + Gets or sets whether this property's collection items are serialized as a reference. + + Whether this property's collection items are serialized as a reference. + + + + Gets or sets the type name handling used when serializing the property's collection items. + + The collection's items type name handling. + + + + Gets or sets the reference loop handling used when serializing the property's collection items. + + The collection's items reference loop handling. + + + + A collection of objects. + + + + + Initializes a new instance of the class. + + The type. + + + + When implemented in a derived class, extracts the key from the specified element. + + The element from which to extract the key. + The key for the specified element. + + + + Adds a object. + + The property to add to the collection. + + + + Gets the closest matching object. + First attempts to get an exact case match of and then + a case insensitive match. + + Name of the property. + A matching property if found. + + + + Gets a property by property name. + + The name of the property to get. + Type property name string comparison. + A matching property if found. + + + + Contract details for a used by the . + + + + + Initializes a new instance of the class. + + The underlying type for the contract. + + + + Lookup and create an instance of the type described by the argument. + + The type to create. + Optional arguments to pass to an initializing constructor of the JsonConverter. + If null, the default constructor is used. + + + + Represents a trace writer that writes to memory. When the trace message limit is + reached then old trace messages will be removed as new messages are added. + + + + + Gets the that will be used to filter the trace messages passed to the writer. + For example a filter level of will exclude messages and include , + and messages. + + + The that will be used to filter the trace messages passed to the writer. + + + + + Initializes a new instance of the class. + + + + + Writes the specified trace level, message and optional exception. + + The at which to write this trace. + The trace message. + The trace exception. This parameter is optional. + + + + Returns an enumeration of the most recent trace messages. + + An enumeration of the most recent trace messages. + + + + Returns a of the most recent trace messages. + + + A of the most recent trace messages. + + + + + A base class for resolving how property names and dictionary keys are serialized. + + + + + A flag indicating whether dictionary keys should be processed. + Defaults to false. + + + + + A flag indicating whether extension data names should be processed. + Defaults to false. + + + + + A flag indicating whether explicitly specified property names, + e.g. a property name customized with a , should be processed. + Defaults to false. + + + + + Gets the serialized name for a given property name. + + The initial property name. + A flag indicating whether the property has had a name explicitly specified. + The serialized property name. + + + + Gets the serialized name for a given extension data name. + + The initial extension data name. + The serialized extension data name. + + + + Gets the serialized key for a given dictionary key. + + The initial dictionary key. + The serialized dictionary key. + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Represents a method that constructs an object. + + The object type to create. + + + + When applied to a method, specifies that the method is called when an error occurs serializing an object. + + + + + Provides methods to get attributes from a , , or . + + + + + Initializes a new instance of the class. + + The instance to get attributes for. This parameter should be a , , or . + + + + Returns a collection of all of the attributes, or an empty collection if there are no attributes. + + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Returns a collection of attributes, identified by type, or an empty collection if there are no attributes. + + The type of the attributes. + When true, look up the hierarchy chain for the inherited custom attribute. + A collection of s, or an empty collection. + + + + Get and set values for a using reflection. + + + + + Initializes a new instance of the class. + + The member info. + + + + Sets the value. + + The target to set the value on. + The value to set on the target. + + + + Gets the value. + + The target to get the value from. + The value. + + + + A snake case naming strategy. + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + + + Initializes a new instance of the class. + + + A flag indicating whether dictionary keys should be processed. + + + A flag indicating whether explicitly specified property names should be processed, + e.g. a property name customized with a . + + + A flag indicating whether extension data names should be processed. + + + + + Initializes a new instance of the class. + + + + + Resolves the specified property name. + + The property name to resolve. + The resolved property name. + + + + Specifies how strings are escaped when writing JSON text. + + + + + Only control characters (e.g. newline) are escaped. + + + + + All non-ASCII and control characters (e.g. newline) are escaped. + + + + + HTML (<, >, &, ', ") and control characters (e.g. newline) are escaped. + + + + + Indicates the method that will be used during deserialization for locating and loading assemblies. + + + + + In simple mode, the assembly used during deserialization need not match exactly the assembly used during serialization. Specifically, the version numbers need not match as the LoadWithPartialName method of the class is used to load the assembly. + + + + + In full mode, the assembly used during deserialization must match exactly the assembly used during serialization. The Load method of the class is used to load the assembly. + + + + + Specifies type name handling options for the . + + + should be used with caution when your application deserializes JSON from an external source. + Incoming types should be validated with a custom + when deserializing with a value other than . + + + + + Do not include the .NET type name when serializing types. + + + + + Include the .NET type name when serializing into a JSON object structure. + + + + + Include the .NET type name when serializing into a JSON array structure. + + + + + Always include the .NET type name when serializing. + + + + + Include the .NET type name when the type of the object being serialized is not the same as its declared type. + Note that this doesn't include the root serialized object by default. To include the root object's type name in JSON + you must specify a root type object with + or . + + + + + Determines whether the collection is null or empty. + + The collection. + + true if the collection is null or empty; otherwise, false. + + + + + Adds the elements of the specified collection to the specified generic . + + The list to add to. + The collection of elements to add. + + + + Converts the value to the specified type. If the value is unable to be converted, the + value is checked whether it assignable to the specified type. + + The value to convert. + The culture to use when converting. + The type to convert or cast the value to. + + The converted type. If conversion was unsuccessful, the initial value + is returned if assignable to the target type. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic that returns a result + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Helper method for generating a MetaObject which calls a + specific method on Dynamic, but uses one of the arguments for + the result. + + + + + Returns a Restrictions object which includes our current restrictions merged + with a restriction limiting our type + + + + + Helper class for serializing immutable collections. + Note that this is used by all builds, even those that don't support immutable collections, in case the DLL is GACed + https://github.com/JamesNK/Newtonsoft.Json/issues/652 + + + + + Gets the type of the typed collection's items. + + The type. + The type of the typed collection's items. + + + + Gets the member's underlying type. + + The member. + The underlying type of the member. + + + + Determines whether the member is an indexed property. + + The member. + + true if the member is an indexed property; otherwise, false. + + + + + Determines whether the property is an indexed property. + + The property. + + true if the property is an indexed property; otherwise, false. + + + + + Gets the member's value on the object. + + The member. + The target object. + The member's value on the object. + + + + Sets the member's value on the target object. + + The member. + The target. + The value. + + + + Determines whether the specified MemberInfo can be read. + + The MemberInfo to determine whether can be read. + /// if set to true then allow the member to be gotten non-publicly. + + true if the specified MemberInfo can be read; otherwise, false. + + + + + Determines whether the specified MemberInfo can be set. + + The MemberInfo to determine whether can be set. + if set to true then allow the member to be set non-publicly. + if set to true then allow the member to be set if read-only. + + true if the specified MemberInfo can be set; otherwise, false. + + + + + Builds a string. Unlike this class lets you reuse its internal buffer. + + + + + Determines whether the string is all white space. Empty string will return false. + + The string to test whether it is all white space. + + true if the string is all white space; otherwise, false. + + + + + Specifies the state of the . + + + + + An exception has been thrown, which has left the in an invalid state. + You may call the method to put the in the Closed state. + Any other method calls result in an being thrown. + + + + + The method has been called. + + + + + An object is being written. + + + + + An array is being written. + + + + + A constructor is being written. + + + + + A property is being written. + + + + + A write method has not been called. + + + + diff --git a/FifthLesson/UserWordTest/bin/Debug/UserWordTest.dll b/FifthLesson/UserWordTest/bin/Debug/UserWordTest.dll new file mode 100644 index 0000000000000000000000000000000000000000..a1b0a535b3d4a870e05dde9c6becad2f90cccc04 GIT binary patch literal 5632 zcmeHLTWlOx8UAN?vtB##HonBU3dV6F#c48l?WJ{6x3#_NxDIxbde;smuI$;}dQY%nU$P<_Lu?PeYg%@~1MW_#`f`sosGqbz4 zX#_7-g?iTWpYz}U^PjutKJ`4si70{Z&K;uHP;(iV@b2IW*y)e{BuzhVf2033W%iB! z;+o;9j%!z4y{49R%d&m7BviLxn*E7 zwsACgpk#kghh-emYpyVD2(md^!N<0G@wJq3qRAFiHs3-2xo~VT+D1RVC=|VreJueXDC4$YIMDe;0IlE+>yvnN8j#ElmG(KrT}#JY?ACqN;~#`h#$c;X!<*HH=PIITk7=PRzkInF>dj*d+#RCtuam(PERV~ z$nZEnmDPr{k)e^y2_P6d6Yy{7{J`gkme3KNGXn+RHLR+~67OJ<@Hh`F6lkn1m_`HB z3p07pW`RGC@fnyj?Gg*4z?3rG8%wn_@~$#M7yyV663%%dsK_;e;gUGyC7*dj-;A*= zuS{EcHJPDQlo~(3!Z#q0%q|aQL^Ao{kU3 zryAHoh{frg%2HpV{fJnhn*p}x7Q86*ddN#jUaCKkEJ=T3A@)UyIU(jqY@?NSx`kYI z0Va{#Tj4mgJWVHug| zm6TTi3-oiqDk#fTqgQA&?$L9Sd!5$NtLtws<${D|+6Frp>0^K%jVU>L8kSe2{jzLdk?ofx zyeZ*6`V8tU%~Ik@FwZ#KL0Q0j;*BvX-ykeK6h1(r@&f5{)Rl-J>%m~MVgVSQzmlPe zN@c?GE(y0NJb!t}w==Zh1z3jiM%g!POLx~-hG}fhuGCHO5Y@c0?V3i33hSOPYFf@V zO(6w6ZCY5uHOg$3rt3z9=7n?Kb}Q0o&~R{AR)pkE_*kr^x-W>m&k29ct~6!`3+JqHUX=wqO}PV=SCo6XlC{Q#pr3tlDl(>NiHAF-6#pRx!;m zo<>+=HJoNrlC-jKyAd;Q=vB*x|FRd6qHfGszHn`)Al#>nve?27Mn<>|elYFO5zKdp zPgzyd@YZI9=h+st*X&C(7RIFNfckVRG0F4eKCP`gV{ z1}&I*@#61h7DxVg`e*-my#L#!U!A6eswkOR zv?&0p5=$otep9c0dTDWQ_O0hqFF(Be`K~uRPNtOb3i%N}p^CA-^RDikv8}1gWg*v7 zam}?ac?#s(=S#x~2l+-`-s8>>UTbzN15hccr?g9;tWj_UV){QgS$ z`28m`L&vj2S^fCv@W}A-QfX8SXGhAJawdaoC0t~1+rW=#PN4(ZnWg#7P^1ZC3HaM!3PBb>;=ncTz^Z`(>;a+wP7oGV+zOen+kEUNz z|2gyQ3*YH0N}~3XU%!n>j~U>5Fy5rWE4rnF!K(vH|4IuHOL}Sri3be6!7H|=_ zzGc8Enn!B}FYPnHX8=zHuWq`Lc>8u>C$JUSd>GnX_*N&cZ4wIrzgHAk^c5ATf;$0ABljyXJ`)ufg zM~Xd1xoe#L^xwpPQs(^}Y}x2l9Xa<~GC=QXgZrM9`QE6zIqREqJ}Px4&>J4d8fK4) iY^j*JJgUvn+N{U^-nXI#|1;_xd*3{M=;#BKfqw%oE<#TL literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/UserWordTest.pdb b/FifthLesson/UserWordTest/bin/Debug/UserWordTest.pdb new file mode 100644 index 0000000000000000000000000000000000000000..de3e450f3da94e88c1a802d1d096254fd1e3fda9 GIT binary patch literal 13824 zcmeHNeQZ-z6u+-*V;>AQVG{=8GCqVcx(+7b!q-?g7;eDa27+~Nv~OFpuAOZsny4u% zN+KbPnST(YXpF`v{)LH&NP-aw7!r-3F~$Tx5{$-(5Q%6E^Y^>&-R*6Z*}z!b+OwT^ z-o59ZbI&>V`@YtC-N8U8&>GIKD6UwvD8IJ8Du21%;mAzSbJh!hP5z6ScCh}IJMlh7A`or- zb4|34f2QfqP&!6jOqe-L1QP8(OmO0Wb!BJWniCVxWcSpIW1C;My>`6v-UC0M|026* zjgiiH`Pm)Wt!J{27UH0gT7C4_-06KyZ)ep$_h+Em{d8&bG&4p`ee<*GKF|NC_OLT@ z;G0Ks+Mk^9WgLWW%)2;J?O#0g!H+-rsr1LDH$02~EYSE zxgOW9UcGSj0-L^xkBTx^V@MB%T%9e!jxLu|4|RkCU9K&`KwGe-v(xKub5+c7)#xp4 z-MXvN-{$j%+H3SsDBurC!EJ${r$G;eWr8nucSs0#nXB8P)njVyvS@YBarq3bx}nu) zYNg;VXbn><6MUi85j9oWO~oT>tumd8CnCUyfLnpvfXSBg6JL{oqYpEGaA>ruE;na> zd)HabVpL4V;PZgsS%GrtrUX4(fOqP?{7Um47v7cU;{ofTmqzc@FrR19#6SHv`Y_iY(L}(2TDY)n2=2!XMvPc zWz)sn?8f@XLSemAEa7{t`p{(G>J4?b`0B&m9&f--O$~v7FJy1@d&5j&mVur;kuPmR z|B@70f}@FaHh8qh%F`e1(%oTQ@@*nTtQJX0r`G&(;_&vbsz02UW;^oEd(D)s6;9ZL zJ_}*m&1+BgVPaB>5R*W)8JdeamYH!mX~tz9cnTn!@&Xc)Rne}yJL+3Hb=ogvOlEMH=f3;N~^(&y;c*9@M~F45xvS!o~onzU~rDC2-*ri=q(A>)8pSnRDF z6o)@hJ{5QfNXVB@A?PRLa6hmM*b8KtlfVQFjsV+Ojlmvv7=Xth@`)^VUm;oC9CC^) zG3GeRt_4GtXBq3fKYL&euvY|pK1|SFY!&V6b-y0;x^HM*$Timm)YU)6y)ZzHZ)?8O z>&DuGMGJOuZos@iKlvtYAFGkR z4b%yWIUuqFbQm_jPeFwY(Ou*QT z0Ppnk(uyx`f%!!kAe@8Qz6$>`-`_RqDU)tD>Gvjm(WDQXbd^a#h6UA^hAk9@$+1l6 zm*)VD0{#3byjZfXC(p4=xE|l&#`3&*4YAZRLS?QK<^R?`2}L;H%>_DuT%R`p8-UF~ zA20!2~OxZtK+}F;1E^%)mHFUKbe2Z*X15{Mqv(8zuqOwY98orJUQNv9&Ac6{Fs6*ZOigo3V^77>+ zPRcI+zHD#&@2_xql)ICI z&O>u?jo05%?Qac;Vm~f8L!vkobQiblEgn6%(-&}e7#Xcze6cAW(QhYVvtP&xZ-IX6 zx0z&k%F{JFo!#tt-11BW764O$1XYe#B2NK%@+OSkU&C?z&j)UV*DFAeU>YGM>_^@q zP=1pka{l@~3Hx@G*$3p>kcBdwdbzh}RJcCe4rJtT*D3Eu89hdd5ypK5?>c!;A@4&N eW!zEleu8%ryq`$GC`Q0o%SW-oL{c71WmC=o literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..11b66e7048ca4416f61340fe7d0486cd1aee7e57 GIT binary patch literal 34960 zcmeHQ2V7H2vp)$Pq$moCAOTcBA)JJ+qV%FP0YNDuB_dJ{q1qq_A{J0lu_2&{T@X-| zreehw?AH!<#a_X}n>`_g;w|6z-FM%6zZY*#PT8HEot^p5?3`V$i*GI_f?=2_d^Dpy=or7A2TLVa7*O z!lNm+Zl08=m{0~)R#tj=7io7p409%lV1|p8{CKTBz{nahBpEIflH9xdro%4Z!XubfHHFUt&66#Xao?Ycy_;4>BIdZLpV7>4tS!1Y87%N-BD zsTkG|e*W@@f?-{(6ICVQ+EIuImBmP6!F45S1D+8A2fl?r6yS==jAMqtO@g->a3T(0 zYxoL%ETJ})$%u@Bf&{Or@DR}wZV)ald)0(KBDul`6(wV0*wJYimJf1}BJN@shk{{m z%`nUzep9>d{oapP?KkIDWbue$Dy1*Ce`

      ?6W#isd2?kxmK60(r=$`l-#s%P*z~5J1Wc}k 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 UXA}?rWO?p~&E18IZx6u!3nUIr`2YX_ literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/FifthLesson/UserWordTest/bin/Debug/ru/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..333851d043019b132d972b75bcfda420998f47ae GIT binary patch literal 26256 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/FifthLesson/UserWordTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..c1e3f52efc655b99fd2f290345ae781208a85529 GIT binary patch literal 14656 zcmeHOZBrZ96_#wgF*r_*>pG5|q)L;vNlLe1z;CVFVkC?bz(kV4t(U=9yI10xeUb0( z0y3rVlgX$4g?#IW&a|CrzjmfSt$ohjm4sw)GqH4`GsvThyf628&bjBFJ@@RnnQSJL z`42wymp-qbLgOq7TLxiJi_8@f#>_28u_FR=Ht@W_FXjtlxfL!$5%_l}rpDtZO#Dp_F&L-Izg1mJI(!E%?4&fF3 zh|8d{Dp{k!rCDOK=r`ghdGhSzGb>&{8$@$EovwoX-873VH>otq0>2lBp42P;h0dDOnG99KggEuoX} z15x(_$@9F%po*d&M&Q?BmvsE`%P&g0OD=s=9Nfh_FC5>0SI&i;Vbnu2FC@34KnfmS zXgCp*WzM9%vCN{4@It-kz`2GDYS0i#by4!V2qW3-+%OEmB2Fs2ijMXxV;{=po>Pl~ zFE+V+@8H9E5jI@bB*5MqQ$xF!+_)?Qn}=Z_XTV-WkO?N2-ol+y>_@`m=`FoIC0Yuv z#33*78kgKhS93D((CJh3^oDF5RcbL#8K(^+lR1s{R5qJ6@I{+B_2rpzGmN+g^Thbt z5gD9$pZi=2+gyOMo=iM`{E|yBBUYFj^JOOFlk4qE%aIg*eJtmNb|76*?aZ;MuRO(W z-elAE^o@zzlT&>B*6p>im+?5JR0pAlwf?I0n0J@Wo|xz$tf)Pk2GRL3x2Zl)pc4Zf zgbke-XulquYgvkehfkv!86KjaXQ)9qkQsgr4gQ>^W|*20YR;hMyAc|4LOAEhz5 zN7v9o;Lq7tQBi~0o2<@5Yq3mPGO3wySOW_WbHbc7uUl1GjacipTK;rKv3qeuw=E<1 zt_9LF59o^cUj^BJ9aFL`ky|p9x!e+nkWIA&t1+9aA-Dz+{_+1N0_py35dWuE;xhia zwjwbpV@b*<=I?;{zmG5TLk*`}igzK!-;SdcG;!Nb%j_ooZIFKSD$a!*ciaEAJdJ6q z+=P)s@AX&dy~o*Cg`fKO?i0$2-UHZ|eb;|Safz$M!qxJ5G&TK|Out+8Wb5An%fB3J zmYpnSM6OSunsZr%9EYClYK>7yO#myTYnw(h#a0V{b}TCGHYg82Y2 z&Ol(=nF^UW`0oN~eUL~r%-;jZuLlA$$86?6&26zdIT~aH?N}o36DgH`9~?s697y;N z0sMQi@&4P)3(|Xyz=yz#fx}&M#`go{?o`5xhg{Y z9e4}Ef2I&8fw-d$v9QxX1gTy^DfB5_L#yOnW_a`F!qbz7od&cP@2;Rfi@9vlyEBD- z1K3)g?@K%~@ufF-MW2@59n-$4OMc?8EQKc`v6U{_ZUH;eVRVFD;?H8NVG>Vz8_2)W zg}lnE^Bm!p?7Rw7!+!@Pw1idAOEA@K1oNm2NtZyd-M=6g;#zjWS0v zN<>Wx9erCgSc1O*d@U>CbfPA)Q$B9Ed`H>EA_!tjiJ< z3zQ4QE|a|pgbGMJ(-Fi}HYApEts!^_SS_(j2e!h(&Ey%mqHp}$LMP~536#|%&;cqk zl8E^cz_mmv^x!M0Mf@rrM=AO*fUafo6Z)fkU?W6IU(5Uw&|0293fgnw0abXENIpb$ zJ}1>_C)H_vt;6njai=PgTE}el!ZYikc+StRZzUTtaOUqr2fX`i)u*2npVL;9L+j)R zVfXzW{63fBK3+R}cK9*8Uh6YTRgSbd$FR^m97yajN=1|kV+}us=CH9QO9hpx%5p!M zELB*(aCDSPF6lE$WtY^Kv5w}-?(Bg(efEqeIJ`fGA>Ep6-T7KI lHLd!HQB`jWnAeoCktNdS^j}YW=l|Nqcj7zS+pE^j{TH&D+id^< literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.CoreCompileInputs.cache b/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..f6848e5 --- /dev/null +++ b/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +0da6dde20309dcba126ecca4866bfeeadc99c840 diff --git a/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.FileListAbsolute.txt b/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..8c4dae0 --- /dev/null +++ b/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csproj.FileListAbsolute.txt @@ -0,0 +1,21 @@ +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\ru\Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\ru\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\ru\Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\UserWordTest.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\UserWordTest.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\EnglishLessons.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Newtonsoft.Json.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\EnglishLessons.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Newtonsoft.Json.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\EnglishLessonsTest.csprojAssemblyReference.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\EnglishLessonsTest.csproj.CoreCompileInputs.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\EnglishLessonsTest.csproj.CopyComplete +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.pdb diff --git a/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csprojAssemblyReference.cache b/FifthLesson/UserWordTest/obj/Debug/EnglishLessonsTest.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..3875f9eb11b76f0eee7b465be24f86c5797d5e2a GIT binary patch literal 28009 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 CXRX!% literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.CoreCompileInputs.cache b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..6aa5ab6 --- /dev/null +++ b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +ad966236ce346c66afb87921b5f56073428bac59 diff --git a/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.FileListAbsolute.txt b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..3752b6d --- /dev/null +++ b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csproj.FileListAbsolute.txt @@ -0,0 +1,21 @@ +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\ru\Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\ru\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\ru\Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\UserWordTest.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\UserWordTest.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\EnglishLessons.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Newtonsoft.Json.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\EnglishLessons.pdb +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\bin\Debug\Newtonsoft.Json.xml +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.csprojAssemblyReference.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.csproj.CoreCompileInputs.cache +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.csproj.CopyComplete +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.dll +C:\Users\markp\Desktop\Programming\C#\League\EnglishLessons\UserWordTest\obj\Debug\UserWordTest.pdb diff --git a/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csprojAssemblyReference.cache b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..9bfd7ff1ecd765be0ef81983f0c49c9966126ccb GIT binary patch literal 65985 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 literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/obj/Debug/UserWordTest.dll b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.dll new file mode 100644 index 0000000000000000000000000000000000000000..a1b0a535b3d4a870e05dde9c6becad2f90cccc04 GIT binary patch literal 5632 zcmeHLTWlOx8UAN?vtB##HonBU3dV6F#c48l?WJ{6x3#_NxDIxbde;smuI$;}dQY%nU$P<_Lu?PeYg%@~1MW_#`f`sosGqbz4 zX#_7-g?iTWpYz}U^PjutKJ`4si70{Z&K;uHP;(iV@b2IW*y)e{BuzhVf2033W%iB! z;+o;9j%!z4y{49R%d&m7BviLxn*E7 zwsACgpk#kghh-emYpyVD2(md^!N<0G@wJq3qRAFiHs3-2xo~VT+D1RVC=|VreJueXDC4$YIMDe;0IlE+>yvnN8j#ElmG(KrT}#JY?ACqN;~#`h#$c;X!<*HH=PIITk7=PRzkInF>dj*d+#RCtuam(PERV~ z$nZEnmDPr{k)e^y2_P6d6Yy{7{J`gkme3KNGXn+RHLR+~67OJ<@Hh`F6lkn1m_`HB z3p07pW`RGC@fnyj?Gg*4z?3rG8%wn_@~$#M7yyV663%%dsK_;e;gUGyC7*dj-;A*= zuS{EcHJPDQlo~(3!Z#q0%q|aQL^Ao{kU3 zryAHoh{frg%2HpV{fJnhn*p}x7Q86*ddN#jUaCKkEJ=T3A@)UyIU(jqY@?NSx`kYI z0Va{#Tj4mgJWVHug| zm6TTi3-oiqDk#fTqgQA&?$L9Sd!5$NtLtws<${D|+6Frp>0^K%jVU>L8kSe2{jzLdk?ofx zyeZ*6`V8tU%~Ik@FwZ#KL0Q0j;*BvX-ykeK6h1(r@&f5{)Rl-J>%m~MVgVSQzmlPe zN@c?GE(y0NJb!t}w==Zh1z3jiM%g!POLx~-hG}fhuGCHO5Y@c0?V3i33hSOPYFf@V zO(6w6ZCY5uHOg$3rt3z9=7n?Kb}Q0o&~R{AR)pkE_*kr^x-W>m&k29ct~6!`3+JqHUX=wqO}PV=SCo6XlC{Q#pr3tlDl(>NiHAF-6#pRx!;m zo<>+=HJoNrlC-jKyAd;Q=vB*x|FRd6qHfGszHn`)Al#>nve?27Mn<>|elYFO5zKdp zPgzyd@YZI9=h+st*X&C(7RIFNfckVRG0F4eKCP`gV{ z1}&I*@#61h7DxVg`e*-my#L#!U!A6eswkOR zv?&0p5=$otep9c0dTDWQ_O0hqFF(Be`K~uRPNtOb3i%N}p^CA-^RDikv8}1gWg*v7 zam}?ac?#s(=S#x~2l+-`-s8>>UTbzN15hccr?g9;tWj_UV){QgS$ z`28m`L&vj2S^fCv@W}A-QfX8SXGhAJawdaoC0t~1+rW=#PN4(ZnWg#7P^1ZC3HaM!3PBb>;=ncTz^Z`(>;a+wP7oGV+zOen+kEUNz z|2gyQ3*YH0N}~3XU%!n>j~U>5Fy5rWE4rnF!K(vH|4IuHOL}Sri3be6!7H|=_ zzGc8Enn!B}FYPnHX8=zHuWq`Lc>8u>C$JUSd>GnX_*N&cZ4wIrzgHAk^c5ATf;$0ABljyXJ`)ufg zM~Xd1xoe#L^xwpPQs(^}Y}x2l9Xa<~GC=QXgZrM9`QE6zIqREqJ}Px4&>J4d8fK4) iY^j*JJgUvn+N{U^-nXI#|1;_xd*3{M=;#BKfqw%oE<#TL literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/obj/Debug/UserWordTest.pdb b/FifthLesson/UserWordTest/obj/Debug/UserWordTest.pdb new file mode 100644 index 0000000000000000000000000000000000000000..de3e450f3da94e88c1a802d1d096254fd1e3fda9 GIT binary patch literal 13824 zcmeHNeQZ-z6u+-*V;>AQVG{=8GCqVcx(+7b!q-?g7;eDa27+~Nv~OFpuAOZsny4u% zN+KbPnST(YXpF`v{)LH&NP-aw7!r-3F~$Tx5{$-(5Q%6E^Y^>&-R*6Z*}z!b+OwT^ z-o59ZbI&>V`@YtC-N8U8&>GIKD6UwvD8IJ8Du21%;mAzSbJh!hP5z6ScCh}IJMlh7A`or- zb4|34f2QfqP&!6jOqe-L1QP8(OmO0Wb!BJWniCVxWcSpIW1C;My>`6v-UC0M|026* zjgiiH`Pm)Wt!J{27UH0gT7C4_-06KyZ)ep$_h+Em{d8&bG&4p`ee<*GKF|NC_OLT@ z;G0Ks+Mk^9WgLWW%)2;J?O#0g!H+-rsr1LDH$02~EYSE zxgOW9UcGSj0-L^xkBTx^V@MB%T%9e!jxLu|4|RkCU9K&`KwGe-v(xKub5+c7)#xp4 z-MXvN-{$j%+H3SsDBurC!EJ${r$G;eWr8nucSs0#nXB8P)njVyvS@YBarq3bx}nu) zYNg;VXbn><6MUi85j9oWO~oT>tumd8CnCUyfLnpvfXSBg6JL{oqYpEGaA>ruE;na> zd)HabVpL4V;PZgsS%GrtrUX4(fOqP?{7Um47v7cU;{ofTmqzc@FrR19#6SHv`Y_iY(L}(2TDY)n2=2!XMvPc zWz)sn?8f@XLSemAEa7{t`p{(G>J4?b`0B&m9&f--O$~v7FJy1@d&5j&mVur;kuPmR z|B@70f}@FaHh8qh%F`e1(%oTQ@@*nTtQJX0r`G&(;_&vbsz02UW;^oEd(D)s6;9ZL zJ_}*m&1+BgVPaB>5R*W)8JdeamYH!mX~tz9cnTn!@&Xc)Rne}yJL+3Hb=ogvOlEMH=f3;N~^(&y;c*9@M~F45xvS!o~onzU~rDC2-*ri=q(A>)8pSnRDF z6o)@hJ{5QfNXVB@A?PRLa6hmM*b8KtlfVQFjsV+Ojlmvv7=Xth@`)^VUm;oC9CC^) zG3GeRt_4GtXBq3fKYL&euvY|pK1|SFY!&V6b-y0;x^HM*$Timm)YU)6y)ZzHZ)?8O z>&DuGMGJOuZos@iKlvtYAFGkR z4b%yWIUuqFbQm_jPeFwY(Ou*QT z0Ppnk(uyx`f%!!kAe@8Qz6$>`-`_RqDU)tD>Gvjm(WDQXbd^a#h6UA^hAk9@$+1l6 zm*)VD0{#3byjZfXC(p4=xE|l&#`3&*4YAZRLS?QK<^R?`2}L;H%>_DuT%R`p8-UF~ zA20!2~OxZtK+}F;1E^%)mHFUKbe2Z*X15{Mqv(8zuqOwY98orJUQNv9&Ac6{Fs6*ZOigo3V^77>+ zPRcI+zHD#&@2_xql)ICI z&O>u?jo05%?Qac;Vm~f8L!vkobQiblEgn6%(-&}e7#Xcze6cAW(QhYVvtP&xZ-IX6 zx0z&k%F{JFo!#tt-11BW764O$1XYe#B2NK%@+OSkU&C?z&j)UV*DFAeU>YGM>_^@q zP=1pka{l@~3Hx@G*$3p>kcBdwdbzh}RJcCe4rJtT*D3Eu89hdd5ypK5?>c!;A@4&N eW!zEleu8%ryq`$GC`Q0o%SW-oL{c71WmC=o literal 0 HcmV?d00001 diff --git a/FifthLesson/UserWordTest/packages.config b/FifthLesson/UserWordTest/packages.config new file mode 100644 index 0000000..238840d --- /dev/null +++ b/FifthLesson/UserWordTest/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file

      + Return the SASLPrep-canonicalised version of the given for use as a query string. + This implements the {@code SASLPrep} algorithm defined in RFC 4013. + See RFC 3454, Section 7 for discussion of what a + query string is. + String normalization step in the .NET Standard version of the driver is skipped due to a lack of a string + normalization function. +

    + Return the SASLPrep-canonicalised version of the given for use as a query string. + This implements the {@code SASLPrep} algorithm defined in RFC 4013. + See RFC 3454, Section 7 for discussion of what a + query string is. + String normalization step in the .NET Standard version of the driver is skipped due to a lack of a string + normalization function. +