diff --git a/samples/CSharpUnityMono/Assets/Packages.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages.meta
similarity index 77%
rename from samples/CSharpUnityMono/Assets/Packages.meta
rename to samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages.meta
index 0e82070c..e590b8d3 100644
--- a/samples/CSharpUnityMono/Assets/Packages.meta
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages.meta
@@ -1,5 +1,5 @@
fileFormatVersion: 2
-guid: c7be0a72556bae0479091de02d6b5e46
+guid: 99912c108d2f8af49bc4aab9c15f72df
folderAsset: yes
DefaultImporter:
externalObjects: {}
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0.meta
new file mode 100644
index 00000000..918f7c10
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bad8e656139a69a40a7de29d1c10afc1
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/.signature.p7s
new file mode 100644
index 00000000..af2e6f79
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/Microsoft.Extensions.Logging.Abstractions.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/Microsoft.Extensions.Logging.Abstractions.nuspec
new file mode 100644
index 00000000..4723cb06
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/Microsoft.Extensions.Logging.Abstractions.nuspec
@@ -0,0 +1,31 @@
+
+
+
+ Microsoft.Extensions.Logging.Abstractions
+ 2.2.0
+ Microsoft
+ Microsoft
+ true
+ https://raw.githubusercontent.com/aspnet/AspNetCore/2.0.0/LICENSE.txt
+ https://asp.net/
+ https://go.microsoft.com/fwlink/?LinkID=288859
+ Logging abstractions for Microsoft.Extensions.Logging.
+Commonly used types:
+Microsoft.Extensions.Logging.ILogger
+Microsoft.Extensions.Logging.ILoggerFactory
+Microsoft.Extensions.Logging.ILogger<TCategoryName>
+Microsoft.Extensions.Logging.LogLevel
+Microsoft.Extensions.Logging.Logger<T>
+Microsoft.Extensions.Logging.LoggerMessage
+Microsoft.Extensions.Logging.Abstractions.NullLogger
+
+This package was built from the source code at https://github.com/aspnet/Extensions/tree/9bc79b2f25a3724376d7af19617c33749a30ea3a
+ © Microsoft Corporation. All rights reserved.
+ logging
+ true
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/Microsoft.Extensions.Logging.Abstractions.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/Microsoft.Extensions.Logging.Abstractions.nuspec.meta
new file mode 100644
index 00000000..38e96020
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/Microsoft.Extensions.Logging.Abstractions.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: d065a858f78bc864f9f0e4c1c9b43049
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib.meta
new file mode 100644
index 00000000..10cd073f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: fd7711e996bd0ba4ebf707f90f720c93
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0.meta
new file mode 100644
index 00000000..575afcfe
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: ddd90805128348545aa6d2573fe368c4
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll
new file mode 100644
index 00000000..4e8e3f2b
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll.meta
new file mode 100644
index 00000000..b45b305b
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: 51fd7857020912f4bab1e15cc35ae9aa
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml
new file mode 100644
index 00000000..7e68e38a
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml
@@ -0,0 +1,708 @@
+
+
+
+ Microsoft.Extensions.Logging.Abstractions
+
+
+
+
+ Represents a storage of common scope data.
+
+
+
+
+ Executes callback for each currently active scope objects in order of creation.
+ All callbacks are guaranteed to be called inline from this method.
+
+ The callback to be executed for every scope object
+ The state object to be passed into the callback
+
+
+
+
+ Adds scope object to the list
+
+ The scope object
+ The token that removes scope on dispose.
+
+
+
+ Represents a type used to perform logging.
+
+ Aggregates most logging patterns to a single method.
+
+
+
+ Writes a log entry.
+
+ Entry will be written on this level.
+ Id of the event.
+ The entry to be written. Can be also an object.
+ The exception related to this entry.
+ Function to create a string message of the and .
+
+
+
+ Checks if the given is enabled.
+
+ level to be checked.
+ true if enabled.
+
+
+
+ Begins a logical operation scope.
+
+ The identifier for the scope.
+ An IDisposable that ends the logical operation scope on dispose.
+
+
+
+ Represents a type used to configure the logging system and create instances of from
+ the registered s.
+
+
+
+
+ Creates a new instance.
+
+ The category name for messages produced by the logger.
+ The .
+
+
+
+ Adds an to the logging system.
+
+ The .
+
+
+
+ A generic interface for logging where the category name is derived from the specified
+ type name.
+ Generally used to enable activation of a named from dependency injection.
+
+ The type who's name is used for the logger category name.
+
+
+
+ Represents a type that can create instances of .
+
+
+
+
+ Creates a new instance.
+
+ The category name for messages produced by the logger.
+
+
+
+
+ LogValues to enable formatting options supported by .
+ This also enables using {NamedformatItem} in the format string.
+
+
+
+
+ Formatter to convert the named format items like {NamedformatItem} to format.
+
+
+
+
+ An empty scope without any logic
+
+
+
+
+
+
+
+ Minimalistic logger that does nothing.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ An used to create instance of
+ that logs nothing.
+
+
+
+
+
+ This returns a instance which logs nothing.
+
+
+
+
+
+ This method ignores the parameter and does nothing.
+
+
+
+
+ Minimalistic logger that does nothing.
+
+
+
+
+
+
+
+
+ This method ignores the parameters and does nothing.
+
+
+
+
+
+
+
+ Provider for the .
+
+
+
+
+
+
+
+
+
+
+ The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s).
+
+
+
+
+ The format string '{0}' does not have the expected number of named parameters. Expected {1} parameter(s) but found {2} parameter(s).
+
+
+
+
+ Represents a that is able to consume external scope information.
+
+
+
+
+ Sets external scope information source for logger provider.
+
+
+
+
+
+ ILogger extension methods for common scenarios.
+
+
+
+
+ Formats and writes a debug log message.
+
+ The to write to.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogDebug(0, exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a debug log message.
+
+ The to write to.
+ The event id associated with the log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogDebug(0, "Processing request from {Address}", address)
+
+
+
+ Formats and writes a debug log message.
+
+ The to write to.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogDebug(exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a debug log message.
+
+ The to write to.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogDebug("Processing request from {Address}", address)
+
+
+
+ Formats and writes a trace log message.
+
+ The to write to.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogTrace(0, exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a trace log message.
+
+ The to write to.
+ The event id associated with the log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogTrace(0, "Processing request from {Address}", address)
+
+
+
+ Formats and writes a trace log message.
+
+ The to write to.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogTrace(exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a trace log message.
+
+ The to write to.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogTrace("Processing request from {Address}", address)
+
+
+
+ Formats and writes an informational log message.
+
+ The to write to.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogInformation(0, exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes an informational log message.
+
+ The to write to.
+ The event id associated with the log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogInformation(0, "Processing request from {Address}", address)
+
+
+
+ Formats and writes an informational log message.
+
+ The to write to.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogInformation(exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes an informational log message.
+
+ The to write to.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogInformation("Processing request from {Address}", address)
+
+
+
+ Formats and writes a warning log message.
+
+ The to write to.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogWarning(0, exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a warning log message.
+
+ The to write to.
+ The event id associated with the log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogWarning(0, "Processing request from {Address}", address)
+
+
+
+ Formats and writes a warning log message.
+
+ The to write to.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogWarning(exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a warning log message.
+
+ The to write to.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogWarning("Processing request from {Address}", address)
+
+
+
+ Formats and writes an error log message.
+
+ The to write to.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogError(0, exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes an error log message.
+
+ The to write to.
+ The event id associated with the log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogError(0, "Processing request from {Address}", address)
+
+
+
+ Formats and writes an error log message.
+
+ The to write to.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogError(exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes an error log message.
+
+ The to write to.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogError("Processing request from {Address}", address)
+
+
+
+ Formats and writes a critical log message.
+
+ The to write to.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogCritical(0, exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a critical log message.
+
+ The to write to.
+ The event id associated with the log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogCritical(0, "Processing request from {Address}", address)
+
+
+
+ Formats and writes a critical log message.
+
+ The to write to.
+ The exception to log.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogCritical(exception, "Error while processing request from {Address}", address)
+
+
+
+ Formats and writes a critical log message.
+
+ The to write to.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ logger.LogCritical("Processing request from {Address}", address)
+
+
+
+ Formats and writes a log message at the specified log level.
+
+ The to write to.
+ Entry will be written on this level.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats and writes a log message at the specified log level.
+
+ The to write to.
+ Entry will be written on this level.
+ The event id associated with the log.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats and writes a log message at the specified log level.
+
+ The to write to.
+ Entry will be written on this level.
+ The exception to log.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats and writes a log message at the specified log level.
+
+ The to write to.
+ Entry will be written on this level.
+ The event id associated with the log.
+ The exception to log.
+ Format string of the log message.
+ An object array that contains zero or more objects to format.
+
+
+
+ Formats the message and creates a scope.
+
+ The to create the scope in.
+ Format string of the log message in message template format. Example: "User {User} logged in from {Address}"
+ An object array that contains zero or more objects to format.
+ A disposable scope object. Can be null.
+
+ using(logger.BeginScope("Processing request from {Address}", address))
+ {
+ }
+
+
+
+
+ Default implemenation of
+
+
+
+
+
+
+
+
+
+
+ ILoggerFactory extension methods for common scenarios.
+
+
+
+
+ Creates a new ILogger instance using the full name of the given type.
+
+ The type.
+ The factory.
+
+
+
+ Creates a new ILogger instance using the full name of the given type.
+
+ The factory.
+ The type.
+
+
+
+ Creates delegates which can be later cached to log messages in a performant way.
+
+
+
+
+ Creates a delegate which can be invoked to create a log scope.
+
+ The named format string
+ A delegate which when invoked creates a log scope.
+
+
+
+ Creates a delegate which can be invoked to create a log scope.
+
+ The type of the first parameter passed to the named format string.
+ The named format string
+ A delegate which when invoked creates a log scope.
+
+
+
+ Creates a delegate which can be invoked to create a log scope.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The named format string
+ A delegate which when invoked creates a log scope.
+
+
+
+ Creates a delegate which can be invoked to create a log scope.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The type of the third parameter passed to the named format string.
+ The named format string
+ A delegate which when invoked creates a log scope.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The type of the first parameter passed to the named format string.
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The type of the third parameter passed to the named format string.
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The type of the third parameter passed to the named format string.
+ The type of the fourth parameter passed to the named format string.
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The type of the third parameter passed to the named format string.
+ The type of the fourth parameter passed to the named format string.
+ The type of the fifth parameter passed to the named format string.
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Creates a delegate which can be invoked for logging a message.
+
+ The type of the first parameter passed to the named format string.
+ The type of the second parameter passed to the named format string.
+ The type of the third parameter passed to the named format string.
+ The type of the fourth parameter passed to the named format string.
+ The type of the fifth parameter passed to the named format string.
+ The type of the sixth parameter passed to the named format string.
+ The
+ The event id
+ The named format string
+ A delegate which when invoked creates a log message.
+
+
+
+ Delegates to a new instance using the full name of the given type, created by the
+ provided .
+
+ The type.
+
+
+
+ Creates a new .
+
+ The factory.
+
+
+
+ Defines logging severity levels.
+
+
+
+
+ Logs that contain the most detailed messages. These messages may contain sensitive application data.
+ These messages are disabled by default and should never be enabled in a production environment.
+
+
+
+
+ Logs that are used for interactive investigation during development. These logs should primarily contain
+ information useful for debugging and have no long-term value.
+
+
+
+
+ Logs that track the general flow of the application. These logs should have long-term value.
+
+
+
+
+ Logs that highlight an abnormal or unexpected event in the application flow, but do not otherwise cause the
+ application execution to stop.
+
+
+
+
+ Logs that highlight when the current flow of execution is stopped due to a failure. These should indicate a
+ failure in the current activity, not an application-wide failure.
+
+
+
+
+ Logs that describe an unrecoverable application or system crash, or a catastrophic failure that requires
+ immediate attention.
+
+
+
+
+ Not used for writing log messages. Specifies that a logging category should not write any messages.
+
+
+
+
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml.meta
new file mode 100644
index 00000000..5397b25a
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Extensions.Logging.Abstractions.2.2.0/lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 010e63715e338e44f9cfaa0f38ac0fb2
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0.meta
new file mode 100644
index 00000000..8a474b0a
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 29bf5f01c6942d34596542217a65e69d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/.signature.p7s
new file mode 100644
index 00000000..f7bc27e6
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Icon.png b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Icon.png
new file mode 100644
index 00000000..a0f1fdbf
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Icon.png differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Icon.png.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Icon.png.meta
new file mode 100644
index 00000000..cd384a54
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Icon.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: c1d20131cb70b8247afec65f009385be
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/LICENSE.TXT b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/LICENSE.TXT
new file mode 100644
index 00000000..984713a4
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/LICENSE.TXT
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+
+Copyright (c) .NET Foundation and Contributors
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/LICENSE.TXT.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/LICENSE.TXT.meta
new file mode 100644
index 00000000..4790a20f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/LICENSE.TXT.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 09922f3cc42629e4290993d49ea213f2
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Microsoft.Win32.Registry.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Microsoft.Win32.Registry.nuspec
new file mode 100644
index 00000000..b90a7ea7
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Microsoft.Win32.Registry.nuspec
@@ -0,0 +1,94 @@
+
+
+
+ Microsoft.Win32.Registry
+ 5.0.0
+ Microsoft.Win32.Registry
+ Microsoft
+ microsoft,dotnetframework
+ false
+ MIT
+ https://licenses.nuget.org/MIT
+ Icon.png
+ https://github.com/dotnet/runtime
+ http://go.microsoft.com/fwlink/?LinkID=288859
+ Provides support for accessing and modifying the Windows Registry.
+
+Commonly Used Types:
+Microsoft.Win32.RegistryKey
+Microsoft.Win32.Registry
+Microsoft.Win32.RegistryValueKind
+Microsoft.Win32.RegistryHive
+Microsoft.Win32.RegistryView
+
+When using NuGet 3.x this package requires at least version 3.4.
+ https://go.microsoft.com/fwlink/?LinkID=799421
+ © Microsoft Corporation. All rights reserved.
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Microsoft.Win32.Registry.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Microsoft.Win32.Registry.nuspec.meta
new file mode 100644
index 00000000..589eb82b
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/Microsoft.Win32.Registry.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 01a37ed97af1b924ea51d075431e942c
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/THIRD-PARTY-NOTICES.TXT b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 00000000..111dcf58
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,884 @@
+.NET Runtime uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Runtime software.
+
+In the event that we accidentally failed to list a required notice, please
+bring it to our attention. Post an issue or email us:
+
+ dotnet@microsoft.com
+
+The attached notices are provided for information only.
+
+License notice for ASP.NET
+-------------------------------
+
+Copyright (c) .NET Foundation. All rights reserved.
+Licensed under the Apache License, Version 2.0.
+
+Available at
+https://github.com/aspnet/AspNetCore/blob/master/LICENSE.txt
+
+License notice for Slicing-by-8
+-------------------------------
+
+http://sourceforge.net/projects/slicing-by-8/
+
+Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+
+This software program is licensed subject to the BSD License, available at
+http://www.opensource.org/licenses/bsd-license.html.
+
+
+License notice for Unicode data
+-------------------------------
+
+https://www.unicode.org/license.html
+
+Copyright © 1991-2020 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+License notice for Zlib
+-----------------------
+
+https://github.com/madler/zlib
+http://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+ version 1.2.11, January 15th, 2017
+
+ Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+ Jean-loup Gailly Mark Adler
+ jloup@gzip.org madler@alumni.caltech.edu
+
+*/
+
+License notice for Mono
+-------------------------------
+
+http://www.mono-project.com/docs/about-mono/
+
+Copyright (c) .NET Foundation Contributors
+
+MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the Software), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for International Organization for Standardization
+-----------------------------------------------------------------
+
+Portions (C) International Organization for Standardization 1986:
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+License notice for Intel
+------------------------
+
+"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xamarin and Novell
+-------------------------------------
+
+Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Copyright (c) 2011 Novell, Inc (http://www.novell.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Third party notice for W3C
+--------------------------
+
+"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
+Status: This license takes effect 13 May, 2015.
+This work is being provided by the copyright holders under the following license.
+License
+By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
+Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
+The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
+Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
+Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
+Disclaimers
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
+
+License notice for Bit Twiddling Hacks
+--------------------------------------
+
+Bit Twiddling Hacks
+
+By Sean Eron Anderson
+seander@cs.stanford.edu
+
+Individually, the code snippets here are in the public domain (unless otherwise
+noted) — feel free to use them however you please. The aggregate collection and
+descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are
+distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
+without even the implied warranty of merchantability or fitness for a particular
+purpose.
+
+License notice for Brotli
+--------------------------------------
+
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+compress_fragment.c:
+Copyright (c) 2011, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+decode_fuzzer.c:
+Copyright (c) 2015 The Chromium Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
+License notice for Json.NET
+-------------------------------
+
+https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md
+
+The MIT License (MIT)
+
+Copyright (c) 2007 James Newton-King
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized base64 encoding / decoding
+--------------------------------------------------------
+
+Copyright (c) 2005-2007, Nick Galbreath
+Copyright (c) 2013-2017, Alfred Klomp
+Copyright (c) 2015-2017, Wojciech Mula
+Copyright (c) 2016-2017, Matthieu Darbois
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+- Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for RFC 3492
+---------------------------
+
+The punycode implementation is based on the sample code in RFC 3492
+
+Copyright (C) The Internet Society (2003). All Rights Reserved.
+
+This document and translations of it may be copied and furnished to
+others, and derivative works that comment on or otherwise explain it
+or assist in its implementation may be prepared, copied, published
+and distributed, in whole or in part, without restriction of any
+kind, provided that the above copyright notice and this paragraph are
+included on all such copies and derivative works. However, this
+document itself may not be modified in any way, such as by removing
+the copyright notice or references to the Internet Society or other
+Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for
+copyrights defined in the Internet Standards process must be
+followed, or as required to translate it into languages other than
+English.
+
+The limited permissions granted above are perpetual and will not be
+revoked by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an
+"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
+TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
+BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
+HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+License notice for Algorithm from Internet Draft document "UUIDs and GUIDs"
+---------------------------------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, or Digital Equipment Corporation be used in advertising
+or publicity pertaining to distribution of the software without
+specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital Equipment
+Corporation makes any representations about the suitability of
+this software for any purpose.
+
+Copyright(C) The Internet Society 1997. All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others,
+and derivative works that comment on or otherwise explain it or assist in
+its implementation may be prepared, copied, published and distributed, in
+whole or in part, without restriction of any kind, provided that the above
+copyright notice and this paragraph are included on all such copies and
+derivative works.However, this document itself may not be modified in any
+way, such as by removing the copyright notice or references to the Internet
+Society or other Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for copyrights
+defined in the Internet Standards process must be followed, or as required
+to translate it into languages other than English.
+
+The limited permissions granted above are perpetual and will not be revoked
+by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an "AS IS"
+basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE
+DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
+ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY
+RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
+PARTICULAR PURPOSE.
+
+License notice for Algorithm from RFC 4122 -
+A Universally Unique IDentifier (UUID) URN Namespace
+----------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+Copyright (c) 1998 Microsoft.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, Microsoft, or Digital Equipment Corporation be used in
+advertising or publicity pertaining to distribution of the software
+without specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital
+Equipment Corporation makes any representations about the
+suitability of this software for any purpose."
+
+License notice for The LLVM Compiler Infrastructure
+---------------------------------------------------
+
+Developed by:
+
+ LLVM Team
+
+ University of Illinois at Urbana-Champaign
+
+ http://llvm.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal with
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+
+ * Neither the names of the LLVM Team, University of Illinois at
+ Urbana-Champaign, nor the names of its contributors may be used to
+ endorse or promote products derived from this Software without specific
+ prior written permission.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+License notice for Bob Jenkins
+------------------------------
+
+By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this
+code any way you wish, private, educational, or commercial. It's free.
+
+License notice for Greg Parker
+------------------------------
+
+Greg Parker gparker@cs.stanford.edu December 2000
+This code is in the public domain and may be copied or modified without
+permission.
+
+License notice for libunwind based code
+----------------------------------------
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for Printing Floating-Point Numbers (Dragon4)
+------------------------------------------------------------
+
+/******************************************************************************
+ Copyright (c) 2014 Ryan Juckett
+ http://www.ryanjuckett.com/
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+
+ 3. This notice may not be removed or altered from any source
+ distribution.
+******************************************************************************/
+
+License notice for Printing Floating-point Numbers (Grisu3)
+-----------------------------------------------------------
+
+Copyright 2012 the V8 project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of Google Inc. nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xxHash
+-------------------------
+
+xxHash Library
+Copyright (c) 2012-2014, Yann Collet
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this
+ list of conditions and the following disclaimer in the documentation and/or
+ other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Berkeley SoftFloat Release 3e
+------------------------------------------------
+
+https://github.com/ucb-bar/berkeley-softfloat-3
+https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt
+
+License for Berkeley SoftFloat Release 3e
+
+John R. Hauser
+2018 January 20
+
+The following applies to the whole of SoftFloat Release 3e as well as to
+each source file individually.
+
+Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+University of California. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions, and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions, and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+ 3. Neither the name of the University nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
+DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xorshift RNGs
+--------------------------------
+
+George Marsaglia
+2003-07-04
+Journal of Statistical Software
+License: http://creativecommons.org/licenses/by/3.0/
+
+https://www.jstatsoft.org/article/view/v008i14
+https://www.jstatsoft.org/index.php/jss/article/view/v008i14/xorshift.pdf
+
+License notice for Xorshift (Wikipedia)
+---------------------------------------
+
+https://en.wikipedia.org/wiki/Xorshift
+License: https://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License
+
+License for fastmod (https://github.com/lemire/fastmod)
+--------------------------------------
+
+ Copyright 2018 Daniel Lemire
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+License notice for The C++ REST SDK
+-----------------------------------
+
+C++ REST SDK
+
+The MIT License (MIT)
+
+Copyright (c) Microsoft Corporation
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for MessagePack-CSharp
+-------------------------------------
+
+MessagePack for C#
+
+MIT License
+
+Copyright (c) 2017 Yoshifumi Kawai
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for lz4net
+-------------------------------------
+
+lz4net
+
+Copyright (c) 2013-2017, Milosz Krajewski
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Nerdbank.Streams
+-----------------------------------
+
+The MIT License (MIT)
+
+Copyright (c) Andrew Arnott
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for RapidJSON
+----------------------------
+
+Tencent is pleased to support the open source community by making RapidJSON available.
+
+Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
+
+Licensed under the MIT License (the "License"); you may not use this file except
+in compliance with the License. You may obtain a copy of the License at
+
+http://opensource.org/licenses/MIT
+
+Unless required by applicable law or agreed to in writing, software distributed
+under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, either express or implied. See the License for the
+specific language governing permissions and limitations under the License.
+
+License notice for DirectX Math Library
+---------------------------------------
+
+https://github.com/microsoft/DirectXMath/blob/master/LICENSE
+
+ The MIT License (MIT)
+
+Copyright (c) 2011-2020 Microsoft Corp
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this
+software and associated documentation files (the "Software"), to deal in the Software
+without restriction, including without limitation the rights to use, copy, modify,
+merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be included in all copies
+or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
+OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for ldap4net
+---------------------------
+
+The MIT License (MIT)
+
+Copyright (c) 2018 Alexander Chermyanin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized sorting code
+------------------------------------------
+
+MIT License
+
+Copyright (c) 2020 Dan Shechter
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/THIRD-PARTY-NOTICES.TXT.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/THIRD-PARTY-NOTICES.TXT.meta
new file mode 100644
index 00000000..aaeb6417
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/THIRD-PARTY-NOTICES.TXT.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: d91cb3d63e8980c4c938296b198ec288
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib.meta
new file mode 100644
index 00000000..9c608f5f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 891fe82396f7eb84cbf7c140a1c5ac56
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0.meta
new file mode 100644
index 00000000..c8db6988
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: a81025ea4e95d4a46adc584514832e20
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.dll
new file mode 100644
index 00000000..d7fdbbd0
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.dll.meta
new file mode 100644
index 00000000..e672914a
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: 947b9d068bf6a284ca04d57a028f1157
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.xml b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.xml
new file mode 100644
index 00000000..967521fa
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.xml
@@ -0,0 +1,1025 @@
+
+
+
+ Microsoft.Win32.Registry
+
+
+
+ Provides objects that represent the root keys in the Windows registry, and methods to access key/value pairs.
+
+
+ Defines the types (or classes) of documents and the properties associated with those types. This field reads the Windows registry base key HKEY_CLASSES_ROOT.
+
+
+ Contains configuration information pertaining to the hardware that is not specific to the user. This field reads the Windows registry base key HKEY_CURRENT_CONFIG.
+
+
+ Contains information about the current user preferences. This field reads the Windows registry base key HKEY_CURRENT_USER.
+
+
+ Contains the configuration data for the local machine. This field reads the Windows registry base key HKEY_LOCAL_MACHINE.
+
+
+ Contains performance information for software components. This field reads the Windows registry base key HKEY_PERFORMANCE_DATA.
+
+
+ Contains information about the default user configuration. This field reads the Windows registry base key HKEY_USERS.
+
+
+ Retrieves the value associated with the specified name, in the specified registry key. If the name is not found in the specified key, returns a default value that you provide, or if the specified key does not exist.
+ The full registry path of the key, beginning with a valid registry root, such as "HKEY_CURRENT_USER".
+ The name of the name/value pair.
+ The value to return if does not exist.
+ The user does not have the permissions required to read from the registry key.
+ The that contains the specified value has been marked for deletion.
+
+ does not begin with a valid registry root.
+
+ if the subkey specified by does not exist; otherwise, the value associated with , or if is not found.
+
+
+ Sets the specified name/value pair on the specified registry key. If the specified key does not exist, it is created.
+ The full registry path of the key, beginning with a valid registry root, such as "HKEY_CURRENT_USER".
+ The name of the name/value pair.
+ The value to be stored.
+
+ is .
+
+ does not begin with a valid registry root.
+
+ -or-
+
+ is longer than the maximum length allowed (255 characters).
+ The is read-only, and thus cannot be written to; for example, it is a root-level node.
+ The user does not have the permissions required to create or modify registry keys.
+
+
+ Sets the name/value pair on the specified registry key, using the specified registry data type. If the specified key does not exist, it is created.
+ The full registry path of the key, beginning with a valid registry root, such as "HKEY_CURRENT_USER".
+ The name of the name/value pair.
+ The value to be stored.
+ The registry data type to use when storing the data.
+
+ is .
+
+ does not begin with a valid registry root.
+
+ -or-
+
+ is longer than the maximum length allowed (255 characters).
+
+ -or-
+
+ The type of did not match the registry data type specified by , therefore the data could not be converted properly.
+ The is read-only, and thus cannot be written to; for example, it is a root-level node, or the key has not been opened with write access.
+ The user does not have the permissions required to create or modify registry keys.
+
+
+ Represents the possible values for a top-level node on a foreign machine.
+
+
+ Represents the HKEY_CLASSES_ROOT base key on another computer. This value can be passed to the method, to open this node remotely.
+
+
+ Represents the HKEY_CURRENT_CONFIG base key on another computer. This value can be passed to the method, to open this node remotely.
+
+
+ Represents the HKEY_CURRENT_USER base key on another computer. This value can be passed to the method, to open this node remotely.
+
+
+ Represents the HKEY_LOCAL_MACHINE base key on another computer. This value can be passed to the method, to open this node remotely.
+
+
+ Represents the HKEY_PERFORMANCE_DATA base key on another computer. This value can be passed to the method, to open this node remotely.
+
+
+ Represents the HKEY_USERS base key on another computer. This value can be passed to the method, to open this node remotely.
+
+
+ Represents a key-level node in the Windows registry. This class is a registry encapsulation.
+
+
+ Closes the key and flushes it to disk if its contents have been modified.
+
+
+ Creates a new subkey or opens an existing subkey for write access.
+ The name or path of the subkey to create or open. This string is not case-sensitive.
+
+ is .
+ The user does not have the permissions required to create or open the registry key.
+ The on which this method is being invoked is closed (closed keys cannot be accessed).
+ The cannot be written to; for example, it was not opened as a writable key , or the user does not have the necessary access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key, or an attempt to create a key in the root.
+ The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned.
+
+
+ Creates a new subkey or opens an existing subkey for write access, using the specified permission check option.
+ The name or path of the subkey to create or open. This string is not case-sensitive.
+ One of the enumeration values that specifies whether the key is opened for read or read/write access.
+
+ is .
+ The user does not have the permissions required to create or open the registry key.
+
+ contains an invalid value.
+ The on which this method is being invoked is closed (closed keys cannot be accessed).
+ The cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key, or an attempt to create a key in the root.
+ The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned.
+
+
+ Creates a subkey or opens a subkey for write access, using the specified permission check and registry options.
+ The name or path of the subkey to create or open.
+ One of the enumeration values that specifies whether the key is opened for read or read/write access.
+ The registry option to use; for example, that creates a volatile key.
+
+ is .
+ The current object is closed (closed keys cannot be accessed).
+ The current object cannot be written to; for example, it was not opened as a writable key, or the user does not have the required access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key or an attempt to create a key in the root.
+ The user does not have the permissions required to create or open the registry key.
+ The newly created subkey, or if the operation failed.
+
+
+ Creates a subkey or opens a subkey for write access, using the specified permission check option, registry option, and registry security.
+ The name or path of the subkey to create or open.
+ One of the enumeration values that specifies whether the key is opened for read or read/write access.
+ The registry option to use.
+ The access control security for the new subkey.
+
+ is .
+ The current object is closed. Closed keys cannot be accessed.
+ The current object cannot be written to; for example, it was not opened as a writable key, or the user does not have the required access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key or an attempt to create a key in the root.
+ The user does not have the permissions required to create or open the registry key.
+ The newly created subkey, or if the operation failed.
+
+
+ Creates a new subkey or opens an existing subkey for write access, using the specified permission check option and registry security.
+ The name or path of the subkey to create or open. This string is not case-sensitive.
+ One of the enumeration values that specifies whether the key is opened for read or read/write access.
+ The access control security for the new key.
+
+ is .
+ The user does not have the permissions required to create or open the registry key.
+
+ contains an invalid value.
+ The on which this method is being invoked is closed (closed keys cannot be accessed).
+ The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key, or an attempt to create a key in the root.
+ The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned.
+
+
+ Creates a new subkey or opens an existing subkey with the specified access. Available starting with .NET Framework 4.6.
+ The name or path of the subkey to create or open. This string is not case-sensitive.
+
+ to indicate the new subkey is writable; otherwise, .
+
+ is .
+ The user does not have the permissions required to create or open the registry key.
+ The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key, or an attempt to create a key in the root.
+ The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned.
+
+
+ Creates a new subkey or opens an existing subkey with the specified access. Available starting with .NET Framework 4.6.
+ The name or path of the subkey to create or open. This string is not case-sensitive.
+
+ to indicate the new subkey is writable; otherwise, .
+ The registry option to use.
+
+ is .
+
+ does not specify a valid Option
+ The user does not have the permissions required to create or open the registry key.
+ The current cannot be written to; for example, it was not opened as a writable key, or the user does not have the necessary access rights.
+ The nesting level exceeds 510.
+
+ -or-
+
+ A system error occurred, such as deletion of the key, or an attempt to create a key in the root.
+ The newly created subkey, or if the operation failed. If a zero-length string is specified for , the current object is returned.
+
+
+ Deletes the specified subkey.
+ The name of the subkey to delete. This string is not case-sensitive.
+ The has child subkeys
+ The parameter does not specify a valid registry key
+
+ is
+ The user does not have the permissions required to delete the key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+
+
+ Deletes the specified subkey, and specifies whether an exception is raised if the subkey is not found.
+ The name of the subkey to delete. This string is not case-sensitive.
+ Indicates whether an exception should be raised if the specified subkey cannot be found. If this argument is and the specified subkey does not exist, an exception is raised. If this argument is and the specified subkey does not exist, no action is taken.
+
+ has child subkeys.
+
+ does not specify a valid registry key, and is .
+
+ is .
+ The user does not have the permissions required to delete the key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+
+
+ Deletes a subkey and any child subkeys recursively.
+ The subkey to delete. This string is not case-sensitive.
+
+ is .
+ Deletion of a root hive is attempted.
+
+ -or-
+
+ does not specify a valid registry subkey.
+ An I/O error has occurred.
+ The user does not have the permissions required to delete the key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+
+
+ Deletes the specified subkey and any child subkeys recursively, and specifies whether an exception is raised if the subkey is not found.
+ The name of the subkey to delete. This string is not case-sensitive.
+ Indicates whether an exception should be raised if the specified subkey cannot be found. If this argument is and the specified subkey does not exist, an exception is raised. If this argument is and the specified subkey does not exist, no action is taken.
+ An attempt was made to delete the root hive of the tree.
+
+ -or-
+
+ does not specify a valid registry subkey, and is .
+
+ is .
+ The is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+ The user does not have the permissions required to delete the key.
+
+
+ Deletes the specified value from this key.
+ The name of the value to delete.
+
+ is not a valid reference to a value.
+ The user does not have the permissions required to delete the value.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The being manipulated is read-only.
+
+
+ Deletes the specified value from this key, and specifies whether an exception is raised if the value is not found.
+ The name of the value to delete.
+ Indicates whether an exception should be raised if the specified value cannot be found. If this argument is and the specified value does not exist, an exception is raised. If this argument is and the specified value does not exist, no action is taken.
+
+ is not a valid reference to a value and is .
+
+ -or-
+
+ is .
+ The user does not have the permissions required to delete the value.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The being manipulated is read-only.
+
+
+ Releases all resources used by the current instance of the class.
+
+
+ Writes all the attributes of the specified open registry key into the registry.
+
+
+ Creates a registry key from a specified handle.
+ The handle to the registry key.
+
+ is .
+ The user does not have the necessary registry rights.
+ The user does not have the permissions required to perform this action.
+ A registry key.
+
+
+ Creates a registry key from a specified handle and registry view setting.
+ The handle to the registry key.
+ The registry view to use.
+
+ is invalid.
+
+ is .
+ The user does not have the necessary registry rights.
+ The user does not have the permissions required to perform this action.
+ A registry key.
+
+
+ Returns the access control security for the current registry key.
+ The user does not have the necessary permissions.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The current key has been deleted.
+ An object that describes the access control permissions on the registry key represented by the current .
+
+
+ Returns the specified sections of the access control security for the current registry key.
+ A bitwise combination of enumeration values that specifies the type of security information to get.
+ The user does not have the necessary permissions.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The current key has been deleted.
+ An object that describes the access control permissions on the registry key represented by the current .
+
+
+ Retrieves an array of strings that contains all the subkey names.
+ The user does not have the permissions required to read from the key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+ A system error occurred, for example the current key has been deleted.
+ An array of strings that contains the names of the subkeys for the current key.
+
+
+ Retrieves the value associated with the specified name. Returns if the name/value pair does not exist in the registry.
+ The name of the value to retrieve. This string is not case-sensitive.
+ The user does not have the permissions required to read from the registry key.
+ The that contains the specified value is closed (closed keys cannot be accessed).
+ The that contains the specified value has been marked for deletion.
+ The user does not have the necessary registry rights.
+ The value associated with , or if is not found.
+
+
+ Retrieves the value associated with the specified name. If the name is not found, returns the default value that you provide.
+ The name of the value to retrieve. This string is not case-sensitive.
+ The value to return if does not exist.
+ The user does not have the permissions required to read from the registry key.
+ The that contains the specified value is closed (closed keys cannot be accessed).
+ The that contains the specified value has been marked for deletion.
+ The user does not have the necessary registry rights.
+ The value associated with , with any embedded environment variables left unexpanded, or if is not found.
+
+
+ Retrieves the value associated with the specified name and retrieval options. If the name is not found, returns the default value that you provide.
+ The name of the value to retrieve. This string is not case-sensitive.
+ The value to return if does not exist.
+ One of the enumeration values that specifies optional processing of the retrieved value.
+ The user does not have the permissions required to read from the registry key.
+ The that contains the specified value is closed (closed keys cannot be accessed).
+ The that contains the specified value has been marked for deletion.
+
+ is not a valid value; for example, an invalid value is cast to .
+ The user does not have the necessary registry rights.
+ The value associated with , processed according to the specified , or if is not found.
+
+
+ Retrieves the registry data type of the value associated with the specified name.
+ The name of the value whose registry data type is to be retrieved. This string is not case-sensitive.
+ The user does not have the permissions required to read from the registry key.
+ The that contains the specified value is closed (closed keys cannot be accessed).
+ The subkey that contains the specified value does not exist.
+
+ -or-
+
+ The name/value pair specified by does not exist.
+
+ This exception is not thrown on Windows 95, Windows 98, or Windows Millennium Edition.
+ The user does not have the necessary registry rights.
+ The registry data type of the value associated with .
+
+
+ Retrieves an array of strings that contains all the value names associated with this key.
+ The user does not have the permissions required to read from the registry key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+ A system error occurred; for example, the current key has been deleted.
+ An array of strings that contains the value names for the current key.
+
+
+ Opens a new that represents the requested key on the local machine with the specified view.
+ The HKEY to open.
+ The registry view to use.
+
+ or is invalid.
+ The user does not have the necessary registry rights.
+ The user does not have the permissions required to perform this action.
+ The requested registry key.
+
+
+ Opens a new that represents the requested key on a remote machine.
+ The HKEY to open, from the enumeration.
+ The remote machine.
+
+ is invalid.
+
+ is not found.
+
+ is .
+ The user does not have the proper permissions to perform this operation.
+ The user does not have the necessary registry rights.
+ The requested registry key.
+
+
+ Opens a new registry key that represents the requested key on a remote machine with the specified view.
+ The HKEY to open from the enumeration.
+ The remote machine.
+ The registry view to use.
+
+ or is invalid.
+
+ is not found.
+
+ is .
+ The user does not have the necessary registry rights.
+ The user does not have the required permissions to perform this operation.
+ The requested registry key.
+
+
+ Retrieves a subkey as read-only.
+ The name or path of the subkey to open as read-only.
+
+ is
+ The is closed (closed keys cannot be accessed).
+ The user does not have the permissions required to read the registry key.
+ The subkey requested, or if the operation failed.
+
+
+ Retrieves the specified subkey for read or read/write access.
+ The name or path of the subkey to create or open.
+ One of the enumeration values that specifies whether the key is opened for read or read/write access.
+
+ is
+
+ contains an invalid value.
+ The is closed (closed keys cannot be accessed).
+ The user does not have the permissions required to read the registry key.
+ The subkey requested, or if the operation failed.
+
+
+ Retrieves the specified subkey for read or read/write access, requesting the specified access rights.
+ The name or path of the subkey to create or open.
+ One of the enumeration values that specifies whether the key is opened for read or read/write access.
+ A bitwise combination of enumeration values that specifies the desired security access.
+
+ is
+
+ contains an invalid value.
+ The is closed (closed keys cannot be accessed).
+
+ includes invalid registry rights values.
+
+ -or-
+
+ The user does not have the requested permissions.
+ The subkey requested, or if the operation failed.
+
+
+ Retrieves a specified subkey, and specifies whether write access is to be applied to the key.
+ Name or path of the subkey to open.
+ Set to if you need write access to the key.
+
+ is .
+ The is closed (closed keys cannot be accessed).
+ The user does not have the permissions required to access the registry key in the specified mode.
+ The subkey requested, or if the operation failed.
+
+
+ Retrieves a subkey with the specified name and access rights. Available starting with .NET Framework 4.6.
+ The name or path of the subkey to create or open.
+ The rights for the registry key.
+
+ is .
+ The is closed (closed keys cannot be accessed).
+ The user does not have the permissions required to access the registry key in the specified mode.
+ The subkey requested, or if the operation failed.
+
+
+ Applies Windows access control security to an existing registry key.
+ The access control security to apply to the current subkey.
+ The current object represents a key with access control security, and the caller does not have rights.
+
+ is .
+ The being manipulated is closed (closed keys cannot be accessed).
+
+
+ Sets the specified name/value pair.
+ The name of the value to store.
+ The data to be stored.
+
+ is .
+
+ is an unsupported data type.
+ The that contains the specified value is closed (closed keys cannot be accessed).
+ The is read-only, and cannot be written to; for example, the key has not been opened with write access.
+
+ -or-
+
+ The object represents a root-level node, and the operating system is Windows Millennium Edition or Windows 98.
+ The user does not have the permissions required to create or modify registry keys.
+ The object represents a root-level node, and the operating system is Windows 2000, Windows XP, or Windows Server 2003.
+
+
+ Sets the value of a name/value pair in the registry key, using the specified registry data type.
+ The name of the value to be stored.
+ The data to be stored.
+ The registry data type to use when storing the data.
+
+ is .
+ The type of did not match the registry data type specified by , therefore the data could not be converted properly.
+ The that contains the specified value is closed (closed keys cannot be accessed).
+ The is read-only, and cannot be written to; for example, the key has not been opened with write access.
+
+ -or-
+
+ The object represents a root-level node, and the operating system is Windows Millennium Edition or Windows 98.
+ The user does not have the permissions required to create or modify registry keys.
+ The object represents a root-level node, and the operating system is Windows 2000, Windows XP, or Windows Server 2003.
+
+
+ Retrieves a string representation of this key.
+ The being accessed is closed (closed keys cannot be accessed).
+ A string representing the key. If the specified key is invalid (cannot be found) then is returned.
+
+
+ Gets a object that represents the registry key that the current object encapsulates.
+ The registry key is closed. Closed keys cannot be accessed.
+ The user does not have the necessary registry rights.
+ A system error occurred, such as deletion of the current key.
+ The user does not have the permissions required to read the key.
+ The handle to the registry key.
+
+
+ Retrieves the name of the key.
+ The is closed (closed keys cannot be accessed).
+ The absolute (qualified) name of the key.
+
+
+ Retrieves the count of subkeys of the current key.
+ The user does not have read permission for the key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+ A system error occurred, for example the current key has been deleted.
+ The number of subkeys of the current key.
+
+
+ Retrieves the count of values in the key.
+ The user does not have read permission for the key.
+ The being manipulated is closed (closed keys cannot be accessed).
+ The user does not have the necessary registry rights.
+ A system error occurred, for example the current key has been deleted.
+ The number of name/value pairs in the key.
+
+
+ Gets the view that was used to create the registry key.
+ The view that was used to create the registry key.
+
+ -or-
+
+ , if no view was used.
+
+
+ Specifies whether security checks are performed when opening registry keys and accessing their name/value pairs.
+
+
+ The registry key inherits the mode of its parent. Security checks are performed when trying to access subkeys or values, unless the parent was opened with or mode.
+
+
+ Security checks are not performed when accessing subkeys or values. A security check is performed when trying to open the current key, unless the parent was opened with or .
+
+
+ Security checks are not performed when accessing subkeys or values. A security check is performed when trying to open the current key, unless the parent was opened with .
+
+
+ Specifies options to use when creating a registry key.
+
+
+ A non-volatile key. This is the default.
+
+
+ A volatile key. The information is stored in memory and is not preserved when the corresponding registry hive is unloaded.
+
+
+ Specifies the data types to use when storing values in the registry, or identifies the data type of a value in the registry.
+
+
+ Binary data in any form. This value is equivalent to the Windows API registry data type REG_BINARY.
+
+
+ A 32-bit binary number. This value is equivalent to the Windows API registry data type REG_DWORD.
+
+
+ A null-terminated string that contains unexpanded references to environment variables, such as %PATH%, that are expanded when the value is retrieved. This value is equivalent to the Windows API registry data type REG_EXPAND_SZ.
+
+
+ An array of null-terminated strings, terminated by two null characters. This value is equivalent to the Windows API registry data type REG_MULTI_SZ.
+
+
+ No data type.
+
+
+ A 64-bit binary number. This value is equivalent to the Windows API registry data type REG_QWORD.
+
+
+ A null-terminated string. This value is equivalent to the Windows API registry data type REG_SZ.
+
+
+ An unsupported registry data type. For example, the Microsoft Windows API registry data type REG_RESOURCE_LIST is unsupported. Use this value to specify that the method should determine the appropriate registry data type when storing a name/value pair.
+
+
+ Specifies optional behavior when retrieving name/value pairs from a registry key.
+
+
+ A value of type is retrieved without expanding its embedded environment variables.
+
+
+ No optional behavior is specified.
+
+
+ Specifies which registry view to target on a 64-bit operating system.
+
+
+ The default view.
+
+
+ The 32-bit view.
+
+
+ The 64-bit view.
+
+
+ Represents a safe handle to the Windows registry.
+
+
+ Initializes a new instance of the class.
+ An object that represents the pre-existing handle to use.
+
+ to reliably release the handle during the finalization phase; to prevent reliable release.
+
+
+ Represents a set of access rights allowed or denied for a user or group. This class cannot be inherited.
+
+
+ Initializes a new instance of the class, specifying the user or group the rule applies to, the access rights, and whether the specified access rights are allowed or denied.
+ The user or group the rule applies to. Must be of type or a type such as that can be converted to type .
+ A bitwise combination of values indicating the rights allowed or denied.
+ One of the values indicating whether the rights are allowed or denied.
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ is .
+
+ -or-
+
+ is zero.
+
+ is neither of type nor of a type such as that can be converted to type .
+
+
+ Initializes a new instance of the class, specifying the user or group the rule applies to, the access rights, the inheritance flags, the propagation flags, and whether the specified access rights are allowed or denied.
+ The user or group the rule applies to. Must be of type or a type such as that can be converted to type .
+ A bitwise combination of values specifying the rights allowed or denied.
+ A bitwise combination of flags specifying how access rights are inherited from other objects.
+ A bitwise combination of flags specifying how access rights are propagated to other objects.
+ One of the values specifying whether the rights are allowed or denied.
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ is .
+
+ -or-
+
+ is zero.
+
+ is neither of type , nor of a type such as that can be converted to type .
+
+
+ Initializes a new instance of the class, specifying the name of the user or group the rule applies to, the access rights, and whether the specified access rights are allowed or denied.
+ The name of the user or group the rule applies to.
+ A bitwise combination of values indicating the rights allowed or denied.
+ One of the values indicating whether the rights are allowed or denied.
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ is zero.
+
+ is .
+
+ -or-
+
+ is a zero-length string.
+
+ -or-
+
+ is longer than 512 characters.
+
+
+ Initializes a new instance of the class, specifying the name of the user or group the rule applies to, the access rights, the inheritance flags, the propagation flags, and whether the specified access rights are allowed or denied.
+ The name of the user or group the rule applies to.
+ A bitwise combination of values indicating the rights allowed or denied.
+ A bitwise combination of flags specifying how access rights are inherited from other objects.
+ A bitwise combination of flags specifying how access rights are propagated to other objects.
+ One of the values specifying whether the rights are allowed or denied.
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ is zero.
+
+ is .
+
+ -or-
+
+ is a zero-length string.
+
+ -or-
+
+ is longer than 512 characters.
+
+
+ Gets the rights allowed or denied by the access rule.
+ A bitwise combination of values indicating the rights allowed or denied by the access rule.
+
+
+ Represents a set of access rights to be audited for a user or group. This class cannot be inherited.
+
+
+ Initializes a new instance of the class, specifying the user or group to audit, the rights to audit, whether to take inheritance into account, and whether to audit success, failure, or both.
+ The user or group the rule applies to. Must be of type or a type such as that can be converted to type .
+ A bitwise combination of values specifying the kinds of access to audit.
+ A bitwise combination of values specifying whether the audit rule applies to subkeys of the current key.
+ A bitwise combination of values that affect the way an inherited audit rule is propagated to subkeys of the current key.
+ A bitwise combination of values specifying whether to audit success, failure, or both.
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ is .
+
+ -or-
+
+ is zero.
+
+ is neither of type nor of a type such as that can be converted to type .
+
+
+ Initializes a new instance of the class, specifying the name of the user or group to audit, the rights to audit, whether to take inheritance into account, and whether to audit success, failure, or both.
+ The name of the user or group the rule applies to.
+ A bitwise combination of values specifying the kinds of access to audit.
+ A combination of flags that specifies whether the audit rule applies to subkeys of the current key.
+ A combination of flags that affect the way an inherited audit rule is propagated to subkeys of the current key.
+ A bitwise combination of values specifying whether to audit success, failure, or both.
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ -or-
+
+ specifies an invalid value.
+
+ is zero.
+
+ is .
+
+ -or-
+
+ is a zero-length string.
+
+ -or-
+
+ is longer than 512 characters.
+
+
+ Gets the access rights affected by the audit rule.
+ A bitwise combination of values that indicates the rights affected by the audit rule.
+
+
+ Specifies the access control rights that can be applied to registry objects.
+
+
+ The right to change the access rules and audit rules associated with a registry key.
+
+
+ Reserved for system use.
+
+
+ The right to create subkeys of a registry key.
+
+
+ The right to delete a registry key.
+
+
+ The right to list the subkeys of a registry key.
+
+
+ Same as .
+
+
+ The right to exert full control over a registry key, and to modify its access rules and audit rules.
+
+
+ The right to request notification of changes on a registry key.
+
+
+ The right to query the name/value pairs in a registry key.
+
+
+ The right to query the name/value pairs in a registry key, to request notification of changes, to enumerate its subkeys, and to read its access rules and audit rules.
+
+
+ The right to open and copy the access rules and audit rules for a registry key.
+
+
+ The right to create, delete, or set name/value pairs in a registry key.
+
+
+ The right to change the owner of a registry key.
+
+
+ The right to create, delete, and set the name/value pairs in a registry key, to create or delete subkeys, to request notification of changes, to enumerate its subkeys, and to read its access rules and audit rules.
+
+
+ Represents the Windows access control security for a registry key. This class cannot be inherited.
+
+
+ Initializes a new instance of the class with default values.
+
+
+ Creates a new access control rule for the specified user, with the specified access rights, access control, and flags.
+ An that identifies the user or group the rule applies to.
+ A bitwise combination of values specifying the access rights to allow or deny, cast to an integer.
+ A Boolean value specifying whether the rule is inherited.
+ A bitwise combination of values specifying how the rule is inherited by subkeys.
+ A bitwise combination of values that modify the way the rule is inherited by subkeys. Meaningless if the value of is .
+ One of the values specifying whether the rights are allowed or denied.
+
+ , , , or specifies an invalid value.
+
+ is .
+
+ -or-
+
+ is zero.
+
+ is neither of type , nor of a type such as that can be converted to type .
+ A object representing the specified rights for the specified user.
+
+
+ Searches for a matching access control with which the new rule can be merged. If none are found, adds the new rule.
+ The access control rule to add.
+
+ is .
+
+
+ Searches for an audit rule with which the new rule can be merged. If none are found, adds the new rule.
+ The audit rule to add. The user specified by this rule determines the search.
+
+
+ Creates a new audit rule, specifying the user the rule applies to, the access rights to audit, the inheritance and propagation of the rule, and the outcome that triggers the rule.
+ An that identifies the user or group the rule applies to.
+ A bitwise combination of values specifying the access rights to audit, cast to an integer.
+ A Boolean value specifying whether the rule is inherited.
+ A bitwise combination of values specifying how the rule is inherited by subkeys.
+ A bitwise combination of values that modify the way the rule is inherited by subkeys. Meaningless if the value of is .
+ A bitwise combination of values specifying whether to audit successful access, failed access, or both.
+
+ , , , or specifies an invalid value.
+
+ is .
+
+ -or-
+
+ is zero.
+
+ is neither of type , nor of a type such as that can be converted to type .
+ A object representing the specified audit rule for the specified user, with the specified flags. The return type of the method is the base class, , but the return value can be cast safely to the derived class.
+
+
+ Searches for an access control rule with the same user and (allow or deny) as the specified access rule, and with compatible inheritance and propagation flags; if such a rule is found, the rights contained in the specified access rule are removed from it.
+ A that specifies the user and to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.
+
+ is .
+
+ if a compatible rule is found; otherwise .
+
+
+ Searches for all access control rules with the same user and (allow or deny) as the specified rule and, if found, removes them.
+ A that specifies the user and to search for. Any rights, inheritance flags, or propagation flags specified by this rule are ignored.
+
+ is .
+
+
+ Searches for an access control rule that exactly matches the specified rule and, if found, removes it.
+ The to remove.
+
+ is .
+
+
+ Searches for an audit control rule with the same user as the specified rule, and with compatible inheritance and propagation flags; if a compatible rule is found, the rights contained in the specified rule are removed from it.
+ A that specifies the user to search for, and a set of inheritance and propagation flags that a matching rule, if found, must be compatible with. Specifies the rights to remove from the compatible rule, if found.
+
+ is .
+
+ if a compatible rule is found; otherwise, .
+
+
+ Searches for all audit rules with the same user as the specified rule and, if found, removes them.
+ A that specifies the user to search for. Any rights, inheritance flags, or propagation flags specified by this rule are ignored.
+
+ is .
+
+
+ Searches for an audit rule that exactly matches the specified rule and, if found, removes it.
+ The to be removed.
+
+ is .
+
+
+ Removes all access control rules with the same user as the specified rule, regardless of , and then adds the specified rule.
+ The to add. The user specified by this rule determines the rules to remove before this rule is added.
+
+
+ Removes all access control rules with the same user and (allow or deny) as the specified rule, and then adds the specified rule.
+ The to add. The user and of this rule determine the rules to remove before this rule is added.
+
+ is .
+
+
+ Removes all audit rules with the same user as the specified rule, regardless of the value, and then adds the specified rule.
+ The to add. The user specified by this rule determines the rules to remove before this rule is added.
+
+ is .
+
+
+ Gets the enumeration type that the class uses to represent access rights.
+ A object representing the enumeration.
+
+
+ Gets the type that the class uses to represent access rules.
+ A object representing the class.
+
+
+ Gets the type that the class uses to represent audit rules.
+ A object representing the class.
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.xml.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.xml.meta
new file mode 100644
index 00000000..7ad8e651
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/lib/netstandard2.0/Microsoft.Win32.Registry.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 807b04b651eeff547abdd3d9dcfcaadc
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/useSharedDesignerContext.txt b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/useSharedDesignerContext.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/useSharedDesignerContext.txt.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/useSharedDesignerContext.txt.meta
new file mode 100644
index 00000000..7a9a7ebd
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/useSharedDesignerContext.txt.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: e8a58c9b9a0c9764cb6634b17412e977
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/version.txt b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/version.txt
new file mode 100644
index 00000000..0a6d216f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/version.txt
@@ -0,0 +1 @@
+cf258a14b70ad9069470a108f13765e0e5988f51
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/version.txt.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/version.txt.meta
new file mode 100644
index 00000000..32afa0d5
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Microsoft.Win32.Registry.5.0.0/version.txt.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 3e6d11d69195b0c4cabdb4cc613e3dd3
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1.meta
new file mode 100644
index 00000000..47867978
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 976a5aca024ef0946b9b76df93449ffa
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/.signature.p7s
new file mode 100644
index 00000000..988b1e19
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/LICENSE.md b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/LICENSE.md
new file mode 100644
index 00000000..dfaadbe4
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/LICENSE.md
@@ -0,0 +1,20 @@
+The MIT License (MIT)
+
+Copyright (c) 2007 James Newton-King
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/LICENSE.md.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/LICENSE.md.meta
new file mode 100644
index 00000000..a994b22d
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/LICENSE.md.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 0f28887bebb3d214594c89e12daccb8b
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/Newtonsoft.Json.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/Newtonsoft.Json.nuspec
new file mode 100644
index 00000000..23ab73b3
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/Newtonsoft.Json.nuspec
@@ -0,0 +1,39 @@
+
+
+
+ Newtonsoft.Json
+ 13.0.1
+ Json.NET
+ James Newton-King
+ false
+ MIT
+ https://licenses.nuget.org/MIT
+ packageIcon.png
+ https://www.newtonsoft.com/json
+ Json.NET is a popular high-performance JSON framework for .NET
+ Copyright © James Newton-King 2008
+ json
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/Newtonsoft.Json.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/Newtonsoft.Json.nuspec.meta
new file mode 100644
index 00000000..b74b57da
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/Newtonsoft.Json.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: b37607a252bba6443ae66ea79b14f2a5
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib.meta
new file mode 100644
index 00000000..fce636ae
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 384f9e9b0bb1464478270d5be4d7d9cc
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0.meta
new file mode 100644
index 00000000..439602b2
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 68d3d0ad81caa51459aeb85d5713c7a5
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.dll
new file mode 100644
index 00000000..1ffeabe6
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.dll.meta
new file mode 100644
index 00000000..e8a3a166
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: 4b90b64344d42064596e428119ebabae
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.xml b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.xml
new file mode 100644
index 00000000..e3f5ad07
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.xml
@@ -0,0 +1,11280 @@
+
+
+
+ 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 the naming strategy used to resolve how enum text is written.
+
+ The naming strategy used to resolve how enum text is written.
+
+
+
+ Gets or sets a value indicating whether integer values are allowed when serializing and deserializing.
+ The default value is true.
+
+ true if integers are allowed when serializing and 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.
+
+
+
+ Initializes a new instance of the class.
+
+ The naming strategy used to resolve how enum text is written.
+ true if integers are allowed when serializing and deserializing; otherwise, false.
+
+
+
+ Initializes a new instance of the class.
+
+ The of the used to write enum text.
+
+
+
+ Initializes a new instance of the class.
+
+ The of the used to write enum text.
+
+ 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.
+
+
+
+
+ Initializes a new instance of the class.
+
+ The of the used to write enum text.
+
+ 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.
+
+ true if integers are allowed when serializing and deserializing; 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 value 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.
+
+
+
+ Gets or sets a value indicating whether to encode special characters when converting JSON to XML.
+ If true, special characters like ':', '@', '?', '#' and '$' in JSON property names aren't used to specify
+ XML namespaces, attributes or processing directives. Instead special characters are encoded and written
+ as part of the XML element name.
+
+ true if special characters are encoded; 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.
+
+
+
+
+ The default JSON name table implementation.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ Gets a string containing the same characters as the specified range of characters in the given array.
+
+ The character array containing the name to find.
+ The zero-based index into the array specifying the first character of the name.
+ The number of characters in the name.
+ A string containing the same characters as the specified range of characters in the given array.
+
+
+
+ Adds the specified string into name table.
+
+ The string to add.
+ This method is not thread-safe.
+ The resolved string.
+
+
+
+ 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 value 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 .
+
+
+
+ Deserializes the from a JSON string nested in a root element specified by ,
+ writes a Json.NET array attribute for collections, and encodes special characters.
+
+ The JSON string.
+ The name of the root element to append when deserializing.
+
+ A value to indicate whether to write the Json.NET array attribute.
+ This attribute helps preserve arrays when converting the written XML back to JSON.
+
+
+ A value to indicate whether to encode special characters when converting JSON to XML.
+ If true, special characters like ':', '@', '?', '#' and '$' in JSON property names aren't used to specify
+ XML namespaces, attributes or processing directives. Instead special characters are encoded and written
+ as part of the XML element name.
+
+ 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 value 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 .
+
+
+
+ Deserializes the from a JSON string nested in a root element specified by ,
+ writes a Json.NET array attribute for collections, and encodes special characters.
+
+ The JSON string.
+ The name of the root element to append when deserializing.
+
+ A value to indicate whether to write the Json.NET array attribute.
+ This attribute helps preserve arrays when converting the written XML back to JSON.
+
+
+ A value to indicate whether to encode special characters when converting JSON to XML.
+ If true, special characters like ':', '@', '?', '#' and '$' in JSON property names aren't used to specify
+ XML namespaces, attributes or processing directives. Instead special characters are encoded and written
+ as part of the XML element name.
+
+ 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.
+
+
+
+
+ Base class for a table of atomized string objects.
+
+
+
+
+ Gets a string containing the same characters as the specified range of characters in the given array.
+
+ The character array containing the name to find.
+ The zero-based index into the array specifying the first character of the name.
+ The number of characters in the name.
+ A string containing the same characters as the specified range of characters in the given array.
+
+
+
+ Instructs the how to serialize the object.
+
+
+
+
+ Gets or sets the member serialization.
+
+ The member serialization.
+
+
+
+ Gets or sets the missing member handling used when deserializing this object.
+
+ The missing member handling.
+
+
+
+ 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 type used when serializing the property's collection items.
+
+ The collection's items type.
+
+
+
+ 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 .
+ A null value means there is no maximum.
+ The default value is 128.
+
+
+
+
+ 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.
+
+
+
+
+ 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.
+
+
+
+ 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 128.
+
+
+
+
+ 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 read values from.
+ The target object to populate values onto.
+
+
+
+ Populates the JSON values onto the target object.
+
+ The that contains the JSON structure to read 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 128.
+
+
+
+
+ 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 property name table.
+
+
+
+
+ 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 https://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 .
+
+
+
+
+ Specifies how duplicate property names are handled when loading JSON.
+
+
+
+
+ Replace the existing value when there is a duplicate property. The value of the last property in the JSON object will be used.
+
+
+
+
+ Ignore the new value when there is a duplicate property. The value of the first property in the JSON object will be used.
+
+
+
+
+ Throw a when a duplicate property is encountered.
+
+
+
+
+ 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 with the specified name.
+
+ The property name.
+ A with the specified name or null.
+
+
+
+ Gets the with the specified name.
+ The exact name will be searched for first and if no matching property is found then
+ the will be used to match a property.
+
+ The property name.
+ One of the enumeration values that specifies how the strings will be compared.
+ A matched 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 default value is .
+
+ The JSON comment handling.
+
+
+
+ Gets or sets how JSON line info is handled when loading JSON.
+ The default value is .
+
+ The JSON line info handling.
+
+
+
+ Gets or sets how duplicate property names in JSON objects are handled when loading JSON.
+ The default value is .
+
+ The JSON duplicate property name handling.
+
+
+
+ Specifies the settings used when merging JSON.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+
+
+ 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.
+
+
+
+ Gets or sets the comparison used to match property names while merging.
+ 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.
+
+ The comparison used to match property names while merging.
+
+
+
+ Specifies the settings used when selecting JSON.
+
+
+
+
+ Gets or sets a timeout that will be used when executing regular expressions.
+
+ The timeout that will be used when executing regular expressions.
+
+
+
+ Gets or sets a flag that indicates whether an error should be thrown if
+ no tokens are found when evaluating part of the expression.
+
+
+ A flag that indicates whether an error should be thrown if
+ no tokens are found when evaluating part of the expression.
+
+
+
+
+ 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.
+
+
+ ToString() returns a non-JSON string value for tokens with a type of .
+ If you want the JSON for all token types then you should use .
+
+
+ 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 JSONPath expression. Selects the token that matches the object path.
+
+
+ A that contains a JSONPath expression.
+
+ A , or null.
+
+
+
+ Selects a using a JSONPath expression. Selects the token that matches the object path.
+
+
+ A that contains a JSONPath 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 using a JSONPath expression. Selects the token that matches the object path.
+
+
+ A that contains a JSONPath expression.
+
+ The used to select tokens.
+ A .
+
+
+
+ Selects a collection of elements using a JSONPath expression.
+
+
+ A that contains a JSONPath expression.
+
+ An of that contains the selected elements.
+
+
+
+ Selects a collection of elements using a JSONPath expression.
+
+
+ A that contains a JSONPath 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.
+
+
+
+ Selects a collection of elements using a JSONPath expression.
+
+
+ A that contains a JSONPath expression.
+
+ The used to select tokens.
+ 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.
+
+
+
+ Initializes a new instance of the class.
+
+ The token to read from.
+ The initial path of the token. It is prepended to the returned .
+
+
+
+ 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.
+
+
+ ToString() returns a non-JSON string value for tokens with a type of .
+ If you want the JSON for all token types then you should use .
+
+
+ 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 https://www.newtonsoft.com/jsonschema for more details.
+
+
+
+
+
+
+ Determines whether the is valid.
+
+
+ JSON Schema validation has been moved to its own package. See https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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 https://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.
+
+
+
+ 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 the internally resolved for the contract's type.
+ This converter is used as a fallback converter when no other converter is resolved.
+ Setting will always override this 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 the missing member handling used when deserializing this object.
+
+ The missing member handling.
+
+
+
+ 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 a value indicating whether has a value specified.
+
+
+
+
+ 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.
+
+
+
+ A kebab 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.
+
+
+
+ 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.
+
+
+
+ Hash code calculation
+
+
+
+
+
+ Object equality implementation
+
+
+
+
+
+
+ Compare to another NamingStrategy
+
+
+
+
+
+
+ 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 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.
+
+
+
+ Specifies that an output will not be null even if the corresponding type allows it.
+
+
+ Specifies that when a method returns , the parameter will not be null even if the corresponding type allows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+
+ Gets the return value condition.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+
+
+ Initializes a new instance of the class.
+
+
+ The condition parameter value. Code after the method will be considered unreachable by diagnostics if the argument to
+ the associated parameter matches this value.
+
+
+
+ Gets the condition parameter value.
+
+
+
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.xml.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.xml.meta
new file mode 100644
index 00000000..5ef65c5e
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/lib/netstandard2.0/Newtonsoft.Json.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 6c98915581272f749b4928dfb3036a6b
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/packageIcon.png b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/packageIcon.png
new file mode 100644
index 00000000..10c06a5c
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/packageIcon.png differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/packageIcon.png.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/packageIcon.png.meta
new file mode 100644
index 00000000..aa8b2658
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Newtonsoft.Json.13.0.1/packageIcon.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 68b59637829a4ff4b9d02f2b1a8bb344
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1.meta
new file mode 100644
index 00000000..b0e80fa9
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 445edfb817f2f594a82ce84d95e127d5
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/.signature.p7s
new file mode 100644
index 00000000..81b2d62d
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/NuGet.Versioning.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/NuGet.Versioning.nuspec
new file mode 100644
index 00000000..bb8b4df6
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/NuGet.Versioning.nuspec
@@ -0,0 +1,23 @@
+
+
+
+ NuGet.Versioning
+ 6.10.1
+ Microsoft
+ true
+ Apache-2.0
+ https://licenses.nuget.org/Apache-2.0
+ icon.png
+ README.md
+ https://aka.ms/nugetprj
+ NuGet's implementation of Semantic Versioning.
+ © Microsoft Corporation. All rights reserved.
+ semver semantic versioning
+ true
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/NuGet.Versioning.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/NuGet.Versioning.nuspec.meta
new file mode 100644
index 00000000..945af955
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/NuGet.Versioning.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: e37872a898ebce54b8bfbee851cc0674
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/README.md b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/README.md
new file mode 100644
index 00000000..cb4dabe7
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/README.md
@@ -0,0 +1 @@
+NuGet's implementation of Semantic Versioning.
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/README.md.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/README.md.meta
new file mode 100644
index 00000000..4c3148a2
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/README.md.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 536c8d9a8a8e4c24e8bc723c84b73f2b
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/icon.png b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/icon.png
new file mode 100644
index 00000000..ade21ebd
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/icon.png differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/icon.png.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/icon.png.meta
new file mode 100644
index 00000000..05d08c72
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/icon.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: c44da246c76742845add01d70f601597
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib.meta
new file mode 100644
index 00000000..bfa96e1a
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: bcb3586d8e25ccb43bc04bcc615979a6
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0.meta
new file mode 100644
index 00000000..8eb298f0
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 0f3a9a520cee2ea4484f42e0c79732a9
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0/NuGet.Versioning.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0/NuGet.Versioning.dll
new file mode 100644
index 00000000..440a2ce3
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0/NuGet.Versioning.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0/NuGet.Versioning.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0/NuGet.Versioning.dll.meta
new file mode 100644
index 00000000..cc1684fa
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/NuGet.Versioning.6.10.1/lib/netstandard2.0/NuGet.Versioning.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: 039fbd6a65158e64e9b77e1d82ed541d
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0.meta
new file mode 100644
index 00000000..b4b4e33c
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: d7a15495682f12b4aa793f55b4bdf2ba
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/.signature.p7s
new file mode 100644
index 00000000..cbe365f3
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/Icon.png b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/Icon.png
new file mode 100644
index 00000000..a0f1fdbf
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/Icon.png differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/Icon.png.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/Icon.png.meta
new file mode 100644
index 00000000..79027481
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/Icon.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 662f1245c46907545a8ffe5a18870a78
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/LICENSE.TXT b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/LICENSE.TXT
new file mode 100644
index 00000000..984713a4
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/LICENSE.TXT
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+
+Copyright (c) .NET Foundation and Contributors
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/LICENSE.TXT.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/LICENSE.TXT.meta
new file mode 100644
index 00000000..e68cc2bf
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/LICENSE.TXT.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 6dc8516b31b69d641b48c5200be7a58c
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/System.Security.AccessControl.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/System.Security.AccessControl.nuspec
new file mode 100644
index 00000000..532ae482
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/System.Security.AccessControl.nuspec
@@ -0,0 +1,55 @@
+
+
+
+ System.Security.AccessControl
+ 5.0.0
+ System.Security.AccessControl
+ Microsoft
+ microsoft,dotnetframework
+ false
+ MIT
+ https://licenses.nuget.org/MIT
+ Icon.png
+ https://github.com/dotnet/runtime
+ http://go.microsoft.com/fwlink/?LinkID=288859
+ Provides base classes that enable managing access and audit control lists on securable objects.
+
+Commonly Used Types:
+System.Security.AccessControl.AccessRule
+System.Security.AccessControl.AuditRule
+System.Security.AccessControl.ObjectAccessRule
+System.Security.AccessControl.ObjectAuditRule
+System.Security.AccessControl.ObjectSecurity
+
+When using NuGet 3.x this package requires at least version 3.4.
+ https://go.microsoft.com/fwlink/?LinkID=799421
+ © Microsoft Corporation. All rights reserved.
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/System.Security.AccessControl.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/System.Security.AccessControl.nuspec.meta
new file mode 100644
index 00000000..64239292
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/System.Security.AccessControl.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 405e8a3c05754b940892430a0f02de28
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/THIRD-PARTY-NOTICES.TXT b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 00000000..111dcf58
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,884 @@
+.NET Runtime uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Runtime software.
+
+In the event that we accidentally failed to list a required notice, please
+bring it to our attention. Post an issue or email us:
+
+ dotnet@microsoft.com
+
+The attached notices are provided for information only.
+
+License notice for ASP.NET
+-------------------------------
+
+Copyright (c) .NET Foundation. All rights reserved.
+Licensed under the Apache License, Version 2.0.
+
+Available at
+https://github.com/aspnet/AspNetCore/blob/master/LICENSE.txt
+
+License notice for Slicing-by-8
+-------------------------------
+
+http://sourceforge.net/projects/slicing-by-8/
+
+Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+
+This software program is licensed subject to the BSD License, available at
+http://www.opensource.org/licenses/bsd-license.html.
+
+
+License notice for Unicode data
+-------------------------------
+
+https://www.unicode.org/license.html
+
+Copyright © 1991-2020 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+License notice for Zlib
+-----------------------
+
+https://github.com/madler/zlib
+http://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+ version 1.2.11, January 15th, 2017
+
+ Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+ Jean-loup Gailly Mark Adler
+ jloup@gzip.org madler@alumni.caltech.edu
+
+*/
+
+License notice for Mono
+-------------------------------
+
+http://www.mono-project.com/docs/about-mono/
+
+Copyright (c) .NET Foundation Contributors
+
+MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the Software), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for International Organization for Standardization
+-----------------------------------------------------------------
+
+Portions (C) International Organization for Standardization 1986:
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+License notice for Intel
+------------------------
+
+"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xamarin and Novell
+-------------------------------------
+
+Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Copyright (c) 2011 Novell, Inc (http://www.novell.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Third party notice for W3C
+--------------------------
+
+"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
+Status: This license takes effect 13 May, 2015.
+This work is being provided by the copyright holders under the following license.
+License
+By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
+Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
+The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
+Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
+Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
+Disclaimers
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
+
+License notice for Bit Twiddling Hacks
+--------------------------------------
+
+Bit Twiddling Hacks
+
+By Sean Eron Anderson
+seander@cs.stanford.edu
+
+Individually, the code snippets here are in the public domain (unless otherwise
+noted) — feel free to use them however you please. The aggregate collection and
+descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are
+distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
+without even the implied warranty of merchantability or fitness for a particular
+purpose.
+
+License notice for Brotli
+--------------------------------------
+
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+compress_fragment.c:
+Copyright (c) 2011, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+decode_fuzzer.c:
+Copyright (c) 2015 The Chromium Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
+License notice for Json.NET
+-------------------------------
+
+https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md
+
+The MIT License (MIT)
+
+Copyright (c) 2007 James Newton-King
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized base64 encoding / decoding
+--------------------------------------------------------
+
+Copyright (c) 2005-2007, Nick Galbreath
+Copyright (c) 2013-2017, Alfred Klomp
+Copyright (c) 2015-2017, Wojciech Mula
+Copyright (c) 2016-2017, Matthieu Darbois
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+- Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for RFC 3492
+---------------------------
+
+The punycode implementation is based on the sample code in RFC 3492
+
+Copyright (C) The Internet Society (2003). All Rights Reserved.
+
+This document and translations of it may be copied and furnished to
+others, and derivative works that comment on or otherwise explain it
+or assist in its implementation may be prepared, copied, published
+and distributed, in whole or in part, without restriction of any
+kind, provided that the above copyright notice and this paragraph are
+included on all such copies and derivative works. However, this
+document itself may not be modified in any way, such as by removing
+the copyright notice or references to the Internet Society or other
+Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for
+copyrights defined in the Internet Standards process must be
+followed, or as required to translate it into languages other than
+English.
+
+The limited permissions granted above are perpetual and will not be
+revoked by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an
+"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
+TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
+BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
+HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+License notice for Algorithm from Internet Draft document "UUIDs and GUIDs"
+---------------------------------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, or Digital Equipment Corporation be used in advertising
+or publicity pertaining to distribution of the software without
+specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital Equipment
+Corporation makes any representations about the suitability of
+this software for any purpose.
+
+Copyright(C) The Internet Society 1997. All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others,
+and derivative works that comment on or otherwise explain it or assist in
+its implementation may be prepared, copied, published and distributed, in
+whole or in part, without restriction of any kind, provided that the above
+copyright notice and this paragraph are included on all such copies and
+derivative works.However, this document itself may not be modified in any
+way, such as by removing the copyright notice or references to the Internet
+Society or other Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for copyrights
+defined in the Internet Standards process must be followed, or as required
+to translate it into languages other than English.
+
+The limited permissions granted above are perpetual and will not be revoked
+by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an "AS IS"
+basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE
+DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
+ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY
+RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
+PARTICULAR PURPOSE.
+
+License notice for Algorithm from RFC 4122 -
+A Universally Unique IDentifier (UUID) URN Namespace
+----------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+Copyright (c) 1998 Microsoft.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, Microsoft, or Digital Equipment Corporation be used in
+advertising or publicity pertaining to distribution of the software
+without specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital
+Equipment Corporation makes any representations about the
+suitability of this software for any purpose."
+
+License notice for The LLVM Compiler Infrastructure
+---------------------------------------------------
+
+Developed by:
+
+ LLVM Team
+
+ University of Illinois at Urbana-Champaign
+
+ http://llvm.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal with
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+
+ * Neither the names of the LLVM Team, University of Illinois at
+ Urbana-Champaign, nor the names of its contributors may be used to
+ endorse or promote products derived from this Software without specific
+ prior written permission.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+License notice for Bob Jenkins
+------------------------------
+
+By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this
+code any way you wish, private, educational, or commercial. It's free.
+
+License notice for Greg Parker
+------------------------------
+
+Greg Parker gparker@cs.stanford.edu December 2000
+This code is in the public domain and may be copied or modified without
+permission.
+
+License notice for libunwind based code
+----------------------------------------
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for Printing Floating-Point Numbers (Dragon4)
+------------------------------------------------------------
+
+/******************************************************************************
+ Copyright (c) 2014 Ryan Juckett
+ http://www.ryanjuckett.com/
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+
+ 3. This notice may not be removed or altered from any source
+ distribution.
+******************************************************************************/
+
+License notice for Printing Floating-point Numbers (Grisu3)
+-----------------------------------------------------------
+
+Copyright 2012 the V8 project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of Google Inc. nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xxHash
+-------------------------
+
+xxHash Library
+Copyright (c) 2012-2014, Yann Collet
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this
+ list of conditions and the following disclaimer in the documentation and/or
+ other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Berkeley SoftFloat Release 3e
+------------------------------------------------
+
+https://github.com/ucb-bar/berkeley-softfloat-3
+https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt
+
+License for Berkeley SoftFloat Release 3e
+
+John R. Hauser
+2018 January 20
+
+The following applies to the whole of SoftFloat Release 3e as well as to
+each source file individually.
+
+Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+University of California. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions, and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions, and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+ 3. Neither the name of the University nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
+DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xorshift RNGs
+--------------------------------
+
+George Marsaglia
+2003-07-04
+Journal of Statistical Software
+License: http://creativecommons.org/licenses/by/3.0/
+
+https://www.jstatsoft.org/article/view/v008i14
+https://www.jstatsoft.org/index.php/jss/article/view/v008i14/xorshift.pdf
+
+License notice for Xorshift (Wikipedia)
+---------------------------------------
+
+https://en.wikipedia.org/wiki/Xorshift
+License: https://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License
+
+License for fastmod (https://github.com/lemire/fastmod)
+--------------------------------------
+
+ Copyright 2018 Daniel Lemire
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+License notice for The C++ REST SDK
+-----------------------------------
+
+C++ REST SDK
+
+The MIT License (MIT)
+
+Copyright (c) Microsoft Corporation
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for MessagePack-CSharp
+-------------------------------------
+
+MessagePack for C#
+
+MIT License
+
+Copyright (c) 2017 Yoshifumi Kawai
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for lz4net
+-------------------------------------
+
+lz4net
+
+Copyright (c) 2013-2017, Milosz Krajewski
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Nerdbank.Streams
+-----------------------------------
+
+The MIT License (MIT)
+
+Copyright (c) Andrew Arnott
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for RapidJSON
+----------------------------
+
+Tencent is pleased to support the open source community by making RapidJSON available.
+
+Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
+
+Licensed under the MIT License (the "License"); you may not use this file except
+in compliance with the License. You may obtain a copy of the License at
+
+http://opensource.org/licenses/MIT
+
+Unless required by applicable law or agreed to in writing, software distributed
+under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, either express or implied. See the License for the
+specific language governing permissions and limitations under the License.
+
+License notice for DirectX Math Library
+---------------------------------------
+
+https://github.com/microsoft/DirectXMath/blob/master/LICENSE
+
+ The MIT License (MIT)
+
+Copyright (c) 2011-2020 Microsoft Corp
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this
+software and associated documentation files (the "Software"), to deal in the Software
+without restriction, including without limitation the rights to use, copy, modify,
+merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be included in all copies
+or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
+OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for ldap4net
+---------------------------
+
+The MIT License (MIT)
+
+Copyright (c) 2018 Alexander Chermyanin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized sorting code
+------------------------------------------
+
+MIT License
+
+Copyright (c) 2020 Dan Shechter
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/THIRD-PARTY-NOTICES.TXT.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/THIRD-PARTY-NOTICES.TXT.meta
new file mode 100644
index 00000000..c010a473
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/THIRD-PARTY-NOTICES.TXT.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 234c8eb7a59f8794d96e353453ec2f23
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib.meta
new file mode 100644
index 00000000..fc610299
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: b79d270323f33674a919cd6292042705
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0.meta
new file mode 100644
index 00000000..c5a74672
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 9eb0db79a0f4e6b4797056854e3ddc77
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.dll
new file mode 100644
index 00000000..7a836554
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.dll.meta
new file mode 100644
index 00000000..5bbe4eb1
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: 867b0b237dd236949a48639a38688bfd
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.xml b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.xml
new file mode 100644
index 00000000..4c9b25ab
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.xml
@@ -0,0 +1,2047 @@
+
+
+
+ System.Security.AccessControl
+
+
+
+ Specifies the actions that are permitted for securable objects.
+
+
+ Specifies write-only access.
+
+
+ Specifies no access.
+
+
+ Specifies read-only access.
+
+
+ Specifies the type of access control modification to perform. This enumeration is used by methods of the class and its descendents.
+
+
+ Add the specified authorization rule to the access control list (ACL).
+
+
+ Remove authorization rules that contain the same security identifier (SID) and access mask as the specified authorization rule from the ACL.
+
+
+ Remove authorization rules that contain the same SID as the specified authorization rule from the ACL.
+
+
+ Remove authorization rules that exactly match the specified authorization rule from the ACL.
+
+
+ Remove authorization rules that contain the same SID as the specified authorization rule from the ACL, and then add the specified authorization rule to the ACL.
+
+
+ Remove all authorization rules from the ACL, then add the specified authorization rule to the ACL.
+
+
+ Specifies which sections of a security descriptor to save or load.
+
+
+ The discretionary access control list (DACL).
+
+
+ The entire security descriptor.
+
+
+ The system access control list (SACL).
+
+
+ The primary group.
+
+
+ No sections.
+
+
+ The owner.
+
+
+ Specifies whether an object is used to allow or deny access. These values are not flags, and they cannot be combined.
+
+
+ The object is used to allow access to a secured object.
+
+
+ The object is used to deny access to a secured object.
+
+
+ Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An object also contains information about the how the rule is inherited by child objects and how that inheritance is propagated.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which the access rule applies. This parameter must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+
+ if this rule is inherited from a parent container.
+ The inheritance properties of the access rule.
+ Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ The valid access control type.
+ The value of the parameter cannot be cast as a , or the parameter contains an invalid value.
+ The value of the parameter is zero, or the or parameters contain unrecognized flag values.
+
+
+ Gets the value associated with this object.
+ The value associated with this object.
+
+
+ Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An AccessRule`1 object also contains information about the how the rule is inherited by child objects and how that inheritance is propagated.
+ The access rights type for the access rule.
+
+
+ Initializes a new instance of the AccessRule'1 class by using the specified values.
+ The identity to which the access rule applies.
+ The rights of the access rule.
+ The valid access control type.
+
+
+ Initializes a new instance of the AccessRule'1 class by using the specified values.
+ The identity to which the access rule applies.
+ The rights of the access rule.
+ The inheritance properties of the access rule.
+ Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ The valid access control type.
+
+
+ Initializes a new instance of the AccessRule'1 class by using the specified values.
+ The identity to which the access rule applies.
+ The rights of the access rule.
+ The valid access control type.
+
+
+ Initializes a new instance of the AccessRule'1 class by using the specified values.
+ The identity to which the access rule applies.
+ The rights of the access rule.
+ The inheritance properties of the access rule.
+ Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ The valid access control type.
+
+
+ Gets the rights of the current instance.
+ The rights, cast as type <T>, of the current instance.
+
+
+ Provides the ability to iterate through the access control entries (ACEs) in an access control list (ACL).
+
+
+ Advances the enumerator to the next element of the collection.
+ The collection was modified after the enumerator was created.
+
+ if the enumerator was successfully advanced to the next element; if the enumerator has passed the end of the collection.
+
+
+ Sets the enumerator to its initial position, which is before the first element in the collection.
+ The collection was modified after the enumerator was created.
+
+
+ Gets the current element in the collection. This property gets the type-friendly version of the object.
+ The current element in the collection.
+
+
+ Gets the current element in the collection.
+ The collection was modified after the enumerator was created.
+ The current element in the collection.
+
+
+ Specifies the inheritance and auditing behavior of an access control entry (ACE).
+
+
+ All access attempts are audited.
+
+
+ The access mask is propagated to child container objects.
+
+
+ Failed access attempts are audited.
+
+
+ A logical of , , , and .
+
+
+ An ACE is inherited from a parent container rather than being explicitly set for an object.
+
+
+ The access mask is propagated only to child objects. This includes both container and leaf child objects.
+
+
+ No ACE flags are set.
+
+
+ The access checks do not apply to the object; they only apply to its children.
+
+
+ The access mask is propagated onto child leaf objects.
+
+
+ Successful access attempts are audited.
+
+
+ Specifies the function of an access control entry (ACE).
+
+
+ Allow access.
+
+
+ Deny access.
+
+
+ Cause a system alarm.
+
+
+ Cause a system audit.
+
+
+ Defines the available access control entry (ACE) types.
+
+
+ Allows access to an object for a specific trustee identified by an object.
+
+
+ Allows access to an object for a specific trustee identified by an object. This ACE type may contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted.
+
+
+ Allows access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type may contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted.
+
+
+ Defined but never used. Included here for completeness.
+
+
+ Allows access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects.
+
+
+ Denies access to an object for a specific trustee identified by an object.
+
+
+ Denies access to an object for a specific trustee identified by an object. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted.
+
+
+ Denies access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted.
+
+
+ Denies access to an object, property set, or property. The ACE contains a set of access rights, a GUID that identifies the type of object, and an object that identifies the trustee to whom the system will grant access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects.
+
+
+ Tracks the maximum defined ACE type in the enumeration.
+
+
+ Reserved for future use.
+
+
+ Reserved for future use.
+
+
+ Reserved for future use.
+
+
+ Reserved for future use.
+
+
+ Causes an audit message to be logged when a specified trustee attempts to gain access to an object. The trustee is identified by an object.
+
+
+ Causes an audit message to be logged when a specified trustee attempts to gain access to an object. The trustee is identified by an object. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted.
+
+
+ Causes an audit message to be logged when a specified trustee attempts to gain access to an object or subobjects such as property sets or properties. The ACE contains a set of access rights, a GUID that identifies the type of object or subobject, and an object that identifies the trustee for whom the system will audit access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects. This ACE type can contain optional callback data. The callback data is a resource manager-specific BLOB that is not interpreted.
+
+
+ Causes an audit message to be logged when a specified trustee attempts to gain access to an object or subobjects such as property sets or properties. The ACE contains a set of access rights, a GUID that identifies the type of object or subobject, and an object that identifies the trustee for whom the system will audit access. The ACE also contains a GUID and a set of flags that control inheritance of the ACE by child objects.
+
+
+ Specifies the conditions for auditing attempts to access a securable object.
+
+
+ Failed access attempts are to be audited.
+
+
+ No access attempts are to be audited.
+
+
+ Successful access attempts are to be audited.
+
+
+ Represents a combination of a user's identity and an access mask. An object also contains information about how the rule is inherited by child objects, how that inheritance is propagated, and for what conditions it is audited.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which the audit rule applies. It must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+
+ to inherit this rule from a parent container.
+ The inheritance properties of the audit rule.
+ Whether inherited audit rules are automatically propagated. The propagation flags are ignored if is set to .
+ The conditions for which the rule is audited.
+ The value of the parameter cannot be cast as a , or the parameter contains an invalid value.
+ The value of the parameter is zero, or the or parameters contain unrecognized flag values.
+
+
+ Gets the audit flags for this audit rule.
+ A bitwise combination of the enumeration values. This combination specifies the audit conditions for this audit rule.
+
+
+ Represents a combination of a user's identity and an access mask.
+ The type of the audit rule.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which this audit rule applies.
+ The rights of the audit rule.
+ The conditions for which the rule is audited.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which the audit rule applies.
+ The rights of the audit rule.
+ The inheritance properties of the audit rule.
+ Whether inherited audit rules are automatically propagated.
+ The conditions for which the rule is audited.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which the audit rule applies.
+ The rights of the audit rule.
+ The properties of the audit rule.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which the audit rule applies.
+ The rights of the audit rule.
+ The inheritance properties of the audit rule.
+ Whether inherited audit rules are automatically propagated.
+ The conditions for which the rule is audited.
+
+
+ Gets the rights of the audit rule.
+ The rights of the audit rule.
+
+
+ Determines access to securable objects. The derived classes and offer specializations for access and audit functionality.
+
+
+ Initializes a new instance of the class by using the specified values.
+ The identity to which the access rule applies. This parameter must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+
+ to inherit this rule from a parent container.
+ The inheritance properties of the access rule.
+ Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ The value of the parameter cannot be cast as a .
+ The value of the parameter is zero, or the or parameters contain unrecognized flag values.
+
+
+ Gets the access mask for this rule.
+ The access mask for this rule.
+
+
+ Gets the to which this rule applies.
+ The to which this rule applies.
+
+
+ Gets the value of flags that determine how this rule is inherited by child objects.
+ A bitwise combination of the enumeration values.
+
+
+ Gets a value indicating whether this rule is explicitly set or is inherited from a parent container object.
+
+ if this rule is not explicitly set but is instead inherited from a parent container.
+
+
+ Gets the value of the propagation flags, which determine how inheritance of this rule is propagated to child objects. This property is significant only when the value of the enumeration is not .
+ A bitwise combination of the enumeration values.
+
+
+ Represents a collection of objects.
+
+
+ Initializes a new instance of the class.
+
+
+ Adds an object to the collection.
+ The object to add to the collection.
+
+
+ Copies the contents of the collection to an array.
+ An array to which to copy the contents of the collection.
+ The zero-based index from which to begin copying.
+
+
+ Gets the object at the specified index of the collection.
+ The zero-based index of the object to get.
+ The object at the specified index.
+
+
+ Represents an access control entry (ACE).
+
+
+ Initializes a new instance of the class.
+ Flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new access control entry (ACE).
+ The use of the new ACE.
+ The access mask for the ACE.
+ The associated with the new ACE.
+
+ to specify that the new ACE is a callback type ACE.
+ Opaque data associated with the new ACE. Opaque data is allowed only for callback ACE types. The length of this array must not be greater than the return value of the method.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the object is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into the array.
+
+
+ Gets the maximum allowed length of an opaque data BLOB for callback access control entries (ACEs).
+
+ to specify that the object is a callback ACE type.
+ The allowed length of an opaque data BLOB.
+
+
+ Gets the length, in bytes, of the binary representation of the current object. Use this length with the method before marshaling the ACL into a binary array.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Represents an access control list (ACL) and is the base class for the and classes.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+
+ Removes all access control entries (ACEs) contained by this object that are associated with the specified object.
+ The object to check for.
+
+
+ Removes all inherited access control entries (ACEs) from this object.
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the access control list (ACL) into a binary array by using the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets the number of access control entries (ACEs) in the current object.
+ The number of ACEs in the current object.
+
+
+ Gets a Boolean value that specifies whether the access control entries (ACEs) in the current object are in canonical order.
+
+ if the ACEs in the current object are in canonical order; otherwise, .
+
+
+ Sets whether the object is a container.
+
+ if the current object is a container.
+
+
+ Sets whether the current object is a directory object access control list (ACL).
+
+ if the current object is a directory object ACL.
+
+
+ Gets or sets the at the specified index.
+ The zero-based index of the to get or set.
+ The at the specified index.
+
+
+ Gets the revision level of the .
+ A byte value that specifies the revision level of the .
+
+
+ Controls access to objects without direct manipulation of access control lists (ACLs). This class is the abstract base class for the class.
+
+
+ Initializes a new instance of the class.
+
+ if the new object is a container object.
+
+
+ Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this object.
+ The access rule to add.
+
+
+ Adds the specified audit rule to the System Access Control List (SACL) associated with this object.
+ The audit rule to add.
+
+
+ Gets a collection of the access rules associated with the specified security identifier.
+
+ to include access rules explicitly set for the object.
+
+ to include inherited access rules.
+ Specifies whether the security identifier for which to retrieve access rules is of type or type . The value of this parameter must be a type that can be translated to the type.
+ The collection of access rules associated with the specified object.
+
+
+ Gets a collection of the audit rules associated with the specified security identifier.
+
+ to include audit rules explicitly set for the object.
+
+ to include inherited audit rules.
+ The security identifier for which to retrieve audit rules. This must be an object that can be cast as a object.
+ The collection of audit rules associated with the specified object.
+
+
+ Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object.
+ The modification to apply to the DACL.
+ The access rule to modify.
+
+ if the DACL is successfully modified; otherwise, .
+
+ if the DACL is successfully modified; otherwise, .
+
+
+ Applies the specified modification to the System Access Control List (SACL) associated with this object.
+ The modification to apply to the SACL.
+ The audit rule to modify.
+
+ if the SACL is successfully modified; otherwise, .
+
+ if the SACL is successfully modified; otherwise, .
+
+
+ Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this object.
+ The access rule to remove.
+
+ if the access rule was successfully removed; otherwise, .
+
+
+ Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this object.
+ The access rule to remove.
+
+
+ Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this object.
+ The access rule to remove.
+
+
+ Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this object.
+ The audit rule to remove.
+
+ if the audit rule was successfully removed; otherwise, .
+
+
+ Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this object.
+ The audit rule to remove.
+
+
+ Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this object.
+ The audit rule to remove.
+
+
+ Removes all access rules in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule.
+ The access rule to reset.
+
+
+ Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this object and then adds the specified access rule.
+ The access rule to set.
+
+
+ Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this object and then adds the specified audit rule.
+ The audit rule to set.
+
+
+ Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL).
+
+
+ Initializes a new instance of the class from the specified array of byte values.
+
+ if the new security descriptor is associated with a container object.
+
+ if the new security descriptor is associated with a directory object.
+ The array of byte values from which to create the new object.
+ The offset in the array at which to begin copying.
+
+
+ Initializes a new instance of the class from the specified information.
+
+ if the new security descriptor is associated with a container object.
+
+ if the new security descriptor is associated with a directory object.
+ Flags that specify behavior of the new object.
+ The owner for the new object.
+ The primary group for the new object.
+ The System Access Control List (SACL) for the new object.
+ The Discretionary Access Control List (DACL) for the new object.
+
+
+ Initializes a new instance of the class from the specified object.
+
+ if the new security descriptor is associated with a container object.
+
+ if the new security descriptor is associated with a directory object.
+ The object from which to create the new object.
+
+
+ Initializes a new instance of the class from the specified Security Descriptor Definition Language (SDDL) string.
+
+ if the new security descriptor is associated with a container object.
+
+ if the new security descriptor is associated with a directory object.
+ The SDDL string from which to create the new object.
+
+
+ Sets the property for this instance and sets the flag.
+ The revision level of the new object.
+ The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint.
+
+
+ Sets the property for this instance and sets the flag.
+ The revision level of the new object.
+ The number of Access Control Entries (ACEs) this object can contain. This number should only be used as a hint.
+
+
+ Removes all access rules for the specified security identifier from the Discretionary Access Control List (DACL) associated with this object.
+ The security identifier for which to remove access rules.
+
+
+ Removes all audit rules for the specified security identifier from the System Access Control List (SACL) associated with this object.
+ The security identifier for which to remove audit rules.
+
+
+ Sets the inheritance protection for the Discretionary Access Control List (DACL) associated with this object. DACLs that are protected do not inherit access rules from parent containers.
+
+ to protect the DACL from inheritance.
+
+ to keep inherited access rules in the DACL; to remove inherited access rules from the DACL.
+
+
+ Sets the inheritance protection for the System Access Control List (SACL) associated with this object. SACLs that are protected do not inherit audit rules from parent containers.
+
+ to protect the SACL from inheritance.
+
+ to keep inherited audit rules in the SACL; to remove inherited audit rules from the SACL.
+
+
+ Gets values that specify behavior of the object.
+ One or more values of the enumeration combined with a logical OR operation.
+
+
+ Gets or sets the discretionary access control list (DACL) for this object. The DACL contains access rules.
+ The DACL for this object.
+
+
+ Gets or sets the primary group for this object.
+ The primary group for this object.
+
+
+ Gets a Boolean value that specifies whether the object associated with this object is a container object.
+
+ if the object associated with this object is a container object; otherwise, .
+
+
+ Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this object is in canonical order.
+
+ if the DACL associated with this object is in canonical order; otherwise, .
+
+
+ Gets a Boolean value that specifies whether the object associated with this object is a directory object.
+
+ if the object associated with this object is a directory object; otherwise, .
+
+
+ Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this object is in canonical order.
+
+ if the SACL associated with this object is in canonical order; otherwise, .
+
+
+ Gets or sets the owner of the object associated with this object.
+ The owner of the object associated with this object.
+
+
+ Gets or sets the System Access Control List (SACL) for this object. The SACL contains audit rules.
+ The SACL for this object.
+
+
+ Represents a compound Access Control Entry (ACE).
+
+
+ Initializes a new instance of the class.
+ Contains flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE).
+ The access mask for the ACE.
+ A value from the enumeration.
+ The associated with the new ACE.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets or sets the type of this object.
+ The type of this object.
+
+
+ Specifies the type of a object.
+
+
+ The object is used for impersonation.
+
+
+ These flags affect the security descriptor behavior.
+
+
+ Specifies that the Discretionary Access Control List (DACL) has been automatically inherited from the parent. Set by resource managers only.
+
+
+ Ignored.
+
+
+ Specifies that the DACL was obtained by a defaulting mechanism. Set by resource managers only.
+
+
+ Specifies that the DACL is not . Set by resource managers or users.
+
+
+ Specifies that the resource manager prevents auto-inheritance. Set by resource managers or users.
+
+
+ Ignored.
+
+
+ Specifies that the group was obtained by a defaulting mechanism. Set by resource managers only; should not be set by callers.
+
+
+ No control flags.
+
+
+ Specifies that the owner was obtained by a defaulting mechanism. Set by resource managers only; should not be set by callers.
+
+
+ Specifies that the contents of the Reserved field are valid.
+
+
+ Specifies that the security descriptor binary representation is in the self-relative format. This flag is always set.
+
+
+ Ignored.
+
+
+ Specifies that the System Access Control List (SACL) has been automatically inherited from the parent. Set by resource managers only.
+
+
+ Ignored.
+
+
+ Specifies that the SACL was obtained by a defaulting mechanism. Set by resource managers only.
+
+
+ Specifies that the SACL is not . Set by resource managers or users.
+
+
+ Specifies that the resource manager prevents auto-inheritance. Set by resource managers or users.
+
+
+ Represents an Access Control Entry (ACE) that is not defined by one of the members of the enumeration.
+
+
+ Returns the maximum allowed length of an opaque data blob for this object.
+
+
+ Initializes a new instance of the class.
+ Type of the new Access Control Entry (ACE). This value must be greater than .
+ Flags that specify information about the inheritance, inheritance propagation, and auditing conditions for the new ACE.
+ An array of byte values that contains the data for the new ACE. This value can be . The length of this array must not be greater than the value of the field, and must be a multiple of four.
+ The value of the parameter is not greater than or the length of the array is either greater than the value of the field or not a multiple of four.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Returns the opaque data associated with this object.
+ An array of byte values that represents the opaque data associated with this object.
+
+
+ Sets the opaque callback data associated with this object.
+ An array of byte values that represents the opaque callback data for this object.
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets the length of the opaque data associated with this object.
+ The length of the opaque callback data.
+
+
+ Represents a Discretionary Access Control List (DACL).
+
+
+ Initializes a new instance of the class with the specified values.
+
+ if the new object is a container.
+
+ if the new object is a directory object Access Control List (ACL).
+ The revision level of the new object.
+ The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint.
+
+
+ Initializes a new instance of the class with the specified values.
+
+ if the new object is a container.
+
+ if the new object is a directory object Access Control List (ACL).
+ The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint.
+
+
+ Initializes a new instance of the class with the specified values from the specified object.
+
+ if the new object is a container.
+
+ if the new object is a directory object Access Control List (ACL).
+ The underlying object for the new object. Specify to create an empty ACL.
+
+
+ Adds an Access Control Entry (ACE) with the specified settings to the current object.
+ The type of access control (allow or deny) to add.
+ The for which to add an ACE.
+ The access rule for the new ACE.
+ Flags that specify the inheritance properties of the new ACE.
+ Flags that specify the inheritance propagation properties for the new ACE.
+
+
+ Adds an Access Control Entry (ACE) with the specified settings to the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new ACE.
+ The type of access control (allow or deny) to add.
+ The for which to add an ACE.
+ The access rule for the new ACE.
+ Flags that specify the inheritance properties of the new ACE.
+ Flags that specify the inheritance propagation properties for the new ACE.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the new ACE applies.
+ The identity of the class of child objects which can inherit the new ACE.
+
+
+ Adds an Access Control Entry (ACE) with the specified settings to the current object.
+ The type of access control (allow or deny) to add.
+ The for which to add an ACE.
+ The for the new access.
+
+
+ Removes the specified access control rule from the current object.
+ The type of access control (allow or deny) to remove.
+ The for which to remove an access control rule.
+ The access mask for the rule to be removed.
+ Flags that specify the inheritance properties of the rule to be removed.
+ Flags that specify the inheritance propagation properties for the rule to be removed.
+
+ if this method successfully removes the specified access; otherwise, .
+
+
+ Removes the specified access control rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.
+ The type of access control (allow or deny) to remove.
+ The for which to remove an access control rule.
+ The access mask for the access control rule to be removed.
+ Flags that specify the inheritance properties of the access control rule to be removed.
+ Flags that specify the inheritance propagation properties for the access control rule to be removed.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the removed access control rule applies.
+ The identity of the class of child objects which can inherit the removed access control rule.
+
+ if this method successfully removes the specified access; otherwise, .
+
+
+ Removes the specified access control rule from the current object.
+ The type of access control (allow or deny) to remove.
+ The for which to remove an access control rule.
+ The for which to remove access.
+ Returns .
+
+
+ Removes the specified Access Control Entry (ACE) from the current object.
+ The type of access control (allow or deny) to remove.
+ The for which to remove an ACE.
+ The access mask for the ACE to be removed.
+ Flags that specify the inheritance properties of the ACE to be removed.
+ Flags that specify the inheritance propagation properties for the ACE to be removed.
+
+
+ Removes the specified Access Control Entry (ACE) from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the ACE to be removed.
+ The type of access control (allow or deny) to remove.
+ The for which to remove an ACE.
+ The access mask for the ACE to be removed.
+ Flags that specify the inheritance properties of the ACE to be removed.
+ Flags that specify the inheritance propagation properties for the ACE to be removed.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the removed ACE applies.
+ The identity of the class of child objects which can inherit the removed ACE.
+
+
+ Removes the specified Access Control Entry (ACE) from the current object.
+ The type of access control (allow or deny) to remove.
+ The for which to remove an ACE.
+ The for which to remove access.
+
+
+ Sets the specified access control for the specified object.
+ The type of access control (allow or deny) to set.
+ The for which to set an ACE.
+ The access rule for the new ACE.
+ Flags that specify the inheritance properties of the new ACE.
+ Flags that specify the inheritance propagation properties for the new ACE.
+
+
+ Sets the specified access control for the specified object.
+ The type of access control (allow or deny) to set.
+ The for which to set an ACE.
+ The access rule for the new ACE.
+ Flags that specify the inheritance properties of the new ACE.
+ Flags that specify the inheritance propagation properties for the new ACE.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the new ACE applies.
+ The identity of the class of child objects which can inherit the new ACE.
+
+
+ Sets the specified access control for the specified object.
+ The type of access control (allow or deny) to set.
+ The for which to set an ACE.
+ The for which to set access.
+
+
+ Represents an Access Control Entry (ACE), and is the base class for all other ACE classes.
+
+
+ Creates a deep copy of this Access Control Entry (ACE).
+ The object that this method creates.
+
+
+ Creates a object from the specified binary data.
+ The binary data from which to create the new object.
+ The offset at which to begin unmarshaling.
+ The object this method creates.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare to the current object.
+
+ if the specified object is equal to the current object; otherwise, .
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Serves as a hash function for the class. The method is suitable for use in hashing algorithms and data structures like a hash table.
+ A hash code for the current object.
+
+
+ Determines whether the specified objects are considered equal.
+ The first object to compare.
+ The second to compare.
+
+ if the two objects are equal; otherwise, .
+
+
+ Determines whether the specified objects are considered unequal.
+ The first object to compare.
+ The second to compare.
+
+ if the two objects are unequal; otherwise, .
+
+
+ Gets or sets the associated with this object.
+ The associated with this object.
+
+
+ Gets the type of this Access Control Entry (ACE).
+ The type of this ACE.
+
+
+ Gets the audit information associated with this Access Control Entry (ACE).
+ The audit information associated with this Access Control Entry (ACE).
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets flags that specify the inheritance properties of this Access Control Entry (ACE).
+ Flags that specify the inheritance properties of this ACE.
+
+
+ Gets a Boolean value that specifies whether this Access Control Entry (ACE) is inherited or is set explicitly.
+
+ if this ACE is inherited; otherwise, .
+
+
+ Gets flags that specify the inheritance propagation properties of this Access Control Entry (ACE).
+ Flags that specify the inheritance propagation properties of this ACE.
+
+
+ Represents an access control list (ACL) and is the base class for the , , , and classes.
+
+
+ The revision level of the current . This value is returned by the property for Access Control Lists (ACLs) that are not associated with Directory Services objects.
+
+
+ The revision level of the current . This value is returned by the property for Access Control Lists (ACLs) that are associated with Directory Services objects.
+
+
+ The maximum allowed binary length of a object.
+
+
+ Initializes a new instance of the class.
+
+
+ Copies each of the current into the specified array.
+ The array into which copies of the objects contained by the current are placed.
+ The zero-based index of where the copying begins.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Retrieves an object that you can use to iterate through the access control entries (ACEs) in an access control list (ACL).
+ An enumerator object.
+
+
+ Copies each of the current into the specified array.
+ The array into which copies of the objects contained by the current are placed.
+ The zero-based index of where the copying begins.
+
+
+ Returns a new instance of the class cast as an instance of the interface.
+ A new object, cast as an instance of the interface.
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets the number of access control entries (ACEs) in the current object.
+ The number of ACEs in the current object.
+
+
+ This property is always set to . It is implemented only because it is required for the implementation of the interface.
+ Always .
+
+
+ Gets or sets the at the specified index.
+ The zero-based index of the to get or set.
+ The at the specified index.
+
+
+ Gets the revision level of the .
+ A byte value that specifies the revision level of the .
+
+
+ This property always returns . It is implemented only because it is required for the implementation of the interface.
+ Always returns .
+
+
+ Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL).
+
+
+ Returns an array of byte values that represents the information contained in this object.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor that this object represents.
+ Specifies which sections (access rules, audit rules, primary group, owner) of the security descriptor to get.
+ The SDDL representation of the specified sections of the security descriptor associated with this object.
+
+
+ Returns a boolean value that specifies whether the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format.
+
+ if the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format; otherwise, .
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets values that specify behavior of the object.
+ One or more values of the enumeration combined with a logical OR operation.
+
+
+ Gets or sets the primary group for this object.
+ The primary group for this object.
+
+
+ Gets or sets the owner of the object associated with this object.
+ The owner of the object associated with this object.
+
+
+ Gets the revision level of the object.
+ A byte value that specifies the revision level of the .
+
+
+ Inheritance flags specify the semantics of inheritance for access control entries (ACEs).
+
+
+ The ACE is inherited by child container objects.
+
+
+ The ACE is not inherited by child objects.
+
+
+ The ACE is inherited by child leaf objects.
+
+
+ Encapsulates all Access Control Entry (ACE) types currently defined by Microsoft Corporation. All objects contain a 32-bit access mask and a object.
+
+
+ Gets or sets the access mask for this object.
+ The access mask for this object.
+
+
+ Gets or sets the object associated with this object.
+ The object associated with this object.
+
+
+ Provides the ability to control access to native objects without direct manipulation of Access Control Lists (ACLs). Native object types are defined by the enumeration.
+
+
+ Initializes a new instance of the class with the specified values.
+
+ if the new object is a container object.
+ The type of securable object with which the new object is associated.
+
+
+ Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+
+ if the new object is a container object.
+ The type of securable object with which the new object is associated.
+ The handle of the securable object with which the new object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object.
+
+
+ Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+
+ if the new object is a container object.
+ The type of securable object with which the new object is associated.
+ The handle of the securable object with which the new object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object.
+ A delegate implemented by integrators that provides custom exceptions.
+ An object that contains contextual information about the source or destination of the exception.
+
+
+ Initializes a new instance of the class by using the specified values.
+
+ if the new object is a container object.
+ The type of securable object with which the new object is associated.
+ A delegate implemented by integrators that provides custom exceptions.
+ An object that contains contextual information about the source or destination of the exception.
+
+
+ Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+
+ if the new object is a container object.
+ The type of securable object with which the new object is associated.
+ The name of the securable object with which the new object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object.
+
+
+ Initializes a new instance of the class with the specified values. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+
+ if the new object is a container object.
+ The type of securable object with which the new object is associated.
+ The name of the securable object with which the new object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to include in this object.
+ A delegate implemented by integrators that provides custom exceptions.
+ An object that contains contextual information about the source or destination of the exception.
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend.persist that the values of the parameters passed to the constructor and persist methods be identical.
+ The handle of the securable object with which this object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+ The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found.
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+ The handle of the securable object with which this object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+ An object that contains contextual information about the source or destination of the exception.
+ The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found.
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+ The name of the securable object with which this object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+ The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found.
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+ The name of the securable object with which this object is associated.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+ An object that contains contextual information about the source or destination of the exception.
+ The securable object with which this object is associated is either a directory or a file, and that directory or file could not be found.
+
+
+ Provides a way for integrators to map numeric error codes to specific exceptions that they create.
+ The numeric error code.
+ The name of the securable object with which the object is associated.
+ The handle of the securable object with which the object is associated.
+ An object that contains contextual information about the source or destination of the exception.
+ The this delegate creates.
+
+
+ Represents a combination of a user's identity, an access mask, and an access control type (allow or deny). An object also contains information about the type of object to which the rule applies, the type of child object that can inherit the rule, how the rule is inherited by child objects, and how that inheritance is propagated.
+
+
+ Initializes a new instance of the class with the specified values.
+ The identity to which the access rule applies. It must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+
+ if this rule is inherited from a parent container.
+ Specifies the inheritance properties of the access rule.
+ Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ The type of object to which the rule applies.
+ The type of child object that can inherit the rule.
+ Specifies whether this rule allows or denies access.
+ The value of the parameter cannot be cast as a , or the parameter contains an invalid value.
+ The value of the parameter is 0, or the or parameters contain unrecognized flag values.
+
+
+ Gets the type of child object that can inherit the object.
+ The type of child object that can inherit the object.
+
+
+ Gets flags that specify if the and properties of the object contain valid values.
+
+ specifies that the property contains a valid value. specifies that the property contains a valid value. These values can be combined with a logical OR.
+
+
+ Gets the type of object to which the applies.
+ The type of object to which the applies.
+
+
+ Controls access to Directory Services objects. This class represents an Access Control Entry (ACE) associated with a directory object.
+
+
+ Initiates a new instance of the class.
+ The inheritance, inheritance propagation, and auditing conditions for the new Access Control Entry (ACE).
+ The use of the new ACE.
+ The access mask for the ACE.
+ The associated with the new ACE.
+ Whether the and parameters contain valid object GUIDs.
+ A GUID that identifies the object type to which the new ACE applies.
+ A GUID that identifies the object type that can inherit the new ACE.
+
+ if the new ACE is a callback type ACE.
+ Opaque data associated with the new ACE. This is allowed only for callback ACE types. The length of this array must not be greater than the return value of the method.
+ The qualifier parameter contains an invalid value or the length of the value of the opaque parameter is greater than the return value of the method.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Returns the maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs).
+ True if the is a callback ACE type.
+ The maximum allowed length, in bytes, of an opaque data BLOB for callback Access Control Entries (ACEs).
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets or sets the GUID of the object type that can inherit the Access Control Entry (ACE) that this object represents.
+ The GUID of the object type that can inherit the Access Control Entry (ACE) that this object represents.
+
+
+ Gets or sets flags that specify whether the and properties contain values that identify valid object types.
+ On or more members of the enumeration combined with a logical OR operation.
+
+
+ Gets or sets the GUID of the object type associated with this object.
+ The GUID of the object type associated with this object.
+
+
+ Specifies the presence of object types for Access Control Entries (ACEs).
+
+
+ The type of object that can inherit the ACE.
+
+
+ No object types are present.
+
+
+ The type of object that is associated with the ACE is present.
+
+
+ Represents a combination of a user's identity, an access mask, and audit conditions. An object also contains information about the type of object to which the rule applies, the type of child object that can inherit the rule, how the rule is inherited by child objects, and how that inheritance is propagated.
+
+
+ Initializes a new instance of the class.
+ The identity to which the access rule applies. It must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+
+ if this rule is inherited from a parent container.
+ Specifies the inheritance properties of the access rule.
+ Whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ The type of object to which the rule applies.
+ The type of child object that can inherit the rule.
+ The audit conditions.
+ The value of the parameter cannot be cast as a , or the parameter contains an invalid value.
+ The value of the parameter is 0, or the or parameters contain unrecognized flag values.
+
+
+ Gets the type of child object that can inherit the object.
+ The type of child object that can inherit the object.
+
+
+
+ and properties of the object contain valid values.
+
+ specifies that the property contains a valid value. specifies that the property contains a valid value. These values can be combined with a logical OR.
+
+
+ Gets the type of object to which the applies.
+ The type of object to which the applies.
+
+
+ Provides the ability to control access to objects without direct manipulation of Access Control Lists (ACLs). This class is the abstract base class for the and classes.
+
+
+ Initializes a new instance of the class.
+
+
+ Initializes a new instance of the class.
+
+ if the new object is a container object.
+ True if the new object is a directory object.
+
+
+ Initializes a new instance of the class.
+ The of the new instance.
+
+
+ Initializes a new instance of the class with the specified values.
+ The identity to which the access rule applies. It must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+ true if this rule is inherited from a parent container.
+ Specifies the inheritance properties of the access rule.
+ Specifies whether inherited access rules are automatically propagated. The propagation flags are ignored if is set to .
+ Specifies the valid access control type.
+ The object that this method creates.
+
+
+ Initializes a new instance of the class with the specified values.
+ The identity to which the audit rule applies. It must be an object that can be cast as a .
+ The access mask of this rule. The access mask is a 32-bit collection of anonymous bits, the meaning of which is defined by the individual integrators.
+
+ if this rule is inherited from a parent container.
+ Specifies the inheritance properties of the audit rule.
+ Specifies whether inherited audit rules are automatically propagated. The propagation flags are ignored if is set to .
+ Specifies the conditions for which the rule is audited.
+ The object that this method creates.
+
+
+ Gets the primary group associated with the specified owner.
+ The owner for which to get the primary group.
+ The primary group associated with the specified owner.
+
+
+ Gets the owner associated with the specified primary group.
+ The primary group for which to get the owner.
+
+ is .
+
+ is not an type.
+ Some or all identity references could not be translated.
+ A Win32 error code was returned.
+ The owner associated with the specified group.
+
+
+ Returns an array of byte values that represents the security descriptor information for this object.
+ An array of byte values that represents the security descriptor for this object. This method returns if there is no security information in this object.
+
+
+ Returns the Security Descriptor Definition Language (SDDL) representation of the specified sections of the security descriptor associated with this object.
+ Specifies which sections (access rules, audit rules, primary group, owner) of the security descriptor to get.
+ The SDDL representation of the specified sections of the security descriptor associated with this object.
+
+
+ Returns a Boolean value that specifies whether the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format.
+
+ if the security descriptor associated with this object can be converted to the Security Descriptor Definition Language (SDDL) format; otherwise, .
+
+
+ Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object.
+ The modification to apply to the DACL.
+ The access rule to modify.
+
+ if the DACL is successfully modified; otherwise, .
+
+ if the DACL is successfully modified; otherwise, .
+
+
+ Applies the specified modification to the Discretionary Access Control List (DACL) associated with this object.
+ The modification to apply to the DACL.
+ The access rule to modify.
+
+ if the DACL is actually modified; otherwise, .
+
+ if the DACL is successfully modified; otherwise, .
+
+
+ Applies the specified modification to the System Access Control List (SACL) associated with this object.
+ The modification to apply to the SACL.
+ The audit rule to modify.
+
+ if the SACL is actually modified; otherwise, .
+
+ if the SACL is successfully modified; otherwise, .
+
+
+ Applies the specified modification to the System Access Control List (SACL) associated with this object.
+ The modification to apply to the SACL.
+ The audit rule to modify.
+
+ if the SACL is successfully modified; otherwise, .
+
+ if the SACL is successfully modified; otherwise, .
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+
+ to enable the privilege that allows the caller to take ownership of the object.
+ The name used to retrieve the persisted information.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+ The handle used to retrieve the persisted information.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+
+
+ Saves the specified sections of the security descriptor associated with this object to permanent storage. We recommend that the values of the parameters passed to the constructor and persist methods be identical.
+ The name used to retrieve the persisted information.
+ One of the enumeration values that specifies the sections of the security descriptor (access rules, audit rules, owner, primary group) of the securable object to save.
+
+
+ Removes all access rules associated with the specified .
+ The for which to remove all access rules.
+ All access rules are not in canonical order.
+
+
+ Removes all audit rules associated with the specified .
+ The for which to remove all audit rules.
+ All audit rules are not in canonical order.
+
+
+ Locks this object for read access.
+
+
+ Unlocks this object for read access.
+
+
+ Sets or removes protection of the access rules associated with this object. Protected access rules cannot be modified by parent objects through inheritance.
+
+ to protect the access rules associated with this object from inheritance; to allow inheritance.
+
+ to preserve inherited access rules; to remove inherited access rules. This parameter is ignored if is .
+ This method attempts to remove inherited rules from a non-canonical Discretionary Access Control List (DACL).
+
+
+ Sets or removes protection of the audit rules associated with this object. Protected audit rules cannot be modified by parent objects through inheritance.
+
+ to protect the audit rules associated with this object from inheritance; to allow inheritance.
+
+ to preserve inherited audit rules; to remove inherited audit rules. This parameter is ignored if is .
+ This method attempts to remove inherited rules from a non-canonical System Access Control List (SACL).
+
+
+ Sets the primary group for the security descriptor associated with this object.
+ The primary group to set.
+
+
+ Sets the owner for the security descriptor associated with this object.
+ The owner to set.
+
+
+ Sets the security descriptor for this object from the specified array of byte values.
+ The array of bytes from which to set the security descriptor.
+
+
+ Sets the specified sections of the security descriptor for this object from the specified array of byte values.
+ The array of bytes from which to set the security descriptor.
+ The sections (access rules, audit rules, owner, primary group) of the security descriptor to set.
+
+
+ Sets the security descriptor for this object from the specified Security Descriptor Definition Language (SDDL) string.
+ The SDDL string from which to set the security descriptor.
+
+
+ Sets the specified sections of the security descriptor for this object from the specified Security Descriptor Definition Language (SDDL) string.
+ The SDDL string from which to set the security descriptor.
+ The sections (access rules, audit rules, owner, primary group) of the security descriptor to set.
+
+
+ Locks this object for write access.
+
+
+ Unlocks this object for write access.
+
+
+ Gets the of the securable object associated with this object.
+ The type of the securable object associated with this object.
+
+
+ Gets or sets a Boolean value that specifies whether the access rules associated with this object have been modified.
+
+ if the access rules associated with this object have been modified; otherwise, .
+
+
+ Gets the of the object associated with the access rules of this object. The object must be an object that can be cast as a object.
+ The type of the object associated with the access rules of this object.
+
+
+ Gets a Boolean value that specifies whether the access rules associated with this object are in canonical order.
+
+ if the access rules are in canonical order; otherwise, .
+
+
+ Gets a Boolean value that specifies whether the Discretionary Access Control List (DACL) associated with this object is protected.
+
+ if the DACL is protected; otherwise, .
+
+
+ Gets a Boolean value that specifies whether the audit rules associated with this object are in canonical order.
+
+ if the audit rules are in canonical order; otherwise, .
+
+
+ Gets a Boolean value that specifies whether the System Access Control List (SACL) associated with this object is protected.
+
+ if the SACL is protected; otherwise, .
+
+
+ Gets or sets a Boolean value that specifies whether the audit rules associated with this object have been modified.
+
+ if the audit rules associated with this object have been modified; otherwise, .
+
+
+ Gets the object associated with the audit rules of this object. The object must be an object that can be cast as a object.
+ The type of the object associated with the audit rules of this object.
+
+
+ Gets or sets a Boolean value that specifies whether the group associated with the securable object has been modified.
+
+ if the group associated with the securable object has been modified; otherwise, .
+
+
+ Gets a Boolean value that specifies whether this object is a container object.
+
+ if the object is a container object; otherwise, .
+
+
+ Gets a Boolean value that specifies whether this object is a directory object.
+
+ if the object is a directory object; otherwise, .
+
+
+ Gets or sets a Boolean value that specifies whether the owner of the securable object has been modified.
+
+ if the owner of the securable object has been modified; otherwise, .
+
+
+ Gets the security descriptor for this instance.
+ The security descriptor for this instance.
+
+
+ Provides the ability to control access to objects without direct manipulation of Access Control Lists (ACLs); also grants the ability to type-cast access rights.
+ The access rights for the object.
+
+
+ Initializes a new instance of the ObjectSecurity`1 class.
+
+ if the new object is a container object.
+ The type of resource.
+
+
+ Initializes a new instance of the ObjectSecurity`1 class.
+
+ if the new object is a container object.
+ The type of resource.
+ A handle.
+ The sections to include.
+
+
+ Initializes a new instance of the ObjectSecurity`1 class.
+
+ if the new object is a container object.
+ The type of resource.
+ A handle.
+ The sections to include.
+ A delegate implemented by integrators that provides custom exceptions.
+ An object that contains contextual information about the source or destination of the exception.
+
+
+ Initializes a new instance of the ObjectSecurity`1 class.
+
+ if the new object is a container object.
+ The type of resource.
+ The name of the securable object with which the new object is associated.
+ The sections to include.
+
+
+ Initializes a new instance of the ObjectSecurity`1 class.
+
+ if the new object is a container object.
+ The type of resource.
+ The name of the securable object with which the new object is associated.
+ The sections to include.
+ A delegate implemented by integrators that provides custom exceptions.
+ An object that contains contextual information about the source or destination of the exception.
+
+
+ Initializes a new instance of the ObjectAccessRule class that represents a new access control rule for the associated security object.
+ Represents a user account.
+ The access type.
+
+ if the access rule is inherited; otherwise, .
+ Specifies how to propagate access masks to child objects.
+ Specifies how to propagate Access Control Entries (ACEs) to child objects.
+ Specifies whether access is allowed or denied.
+ Represents a new access control rule for the specified user, with the specified access rights, access control, and flags.
+
+
+ Adds the specified access rule to the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object.
+ The rule to add.
+
+
+ Adds the specified audit rule to the System Access Control List (SACL) associated with this ObjectSecurity`1 object.
+ The audit rule to add.
+
+
+ Initializes a new instance of the class representing the specified audit rule for the specified user.
+ Represents a user account.
+ An integer that specifies an access type.
+
+ if the access rule is inherited; otherwise, .
+ Specifies how to propagate access masks to child objects.
+ Specifies how to propagate Access Control Entries (ACEs) to child objects.
+ Describes the type of auditing to perform.
+ The specified audit rule for the specified user.
+
+
+ Saves the security descriptor associated with this ObjectSecurity`1 object to permanent storage, using the specified handle.
+ The handle of the securable object with which this ObjectSecurity`1 object is associated.
+
+
+ Saves the security descriptor associated with this ObjectSecurity`1 object to permanent storage, using the specified name.
+ The name of the securable object with which this ObjectSecurity`1 object is associated.
+
+
+ Removes access rules that contain the same security identifier and access mask as the specified access rule from the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object.
+ The rule to remove.
+
+ if the access rule was successfully removed; otherwise, .
+
+
+ Removes all access rules that have the same security identifier as the specified access rule from the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object.
+ The access rule to remove.
+
+
+ Removes all access rules that exactly match the specified access rule from the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object.
+ The access rule to remove.
+
+
+ Removes audit rules that contain the same security identifier and access mask as the specified audit rule from the System Access Control List (SACL) associated with this ObjectSecurity`1 object.
+ The audit rule to remove
+
+ if the object was removed; otherwise, .
+
+
+ Removes all audit rules that have the same security identifier as the specified audit rule from the System Access Control List (SACL) associated with this ObjectSecurity`1 object.
+ The audit rule to remove.
+
+
+ Removes all audit rules that exactly match the specified audit rule from the System Access Control List (SACL) associated with this ObjectSecurity`1 object.
+ The audit rule to remove.
+
+
+ Removes all access rules in the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object and then adds the specified access rule.
+ The access rule to reset.
+
+
+ Removes all access rules that contain the same security identifier and qualifier as the specified access rule in the Discretionary Access Control List (DACL) associated with this ObjectSecurity`1 object and then adds the specified access rule.
+ The access rule to set.
+
+
+ Removes all audit rules that contain the same security identifier and qualifier as the specified audit rule in the System Access Control List (SACL) associated with this ObjectSecurity`1 object and then adds the specified audit rule.
+ The audit rule to set.
+
+
+ Gets the Type of the securable object associated with this ObjectSecurity`1 object.
+ The type of the securable object associated with the current instance.
+
+
+ Gets the Type of the object associated with the access rules of this ObjectSecurity`1 object.
+ The Type of the object associated with the access rules of the current instance.
+
+
+ Gets the Type object associated with the audit rules of this ObjectSecurity`1 object.
+ The Type object associated with the audit rules of the current instance.
+
+
+ The exception that is thrown when a method in the namespace attempts to enable a privilege that it does not have.
+
+
+ Initializes a new instance of the class.
+
+
+ Initializes a new instance of the class by using the specified privilege.
+ The privilege that is not enabled.
+
+
+ Initializes a new instance of the class by using the specified exception.
+ The privilege that is not enabled.
+ The exception that is the cause of the current exception. If the innerException parameter is not a null reference ( in Visual Basic), the current exception is raised in a block that handles the inner exception.
+
+
+ Sets the parameter with information about the exception.
+ The that holds the serialized object data about the exception being thrown.
+ The that contains contextual information about the source or destination.
+
+
+ Gets the name of the privilege that is not enabled.
+ The name of the privilege that the method failed to enable.
+
+
+ Specifies how Access Control Entries (ACEs) are propagated to child objects. These flags are significant only if inheritance flags are present.
+
+
+ Specifies that the ACE is propagated only to child objects. This includes both container and leaf child objects.
+
+
+ Specifies that no inheritance flags are set.
+
+
+ Specifies that the ACE is not propagated to child objects.
+
+
+ Represents an Access Control Entry (ACE) that contains a qualifier. The qualifier, represented by an object, specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms. The class is the abstract base class for the and classes.
+
+
+ Returns the opaque callback data associated with this object.
+ An array of byte values that represents the opaque callback data associated with this object.
+
+
+ Sets the opaque callback data associated with this object.
+ An array of byte values that represents the opaque callback data for this object.
+
+
+ Gets a value that specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms.
+ A value that specifies whether the ACE allows access, denies access, causes system audits, or causes system alarms.
+
+
+ Specifies whether this object contains callback data.
+
+ if this object contains callback data; otherwise, false.
+
+
+ Gets the length of the opaque callback data associated with this object. This property is valid only for callback Access Control Entries (ACEs).
+ The length of the opaque callback data.
+
+
+ Represents an Access Control List (ACL).
+
+
+ Initializes a new instance of the class with the specified revision level.
+ The revision level of the new Access Control List (ACL).
+ The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint.
+
+
+ Initializes a new instance of the class from the specified binary form.
+ An array of byte values that represent an Access Control List (ACL).
+ The offset in the parameter at which to begin unmarshaling data.
+
+
+ Marshals the contents of the object into the specified byte array beginning at the specified offset.
+ The byte array into which the contents of the is marshaled.
+ The offset at which to start marshaling.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Inserts the specified Access Control Entry (ACE) at the specified index.
+ The position at which to add the new ACE. Specify the value of the property to insert an ACE at the end of the object.
+ The ACE to insert.
+
+ is negative or too high to allow the entire to be copied into .
+
+
+ Removes the Access Control Entry (ACE) at the specified location.
+ The zero-based index of the ACE to remove.
+ The value of the parameter is higher than the value of the property minus one or is negative.
+
+
+ Gets the length, in bytes, of the binary representation of the current object. This length should be used before marshaling the ACL into a binary array with the method.
+ The length, in bytes, of the binary representation of the current object.
+
+
+ Gets the number of access control entries (ACEs) in the current object.
+ The number of ACEs in the current object.
+
+
+ Gets or sets the Access Control Entry (ACE) at the specified index.
+ The zero-based index of the ACE to get or set.
+ The ACE at the specified index.
+
+
+ Gets the revision level of the .
+ A byte value that specifies the revision level of the .
+
+
+ Represents a security descriptor. A security descriptor includes an owner, a primary group, a Discretionary Access Control List (DACL), and a System Access Control List (SACL).
+
+
+ Initializes a new instance of the class from the specified array of byte values.
+ The array of byte values from which to create the new object.
+ The offset in the array at which to begin copying.
+
+
+ Initializes a new instance of the class with the specified values.
+ Flags that specify behavior of the new object.
+ The owner for the new object.
+ The primary group for the new object.
+ The System Access Control List (SACL) for the new object.
+ The Discretionary Access Control List (DACL) for the new object.
+
+
+ Initializes a new instance of the class from the specified Security Descriptor Definition Language (SDDL) string.
+ The SDDL string from which to create the new object.
+ The SDDL form of a security descriptor object is invalid.
+
+
+ Sets the property of this object to the specified value.
+ One or more values of the enumeration combined with a logical OR operation.
+
+
+ Gets values that specify behavior of the object.
+ One or more values of the enumeration combined with a logical OR operation.
+
+
+ Gets or sets the Discretionary Access Control List (DACL) for this object. The DACL contains access rules.
+ The DACL for this object.
+
+
+ Gets or sets the primary group for this object.
+ The primary group for this object.
+
+
+ Gets or sets the owner of the object associated with this object.
+ The owner of the object associated with this object.
+
+
+ Gets or sets a byte value that represents the resource manager control bits associated with this object.
+ A byte value that represents the resource manager control bits associated with this object.
+
+
+ Gets or sets the System Access Control List (SACL) for this object. The SACL contains audit rules.
+ The SACL for this object.
+
+
+ Specifies the defined native object types.
+
+
+ A directory service (DS) object or a property set or property of a directory service object.
+
+
+ A directory service object and all of its property sets and properties.
+
+
+ A file or directory.
+
+
+ A local kernel object.
+
+
+ A network share.
+
+
+ A printer.
+
+
+ An object defined by a provider.
+
+
+ A registry key.
+
+
+ An object for a registry entry under WOW64.
+
+
+ A Windows service.
+
+
+ An unknown object type.
+
+
+ A window station or desktop object on the local computer.
+
+
+ A Windows Management Instrumentation (WMI) object.
+
+
+ Specifies the section of a security descriptor to be queried or set.
+
+
+ Specifies the discretionary access control list (DACL).
+
+
+ Specifies the primary group identifier.
+
+
+ Specifies the owner identifier.
+
+
+ Specifies the system access control list (SACL).
+
+
+ Represents a System Access Control List (SACL).
+
+
+ Initializes a new instance of the class with the specified values.
+
+ if the new object is a container.
+
+ if the new object is a directory object Access Control List (ACL).
+ The revision level of the new object.
+ The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint.
+
+
+ Initializes a new instance of the class with the specified values.
+
+ if the new object is a container.
+
+ if the new object is a directory object Access Control List (ACL).
+ The number of Access Control Entries (ACEs) this object can contain. This number is to be used only as a hint.
+
+
+ Initializes a new instance of the class with the specified values from the specified object.
+
+ if the new object is a container.
+
+ if the new object is a directory object Access Control List (ACL).
+ The underlying object for the new object. Specify to create an empty ACL.
+
+
+ Adds an audit rule to the current object.
+ The type of audit rule to add.
+ The for which to add an audit rule.
+ The access mask for the new audit rule.
+ Flags that specify the inheritance properties of the new audit rule.
+ Flags that specify the inheritance propagation properties for the new audit rule.
+
+
+ Adds an audit rule with the specified settings to the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type for the new audit rule.
+ The type of audit rule to add.
+ The for which to add an audit rule.
+ The access mask for the new audit rule.
+ Flags that specify the inheritance properties of the new audit rule.
+ Flags that specify the inheritance propagation properties for the new audit rule.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the new audit rule applies.
+ The identity of the class of child objects which can inherit the new audit rule.
+
+
+ Adds an audit rule to the current object.
+ The for which to add an audit rule.
+ The for the new audit rule.
+
+
+ Removes the specified audit rule from the current object.
+ The type of audit rule to remove.
+ The for which to remove an audit rule.
+ The access mask for the rule to be removed.
+ Flags that specify the inheritance properties of the rule to be removed.
+ Flags that specify the inheritance propagation properties for the rule to be removed.
+
+ if this method successfully removes the specified audit rule; otherwise, .
+
+
+ Removes the specified audit rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.
+ The type of audit rule to remove.
+ The for which to remove an audit rule.
+ The access mask for the rule to be removed.
+ Flags that specify the inheritance properties of the rule to be removed.
+ Flags that specify the inheritance propagation properties for the rule to be removed.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the removed audit control rule applies.
+ The identity of the class of child objects which can inherit the removed audit rule.
+
+ if this method successfully removes the specified audit rule; otherwise, .
+
+
+ Removes the specified audit rule from the current object.
+ The for which to remove an audit rule.
+ The for which to remove an audit rule.
+
+ if this method successfully removes the specified audit rule; otherwise, .
+
+
+ Removes the specified audit rule from the current object.
+ The type of audit rule to remove.
+ The for which to remove an audit rule.
+ The access mask for the rule to be removed.
+ Flags that specify the inheritance properties of the rule to be removed.
+ Flags that specify the inheritance propagation properties for the rule to be removed.
+
+
+ Removes the specified audit rule from the current object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.
+ The type of audit rule to remove.
+ The for which to remove an audit rule.
+ The access mask for the rule to be removed.
+ Flags that specify the inheritance properties of the rule to be removed.
+ Flags that specify the inheritance propagation properties for the rule to be removed.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the removed audit control rule applies.
+ The identity of the class of child objects which can inherit the removed audit rule.
+
+
+ Removes the specified audit rule from the current object.
+ The for which to remove an audit rule.
+ The for the rule to be removed.
+
+
+ Sets the specified audit rule for the specified object.
+ The audit condition to set.
+ The for which to set an audit rule.
+ The access mask for the new audit rule.
+ Flags that specify the inheritance properties of the new audit rule.
+ Flags that specify the inheritance propagation properties for the new audit rule.
+
+
+ Sets the specified audit rule for the specified object. Use this method for directory object Access Control Lists (ACLs) when specifying the object type or the inherited object type.
+ The audit condition to set.
+ The for which to set an audit rule.
+ The access mask for the new audit rule.
+ Flags that specify the inheritance properties of the new audit rule.
+ Flags that specify the inheritance propagation properties for the new audit rule.
+ Flags that specify if the and parameters contain non- values.
+ The identity of the class of objects to which the new audit rule applies.
+ The identity of the class of child objects which can inherit the new audit rule.
+
+
+ Sets the specified audit rule for the specified object.
+ The for which to set an audit rule.
+ The for which to set an audit rule.
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.xml.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.xml.meta
new file mode 100644
index 00000000..554bbbc7
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/lib/netstandard2.0/System.Security.AccessControl.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: ca9d954f5a0454540a7d71039ba049b8
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/useSharedDesignerContext.txt b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/useSharedDesignerContext.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/useSharedDesignerContext.txt.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/useSharedDesignerContext.txt.meta
new file mode 100644
index 00000000..07b062de
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/useSharedDesignerContext.txt.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 09bf9d3558b54e3498968afdc145e504
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/version.txt b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/version.txt
new file mode 100644
index 00000000..0a6d216f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/version.txt
@@ -0,0 +1 @@
+cf258a14b70ad9069470a108f13765e0e5988f51
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/version.txt.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/version.txt.meta
new file mode 100644
index 00000000..5cfe5245
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.AccessControl.5.0.0/version.txt.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 3770cf6cbbd93694b8b840d6feaa6dc9
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0.meta
new file mode 100644
index 00000000..8833e235
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 839a3b927db645f4498d38e3b17680f7
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/.signature.p7s
new file mode 100644
index 00000000..f6070679
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/Icon.png b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/Icon.png
new file mode 100644
index 00000000..a0f1fdbf
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/Icon.png differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/Icon.png.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/Icon.png.meta
new file mode 100644
index 00000000..d93f282a
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/Icon.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: d3227cbe020c6f24b9d52f1d6c08c24b
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/LICENSE.TXT b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/LICENSE.TXT
new file mode 100644
index 00000000..984713a4
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/LICENSE.TXT
@@ -0,0 +1,23 @@
+The MIT License (MIT)
+
+Copyright (c) .NET Foundation and Contributors
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/LICENSE.TXT.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/LICENSE.TXT.meta
new file mode 100644
index 00000000..81f7f3d8
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/LICENSE.TXT.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 5d17e8eac1a06844bb33ec1b0f8e6624
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/System.Security.Principal.Windows.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/System.Security.Principal.Windows.nuspec
new file mode 100644
index 00000000..a1ff48c6
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/System.Security.Principal.Windows.nuspec
@@ -0,0 +1,68 @@
+
+
+
+ System.Security.Principal.Windows
+ 5.0.0
+ System.Security.Principal.Windows
+ Microsoft
+ microsoft,dotnetframework
+ false
+ MIT
+ https://licenses.nuget.org/MIT
+ Icon.png
+ https://github.com/dotnet/runtime
+ http://go.microsoft.com/fwlink/?LinkID=288859
+ Provides classes for retrieving the current Windows user and for interacting with Windows users and groups.
+
+Commonly Used Types:
+System.Security.Principal.WindowsIdentity
+System.Security.Principal.SecurityIdentifier
+System.Security.Principal.NTAccount
+System.Security.Principal.WindowsPrincipal
+System.Security.Principal.IdentityReference
+System.Security.Principal.IdentityNotMappedException
+System.Security.Principal.WindowsBuiltInRole
+System.Security.Principal.WellKnownSidType
+
+When using NuGet 3.x this package requires at least version 3.4.
+ https://go.microsoft.com/fwlink/?LinkID=799421
+ © Microsoft Corporation. All rights reserved.
+ true
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/System.Security.Principal.Windows.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/System.Security.Principal.Windows.nuspec.meta
new file mode 100644
index 00000000..91ef178e
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/System.Security.Principal.Windows.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 9569fd11e12751344ac0c5927d5c4a61
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/THIRD-PARTY-NOTICES.TXT b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 00000000..111dcf58
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,884 @@
+.NET Runtime uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Runtime software.
+
+In the event that we accidentally failed to list a required notice, please
+bring it to our attention. Post an issue or email us:
+
+ dotnet@microsoft.com
+
+The attached notices are provided for information only.
+
+License notice for ASP.NET
+-------------------------------
+
+Copyright (c) .NET Foundation. All rights reserved.
+Licensed under the Apache License, Version 2.0.
+
+Available at
+https://github.com/aspnet/AspNetCore/blob/master/LICENSE.txt
+
+License notice for Slicing-by-8
+-------------------------------
+
+http://sourceforge.net/projects/slicing-by-8/
+
+Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+
+This software program is licensed subject to the BSD License, available at
+http://www.opensource.org/licenses/bsd-license.html.
+
+
+License notice for Unicode data
+-------------------------------
+
+https://www.unicode.org/license.html
+
+Copyright © 1991-2020 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in https://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+License notice for Zlib
+-----------------------
+
+https://github.com/madler/zlib
+http://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+ version 1.2.11, January 15th, 2017
+
+ Copyright (C) 1995-2017 Jean-loup Gailly and Mark Adler
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+ 3. This notice may not be removed or altered from any source distribution.
+
+ Jean-loup Gailly Mark Adler
+ jloup@gzip.org madler@alumni.caltech.edu
+
+*/
+
+License notice for Mono
+-------------------------------
+
+http://www.mono-project.com/docs/about-mono/
+
+Copyright (c) .NET Foundation Contributors
+
+MIT License
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the Software), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for International Organization for Standardization
+-----------------------------------------------------------------
+
+Portions (C) International Organization for Standardization 1986:
+ Permission to copy in any form is granted for use with
+ conforming SGML systems and applications as defined in
+ ISO 8879, provided this notice is included in all copies.
+
+License notice for Intel
+------------------------
+
+"Copyright (c) 2004-2006 Intel Corporation - All Rights Reserved
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice, this
+list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright notice,
+this list of conditions and the following disclaimer in the documentation
+and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
+FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
+CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
+OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xamarin and Novell
+-------------------------------------
+
+Copyright (c) 2015 Xamarin, Inc (http://www.xamarin.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Copyright (c) 2011 Novell, Inc (http://www.novell.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+Third party notice for W3C
+--------------------------
+
+"W3C SOFTWARE AND DOCUMENT NOTICE AND LICENSE
+Status: This license takes effect 13 May, 2015.
+This work is being provided by the copyright holders under the following license.
+License
+By obtaining and/or copying this work, you (the licensee) agree that you have read, understood, and will comply with the following terms and conditions.
+Permission to copy, modify, and distribute this work, with or without modification, for any purpose and without fee or royalty is hereby granted, provided that you include the following on ALL copies of the work or portions thereof, including modifications:
+The full text of this NOTICE in a location viewable to users of the redistributed or derivative work.
+Any pre-existing intellectual property disclaimers, notices, or terms and conditions. If none exist, the W3C Software and Document Short Notice should be included.
+Notice of any changes or modifications, through a copyright statement on the new code or document such as "This software or document includes material copied from or derived from [title and URI of the W3C document]. Copyright © [YEAR] W3C® (MIT, ERCIM, Keio, Beihang)."
+Disclaimers
+THIS WORK IS PROVIDED "AS IS," AND COPYRIGHT HOLDERS MAKE NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO, WARRANTIES OF MERCHANTABILITY OR FITNESS FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE OR DOCUMENT WILL NOT INFRINGE ANY THIRD PARTY PATENTS, COPYRIGHTS, TRADEMARKS OR OTHER RIGHTS.
+COPYRIGHT HOLDERS WILL NOT BE LIABLE FOR ANY DIRECT, INDIRECT, SPECIAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF ANY USE OF THE SOFTWARE OR DOCUMENT.
+The name and trademarks of copyright holders may NOT be used in advertising or publicity pertaining to the work without specific, written prior permission. Title to copyright in this work will at all times remain with copyright holders."
+
+License notice for Bit Twiddling Hacks
+--------------------------------------
+
+Bit Twiddling Hacks
+
+By Sean Eron Anderson
+seander@cs.stanford.edu
+
+Individually, the code snippets here are in the public domain (unless otherwise
+noted) — feel free to use them however you please. The aggregate collection and
+descriptions are © 1997-2005 Sean Eron Anderson. The code and descriptions are
+distributed in the hope that they will be useful, but WITHOUT ANY WARRANTY and
+without even the implied warranty of merchantability or fitness for a particular
+purpose.
+
+License notice for Brotli
+--------------------------------------
+
+Copyright (c) 2009, 2010, 2013-2016 by the Brotli Authors.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+
+compress_fragment.c:
+Copyright (c) 2011, Google Inc.
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+decode_fuzzer.c:
+Copyright (c) 2015 The Chromium Authors. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+copyright notice, this list of conditions and the following disclaimer
+in the documentation and/or other materials provided with the
+distribution.
+ * Neither the name of Google Inc. nor the names of its
+contributors may be used to endorse or promote products derived from
+this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+""AS IS"" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE."
+
+License notice for Json.NET
+-------------------------------
+
+https://github.com/JamesNK/Newtonsoft.Json/blob/master/LICENSE.md
+
+The MIT License (MIT)
+
+Copyright (c) 2007 James Newton-King
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
+COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
+IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized base64 encoding / decoding
+--------------------------------------------------------
+
+Copyright (c) 2005-2007, Nick Galbreath
+Copyright (c) 2013-2017, Alfred Klomp
+Copyright (c) 2015-2017, Wojciech Mula
+Copyright (c) 2016-2017, Matthieu Darbois
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+- Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimer.
+
+- Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
+IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
+PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for RFC 3492
+---------------------------
+
+The punycode implementation is based on the sample code in RFC 3492
+
+Copyright (C) The Internet Society (2003). All Rights Reserved.
+
+This document and translations of it may be copied and furnished to
+others, and derivative works that comment on or otherwise explain it
+or assist in its implementation may be prepared, copied, published
+and distributed, in whole or in part, without restriction of any
+kind, provided that the above copyright notice and this paragraph are
+included on all such copies and derivative works. However, this
+document itself may not be modified in any way, such as by removing
+the copyright notice or references to the Internet Society or other
+Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for
+copyrights defined in the Internet Standards process must be
+followed, or as required to translate it into languages other than
+English.
+
+The limited permissions granted above are perpetual and will not be
+revoked by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an
+"AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
+TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING
+BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION
+HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
+MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
+
+License notice for Algorithm from Internet Draft document "UUIDs and GUIDs"
+---------------------------------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, or Digital Equipment Corporation be used in advertising
+or publicity pertaining to distribution of the software without
+specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital Equipment
+Corporation makes any representations about the suitability of
+this software for any purpose.
+
+Copyright(C) The Internet Society 1997. All Rights Reserved.
+
+This document and translations of it may be copied and furnished to others,
+and derivative works that comment on or otherwise explain it or assist in
+its implementation may be prepared, copied, published and distributed, in
+whole or in part, without restriction of any kind, provided that the above
+copyright notice and this paragraph are included on all such copies and
+derivative works.However, this document itself may not be modified in any
+way, such as by removing the copyright notice or references to the Internet
+Society or other Internet organizations, except as needed for the purpose of
+developing Internet standards in which case the procedures for copyrights
+defined in the Internet Standards process must be followed, or as required
+to translate it into languages other than English.
+
+The limited permissions granted above are perpetual and will not be revoked
+by the Internet Society or its successors or assigns.
+
+This document and the information contained herein is provided on an "AS IS"
+basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE
+DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
+ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY
+RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A
+PARTICULAR PURPOSE.
+
+License notice for Algorithm from RFC 4122 -
+A Universally Unique IDentifier (UUID) URN Namespace
+----------------------------------------------------
+
+Copyright (c) 1990- 1993, 1996 Open Software Foundation, Inc.
+Copyright (c) 1989 by Hewlett-Packard Company, Palo Alto, Ca. &
+Digital Equipment Corporation, Maynard, Mass.
+Copyright (c) 1998 Microsoft.
+To anyone who acknowledges that this file is provided "AS IS"
+without any express or implied warranty: permission to use, copy,
+modify, and distribute this file for any purpose is hereby
+granted without fee, provided that the above copyright notices and
+this notice appears in all source code copies, and that none of
+the names of Open Software Foundation, Inc., Hewlett-Packard
+Company, Microsoft, or Digital Equipment Corporation be used in
+advertising or publicity pertaining to distribution of the software
+without specific, written prior permission. Neither Open Software
+Foundation, Inc., Hewlett-Packard Company, Microsoft, nor Digital
+Equipment Corporation makes any representations about the
+suitability of this software for any purpose."
+
+License notice for The LLVM Compiler Infrastructure
+---------------------------------------------------
+
+Developed by:
+
+ LLVM Team
+
+ University of Illinois at Urbana-Champaign
+
+ http://llvm.org
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal with
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies
+of the Software, and to permit persons to whom the Software is furnished to do
+so, subject to the following conditions:
+
+ * Redistributions of source code must retain the above copyright notice,
+ this list of conditions and the following disclaimers.
+
+ * Redistributions in binary form must reproduce the above copyright notice,
+ this list of conditions and the following disclaimers in the
+ documentation and/or other materials provided with the distribution.
+
+ * Neither the names of the LLVM Team, University of Illinois at
+ Urbana-Champaign, nor the names of its contributors may be used to
+ endorse or promote products derived from this Software without specific
+ prior written permission.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
+FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+CONTRIBUTORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS WITH THE
+SOFTWARE.
+
+License notice for Bob Jenkins
+------------------------------
+
+By Bob Jenkins, 1996. bob_jenkins@burtleburtle.net. You may use this
+code any way you wish, private, educational, or commercial. It's free.
+
+License notice for Greg Parker
+------------------------------
+
+Greg Parker gparker@cs.stanford.edu December 2000
+This code is in the public domain and may be copied or modified without
+permission.
+
+License notice for libunwind based code
+----------------------------------------
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to
+the following conditions:
+
+The above copyright notice and this permission notice shall be
+included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
+LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
+OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
+WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for Printing Floating-Point Numbers (Dragon4)
+------------------------------------------------------------
+
+/******************************************************************************
+ Copyright (c) 2014 Ryan Juckett
+ http://www.ryanjuckett.com/
+
+ This software is provided 'as-is', without any express or implied
+ warranty. In no event will the authors be held liable for any damages
+ arising from the use of this software.
+
+ Permission is granted to anyone to use this software for any purpose,
+ including commercial applications, and to alter it and redistribute it
+ freely, subject to the following restrictions:
+
+ 1. The origin of this software must not be misrepresented; you must not
+ claim that you wrote the original software. If you use this software
+ in a product, an acknowledgment in the product documentation would be
+ appreciated but is not required.
+
+ 2. Altered source versions must be plainly marked as such, and must not be
+ misrepresented as being the original software.
+
+ 3. This notice may not be removed or altered from any source
+ distribution.
+******************************************************************************/
+
+License notice for Printing Floating-point Numbers (Grisu3)
+-----------------------------------------------------------
+
+Copyright 2012 the V8 project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+ * Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+ * Redistributions in binary form must reproduce the above
+ copyright notice, this list of conditions and the following
+ disclaimer in the documentation and/or other materials provided
+ with the distribution.
+ * Neither the name of Google Inc. nor the names of its
+ contributors may be used to endorse or promote products derived
+ from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for xxHash
+-------------------------
+
+xxHash Library
+Copyright (c) 2012-2014, Yann Collet
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification,
+are permitted provided that the following conditions are met:
+
+* Redistributions of source code must retain the above copyright notice, this
+ list of conditions and the following disclaimer.
+
+* Redistributions in binary form must reproduce the above copyright notice, this
+ list of conditions and the following disclaimer in the documentation and/or
+ other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
+ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
+ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Berkeley SoftFloat Release 3e
+------------------------------------------------
+
+https://github.com/ucb-bar/berkeley-softfloat-3
+https://github.com/ucb-bar/berkeley-softfloat-3/blob/master/COPYING.txt
+
+License for Berkeley SoftFloat Release 3e
+
+John R. Hauser
+2018 January 20
+
+The following applies to the whole of SoftFloat Release 3e as well as to
+each source file individually.
+
+Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018 The Regents of the
+University of California. All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+ 1. Redistributions of source code must retain the above copyright notice,
+ this list of conditions, and the following disclaimer.
+
+ 2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions, and the following disclaimer in the
+ documentation and/or other materials provided with the distribution.
+
+ 3. Neither the name of the University nor the names of its contributors
+ may be used to endorse or promote products derived from this software
+ without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS "AS IS", AND ANY
+EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, ARE
+DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
+LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
+ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
+THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Xorshift RNGs
+--------------------------------
+
+George Marsaglia
+2003-07-04
+Journal of Statistical Software
+License: http://creativecommons.org/licenses/by/3.0/
+
+https://www.jstatsoft.org/article/view/v008i14
+https://www.jstatsoft.org/index.php/jss/article/view/v008i14/xorshift.pdf
+
+License notice for Xorshift (Wikipedia)
+---------------------------------------
+
+https://en.wikipedia.org/wiki/Xorshift
+License: https://en.wikipedia.org/wiki/Wikipedia:Text_of_Creative_Commons_Attribution-ShareAlike_3.0_Unported_License
+
+License for fastmod (https://github.com/lemire/fastmod)
+--------------------------------------
+
+ Copyright 2018 Daniel Lemire
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+
+License notice for The C++ REST SDK
+-----------------------------------
+
+C++ REST SDK
+
+The MIT License (MIT)
+
+Copyright (c) Microsoft Corporation
+
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of
+this software and associated documentation files (the "Software"), to deal in
+the Software without restriction, including without limitation the rights to
+use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
+the Software, and to permit persons to whom the Software is furnished to do so,
+subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for MessagePack-CSharp
+-------------------------------------
+
+MessagePack for C#
+
+MIT License
+
+Copyright (c) 2017 Yoshifumi Kawai
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for lz4net
+-------------------------------------
+
+lz4net
+
+Copyright (c) 2013-2017, Milosz Krajewski
+
+All rights reserved.
+
+Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
+
+Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
+
+Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+License notice for Nerdbank.Streams
+-----------------------------------
+
+The MIT License (MIT)
+
+Copyright (c) Andrew Arnott
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
+License notice for RapidJSON
+----------------------------
+
+Tencent is pleased to support the open source community by making RapidJSON available.
+
+Copyright (C) 2015 THL A29 Limited, a Tencent company, and Milo Yip. All rights reserved.
+
+Licensed under the MIT License (the "License"); you may not use this file except
+in compliance with the License. You may obtain a copy of the License at
+
+http://opensource.org/licenses/MIT
+
+Unless required by applicable law or agreed to in writing, software distributed
+under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
+CONDITIONS OF ANY KIND, either express or implied. See the License for the
+specific language governing permissions and limitations under the License.
+
+License notice for DirectX Math Library
+---------------------------------------
+
+https://github.com/microsoft/DirectXMath/blob/master/LICENSE
+
+ The MIT License (MIT)
+
+Copyright (c) 2011-2020 Microsoft Corp
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this
+software and associated documentation files (the "Software"), to deal in the Software
+without restriction, including without limitation the rights to use, copy, modify,
+merge, publish, distribute, sublicense, and/or sell copies of the Software, and to
+permit persons to whom the Software is furnished to do so, subject to the following
+conditions:
+
+The above copyright notice and this permission notice shall be included in all copies
+or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
+INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
+PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
+HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
+CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
+OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for ldap4net
+---------------------------
+
+The MIT License (MIT)
+
+Copyright (c) 2018 Alexander Chermyanin
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+License notice for vectorized sorting code
+------------------------------------------
+
+MIT License
+
+Copyright (c) 2020 Dan Shechter
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
+
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/THIRD-PARTY-NOTICES.TXT.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/THIRD-PARTY-NOTICES.TXT.meta
new file mode 100644
index 00000000..09babf36
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/THIRD-PARTY-NOTICES.TXT.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: aec77ea73d24ca74aad78d99f6c02f24
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib.meta
new file mode 100644
index 00000000..4fa0abf3
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: f6f44ae3b1eaf27448ad2abbc47b3f8e
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0.meta
new file mode 100644
index 00000000..9ddab27f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: e2c784c845565694baef83ca0cce5d1d
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.dll
new file mode 100644
index 00000000..0c7819bd
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.dll.meta
new file mode 100644
index 00000000..dd279938
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: dd495eec55ca53d409dc82395a1a59b5
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.xml b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.xml
new file mode 100644
index 00000000..def5ccef
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.xml
@@ -0,0 +1,1091 @@
+
+
+
+ System.Security.Principal.Windows
+
+
+
+ Provides a safe handle to a Windows thread or process access token. For more information, see Access Tokens.
+
+
+ Initializes a new instance of the class.
+ An object that represents the pre-existing handle to use. Using returns an invalid handle.
+
+
+ Returns an invalid handle by instantiating a object with .
+ Returns a object.
+
+
+ Gets a value that indicates whether the handle is invalid.
+
+ if the handle is not valid; otherwise, .
+
+
+ Represents an exception for a principal whose identity could not be mapped to a known identity.
+
+
+ Initializes a new instance of the class.
+
+
+ Initializes a new instance of the class by using the specified error message.
+ The error message that explains the reason for the exception.
+
+
+ Initializes a new instance of the class by using the specified error message and inner exception.
+ The error message that explains the reason for the exception.
+ The exception that is the cause of the current exception. If is not null, the current exception is raised in a block that handles the inner exception.
+
+
+ Gets serialization information with the data needed to create an instance of this object.
+ The object that holds the serialized object data about the exception being thrown.
+ The object that contains contextual information about the source or destination.
+
+
+ Represents the collection of unmapped identities for an exception.
+ The collection of unmapped identities.
+
+
+ Represents an identity and is the base class for the and classes. This class does not provide a public constructor, and therefore cannot be inherited.
+
+
+ Returns a value that indicates whether the specified object equals this instance of the class.
+ An object to compare with this instance, or a null reference.
+
+ if is an object with the same underlying type and value as this instance; otherwise, .
+
+
+ Serves as a hash function for . is suitable for use in hashing algorithms and data structures like a hash table.
+ The hash code for this object.
+
+
+ Returns a value that indicates whether the specified type is a valid translation type for the class.
+ The type being queried for validity to serve as a conversion from . The following target types are valid:
+
+
+
+ if is a valid translation type for the class; otherwise, .
+
+
+ Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical name representation as the one returned by the property or if they are both .
+ The left operand to use for the equality comparison. This parameter can be .
+ The right operand to use for the equality comparison. This parameter can be .
+
+ if and are equal; otherwise, .
+
+
+ Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not.
+ The left operand to use for the inequality comparison. This parameter can be .
+ The right operand to use for the inequality comparison. This parameter can be .
+
+ if and are not equal; otherwise, .
+
+
+ Returns the string representation of the identity represented by the object.
+ The identity in string format.
+
+
+ Translates the account name represented by the object into another -derived type.
+ The target type for the conversion from .
+ The converted identity.
+
+
+ Gets the string value of the identity represented by the object.
+ The string value of the identity represented by the object.
+
+
+ Represents a collection of objects and provides a means of converting sets of -derived objects to -derived types.
+
+
+ Initializes a new instance of the class with zero items in the collection.
+
+
+ Initializes a new instance of the class by using the specified initial size.
+ The initial number of items in the collection. The value of is a hint only; it is not necessarily the maximum number of items created.
+
+
+ Adds an object to the collection.
+ The object to add to the collection.
+
+ is .
+
+
+ Clears all objects from the collection.
+
+
+ Indicates whether the collection contains the specified object.
+ The object to check for.
+
+ is .
+
+ if the collection contains the specified object.
+
+
+ Copies the collection to an array, starting at the specified index.
+ An array object to which the collection is to be copied.
+ The zero-based index in where the collection is to be copied.
+
+
+ Gets an enumerator that can be used to iterate through the collection.
+ An enumerator for the collection.
+
+
+ Removes the specified object from the collection.
+ The object to remove.
+
+ is .
+
+ if the specified object was removed from the collection.
+
+
+ Gets an enumerator that can be used to iterate through the collection.
+ An enumerator for the collection.
+
+
+ Converts the objects in the collection to the specified type. Calling this method is the same as calling with the second parameter set to , which means that exceptions will not be thrown for items that fail conversion.
+ The type to which items in the collection are being converted.
+ A collection that represents the converted contents of the original collection.
+
+
+ Converts the objects in the collection to the specified type and uses the specified fault tolerance to handle or ignore errors associated with a type not having a conversion mapping.
+ The type to which items in the collection are being converted.
+ A Boolean value that determines how conversion errors are handled.
+
+ If is , conversion errors due to a mapping not being found for the translation result in a failed conversion and exceptions being thrown.
+
+ If is , types that failed to convert due to a mapping not being found for the translation are copied without being converted into the collection being returned.
+ A collection that represents the converted contents of the original collection.
+
+
+ Gets the number of items in the collection.
+ The number of objects in the collection.
+
+
+ Gets or sets the node at the specified index of the collection.
+ The zero-based index in the collection.
+ The at the specified index in the collection. If is greater than or equal to the number of nodes in the collection, the return value is .
+
+
+ Gets a value indicating whether the is read-only.
+
+ if the is read-only; otherwise, .
+
+
+ Represents a user or group account.
+
+
+ Initializes a new instance of the class by using the specified name.
+ The name used to create the object. This parameter cannot be or an empty string.
+
+ is .
+
+ is an empty string.
+
+ -or-
+
+ is too long.
+
+
+ Initializes a new instance of the class by using the specified domain name and account name.
+ The name of the domain. This parameter can be or an empty string. Domain names that are null values are treated like an empty string.
+ The name of the account. This parameter cannot be or an empty string.
+
+ is .
+
+ is an empty string.
+
+ -or-
+
+ is too long.
+
+ -or-
+
+ is too long.
+
+
+ Returns a value that indicates whether this object is equal to a specified object.
+ An object to compare with this object, or .
+
+ if is an object with the same underlying type and value as this object; otherwise, .
+
+
+ Serves as a hash function for the current object. The method is suitable for hashing algorithms and data structures like a hash table.
+ A hash value for the current object.
+
+
+ Returns a value that indicates whether the specified type is a valid translation type for the class.
+ The type being queried for validity to serve as a conversion from . The following target types are valid:
+
+ -
+
+ -
+
+ if is a valid translation type for the class; otherwise .
+
+
+ Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical name representation as the one returned by the property or if they are both .
+ The left operand to use for the equality comparison. This parameter can be .
+ The right operand to use for the equality comparison. This parameter can be .
+
+ if and are equal; otherwise .
+
+
+ Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not.
+ The left operand to use for the inequality comparison. This parameter can be .
+ The right operand to use for the inequality comparison. This parameter can be .
+
+ if and are not equal; otherwise .
+
+
+ Returns the account name, in Domain \ Account format, for the account represented by the object.
+ The account name, in Domain \ Account format.
+
+
+ Translates the account name represented by the object into another -derived type.
+ The target type for the conversion from . The target type must be a type that is considered valid by the method.
+
+ is .
+
+ is not an type.
+ Some or all identity references could not be translated.
+ The source account name is too long.
+
+ -or-
+
+ A Win32 error code was returned.
+ The converted identity.
+
+
+ Returns a string representation of this object.
+ The string representation of this object.
+
+
+ Represents a security identifier (SID) and provides marshaling and comparison operations for SIDs.
+
+
+ Returns the maximum size, in bytes, of the binary representation of the security identifier.
+
+
+ Returns the minimum size, in bytes, of the binary representation of the security identifier.
+
+
+ Initializes a new instance of the class by using a specified binary representation of a security identifier (SID).
+ The byte array that represents the SID.
+ The byte offset to use as the starting index in .
+
+
+ Initializes a new instance of the class by using an integer that represents the binary form of a security identifier (SID).
+ An integer that represents the binary form of a SID.
+
+
+ Initializes a new instance of the class by using the specified well known security identifier (SID) type and domain SID.
+ One of the enumeration values. This value must not be .
+ The domain SID. This value is required for the following values. This parameter is ignored for any other values.
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+ -
+
+
+ Initializes a new instance of the class by using the specified security identifier (SID) in Security Descriptor Definition Language (SDDL) format.
+ SDDL string for the SID used to create the object.
+
+
+ Compares the current object with the specified object.
+ The object to compare with the current object.
+ A signed number indicating the relative values of this instance and .
+
+ Return Value Description- Less than zero This instance is less than .
- Zero This instance is equal to .
- Greater than zero This instance is greater than .
+
+
+ Returns a value that indicates whether this object is equal to a specified object.
+ An object to compare with this object, or .
+
+ if is an object with the same underlying type and value as this object; otherwise, .
+
+
+ Indicates whether the specified object is equal to the current object.
+ The object to compare with the current object.
+
+ if the value of is equal to the value of the current object.
+
+
+ Copies the binary representation of the specified security identifier (SID) represented by the class to a byte array.
+ The byte array to receive the copied SID.
+ The byte offset to use as the starting index in .
+
+
+ Serves as a hash function for the current object. The method is suitable for hashing algorithms and data structures like a hash table.
+ A hash value for the current object.
+
+
+ Returns a value that indicates whether the security identifier (SID) represented by this object is a valid Windows account SID.
+
+ if the SID represented by this object is a valid Windows account SID; otherwise, .
+
+
+ Returns a value that indicates whether the security identifier (SID) represented by this object is from the same domain as the specified SID.
+ The SID to compare with this object.
+
+ if the SID represented by this object is in the same domain as the SID; otherwise, .
+
+
+ Returns a value that indicates whether the specified type is a valid translation type for the class.
+ The type being queried for validity to serve as a conversion from . The following target types are valid:
+
+ -
+
+ -
+
+ if is a valid translation type for the class; otherwise, .
+
+
+ Returns a value that indicates whether the object matches the specified well known security identifier (SID) type.
+ A value to compare with the object.
+
+ if is the SID type for the object; otherwise, .
+
+
+ Compares two objects to determine whether they are equal. They are considered equal if they have the same canonical representation as the one returned by the property or if they are both .
+ The left operand to use for the equality comparison. This parameter can be .
+ The right operand to use for the equality comparison. This parameter can be .
+
+ if and are equal; otherwise, .
+
+
+ Compares two objects to determine whether they are not equal. They are considered not equal if they have different canonical name representations than the one returned by the property or if one of the objects is and the other is not.
+ The left operand to use for the inequality comparison. This parameter can be .
+ The right operand to use for the inequality comparison. This parameter can be .
+
+ if and are not equal; otherwise, .
+
+
+ Returns the security identifier (SID), in Security Descriptor Definition Language (SDDL) format, for the account represented by the object. An example of the SDDL format is S-1-5-9.
+ The SID, in SDDL format, for the account represented by the object.
+
+
+ Translates the account name represented by the object into another -derived type.
+ The target type for the conversion from . The target type must be a type that is considered valid by the method.
+
+ is .
+
+ is not an type.
+ Some or all identity references could not be translated.
+ A Win32 error code was returned.
+ The converted identity.
+
+
+ Returns the account domain security identifier (SID) portion from the SID represented by the object if the SID represents a Windows account SID. If the SID does not represent a Windows account SID, this property returns .
+ The account domain SID portion from the SID represented by the object if the SID represents a Windows account SID; otherwise, it returns .
+
+
+ Returns the length, in bytes, of the security identifier (SID) represented by the object.
+ The length, in bytes, of the SID represented by the object.
+
+
+ Returns an uppercase Security Descriptor Definition Language (SDDL) string for the security identifier (SID) represented by this object.
+ An uppercase SDDL string for the SID represented by the object.
+
+
+ Defines the privileges of the user account associated with the access token.
+
+
+ The user can change the default owner, primary group, or discretionary access control list (DACL) of the token.
+
+
+ The user can change the attributes of the groups in the token.
+
+
+ The user can enable or disable privileges in the token.
+
+
+ The user can adjust the session identifier of the token.
+
+
+ The user has all possible access to the token.
+
+
+ The user can attach a primary token to a process.
+
+
+ The user can duplicate the token.
+
+
+ The user can impersonate a client.
+
+
+ The maximum value that can be assigned for the enumeration.
+
+
+ The user can query the token.
+
+
+ The user can query the source of the token.
+
+
+ The user has standard read rights and the privilege for the token.
+
+
+ The user has standard write rights and the , and privileges for the token.
+
+
+ Defines a set of commonly used security identifiers (SIDs).
+
+
+ Indicates a SID that matches the account administrators group.
+
+
+ Indicates a SID that matches the certificate administrators group.
+
+
+ Indicates a SID that matches the account computer group.
+
+
+ Indicates a SID that matches the account controller group.
+
+
+ Indicates a SID that matches the account domain administrator group.
+
+
+ Indicates a SID that matches the account domain guests group.
+
+
+ Indicates a SID that matches the account domain users group.
+
+
+ Indicates a SID that matches the enterprise administrators group.
+
+
+ Indicates a SID that matches the account guest group.
+
+
+ Indicates a SID that matches the account Kerberos target group.
+
+
+ Indicates a SID that matches the policy administrators group.
+
+
+ Indicates a SID that matches the RAS and IAS server account.
+
+
+ Indicates a SID that matches the schema administrators group.
+
+
+ Indicates a SID for the anonymous account.
+
+
+ Indicates a SID for an authenticated user.
+
+
+ Indicates a SID for a batch process. This SID is added to the process of a token when it logs on as a batch job.
+
+
+ Indicates a SID that matches the account operators account.
+
+
+ Indicates a SID that matches the administrator account.
+
+
+ Indicates a SID that matches the Windows Authorization Access group.
+
+
+ Indicates a SID that matches the backup operators group.
+
+
+ Indicates a SID that matches the domain account.
+
+
+ Indicates a SID that matches the guest account.
+
+
+ Indicates a SID that allows a user to create incoming forest trusts. It is added to the token of users who are a member of the Incoming Forest Trust Builders built-in group in the root domain of the forest.
+
+
+ Indicates a SID that matches the network operators group.
+
+
+ Indicates a SID that matches the group of users that have remote access to monitor the computer.
+
+
+ Indicates a SID that matches the group of users that have remote access to schedule logging of performance counters on this computer.
+
+
+ Indicates a SID that matches the power users group.
+
+
+ Indicates a SID that matches pre-Windows 2000 compatible accounts.
+
+
+ Indicates a SID that matches the print operators group.
+
+
+ Indicates a SID that matches remote desktop users.
+
+
+ Indicates a SID that matches the replicator account.
+
+
+ Indicates a SID that matches the system operators group.
+
+
+ Indicates a SID that matches built-in user accounts.
+
+
+ Indicates a creator group server SID.
+
+
+ Indicates a SID that matches the creator group of an object.
+
+
+ Indicates a creator owner server SID.
+
+
+ Indicates a SID that matches the owner or creator of an object.
+
+
+ Indicates a SID for a dial-up account.
+
+
+ Indicates a SID present when the Microsoft Digest authentication package authenticated the client.
+
+
+ Indicates a SID for an enterprise controller.
+
+
+ Indicates a SID for an interactive account. This SID is added to the process of a token when it logs on interactively.
+
+
+ Indicates a SID that matches a local service.
+
+
+ Indicates a local SID.
+
+
+ Indicates a SID that matches the local system.
+
+
+ Indicates a SID that matches logon IDs.
+
+
+ Indicates the maximum defined SID in the enumeration.
+
+
+ Indicates a SID that matches a network service.
+
+
+ Indicates a SID for a network account. This SID is added to the process of a token when it logs on across a network.
+
+
+ Indicates a SID for the Windows NT authority.
+
+
+ Indicates a SID present when the Microsoft NTLM authentication package authenticated the client.
+
+
+ Indicates a null SID.
+
+
+ Indicates a SID present when the user authenticated across a forest with the selective authentication option enabled. If this SID is present, then cannot be present.
+
+
+ Indicates a proxy SID.
+
+
+ Indicates a SID that matches remote logons.
+
+
+ Indicates a SID for restricted code.
+
+
+ Indicates a SID present when the Secure Channel (SSL/TLS) authentication package authenticated the client.
+
+
+ Indicates a SID for self.
+
+
+ Indicates a SID for a service. This SID is added to the process of a token when it logs on as a service.
+
+
+ Indicates a SID that matches a terminal server account.
+
+
+ Indicates a SID present when the user authenticated from within the forest or across a trust that does not have the selective authentication option enabled. If this SID is present, then cannot be present.
+
+
+ Indicates a SID that matches an account read-only controllers group.
+
+
+ Indicates a SID that matches the application package authority.
+
+
+ Indicates a SID that applies to all app containers.
+
+
+ Indicates a SID that matches the built-in DCOM certification services access group.
+
+
+ Indicates a SID that allows a user to use cryptographic operations. It is added to the token of users who are a member of the CryptoOperators built-in group.
+
+
+ Indicates a SID that matches the distributed COM user group.
+
+
+ Indicates a SID that matches an event log readers group.
+
+
+ Indicates a SID that matches the Internet built-in user group.
+
+
+ Indicates a SID is present in a server that can issue Terminal Server licenses.
+
+
+ Indicates a SID that matches a cacheable principals group.
+
+
+ Indicates a SID for documents library capability for app containers.
+
+
+ Indicates a SID for Windows credentials capability for app containers.
+
+
+ Indicates a SID of Internet client and server capability for app containers.
+
+
+ Indicates a SID of Internet client capability for app containers.
+
+
+ Indicates a SID for music library capability for app containers.
+
+
+ Indicates a SID for pictures library capability for app containers.
+
+
+ Indicates a SID of private network client and server capability for app containers.
+
+
+ Indicates a SID for removable storage capability for app containers.
+
+
+ Indicates a SID for shared user certificates capability for app containers.
+
+
+ Indicates a SID for videos library capability for app containers.
+
+
+ Indicates a SID that matches a console logon group.
+
+
+ Indicates a SID that matches a creator and owner rights group.
+
+
+ Indicates a SID that matches an enterprise wide read-only controllers group.
+
+
+ Indicates a SID that matches a high level of trust label.
+
+
+ Indicates a SID that matches the Internet user group.
+
+
+ Indicates a SID that matches a local logon group.
+
+
+ Indicates a SID that matches an low level of trust label.
+
+
+ Indicates a SID that matches an medium level of trust label.
+
+
+ Indicates a SID that matches the medium plus integrity label.
+
+
+ Indicates a SID that matches a read-only enterprise domain controller.
+
+
+ Indicates a SID that matches a non-cacheable principals group.
+
+
+ Indicates a SID that matches a system label.
+
+
+ Indicates a SID that matches a certificate for the given organization.
+
+
+ Indicates a SID that matches an untrusted label.
+
+
+ Indicates a SID that matches a write restricted code group.
+
+
+ Indicates a SID that matches everyone.
+
+
+ Specifies the type of Windows account used.
+
+
+ An anonymous account.
+
+
+ A Windows guest account.
+
+
+ A standard user account.
+
+
+ A Windows system account.
+
+
+ Specifies common roles to be used with .
+
+
+ Account operators manage the user accounts on a computer or domain.
+
+
+ Administrators have complete and unrestricted access to the computer or domain.
+
+
+ Backup operators can override security restrictions for the sole purpose of backing up or restoring files.
+
+
+ Guests are more restricted than users.
+
+
+ Power users possess most administrative permissions with some restrictions. Thus, power users can run legacy applications, in addition to certified applications.
+
+
+ Print operators can take control of a printer.
+
+
+ Replicators support file replication in a domain.
+
+
+ System operators manage a particular computer.
+
+
+ Users are prevented from making accidental or intentional system-wide changes. Thus, users can run certified applications, but not most legacy applications.
+
+
+ Represents a Windows user.
+
+
+ Identifies the name of the default issuer.
+
+
+ Initializes a new instance of the class for the user represented by the specified Windows account token.
+ The account token for the user on whose behalf the code is running.
+
+ is 0.
+
+ -or-
+
+ is duplicated and invalid for impersonation.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ A Win32 error occurred.
+
+
+ Initializes a new instance of the class for the user represented by the specified Windows account token and the specified authentication type.
+ The account token for the user on whose behalf the code is running.
+ (Informational use only.) The type of authentication used to identify the user.
+
+ is 0.
+
+ -or-
+
+ is duplicated and invalid for impersonation.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ A Win32 error occurred.
+
+
+ Initializes a new instance of the class for the user represented by the specified Windows account token, the specified authentication type, and the specified Windows account type.
+ The account token for the user on whose behalf the code is running.
+ (Informational use only.) The type of authentication used to identify the user.
+ One of the enumeration values.
+
+ is 0.
+
+ -or-
+
+ is duplicated and invalid for impersonation.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ A Win32 error occurred.
+
+
+ Initializes a new instance of the class for the user represented by the specified Windows account token, the specified authentication type, the specified Windows account type, and the specified authentication status.
+ The account token for the user on whose behalf the code is running.
+ (Informational use only.) The type of authentication used to identify the user.
+ One of the enumeration values.
+
+ to indicate that the user is authenticated; otherwise, .
+
+ is 0.
+
+ -or-
+
+ is duplicated and invalid for impersonation.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ A Win32 error occurred.
+
+
+ Initializes a new instance of the class for the user represented by information in a stream.
+ The object containing the account information for the user.
+ An object that indicates the stream characteristics.
+ A cannot be serialized across processes.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ A Win32 error occurred.
+
+
+ Initializes a new instance of the class by using the specified object.
+ The object from which to construct the new instance of .
+
+
+ Initializes a new instance of the class for the user represented by the specified User Principal Name (UPN).
+ The UPN for the user on whose behalf the code is running.
+ Windows returned the Windows NT status code STATUS_ACCESS_DENIED.
+ There is insufficient memory available.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ The computer is not attached to a Windows 2003 or later domain.
+
+ -or-
+
+ The computer is not running Windows 2003 or later.
+
+ -or-
+
+ The user is not a member of the domain the computer is attached to.
+
+
+ Creates a new object that is a copy of the current instance.
+ A copy of the current instance.
+
+
+ Releases all resources used by the .
+
+
+ Releases the unmanaged resources used by the and optionally releases the managed resources.
+
+ to release both managed and unmanaged resources; to release only unmanaged resources.
+
+
+ Returns a object that you can use as a sentinel value in your code to represent an anonymous user. The property value does not represent the built-in anonymous identity used by the Windows operating system.
+ An object that represents an anonymous user.
+
+
+ Returns a object that represents the current Windows user.
+ The caller does not have the correct permissions.
+ An object that represents the current user.
+
+
+ Returns a object that represents the Windows identity for either the thread or the process, depending on the value of the parameter.
+
+ to return the only if the thread is currently impersonating; to return the of the thread if it is impersonating or the of the process if the thread is not currently impersonating.
+ An object that represents a Windows user.
+
+
+ Returns a object that represents the current Windows user, using the specified desired token access level.
+ A bitwise combination of the enumeration values.
+ An object that represents the current user.
+
+
+ Runs the specified action as the impersonated Windows identity. Instead of using an impersonated method call and running your function in , you can use and provide your function directly as a parameter.
+ The SafeAccessTokenHandle of the impersonated Windows identity.
+ The System.Action to run.
+
+
+ Runs the specified function as the impersonated Windows identity. Instead of using an impersonated method call and running your function in , you can use and provide your function directly as a parameter.
+ The SafeAccessTokenHandle of the impersonated Windows identity.
+ The System.Func to run.
+ The type of object used by and returned by the function.
+ The result of the function.
+
+
+ Runs the specified asynchronous action as the impersonated Windows identity.
+ The handle of the impersonated Windows identity.
+ The function to run.
+ A task that represents the asynchronous operation of the provided .
+
+
+ Runs the specified asynchronous action as the impersonated Windows identity.
+ The handle of the impersonated Windows identity.
+ The function to run.
+ The type of the object to return.
+ A task that represents the asynchronous operation of .
+
+
+ Implements the interface and is called back by the deserialization event when deserialization is complete.
+ The source of the deserialization event.
+
+
+ Sets the object with the logical context information needed to recreate an instance of this execution context.
+ An object containing the information required to serialize the .
+ An object containing the source and destination of the serialized stream associated with the .
+
+
+ Gets this for this instance.
+ Returns a .
+
+
+ Gets the type of authentication used to identify the user.
+ Windows returned the Windows NT status code STATUS_ACCESS_DENIED.
+ There is insufficient memory available.
+ The caller does not have the correct permissions.
+
+ -or-
+
+ The computer is not attached to a Windows 2003 or later domain.
+
+ -or-
+
+ The computer is not running Windows 2003 or later.
+
+ -or-
+
+ The user is not a member of the domain the computer is attached to.
+ The type of authentication used to identify the user.
+
+
+ Gets all claims for the user represented by this Windows identity.
+ A collection of claims for this object.
+
+
+ Gets claims that have the property key.
+ A collection of claims that have the property key.
+
+
+ Gets the groups the current Windows user belongs to.
+ An object representing the groups the current Windows user belongs to.
+
+
+ Gets the impersonation level for the user.
+ One of the enumeration values that specifies the impersonation level.
+
+
+ Gets a value that indicates whether the user account is identified as an anonymous account by the system.
+
+ if the user account is an anonymous account; otherwise, .
+
+
+ Gets a value indicating whether the user has been authenticated by Windows.
+
+ if the user was authenticated; otherwise, .
+
+
+ Gets a value indicating whether the user account is identified as a account by the system.
+
+ if the user account is a account; otherwise, .
+
+
+ Gets a value indicating whether the user account is identified as a account by the system.
+
+ if the user account is a account; otherwise, .
+
+
+ Gets the user's Windows logon name.
+ The Windows logon name of the user on whose behalf the code is being run.
+
+
+ Gets the security identifier (SID) for the token owner.
+ An object for the token owner.
+
+
+ Gets the Windows account token for the user.
+ The handle of the access token associated with the current execution thread.
+
+
+ Gets the security identifier (SID) for the user.
+ An object for the user.
+
+
+ Gets claims that have the property key.
+ A collection of claims that have the property key.
+
+
+ Enables code to check the Windows group membership of a Windows user.
+
+
+ Initializes a new instance of the class by using the specified object.
+ The object from which to construct the new instance of .
+
+ is .
+
+
+ Determines whether the current principal belongs to the Windows user group with the specified relative identifier (RID).
+ The RID of the Windows user group in which to check for the principal's membership status.
+
+ if the current principal is a member of the specified Windows user group, that is, in a particular role; otherwise, .
+
+
+ Determines whether the current principal belongs to the Windows user group with the specified security identifier (SID).
+ A that uniquely identifies a Windows user group.
+
+ is .
+ Windows returned a Win32 error.
+
+ if the current principal is a member of the specified Windows user group; otherwise, .
+
+
+ Determines whether the current principal belongs to the Windows user group with the specified .
+ One of the values.
+
+ is not a valid value.
+
+ if the current principal is a member of the specified Windows user group; otherwise, .
+
+
+ Determines whether the current principal belongs to the Windows user group with the specified name.
+ The name of the Windows user group for which to check membership.
+
+ if the current principal is a member of the specified Windows user group; otherwise, .
+
+
+ Gets all Windows device claims from this principal.
+ A collection of all Windows device claims from this principal.
+
+
+ Gets the identity of the current principal.
+ The object of the current principal.
+
+
+ Gets all Windows user claims from this principal.
+ A collection of all Windows user claims from this principal.
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta
new file mode 100644
index 00000000..455ef1ae
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/lib/netstandard2.0/System.Security.Principal.Windows.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 009f442a9b8f4bc41b14f79f698519f8
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/useSharedDesignerContext.txt b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/useSharedDesignerContext.txt
new file mode 100644
index 00000000..e69de29b
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/useSharedDesignerContext.txt.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/useSharedDesignerContext.txt.meta
new file mode 100644
index 00000000..592d29d7
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/useSharedDesignerContext.txt.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 1e9a6d4cb86f2de49a1a1684d391497a
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/version.txt b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/version.txt
new file mode 100644
index 00000000..0a6d216f
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/version.txt
@@ -0,0 +1 @@
+cf258a14b70ad9069470a108f13765e0e5988f51
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/version.txt.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/version.txt.meta
new file mode 100644
index 00000000..0dd2e046
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/System.Security.Principal.Windows.5.0.0/version.txt.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: b89fcc3314d444842b4951690519c8c4
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626.meta
new file mode 100644
index 00000000..88c1a9c4
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: dc42c8a99e555674b8ac33be9a8ac947
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/.signature.p7s b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/.signature.p7s
new file mode 100644
index 00000000..abf3ed12
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/.signature.p7s differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/README_NUGET.md b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/README_NUGET.md
new file mode 100644
index 00000000..ea1c0204
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/README_NUGET.md
@@ -0,0 +1,19 @@
+# Velopack
+Velopack is an installation and auto-update framework for cross-platform applications. It's opinionated, extremely easy to use with zero config needed. With just one command you can be up and running with an installable application, and it's lightning fast for your users, too.
+
+## Features
+
+- 😍 **Zero config** – Velopack takes your compiler output and generates an installer, updates, delta packages, and self-updating portable package in just one command.
+- 🎯 **Cross platform** – Velopack supports building packages for **Windows**, **OSX**, and **Linux**, so you can use one solution for every target.
+- 🚀 **Automatic migrations** - If you are coming from other popular frameworks (eg. [Squirrel](https://github.com/Squirrel/Squirrel.Windows)), Velopack can automatically migrate your application.
+- ⚡️ **Lightning fast** – Velopack is written in Rust for native performance. Delta packages mean your user only downloads what's changed between versions.
+- 📔 **Language agnostic** - With support for C#, C++, JS, Rust and more. Use a familiar API for updates no matter what language your project is.
+
+## Documentation
+- 📖 [Read the docs](https://docs.velopack.io/)
+- ⚡ [Quick start guides](https://docs.velopack.io/category/quick-start)
+- 🕶️ [View example apps](https://docs.velopack.io/category/sample-apps)
+
+## Community
+- ❓ Ask questions, get support, or discuss ideas on [our Discord server](https://discord.gg/CjrCrNzd3F)
+- 🗣️ Report bugs on [GitHub Issues](https://github.com/velopack/velopack/issues)
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/README_NUGET.md.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/README_NUGET.md.meta
new file mode 100644
index 00000000..e53036e4
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/README_NUGET.md.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 3e327de43fea92d4495b860ed219fdd2
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack.nuspec b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack.nuspec
new file mode 100644
index 00000000..48f84072
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack.nuspec
@@ -0,0 +1,50 @@
+
+
+
+ Velopack
+ 0.0.626
+ Velopack
+ Velopack Ltd,Caelan Sayler,Kevin Bost
+ MIT
+ https://licenses.nuget.org/MIT
+ Velopack_200.png
+ README_NUGET.md
+ https://github.com/velopack/velopack
+ Installer and automatic update framework for cross-platform desktop applications
+ Copyright © Velopack Ltd. All rights reserved.
+ windows macos osx updater dotnet installer desktop squirrel velopack autoupdate automatic-updates
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack.nuspec.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack.nuspec.meta
new file mode 100644
index 00000000..6f2ff9bb
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack.nuspec.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 372aa5d29b19f64459462978e4fd2946
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack_200.png b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack_200.png
new file mode 100644
index 00000000..c278b606
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack_200.png differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack_200.png.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack_200.png.meta
new file mode 100644
index 00000000..3e675292
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/Velopack_200.png.meta
@@ -0,0 +1,114 @@
+fileFormatVersion: 2
+guid: 2975cd59e03838a40b9e8063daf02788
+TextureImporter:
+ internalIDToNameTable: []
+ externalObjects: {}
+ serializedVersion: 13
+ mipmaps:
+ mipMapMode: 0
+ enableMipMap: 1
+ sRGBTexture: 1
+ linearTexture: 0
+ fadeOut: 0
+ borderMipMap: 0
+ mipMapsPreserveCoverage: 0
+ alphaTestReferenceValue: 0.5
+ mipMapFadeDistanceStart: 1
+ mipMapFadeDistanceEnd: 3
+ bumpmap:
+ convertToNormalMap: 0
+ externalNormalMap: 0
+ heightScale: 0.25
+ normalMapFilter: 0
+ flipGreenChannel: 0
+ isReadable: 0
+ streamingMipmaps: 0
+ streamingMipmapsPriority: 0
+ vTOnly: 0
+ ignoreMipmapLimit: 0
+ grayScaleToAlpha: 0
+ generateCubemap: 6
+ cubemapConvolution: 0
+ seamlessCubemap: 0
+ textureFormat: 1
+ maxTextureSize: 2048
+ textureSettings:
+ serializedVersion: 2
+ filterMode: 1
+ aniso: 1
+ mipBias: 0
+ wrapU: 0
+ wrapV: 0
+ wrapW: 0
+ nPOTScale: 1
+ lightmap: 0
+ compressionQuality: 50
+ spriteMode: 0
+ spriteExtrude: 1
+ spriteMeshType: 1
+ alignment: 0
+ spritePivot: {x: 0.5, y: 0.5}
+ spritePixelsToUnits: 100
+ spriteBorder: {x: 0, y: 0, z: 0, w: 0}
+ spriteGenerateFallbackPhysicsShape: 1
+ alphaUsage: 1
+ alphaIsTransparency: 0
+ spriteTessellationDetail: -1
+ textureType: 0
+ textureShape: 1
+ singleChannelComponent: 0
+ flipbookRows: 1
+ flipbookColumns: 1
+ maxTextureSizeSet: 0
+ compressionQualitySet: 0
+ textureFormatSet: 0
+ ignorePngGamma: 0
+ applyGammaDecoding: 0
+ swizzle: 50462976
+ cookieLightType: 0
+ platformSettings:
+ - serializedVersion: 3
+ buildTarget: DefaultTexturePlatform
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ - serializedVersion: 3
+ buildTarget: Standalone
+ maxTextureSize: 2048
+ resizeAlgorithm: 0
+ textureFormat: -1
+ textureCompression: 1
+ compressionQuality: 50
+ crunchedCompression: 0
+ allowsAlphaSplitting: 0
+ overridden: 0
+ ignorePlatformSupport: 0
+ androidETC2FallbackOverride: 0
+ forceMaximumCompressionQuality_BC6H_BC7: 0
+ spriteSheet:
+ serializedVersion: 2
+ sprites: []
+ outline: []
+ physicsShape: []
+ bones: []
+ spriteID:
+ internalID: 0
+ vertices: []
+ indices:
+ edges: []
+ weights: []
+ secondaryTextures: []
+ nameFileIdTable: {}
+ mipmapLimitGroupName:
+ pSDRemoveMatte: 0
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib.meta
new file mode 100644
index 00000000..ab9d3cc3
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 7eba63f4c93571f49868cac09ac3f97c
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0.meta
new file mode 100644
index 00000000..0ed13221
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0.meta
@@ -0,0 +1,8 @@
+fileFormatVersion: 2
+guid: 46ae2d344f0573f48b50a80b7cbd8a07
+folderAsset: yes
+DefaultImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.dll b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.dll
new file mode 100644
index 00000000..6e37d429
Binary files /dev/null and b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.dll differ
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.dll.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.dll.meta
new file mode 100644
index 00000000..e7837e33
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.dll.meta
@@ -0,0 +1,35 @@
+fileFormatVersion: 2
+guid: bf9f2e748d83347458f57c1532e93160
+labels:
+- NuGetForUnity
+PluginImporter:
+ externalObjects: {}
+ serializedVersion: 2
+ iconMap: {}
+ executionOrder: {}
+ defineConstraints: []
+ isPreloaded: 0
+ isOverridable: 1
+ isExplicitlyReferenced: 0
+ validateReferences: 1
+ platformData:
+ - first:
+ Any:
+ second:
+ enabled: 1
+ settings: {}
+ - first:
+ Editor: Editor
+ second:
+ enabled: 0
+ settings:
+ DefaultValueInitialized: true
+ - first:
+ Windows Store Apps: WindowsStoreApps
+ second:
+ enabled: 0
+ settings:
+ CPU: AnyCPU
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.xml b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.xml
new file mode 100644
index 00000000..6eede6aa
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.xml
@@ -0,0 +1,3405 @@
+
+
+
+ Velopack
+
+
+
+
+ Creates a binary patch (in bsdiff format) that can be used
+ (by ) to transform into .
+
+ The original binary data.
+ The new binary data.
+ A to which the patch will be written.
+
+
+
+ Applies a binary patch (in bsdiff format) to the data in
+ and writes the results of patching to .
+
+ A containing the input data.
+ A func that can open a positioned at the start of the patch data.
+ This stream must support reading and seeking, and must allow multiple streams on
+ the patch to be opened concurrently.
+ A to which the patched data is written.
+
+
+
+ A that wraps another stream. One major feature of is that it does not dispose the
+ underlying stream when it is disposed if Ownership.None is used; this is useful when using classes such as and
+ that take ownership of the stream passed to their constructors.
+
+ See WrappingStream Implementation.
+
+
+
+ Initializes a new instance of the class.
+
+ The wrapped stream.
+ Use Owns if the wrapped stream should be disposed when this stream is disposed.
+
+
+
+ Gets a value indicating whether the current stream supports reading.
+
+ true if the stream supports reading; otherwise, false.
+
+
+
+ Gets a value indicating whether the current stream supports seeking.
+
+ true if the stream supports seeking; otherwise, false.
+
+
+
+ Gets a value indicating whether the current stream supports writing.
+
+ true if the stream supports writing; otherwise, false.
+
+
+
+ Gets the length in bytes of the stream.
+
+
+
+
+ Gets or sets the position within the current stream.
+
+
+
+
+ Begins an asynchronous read operation.
+
+
+
+
+ Begins an asynchronous write operation.
+
+
+
+
+ Waits for the pending asynchronous read to complete.
+
+
+
+
+ Ends an asynchronous write operation.
+
+
+
+
+ Clears all buffers for this stream and causes any buffered data to be written to the underlying device.
+
+
+
+
+ Reads a sequence of bytes from the current stream and advances the position
+ within the stream by the number of bytes read.
+
+
+
+
+ Reads a byte from the stream and advances the position within the stream by one byte, or returns -1 if at the end of the stream.
+
+
+
+
+ Sets the position within the current stream.
+
+ A byte offset relative to the parameter.
+ A value of type indicating the reference point used to obtain the new position.
+ The new position within the current stream.
+
+
+
+ Sets the length of the current stream.
+
+ The desired length of the current stream in bytes.
+
+
+
+ Writes a sequence of bytes to the current stream and advances the current position
+ within this stream by the number of bytes written.
+
+
+
+
+ Writes a byte to the current position in the stream and advances the position within the stream by one byte.
+
+
+
+
+ Gets the wrapped stream.
+
+ The wrapped stream.
+
+
+
+ Releases the unmanaged resources used by the and optionally releases the managed resources.
+
+ true to release both managed and unmanaged resources; false to release only unmanaged resources.
+
+
+
+ Indicates whether an object takes ownership of an item.
+
+
+
+
+ The object does not own this item.
+
+
+
+
+ The object owns this item, and is responsible for releasing it.
+
+
+
+
+ Provides helper methods for working with .
+
+
+
+
+ Reads exactly bytes from .
+
+ The stream to read from.
+ The count of bytes to read.
+ A new byte array containing the data read from the stream.
+
+
+
+ Reads exactly bytes from into
+ , starting at the byte given by .
+
+ The stream to read from.
+ The buffer to read data into.
+ The offset within the buffer at which data is first written.
+ The count of bytes to read.
+
+
+
+ Create a BZip2Stream
+
+ The stream to read from
+ Compression Mode
+ Decompress Concatenated
+
+
+
+ Consumes two bytes to test if there is a BZip2 header
+
+
+
+
+
+ An input stream that decompresses from the BZip2 format (with the file
+ header chars) to be read as any other stream.
+
+ @author Keiron Liddle
+
+ NB: note this class has been modified to read the leading BZ from the
+ start of the BZIP2 stream to make it compatible with other PGP programs.
+
+
+ An output stream that compresses into the BZip2 format (with the file
+ header chars) into another stream.
+
+ @author Keiron Liddle
+
+ TODO: Update to BZip2 1.0.1
+ NB: note this class has been modified to add a leading BZ to the
+ start of the BZIP2 stream to make it compatible with other PGP programs.
+
+
+
+ modified by Oliver Merkel, 010128
+
+
+
+ Base class for both the compress and decompress classes.
+ Holds common arrays, and static data.
+
+ @author Keiron Liddle
+
+
+ A simple class the hold and calculate the CRC for sanity checking
+ of the data.
+
+ @author Keiron Liddle
+
+
+
+ Represents an error that occurs when a package does not match it's expected SHA checksum
+
+
+
+
+ The filename of the package which failed validation
+
+
+
+
+
+
+
+
+
+
+ The ApplyDelta function use the specified delta and source files to create a new copy of the target file.
+
+ Either DELTA_FLAG_NONE or DELTA_APPLY_FLAG_ALLOW_PA19.
+ The name of the source file to which the delta is to be applied.
+ The name of the delta to be applied to the source file.
+ The name of the target file that is to be created.
+
+ Returns TRUE on success or FALSE otherwise.
+
+
+ http://msdn.microsoft.com/library/bb417345.aspx#applydeltaaw
+
+
+
+
+ The CreateDelta function creates a delta from the specified source and target files and write the output delta to the designated file name.
+
+ The file type set used for Create.
+ The file type set used for Create.
+ The file type set used for Create.
+ The file type set used for Create.
+ The name of the target against which the source is compared.
+ Reserved. Pass NULL.
+ Reserved. Pass NULL.
+ Reserved. Pass a DELTA_INPUT structure with lpStart set to NULL and uSize set to 0.
+ The time stamp set on the target file after delta Apply. If NULL, the timestamp of the target file during delta Create will be used.
+ ALG_ID of the algorithm to be used to generate the target signature.
+ The name of the delta file to be created.
+
+ Returns TRUE on success or FALSE otherwise.
+
+
+ http://msdn.microsoft.com/library/bb417345.aspx#createdeltaaw
+
+
+
+ No signature.
+
+
+ 32-bit CRC defined in msdelta.dll.
+
+
+
+ http://msdn.microsoft.com/library/bb417345.aspx#deltaflagtypeflags
+
+
+
+ Indicates no special handling.
+
+
+ Allow MSDelta to apply deltas created using PatchAPI.
+
+
+
+ http://msdn.microsoft.com/library/bb417345.aspx#filetypesets
+
+
+
+
+ File type set that includes I386, IA64 and AMD64 Portable Executable (PE) files. Others are treated as raw.
+
+
+
+
+ http://msdn.microsoft.com/library/bb417345.aspx#deltaflagtypeflags
+
+
+
+ Indicates no special handling.
+
+
+ Allow the source, target and delta files to exceed the default size limit.
+
+
+
+ http://msdn.microsoft.com/library/bb417345.aspx#deltainputstructure
+
+
+
+ Memory address non-editable input buffer.
+
+
+ Size of the memory buffer in bytes.
+
+
+
+ Defines whether MSDelta is allowed to edit the input buffer. If you make the input editable, the buffer will
+ be zeroed at function return. However this will cause most MSDelta functions to use less memory.
+
+
+
+
+ An interface describing where Velopack can find key folders and files.
+
+
+
+ The unique application Id. This is used in various app paths.
+
+
+
+ The root directory of the application. On Windows, this folder contains all
+ the application files, but that may not be the case on other operating systems.
+
+
+
+ The directory in which nupkg files are stored for this application.
+
+
+ The directory in which versioned application files are stored.
+
+
+ The temporary directory for this application.
+
+
+ The path to the current Update.exe or similar on other operating systems.
+
+
+ The currently installed version of the application, or null if the app is not installed.
+
+
+ The path from to this executable.
+
+
+ The release channel this package was built for.
+
+
+
+ A flag indicating if this is a portable build, and that the settings should be self-contained in the package.
+ On Windows, this is true for portable builds, and false for non-portable builds which were installed by Setup.exe
+ On OSX and Linux, this is always false, because settings and application files should be stored in the user's
+ home directory.
+
+
+
+
+ Finds .nupkg files in the PackagesDir and returns a list of ReleaseEntryName objects.
+
+
+
+
+ Finds latest .nupkg file in the PackagesDir or null if not found.
+
+
+
+
+ Unique identifier for this user which is used to calculate whether this user is eligible for
+ staged roll outs.
+
+
+
+
+ The default for OSX. All application files will remain in the '.app'.
+ All additional files (log, etc) will be placed in a temporary directory.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ /var/tmp/{velopack}/{appid}, for storing app specific files which need to be preserved.
+
+
+ A pointer to /var/tmp/{velopack}, a location on linux which is semi-persistent.
+
+
+ File path of the .AppImage which mounted and ran this application.
+
+
+
+ Creates a new and auto-detects the
+ app information from metadata embedded in the .app.
+
+
+
+
+ The default for OSX. All application files will remain in the '.app'.
+ All additional files (log, etc) will be placed in a temporary directory.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Creates a new and auto-detects the
+ app information from metadata embedded in the .app.
+
+
+
+
+ Provides a mock / test implementation of . This can be used to verify that
+ your application is able to find and prepare updates from your chosen update source without actually
+ having an installed application. This could be used in a CI/CD pipeline, or unit tests etc.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ A base class describing where Velopack can find key folders and files.
+
+
+
+
+ Auto-detect the platform from the current operating system.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ The log interface to use for diagnostic messages.
+
+
+
+
+
+
+
+
+
+
+
+
+ Given a base dir and a directory name, will create a new sub directory of that name.
+ Will return null if baseDir is null, or if baseDir does not exist.
+
+
+
+
+
+
+
+ An interface describing where Velopack can find key folders and files.
+
+
+
+
+ Get the file path that should be used for storing in the local
+
+
+
+
+
+ An implementation for Windows which uses the default paths.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Internal use only. Auto detect app details from the specified EXE path.
+
+
+
+
+ Converts a uri to a path. Only used for local paths.
+
+
+
+
+ Describes the requested release notes text format.
+
+
+
+ The original markdown release notes.
+
+
+ Release notes translated into HTML.
+
+
+
+ Represents the information that can be parsed from a release entry filename.
+
+
+
+ The package Id.
+
+
+ The package version.
+
+
+ Whether this is a delta (patch) package, or a full update package.
+
+
+
+ Create a new ReleaseEntryName from the given package name, version, delta status, and runtime identifier.
+
+
+
+
+ Takes a filename such as 'My-Cool3-App-1.0.1-build.23-full.nupkg' and separates it into
+ it's name and version (eg. 'My-Cool3-App', and '1.0.1-build.23'). Returns null values if
+ the filename can not be parsed.
+
+
+
+
+ Generate the file name which would represent this ReleaseEntryName.
+
+
+
+
+ Represents a Velopack release, as described in a RELEASES file - usually also with an
+ accompanying package containing the files needed to apply the release.
+
+
+
+ The release identity - including id, version and so forth. *
+
+
+ The name or Id of the package containing this release.
+
+
+ The version of this release.
+
+
+ Whether this package represents a full update, or a delta update.
+
+
+ The SHA1 checksum of the update package containing this release.
+
+
+ If the release corresponds to a remote http location, this will be the base url.
+
+
+ The http url query (if applicable).
+
+
+ The size in bytes of the update package containing this release.
+
+
+
+ The percentage of users this package has been released to. This release
+ may or may not be applied if the current user is not in the staging group.
+
+
+
+ The filename of the update package containing this release.
+
+
+ The unparsed text used to construct this release.
+
+
+
+ Create a new instance of .
+
+
+
+
+ Parses an string entry from a RELEASES file and returns a .
+
+
+
+
+ Checks if the current user is eligible for the current staging percentage.
+
+
+
+
+ Parse the contents of a RELEASES file into a list of 's.
+
+
+
+
+ Parse the contents of a RELEASES file into a list of 's,
+ with any staging-ineligible releases removed.
+
+
+
+
+ Write a list of 's to a stream
+
+
+
+
+ Write a list of 's to a local file
+
+
+
+
+ Generates a from a local update package file (such as a nupkg).
+
+
+
+
+ Generates a from a local update package file (such as a nupkg).
+
+
+
+
+ Generates a list of 's from a local directory containing
+ package files. Also writes/updates a RELEASES file in the specified directory
+ to match the packages the are currently present.
+
+ The list of packages in the directory
+
+
+
+
+
+
+
+
+
+ A Version class that also supports a single integer (major only)
+
+
+
+
+ Base class to provide some shared implementation between sources which download releases from a Git repository.
+
+
+
+
+ The URL of the repository to download releases from.
+
+
+
+
+ If true, the latest upcoming/prerelease release will be downloaded. If false, the latest
+ stable release will be downloaded.
+
+
+
+
+ The file downloader used to perform HTTP requests.
+
+
+
+
+ The GitLab access token to use with the request to download releases.
+
+
+
+
+ The Bearer token used in the request.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Retrieves a list of from the current repository.
+
+
+
+
+ Given a and an asset filename (eg. 'RELEASES') this
+ function will return either or
+ , depending whether an access token is available
+ or not. Throws if the specified release has no matching assets.
+
+
+
+
+ Provides a wrapper around which also contains a Git Release.
+
+
+
+ The Github release which contains this release package.
+
+
+
+
+
+ Describes a Gitea release, including attached assets.
+
+
+ The name of this release.
+
+
+ True if this release is a prerelease.
+
+
+ The date which this release was published publicly.
+
+
+ A list of assets (files) uploaded to this release.
+
+
+ Describes a asset (file) uploaded to a Gitea release.
+
+
+
+ The asset URL for this release asset. Requests to this URL will use API
+ quota and return JSON unless the 'Accept' header is "application/octet-stream".
+
+
+
+
+ The browser URL for this release asset. This does not use API quota,
+ however this URL only works for public repositories. If downloading
+ assets from a private repository, the property must
+ be used with an appropriate access token.
+
+
+
+ The name of this release asset.
+
+
+
+ Retrieves available releases from a Gitea repository.
+
+
+
+
+
+ The URL of the Gitea repository to download releases from
+ (e.g. https://Gitea.com/myuser/myrepo)
+
+
+ The Gitea access token to use with the request to download releases.
+ If left empty, the Gitea rate limit for unauthenticated requests allows
+ for up to 60 requests per hour, limited by IP address.
+
+
+ If true, pre-releases will be also be searched / downloaded. If false, only
+ stable releases will be considered.
+
+
+ The file downloader used to perform HTTP requests.
+
+
+
+
+ The authorization token used in the request.
+ Overwrite it to token
+
+
+
+
+
+
+
+
+
+
+ Given a repository URL (e.g. https://Gitea.com/myuser/myrepo) this function
+ returns the API base for performing requests. (eg. "https://api.Gitea.com/"
+ or http://internal.Gitea.server.local/api/v1)
+
+
+
+
+
+ Describes a GitHub release, including attached assets.
+
+
+ The name of this release.
+
+
+ True if this release is a prerelease.
+
+
+ The date which this release was published publicly.
+
+
+ A list of assets (files) uploaded to this release.
+
+
+ Describes a asset (file) uploaded to a GitHub release.
+
+
+
+ The asset URL for this release asset. Requests to this URL will use API
+ quota and return JSON unless the 'Accept' header is "application/octet-stream".
+
+
+
+
+ The browser URL for this release asset. This does not use API quota,
+ however this URL only works for public repositories. If downloading
+ assets from a private repository, the property must
+ be used with an appropriate access token.
+
+
+
+ The name of this release asset.
+
+
+ The mime type of this release asset (as detected by GitHub).
+
+
+
+ Retrieves available releases from a GitHub repository.
+
+
+
+
+
+ The URL of the GitHub repository to download releases from
+ (e.g. https://github.com/myuser/myrepo)
+
+
+ The GitHub access token to use with the request to download releases.
+ If left empty, the GitHub rate limit for unauthenticated requests allows
+ for up to 60 requests per hour, limited by IP address.
+
+
+ If true, pre-releases will be also be searched / downloaded. If false, only
+ stable releases will be considered.
+
+
+ The file downloader used to perform HTTP requests.
+
+
+
+
+
+
+
+
+
+
+ Given a repository URL (e.g. https://github.com/myuser/myrepo) this function
+ returns the API base for performing requests. (eg. "https://api.github.com/"
+ or http://internal.github.server.local/api/v3)
+
+
+
+
+
+
+ Describes a Gitlab release, plus any assets that are attached.
+
+
+
+
+ The name of the release.
+
+
+
+
+ True if this is intended for an upcoming release.
+
+
+
+
+ The date which this release was published publicly.
+
+
+
+
+ A container for the assets (files) uploaded to this release.
+
+
+
+
+ Describes a container for the assets attached to a release.
+
+
+
+
+ The amount of assets linked to the release.
+
+
+
+
+ A list of asset (file) links.
+
+
+
+
+ Describes a container for the links of assets attached to a release.
+
+
+
+
+ Name of the asset (file) linked.
+
+
+
+
+ The url for the asset. This make use of the Gitlab API.
+
+
+
+
+ A direct url to the asset, via a traditional URl.
+ As a posed to using the API.
+ This links directly to the raw asset (file).
+
+
+
+
+ The category type that the asset is listed under.
+ Options: 'Package', 'Image', 'Runbook', 'Other'
+
+
+
+
+ Retrieves available releases from a GitLab repository. This class only
+ downloads assets from the very latest GitLab release.
+
+
+
+
+
+ The URL of the GitLab repository to download releases from
+ (e.g. https://gitlab.com/api/v4/projects/ProjectId)
+
+
+ The GitLab access token to use with the request to download releases.
+
+
+ If true, the latest upcoming release will be downloaded. If false, the latest
+ stable release will be downloaded.
+
+
+ The file downloader used to perform HTTP requests.
+
+
+
+
+ Given a and an asset filename (eg. 'RELEASES') this
+ function will return either or
+ , depending whether an access token is available
+ or not. Throws if the specified release has no matching assets.
+
+
+
+
+ Retrieves a list of from the current repository.
+
+
+
+
+
+
+
+ The User-Agent sent with requests
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Asynchronously downloads a remote url to the specified destination stream while
+ providing progress updates.
+
+
+
+
+ Creates a new with default settings, used for
+ new 's. Override this function to add client certificates,
+ proxy configurations, cookies, or change other http behaviors.
+
+
+
+
+ Creates a new for every request.
+
+
+
+
+ A simple abstractable file downloader
+
+
+
+
+ Downloads a remote file to the specified local path
+
+ The url which will be downloaded.
+
+ The local path where the file will be stored
+ If a file exists at this path, it will be overwritten.
+
+ A delegate for reporting download progress, with expected values from 0-100.
+
+
+ Text to be sent in the 'Authorization' header of the request.
+
+
+ Text to be sent in the 'Accept' header of the request.
+
+ Optional token to cancel the request.
+
+
+
+ Returns a byte array containing the contents of the file at the specified url
+
+
+
+
+ Returns a string containing the contents of the specified url
+
+
+
+
+ Abstraction for finding and downloading updates from a package source / repository.
+ An implementation may copy a file from a local repository, download from a web address,
+ or even use third party services and parse proprietary data to produce a package feed.
+
+
+
+
+ Retrieve the list of available remote releases from the package source. These releases
+ can subsequently be downloaded with .
+
+ Release channel to filter packages by. Can be null, which is the
+ default channel for this operating system.
+ A persistent user-id, used for calculating whether a specific
+ release should be available to this user or not. (eg, for the purposes of rolling out
+ an update to only a small portion of users at a time).
+ The latest / current local release. If specified,
+ metadata from this package may be provided to the remote server (such as package id,
+ or cpu architecture) to ensure that the correct package is downloaded for this user.
+
+ The logger to use for any diagnostic messages.
+ An array of objects that are available for download
+ and are applicable to this user.
+
+
+
+ Download the specified to the provided local file path.
+
+ The release to download.
+ The path on the local disk to store the file. If this file exists,
+ it will be overwritten.
+ This delegate will be executed with values from 0-100 as the
+ download is being processed.
+ The logger to use for any diagnostic messages.
+ A token to use to cancel the request.
+
+
+
+ Retrieves available updates from a local or network-attached disk. The directory
+ must contain one or more valid packages, as well as a 'releases.{channel}.json' index file.
+
+
+
+ The local directory containing packages to update to.
+
+
+
+
+
+
+
+
+
+
+
+
+ Retrieves updates from a static file host or other web server.
+ Will perform a request for '{baseUri}/RELEASES' to locate the available packages,
+ and provides query parameters to specify the name of the requested package.
+
+
+
+ The URL of the server hosting packages to update to.
+
+
+ The to be used for performing http requests.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Retrieves updates from the hosted Velopack service.
+
+
+
+
+
+
+ The URL of the server hosting packages to update to.
+
+
+ The to be used for performing http requests.
+
+
+
+
+
+
+
+
+
+ A static helper class to assist in running Update.exe CLI commands. You probably should not invoke this directly,
+ instead you should use the relevant methods on . For example:
+ , or .
+
+
+
+
+ Runs Update.exe in the current working directory with the 'start' command which will simply start the application.
+ Combined with the `waitForExit` parameter, this can be used to gracefully restart the application.
+
+ If true, Update.exe will wait for the current process to exit before re-starting the application.
+ The locator to use to find the path to Update.exe and the packages directory.
+ The arguments to pass to the application when it is restarted.
+ The logger to use for diagnostic messages
+
+
+
+ Runs Update.exe in the current working directory to apply updates, optionally restarting the application.
+
+ If true, no dialogs will be shown during the update process. This could result
+ in an update failing to install, such as when we need to ask the user for permission to install
+ a new framework dependency.
+ If true, restarts the application after updates are applied (or if they failed)
+ The locator to use to find the path to Update.exe and the packages directory.
+ The update package you wish to apply, can be left null.
+ The arguments to pass to the application when it is restarted.
+ The logger to use for diagnostic messages
+ Thrown if Update.exe does not initialize properly.
+
+
+
+
+
+
+ Holds information about the current version and pending updates, such as how many there are, and access to release notes.
+
+
+
+
+ The available version that we are updating to.
+
+
+
+
+ True if the update is a version downgrade or lateral move (such as when switching channels to the same version number).
+ In this case, only full updates are allowed, and any local packages on disk newer than the downloaded version will be
+ deleted.
+
+
+
+
+ The base release that we are to apply delta updates from. If null, we can try doing a delta update from
+ the currently installed version.
+
+
+
+
+ The list of delta versions between the current version and .
+ These will be applied in order.
+
+
+
+
+ Create a new instance of
+
+
+
+
+ Implicitly convert an to a .
+
+
+
+
+ Provides functionality for checking for updates, downloading updates, and applying updates to the current application.
+
+
+
+ The currently installed application Id. This would be what you set when you create your release.
+
+
+ True if this application is currently installed, and is able to download/check for updates.
+
+
+
+
+
+ OBSOLETE: Use instead.
+
+
+ Returns a VelopackAsset if there is a local update prepared that requires a call to to be applied.
+
+
+ The currently installed app version when you created your release. Null if this is not a currently installed app.
+
+
+ The update source to use when checking for/downloading updates.
+
+
+ The logger to use for diagnostic messages.
+
+
+ The locator to use when searching for local file paths.
+
+
+ The channel to use when searching for packages.
+
+
+ The default channel to search for packages in, if one was not provided by the user.
+
+
+ If true, an explicit channel was provided by the user, and it's different than the default channel.
+
+
+ If true, UpdateManager should return the latest asset in the feed, even if that version is lower than the current version.
+
+
+
+ Creates a new UpdateManager instance using the specified URL or file path to the releases feed, and the specified channel name.
+
+ A basic URL or file path to use when checking for updates.
+ Override / configure default update behaviors.
+ The logger to use for diagnostic messages. If one was provided to but is null here,
+ it will be cached and used again.
+ This should usually be left null. Providing an allows you to mock up certain application paths.
+ For example, if you wanted to test that updates are working in a unit test, you could provide an instance of .
+
+
+
+ Creates a new UpdateManager instance using the specified URL or file path to the releases feed, and the specified channel name.
+
+ The source describing where to search for updates. This can be a custom source, if you are integrating with some private resource,
+ or it could be one of the predefined sources. (eg. or , etc).
+ Override / configure default update behaviors.
+ The logger to use for diagnostic messages. If one was provided to but is null here,
+ it will be cached and used again.
+ This should usually be left null. Providing an allows you to mock up certain application paths.
+ For example, if you wanted to test that updates are working in a unit test, you could provide an instance of .
+
+
+
+
+
+
+ Checks for updates, returning null if there are none available. If there are updates available, this method will return an
+ UpdateInfo object containing the latest available release, and any delta updates that can be applied if they are available.
+
+ Null if no updates, otherwise containing the version of the latest update available.
+
+
+
+ Given a feed of releases, and the latest local full release, and the latest remote full release, this method will return a delta
+ update strategy to be used by .
+
+
+
+
+
+
+
+ Downloads the specified updates to the local app packages directory. If the update contains delta packages and ignoreDeltas=false,
+ this method will attempt to unpack and prepare them. If there is no delta update available, or there is an error preparing delta
+ packages, this method will fall back to downloading the full version of the update. This function will acquire a global update lock
+ so may fail if there is already another update operation in progress.
+
+ The updates to download. Should be retrieved from .
+ The progress callback. Will be called with values from 0-100.
+ Whether to attempt downloading delta's or skip to full package download.
+ An optional cancellation token if you wish to stop this operation.
+
+
+
+ Given a folder containing the extracted base package, and a list of delta updates, downloads and applies the
+ delta updates to the base package.
+
+ A folder containing the application files to apply the delta's to.
+ An update object containing one or more delta's
+ A callback reporting process of delta application progress (from 0-100).
+ A token to use to cancel the request.
+
+
+
+ Removes any incomplete files (.partial) and packages (.nupkg) from the packages directory that does not match
+ the provided asset. If assetToKeep is null, all packages will be deleted.
+
+
+
+
+ Check a package checksum against the one in the release entry, and throws if the checksum does not match.
+
+ The entry to check
+ Optional file path, if not specified the package will be loaded from %pkgdir%/release.OriginalFilename.
+
+
+
+ Throws an exception if the current application is not installed.
+
+
+
+
+ Acquires a globally unique mutex/lock for the current application, to avoid concurrent install/uninstall/update operations.
+
+
+
+
+ This will exit your app immediately, apply updates, and then optionally relaunch the app using the specified
+ restart arguments. If you need to save state or clean up, you should do that before calling this method.
+ The user may be prompted during the update, if the update requires additional frameworks to be installed etc.
+ You can check if there are pending updates by checking .
+
+ The target release to apply. Can be left null to auto-apply the newest downloaded release.
+ The arguments to pass to the application when it is restarted.
+
+
+
+ This will exit your app immediately, apply updates, and then optionally relaunch the app using the specified
+ restart arguments. If you need to save state or clean up, you should do that before calling this method.
+ The user may be prompted during the update, if the update requires additional frameworks to be installed etc.
+ You can check if there are pending updates by checking .
+
+ The target release to apply. Can be left null to auto-apply the newest downloaded release.
+
+
+
+ This will launch the Velopack updater and tell it to wait for this program to exit gracefully.
+ You should then clean up any state and exit your app. The updater will apply updates and then
+ optionally restart your app. The updater will only wait for 60 seconds before giving up.
+ You can check if there are pending updates by checking .
+
+ The target release to apply. Can be left null to auto-apply the newest downloaded release.
+ Configure whether Velopack should show a progress window / dialogs during the updates or not.
+ Configure whether Velopack should restart the app after the updates have been applied.
+ The arguments to pass to the application when it is restarted.
+
+
+
+
+
+
+ Options to customise the behaviour of .
+
+
+
+
+ Allows UpdateManager to update to a version that's lower than the current version (i.e. downgrading).
+ This could happen if a release has bugs and was retracted from the release feed, or if you're using
+ to switch channels to another channel where the latest version on that
+ channel is lower than the current version.
+
+
+
+
+ This option should usually be left null. Overrides the default channel used to fetch updates.
+ The default channel will be whatever channel was specified on the command line when building this release.
+ For example, if the current release was packaged with '--channel beta', then the default channel will be 'beta'.
+ This allows users to automatically receive updates from the same channel they installed from. This options
+ allows you to explicitly switch channels, for example if the user wished to switch back to the 'stable' channel
+ without having to reinstall the application.
+
+
+
+
+ Calculates the total percentage of a specific step that should report within a specific range.
+
+ If a step needs to report between 50 -> 75 %, this method should be used as CalculateProgress(percentage, 50, 75).
+
+ The percentage of the current step, a value between 0 and 100.
+ The start percentage of the range the current step represents.
+ The end percentage of the range the current step represents.
+ The calculated percentage that can be reported about the total progress.
+
+
+
+ Turn a single value into an IEnumerable of that value.
+
+
+
+
+ Essentially just .Single() but with context aware error messages which are more helpful to a user.
+ Eg. "Invalid {is}. One {what} expected in {in}. None was found."
+ Eg. "Invalid {is}. Only a single {what} expected in {in}. There were 2 or more."
+
+
+
+
+ Enumerates the sequence and invokes the given action for each value in the sequence.
+
+ Source sequence element type.
+ Source sequence.
+ Action to invoke for each element.
+
+
+
+ Returns the elements with the maximum key value by using the default comparer to compare key values.
+
+ Source sequence element type.
+ Key type.
+ Source sequence.
+ Key selector used to extract the key for each element in the sequence.
+ List with the elements that share the same maximum key value.
+
+
+
+ Returns the elements with the minimum key value by using the specified comparer to compare key values.
+
+ Source sequence element type.
+ Key type.
+ Source sequence.
+ Key selector used to extract the key for each element in the sequence.
+ Comparer used to determine the maximum key value.
+ List with the elements that share the same maximum key value.
+
+
+
+ The namespace for fully-qualified domain names (from RFC 4122, Appendix C).
+
+
+
+
+ The namespace for URLs (from RFC 4122, Appendix C).
+
+
+
+
+ The namespace for ISO OIDs (from RFC 4122, Appendix C).
+
+
+
+
+
+
+
+ Get SHA256 hash of the specified file and returns the result as a base64 encoded string (with length 44)
+
+
+
+
+ Repeatedly tries various methods to delete a file system object. Optionally renames the directory first.
+ Optionally ignores errors.
+
+ The path of the file system entity to delete.
+ Whether this function should throw if the delete fails.
+ Try to rename this object first before deleting. Can help prevent partial delete of folders.
+ Logger for diagnostic messages.
+ True if the file system object was deleted, false otherwise.
+
+
+
+ Escapes file name such that the file name is safe for writing to disk in the packages folder
+
+
+
+
+ Creates a symlink from the specified directory to the specified target directory.
+
+ The symlink path
+ The target directory or file
+ If true overwrites an existing reparse point or empty directory
+ If true, stores a relative path from the link to the target, rather than an absolute path.
+
+
+
+ Returns true if the specified path exists and is a junction point or symlink.
+ If the path exists but is not a junction point or symlink, returns false.
+
+
+
+
+ Does nothing if the path does not exist. If the path exists but is not
+ a junction / symlink, throws an IOException.
+
+
+
+
+ Get the target of a junction point or symlink.
+
+ The location of the symlink or junction point
+ If true, the returned target path will be relative to the linkPath. Otherwise, it will be an absolute path.
+
+
+
+ A delegate type for handling Velopack startup events
+
+ The currently executing version of this application
+
+
+
+ VelopackApp helps you to handle app activation events correctly.
+ This should be used as early as possible in your application startup code.
+ (eg. the beginning of Main() in Program.cs)
+
+
+
+
+ Creates and returns a new Velopack application builder.
+
+
+
+
+ Override the command line arguments used to determine the Velopack hook to run.
+ If this is not set, the command line arguments passed to the application will be used.
+
+
+
+
+ Set whether to automatically apply downloaded updates on startup. This is ON by default.
+
+
+
+
+ Override the default used to search for application paths.
+ This will be cached and potentially re-used throughout the lifetime of the application.
+
+
+
+
+ This hook is triggered when the application is started for the first time after installation.
+
+
+
+
+ This hook is triggered when the application is restarted by Velopack after installing updates.
+
+
+
+
+ WARNING: FastCallback hooks are run during critical stages of Velopack operations.
+ Your code will be run and then will be called.
+ If your code has not completed within 30 seconds, it will be terminated.
+ Only supported on windows; On other operating systems, this will never be called.
+
+
+
+
+ WARNING: FastCallback hooks are run during critical stages of Velopack operations.
+ Your code will be run and then will be called.
+ If your code has not completed within 15 seconds, it will be terminated.
+ Only supported on windows; On other operating systems, this will never be called.
+
+
+
+
+ WARNING: FastCallback hooks are run during critical stages of Velopack operations.
+ Your code will be run and then will be called.
+ If your code has not completed within 15 seconds, it will be terminated.
+ Only supported on windows; On other operating systems, this will never be called.
+
+
+
+
+ WARNING: FastCallback hooks are run during critical stages of Velopack operations.
+ Your code will be run and then will be called.
+ If your code has not completed within 30 seconds, it will be terminated.
+ Only supported on windows; On other operating systems, this will never be called.
+
+
+
+
+ Runs the Velopack application startup code and triggers any configured hooks.
+
+ A logging interface for diagnostic messages. This will be
+ cached and potentially re-used throughout the lifetime of the application.
+
+
+
+ Represents a Velopack Asset Type.
+
+
+
+ A full update package.
+
+
+ A delta update package.
+
+
+
+ A feed of Velopack assets, usually returned from an .
+
+
+
+
+ A list of assets available in this feed.
+
+
+
+
+ Parse a json string into a .
+
+
+
+
+ An individual Velopack asset, could refer to an asset on-disk or in a remote package feed.
+
+
+
+ The name or Id of the package containing this release.
+
+
+ The version of this release.
+
+
+ The type of asset (eg. full or delta).
+
+
+ The filename of the update package containing this release.
+
+
+ The SHA1 checksum of the update package containing this release.
+
+
+ The SHA256 checksum (if availible) of the update package containing this release.
+
+
+ The size in bytes of the update package containing this release.
+
+
+ The release notes in markdown format, as passed to Velopack when packaging the release.
+
+
+ The release notes in HTML format, transformed from Markdown when packaging the release.
+
+
+
+ Convert a to a .
+
+
+
+
+ Load a from a .nupkg file on disk.
+
+
+
+ The Runtime CPU Architecture
+
+
+ Unknown or unsupported
+
+
+ Intel x86
+
+
+ x64 / Amd64
+
+
+ Arm64
+
+
+ The Runtime OS
+
+
+ Unknown or unsupported
+
+
+ Windows
+
+
+ Linux
+
+
+ OSX
+
+
+
+ Convenience class which provides runtime information about the current executing process,
+ in a way that is safe in older and newer versions of the framework.
+
+
+
+ The current compiled Velopack display version.
+
+
+ The current compiled Velopack NuGetVersion.
+
+
+ The current compiled Velopack ProductVersion.
+
+
+ The path on disk of the entry assembly.
+
+
+ The current machine architecture, ignoring the current process / pe architecture.
+
+
+ The name of the current OS - eg. 'windows', 'linux', or 'osx'.
+
+
+ The current system RID.
+
+
+ True if executing on a Windows platform.
+
+
+ True if executing on a Linux platform.
+
+
+ True if executing on a MacOS / OSX platform.
+
+
+
+ Returns the shortened OS name as a string, suitable for creating an RID.
+
+
+
+
+ Returns the long OS name, suitable for showing to a human.
+
+
+
+
+ Contains static properties to access common supported runtimes, and a function to search for a runtime by name
+
+
+
+ Dotnet Runtime SKU
+
+
+ The .NET Runtime contains just the components needed to run a console app
+
+
+ The The ASP.NET Core Runtime enables you to run existing web/server applications
+
+
+ The .NET Desktop Runtime enables you to run existing Windows desktop applications
+
+
+ Runtime installation result code
+
+
+ The install was successful
+
+
+ The install failed because it was cancelled by the user
+
+
+ The install failed because another install is in progress, try again later
+
+
+ The install failed because a system restart is required before continuing
+
+
+ The install failed because the current system does not support this runtime (outdated/unsupported)
+
+
+ Base type containing information about a runtime in relation to the current operating system
+
+
+ The unique Id of this runtime. Can be used to retrieve a runtime instance with
+
+
+ The human-friendly name of this runtime - for displaying to users
+
+
+ Creates a new instance with the specified properties
+
+
+ Creates a new instance with the specified properties
+
+
+ Retrieves the web url to the latest compatible runtime installer exe
+
+
+ Check if a runtime compatible with the current instance is installed on this system
+
+
+ Check if this runtime is supported on the current system
+
+
+ Download the latest installer for this runtime to the specified file
+
+
+ Execute a runtime installer at a local file path. Typically used after
+
+
+ The unique string representation of this runtime
+
+
+ The unique hash code of this runtime
+
+
+ Represents a full .NET Framework runtime, usually included in Windows automatically through Windows Update
+
+
+ Permalink to the installer for this runtime
+
+
+ The minimum compatible release version for this runtime
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Represents a modern DOTNET runtime where versions are deployed independenly of the operating system
+
+
+
+
+
+
+
+
+ The minimum compatible version that must be installed.
+
+
+ The CPU architecture of the runtime. This must match the RID of the app being deployed.
+ For example, if the app was deployed with 'win-x64', this must be X64 also.
+
+
+ The type of runtime required, eg. Windows Desktop, AspNetCore, Sdk.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Parses a string such as 'net6' or net5.0.14-x86 into a DotnetInfo class capable of checking
+ the current system for installed status, or downloading / installing.
+
+
+
+
+
+
+
+ Safely converts a version string into a version structure, and provides some validation for invalid/unsupported versions.
+
+
+
+
+ Converts a version structure into the shortest string possible, by trimming trailing zeros.
+
+
+
+
+ Get latest available version of dotnet. Channel can be 'LTS', 'current', or a two part version
+ (eg. '6.0') to get the latest minor release.
+
+
+
+
+ Get download url for a specific version of dotnet. Version must be an absolute version, such as one
+ returned by . cpuarch should be either
+ 'x86', 'x64', or 'arm64'.
+
+
+
+ The base class for a VC++ redistributable package.
+
+
+ The minimum compatible version that must be installed.
+
+
+ The CPU architecture of the runtime.
+
+
+
+
+
+
+
+
+
+
+
+
+ Returns the list of currently installed VC++ redistributables, as reported by the
+ Windows Programs & Features dialog.
+
+
+
+ Represents a VC++ 2015-2022 redistributable package.
+
+
+
+
+
+
+
+
+ Represents a VC++ redistributable package which is referenced by a permalink
+
+
+ Permalink to the installer for this runtime
+
+
+
+
+
+
+
+
+ Runtime for .NET Framework 4.5
+
+
+ Runtime for .NET Framework 4.5.1
+
+
+ Runtime for .NET Framework 4.5.2
+
+
+ Runtime for .NET Framework 4.6
+
+
+ Runtime for .NET Framework 4.6.1
+
+
+ Runtime for .NET Framework 4.6.2
+
+
+ Runtime for .NET Framework 4.7
+
+
+ Runtime for .NET Framework 4.7.1
+
+
+ Runtime for .NET Framework 4.7.2
+
+
+ Runtime for .NET Framework 4.8
+
+
+ Runtime for .NET Framework 4.8.1
+
+
+ Runtime for .NET Core 3.1 Desktop Runtime (x86)
+
+
+ Runtime for .NET Core 3.1 Desktop Runtime (x64)
+
+
+ Runtime for .NET 5.0 Desktop Runtime (x86)
+
+
+ Runtime for .NET 5.0 Desktop Runtime (x64)
+
+
+ Runtime for .NET 6.0 Desktop Runtime (x86)
+
+
+ Runtime for .NET 6.0 Desktop Runtime (x64)
+
+
+ Runtime for .NET 6.0 Desktop Runtime (arm64)
+
+
+ Runtime for .NET 7.0 Desktop Runtime (x86)
+
+
+ Runtime for .NET 7.0 Desktop Runtime (x64)
+
+
+ Runtime for .NET 7.0 Desktop Runtime (arm64)
+
+
+ Runtime for .NET 8.0 Desktop Runtime (x86)
+
+
+ Runtime for .NET 8.0 Desktop Runtime (x64)
+
+
+ Runtime for .NET 8.0 Desktop Runtime (arm64)
+
+
+ Runtime for Visual C++ 2010 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2010 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2012 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2012 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2013 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2013 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2015 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2015 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2017 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2017 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2019 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2019 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2022 Redistributable (x86)
+
+
+ Runtime for Visual C++ 2022 Redistributable (x64)
+
+
+ Runtime for Visual C++ 2022 Redistributable (arm64)
+
+
+ An array of all the currently supported runtimes
+
+
+
+ Search for a runtime by name. If a platform architecture is not specified, the default is x64.
+ Returns null if no match is found.
+
+
+
+
+ Summary description for ShellLink.
+
+
+
+
+ Called to properly clean up the memory referenced by a PropVariant instance.
+
+
+
+
+ Called to clear the PropVariant's referenced and local memory.
+
+
+ You must call Clear to avoid memory leaks.
+
+
+
+
+ Flags determining how the links with missing
+ targets are resolved.
+
+
+
+
+ Allow any match during resolution. Has no effect
+ on ME/2000 or above, use the other flags instead.
+
+
+
+
+ Call the Microsoft Windows Installer.
+
+
+
+
+ Disable distributed link tracking. By default,
+ distributed link tracking tracks removable media
+ across multiple devices based on the volume name.
+ It also uses the UNC path to track remote file
+ systems whose drive letter has changed. Setting
+ SLR_NOLINKINFO disables both types of tracking.
+
+
+
+
+ Do not display a dialog box if the link cannot be resolved.
+ When SLR_NO_UI is set, a time-out value that specifies the
+ maximum amount of time to be spent resolving the link can
+ be specified in milliseconds. The function returns if the
+ link cannot be resolved within the time-out duration.
+ If the timeout is not set, the time-out duration will be
+ set to the default value of 3,000 milliseconds (3 seconds).
+
+
+
+
+ Not documented in SDK. Assume same as SLR_NO_UI but
+ intended for applications without a hWnd.
+
+
+
+
+ Do not update the link information.
+
+
+
+
+ Do not execute the search heuristics.
+
+
+
+
+ Do not use distributed link tracking.
+
+
+
+
+ If the link object has changed, update its path and list
+ of identifiers. If SLR_UPDATE is set, you do not need to
+ call IPersistFile::IsDirty to determine whether or not
+ the link object has changed.
+
+
+
+
+ Creates an instance of the Shell Link object.
+
+
+
+
+ Creates an instance of a Shell Link object
+ from the specified link file
+
+ The Shortcut file to open
+
+
+
+ Call dispose just in case it hasn't happened yet
+
+
+
+
+ Dispose the object, releasing the COM ShellLink object
+
+
+
+
+ This pointer must be destroyed with DistroyIcon when you are done with it.
+
+ Whether to return the small or large icon
+
+
+
+ Gets the path to the file containing the icon for this shortcut.
+
+
+
+
+ Gets the index of this icon within the icon path's resources
+
+
+
+
+ Gets/sets the fully qualified path to the link's target
+
+
+
+
+ Gets/sets the Working Directory for the Link
+
+
+
+
+ Gets/sets the description of the link
+
+
+
+
+ Gets/sets any command line arguments associated with the link
+
+
+
+
+ Gets/sets the initial display mode when the shortcut is
+ run
+
+
+
+
+ Gets/sets the HotKey to start the shortcut (if any)
+
+
+
+
+ Sets the appUserModelId
+
+
+
+
+ Sets the ToastActivatorCLSID
+
+
+
+
+ Sets the ToastActivatorCLSID
+
+
+
+
+ Saves the shortcut to ShortCutFile.
+
+
+
+
+ Saves the shortcut to the specified file
+
+ The shortcut file (.lnk)
+
+
+
+ Loads a shortcut from the specified file
+
+ The shortcut file (.lnk) to load
+
+
+
+ Loads a shortcut from the specified file, and allows flags controlling
+ the UI behaviour if the shortcut's target isn't found to be set.
+
+ The shortcut file (.lnk) to load
+ The window handle of the application's UI, if any
+ Flags controlling resolution behaviour
+
+
+
+ Loads a shortcut from the specified file, and allows flags controlling
+ the UI behaviour if the shortcut's target isn't found to be set. If
+ no SLR_NO_UI is specified, you can also specify a timeout.
+
+ The shortcut file (.lnk) to load
+ The window handle of the application's UI, if any
+ Flags controlling resolution behaviour
+ Timeout if SLR_NO_UI is specified, in ms.
+
+
+
+ Enables extraction of icons for any file type from
+ the Shell.
+
+
+
+
+ Gets/sets the flags used to extract the icon
+
+
+
+
+ Gets/sets the filename to get the icon for
+
+
+
+
+ Gets the icon for the chosen file
+
+
+
+
+ Gets the display name for the selected file
+ if the SHGFI_DISPLAYNAME flag was set.
+
+
+
+
+ Gets the type name for the selected file
+ if the SHGFI_TYPENAME flag was set.
+
+
+
+
+ Gets the information for the specified
+ file name and flags.
+
+
+
+
+ Constructs a new, default instance of the FileIcon
+ class. Specify the filename and call GetInfo()
+ to retrieve an icon.
+
+
+
+
+ Constructs a new instance of the FileIcon class
+ and retrieves the icon, display name and type name
+ for the specified file.
+
+ The filename to get the icon,
+ display name and type name for
+
+
+
+ Constructs a new instance of the FileIcon class
+ and retrieves the information specified in the
+ flags.
+
+ The filename to get information
+ for
+ The flags to use when extracting the
+ icon and other shell information.
+
+
+
+ Specifies several common places where shortcuts can be installed on a user's system
+
+
+
+
+ Represents no shortcut location
+
+
+
+
+ A shortcut in ProgramFiles within a publisher sub-directory
+
+
+
+
+ A shortcut on the current user desktop
+
+
+
+
+ A shortcut in Startup/Run folder will cause the app to be automatially started on user login.
+
+
+
+
+ A shortcut in the application folder, useful for portable applications.
+
+
+
+
+ A shortcut in ProgramFiles root folder (not in a company/publisher sub-directory). This is commonplace as of more recent versions of windows.
+
+
+
+
+ A helper class to create or delete windows shortcuts.
+
+
+
+ Log for diagnostic messages.
+
+
+ Locator to use for finding important application paths.
+
+
+
+
+
+
+ Create a shortcut to the currently running executable at the specified locations.
+ See to create a shortcut to a different program
+
+
+
+
+ Removes a shortcut for the currently running executable at the specified locations
+
+
+
+
+ Searches for existing shortcuts to an executable inside the current package.
+
+ The relative path or filename of the executable (from the current app dir).
+ The locations to search.
+
+
+
+ Creates new shortcuts to the specified executable at the specified locations.
+
+ The relative path or filename of the executable (from the current app dir).
+ The locations to create shortcuts.
+ If true, shortcuts will be updated instead of created.
+ The arguments the application should be launched with
+ Path to a specific icon to use instead of the exe icon.
+
+
+
+ Delete all the shortcuts for the specified executable in the specified locations.
+
+ The relative path or filename of the executable (from the current app dir).
+ The locations to create shortcuts.
+
+
+
+ Given an and return the target shortcut path.
+
+
+
+
+ Given the application info, return the shortcut target path.
+
+
+
+
+ Represents the type of reparse point such as a hard link, junction (aka
+ soft link), or symbolic link.
+
+
+
+
+ Represents an unknown reparse point type.
+
+
+
+
+ Represents a file hard link.
+
+
+ Technically not a reparse point.
+
+
+
+
+ Represents a directory junction (aka soft link).
+
+
+
+
+ Represents a symbolic link to either a file or folder.
+
+
+ In order to create symbolic links, the current user must either be an
+ administrator running with elevated privileges or a non-admin user that
+ has the SeCreateSymbolicLinkPrivilege right in local security policy.
+
+
+
+
+ http://msdn.microsoft.com/en-us/library/windows/desktop/aa374896(v=vs.85).aspx
+ http://msdn.microsoft.com/en-us/library/windows/desktop/aa374892(v=vs.85).aspx
+
+
+
+
+ The MAXIMUM_ALLOWED access type is generally used with the AccessCheck(…)
+ function to determine whether a security descriptor grants a specified
+ set of access rights to the client identified by an access token.
+ Typically, server applications use this function to check access to a
+ private object. Note that MAXIMUM_ALLOWED cannot be used in an ACE (see
+ access control entries).
+
+ MAXIMUM_ALLOWED
+
+
+
+ The right to delete the object.
+
+ DELETE
+
+
+
+ The right to read the information in the object's security descriptor,
+ not including the information in the system access control list (SACL).
+
+ READ_CONTROL
+
+
+
+ The right to modify the discretionary access control list (DACL) in the
+ object's security descriptor.
+
+ WRITE_DAC
+
+
+
+ The right to change the owner in the object's security descriptor.
+
+ WRITE_OWNER
+
+
+
+ The right to use the object for synchronization. This enables a thread
+ to wait until the object is in the signaled state. Some object types do not support this access right.
+
+ SYNCHRONIZE
+
+
+
+ Currently defined to equal READ_CONTROL.
+
+ STANDARD_RIGHTS_READ
+
+
+
+ Currently defined to equal READ_CONTROL.
+
+ STANDARD_RIGHTS_WRITE
+
+
+
+ Currently defined to equal READ_CONTROL.
+
+ STANDARD_RIGHTS_EXECUTE
+
+
+
+ Combines DELETE, READ_CONTROL, WRITE_DAC, and WRITE_OWNER access.
+
+ STANDARD_RIGHTS_REQUIRED
+
+
+
+ Combines DELETE, READ_CONTROL, WRITE_DAC, WRITE_OWNER, and SYNCHRONIZE access.
+
+ STANDARD_RIGHTS_ALL
+
+
+
+ Execute access.
+
+ GENERIC_EXECUTE
+
+
+
+ Write access.
+
+ GENERIC_WRITE
+
+
+
+ Read access.
+
+ GENERIC_READ
+
+
+
+ All possible access rights.
+
+ GENERIC_ALL
+
+
+
+ For a file object, the right to read the corresponding file data. For
+ a directory object, the right to read the corresponding directory data.
+
+ FILE_READ_DATA
+
+
+
+ For a directory, the right to list the contents of the directory.
+
+ FILE_LIST_DIRECTORY
+
+
+
+ For a file object, the right to write data to the file. For a directory
+ object, the right to create a file in the directory (FILE_ADD_FILE).
+
+ FILE_WRITE_DATA
+
+
+
+ For a directory, the right to create a file in the directory.
+
+ FILE_ADD_FILE
+
+
+
+ For a file object, the right to append data to the file. (For local
+ files, write operations will not overwrite existing data if this flag
+ is specified without FILE_WRITE_DATA.) For a directory object, the
+ right to create a subdirectory (FILE_ADD_SUBDIRECTORY).
+
+ FILE_APPEND_DATA
+
+
+
+ For a directory, the right to create a subdirectory.
+
+ FILE_ADD_SUBDIRECTORY
+
+
+
+ For a named pipe, the right to create a pipe.
+
+ FILE_CREATE_PIPE_INSTANCE
+
+
+
+ The right to read extended file attributes.
+
+ FILE_READ_EA
+
+
+
+ The right to write extended file attributes.
+
+ FILE_WRITE_EA
+
+
+
+ For a native code file, the right to execute the file. This access
+ right given to scripts may cause the script to be executable,
+ depending on the script interpreter.
+
+ FILE_EXECUTE
+
+
+
+ For a directory, the right to traverse the directory. By default, users
+ are assigned the BYPASS_TRAVERSE_CHECKING privilege, which ignores the
+ FILE_TRAVERSE access right. See the remarks in File Security and Access
+ Rights for more information.
+
+ FILE_TRAVERSE
+
+
+
+ For a directory, the right to delete a directory and all the files it
+ contains, including read-only files.
+
+ FILE_DELETE_CHILD
+
+
+
+ The right to read file attributes.
+
+ FILE_READ_ATTRIBUTES
+
+
+
+ The right to write file attributes.
+
+ FILE_WRITE_ATTRIBUTES
+
+
+
+ Required to terminate a thread using TerminateThread.
+
+ THREAD_TERMINATE
+
+
+
+ Required to suspend or resume a thread (see SuspendThread and ResumeThread).
+
+ THREAD_SUSPEND_RESUME
+
+
+
+ Required to read the context of a thread using GetThreadContext.
+
+ THREAD_GET_CONTEXT
+
+
+
+ Required to write the context of a thread using SetThreadContext.
+
+ THREAD_SET_CONTEXT
+
+
+
+ Required to set certain information in the thread object.
+
+ THREAD_SET_INFORMATION
+
+
+
+ Required to read certain information from the thread object, such as the exit code (see GetExitCodeThread).
+
+ THREAD_QUERY_INFORMATION
+
+
+
+ Required to set the impersonation token for a thread using SetThreadToken.
+
+ THREAD_SET_THREAD_TOKEN
+
+
+
+ Required to use a thread's security information directly without calling it by using a communication mechanism that provides impersonation services.
+
+ THREAD_IMPERSONATE
+
+
+
+ Required for a server thread that impersonates a client.
+
+ THREAD_DIRECT_IMPERSONATION
+
+
+
+ All possible access rights for a thread object.
+
+ THREAD_ALL_ACCESS
+
+
+
+ Required to terminate a process using TerminateProcess.
+
+ PROCESS_TERMINATE
+
+
+
+ Required to create a thread.
+
+ PROCESS_CREATE_THREAD
+
+
+
+ Required to perform an operation on the address space of a process (see VirtualProtectEx and WriteProcessMemory).
+
+ PROCESS_VM_OPERATION
+
+
+
+ Required to read memory in a process using ReadProcessMemory.
+
+ PROCESS_VM_READ
+
+
+
+ Required to write to memory in a process using WriteProcessMemory.
+
+ PROCESS_VM_WRITE
+
+
+
+ Required to duplicate a handle using DuplicateHandle.
+
+ PROCESS_DUP_HANDLE
+
+
+
+ Required to create a process.
+
+ PROCESS_CREATE_PROCESS
+
+
+
+ Required to set memory limits using SetProcessWorkingSetSize.
+
+ PROCESS_SET_QUOTA
+
+
+
+ Required to set certain information about a process, such as its priority class (see SetPriorityClass).
+
+ PROCESS_SET_INFORMATION
+
+
+
+ Required to retrieve certain information about a process, such as its token, exit code, and priority class (see OpenProcessToken).
+
+ PROCESS_QUERY_INFORMATION
+
+
+
+ All possible access rights for a process object.
+
+ PROCESS_ALL_ACCESS
+
+
+
+ Required to attach a primary token to a process. The SE_ASSIGNPRIMARYTOKEN_NAME privilege is also required to accomplish this task.
+
+ TOKEN_ASSIGN_PRIMARY
+
+
+
+ Required to duplicate an access token.
+
+ TOKEN_DUPLICATE
+
+
+
+ Required to attach an impersonation access token to a process.
+
+ TOKEN_IMPERSONATE
+
+
+
+ Required to query an access token.
+
+ TOKEN_QUERY
+
+
+
+ Required to query the source of an access token.
+
+ TOKEN_QUERY_SOURCE
+
+
+
+ Required to enable or disable the privileges in an access token.
+
+ TOKEN_ADJUST_PRIVILEGES
+
+
+
+ Required to adjust the attributes of the groups in an access token.
+
+ TOKEN_ADJUST_GROUPS
+
+
+
+ Required to change the default owner, primary group, or DACL of an access token.
+
+ TOKEN_ADJUST_DEFAULT
+
+
+
+ Required to adjust the session ID of an access token. The SE_TCB_NAME privilege is required.
+
+ TOKEN_ADJUST_SESSIONID
+
+
+
+ Combines STANDARD_RIGHTS_READ and TOKEN_QUERY.
+
+ TOKEN_READ
+
+
+
+ Combines STANDARD_RIGHTS_WRITE, TOKEN_ADJUST_PRIVILEGES, TOKEN_ADJUST_GROUPS, and TOKEN_ADJUST_DEFAULT.
+
+ TOKEN_WRITE
+
+
+
+ Combines STANDARD_RIGHTS_EXECUTE and TOKEN_IMPERSONATE.
+
+ TOKEN_EXECUTE
+
+
+
+ Combines all possible access rights for a token.
+
+ TOKEN_ALL_ACCESS
+
+
+
+ Prevents other processes from opening a file or device if they request
+ delete, read, or write access.
+
+
+
+
+ Enables subsequent open operations on a file or device to request read
+ access. Otherwise, other processes cannot open the file or device if
+ they request read access. If this flag is not specified, but the file
+ or device has been opened for read access, the function fails.
+
+ FILE_SHARE_READ
+
+
+
+ Enables subsequent open operations on a file or device to request write
+ access. Otherwise, other processes cannot open the file or device if
+ they request write access. If this flag is not specified, but the file
+ or device has been opened for write access or has a file mapping with
+ write access, the function fails.
+
+ FILE_SHARE_WRITE
+
+
+
+ Enables subsequent open operations on a file or device to request delete
+ access. Otherwise, other processes cannot open the file or device if
+ they request delete access. If this flag is not specified, but the file
+ or device has been opened for delete access, the function fails. Note
+ Delete access allows both delete and rename operations.
+
+ FILE_SHARE_DELETE
+
+
+
+ Creates a new file, only if it does not already exist. If the specified
+ file exists, the function fails and the last-error code is set to
+ ERROR_FILE_EXISTS (80). If the specified file does not exist and is a
+ valid path to a writable location, a new file is created.
+
+ CREATE_NEW
+
+
+
+ Creates a new file, always. If the specified file exists and is writable,
+ the function overwrites the file, the function succeeds, and last-error
+ code is set to ERROR_ALREADY_EXISTS (183). If the specified file does
+ not exist and is a valid path, a new file is created, the function
+ succeeds, and the last-error code is set to zero. For more information,
+ see the Remarks section of this topic.
+
+ CREATE_ALWAYS
+
+
+
+ Opens a file or device, only if it exists. If the specified file or
+ device does not exist, the function fails and the last-error code is
+ set to ERROR_FILE_NOT_FOUND (2). For more information about devices,
+ see the Remarks section.
+
+ OPEN_EXISTING
+
+
+
+ Opens a file, always. If the specified file exists, the function
+ succeeds and the last-error code is set to ERROR_ALREADY_EXISTS (183).
+ If the specified file does not exist and is a valid path to a writable
+ location, the function creates a file and the last-error code is set to
+ zero.
+
+ OPEN_ALWAYS
+
+
+
+ Opens a file and truncates it so that its size is zero bytes, only if
+ it exists. If the specified file does not exist, the function fails and
+ the last-error code is set to ERROR_FILE_NOT_FOUND (2). The calling
+ process must open the file with the GENERIC_WRITE bit set as part of
+ the dwDesiredAccess parameter.
+
+ TRUNCATE_EXISTING
+
+
+
+ A file that is read-only. Applications can read the file, but cannot
+ write to it or delete it. This attribute is not honored on directories.
+ For more information, see You cannot view or change the Read-only or
+ the System attributes of folders in Windows Server 2003, in Windows XP,
+ in Windows Vista or in Windows 7.
+
+ FILE_ATTRIBUTE_READONLY
+
+
+
+ The file or directory is hidden. It is not included in an ordinary
+ directory listing.
+
+ FILE_ATTRIBUTE_HIDDEN
+
+
+
+ A file or directory that the operating system uses a part of, or uses
+ exclusively.
+
+ FILE_ATTRIBUTE_SYSTEM
+
+
+
+ The handle that identifies a directory.
+
+ FILE_ATTRIBUTE_DIRECTORY
+
+
+
+ A file or directory that is an archive file or directory. Applications
+ typically use this attribute to mark files for backup or removal.
+
+ FILE_ATTRIBUTE_ARCHIVE
+
+
+
+ This value is reserved for system use.
+
+ FILE_ATTRIBUTE_DEVICE
+
+
+
+ A file that does not have other attributes set. This attribute is valid
+ only when used alone.
+
+ FILE_ATTRIBUTE_NORMAL
+
+
+
+ A file that is being used for temporary storage. File systems avoid
+ writing data back to mass storage if sufficient cache memory is
+ available, because typically, an application deletes a temporary file
+ after the handle is closed. In that scenario, the system can entirely
+ avoid writing the data. Otherwise, the data is written after the handle
+ is closed.
+
+ FILE_ATTRIBUTE_TEMPORARY
+
+
+
+ A file that is a sparse file.
+
+ FILE_ATTRIBUTE_SPARSE_FILE
+
+
+
+ A file or directory that has an associated reparse point, or a file
+ that is a symbolic link.
+
+ FILE_ATTRIBUTE_REPARSE_POINT
+
+
+
+ A file or directory that is compressed. For a file, all of the data in
+ the file is compressed. For a directory, compression is the default for
+ newly created files and subdirectories.
+
+ FILE_ATTRIBUTE_COMPRESSED
+
+
+
+ The data of a file is not immediately available. This attribute
+ indicates that file data is physically moved to offline storage.
+ This attribute is used by Remote Storage, the hierarchical storage
+ management software. Applications should not arbitrarily change this
+ attribute.
+
+ FILE_ATTRIBUTE_OFFLINE
+
+
+
+ The file or directory is not to be indexed by the content indexing
+ service.
+
+ FILE_ATTRIBUTE_NOT_CONTENT_INDEXED
+
+
+
+ A file or directory that is encrypted. For a file, all data streams in
+ the file are encrypted. For a directory, encryption is the default for
+ newly created files and subdirectories.
+
+ FILE_ATTRIBUTE_ENCRYPTED
+
+
+
+ The directory or user data stream is configured with integrity (only
+ supported on ReFS volumes). It is not included in an ordinary directory
+ listing. The integrity setting persists with the file if it's renamed.
+ If a file is copied the destination file will have integrity set if
+ either the source file or destination directory have integrity set.
+ Windows Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista,
+ Windows Server 2003, and Windows XP: This flag is not supported until
+ Windows Server 2012.
+
+ FILE_ATTRIBUTE_INTEGRITY_STREAM
+
+
+
+ This value is reserved for system use.
+
+ FILE_ATTRIBUTE_VIRTUAL
+
+
+
+ The user data stream not to be read by the background data integrity
+ scanner (AKA scrubber). When set on a directory it only provides
+ inheritance. This flag is only supported on Storage Spaces and ReFS
+ volumes. It is not included in an ordinary directory listing. Windows
+ Server 2008 R2, Windows 7, Windows Server 2008, Windows Vista, Windows
+ Server 2003, and Windows XP: This flag is not supported until Windows
+ 8 and Windows Server 2012.
+
+ FILE_ATTRIBUTE_NO_SCRUB_DATA
+
+
+
+ If you attempt to create multiple instances of a pipe with this flag,
+ creation of the first instance succeeds, but creation of the next
+ instance fails with ERROR_ACCESS_DENIED. Windows 2000: This flag is
+ not supported until Windows 2000 SP2 and Windows XP.
+
+ FILE_FLAG_FIRST_PIPE_INSTANCE
+
+
+
+ The file data is requested, but it should continue to be located in
+ remote storage. It should not be transported back to local storage.
+ This flag is for use by remote storage systems.
+
+ FILE_FLAG_OPEN_NO_RECALL
+
+
+
+ Access will occur according to POSIX rules. This includes allowing
+ multiple files with names, differing only in case, for file systems
+ that support that naming. Use care when using this option, because
+ files created with this flag may not be accessible by applications
+ that are written for MS-DOS or 16-bit Windows.
+
+ FILE_FLAG_POSIX_SEMANTICS
+
+
+
+ Normal reparse point processing will not occur; CreateFile will attempt
+ to open the reparse point. When a file is opened, a file handle is
+ returned, whether or not the filter that controls the reparse point is
+ operational. This flag cannot be used with the CREATE_ALWAYS flag. If
+ the file is not a reparse point, then this flag is ignored. For more
+ information, see the Remarks section.
+
+ FILE_FLAG_OPEN_REPARSE_POINT
+
+
+
+ The file or device is being opened with session awareness. If this flag
+ is not specified, then per-session devices (such as a redirected USB
+ device) cannot be opened by processes running in session 0. This flag
+ has no effect for callers not in session 0. This flag is supported only
+ on server editions of Windows. Windows Server 2008 R2, Windows Server
+ 2008, and Windows Server 2003: This flag is not supported before Windows
+ Server 2012.
+
+ FILE_FLAG_SESSION_AWARE
+
+
+
+ The file is being opened or created for a backup or restore operation.
+ The system ensures that the calling process overrides file security
+ checks when the process has SE_BACKUP_NAME and SE_RESTORE_NAME
+ privileges. For more information, see Changing Privileges in a Token.
+ You must set this flag to obtain a handle to a directory. A directory
+ handle can be passed to some functions instead of a file handle. For
+ more information, see the Remarks section.
+
+ FILE_FLAG_BACKUP_SEMANTICS
+
+
+
+ The file is to be deleted immediately after all of its handles are
+ closed, which includes the specified handle and any other open or
+ duplicated handles. If there are existing open handles to a file, the
+ call fails unless they were all opened with the FILE_SHARE_DELETE share
+ mode. Subsequent open requests for the file fail, unless the
+ FILE_SHARE_DELETE share mode is specified.
+
+ FILE_FLAG_DELETE_ON_CLOSE
+
+
+
+ Access is intended to be sequential from beginning to end. The system
+ can use this as a hint to optimize file caching. This flag should not
+ be used if read-behind (that is, reverse scans) will be used. This flag
+ has no effect if the file system does not support cached I/O and
+ FILE_FLAG_NO_BUFFERING. For more information, see the Caching Behavior
+ section of this topic.
+
+ FILE_FLAG_SEQUENTIAL_SCAN
+
+
+
+ Access is intended to be random. The system can use this as a hint to
+ optimize file caching. This flag has no effect if the file system does
+ not support cached I/O and FILE_FLAG_NO_BUFFERING. For more information,
+ see the Caching Behavior section of this topic.
+
+ FILE_FLAG_RANDOM_ACCESS
+
+
+
+ The file or device is being opened with no system caching for data
+ reads and writes. This flag does not affect hard disk caching or memory
+ mapped files. There are strict requirements for successfully working
+ with files opened with CreateFile using the FILE_FLAG_NO_BUFFERING
+ flag, for details see File Buffering.
+
+ FILE_FLAG_NO_BUFFERING
+
+
+
+ The file or device is being opened or created for asynchronous I/O.
+ When subsequent I/O operations are completed on this handle, the event
+ specified in the OVERLAPPED structure will be set to the signaled state.
+ If this flag is specified, the file can be used for simultaneous read
+ and write operations. If this flag is not specified, then I/O operations
+ are serialized, even if the calls to the read and write functions
+ specify an OVERLAPPED structure. For information about considerations
+ when using a file handle created with this flag, see the Synchronous
+ and Asynchronous I/O Handles section of this topic.
+
+ FILE_FLAG_OVERLAPPED
+
+
+
+ Write operations will not go through any intermediate cache, they will
+ go directly to disk. For additional information, see the Caching
+ Behavior section of this topic.
+
+ FILE_FLAG_WRITE_THROUGH
+
+
+
+ Contains the information about a reparse point.
+
+
+
+
+ Contains the of a reparse point.
+
+
+
+
+ Contains the of a reparse point.
+
+
+
+
+ Contains the target of a reparse point.
+
+
+ The target for a hard link cannot be determined so this member will
+ always be null for hard links.
+
+
+
+
+ Given a path, determines the type of reparse point.
+
+ The path to inspect.
+ A enumeration.
+
+
+
+ Given a path, returns the information about a reparse point.
+
+ The path to inspect.
+ A that contains the information
+ about a reparse point.
+
+
+
+ Helper method to create a junction.
+
+ The path of the junction to create.
+ The target for the junction.
+
+
+
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.xml.meta b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.xml.meta
new file mode 100644
index 00000000..3a8f5590
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/InstalledPackages/Velopack.0.0.626/lib/netstandard2.0/Velopack.xml.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 36c8715dec2b7af44a1f6c09e88827dd
+TextScriptImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Assets/NuGet.config b/samples/CSharpUnityMono/Packages/nuget-packages/NuGet.config
similarity index 72%
rename from samples/CSharpUnityMono/Assets/NuGet.config
rename to samples/CSharpUnityMono/Packages/nuget-packages/NuGet.config
index 0c083882..cc3c3e65 100644
--- a/samples/CSharpUnityMono/Assets/NuGet.config
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/NuGet.config
@@ -1,18 +1,19 @@
-
+
-
+
-
+
+
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Assets/NuGet.config.meta b/samples/CSharpUnityMono/Packages/nuget-packages/NuGet.config.meta
similarity index 100%
rename from samples/CSharpUnityMono/Assets/NuGet.config.meta
rename to samples/CSharpUnityMono/Packages/nuget-packages/NuGet.config.meta
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/package.json b/samples/CSharpUnityMono/Packages/nuget-packages/package.json
new file mode 100644
index 00000000..06ece687
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/package.json
@@ -0,0 +1 @@
+{ "name": "nuget-packages","version": "1.0.0","displayName": "NuGetPackages", "description": "NuGetPackages", "dependencies": {}}
\ No newline at end of file
diff --git a/samples/CSharpUnityMono/Packages/nuget-packages/package.json.meta b/samples/CSharpUnityMono/Packages/nuget-packages/package.json.meta
new file mode 100644
index 00000000..2fd06da1
--- /dev/null
+++ b/samples/CSharpUnityMono/Packages/nuget-packages/package.json.meta
@@ -0,0 +1,7 @@
+fileFormatVersion: 2
+guid: 13e7874063292c247b4727b549488e53
+PackageManifestImporter:
+ externalObjects: {}
+ userData:
+ assetBundleName:
+ assetBundleVariant:
diff --git a/samples/CSharpUnityMono/Assets/packages.config b/samples/CSharpUnityMono/Packages/nuget-packages/packages.config
similarity index 100%
rename from samples/CSharpUnityMono/Assets/packages.config
rename to samples/CSharpUnityMono/Packages/nuget-packages/packages.config
diff --git a/samples/CSharpUnityMono/Assets/packages.config.meta b/samples/CSharpUnityMono/Packages/nuget-packages/packages.config.meta
similarity index 100%
rename from samples/CSharpUnityMono/Assets/packages.config.meta
rename to samples/CSharpUnityMono/Packages/nuget-packages/packages.config.meta
diff --git a/samples/CSharpUnityMono/Packages/packages-lock.json b/samples/CSharpUnityMono/Packages/packages-lock.json
index 2233aefc..4a4dcecc 100644
--- a/samples/CSharpUnityMono/Packages/packages-lock.json
+++ b/samples/CSharpUnityMono/Packages/packages-lock.json
@@ -25,6 +25,12 @@
"com.unity.modules.imgui": "1.0.0"
}
},
+ "nuget-packages": {
+ "version": "file:nuget-packages",
+ "depth": 0,
+ "source": "embedded",
+ "dependencies": {}
+ },
"com.unity.modules.imgui": {
"version": "1.0.0",
"depth": 2,