diff --git a/.vs/HighWayIot/v17/.suo b/.vs/HighWayIot/v17/.suo
index dce7da0..4f0082a 100644
Binary files a/.vs/HighWayIot/v17/.suo and b/.vs/HighWayIot/v17/.suo differ
diff --git a/Aucma.Scada.Business/AssemblyPlanBusiness.cs b/Aucma.Scada.Business/AssemblyPlanBusiness.cs
index d4f1df1..c9af9dc 100644
--- a/Aucma.Scada.Business/AssemblyPlanBusiness.cs
+++ b/Aucma.Scada.Business/AssemblyPlanBusiness.cs
@@ -2,7 +2,6 @@
using HighWayIot.Config;
using HighWayIot.Log4net;
using HighWayIot.Repository.service;
-using HighWayIot.Repository.service.Impl;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -12,8 +11,9 @@ namespace Aucma.Scada.Business
///
/// 组装计划业务逻辑
///
- public class AssemblyPlanBusiness
+ public sealed class AssemblyPlanBusiness
{
+ #region 单例实现
private static readonly Lazy lazy = new Lazy(() => new AssemblyPlanBusiness());
public static AssemblyPlanBusiness Instance
{
@@ -22,14 +22,30 @@ namespace Aucma.Scada.Business
return lazy.Value;
}
}
+ #endregion
+
+ #region 对象引用
private LogHelper logHelper = LogHelper.Instance;
private AppConfig appConfig = AppConfig.Instance;
- private IProductPlanInfoService _productPlanInfoService = new ProductPlanInfoServiceImpl();
- private IExecutePlanInfoService _executePlanInfoService = new ExecutePlanInfoServiceImpl();
+ private RegisterServices registerServices = RegisterServices.Instance;
+ #endregion
+ #region 接口引用
+ ///
+ /// 生产计划
+ ///
+ private IProductPlanInfoService _productPlanInfoService;
+
+ ///
+ /// 执行计划
+ ///
+ private IExecutePlanInfoService _executePlanInfoService;
+ #endregion
+
+ #region 委托事件
///
/// 刷新执行计划
///
@@ -43,10 +59,12 @@ namespace Aucma.Scada.Business
///
public delegate void NextPassExecutePlanInfo(ExecutePlanInfo planInfo);
public event NextPassExecutePlanInfo NextPassExecutePlanInfoEvent;
+ #endregion
- public AssemblyPlanBusiness()
+ private AssemblyPlanBusiness()
{
-
+ _productPlanInfoService = registerServices.GetService();
+ _executePlanInfoService = registerServices.GetService();
}
diff --git a/Aucma.Scada.Business/Aucma.Scada.Business.csproj b/Aucma.Scada.Business/Aucma.Scada.Business.csproj
index 8794c1d..68473af 100644
--- a/Aucma.Scada.Business/Aucma.Scada.Business.csproj
+++ b/Aucma.Scada.Business/Aucma.Scada.Business.csproj
@@ -31,8 +31,23 @@
4
+
+ ..\packages\Microsoft.Bcl.AsyncInterfaces.7.0.0\lib\net462\Microsoft.Bcl.AsyncInterfaces.dll
+
+
+ ..\packages\Microsoft.Extensions.DependencyInjection.7.0.0\lib\net462\Microsoft.Extensions.DependencyInjection.dll
+
+
+ ..\packages\Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0\lib\net462\Microsoft.Extensions.DependencyInjection.Abstractions.dll
+
+
+ ..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll
+
+
+ ..\packages\System.Threading.Tasks.Extensions.4.5.4\lib\net461\System.Threading.Tasks.Extensions.dll
+
@@ -43,11 +58,13 @@
+
+
-
+
@@ -76,6 +93,10 @@
HighWayIot.Repository
+
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.Business/InStoreBusiness.cs b/Aucma.Scada.Business/InStoreBusiness.cs
index 995cab2..028d1f1 100644
--- a/Aucma.Scada.Business/InStoreBusiness.cs
+++ b/Aucma.Scada.Business/InStoreBusiness.cs
@@ -2,15 +2,18 @@
using HighWayIot.Config;
using HighWayIot.Log4net;
using HighWayIot.Repository.service;
-using HighWayIot.Repository.service.Impl;
using System;
using System.Threading;
using System.Threading.Tasks;
namespace Aucma.Scada.Business
{
- public class InStoreBusiness
+ ///
+ /// 入库业务逻辑
+ ///
+ public sealed class InStoreBusiness
{
+ #region 单例实现
private static readonly Lazy lazy = new Lazy(() => new InStoreBusiness());
public static InStoreBusiness Instance
{
@@ -19,15 +22,29 @@ namespace Aucma.Scada.Business
return lazy.Value;
}
}
+ #endregion
+ #region 对象引用
private LogHelper logHelper = LogHelper.Instance;
- private IBaseSpaceInfoService _spaceInfoService = new BaseSpaceInfoServiceImpl();
-
- private IRealTaskInfoService _taskInfoService = new RealTaskInfoServiceImpl();
-
private AppConfig appConfig = AppConfig.Instance;
+ private RegisterServices registerServices = RegisterServices.Instance;
+ #endregion
+
+ #region 接口引用
+ ///
+ /// 货道信息
+ ///
+ private IBaseSpaceInfoService _spaceInfoService;
+
+ ///
+ /// 实时任务
+ ///
+ private IRealTaskInfoService _taskInfoService;
+ #endregion
+
+ #region 委托事件
///
/// 初始化入库任务
///
@@ -51,9 +68,13 @@ namespace Aucma.Scada.Business
///
public delegate void RefreshLogMessage(string message);
public event RefreshLogMessage RefreshLogMessageEvent;
+ #endregion
private InStoreBusiness()
{
+ _spaceInfoService = registerServices.GetService();
+ _taskInfoService = registerServices.GetService();
+
StartPassDown();
}
diff --git a/Aucma.Scada.Business/InStoreTaskHandle.cs b/Aucma.Scada.Business/InStoreTaskHandle.cs
new file mode 100644
index 0000000..52aa590
--- /dev/null
+++ b/Aucma.Scada.Business/InStoreTaskHandle.cs
@@ -0,0 +1,26 @@
+using System;
+
+namespace Aucma.Scada.Business
+{
+ ///
+ /// 入库任务处理
+ ///
+ internal sealed class InStoreTaskHandle
+ {
+ #region 单例实现
+ private static readonly Lazy lazy = new Lazy(() => new InStoreTaskHandle());
+ public static InStoreTaskHandle Instance
+ {
+ get
+ {
+ return lazy.Value;
+ }
+ }
+ #endregion
+
+ private InStoreTaskHandle()
+ {
+
+ }
+ }
+}
diff --git a/Aucma.Scada.Business/InventoryInfoBusiness.cs b/Aucma.Scada.Business/InventoryInfoBusiness.cs
index 3fd3a60..13e6311 100644
--- a/Aucma.Scada.Business/InventoryInfoBusiness.cs
+++ b/Aucma.Scada.Business/InventoryInfoBusiness.cs
@@ -1,8 +1,6 @@
using Aucma.Scada.Model.domain;
-using HighWayIot.Config;
using HighWayIot.Log4net;
using HighWayIot.Repository.service;
-using HighWayIot.Repository.service.Impl;
using System;
using System.Collections.Generic;
@@ -11,8 +9,9 @@ namespace Aucma.Scada.Business
///
/// 实时库存业务逻辑
///
- public class InventoryInfoBusiness
+ public sealed class InventoryInfoBusiness
{
+ #region 单例实现
private static readonly Lazy lazy = new Lazy(() => new InventoryInfoBusiness());
public static InventoryInfoBusiness Instance
{
@@ -21,24 +20,42 @@ namespace Aucma.Scada.Business
return lazy.Value;
}
}
+ #endregion
+ #region 对象引用
private LogHelper logHelper = LogHelper.Instance;
- private AppConfig appConfig = AppConfig.Instance;
+ private RegisterServices registerServices = RegisterServices.Instance;
+ #endregion
- private IBaseSpaceInfoService _spaceInfoService = new BaseSpaceInfoServiceImpl();
+ #region 接口引用
+ ///
+ /// 货道信息
+ ///
+ private IBaseSpaceInfoService _spaceInfoService;
- private IBaseSpaceDetailService _spaceDetailService = new BaseSpaceDetailServiceImpl();
+ ///
+ /// 货道明细
+ ///
+ private IBaseSpaceDetailService _spaceDetailService;
+ #endregion
- public InventoryInfoBusiness()
- {
-
- }
-
- //List
+ #region 委托事件
+ ///
+ /// 刷新货道明细
+ ///
+ ///
public delegate void RefreshSpaceDetails(List taskInfos);
public event RefreshSpaceDetails RefreshSpaceDetailsEvent;
+ #endregion
+
+ private InventoryInfoBusiness()
+ {
+ _spaceInfoService = registerServices.GetService();
+ _spaceDetailService = registerServices.GetService();
+ }
+
///
/// 获取货道信息
///
diff --git a/Aucma.Scada.Business/MainBusiness.cs b/Aucma.Scada.Business/MainBusiness.cs
index 8312135..0e5545b 100644
--- a/Aucma.Scada.Business/MainBusiness.cs
+++ b/Aucma.Scada.Business/MainBusiness.cs
@@ -4,8 +4,9 @@ using System;
namespace Aucma.Scada.Business
{
- public class MainBusiness
+ public sealed class MainBusiness
{
+ #region 单例实现
private static readonly Lazy lazy = new Lazy(() => new MainBusiness());
public static MainBusiness Instance
@@ -15,12 +16,15 @@ namespace Aucma.Scada.Business
return lazy.Value;
}
}
+ #endregion
+ #region 对象引用
private AppConfig appConfig = AppConfig.Instance;
private PlcConfig plcConfig = PlcConfig.Instance;
private PlcPool plcPool = PlcPool.Instance;
+ #endregion
private MainBusiness()
{
diff --git a/Aucma.Scada.Business/OutStoreBusiness.cs b/Aucma.Scada.Business/OutStoreBusiness.cs
index b28682a..9269469 100644
--- a/Aucma.Scada.Business/OutStoreBusiness.cs
+++ b/Aucma.Scada.Business/OutStoreBusiness.cs
@@ -2,7 +2,6 @@
using HighWayIot.Config;
using HighWayIot.Log4net;
using HighWayIot.Repository.service;
-using HighWayIot.Repository.service.Impl;
using System;
using System.Collections.Generic;
using System.Linq;
@@ -11,8 +10,12 @@ using System.Threading.Tasks;
namespace Aucma.Scada.Business
{
- public class OutStoreBusiness
+ ///
+ /// 出库业务逻辑
+ ///
+ public sealed class OutStoreBusiness
{
+ #region 单例实现
private static readonly Lazy lazy = new Lazy(() => new OutStoreBusiness());
public static OutStoreBusiness Instance
{
@@ -21,23 +24,43 @@ namespace Aucma.Scada.Business
return lazy.Value;
}
}
+ #endregion
+ #region 对象引用
private LogHelper logHelper = LogHelper.Instance;
private AppConfig appConfig = AppConfig.Instance;
- private IBaseSpaceInfoService _spaceInfoService = new BaseSpaceInfoServiceImpl();
-
- private IRealTaskInfoService _taskInfoService = new RealTaskInfoServiceImpl();
-
- private IBaseBomInfoService _bomInfoService = new BaseBomInfoServiceImpl();
-
- private IBaseSpaceDetailService _spaceDetailService = new BaseSpaceDetailServiceImpl();
+ private RegisterServices registerServices = RegisterServices.Instance;
private AssemblyPlanBusiness assemblyPlanBusiness = AssemblyPlanBusiness.Instance;
- private TaskHandleBusiness taskHandleBusiness = TaskHandleBusiness.Instance;
+ private OutStoreTaskHandle taskHandleBusiness = OutStoreTaskHandle.Instance;
+ #endregion
+ #region 接口引用
+ ///
+ /// 货道信息
+ ///
+ private IBaseSpaceInfoService _spaceInfoService;
+
+ ///
+ /// 实时任务
+ ///
+ private IRealTaskInfoService _taskInfoService;
+
+ ///
+ /// BOM信息
+ ///
+ private IBaseBomInfoService _bomInfoService;
+
+ ///
+ /// 货道明细
+ ///
+ private IBaseSpaceDetailService _spaceDetailService;
+ #endregion
+
+ #region 委托事件
///
/// 初始化出库任务
///
@@ -61,9 +84,15 @@ namespace Aucma.Scada.Business
///
public delegate void RefreshLogMessage(string message);
public event RefreshLogMessage RefreshLogMessageEvent;
+ #endregion
private OutStoreBusiness()
{
+ _spaceInfoService = registerServices.GetService();
+ _taskInfoService = registerServices.GetService();
+ _bomInfoService = registerServices.GetService();
+ _spaceDetailService = registerServices.GetService();
+
assemblyPlanBusiness.NextPassExecutePlanInfoEvent += PlanHandle;
taskHandleBusiness.OutStoreFinsihEvent += TaskFeedback;
StartPassDown();
diff --git a/Aucma.Scada.Business/TaskHandleBusiness.cs b/Aucma.Scada.Business/OutStoreTaskHandle.cs
similarity index 93%
rename from Aucma.Scada.Business/TaskHandleBusiness.cs
rename to Aucma.Scada.Business/OutStoreTaskHandle.cs
index 9ef6e47..3597b8f 100644
--- a/Aucma.Scada.Business/TaskHandleBusiness.cs
+++ b/Aucma.Scada.Business/OutStoreTaskHandle.cs
@@ -9,35 +9,62 @@ using System.Threading.Tasks;
namespace Aucma.Scada.Business
{
- public sealed class TaskHandleBusiness
+ ///
+ /// 出库任务处理
+ ///
+ internal sealed class OutStoreTaskHandle
{
- private static readonly Lazy lazy = new Lazy(() => new TaskHandleBusiness());
- public static TaskHandleBusiness Instance
+ #region 单例实现
+ private static readonly Lazy lazy = new Lazy(() => new OutStoreTaskHandle());
+ public static OutStoreTaskHandle Instance
{
get
{
return lazy.Value;
}
}
+ #endregion
- public delegate void OutStoreFinsih(string storeCode, string taskCode);
- public event OutStoreFinsih OutStoreFinsihEvent;
+ #region 对象引用
+ private LogHelper logHelper = LogHelper.Instance;
+
+ private AppConfig appConfig = AppConfig.Instance;
+
+ private PlcConfig plcConfig = PlcConfig.Instance;
+
+ private PlcPool _pool = PlcPool.Instance;
+ #endregion
+
+ #region 私有变量
///
/// 字典存放PLC连接
///
private Dictionary _plcDictionary = new Dictionary();
- private LogHelper logHelper = LogHelper.Instance;
- private AppConfig appConfig = AppConfig.Instance;
- private PlcConfig plcConfig = PlcConfig.Instance;
- private PlcPool _pool = PlcPool.Instance;
-
+ ///
+ /// 箱壳任务编号,PLC反馈后进行赋值
+ ///
private string shellTaskCode = string.Empty;
+ ///
+ /// 内胆任务编号,PLC反馈后进行赋值
+ ///
private string linerTaskCode = string.Empty;
+ #endregion
- private TaskHandleBusiness()
+ #region 委托事件
+ ///
+ /// 出库完成
+ ///
+ ///
+ ///
+ public delegate void OutStoreFinsih(string storeCode, string taskCode);
+ public event OutStoreFinsih OutStoreFinsihEvent;
+ #endregion
+
+
+ private OutStoreTaskHandle()
{
_plcDictionary = _pool.GetAll();
}
diff --git a/Aucma.Scada.Business/RegisterServices.cs b/Aucma.Scada.Business/RegisterServices.cs
new file mode 100644
index 0000000..386ee7e
--- /dev/null
+++ b/Aucma.Scada.Business/RegisterServices.cs
@@ -0,0 +1,69 @@
+using HighWayIot.Repository.service;
+using HighWayIot.Repository.service.Impl;
+using Microsoft.Extensions.DependencyInjection;
+using System;
+
+namespace Aucma.Scada.Business
+{
+ ///
+ /// 注册服务
+ ///
+ internal sealed class RegisterServices
+ {
+ #region 单例实现
+ private static readonly Lazy lazy = new Lazy(() => new RegisterServices());
+ public static RegisterServices Instance
+ {
+ get
+ {
+ return lazy.Value;
+ }
+ }
+ #endregion
+
+ #region 接口引用
+
+ private readonly IServiceProvider _serviceProvider;
+ #endregion
+
+ private RegisterServices()
+ {
+ var services = new ServiceCollection();
+
+ #region 自动注册服务
+ // 自动注册服务
+ //Assembly.GetExecutingAssembly()
+ // .GetTypes()
+ // .Where(t => t.IsClass && !t.IsAbstract)
+ // .Where(t => t.GetInterfaces().Any())
+ // .ToList()
+ // .ForEach(t => services.AddSingleton(t.GetInterfaces().FirstOrDefault(), t));
+ #endregion
+
+ AddSingletonServices(services);
+
+ _serviceProvider = services.BuildServiceProvider();
+ }
+
+ ///
+ /// 注册服务
+ ///
+ ///
+ private void AddSingletonServices(IServiceCollection services)
+ {
+ services.AddSingleton();
+ services.AddSingleton();
+ services.AddSingleton();
+ services.AddSingleton();
+ services.AddSingleton();
+ services.AddSingleton();
+ services.AddSingleton();
+ }
+
+ public T GetService()
+ {
+ var service = _serviceProvider.GetService();
+ return service;
+ }
+ }
+}
diff --git a/Aucma.Scada.Business/TaskInfoBusiness.cs b/Aucma.Scada.Business/TaskInfoBusiness.cs
index ce72e77..d7cc6a6 100644
--- a/Aucma.Scada.Business/TaskInfoBusiness.cs
+++ b/Aucma.Scada.Business/TaskInfoBusiness.cs
@@ -1,15 +1,17 @@
using Aucma.Scada.Model.domain;
using HighWayIot.Config;
-using HighWayIot.Log4net;
using HighWayIot.Repository.service;
-using HighWayIot.Repository.service.Impl;
using System;
using System.Collections.Generic;
namespace Aucma.Scada.Business
{
+ ///
+ /// 任务业务逻辑
+ ///
public sealed class TaskInfoBusiness
{
+ #region 单例实现
private static readonly Lazy lazy = new Lazy(() => new TaskInfoBusiness());
public static TaskInfoBusiness Instance
{
@@ -18,16 +20,22 @@ namespace Aucma.Scada.Business
return lazy.Value;
}
}
+ #endregion
- private LogHelper logHelper = LogHelper.Instance;
+ #region 对象引用
private AppConfig appConfig = AppConfig.Instance;
- private IRealTaskInfoService taskInfoService = new RealTaskInfoServiceImpl();
+ private RegisterServices registerServices = RegisterServices.Instance;
+ #endregion
- public TaskInfoBusiness()
+ #region 接口引用
+ private IRealTaskInfoService _taskInfoService;
+ #endregion
+
+ private TaskInfoBusiness()
{
-
+ _taskInfoService = registerServices.GetService();
}
///
@@ -37,7 +45,7 @@ namespace Aucma.Scada.Business
///
public List GetTaskInfos(int taskType)
{
- return taskInfoService.GetTaskInfosByTaskStatus(new string[] { appConfig.shellStoreCode, appConfig.linerStoreCode }, taskType, 0);
+ return _taskInfoService.GetTaskInfosByTaskStatus(new string[] { appConfig.shellStoreCode, appConfig.linerStoreCode }, taskType, 0);
}
}
}
diff --git a/Aucma.Scada.Business/app.config b/Aucma.Scada.Business/app.config
new file mode 100644
index 0000000..bdef95f
--- /dev/null
+++ b/Aucma.Scada.Business/app.config
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll b/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll
index e48db69..c6c711f 100644
Binary files a/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll and b/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll.config b/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll.config
new file mode 100644
index 0000000..bdef95f
--- /dev/null
+++ b/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.dll.config
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.pdb b/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.pdb
index 8d8cc73..06a293a 100644
Binary files a/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.pdb and b/Aucma.Scada.Business/bin/Debug/Aucma.Scada.Business.pdb differ
diff --git a/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.dll b/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.dll
index 46fc0b5..820adb8 100644
Binary files a/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.dll and b/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.pdb b/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.pdb
index fa9f6fe..7cd2de9 100644
Binary files a/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.pdb and b/Aucma.Scada.Business/bin/Debug/HighWayIot.Repository.pdb differ
diff --git a/Aucma.Scada.Business/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll b/Aucma.Scada.Business/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll
new file mode 100644
index 0000000..c4e436d
Binary files /dev/null and b/Aucma.Scada.Business/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml b/Aucma.Scada.Business/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml
new file mode 100644
index 0000000..f8e3012
--- /dev/null
+++ b/Aucma.Scada.Business/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml
@@ -0,0 +1,403 @@
+
+
+
+ Microsoft.Bcl.AsyncInterfaces
+
+
+
+ Provides the core logic for implementing a manual-reset or .
+
+
+
+
+ The callback to invoke when the operation completes if was called before the operation completed,
+ or if the operation completed before a callback was supplied,
+ or null if a callback hasn't yet been provided and the operation hasn't yet completed.
+
+
+
+ State to pass to .
+
+
+ to flow to the callback, or null if no flowing is required.
+
+
+
+ A "captured" or with which to invoke the callback,
+ or null if no special context is required.
+
+
+
+ Whether the current operation has completed.
+
+
+ The result with which the operation succeeded, or the default value if it hasn't yet completed or failed.
+
+
+ The exception with which the operation failed, or null if it hasn't yet completed or completed successfully.
+
+
+ The current version of this value, used to help prevent misuse.
+
+
+ Gets or sets whether to force continuations to run asynchronously.
+ Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true.
+
+
+ Resets to prepare for the next operation.
+
+
+ Completes with a successful result.
+ The result.
+
+
+ Complets with an error.
+
+
+
+ Gets the operation version.
+
+
+ Gets the status of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Gets the result of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Schedules the continuation action for this operation.
+ The continuation to invoke when the operation has completed.
+ The state object to pass to when it's invoked.
+ Opaque value that was provided to the 's constructor.
+ The flags describing the behavior of the continuation.
+
+
+ Ensures that the specified token matches the current version.
+ The token supplied by .
+
+
+ Signals that the operation has completed. Invoked after the result or error has been set.
+
+
+
+ Invokes the continuation with the appropriate captured context / scheduler.
+ This assumes that if is not null we're already
+ running within that .
+
+
+
+ Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables.
+
+
+ Configures how awaits on the tasks returned from an async disposable will be performed.
+ The source async disposable.
+ Whether to capture and marshal back to the current context.
+ The configured async disposable.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+
+
+ Sets the to be passed to when iterating.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ The to use.
+ The configured enumerable.
+
+
+ Represents a builder for asynchronous iterators.
+
+
+ Creates an instance of the struct.
+ The initialized instance.
+
+
+ Invokes on the state machine while guarding the .
+ The type of the state machine.
+ The state machine instance, passed by reference.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Marks iteration as being completed, whether successfully or otherwise.
+
+
+ Gets an object that may be used to uniquely identify this builder to the debugger.
+
+
+ Indicates whether a method is an asynchronous iterator.
+
+
+ Initializes a new instance of the class.
+ The type object for the underlying state machine type that's used to implement a state machine method.
+
+
+ Provides a type that can be used to configure how awaits on an are performed.
+
+
+ Provides an awaitable async enumerable that enables cancelable iteration and configured awaits.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+ This will replace any previous value set by for this iteration.
+
+
+ Sets the to be passed to when iterating.
+ The to use.
+ The configured enumerable.
+ This will replace any previous set by for this iteration.
+
+
+ Provides an awaitable async enumerator that enables cancelable iteration and configured awaits.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true
+ if the enumerator was successfully advanced to the next element, or false if the enumerator has
+ passed the end of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+ Exposes an enumerator that provides asynchronous iteration over values of a specified type.
+ The type of values to enumerate.
+
+
+ Returns an enumerator that iterates asynchronously through the collection.
+ A that may be used to cancel the asynchronous iteration.
+ An enumerator that can be used to iterate asynchronously through the collection.
+
+
+ Supports a simple asynchronous iteration over a generic collection.
+ The type of objects to enumerate.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true if the enumerator
+ was successfully advanced to the next element, or false if the enumerator has passed the end
+ of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+ Provides a mechanism for releasing unmanaged resources asynchronously.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+
diff --git a/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..0b40961
Binary files /dev/null and b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..c706220
--- /dev/null
+++ b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1527 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
diff --git a/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.dll b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..fdcbf0b
Binary files /dev/null and b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.xml b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..cabc581
--- /dev/null
+++ b/Aucma.Scada.Business/bin/Debug/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,622 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/Aucma.Scada.Business/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll b/Aucma.Scada.Business/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..de9e124
Binary files /dev/null and b/Aucma.Scada.Business/bin/Debug/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml b/Aucma.Scada.Business/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/Aucma.Scada.Business/bin/Debug/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.Business/bin/Debug/System.Threading.Tasks.Extensions.dll b/Aucma.Scada.Business/bin/Debug/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..eeec928
Binary files /dev/null and b/Aucma.Scada.Business/bin/Debug/System.Threading.Tasks.Extensions.dll differ
diff --git a/Aucma.Scada.Business/bin/Debug/System.Threading.Tasks.Extensions.xml b/Aucma.Scada.Business/bin/Debug/System.Threading.Tasks.Extensions.xml
new file mode 100644
index 0000000..5e02a99
--- /dev/null
+++ b/Aucma.Scada.Business/bin/Debug/System.Threading.Tasks.Extensions.xml
@@ -0,0 +1,166 @@
+
+
+ System.Threading.Tasks.Extensions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Provides a value type that wraps a and a TResult, only one of which is used.
+ The result.
+
+
+ Initializes a new instance of the class using the supplied task that represents the operation.
+ The task.
+ The task argument is null.
+
+
+ Initializes a new instance of the class using the supplied result of a successful operation.
+ The result.
+
+
+ Retrieves a object that represents this .
+ The object that is wrapped in this if one exists, or a new object that represents the result.
+
+
+ Configures an awaiter for this value.
+ true to attempt to marshal the continuation back to the captured context; otherwise, false.
+ The configured awaiter.
+
+
+ Creates a method builder for use with an async method.
+ The created builder.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Creates an awaiter for this value.
+ The awaiter.
+
+
+ Returns the hash code for this instance.
+ The hash code for the current object.
+
+
+ Gets a value that indicates whether this object represents a canceled operation.
+ true if this object represents a canceled operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a completed operation.
+ true if this object represents a completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a successfully completed operation.
+ true if this object represents a successfully completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a failed operation.
+ true if this object represents a failed operation; otherwise, false.
+
+
+ Compares two values for equality.
+ The first value to compare.
+ The second value to compare.
+ true if the two values are equal; otherwise, false.
+
+
+ Determines whether two values are unequal.
+ The first value to compare.
+ The seconed value to compare.
+ true if the two values are not equal; otherwise, false.
+
+
+ Gets the result.
+ The result.
+
+
+ Returns a string that represents the current object.
+ A string that represents the current object.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.AssemblyReference.cache b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.AssemblyReference.cache
index 1630b5f..ebc574c 100644
Binary files a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.AssemblyReference.cache and b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.AssemblyReference.cache differ
diff --git a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.CoreCompileInputs.cache b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.CoreCompileInputs.cache
index b9d5652..a2cf98b 100644
--- a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.CoreCompileInputs.cache
+++ b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-185c60829673f2e3cfd6d120f59a44345aa66057
+20d093f2e08cff5cb4761eaec31b10b67198e480
diff --git a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.FileListAbsolute.txt b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.FileListAbsolute.txt
index 45506fb..74e6dc1 100644
--- a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.FileListAbsolute.txt
+++ b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.csproj.FileListAbsolute.txt
@@ -21,29 +21,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Au
C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Plc.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HslCommunication.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Plc.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Config.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Plc.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Repository.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HslCommunication.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\SqlSugar.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Config.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Plc.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Repository.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Repository.dll.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Common.dll
@@ -67,5 +44,39 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Sc
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.dll.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Business.pdb
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Model.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Config.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Plc.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Repository.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Microsoft.Bcl.AsyncInterfaces.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Microsoft.Extensions.DependencyInjection.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\System.Threading.Tasks.Extensions.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\SqlSugar.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HslCommunication.dll
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Aucma.Scada.Model.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Config.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Plc.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Repository.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\HighWayIot.Repository.dll.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Microsoft.Bcl.AsyncInterfaces.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Microsoft.Extensions.DependencyInjection.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\System.Runtime.CompilerServices.Unsafe.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\System.Threading.Tasks.Extensions.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.Business\obj\Debug\Aucma.Scada.Business.pdb
diff --git a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.dll b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.dll
index e48db69..c6c711f 100644
Binary files a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.dll and b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.dll differ
diff --git a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.pdb b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.pdb
index 8d8cc73..06a293a 100644
Binary files a/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.pdb and b/Aucma.Scada.Business/obj/Debug/Aucma.Scada.Business.pdb differ
diff --git a/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferences.cache
new file mode 100644
index 0000000..c89176e
Binary files /dev/null and b/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferences.cache differ
diff --git a/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
index 221ec88..9acb47f 100644
Binary files a/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache and b/Aucma.Scada.Business/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ
diff --git a/Aucma.Scada.Business/packages.config b/Aucma.Scada.Business/packages.config
new file mode 100644
index 0000000..dc3da19
--- /dev/null
+++ b/Aucma.Scada.Business/packages.config
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.Model/obj/Debug/Aucma.Scada.Model.csproj.AssemblyReference.cache b/Aucma.Scada.Model/obj/Debug/Aucma.Scada.Model.csproj.AssemblyReference.cache
index fa9ca24..63ddfe6 100644
Binary files a/Aucma.Scada.Model/obj/Debug/Aucma.Scada.Model.csproj.AssemblyReference.cache and b/Aucma.Scada.Model/obj/Debug/Aucma.Scada.Model.csproj.AssemblyReference.cache differ
diff --git a/Aucma.Scada.UI/Aucma.Scada.UI.csproj b/Aucma.Scada.UI/Aucma.Scada.UI.csproj
index febf305..ed917ff 100644
--- a/Aucma.Scada.UI/Aucma.Scada.UI.csproj
+++ b/Aucma.Scada.UI/Aucma.Scada.UI.csproj
@@ -5,7 +5,7 @@
Debug
AnyCPU
{43123E0B-B3B0-4FB4-A508-007D644B3E7C}
- WinExe
+ Exe
Aucma.Scada.UI
Aucma.Scada.UI
v4.8
@@ -34,6 +34,9 @@
prompt
4
+
+
+
..\packages\CommonServiceLocator.2.0.2\lib\net47\CommonServiceLocator.dll
diff --git a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll
index e48db69..c6c711f 100644
Binary files a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll and b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll differ
diff --git a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll.config b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll.config
new file mode 100644
index 0000000..bdef95f
--- /dev/null
+++ b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.dll.config
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.pdb b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.pdb
index 8d8cc73..06a293a 100644
Binary files a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.pdb and b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.Business.pdb differ
diff --git a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.UI.exe b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.UI.exe
index 0b8f0a0..402bbf2 100644
Binary files a/Aucma.Scada.UI/bin/Debug/Aucma.Scada.UI.exe and b/Aucma.Scada.UI/bin/Debug/Aucma.Scada.UI.exe differ
diff --git a/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.dll b/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.dll
index 46fc0b5..820adb8 100644
Binary files a/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.dll and b/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.dll differ
diff --git a/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.pdb b/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.pdb
index fa9f6fe..7cd2de9 100644
Binary files a/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.pdb and b/Aucma.Scada.UI/bin/Debug/HighWayIot.Repository.pdb differ
diff --git a/Aucma.Scada.UI/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll b/Aucma.Scada.UI/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll
new file mode 100644
index 0000000..c4e436d
Binary files /dev/null and b/Aucma.Scada.UI/bin/Debug/Microsoft.Bcl.AsyncInterfaces.dll differ
diff --git a/Aucma.Scada.UI/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml b/Aucma.Scada.UI/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml
new file mode 100644
index 0000000..f8e3012
--- /dev/null
+++ b/Aucma.Scada.UI/bin/Debug/Microsoft.Bcl.AsyncInterfaces.xml
@@ -0,0 +1,403 @@
+
+
+
+ Microsoft.Bcl.AsyncInterfaces
+
+
+
+ Provides the core logic for implementing a manual-reset or .
+
+
+
+
+ The callback to invoke when the operation completes if was called before the operation completed,
+ or if the operation completed before a callback was supplied,
+ or null if a callback hasn't yet been provided and the operation hasn't yet completed.
+
+
+
+ State to pass to .
+
+
+ to flow to the callback, or null if no flowing is required.
+
+
+
+ A "captured" or with which to invoke the callback,
+ or null if no special context is required.
+
+
+
+ Whether the current operation has completed.
+
+
+ The result with which the operation succeeded, or the default value if it hasn't yet completed or failed.
+
+
+ The exception with which the operation failed, or null if it hasn't yet completed or completed successfully.
+
+
+ The current version of this value, used to help prevent misuse.
+
+
+ Gets or sets whether to force continuations to run asynchronously.
+ Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true.
+
+
+ Resets to prepare for the next operation.
+
+
+ Completes with a successful result.
+ The result.
+
+
+ Complets with an error.
+
+
+
+ Gets the operation version.
+
+
+ Gets the status of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Gets the result of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Schedules the continuation action for this operation.
+ The continuation to invoke when the operation has completed.
+ The state object to pass to when it's invoked.
+ Opaque value that was provided to the 's constructor.
+ The flags describing the behavior of the continuation.
+
+
+ Ensures that the specified token matches the current version.
+ The token supplied by .
+
+
+ Signals that the operation has completed. Invoked after the result or error has been set.
+
+
+
+ Invokes the continuation with the appropriate captured context / scheduler.
+ This assumes that if is not null we're already
+ running within that .
+
+
+
+ Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables.
+
+
+ Configures how awaits on the tasks returned from an async disposable will be performed.
+ The source async disposable.
+ Whether to capture and marshal back to the current context.
+ The configured async disposable.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+
+
+ Sets the to be passed to when iterating.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ The to use.
+ The configured enumerable.
+
+
+ Represents a builder for asynchronous iterators.
+
+
+ Creates an instance of the struct.
+ The initialized instance.
+
+
+ Invokes on the state machine while guarding the .
+ The type of the state machine.
+ The state machine instance, passed by reference.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Marks iteration as being completed, whether successfully or otherwise.
+
+
+ Gets an object that may be used to uniquely identify this builder to the debugger.
+
+
+ Indicates whether a method is an asynchronous iterator.
+
+
+ Initializes a new instance of the class.
+ The type object for the underlying state machine type that's used to implement a state machine method.
+
+
+ Provides a type that can be used to configure how awaits on an are performed.
+
+
+ Provides an awaitable async enumerable that enables cancelable iteration and configured awaits.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+ This will replace any previous value set by for this iteration.
+
+
+ Sets the to be passed to when iterating.
+ The to use.
+ The configured enumerable.
+ This will replace any previous set by for this iteration.
+
+
+ Provides an awaitable async enumerator that enables cancelable iteration and configured awaits.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true
+ if the enumerator was successfully advanced to the next element, or false if the enumerator has
+ passed the end of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+ Exposes an enumerator that provides asynchronous iteration over values of a specified type.
+ The type of values to enumerate.
+
+
+ Returns an enumerator that iterates asynchronously through the collection.
+ A that may be used to cancel the asynchronous iteration.
+ An enumerator that can be used to iterate asynchronously through the collection.
+
+
+ Supports a simple asynchronous iteration over a generic collection.
+ The type of objects to enumerate.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true if the enumerator
+ was successfully advanced to the next element, or false if the enumerator has passed the end
+ of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+ Provides a mechanism for releasing unmanaged resources asynchronously.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+
diff --git a/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..0b40961
Binary files /dev/null and b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..c706220
--- /dev/null
+++ b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1527 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
diff --git a/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.dll b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..fdcbf0b
Binary files /dev/null and b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.xml b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..cabc581
--- /dev/null
+++ b/Aucma.Scada.UI/bin/Debug/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,622 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.AssemblyReference.cache b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.AssemblyReference.cache
index 94707c8..f0b026f 100644
Binary files a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.AssemblyReference.cache and b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.AssemblyReference.cache differ
diff --git a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.FileListAbsolute.txt b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.FileListAbsolute.txt
index 2bb5eea..41bb4e5 100644
--- a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.FileListAbsolute.txt
+++ b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.FileListAbsolute.txt
@@ -153,94 +153,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\Inv
C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Plc.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HslCommunication.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Plc.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.exe.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.exe
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Business.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\CommonServiceLocator.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Extras.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Platform.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Config.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Repository.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Lierda.WPFHelper.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.Wpf.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\MySql.Data.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Oracle.ManagedDataAccess.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\SqlSugar.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Data.SQLite.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Windows.Interactivity.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Plc.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Memory.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Threading.Tasks.Extensions.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HslCommunication.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Numerics.Vectors.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Buffers.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Business.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Config.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Repository.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Repository.dll.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Extras.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Extras.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Platform.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Platform.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.Wpf.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.Wpf.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Plc.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.SuggestedBindingRedirects.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.exe.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\AssemblyPlanControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\PlanInfoEditWindow.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InStoreInfo\InStoreInfoControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\LogInfoControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\MainWindow.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\InventoryInfoControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\LinerInventory.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\ShellInventory.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceDetailWindow.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceInfoControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\OutStoreInfo\OutStoreInfoControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\TaskInfo\TaskInfoControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\RecordControl.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\App.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\GeneratedInternalTypeHelper.g.cs
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI_MarkupCompile.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI_MarkupCompile.lref
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\App.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\AssemblyPlanControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\PlanInfoEditWindow.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InStoreInfo\InStoreInfoControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\LogInfoControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\MainWindow.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\InventoryInfoControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\LinerInventory.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\ShellInventory.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceDetailWindow.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceInfoControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\OutStoreInfo\OutStoreInfoControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\TaskInfo\TaskInfoControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\RecordControl.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\templates\style\resourceStyle.baml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.g.resources
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.Properties.Resources.resources
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.GenerateResource.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.exe
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.exe.config
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.exe
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.pdb
@@ -329,5 +241,100 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.exe
E:\桌面\澳柯玛MES项目\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.SuggestedBindingRedirects.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.exe.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\AssemblyPlanControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\PlanInfoEditWindow.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InStoreInfo\InStoreInfoControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\LogInfoControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\MainWindow.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\InventoryInfoControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\LinerInventory.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\ShellInventory.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceDetailWindow.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceInfoControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\OutStoreInfo\OutStoreInfoControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\TaskInfo\TaskInfoControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\RecordControl.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\App.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\GeneratedInternalTypeHelper.g.cs
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI_MarkupCompile.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI_MarkupCompile.lref
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.exe.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.exe
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.UI.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Business.dll
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Model.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\CommonServiceLocator.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Extras.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Platform.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Config.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Repository.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Lierda.WPFHelper.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.Wpf.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\MySql.Data.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Oracle.ManagedDataAccess.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\SqlSugar.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Data.SQLite.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Windows.Interactivity.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Plc.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Memory.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Threading.Tasks.Extensions.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HslCommunication.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Microsoft.Bcl.AsyncInterfaces.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Numerics.Vectors.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\System.Buffers.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Business.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Business.dll.config
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Aucma.Scada.Model.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Config.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Repository.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Repository.dll.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Extras.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Extras.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Platform.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\GalaSoft.MvvmLight.Platform.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.Wpf.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\LiveCharts.Wpf.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\HighWayIot.Plc.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Microsoft.Extensions.DependencyInjection.Abstractions.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Microsoft.Bcl.AsyncInterfaces.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\App.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\AssemblyPlanControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\AssemblyPlan\PlanInfoEditWindow.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InStoreInfo\InStoreInfoControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\LogInfoControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\MainWindow.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\InventoryInfoControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\LinerInventory.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\ShellInventory.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceDetailWindow.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\InventoryInfo\SpaceInfoControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\OutStoreInfo\OutStoreInfoControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Page\TaskInfo\TaskInfoControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\RecordControl.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\templates\style\resourceStyle.baml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.g.resources
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.Properties.Resources.resources
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.GenerateResource.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.exe
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\Aucma.Scada.UI.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Microsoft.Extensions.DependencyInjection.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\bin\Debug\Microsoft.Extensions.DependencyInjection.xml
diff --git a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.GenerateResource.cache b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.GenerateResource.cache
index 3de394b..8a0c052 100644
Binary files a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.GenerateResource.cache and b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.csproj.GenerateResource.cache differ
diff --git a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.exe b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.exe
index 0b8f0a0..402bbf2 100644
Binary files a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.exe and b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI.exe differ
diff --git a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.cache b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.cache
index d3c9a60..bf65fca 100644
--- a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.cache
+++ b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.cache
@@ -1,7 +1,7 @@
Aucma.Scada.UI
-winexe
+exe
C#
.cs
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\
diff --git a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.i.cache b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.i.cache
index 02b3c1e..75a40e3 100644
--- a/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.i.cache
+++ b/Aucma.Scada.UI/obj/Debug/Aucma.Scada.UI_MarkupCompile.i.cache
@@ -1,7 +1,7 @@
Aucma.Scada.UI
-winexe
+exe
C#
.cs
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\Aucma.Scada.UI\obj\Debug\
diff --git a/HighWayIot.Common/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/HighWayIot.Common/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache
index 4a772f3..fb29dab 100644
Binary files a/HighWayIot.Common/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache and b/HighWayIot.Common/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache differ
diff --git a/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.AssemblyReference.cache b/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.AssemblyReference.cache
index 99f8eb1..25af117 100644
Binary files a/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.AssemblyReference.cache and b/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.FileListAbsolute.txt b/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.FileListAbsolute.txt
index d551c86..54ae2da 100644
--- a/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Common/obj/Debug/HighWayIot.Common.csproj.FileListAbsolute.txt
@@ -46,18 +46,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighW
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.CopyComplete
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Common.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Common.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Log4net.dll
@@ -70,3 +58,15 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Common\obj\Debug\HighWayIot.Common.pdb
diff --git a/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.AssemblyReference.cache b/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.AssemblyReference.cache
index 75919f9..d5e95a7 100644
Binary files a/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.AssemblyReference.cache and b/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.FileListAbsolute.txt b/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.FileListAbsolute.txt
index ba10061..b941180 100644
--- a/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Config/obj/Debug/HighWayIot.Config.csproj.FileListAbsolute.txt
@@ -12,20 +12,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighW
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.CopyComplete
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Config.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Config.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Config.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Config.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Common.dll
@@ -40,3 +26,17 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Config.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Config.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Config\obj\Debug\HighWayIot.Config.pdb
diff --git a/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.AssemblyReference.cache b/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.AssemblyReference.cache
index baa3e38..8e73522 100644
Binary files a/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.AssemblyReference.cache and b/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.FileListAbsolute.txt b/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.FileListAbsolute.txt
index 661a45d..6e7c001 100644
--- a/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Log4net/obj/Debug/HighWayIot.Log4net.csproj.FileListAbsolute.txt
@@ -28,14 +28,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\High
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.pdb
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\bin\Debug\HighWayIot.Log4net.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\bin\Debug\HighWayIot.Log4net.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\bin\Debug\log4net.dll
@@ -44,3 +36,11 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Log4net\obj\Debug\HighWayIot.Log4net.pdb
diff --git a/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.AssemblyReference.cache b/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.AssemblyReference.cache
index accb56e..f23d94a 100644
Binary files a/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.AssemblyReference.cache and b/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.FileListAbsolute.txt b/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.FileListAbsolute.txt
index c60f3f0..ad551bb 100644
--- a/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Mqtt/obj/Debug/HighWayIot.Mqtt.csproj.FileListAbsolute.txt
@@ -34,15 +34,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWay
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.pdb
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\HighWayIot.Mqtt.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\HighWayIot.Mqtt.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\MQTTnet.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\HighWayIot.Mqtt.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\HighWayIot.Mqtt.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\log4net.dll
@@ -52,3 +43,12 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mq
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\HighWayIot.Mqtt.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\HighWayIot.Mqtt.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\bin\Debug\MQTTnet.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Mqtt\obj\Debug\HighWayIot.Mqtt.pdb
diff --git a/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.AssemblyReference.cache b/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.AssemblyReference.cache
index 89fcac2..2a088c7 100644
Binary files a/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.AssemblyReference.cache and b/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.FileListAbsolute.txt b/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.FileListAbsolute.txt
index a43d580..9a490db 100644
--- a/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Plc/obj/Debug/HighWayIot.Plc.csproj.FileListAbsolute.txt
@@ -58,21 +58,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayI
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.CopyComplete
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Plc.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Plc.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HslCommunication.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Plc.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Plc.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Common.dll
@@ -88,3 +73,18 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Plc.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Plc.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HslCommunication.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Plc\obj\Debug\HighWayIot.Plc.pdb
diff --git a/HighWayIot.Repository/SqlSugarHelper.cs b/HighWayIot.Repository/SqlSugarHelper.cs
index 5e79f3e..f618acc 100644
--- a/HighWayIot.Repository/SqlSugarHelper.cs
+++ b/HighWayIot.Repository/SqlSugarHelper.cs
@@ -19,14 +19,14 @@ namespace HighWayIot.Repository
* Sqlite:获取debug路径下的数据库文件,不建议直接写死路径
* private static string sqliteConnStr = $"Data Source={Path.GetFullPath("data\\data.db")};Version=3";
*/
- private static string sqliteConnStr = "Data Source=Z:\\Desktop\\日常代码\\HighWayIot\\HighWayIot\\bin\\Debug\\data\\data.db;Version=3";
+ //private static string sqliteConnStr = "Data Source=Z:\\Desktop\\日常代码\\HighWayIot\\HighWayIot\\bin\\Debug\\data\\data.db;Version=3";
/**
* Mysql
*/
- private static string mysqlConnStr = "Data Source=124.70.63.37;Port=6000;Initial Catalog=ry-cloud;uid=root;pwd=haiwei@123;Charset=utf8mb4;SslMode=none";
+ //private static string mysqlConnStr = "Data Source=124.70.63.37;Port=6000;Initial Catalog=ry-cloud;uid=root;pwd=haiwei@123;Charset=utf8mb4;SslMode=none";
- private static string oracleConnStr = "Data Source=175.27.215.92/helowin;User ID=aucma_mes;Password=aucma";
+ //private static string oracleConnStr = "Data Source=175.27.215.92/helowin;User ID=aucma_mes;Password=aucma";
#endregion
//如果是固定多库可以传 new SqlSugarScope(List,db=>{}) 文档:多租户
diff --git a/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.dll b/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.dll
index 46fc0b5..820adb8 100644
Binary files a/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.dll and b/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.dll differ
diff --git a/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.pdb b/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.pdb
index fa9f6fe..7cd2de9 100644
Binary files a/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.pdb and b/HighWayIot.Repository/bin/Debug/HighWayIot.Repository.pdb differ
diff --git a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.AssemblyReference.cache b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.AssemblyReference.cache
index 3ba1af8..18798c3 100644
Binary files a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.AssemblyReference.cache and b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.FileListAbsolute.txt b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.FileListAbsolute.txt
index 11a0c2d..c54d095 100644
--- a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.csproj.FileListAbsolute.txt
@@ -63,29 +63,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\obj\Debug\H
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\bin\Debug\MySql.Data.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\bin\Debug\SqlSugar.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Data.SQLite.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.dll.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Config.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Oracle.ManagedDataAccess.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Memory.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Threading.Tasks.Extensions.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Numerics.Vectors.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Buffers.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Config.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.dll.config
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.pdb
@@ -109,5 +86,28 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWay
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.dll.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Repository.pdb
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Aucma.Scada.Model.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Config.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Oracle.ManagedDataAccess.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Memory.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Threading.Tasks.Extensions.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Numerics.Vectors.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\System.Buffers.dll
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Aucma.Scada.Model.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Config.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Repository\obj\Debug\HighWayIot.Repository.pdb
diff --git a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.dll b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.dll
index 46fc0b5..820adb8 100644
Binary files a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.dll and b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.dll differ
diff --git a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.pdb b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.pdb
index fa9f6fe..7cd2de9 100644
Binary files a/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.pdb and b/HighWayIot.Repository/obj/Debug/HighWayIot.Repository.pdb differ
diff --git a/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.AssemblyReference.cache b/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.AssemblyReference.cache
index f288df9..a53b224 100644
Binary files a/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.AssemblyReference.cache and b/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.FileListAbsolute.txt b/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.FileListAbsolute.txt
index 7b129bd..6686572 100644
--- a/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.FileListAbsolute.txt
+++ b/HighWayIot.Rfid/obj/Debug/HighWayIot.Rfid.csproj.FileListAbsolute.txt
@@ -58,21 +58,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWay
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.CopyComplete
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Rfid.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Rfid.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\GRreader.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Rfid.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Rfid.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\bin\Debug\GRreader.dll
@@ -88,3 +73,18 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rf
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Rfid.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Rfid.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\GRreader.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.Rfid\obj\Debug\HighWayIot.Rfid.pdb
diff --git a/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.AssemblyReference.cache b/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.AssemblyReference.cache
index ebec61d..65beccc 100644
Binary files a/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.AssemblyReference.cache and b/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.FileListAbsolute.txt b/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.FileListAbsolute.txt
index 347ac3f..9cfc5d5 100644
--- a/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.FileListAbsolute.txt
+++ b/HighWayIot.TouchSocket/obj/Debug/HighWayIot.TouchSocket.csproj.FileListAbsolute.txt
@@ -30,13 +30,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.pdb
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\bin\Debug\HighWayIot.TouchSocket.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\bin\Debug\HighWayIot.TouchSocket.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\bin\Debug\HighWayIot.TouchSocket.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\bin\Debug\HighWayIot.TouchSocket.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.AssemblyReference.cache
@@ -44,3 +37,10 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWa
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.dll
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\bin\Debug\HighWayIot.TouchSocket.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\bin\Debug\HighWayIot.TouchSocket.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot.TouchSocket\obj\Debug\HighWayIot.TouchSocket.pdb
diff --git a/HighWayIot/Program.cs b/HighWayIot/Program.cs
index 01951b7..007b513 100644
--- a/HighWayIot/Program.cs
+++ b/HighWayIot/Program.cs
@@ -1,6 +1,4 @@
using HighWayIot.Log4net;
-using HighWayIot.Repository.service;
-using HighWayIot.Repository.service.Impl;
namespace HighWayIot
{
@@ -8,12 +6,6 @@ namespace HighWayIot
{
private static LogHelper logger = LogHelper.Instance;
- private static ISysUserInfoService mysqlTest = new SysUserInfoServiceImpl();
-
- private static IBaseBomInfoService oracleTest = new BaseBomInfoServiceImpl();
-
- private static readonly IBaseSpaceInfoService spaceInfoService = new BaseSpaceInfoServiceImpl();
- private static IRealTaskInfoService _taskInfoService = new RealTaskInfoServiceImpl();
static void Main(string[] args)
{
diff --git a/HighWayIot/bin/Debug/HighWayIot.Repository.dll b/HighWayIot/bin/Debug/HighWayIot.Repository.dll
index 46fc0b5..820adb8 100644
Binary files a/HighWayIot/bin/Debug/HighWayIot.Repository.dll and b/HighWayIot/bin/Debug/HighWayIot.Repository.dll differ
diff --git a/HighWayIot/bin/Debug/HighWayIot.Repository.pdb b/HighWayIot/bin/Debug/HighWayIot.Repository.pdb
index fa9f6fe..7cd2de9 100644
Binary files a/HighWayIot/bin/Debug/HighWayIot.Repository.pdb and b/HighWayIot/bin/Debug/HighWayIot.Repository.pdb differ
diff --git a/HighWayIot/bin/Debug/HighWayIot.exe b/HighWayIot/bin/Debug/HighWayIot.exe
index e65310e..b89214f 100644
Binary files a/HighWayIot/bin/Debug/HighWayIot.exe and b/HighWayIot/bin/Debug/HighWayIot.exe differ
diff --git a/HighWayIot/bin/Debug/HighWayIot.pdb b/HighWayIot/bin/Debug/HighWayIot.pdb
index c70144f..7806031 100644
Binary files a/HighWayIot/bin/Debug/HighWayIot.pdb and b/HighWayIot/bin/Debug/HighWayIot.pdb differ
diff --git a/HighWayIot/obj/Debug/HighWayIot.csproj.AssemblyReference.cache b/HighWayIot/obj/Debug/HighWayIot.csproj.AssemblyReference.cache
index c71d79e..661dbb7 100644
Binary files a/HighWayIot/obj/Debug/HighWayIot.csproj.AssemblyReference.cache and b/HighWayIot/obj/Debug/HighWayIot.csproj.AssemblyReference.cache differ
diff --git a/HighWayIot/obj/Debug/HighWayIot.csproj.FileListAbsolute.txt b/HighWayIot/obj/Debug/HighWayIot.csproj.FileListAbsolute.txt
index 2d09125..152a184 100644
--- a/HighWayIot/obj/Debug/HighWayIot.csproj.FileListAbsolute.txt
+++ b/HighWayIot/obj/Debug/HighWayIot.csproj.FileListAbsolute.txt
@@ -81,35 +81,6 @@ C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.e
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.pdb
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot\bin\Debug\MySql.Data.dll
C:\项目代码\澳柯玛MES项目\Aucma.Scada\HighWayIot\bin\Debug\System.Data.SQLite.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.exe.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.exe
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Repository.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Oracle.ManagedDataAccess.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\log4net.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\SqlSugar.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Common.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Config.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Memory.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Threading.Tasks.Extensions.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Newtonsoft.Json.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Numerics.Vectors.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Buffers.dll
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Log4net.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Repository.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Repository.dll.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Common.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Config.pdb
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Newtonsoft.Json.xml
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.AssemblyReference.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.SuggestedBindingRedirects.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.exe.config
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.CoreCompileInputs.cache
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.CopyComplete
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.exe
-E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.pdb
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.exe.config
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.exe
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.pdb
@@ -139,5 +110,34 @@ E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.CopyComplete
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.exe
E:\桌面\澳柯玛MES项目\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.exe.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.exe
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Repository.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Oracle.ManagedDataAccess.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\log4net.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\SqlSugar.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Common.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Config.dll
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Aucma.Scada.Model.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Memory.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Threading.Tasks.Extensions.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Newtonsoft.Json.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Numerics.Vectors.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Runtime.CompilerServices.Unsafe.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\System.Buffers.dll
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Log4net.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Repository.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Repository.dll.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Common.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\HighWayIot.Config.pdb
E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Aucma.Scada.Model.pdb
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\bin\Debug\Newtonsoft.Json.xml
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.AssemblyReference.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.SuggestedBindingRedirects.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.exe.config
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.CoreCompileInputs.cache
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.csproj.CopyComplete
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.exe
+E:\桌面\澳柯玛MES项目\程序设计\Aucma.Scada\HighWayIot\obj\Debug\HighWayIot.pdb
diff --git a/HighWayIot/obj/Debug/HighWayIot.exe b/HighWayIot/obj/Debug/HighWayIot.exe
index e65310e..b89214f 100644
Binary files a/HighWayIot/obj/Debug/HighWayIot.exe and b/HighWayIot/obj/Debug/HighWayIot.exe differ
diff --git a/HighWayIot/obj/Debug/HighWayIot.pdb b/HighWayIot/obj/Debug/HighWayIot.pdb
index c70144f..7806031 100644
Binary files a/HighWayIot/obj/Debug/HighWayIot.pdb and b/HighWayIot/obj/Debug/HighWayIot.pdb differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/.signature.p7s b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/.signature.p7s
new file mode 100644
index 0000000..c344387
Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/.signature.p7s differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/Icon.png b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/Icon.png
new file mode 100644
index 0000000..a0f1fdb
Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/Icon.png differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/LICENSE.TXT b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/Microsoft.Bcl.AsyncInterfaces.7.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/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/Microsoft.Bcl.AsyncInterfaces.7.0.0.nupkg b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/Microsoft.Bcl.AsyncInterfaces.7.0.0.nupkg
new file mode 100644
index 0000000..865e310
Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/Microsoft.Bcl.AsyncInterfaces.7.0.0.nupkg differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..c682d59
--- /dev/null
+++ b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,1145 @@
+.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/dotnet/aspnetcore/blob/main/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-2022 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
+https://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+ version 1.2.12, March 27th, 2022
+
+ Copyright (C) 1995-2022 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 xoshiro RNGs
+--------------------------------
+
+Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org)
+
+To the extent possible under law, the author has dedicated all copyright
+and related and neighboring rights to this software to the public domain
+worldwide. This software is distributed without any warranty.
+
+See .
+
+License for fastmod (https://github.com/lemire/fastmod) and ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data)
+--------------------------------------
+
+ 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 for sse4-strstr (https://github.com/WojciechMula/sse4-strstr)
+--------------------------------------
+
+ Copyright (c) 2008-2016, Wojciech Muła
+ 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 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.
+
+License notice for musl
+-----------------------
+
+musl as a whole is licensed under the following standard MIT license:
+
+Copyright © 2005-2020 Rich Felker, et al.
+
+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 "Faster Unsigned Division by Constants"
+------------------------------
+
+Reference implementations of computing and using the "magic number" approach to dividing
+by constants, including codegen instructions. The unsigned division incorporates the
+"round down" optimization per ridiculous_fish.
+
+This is free and unencumbered software. Any copyright is dedicated to the Public Domain.
+
+
+License notice for mimalloc
+-----------------------------------
+
+MIT License
+
+Copyright (c) 2019 Microsoft Corporation, Daan Leijen
+
+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 for remote stack unwind (https://github.com/llvm/llvm-project/blob/main/lldb/source/Symbol/CompactUnwindInfo.cpp)
+--------------------------------------
+
+Copyright 2019 LLVM Project
+
+Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions;
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+https://llvm.org/LICENSE.txt
+
+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 Apple header files
+-------------------------------------
+
+Copyright (c) 1980, 1986, 1993
+ 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. All advertising materials mentioning features or use of this software
+ must display the following acknowledgement:
+ This product includes software developed by the University of
+ California, Berkeley and its contributors.
+4. 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 JavaScript queues
+-------------------------------------
+
+CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER.
+
+Statement of Purpose
+The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").
+Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.
+For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:
+the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;
+moral rights retained by the original author(s) and/or performer(s);
+publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;
+rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;
+rights protecting the extraction, dissemination, use and reuse of data in a Work;
+database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and
+other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.
+2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.
+3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.
+4. Limitations and Disclaimers.
+a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
+b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.
+c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.
+d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.
+
+
+License notice for FastFloat algorithm
+-------------------------------------
+MIT License
+Copyright (c) 2021 csFastFloat 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.
+
+License notice for MsQuic
+--------------------------------------
+
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT License.
+
+Available at
+https://github.com/microsoft/msquic/blob/main/LICENSE
+
+License notice for m-ou-se/floatconv
+-------------------------------
+
+Copyright (c) 2020 Mara Bos
+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 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 code from The Practice of Programming
+-------------------------------
+
+Copyright (C) 1999 Lucent Technologies
+
+Excerpted from 'The Practice of Programming
+by Brian W. Kernighan and Rob Pike
+
+You may use this code for any purpose, as long as you leave the copyright notice and book citation attached.
+
+Notice for Euclidean Affine Functions and Applications to Calendar
+Algorithms
+-------------------------------
+
+Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar
+Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf
+
+License notice for amd/aocl-libm-ose
+-------------------------------
+
+Copyright (C) 2008-2020 Advanced Micro Devices, 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:
+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 copyright holder 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 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.
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets
new file mode 100644
index 0000000..a2b6039
--- /dev/null
+++ b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/buildTransitive/net461/Microsoft.Bcl.AsyncInterfaces.targets
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/buildTransitive/net462/_._ b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/buildTransitive/net462/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll
new file mode 100644
index 0000000..c4e436d
Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.dll differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml
new file mode 100644
index 0000000..f8e3012
--- /dev/null
+++ b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/net462/Microsoft.Bcl.AsyncInterfaces.xml
@@ -0,0 +1,403 @@
+
+
+
+ Microsoft.Bcl.AsyncInterfaces
+
+
+
+ Provides the core logic for implementing a manual-reset or .
+
+
+
+
+ The callback to invoke when the operation completes if was called before the operation completed,
+ or if the operation completed before a callback was supplied,
+ or null if a callback hasn't yet been provided and the operation hasn't yet completed.
+
+
+
+ State to pass to .
+
+
+ to flow to the callback, or null if no flowing is required.
+
+
+
+ A "captured" or with which to invoke the callback,
+ or null if no special context is required.
+
+
+
+ Whether the current operation has completed.
+
+
+ The result with which the operation succeeded, or the default value if it hasn't yet completed or failed.
+
+
+ The exception with which the operation failed, or null if it hasn't yet completed or completed successfully.
+
+
+ The current version of this value, used to help prevent misuse.
+
+
+ Gets or sets whether to force continuations to run asynchronously.
+ Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true.
+
+
+ Resets to prepare for the next operation.
+
+
+ Completes with a successful result.
+ The result.
+
+
+ Complets with an error.
+
+
+
+ Gets the operation version.
+
+
+ Gets the status of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Gets the result of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Schedules the continuation action for this operation.
+ The continuation to invoke when the operation has completed.
+ The state object to pass to when it's invoked.
+ Opaque value that was provided to the 's constructor.
+ The flags describing the behavior of the continuation.
+
+
+ Ensures that the specified token matches the current version.
+ The token supplied by .
+
+
+ Signals that the operation has completed. Invoked after the result or error has been set.
+
+
+
+ Invokes the continuation with the appropriate captured context / scheduler.
+ This assumes that if is not null we're already
+ running within that .
+
+
+
+ Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables.
+
+
+ Configures how awaits on the tasks returned from an async disposable will be performed.
+ The source async disposable.
+ Whether to capture and marshal back to the current context.
+ The configured async disposable.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+
+
+ Sets the to be passed to when iterating.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ The to use.
+ The configured enumerable.
+
+
+ Represents a builder for asynchronous iterators.
+
+
+ Creates an instance of the struct.
+ The initialized instance.
+
+
+ Invokes on the state machine while guarding the .
+ The type of the state machine.
+ The state machine instance, passed by reference.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Marks iteration as being completed, whether successfully or otherwise.
+
+
+ Gets an object that may be used to uniquely identify this builder to the debugger.
+
+
+ Indicates whether a method is an asynchronous iterator.
+
+
+ Initializes a new instance of the class.
+ The type object for the underlying state machine type that's used to implement a state machine method.
+
+
+ Provides a type that can be used to configure how awaits on an are performed.
+
+
+ Provides an awaitable async enumerable that enables cancelable iteration and configured awaits.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+ This will replace any previous value set by for this iteration.
+
+
+ Sets the to be passed to when iterating.
+ The to use.
+ The configured enumerable.
+ This will replace any previous set by for this iteration.
+
+
+ Provides an awaitable async enumerator that enables cancelable iteration and configured awaits.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true
+ if the enumerator was successfully advanced to the next element, or false if the enumerator has
+ passed the end of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+ Exposes an enumerator that provides asynchronous iteration over values of a specified type.
+ The type of values to enumerate.
+
+
+ Returns an enumerator that iterates asynchronously through the collection.
+ A that may be used to cancel the asynchronous iteration.
+ An enumerator that can be used to iterate asynchronously through the collection.
+
+
+ Supports a simple asynchronous iteration over a generic collection.
+ The type of objects to enumerate.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true if the enumerator
+ was successfully advanced to the next element, or false if the enumerator has passed the end
+ of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+ Provides a mechanism for releasing unmanaged resources asynchronously.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll
new file mode 100644
index 0000000..cd1ca92
Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.dll differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml
new file mode 100644
index 0000000..f8e3012
--- /dev/null
+++ b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.0/Microsoft.Bcl.AsyncInterfaces.xml
@@ -0,0 +1,403 @@
+
+
+
+ Microsoft.Bcl.AsyncInterfaces
+
+
+
+ Provides the core logic for implementing a manual-reset or .
+
+
+
+
+ The callback to invoke when the operation completes if was called before the operation completed,
+ or if the operation completed before a callback was supplied,
+ or null if a callback hasn't yet been provided and the operation hasn't yet completed.
+
+
+
+ State to pass to .
+
+
+ to flow to the callback, or null if no flowing is required.
+
+
+
+ A "captured" or with which to invoke the callback,
+ or null if no special context is required.
+
+
+
+ Whether the current operation has completed.
+
+
+ The result with which the operation succeeded, or the default value if it hasn't yet completed or failed.
+
+
+ The exception with which the operation failed, or null if it hasn't yet completed or completed successfully.
+
+
+ The current version of this value, used to help prevent misuse.
+
+
+ Gets or sets whether to force continuations to run asynchronously.
+ Continuations may run asynchronously if this is false, but they'll never run synchronously if this is true.
+
+
+ Resets to prepare for the next operation.
+
+
+ Completes with a successful result.
+ The result.
+
+
+ Complets with an error.
+
+
+
+ Gets the operation version.
+
+
+ Gets the status of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Gets the result of the operation.
+ Opaque value that was provided to the 's constructor.
+
+
+ Schedules the continuation action for this operation.
+ The continuation to invoke when the operation has completed.
+ The state object to pass to when it's invoked.
+ Opaque value that was provided to the 's constructor.
+ The flags describing the behavior of the continuation.
+
+
+ Ensures that the specified token matches the current version.
+ The token supplied by .
+
+
+ Signals that the operation has completed. Invoked after the result or error has been set.
+
+
+
+ Invokes the continuation with the appropriate captured context / scheduler.
+ This assumes that if is not null we're already
+ running within that .
+
+
+
+ Provides a set of static methods for configuring -related behaviors on asynchronous enumerables and disposables.
+
+
+ Configures how awaits on the tasks returned from an async disposable will be performed.
+ The source async disposable.
+ Whether to capture and marshal back to the current context.
+ The configured async disposable.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+
+
+ Sets the to be passed to when iterating.
+ The type of the objects being iterated.
+ The source enumerable being iterated.
+ The to use.
+ The configured enumerable.
+
+
+ Represents a builder for asynchronous iterators.
+
+
+ Creates an instance of the struct.
+ The initialized instance.
+
+
+ Invokes on the state machine while guarding the .
+ The type of the state machine.
+ The state machine instance, passed by reference.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Schedules the state machine to proceed to the next action when the specified awaiter completes.
+ The type of the awaiter.
+ The type of the state machine.
+ The awaiter.
+ The state machine.
+
+
+ Marks iteration as being completed, whether successfully or otherwise.
+
+
+ Gets an object that may be used to uniquely identify this builder to the debugger.
+
+
+ Indicates whether a method is an asynchronous iterator.
+
+
+ Initializes a new instance of the class.
+ The type object for the underlying state machine type that's used to implement a state machine method.
+
+
+ Provides a type that can be used to configure how awaits on an are performed.
+
+
+ Provides an awaitable async enumerable that enables cancelable iteration and configured awaits.
+
+
+ Configures how awaits on the tasks returned from an async iteration will be performed.
+ Whether to capture and marshal back to the current context.
+ The configured enumerable.
+ This will replace any previous value set by for this iteration.
+
+
+ Sets the to be passed to when iterating.
+ The to use.
+ The configured enumerable.
+ This will replace any previous set by for this iteration.
+
+
+ Provides an awaitable async enumerator that enables cancelable iteration and configured awaits.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true
+ if the enumerator was successfully advanced to the next element, or false if the enumerator has
+ passed the end of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+ Exposes an enumerator that provides asynchronous iteration over values of a specified type.
+ The type of values to enumerate.
+
+
+ Returns an enumerator that iterates asynchronously through the collection.
+ A that may be used to cancel the asynchronous iteration.
+ An enumerator that can be used to iterate asynchronously through the collection.
+
+
+ Supports a simple asynchronous iteration over a generic collection.
+ The type of objects to enumerate.
+
+
+ Advances the enumerator asynchronously to the next element of the collection.
+
+ A that will complete with a result of true if the enumerator
+ was successfully advanced to the next element, or false if the enumerator has passed the end
+ of the collection.
+
+
+
+ Gets the element in the collection at the current position of the enumerator.
+
+
+ Provides a mechanism for releasing unmanaged resources asynchronously.
+
+
+
+ Performs application-defined tasks associated with freeing, releasing, or
+ resetting unmanaged resources asynchronously.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll
new file mode 100644
index 0000000..f5f1cee
Binary files /dev/null and b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll differ
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml
new file mode 100644
index 0000000..217d476
--- /dev/null
+++ b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/lib/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.xml
@@ -0,0 +1,124 @@
+
+
+
+ Microsoft.Bcl.AsyncInterfaces
+
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+
diff --git a/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/useSharedDesignerContext.txt b/packages/Microsoft.Bcl.AsyncInterfaces.7.0.0/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/.signature.p7s b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/.signature.p7s
new file mode 100644
index 0000000..fe1e0db
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/.signature.p7s differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/Icon.png b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/Icon.png
new file mode 100644
index 0000000..a0f1fdb
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/Icon.png differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/LICENSE.TXT b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.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/packages/Microsoft.Extensions.DependencyInjection.7.0.0/Microsoft.Extensions.DependencyInjection.7.0.0.nupkg b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/Microsoft.Extensions.DependencyInjection.7.0.0.nupkg
new file mode 100644
index 0000000..6af425d
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/Microsoft.Extensions.DependencyInjection.7.0.0.nupkg differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..c682d59
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,1145 @@
+.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/dotnet/aspnetcore/blob/main/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-2022 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
+https://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+ version 1.2.12, March 27th, 2022
+
+ Copyright (C) 1995-2022 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 xoshiro RNGs
+--------------------------------
+
+Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org)
+
+To the extent possible under law, the author has dedicated all copyright
+and related and neighboring rights to this software to the public domain
+worldwide. This software is distributed without any warranty.
+
+See .
+
+License for fastmod (https://github.com/lemire/fastmod) and ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data)
+--------------------------------------
+
+ 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 for sse4-strstr (https://github.com/WojciechMula/sse4-strstr)
+--------------------------------------
+
+ Copyright (c) 2008-2016, Wojciech Muła
+ 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 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.
+
+License notice for musl
+-----------------------
+
+musl as a whole is licensed under the following standard MIT license:
+
+Copyright © 2005-2020 Rich Felker, et al.
+
+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 "Faster Unsigned Division by Constants"
+------------------------------
+
+Reference implementations of computing and using the "magic number" approach to dividing
+by constants, including codegen instructions. The unsigned division incorporates the
+"round down" optimization per ridiculous_fish.
+
+This is free and unencumbered software. Any copyright is dedicated to the Public Domain.
+
+
+License notice for mimalloc
+-----------------------------------
+
+MIT License
+
+Copyright (c) 2019 Microsoft Corporation, Daan Leijen
+
+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 for remote stack unwind (https://github.com/llvm/llvm-project/blob/main/lldb/source/Symbol/CompactUnwindInfo.cpp)
+--------------------------------------
+
+Copyright 2019 LLVM Project
+
+Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions;
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+https://llvm.org/LICENSE.txt
+
+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 Apple header files
+-------------------------------------
+
+Copyright (c) 1980, 1986, 1993
+ 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. All advertising materials mentioning features or use of this software
+ must display the following acknowledgement:
+ This product includes software developed by the University of
+ California, Berkeley and its contributors.
+4. 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 JavaScript queues
+-------------------------------------
+
+CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER.
+
+Statement of Purpose
+The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").
+Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.
+For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:
+the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;
+moral rights retained by the original author(s) and/or performer(s);
+publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;
+rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;
+rights protecting the extraction, dissemination, use and reuse of data in a Work;
+database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and
+other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.
+2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.
+3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.
+4. Limitations and Disclaimers.
+a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
+b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.
+c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.
+d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.
+
+
+License notice for FastFloat algorithm
+-------------------------------------
+MIT License
+Copyright (c) 2021 csFastFloat 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.
+
+License notice for MsQuic
+--------------------------------------
+
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT License.
+
+Available at
+https://github.com/microsoft/msquic/blob/main/LICENSE
+
+License notice for m-ou-se/floatconv
+-------------------------------
+
+Copyright (c) 2020 Mara Bos
+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 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 code from The Practice of Programming
+-------------------------------
+
+Copyright (C) 1999 Lucent Technologies
+
+Excerpted from 'The Practice of Programming
+by Brian W. Kernighan and Rob Pike
+
+You may use this code for any purpose, as long as you leave the copyright notice and book citation attached.
+
+Notice for Euclidean Affine Functions and Applications to Calendar
+Algorithms
+-------------------------------
+
+Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar
+Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf
+
+License notice for amd/aocl-libm-ose
+-------------------------------
+
+Copyright (C) 2008-2020 Advanced Micro Devices, 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:
+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 copyright holder 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 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.
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets
new file mode 100644
index 0000000..6acc4f3
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.targets
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net462/_._ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net462/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net6.0/_._ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/net6.0/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets
new file mode 100644
index 0000000..6ae3281
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.targets
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.dll b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..fdcbf0b
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.xml b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..cabc581
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,622 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.dll b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..2c64257
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.xml b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..f5437ee
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,314 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.dll b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..2dcd31b
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.xml b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..0adf21f
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,214 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..7e2394b
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..cabc581
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,622 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll
new file mode 100644
index 0000000..b65e7d1
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml
new file mode 100644
index 0000000..1c3d092
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.xml
@@ -0,0 +1,558 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection
+
+
+
+
+ Pretty print a type name.
+
+ The .
+ true to print a fully qualified name.
+ true to include generic parameter names.
+ true to include generic parameters.
+ Character to use as a delimiter in nested type names
+ The pretty printed type name.
+
+
+
+ Default implementation of .
+
+
+
+
+ Initializes a new instance of the class
+ with default options.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified .
+
+ The options to use for this instance.
+
+
+
+
+
+
+
+
+
+ Extension methods for building a from an .
+
+
+
+
+ Creates a containing services from the provided .
+
+ The containing service descriptors.
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false.
+
+ The .
+
+
+
+ Creates a containing services from the provided
+ optionally enabling scope validation.
+
+ The containing service descriptors.
+
+ Configures various service provider behaviors.
+
+ The .
+
+
+
+ Validates that two generic type definitions have compatible trimming annotations on their generic arguments.
+
+
+ When open generic types are used in DI, there is an error when the concrete implementation type
+ has [DynamicallyAccessedMembers] attributes on a generic argument type, but the interface/service type
+ doesn't have matching annotations. The problem is that the trimmer doesn't see the members that need to
+ be preserved on the type being passed to the generic argument. But when the interface/service type also has
+ the annotations, the trimmer will see which members need to be preserved on the closed generic argument type.
+
+
+
+ Not null if throwIfCallSiteNotFound is true
+
+
+
+ Type of service being cached
+
+
+
+
+ Reverse index of the service when resolved in IEnumerable<Type> where default instance gets slot 0.
+ For example for service collection
+ IService Impl1
+ IService Impl2
+ IService Impl3
+ We would get the following cache keys:
+ Impl1 2
+ Impl2 1
+ Impl3 0
+
+
+
+ Indicates whether the current instance is equal to another instance of the same type.
+ An instance to compare with this instance.
+ true if the current instance is equal to the other instance; otherwise, false.
+
+
+
+ Summary description for ServiceCallSite
+
+
+
+
+ The default IServiceProvider.
+
+
+
+
+ Gets the service object of the specified type.
+
+ The type of the service to get.
+ The service that was produced.
+
+
+
+
+
+
+
+
+
+ Options for configuring various behaviors of the default implementation.
+
+
+
+
+ true to perform check verifying that scoped services never gets resolved from root provider; otherwise false. Defaults to false.
+
+
+
+
+ true to perform check verifying that all services can be created during BuildServiceProvider call; otherwise false. Defaults to false.
+ NOTE: this check doesn't verify open generics services.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Unable to activate type '{0}'. The following constructors are ambiguous:
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A circular dependency was detected for the service of type '{0}'.
+
+
+ No constructor for type '{0}' can be instantiated using services from the service container and default values.
+
+
+ Open generic service type '{0}' requires registering an open generic implementation type.
+
+
+ Arity of open generic service type '{0}' does not equal arity of open generic implementation type '{1}'.
+
+
+ Cannot instantiate implementation type '{0}' for service type '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ Cannot consume {2} service '{0}' from {3} '{1}'.
+
+
+ Cannot resolve '{0}' from root provider because it requires {2} service '{1}'.
+
+
+ Cannot resolve {1} service '{0}' from root provider.
+
+
+ Constant value of type '{0}' can't be converted to service type '{1}'
+
+
+ Implementation type '{0}' can't be converted to service type '{1}'
+
+
+ '{0}' type only implements IAsyncDisposable. Use DisposeAsync to dispose the container.
+
+
+ GetCaptureDisposable call is supported only for main scope
+
+
+ Invalid service descriptor
+
+
+ Requested service descriptor doesn't exist.
+
+
+ Call site type {0} is not supported
+
+
+ Generic implementation type '{0}' has a DynamicallyAccessedMembers attribute applied to a generic argument type, but the service type '{1}' doesn't have a matching DynamicallyAccessedMembers attribute on its generic argument type.
+
+
+ Generic implementation type '{0}' has a DefaultConstructorConstraint ('new()' constraint), but the generic service type '{1}' doesn't.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.7.0.0/useSharedDesignerContext.txt b/packages/Microsoft.Extensions.DependencyInjection.7.0.0/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/.signature.p7s b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/.signature.p7s
new file mode 100644
index 0000000..817f523
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/.signature.p7s differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/Icon.png b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/Icon.png
new file mode 100644
index 0000000..a0f1fdb
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/Icon.png differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/LICENSE.TXT b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.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/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0.nupkg b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0.nupkg
new file mode 100644
index 0000000..07ac6b3
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0.nupkg differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/THIRD-PARTY-NOTICES.TXT b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..c682d59
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,1145 @@
+.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/dotnet/aspnetcore/blob/main/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-2022 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
+https://zlib.net/zlib_license.html
+
+/* zlib.h -- interface of the 'zlib' general purpose compression library
+ version 1.2.12, March 27th, 2022
+
+ Copyright (C) 1995-2022 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 xoshiro RNGs
+--------------------------------
+
+Written in 2018 by David Blackman and Sebastiano Vigna (vigna@acm.org)
+
+To the extent possible under law, the author has dedicated all copyright
+and related and neighboring rights to this software to the public domain
+worldwide. This software is distributed without any warranty.
+
+See .
+
+License for fastmod (https://github.com/lemire/fastmod) and ibm-fpgen (https://github.com/nigeltao/parse-number-fxx-test-data)
+--------------------------------------
+
+ 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 for sse4-strstr (https://github.com/WojciechMula/sse4-strstr)
+--------------------------------------
+
+ Copyright (c) 2008-2016, Wojciech Muła
+ 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 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.
+
+License notice for musl
+-----------------------
+
+musl as a whole is licensed under the following standard MIT license:
+
+Copyright © 2005-2020 Rich Felker, et al.
+
+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 "Faster Unsigned Division by Constants"
+------------------------------
+
+Reference implementations of computing and using the "magic number" approach to dividing
+by constants, including codegen instructions. The unsigned division incorporates the
+"round down" optimization per ridiculous_fish.
+
+This is free and unencumbered software. Any copyright is dedicated to the Public Domain.
+
+
+License notice for mimalloc
+-----------------------------------
+
+MIT License
+
+Copyright (c) 2019 Microsoft Corporation, Daan Leijen
+
+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 for remote stack unwind (https://github.com/llvm/llvm-project/blob/main/lldb/source/Symbol/CompactUnwindInfo.cpp)
+--------------------------------------
+
+Copyright 2019 LLVM Project
+
+Licensed under the Apache License, Version 2.0 (the "License") with LLVM Exceptions;
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+https://llvm.org/LICENSE.txt
+
+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 Apple header files
+-------------------------------------
+
+Copyright (c) 1980, 1986, 1993
+ 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. All advertising materials mentioning features or use of this software
+ must display the following acknowledgement:
+ This product includes software developed by the University of
+ California, Berkeley and its contributors.
+4. 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 JavaScript queues
+-------------------------------------
+
+CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED HEREUNDER.
+
+Statement of Purpose
+The laws of most jurisdictions throughout the world automatically confer exclusive Copyright and Related Rights (defined below) upon the creator and subsequent owner(s) (each and all, an "owner") of an original work of authorship and/or a database (each, a "Work").
+Certain owners wish to permanently relinquish those rights to a Work for the purpose of contributing to a commons of creative, cultural and scientific works ("Commons") that the public can reliably and without fear of later claims of infringement build upon, modify, incorporate in other works, reuse and redistribute as freely as possible in any form whatsoever and for any purposes, including without limitation commercial purposes. These owners may contribute to the Commons to promote the ideal of a free culture and the further production of creative, cultural and scientific works, or to gain reputation or greater distribution for their Work in part through the use and efforts of others.
+For these and/or other purposes and motivations, and without any expectation of additional consideration or compensation, the person associating CC0 with a Work (the "Affirmer"), to the extent that he or she is an owner of Copyright and Related Rights in the Work, voluntarily elects to apply CC0 to the Work and publicly distribute the Work under its terms, with knowledge of his or her Copyright and Related Rights in the Work and the meaning and intended legal effect of CC0 on those rights.
+
+1. Copyright and Related Rights. A Work made available under CC0 may be protected by copyright and related or neighboring rights ("Copyright and Related Rights"). Copyright and Related Rights include, but are not limited to, the following:
+the right to reproduce, adapt, distribute, perform, display, communicate, and translate a Work;
+moral rights retained by the original author(s) and/or performer(s);
+publicity and privacy rights pertaining to a person's image or likeness depicted in a Work;
+rights protecting against unfair competition in regards to a Work, subject to the limitations in paragraph 4(a), below;
+rights protecting the extraction, dissemination, use and reuse of data in a Work;
+database rights (such as those arising under Directive 96/9/EC of the European Parliament and of the Council of 11 March 1996 on the legal protection of databases, and under any national implementation thereof, including any amended or successor version of such directive); and
+other similar, equivalent or corresponding rights throughout the world based on applicable law or treaty, and any national implementations thereof.
+2. Waiver. To the greatest extent permitted by, but not in contravention of, applicable law, Affirmer hereby overtly, fully, permanently, irrevocably and unconditionally waives, abandons, and surrenders all of Affirmer's Copyright and Related Rights and associated claims and causes of action, whether now known or unknown (including existing as well as future claims and causes of action), in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each member of the public at large and to the detriment of Affirmer's heirs and successors, fully intending that such Waiver shall not be subject to revocation, rescission, cancellation, termination, or any other legal or equitable action to disrupt the quiet enjoyment of the Work by the public as contemplated by Affirmer's express Statement of Purpose.
+3. Public License Fallback. Should any part of the Waiver for any reason be judged legally invalid or ineffective under applicable law, then the Waiver shall be preserved to the maximum extent permitted taking into account Affirmer's express Statement of Purpose. In addition, to the extent the Waiver is so judged Affirmer hereby grants to each affected person a royalty-free, non transferable, non sublicensable, non exclusive, irrevocable and unconditional license to exercise Affirmer's Copyright and Related Rights in the Work (i) in all territories worldwide, (ii) for the maximum duration provided by applicable law or treaty (including future time extensions), (iii) in any current or future medium and for any number of copies, and (iv) for any purpose whatsoever, including without limitation commercial, advertising or promotional purposes (the "License"). The License shall be deemed effective as of the date CC0 was applied by Affirmer to the Work. Should any part of the License for any reason be judged legally invalid or ineffective under applicable law, such partial invalidity or ineffectiveness shall not invalidate the remainder of the License, and in such case Affirmer hereby affirms that he or she will not (i) exercise any of his or her remaining Copyright and Related Rights in the Work or (ii) assert any associated claims and causes of action with respect to the Work, in either case contrary to Affirmer's express Statement of Purpose.
+4. Limitations and Disclaimers.
+a. No trademark or patent rights held by Affirmer are waived, abandoned, surrendered, licensed or otherwise affected by this document.
+b. Affirmer offers the Work as-is and makes no representations or warranties of any kind concerning the Work, express, implied, statutory or otherwise, including without limitation warranties of title, merchantability, fitness for a particular purpose, non infringement, or the absence of latent or other defects, accuracy, or the present or absence of errors, whether or not discoverable, all to the greatest extent permissible under applicable law.
+c. Affirmer disclaims responsibility for clearing rights of other persons that may apply to the Work or any use thereof, including without limitation any person's Copyright and Related Rights in the Work. Further, Affirmer disclaims responsibility for obtaining any necessary consents, permissions or other rights required for any use of the Work.
+d. Affirmer understands and acknowledges that Creative Commons is not a party to this document and has no duty or obligation with respect to this CC0 or use of the Work.
+
+
+License notice for FastFloat algorithm
+-------------------------------------
+MIT License
+Copyright (c) 2021 csFastFloat 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.
+
+License notice for MsQuic
+--------------------------------------
+
+Copyright (c) Microsoft Corporation.
+Licensed under the MIT License.
+
+Available at
+https://github.com/microsoft/msquic/blob/main/LICENSE
+
+License notice for m-ou-se/floatconv
+-------------------------------
+
+Copyright (c) 2020 Mara Bos
+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 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 code from The Practice of Programming
+-------------------------------
+
+Copyright (C) 1999 Lucent Technologies
+
+Excerpted from 'The Practice of Programming
+by Brian W. Kernighan and Rob Pike
+
+You may use this code for any purpose, as long as you leave the copyright notice and book citation attached.
+
+Notice for Euclidean Affine Functions and Applications to Calendar
+Algorithms
+-------------------------------
+
+Aspects of Date/Time processing based on algorithm described in "Euclidean Affine Functions and Applications to Calendar
+Algorithms", Cassio Neri and Lorenz Schneider. https://arxiv.org/pdf/2102.06959.pdf
+
+License notice for amd/aocl-libm-ose
+-------------------------------
+
+Copyright (C) 2008-2020 Advanced Micro Devices, 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:
+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 copyright holder 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 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.
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets
new file mode 100644
index 0000000..8f2dc33
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net462/_._ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net462/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net6.0/_._ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/net6.0/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets
new file mode 100644
index 0000000..8ff9a96
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets
@@ -0,0 +1,6 @@
+
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..0b40961
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..c706220
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1527 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..11e5f2e
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..a3bd8cb
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net6.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1219 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..048ba41
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..e72ae28
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/net7.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1119 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..a14a1e5
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..c706220
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1527 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that null is allowed as an input even if the corresponding type disallows it.
+
+
+ Specifies that null is disallowed as an input even if the corresponding type allows it.
+
+
+ Specifies that an output may be null even if the corresponding type disallows it.
+
+
+ Specifies that an output will not be null even if the corresponding type allows it. Specifies that an input argument was not null when the call returns.
+
+
+ Specifies that when a method returns , the parameter may be null even if the corresponding type disallows it.
+
+
+ Initializes the attribute with the specified return value condition.
+
+ The return value condition. If the method returns this value, the associated parameter may be null.
+
+
+
+ Gets the return value condition.
+
+
+ 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 the output will be non-null if the named parameter is non-null.
+
+
+ Initializes the attribute with the associated parameter name.
+
+ The associated parameter name. The output will be non-null if the argument to the parameter specified is non-null.
+
+
+
+ Gets the associated parameter name.
+
+
+ Applied to a method that will never return under any circumstance.
+
+
+ Specifies that the method will not return if the associated Boolean parameter is passed the specified value.
+
+
+ Initializes the attribute with the specified parameter value.
+
+ 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.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll
new file mode 100644
index 0000000..8845933
Binary files /dev/null and b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll differ
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml
new file mode 100644
index 0000000..d8a1386
--- /dev/null
+++ b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml
@@ -0,0 +1,1463 @@
+
+
+
+ Microsoft.Extensions.DependencyInjection.Abstractions
+
+
+
+
+ Helper code for the various activator services.
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The service provider used to resolve dependencies
+ The type to activate
+ Constructor arguments not provided by the .
+ An activated object of type instanceType
+
+
+
+ Create a delegate that will instantiate a type with constructor arguments provided directly
+ and/or from an .
+
+ The type to activate
+
+ The types of objects, in order, that will be passed to the returned function as its second parameter
+
+
+ A factory that will instantiate instanceType using an
+ and an argument array containing objects matching the types defined in argumentTypes
+
+
+
+
+ Instantiate a type with constructor arguments provided directly and/or from an .
+
+ The type to activate
+ The service provider used to resolve dependencies
+ Constructor arguments not provided by the .
+ An activated object of type T
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The type of the service
+ The service provider used to resolve dependencies
+ The resolved service or created instance
+
+
+
+ Retrieve an instance of the given type from the service provider. If one is not found then instantiate it directly.
+
+ The service provider
+ The type of the service
+ The resolved service or created instance
+
+
+
+ Marks the constructor to be used when activating type using .
+
+
+
+
+ An implementation that implements .
+
+
+
+
+ Initializes a new instance of the struct.
+ Wraps an instance of .
+
+ The instance to wrap.
+
+
+
+
+
+
+
+
+
+
+
+
+ Extension methods for adding and removing services to an .
+
+
+
+
+ Adds the specified to the .
+
+ The .
+ The to add.
+ A reference to the current instance of .
+
+
+
+ Adds a sequence of to the .
+
+ The .
+ The s to add.
+ A reference to the current instance of .
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The to add.
+
+
+
+ Adds the specified to the if the
+ service type hasn't already been registered.
+
+ The .
+ The s to add.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+
+
+
+ Adds the specified as a service
+ with the implementation
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The implementation type of the service.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The .
+ The type of the service to register.
+ The factory that creates the service.
+
+
+
+ Adds the specified as a service
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+
+
+
+ Adds the specified as a service
+ implementation type specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The .
+
+
+
+ Adds the specified as a service
+ with an instance specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The instance of the service to add.
+
+
+
+ Adds the specified as a service
+ using the factory specified in
+ to the if the service type hasn't already been registered.
+
+ The type of the service to add.
+ The .
+ The factory that creates the service.
+
+
+
+ Adds a if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The .
+
+ Use when registering a service implementation of a
+ service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Adds the specified s if an existing descriptor with the same
+ and an implementation that does not already exist
+ in .
+
+ The .
+ The s.
+
+ Use when registering a service
+ implementation of a service type that
+ supports multiple registrations of the same service type. Using
+ is not idempotent and can add
+ duplicate
+ instances if called twice. Using
+ will prevent registration
+ of multiple implementation types.
+
+
+
+
+ Removes the first service in with the same service type
+ as and adds to the collection.
+
+ The .
+ The to replace with.
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The for chaining.
+
+
+
+ Removes all services of type in .
+
+ The .
+ The service type to remove.
+ The for chaining.
+
+
+
+ Specifies the contract for a collection of service descriptors.
+
+
+
+
+ Provides an extension point for creating a container specific builder and an .
+
+
+
+
+ Creates a container builder from an .
+
+ The collection of services
+ A container builder that can be used to create an .
+
+
+
+ Creates an from the container builder.
+
+ The container builder
+ An
+
+
+
+ Optional service used to determine if the specified type is available from the .
+
+
+
+
+ Determines if the specified service type is available from the .
+
+ An object that specifies the type of service object to test.
+ true if the specified service is a available, false if it is not.
+
+
+
+ The method ends the scope lifetime. Once Dispose
+ is called, any scoped services that have been resolved from
+ will be
+ disposed.
+
+
+
+
+ The used to resolve dependencies from the scope.
+
+
+
+
+ A factory for creating instances of , which is used to create
+ services within a scope.
+
+
+
+
+ Create an which
+ contains an used to resolve dependencies from a
+ newly created scope.
+
+
+ An controlling the
+ lifetime of the scope. Once this is disposed, any scoped services that have been resolved
+ from the
+ will also be disposed.
+
+
+
+
+ Optional contract used by
+ to resolve services if supported by .
+
+
+
+
+ Gets service of type from the implementing
+ this interface.
+
+ An object that specifies the type of service object to get.
+ A service object of type .
+ Throws an exception if the cannot create the object.
+
+
+
+ The result of .
+
+ The to get service arguments from.
+ Additional constructor arguments.
+ The instantiated type.
+
+
+
+ Default implementation of .
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Makes this collection read-only.
+
+
+ After the collection is marked as read-only, any further attempt to modify it throws an .
+
+
+
+
+ Extension methods for adding services to an .
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a transient service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a scoped service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The implementation type of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register and the implementation to use.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with a
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ implementation type specified in using the
+ factory specified in to the
+ specified .
+
+ The type of the service to add.
+ The type of the implementation to use.
+ The to add the service to.
+ The factory that creates the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The type of the service to register.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Adds a singleton service of the type specified in with an
+ instance specified in to the
+ specified .
+
+ The to add the service to.
+ The instance of the service.
+ A reference to this instance after the operation has completed.
+
+
+
+
+ Describes a service with its service type, implementation, and lifetime.
+
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ The implementing the service.
+ The of the service.
+
+
+
+ Initializes a new instance of with the specified
+ as a .
+
+ The of the service.
+ The instance implementing the service.
+
+
+
+ Initializes a new instance of with the specified .
+
+ The of the service.
+ A factory used for creating service instances.
+ The of the service.
+
+
+
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ and
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ ,
+ and the lifetime.
+
+ The type of the service.
+ The type of the implementation.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and the lifetime.
+
+ The type of the service.
+ The instance of the implementation.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ The type of the implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Creates an instance of with the specified
+ , ,
+ and .
+
+ The type of the service.
+ A factory to create new instances of the service implementation.
+ The lifetime of the service.
+ A new instance of .
+
+
+
+ Specifies the lifetime of a service in an .
+
+
+
+
+ Specifies that a single instance of the service will be created.
+
+
+
+
+ Specifies that a new instance of the service will be created for each scope.
+
+
+ In ASP.NET Core applications a scope is created around each server request.
+
+
+
+
+ Specifies that a new instance of the service will be created every time it is requested.
+
+
+
+
+ Extension methods for getting services from an .
+
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type or null if there is no such service.
+
+
+
+ Get service of type from the .
+
+ The to retrieve the service object from.
+ An object that specifies the type of service object to get.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get service of type from the .
+
+ The type of service object to get.
+ The to retrieve the service object from.
+ A service object of type .
+ There is no service of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The type of service object to get.
+ The to retrieve the services from.
+ An enumeration of services of type .
+
+
+
+ Get an enumeration of services of type from the .
+
+ The to retrieve the services from.
+ An object that specifies the type of service object to get.
+ An enumeration of services of type .
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ A that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+
+ Creates a new that can be used to resolve scoped services.
+
+ The to create the scope from.
+ An that can be used to resolve scoped services.
+
+
+ Throws an if is null.
+ The reference type argument to validate as non-null.
+ The name of the parameter with which corresponds.
+
+
+
+ Attribute used to indicate a source generator should create a function for marshalling
+ arguments instead of relying on the runtime to generate an equivalent marshalling function at run-time.
+
+
+ This attribute is meaningless if the source generator associated with it is not enabled.
+ The current built-in source generator only supports C# and only supplies an implementation when
+ applied to static, partial, non-generic methods.
+
+
+
+
+ Initializes a new instance of the .
+
+ Name of the library containing the import.
+
+
+
+ Gets the name of the library containing the import.
+
+
+
+
+ Gets or sets the name of the entry point to be called.
+
+
+
+
+ Gets or sets how to marshal string arguments to the method.
+
+
+ If this field is set to a value other than ,
+ must not be specified.
+
+
+
+
+ Gets or sets the used to control how string arguments to the method are marshalled.
+
+
+ If this field is specified, must not be specified
+ or must be set to .
+
+
+
+
+ Gets or sets whether the callee sets an error (SetLastError on Windows or errno
+ on other platforms) before returning from the attributed method.
+
+
+
+
+ Specifies how strings should be marshalled for generated p/invokes
+
+
+
+
+ Indicates the user is suppling a specific marshaller in .
+
+
+
+
+ Use the platform-provided UTF-8 marshaller.
+
+
+
+
+ Use the platform-provided UTF-16 marshaller.
+
+
+
+
+ Indicates that certain members on a specified are accessed dynamically,
+ for example through .
+
+
+ This allows tools to understand which members are being accessed during the execution
+ of a program.
+
+ This attribute is valid on members whose type is or .
+
+ When this attribute is applied to a location of type , the assumption is
+ that the string represents a fully qualified type name.
+
+ When this attribute is applied to a class, interface, or struct, the members specified
+ can be accessed dynamically on instances returned from calling
+ on instances of that class, interface, or struct.
+
+ If the attribute is applied to a method it's treated as a special case and it implies
+ the attribute should be applied to the "this" parameter of the method. As such the attribute
+ should only be used on instance methods of types assignable to System.Type (or string, but no methods
+ will use it there).
+
+
+
+
+ Initializes a new instance of the class
+ with the specified member types.
+
+ The types of members dynamically accessed.
+
+
+
+ Gets the which specifies the type
+ of members dynamically accessed.
+
+
+
+
+ Specifies the types of members that are dynamically accessed.
+
+ This enumeration has a attribute that allows a
+ bitwise combination of its member values.
+
+
+
+
+ Specifies no members.
+
+
+
+
+ Specifies the default, parameterless public constructor.
+
+
+
+
+ Specifies all public constructors.
+
+
+
+
+ Specifies all non-public constructors.
+
+
+
+
+ Specifies all public methods.
+
+
+
+
+ Specifies all non-public methods.
+
+
+
+
+ Specifies all public fields.
+
+
+
+
+ Specifies all non-public fields.
+
+
+
+
+ Specifies all public nested types.
+
+
+
+
+ Specifies all non-public nested types.
+
+
+
+
+ Specifies all public properties.
+
+
+
+
+ Specifies all non-public properties.
+
+
+
+
+ Specifies all public events.
+
+
+
+
+ Specifies all non-public events.
+
+
+
+
+ Specifies all interfaces implemented by the type.
+
+
+
+
+ Specifies all members.
+
+
+
+
+ Suppresses reporting of a specific rule violation, allowing multiple suppressions on a
+ single code artifact.
+
+
+ is different than
+ in that it doesn't have a
+ . So it is always preserved in the compiled assembly.
+
+
+
+
+ Initializes a new instance of the
+ class, specifying the category of the tool and the identifier for an analysis rule.
+
+ The category for the attribute.
+ The identifier of the analysis rule the attribute applies to.
+
+
+
+ Gets the category identifying the classification of the attribute.
+
+
+ The property describes the tool or tool analysis category
+ for which a message suppression attribute applies.
+
+
+
+
+ Gets the identifier of the analysis tool rule to be suppressed.
+
+
+ Concatenated together, the and
+ properties form a unique check identifier.
+
+
+
+
+ Gets or sets the scope of the code that is relevant for the attribute.
+
+
+ The Scope property is an optional argument that specifies the metadata scope for which
+ the attribute is relevant.
+
+
+
+
+ Gets or sets a fully qualified path that represents the target of the attribute.
+
+
+ The property is an optional argument identifying the analysis target
+ of the attribute. An example value is "System.IO.Stream.ctor():System.Void".
+ Because it is fully qualified, it can be long, particularly for targets such as parameters.
+ The analysis tool user interface should be capable of automatically formatting the parameter.
+
+
+
+
+ Gets or sets an optional argument expanding on exclusion criteria.
+
+
+ The property is an optional argument that specifies additional
+ exclusion where the literal metadata target is not sufficiently precise. For example,
+ the cannot be applied within a method,
+ and it may be desirable to suppress a violation against a statement in the method that will
+ give a rule violation, but not against all statements in the method.
+
+
+
+
+ Gets or sets the justification for suppressing the code analysis message.
+
+
+
+
+ Indicates that the specified method requires the ability to generate new code at runtime,
+ for example through .
+
+
+ This allows tools to understand which methods are unsafe to call when compiling ahead of time.
+
+
+
+
+ Initializes a new instance of the class
+ with the specified message.
+
+
+ A message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets a message that contains information about the usage of dynamic code.
+
+
+
+
+ Gets or sets an optional URL that contains more information about the method,
+ why it requires dynamic code, and what options a consumer has to deal with it.
+
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values.
+
+
+ Initializes the attribute with a field or property member.
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the list of field and property members.
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets field or property member names.
+
+
+ Specifies that the method or property will ensure that the listed field and property members have not-null values when returning with the specified return value condition.
+
+
+ Initializes the attribute with the specified return value condition and a field or property member.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The field or property member that is promised to be not-null.
+
+
+
+ Initializes the attribute with the specified return value condition and list of field and property members.
+
+ The return value condition. If the method returns this value, the associated parameter will not be null.
+
+
+ The list of field and property members that are promised to be not-null.
+
+
+
+ Gets the return value condition.
+
+
+ Gets field or property member names.
+
+
+ Multiple constructors accepting all given argument types have been found in type '{0}'. There should only be one applicable constructor.
+
+
+ Unable to resolve service for type '{0}' while attempting to activate '{1}'.
+
+
+ A suitable constructor for type '{0}' could not be located. Ensure the type is concrete and services are registered for all parameters of a public constructor.
+
+
+ No service for type '{0}' has been registered.
+
+
+ The service collection cannot be modified because it is read-only.
+
+
+ Implementation type cannot be '{0}' because it is indistinguishable from other services registered for '{1}'.
+
+
+
diff --git a/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/useSharedDesignerContext.txt b/packages/Microsoft.Extensions.DependencyInjection.Abstractions.7.0.0/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/.signature.p7s b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/.signature.p7s
new file mode 100644
index 0000000..0b25909
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/.signature.p7s differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/LICENSE.TXT b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/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/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/System.Runtime.CompilerServices.Unsafe.4.5.3.nupkg b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/System.Runtime.CompilerServices.Unsafe.4.5.3.nupkg
new file mode 100644
index 0000000..8519daa
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/System.Runtime.CompilerServices.Unsafe.4.5.3.nupkg differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/THIRD-PARTY-NOTICES.TXT b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..db542ca
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,309 @@
+.NET Core uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Core 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 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
+-------------------------------
+
+http://www.unicode.org/copyright.html#License
+
+Copyright © 1991-2017 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in http://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."
+
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/net461/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/net461/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..de9e124
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/net461/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/net461/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/net461/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/net461/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..e717510
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..b50dbc4
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..b17135b
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/net461/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/net461/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..ac64866
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/net461/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/net461/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/net461/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/net461/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..7f71a4b
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll
new file mode 100644
index 0000000..50bf259
Binary files /dev/null and b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll differ
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml
new file mode 100644
index 0000000..6a7cfcf
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml
@@ -0,0 +1,200 @@
+
+
+ System.Runtime.CompilerServices.Unsafe
+
+
+
+ Contains generic, low-level functionality for manipulating pointers.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds an element offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of offset to pointer.
+
+
+ Adds a byte offset to the given reference.
+ The reference to add the offset to.
+ The offset to add.
+ The type of reference.
+ A new reference that reflects the addition of byte offset to pointer.
+
+
+ Determines whether the specified references point to the same location.
+ The first reference to compare.
+ The second reference to compare.
+ The type of reference.
+ true if left and right point to the same location; otherwise, false.
+
+
+ Casts the given object to the specified type.
+ The object to cast.
+ The type which the object will be cast to.
+ The original object, casted to the given type.
+
+
+ Reinterprets the given reference as a reference to a value of type TTo.
+ The reference to reinterpret.
+ The type of reference to reinterpret..
+ The desired type of the reference.
+ A reference to a value of type TTo.
+
+
+ Returns a pointer to the given by-ref parameter.
+ The object whose pointer is obtained.
+ The type of object.
+ A pointer to the given value.
+
+
+ Reinterprets the given location as a reference to a value of type T.
+ The location of the value to reference.
+ The type of the interpreted location.
+ A reference to a value of type T.
+
+
+ Determines the byte offset from origin to target from the given references.
+ The reference to origin.
+ The reference to target.
+ The type of reference.
+ Byte offset from origin to target i.e. target - origin.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A reference to the value to copy.
+ The type of value to copy.
+
+
+ Copies a value of type T to the given location.
+ The location to copy to.
+ A pointer to the value to copy.
+ The type of value to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Copies bytes from the source address to the destination address
+without assuming architecture dependent alignment of the addresses.
+ The destination address to copy to.
+ The source address to copy from.
+ The number of bytes to copy.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Initializes a block of memory at the given location with a given initial value
+without assuming architecture dependent alignment of the address.
+ The address of the start of the memory block to initialize.
+ The value to initialize the block to.
+ The number of bytes to initialize.
+
+
+ Reads a value of type T from the given location.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Reads a value of type T from the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to read from.
+ The type to read.
+ An object of type T read from the given location.
+
+
+ Returns the size of an object of the given type parameter.
+ The type of object whose size is retrieved.
+ The size of an object of type T.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts an element offset from the given reference.
+ The reference to subtract the offset from.
+ The offset to subtract.
+ The type of reference.
+ A new reference that reflects the subraction of offset from pointer.
+
+
+ Subtracts a byte offset from the given reference.
+ The reference to subtract the offset from.
+
+ The type of reference.
+ A new reference that reflects the subraction of byte offset from pointer.
+
+
+ Writes a value of type T to the given location.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+ Writes a value of type T to the given location
+without assuming architecture dependent alignment of the addresses.
+ The location to write to.
+ The value to write.
+ The type of value to write.
+
+
+
\ No newline at end of file
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/useSharedDesignerContext.txt b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/version.txt b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/version.txt
new file mode 100644
index 0000000..8d6cdd6
--- /dev/null
+++ b/packages/System.Runtime.CompilerServices.Unsafe.4.5.3/version.txt
@@ -0,0 +1 @@
+7601f4f6225089ffb291dc7d58293c7bbf5c5d4f
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/.signature.p7s b/packages/System.Threading.Tasks.Extensions.4.5.4/.signature.p7s
new file mode 100644
index 0000000..e0ee9f4
Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/.signature.p7s differ
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/LICENSE.TXT b/packages/System.Threading.Tasks.Extensions.4.5.4/LICENSE.TXT
new file mode 100644
index 0000000..984713a
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/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/packages/System.Threading.Tasks.Extensions.4.5.4/System.Threading.Tasks.Extensions.4.5.4.nupkg b/packages/System.Threading.Tasks.Extensions.4.5.4/System.Threading.Tasks.Extensions.4.5.4.nupkg
new file mode 100644
index 0000000..a608bc5
Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/System.Threading.Tasks.Extensions.4.5.4.nupkg differ
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/THIRD-PARTY-NOTICES.TXT b/packages/System.Threading.Tasks.Extensions.4.5.4/THIRD-PARTY-NOTICES.TXT
new file mode 100644
index 0000000..db542ca
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/THIRD-PARTY-NOTICES.TXT
@@ -0,0 +1,309 @@
+.NET Core uses third-party libraries or other resources that may be
+distributed under licenses different than the .NET Core 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 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
+-------------------------------
+
+http://www.unicode.org/copyright.html#License
+
+Copyright © 1991-2017 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in http://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."
+
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoAndroid10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoAndroid10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoTouch10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/MonoTouch10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..eeec928
Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.dll differ
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.xml
new file mode 100644
index 0000000..5e02a99
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/net461/System.Threading.Tasks.Extensions.xml
@@ -0,0 +1,166 @@
+
+
+ System.Threading.Tasks.Extensions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Provides a value type that wraps a and a TResult, only one of which is used.
+ The result.
+
+
+ Initializes a new instance of the class using the supplied task that represents the operation.
+ The task.
+ The task argument is null.
+
+
+ Initializes a new instance of the class using the supplied result of a successful operation.
+ The result.
+
+
+ Retrieves a object that represents this .
+ The object that is wrapped in this if one exists, or a new object that represents the result.
+
+
+ Configures an awaiter for this value.
+ true to attempt to marshal the continuation back to the captured context; otherwise, false.
+ The configured awaiter.
+
+
+ Creates a method builder for use with an async method.
+ The created builder.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Creates an awaiter for this value.
+ The awaiter.
+
+
+ Returns the hash code for this instance.
+ The hash code for the current object.
+
+
+ Gets a value that indicates whether this object represents a canceled operation.
+ true if this object represents a canceled operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a completed operation.
+ true if this object represents a completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a successfully completed operation.
+ true if this object represents a successfully completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a failed operation.
+ true if this object represents a failed operation; otherwise, false.
+
+
+ Compares two values for equality.
+ The first value to compare.
+ The second value to compare.
+ true if the two values are equal; otherwise, false.
+
+
+ Determines whether two values are unequal.
+ The first value to compare.
+ The seconed value to compare.
+ true if the two values are not equal; otherwise, false.
+
+
+ Gets the result.
+ The result.
+
+
+ Returns a string that represents the current object.
+ A string that represents the current object.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netcoreapp2.1/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netcoreapp2.1/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..dfc4cdf
Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.dll differ
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.xml
new file mode 100644
index 0000000..5e02a99
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard1.0/System.Threading.Tasks.Extensions.xml
@@ -0,0 +1,166 @@
+
+
+ System.Threading.Tasks.Extensions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Provides a value type that wraps a and a TResult, only one of which is used.
+ The result.
+
+
+ Initializes a new instance of the class using the supplied task that represents the operation.
+ The task.
+ The task argument is null.
+
+
+ Initializes a new instance of the class using the supplied result of a successful operation.
+ The result.
+
+
+ Retrieves a object that represents this .
+ The object that is wrapped in this if one exists, or a new object that represents the result.
+
+
+ Configures an awaiter for this value.
+ true to attempt to marshal the continuation back to the captured context; otherwise, false.
+ The configured awaiter.
+
+
+ Creates a method builder for use with an async method.
+ The created builder.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Creates an awaiter for this value.
+ The awaiter.
+
+
+ Returns the hash code for this instance.
+ The hash code for the current object.
+
+
+ Gets a value that indicates whether this object represents a canceled operation.
+ true if this object represents a canceled operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a completed operation.
+ true if this object represents a completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a successfully completed operation.
+ true if this object represents a successfully completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a failed operation.
+ true if this object represents a failed operation; otherwise, false.
+
+
+ Compares two values for equality.
+ The first value to compare.
+ The second value to compare.
+ true if the two values are equal; otherwise, false.
+
+
+ Determines whether two values are unequal.
+ The first value to compare.
+ The seconed value to compare.
+ true if the two values are not equal; otherwise, false.
+
+
+ Gets the result.
+ The result.
+
+
+ Returns a string that represents the current object.
+ A string that represents the current object.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..dfab234
Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.dll differ
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.xml
new file mode 100644
index 0000000..5e02a99
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/netstandard2.0/System.Threading.Tasks.Extensions.xml
@@ -0,0 +1,166 @@
+
+
+ System.Threading.Tasks.Extensions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Provides a value type that wraps a and a TResult, only one of which is used.
+ The result.
+
+
+ Initializes a new instance of the class using the supplied task that represents the operation.
+ The task.
+ The task argument is null.
+
+
+ Initializes a new instance of the class using the supplied result of a successful operation.
+ The result.
+
+
+ Retrieves a object that represents this .
+ The object that is wrapped in this if one exists, or a new object that represents the result.
+
+
+ Configures an awaiter for this value.
+ true to attempt to marshal the continuation back to the captured context; otherwise, false.
+ The configured awaiter.
+
+
+ Creates a method builder for use with an async method.
+ The created builder.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Creates an awaiter for this value.
+ The awaiter.
+
+
+ Returns the hash code for this instance.
+ The hash code for the current object.
+
+
+ Gets a value that indicates whether this object represents a canceled operation.
+ true if this object represents a canceled operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a completed operation.
+ true if this object represents a completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a successfully completed operation.
+ true if this object represents a successfully completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a failed operation.
+ true if this object represents a failed operation; otherwise, false.
+
+
+ Compares two values for equality.
+ The first value to compare.
+ The second value to compare.
+ true if the two values are equal; otherwise, false.
+
+
+ Determines whether two values are unequal.
+ The first value to compare.
+ The seconed value to compare.
+ true if the two values are not equal; otherwise, false.
+
+
+ Gets the result.
+ The result.
+
+
+ Returns a string that represents the current object.
+ A string that represents the current object.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll
new file mode 100644
index 0000000..dfc4cdf
Binary files /dev/null and b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.dll differ
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml
new file mode 100644
index 0000000..5e02a99
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/portable-net45+win8+wp8+wpa81/System.Threading.Tasks.Extensions.xml
@@ -0,0 +1,166 @@
+
+
+ System.Threading.Tasks.Extensions
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Provides a value type that wraps a and a TResult, only one of which is used.
+ The result.
+
+
+ Initializes a new instance of the class using the supplied task that represents the operation.
+ The task.
+ The task argument is null.
+
+
+ Initializes a new instance of the class using the supplied result of a successful operation.
+ The result.
+
+
+ Retrieves a object that represents this .
+ The object that is wrapped in this if one exists, or a new object that represents the result.
+
+
+ Configures an awaiter for this value.
+ true to attempt to marshal the continuation back to the captured context; otherwise, false.
+ The configured awaiter.
+
+
+ Creates a method builder for use with an async method.
+ The created builder.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Determines whether the specified object is equal to the current object.
+ The object to compare with the current object.
+ true if the specified object is equal to the current object; otherwise, false.
+
+
+ Creates an awaiter for this value.
+ The awaiter.
+
+
+ Returns the hash code for this instance.
+ The hash code for the current object.
+
+
+ Gets a value that indicates whether this object represents a canceled operation.
+ true if this object represents a canceled operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a completed operation.
+ true if this object represents a completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a successfully completed operation.
+ true if this object represents a successfully completed operation; otherwise, false.
+
+
+ Gets a value that indicates whether this object represents a failed operation.
+ true if this object represents a failed operation; otherwise, false.
+
+
+ Compares two values for equality.
+ The first value to compare.
+ The second value to compare.
+ true if the two values are equal; otherwise, false.
+
+
+ Determines whether two values are unequal.
+ The first value to compare.
+ The seconed value to compare.
+ true if the two values are not equal; otherwise, false.
+
+
+ Gets the result.
+ The result.
+
+
+ Returns a string that represents the current object.
+ A string that represents the current object.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinios10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinios10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinmac20/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinmac20/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarintvos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarintvos10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinwatchos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/lib/xamarinwatchos10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoAndroid10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoAndroid10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoTouch10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/MonoTouch10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/netcoreapp2.1/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/netcoreapp2.1/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinios10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinios10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinmac20/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinmac20/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarintvos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarintvos10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinwatchos10/_._ b/packages/System.Threading.Tasks.Extensions.4.5.4/ref/xamarinwatchos10/_._
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/useSharedDesignerContext.txt b/packages/System.Threading.Tasks.Extensions.4.5.4/useSharedDesignerContext.txt
new file mode 100644
index 0000000..e69de29
diff --git a/packages/System.Threading.Tasks.Extensions.4.5.4/version.txt b/packages/System.Threading.Tasks.Extensions.4.5.4/version.txt
new file mode 100644
index 0000000..8d6cdd6
--- /dev/null
+++ b/packages/System.Threading.Tasks.Extensions.4.5.4/version.txt
@@ -0,0 +1 @@
+7601f4f6225089ffb291dc7d58293c7bbf5c5d4f