From a73e1584fbb0eae6318ed93fc6e847db3952a52a Mon Sep 17 00:00:00 2001 From: binarydad Date: Tue, 20 Apr 2021 18:10:07 -0400 Subject: [PATCH] initial --- Annotations/QueryIgnoreAttribute.cs | 9 + Annotations/SalesforceObjectAttribute.cs | 17 + AuthenticationResponse.cs | 35 + Converters/UnixTimestampDateConverter.cs | 26 + CreateResponse.cs | 12 + Entities/SalesforceEntity.cs | 54 ++ ErrorCollectionResponse.cs | 17 + IApiResponse.cs | 7 + JobCreateResponse.cs | 12 + PropertyExtensions.cs | 65 ++ QueryResponse.cs | 16 + Result.cs | 124 +++ Salesforce.NET.csproj | 13 + Salesforce.NET.sln | 25 + SalesforceApiClient.cs | 707 +++++++++++++++++ SalesforceContext.cs | 19 + SalesforceCredentials.cs | 34 + SchemaResponse.cs | 25 + TokenType.cs | 7 + Trackable.cs | 81 ++ UpdateResponse.cs | 22 + .../netstandard2.1/Salesforce.NET.deps.json | 250 ++++++ bin/Debug/netstandard2.1/Salesforce.NET.dll | Bin 0 -> 72704 bytes bin/Debug/netstandard2.1/Salesforce.NET.pdb | Bin 0 -> 23020 bytes ...tandard,Version=v2.1.AssemblyAttributes.cs | 4 + .../Salesforce.NET.AssemblyInfo.cs | 23 + .../Salesforce.NET.AssemblyInfoInputs.cache | 1 + .../Salesforce.NET.assets.cache | Bin 0 -> 6177 bytes ...esforce.NET.csproj.CoreCompileInputs.cache | 1 + ...Salesforce.NET.csproj.FileListAbsolute.txt | 9 + ...lesforce.NET.csprojAssemblyReference.cache | Bin 0 -> 424 bytes obj/Debug/netstandard2.1/Salesforce.NET.dll | Bin 0 -> 72704 bytes obj/Debug/netstandard2.1/Salesforce.NET.pdb | Bin 0 -> 23020 bytes obj/Salesforce.NET.csproj.nuget.dgspec.json | 77 ++ obj/Salesforce.NET.csproj.nuget.g.props | 18 + obj/Salesforce.NET.csproj.nuget.g.targets | 6 + obj/project.assets.json | 751 ++++++++++++++++++ obj/project.nuget.cache | 22 + 38 files changed, 2489 insertions(+) create mode 100644 Annotations/QueryIgnoreAttribute.cs create mode 100644 Annotations/SalesforceObjectAttribute.cs create mode 100644 AuthenticationResponse.cs create mode 100644 Converters/UnixTimestampDateConverter.cs create mode 100644 CreateResponse.cs create mode 100644 Entities/SalesforceEntity.cs create mode 100644 ErrorCollectionResponse.cs create mode 100644 IApiResponse.cs create mode 100644 JobCreateResponse.cs create mode 100644 PropertyExtensions.cs create mode 100644 QueryResponse.cs create mode 100644 Result.cs create mode 100644 Salesforce.NET.csproj create mode 100644 Salesforce.NET.sln create mode 100644 SalesforceApiClient.cs create mode 100644 SalesforceContext.cs create mode 100644 SalesforceCredentials.cs create mode 100644 SchemaResponse.cs create mode 100644 TokenType.cs create mode 100644 Trackable.cs create mode 100644 UpdateResponse.cs create mode 100644 bin/Debug/netstandard2.1/Salesforce.NET.deps.json create mode 100644 bin/Debug/netstandard2.1/Salesforce.NET.dll create mode 100644 bin/Debug/netstandard2.1/Salesforce.NET.pdb create mode 100644 obj/Debug/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfo.cs create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfoInputs.cache create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.assets.cache create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.csproj.CoreCompileInputs.cache create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.csproj.FileListAbsolute.txt create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.csprojAssemblyReference.cache create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.dll create mode 100644 obj/Debug/netstandard2.1/Salesforce.NET.pdb create mode 100644 obj/Salesforce.NET.csproj.nuget.dgspec.json create mode 100644 obj/Salesforce.NET.csproj.nuget.g.props create mode 100644 obj/Salesforce.NET.csproj.nuget.g.targets create mode 100644 obj/project.assets.json create mode 100644 obj/project.nuget.cache diff --git a/Annotations/QueryIgnoreAttribute.cs b/Annotations/QueryIgnoreAttribute.cs new file mode 100644 index 0000000..06fa55d --- /dev/null +++ b/Annotations/QueryIgnoreAttribute.cs @@ -0,0 +1,9 @@ +using System; + +namespace Salesforce.NET +{ + /// + /// Instructs the query generator to ignore this property + /// + public class QueryIgnoreAttribute : Attribute { } +} diff --git a/Annotations/SalesforceObjectAttribute.cs b/Annotations/SalesforceObjectAttribute.cs new file mode 100644 index 0000000..e8fd18a --- /dev/null +++ b/Annotations/SalesforceObjectAttribute.cs @@ -0,0 +1,17 @@ +using System; + +namespace Salesforce.NET +{ + /// + /// Associates the entity to an object in Salesforce + /// + public class SalesforceObjectAttribute : Attribute + { + public string ObjectName { get; } + + public SalesforceObjectAttribute(string objectName) + { + ObjectName = objectName; + } + } +} diff --git a/AuthenticationResponse.cs b/AuthenticationResponse.cs new file mode 100644 index 0000000..7216f69 --- /dev/null +++ b/AuthenticationResponse.cs @@ -0,0 +1,35 @@ +using BinaryDad.Extensions; +using Newtonsoft.Json; +using Salesforce.NET.Converters; +using System; + +namespace Salesforce.NET +{ + public class AuthenticationResponse : IApiResponse + { + [JsonProperty("access_token")] + public string AccessToken { get; internal set; } + + [JsonProperty("instance_url")] + public string InstanceUrl { get; internal set; } + + public string Id { get; internal set; } + + [JsonProperty("token_type")] + public TokenType TokenType { get; internal set; } + + [JsonProperty("issued_at")] + [JsonConverter(typeof(UnixTimestampDateConverter))] + public DateTime IssuedAt { get; internal set; } + + [JsonProperty("signature")] + public string Signature { get; internal set; } + + public string Error { get; set; } + + [JsonProperty("error_description")] + public string ErrorDescription { get; set; } + + public bool Success => AccessToken.IsNotEmpty(); + } +} diff --git a/Converters/UnixTimestampDateConverter.cs b/Converters/UnixTimestampDateConverter.cs new file mode 100644 index 0000000..d82ba45 --- /dev/null +++ b/Converters/UnixTimestampDateConverter.cs @@ -0,0 +1,26 @@ +using BinaryDad.Extensions; +using Newtonsoft.Json; +using Newtonsoft.Json.Converters; +using System; + +namespace Salesforce.NET.Converters +{ + public class UnixTimestampDateConverter : DateTimeConverterBase + { + public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer) + { + if (objectType == typeof(DateTime)) + { + var milliseconds = reader.Value.To(); + + var offset = DateTimeOffset.FromUnixTimeMilliseconds(milliseconds); + + return offset.DateTime.ToLocalTime(); + } + + return existingValue; + } + + public override void WriteJson(JsonWriter writer, object value, JsonSerializer serializer) => throw new NotImplementedException(); + } +} diff --git a/CreateResponse.cs b/CreateResponse.cs new file mode 100644 index 0000000..b81c900 --- /dev/null +++ b/CreateResponse.cs @@ -0,0 +1,12 @@ +using Newtonsoft.Json; + +namespace Salesforce.NET +{ + public class CreateResponse : IApiResponse + { + [JsonProperty("Id")] + public string RecordId { get; set; } + + public bool Success { get; set; } + } +} diff --git a/Entities/SalesforceEntity.cs b/Entities/SalesforceEntity.cs new file mode 100644 index 0000000..f87e1d8 --- /dev/null +++ b/Entities/SalesforceEntity.cs @@ -0,0 +1,54 @@ +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Text; + +namespace Salesforce.NET.Entities +{ + public abstract class SalesforceEntity + { + /// + /// Instructs the serializer whether to serialize read-only entity properties + /// + [JsonIgnore] + public bool SerializeReadOnlyProperties { get; set; } = true; + + /// + /// The unique ID of the record + /// + [JsonProperty("id")] + public string RecordId { get; set; } + + /// + /// Used to correlate a record insert to a batch + /// + [QueryIgnore] + public int TransactionId { get; set; } + + [QueryIgnore] + public RecordAttributes Attributes { get; set; } + + public bool IsDeleted { get; set; } + public string OwnerId { get; set; } + public string CreatedById { get; set; } + public DateTime CreatedDate { get; set; } + public string LastModifiedById { get; set; } + public DateTime LastModifiedDate { get; set; } + + public bool ShouldSerializeTransactionId() => SerializeReadOnlyProperties; + public bool ShouldSerializeAttributes() => SerializeReadOnlyProperties; + public bool ShouldSerializeId() => SerializeReadOnlyProperties; + public bool ShouldSerializeIsDeleted() => SerializeReadOnlyProperties; + public bool ShouldSerializeOwnerId() => SerializeReadOnlyProperties; + public bool ShouldSerializeCreatedById() => SerializeReadOnlyProperties; + public bool ShouldSerializeCreatedDate() => SerializeReadOnlyProperties; + public bool ShouldSerializeLastModifiedById() => SerializeReadOnlyProperties; + public bool ShouldSerializeLastModifiedDate() => SerializeReadOnlyProperties; + + public class RecordAttributes + { + public string Type { get; set; } + public string Url { get; set; } + } + } +} diff --git a/ErrorCollectionResponse.cs b/ErrorCollectionResponse.cs new file mode 100644 index 0000000..2196685 --- /dev/null +++ b/ErrorCollectionResponse.cs @@ -0,0 +1,17 @@ +using System.Collections.Generic; +using System.Collections.ObjectModel; + +namespace Salesforce.NET +{ + public class ErrorCollectionResponse : Collection, IApiResponse + { + public bool Success => false; + } + + public class ErrorResponse + { + public string Message { get; set; } + public string ErrorCode { get; set; } + public ICollection Fields { get; set; } + } +} diff --git a/IApiResponse.cs b/IApiResponse.cs new file mode 100644 index 0000000..eb4bc8a --- /dev/null +++ b/IApiResponse.cs @@ -0,0 +1,7 @@ +namespace Salesforce.NET +{ + public interface IApiResponse + { + bool Success { get; } + } +} diff --git a/JobCreateResponse.cs b/JobCreateResponse.cs new file mode 100644 index 0000000..8c3fcd5 --- /dev/null +++ b/JobCreateResponse.cs @@ -0,0 +1,12 @@ +using BinaryDad.Extensions; + +namespace Salesforce.NET +{ + public class JobCreateResponse : IApiResponse + { + public string Id { get; set; } + public string State { get; set; } + public string ContentUrl { get; set; } + public bool Success => Id.IsNotEmpty(); + } +} diff --git a/PropertyExtensions.cs b/PropertyExtensions.cs new file mode 100644 index 0000000..47dbe26 --- /dev/null +++ b/PropertyExtensions.cs @@ -0,0 +1,65 @@ +using BinaryDad.Extensions; +using Newtonsoft.Json; +using System.Collections.Generic; +using System.Linq; +using System.Reflection; + +namespace Salesforce.NET +{ + internal static class PropertyExtensions + { + internal static IEnumerable WhereIsSerializable(this IEnumerable properties) + { + foreach (var property in properties) + { + var jsonIgnore = property.GetCustomAttribute(); + + if (jsonIgnore == null) + { + yield return property; + } + } + } + + internal static IEnumerable WhereIsQueryable(this IEnumerable properties) + { + foreach (var property in properties) + { + var queryIgnore = property.GetCustomAttribute(); + + if (queryIgnore == null) + { + yield return property; + } + } + } + + internal static IDictionary GetPropertyValues(this IEnumerable properties, object value) + { + return properties + .Select(p => + { + var propertyName = GetSalesforcePropertyName(p); + var propertyValue = p.GetValue(value); + + return new KeyValuePair(propertyName, propertyValue); + }) + .ToDictionary(); + } + + internal static IEnumerable GetPropertyNames(this IEnumerable properties) + { + foreach (var property in properties) + { + yield return GetSalesforcePropertyName(property); + } + } + + private static string GetSalesforcePropertyName(PropertyInfo propertyInfo) + { + var jsonProperty = propertyInfo.GetCustomAttribute(); + + return jsonProperty?.PropertyName ?? propertyInfo.Name; + } + } +} diff --git a/QueryResponse.cs b/QueryResponse.cs new file mode 100644 index 0000000..67900e9 --- /dev/null +++ b/QueryResponse.cs @@ -0,0 +1,16 @@ +using Newtonsoft.Json; +using System.Collections.Generic; + +namespace Salesforce.NET +{ + public class QueryResponse + { + public bool Done { get; set; } + + [JsonProperty("totalSize")] + public bool TotalRecords { get; set; } + + public string NextRecordsUrl { get; set; } + public ICollection Records { get; set; } + } +} diff --git a/Result.cs b/Result.cs new file mode 100644 index 0000000..f276c8d --- /dev/null +++ b/Result.cs @@ -0,0 +1,124 @@ +using System; +using System.Collections.Generic; + +namespace Salesforce.NET +{ + public sealed class Result : Result + { + public T Data { get; set; } + + /// + /// Creates a new failed result ( is false) + /// + public Result() { } + + /// + /// Creates a new result + /// + /// + public Result(bool success) : base(success) { } + + /// + /// Creates a new failed result with error message + /// + /// + public Result(string error) : base(error) { } + } + + public class Result + { + public bool Success { get; set; } + public string Message { get; set; } + + /// + /// Collection of errors that have occurred during the request + /// + public ICollection Errors { get; set; } = new List(); + + #region Constructor + + /// + /// Creates a new failed result ( is false) + /// + public Result() { } + + /// + /// Creates a new result + /// + /// + public Result(bool success) => Success = success; + + /// + /// Creates a new failed result with error message + /// + /// + public Result(string error) => AddError(error); + + #endregion + + /// + /// Adds an error to the collection and sets to false + /// + /// + public void AddError(string error) + { + // force to false if previously true + Success = false; + + AddDistinctError(error); + } + + /// + /// Adds an error to the collection and sets to false + /// + /// + public void AddError(Exception ex) + { + // force to false if previously true + Success = false; + + if (ex == null) + { + return; + } + + AddDistinctError(ex.Message); + } + + /// + /// Adds a list of errors to the collection and sets to false + /// + /// + public void AddErrors(IEnumerable errors) + { + // force to false if previously true + Success = false; + + if (errors == null) + { + return; + } + + foreach (var error in errors) + { + AddDistinctError(error); + } + } + + #region Private Methods + + /// + /// Adds only a distinct error string to the list + /// + /// + private void AddDistinctError(string error) + { + if (!string.IsNullOrWhiteSpace(error) && !Errors.Contains(error)) + { + Errors.Add(error); + } + } + + #endregion + } +} \ No newline at end of file diff --git a/Salesforce.NET.csproj b/Salesforce.NET.csproj new file mode 100644 index 0000000..ade6488 --- /dev/null +++ b/Salesforce.NET.csproj @@ -0,0 +1,13 @@ + + + + netstandard2.1 + + + + + + + + + diff --git a/Salesforce.NET.sln b/Salesforce.NET.sln new file mode 100644 index 0000000..c48bfc4 --- /dev/null +++ b/Salesforce.NET.sln @@ -0,0 +1,25 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio Version 16 +VisualStudioVersion = 16.0.31205.134 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Salesforce.NET", "Salesforce.NET.csproj", "{2E4FA050-AC57-42EC-A690-63507C6DBA07}" +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {2E4FA050-AC57-42EC-A690-63507C6DBA07}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {2E4FA050-AC57-42EC-A690-63507C6DBA07}.Debug|Any CPU.Build.0 = Debug|Any CPU + {2E4FA050-AC57-42EC-A690-63507C6DBA07}.Release|Any CPU.ActiveCfg = Release|Any CPU + {2E4FA050-AC57-42EC-A690-63507C6DBA07}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection + GlobalSection(ExtensibilityGlobals) = postSolution + SolutionGuid = {E0346F8C-655F-4744-9E46-CA8AFC8F531C} + EndGlobalSection +EndGlobal diff --git a/SalesforceApiClient.cs b/SalesforceApiClient.cs new file mode 100644 index 0000000..2bcc2d2 --- /dev/null +++ b/SalesforceApiClient.cs @@ -0,0 +1,707 @@ +using BinaryDad.Extensions; +using Newtonsoft.Json; +using Salesforce.NET.Entities; +using System; +using System.Collections.Generic; +using System.Linq.Expressions; +using System.Linq; +using System.Reflection; +using System.Threading.Tasks; +using System.Net.Http; +using System.Net.Http.Headers; +using System.Text; +using Newtonsoft.Json.Converters; +using System.Net; + +namespace Salesforce.NET +{ + public class SalesforceApiClient + { + private const string ContextKey = "SalesforceApiContext"; + + private readonly Task initializationTask; + private readonly string batchProcessingConnectionString; + + const string apiVersion = "51.0"; + + private SalesforceContext SalesforceContext + { + get => CacheHelper.Get(ContextKey); + set => CacheHelper.Add(ContextKey, value, 1440); + } + + public SalesforceApiClient(SalesforceCredentials credentials) + { + if (SalesforceContext == null) + { + // authenticate from constructor, but task is awaited prior to invoking request + initializationTask = AuthenticateAsync(credentials); + } + } + + /// + /// Retrieves a single Salesforce record by ID + /// + /// + /// + /// + public async Task GetAsync(string id) where T : SalesforceEntity + { + var salesforceObject = GetObjectName(); + + var getApiUrl = await GetEndpointUrlAsync($"sobjects/{salesforceObject}/{id}"); + + return await InvokeRequestAsync(async httpClient => + { + var response = await httpClient.GetAsync(getApiUrl); + + //var responseBody = await response.Content.ReadAsStringAsync(); + //return responseBody.Deserialize(); + + return await response.Content.ReadAsAsync(); + }); + } + + /// + /// Retrieves a single Salesforce record matching on an external ID + /// + /// + /// The property representing of the external ID to lookup + /// + /// + public async Task GetAsync(Expression> externalIdProperty, string id) where T : SalesforceEntity + { + var salesforceObject = GetObjectName(); + + if (externalIdProperty.Body is MemberExpression memberExpression) + { + var jsonProperty = memberExpression.Member.GetCustomAttribute(); + + var propertyName = jsonProperty?.PropertyName ?? memberExpression.Member.Name; + + var getApiUrl = await GetEndpointUrlAsync($"sobjects/{salesforceObject}/{propertyName}/{id}"); + + return await InvokeRequestAsync(async httpClient => + { + var response = await httpClient.GetAsync(getApiUrl); + + return await response.Content.ReadAsAsync(); + }); + } + + throw new ArgumentException("External ID must be a property expression", nameof(externalIdProperty)); + } + + /// + /// Creates a new Salesforce record + /// + /// + /// + /// + public async Task> CreateAsync(T record) where T : SalesforceEntity + { + var result = new Result(); + + var salesforceObject = GetObjectName(); + + var createApiUrl = await GetEndpointUrlAsync($"sobjects/{salesforceObject}"); + + return await InvokeRequestAsync(async httpClient => + { + record.SerializeReadOnlyProperties = false; + + var response = await httpClient.PostAsJsonAsync(createApiUrl, record); + + //var responseBody = await response.Content.ReadAsStringAsync(); + //var createResponse = responseBody.Deserialize(); + + var createResponse = await response.Content.ReadAsAsync(); + + if (createResponse.Success) + { + record.RecordId = createResponse.RecordId; + + result.Data = createResponse.RecordId; + result.Success = true; + } + else + { + // TODO: parse error response + result.AddError($"Error creating record"); + } + + return result; + }); + } + + /// + /// Creates a set of new Salesforce records + /// + /// + /// + /// + public async Task CreateAsync(IEnumerable records) where T : SalesforceEntity + { + var result = new Result(); + + var salesforceObject = GetObjectName(); + + var createApiUrl = await GetEndpointUrlAsync($"sobjects/{salesforceObject}"); + + return await InvokeRequestAsync(async httpClient => + { + var messages = new List(); + + // default to true until any fail in loop + result.Success = true; + + foreach (var record in records) + { + record.SerializeReadOnlyProperties = false; + + var response = await httpClient.PostAsJsonAsync(createApiUrl, record); + + var responseBody = await response.Content.ReadAsStringAsync(); + + if (response.IsSuccessStatusCode) + { + var createResponse = responseBody.Deserialize(); + + if (createResponse.Success) + { + record.RecordId = createResponse.RecordId; + + messages.Add($"Created record with ID {record.RecordId}"); + } + else + { + // TODO: follow pattern of batch lead create, consolidate response inti Result + result.AddError($"Error creating record"); + } + } + else + { + var errorResponse = responseBody.Deserialize(); + + var errorMessages = errorResponse + .Select(e => $"[{e.ErrorCode}] {e.Message}") + .ToList(); + + result.AddErrors(errorMessages); + } + + //var createResponse = await response.Content.ReadAsAsync(); + } + + if (messages.Any()) + { + result.Message = messages.Join("; "); + } + + return result; + }); + } + + /// + /// Creates a set of new Salesforce records (TO POSSIBLY REPLACE CreateAsync(IEnumerable)) + /// + /// + /// + /// + public async Task CreateBulkAsync(IEnumerable records) where T : SalesforceEntity + { + var salesforceObject = GetObjectName(); + + #region Create batch job + + var jobCreateResponse = await InvokeRequestAsync(async httpClient => + { + var createApiUrl = await GetEndpointUrlAsync("jobs/ingest"); + + var response = await httpClient.PostAsJsonAsync(createApiUrl, new + { + @object = salesforceObject, + contentType = "CSV", + operation = "insert", + lineEnding = "CRLF" + }); + + return await response.Content.ReadAsAsync(); + }); + + #endregion + + #region Upload content + + var uploadResponse = await InvokeRequestAsync(async httpClient => + { + var insertApiUrl = UrlUtility.Combine(SalesforceContext.InstanceUrl, jobCreateResponse.ContentUrl); + + var recordsTable = records.ToDataTable(info => info.GetCustomAttribute()?.PropertyName); + + var recordsCsv = recordsTable.ToCsv(); + + var recordsEncoded = recordsCsv.Base64Encode(); + + var csvContent = new StringContent(recordsEncoded); + + csvContent.Headers.ContentType = new MediaTypeHeaderValue("text/csv"); + + httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); + + var response = await httpClient.PutAsync(insertApiUrl, csvContent); + + return await response.Content.ReadAsStringAsync(); + }); + + #endregion + + #region Close job + + var closeResponse = await InvokeRequestAsync(async httpClient => + { + var closeApiUrl = await GetEndpointUrlAsync($"jobs/ingest/{jobCreateResponse.Id}"); + + var method = new HttpMethod("PATCH"); + + var body = new + { + state = "UploadComplete" + }; + + var content = new StringContent(body.Serialize(), Encoding.UTF8, "application/json"); + + var message = new HttpRequestMessage(method, closeApiUrl) + { + Content = content + }; + + var response = await httpClient.SendAsync(message); + + return await response.Content.ReadAsStringAsync(); + }); + + #endregion + + #region Get Status + + var statusResponse = await InvokeRequestAsync(async httpClient => + { + var statusApiUrl = await GetEndpointUrlAsync($"jobs/ingest/{jobCreateResponse.Id}"); + + var response = await httpClient.GetAsync(statusApiUrl); + + return await response.Content.ReadAsStringAsync(); + }); + + #endregion + + #region Download results + + var downloadResponse = await InvokeRequestAsync(async httpClient => + { + var downloadApiUrl = await GetEndpointUrlAsync($"jobs/ingest/{jobCreateResponse.Id}/failedResults"); + + httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("text/csv")); + + var response = await httpClient.GetAsync(downloadApiUrl); + + return await response.Content.ReadAsStringAsync(); + }); + + #endregion + + return null; + } + + public Task UpdateAsync(string id, Action update) where T : SalesforceEntity, new() + { + var record = new T() + { + RecordId = id + }; + + var trackable = record.AsTrackable(); + + update(record); + + return UpdateAsync(trackable); + } + + public async Task UpdateAsync(Trackable record) where T : SalesforceEntity + { + if (record.Value.RecordId.IsNullOrWhiteSpace()) + { + throw new ArgumentException("Record ID cannot be null or empty", nameof(record.Value.RecordId)); + } + + var salesforceObject = GetObjectName(); + + var createApiUrl = await GetEndpointUrlAsync($"sobjects/{salesforceObject}/{record.Value.RecordId}"); + + return await InvokeRequestAsync(async httpClient => + { + var method = new HttpMethod("PATCH"); + + var body = JsonConvert.SerializeObject(record.Modified, new StringEnumConverter()); + + var content = new StringContent(body, Encoding.UTF8, "application/json"); + + var message = new HttpRequestMessage(method, createApiUrl) + { + Content = content + }; + + var response = await httpClient.SendAsync(message); + + if (response.IsSuccessStatusCode) + { + return new UpdateResponse(true); + } + + //var responseBody = await response.Content.ReadAsStringAsync(); + + return await response.Content.ReadAsAsync(); + }); + } + + /// + /// Retrieves Salesforce records using an object query expression + /// + /// + /// + /// + public async Task> QueryAsync(Expression> query) where T : SalesforceEntity + { + var salesforceObject = GetObjectName(); + + // build a list of properties used in the "select" portion of the query + var properties = typeof(T) + .GetProperties() + .WhereIsQueryable() + .WhereIsSerializable() + .Select(p => + { + var jsonProperty = p.GetCustomAttribute(); + + return jsonProperty?.PropertyName ?? p.Name; + }) + .WhereNotNull() + .Join(", "); + + // generate a SQL clause from the query expression + var clause = ConvertExpression(query.Body); + + var queryApiUrl = await GetEndpointUrlAsync($"query?q=select {properties} from {salesforceObject} where {clause}"); + + return await InvokeRequestAsync(async httpClient => + { + var response = await httpClient.GetAsync(queryApiUrl); + + var queryResponse = await response.Content.ReadAsAsync>(); + + var records = queryResponse.Records; + + // TODO: incorporate limit + while (!queryResponse.Done) + { + var absoluteNextRecordsUrl = UrlUtility.Combine(SalesforceContext.InstanceUrl, queryResponse.NextRecordsUrl); + + response = await httpClient.GetAsync(absoluteNextRecordsUrl); + + queryResponse = await response.Content.ReadAsAsync>(); + + records.AddRange(queryResponse.Records); + } + + return records; + }); + } + + /// + /// Uploads a binary file (byte array) + /// + /// + /// + /// + /// + /// + public async Task> UploadFileAsync(byte[] file, string fileName, string fileType, string ownerId) + { + /* CONSIDERATIONS: + * 1. change fileType to category? + * 2. if ownerId is always a lead record ID, rename to leadRecordId + * 3. we may or may not need externalSystemId if the lead record will always exist prior to sending up a document + * + * { + * "fileName": "Baby Shark Test.csv", // Name of the file + * "category": "Contract", // Category to set file metadata (We'll need a list of the possible values) + * "leadId": "410916", // Quickbase Record ID for the lead this document is related to + * "encodedFile": "UmVjb3JkIElkLENsaWVudCBGaXJ...=", // Base 64 encoded file. + * "externalSystemId": "12345" // If we don't have lead record ID from Quickbase, use this as an identifier + * } */ + + var result = new Result(); + + var uploadFileApiUrl = await GetApexUrlAsync($"??????"); + + var request = new + { + fileName, + category = fileType, + leadId = ownerId, + encodedFile = Convert.ToBase64String(file) + }; + + return await InvokeRequestAsync(async httpClient => + { + var response = await httpClient.PostAsJsonAsync(uploadFileApiUrl, request); + + var responseBody = await response.Content.ReadAsStringAsync(); + + // TODO: parse actual response + + result.Success = true; + + return result; + }); + } + + /// + /// Retrieves schema information for an entity + /// + /// + /// + public async Task GetSchema() where T : SalesforceEntity + { + var salesforceObject = GetObjectName(); + + var schemaApiUrl = await GetEndpointUrlAsync($"sobjects/{salesforceObject}/describe"); + + return await InvokeRequestAsync(async httpClient => + { + var response = await httpClient.GetAsync(schemaApiUrl); + + var responseBody = await response.Content.ReadAsStringAsync(); + + return await response.Content.ReadAsAsync(); + }); + } + + /// + /// Validates whether the entity is properly mapped to its schema in Salesforce + /// + /// + /// + public async Task> ValidateSchema() where T : SalesforceEntity, new() + { + var result = new Result(); + var schema = await GetSchema(); + + // get the fields from Salesforce + var salesforceFields = schema.Fields + .Select(f => f.Name) + .ToList(); + + // get the fields for the entity + var propertyNames = typeof(T) + .GetProperties() + .WhereIsSerializable() + .WhereIsQueryable() + .GetPropertyNames(); + + // find any orphaned/mismatched fields + var mismatchedFields = propertyNames + .Where(p => !salesforceFields.Contains(p, StringComparer.OrdinalIgnoreCase)) + .ToList(); + + result.Success = mismatchedFields.NoneOrNull(); + + if (result.Success) + { + result.Message = "All fields are valid"; + } + else + { + foreach (var mismatchedField in mismatchedFields) + { + result.AddError($"Field [{mismatchedField}] was not found in source"); + } + } + + return result; + } + + #region Private Methods + + private async Task AuthenticateAsync(SalesforceCredentials credentials) + { + var baseApiUrl = credentials.IsProduction ? "https://login.salesforce.com/services" : "https://test.salesforce.com/services"; + + var authenticationUrl = UrlUtility.Combine(baseApiUrl, "oauth2/token"); + + var httpClient = new HttpClient(); + + var authenticationRequest = new Dictionary + { + ["grant_type"] = "password", + ["client_id"] = credentials.ClientId, + ["client_secret"] = credentials.ClientSecret, + ["username"] = credentials.Username, + ["password"] = WebUtility.UrlEncode(credentials.Password) + credentials.SecurityToken + }; + + // don't use ToQueryString() as it encodes the values + var requestBody = authenticationRequest + .Select(k => $"{k.Key}={k.Value}") + .Join("&"); + + //var serializedRequest = Encoding.UTF8.GetBytes(requestBody); + + //var request = new HttpRequestMessage(HttpMethod.Post, authenticationUrl) + //{ + // Content = new ByteArrayContent(serializedRequest) + //}; + + //request.Content.Headers.ContentType = new MediaTypeHeaderValue("application/x-www-form-urlencoded"); + + var requestContent = new StringContent(requestBody, Encoding.UTF8, "application/x-www-form-urlencoded"); + + + //var response = await httpClient.SendAsync(request); + var response = await httpClient.PostAsync(authenticationUrl, requestContent); + + //var responseBody = await response.Content.ReadAsStringAsync(); + + var authenticationResponse = await response.Content.ReadAsAsync(); + + if (authenticationResponse.Success) + { + SalesforceContext = new SalesforceContext(authenticationResponse.AccessToken, authenticationResponse.InstanceUrl, authenticationResponse.TokenType); + } + } + + private async Task InvokeRequestAsync(Func> action) + { + await AssertInitializedAsync(); + + var httpClient = new HttpClient(); + + httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(SalesforceContext.TokenType.ToString(), SalesforceContext.AccessToken); + + return await action(httpClient); + } + + private async Task GetEndpointUrlAsync(string relativeApiUrl) + { + await AssertInitializedAsync(); + + return UrlUtility.Combine(SalesforceContext.InstanceUrl, $"services/data/v{apiVersion}/{relativeApiUrl}"); + } + + private async Task GetApexUrlAsync(string relativeApiUrl) + { + await AssertInitializedAsync(); + + return UrlUtility.Combine(SalesforceContext.InstanceUrl, $"services/apexrest/api/{relativeApiUrl}"); + } + + private string GetObjectName() + { + var type = typeof(T); + var objectAttribute = type.GetCustomAttribute(); + + return objectAttribute?.ObjectName ?? type.Name; + } + + /// + /// Converts an expression tree into a SQL query clause + /// + /// + /// + private static string ConvertExpression(Expression expression) + { + /* NOTE: this is a work in progress, as I did not like the built-in + * Expression.ToString(), and this allows us to customize the query to our liking */ + + if (expression is BinaryExpression binaryExpression) + { + // traverse the tree and combine all sub expression groups + var left = ConvertExpression(binaryExpression.Left); + var comparison = GetExpressionType(binaryExpression.NodeType); + var right = ConvertExpression(binaryExpression.Right); + + return $"({left} {comparison} {right})"; + } + + if (expression is ConstantExpression || expression is MethodCallExpression) + { + return GetExpressionValue(expression); + } + + if (expression is MemberExpression memberExpression) + { + if (memberExpression.Expression is ParameterExpression) + { + // NOTE: this should be be the property from the delegate's parameter + + var jsonProperty = memberExpression.Member.GetCustomAttribute(); + + return jsonProperty != null ? jsonProperty.PropertyName : memberExpression.Member.Name; + } + + return GetExpressionValue(expression); + } + + return string.Empty; + } + + private static string GetExpressionValue(Expression expression) + { + var value = Expression.Lambda(expression).Compile().DynamicInvoke(); + + if (expression.Type == typeof(string)) + { + // TODO: escaping single quotes? + return $"'{value}'"; + } + + if (expression.Type == typeof(DateTime)) + { + return ((DateTime)value).ToString("yyyy-MM-ddThh:mm:ssZ"); + } + + if (value == null) + { + return string.Empty; + } + + return value.ToString(); + } + + private static string GetExpressionType(ExpressionType expressionType) + { + return expressionType == ExpressionType.Equal ? "=" + : expressionType == ExpressionType.NotEqual ? "!=" + : expressionType == ExpressionType.GreaterThan ? ">" + : expressionType == ExpressionType.GreaterThanOrEqual ? ">=" + : expressionType == ExpressionType.LessThan ? "<" + : expressionType == ExpressionType.LessThanOrEqual ? "<=" + : expressionType == ExpressionType.AndAlso ? "and" + : expressionType == ExpressionType.And ? "and" + : expressionType == ExpressionType.Or ? "or" + : expressionType == ExpressionType.OrElse ? "or" + : ""; + } + + private async Task AssertInitializedAsync() + { + if (SalesforceContext == null && initializationTask != null) + { + await initializationTask; + } + } + + #endregion + } +} diff --git a/SalesforceContext.cs b/SalesforceContext.cs new file mode 100644 index 0000000..62e2309 --- /dev/null +++ b/SalesforceContext.cs @@ -0,0 +1,19 @@ +namespace Salesforce.NET +{ + /// + /// Maintains context regarding the current Salesforce API connection + /// + public class SalesforceContext + { + public string AccessToken { get; } + public string InstanceUrl { get; } + public TokenType TokenType { get; } + + public SalesforceContext(string accessToken, string instanceUrl, TokenType tokenType) + { + AccessToken = accessToken; + InstanceUrl = instanceUrl; + TokenType = tokenType; + } + } +} diff --git a/SalesforceCredentials.cs b/SalesforceCredentials.cs new file mode 100644 index 0000000..1acbdcf --- /dev/null +++ b/SalesforceCredentials.cs @@ -0,0 +1,34 @@ +namespace Salesforce.NET +{ + public class SalesforceCredentials + { + public bool IsProduction { get; set; } + public string ClientId { get; set; } + public string ClientSecret { get; set; } + public string Username { get; set; } + public string Password { get; set; } + public string SecurityToken { get; set; } + + /// + /// Loads a set of default credentials + /// + /// + public static SalesforceCredentials PocSandbox() + { + return new SalesforceCredentials + { + IsProduction = false, + Username = "integration@clearoneadvantage.com.pocsandbox", + Password = "nanR#Mo8", + SecurityToken = "1jMfMWqmQ0YpjX1JyVh7iUkvV", + ClientId = "3MVG967gVD5fuTmI4keNlyXpELeZ8J5ZsW27nmeeMtpjSjimy5QGiTBEoTnW.c661Af2eV7vEk0NTnp3JYjFA", + ClientSecret = "1168DAD1B619C2EE81EA6C3E248F9B2B24993ACD41E8CB11DE79D83FBE771465" + }; + } + + public SalesforceCredentials() + { + // TODO: validate property data + } + } +} diff --git a/SchemaResponse.cs b/SchemaResponse.cs new file mode 100644 index 0000000..32f8f80 --- /dev/null +++ b/SchemaResponse.cs @@ -0,0 +1,25 @@ +using System.Collections.Generic; + +namespace Salesforce.NET +{ + public class SchemaResponse + { + public ICollection Fields { get; set; } + + public class SchemaField + { + /// + /// User-friendly name for the field + /// + public string Label { get; set; } + + /// + /// Internal name for the field + /// + public string Name { get; set; } + + public string DefaultValue { get; set; } + public string Type { get; set; } + } + } +} \ No newline at end of file diff --git a/TokenType.cs b/TokenType.cs new file mode 100644 index 0000000..043a8e4 --- /dev/null +++ b/TokenType.cs @@ -0,0 +1,7 @@ +namespace Salesforce.NET +{ + public enum TokenType + { + Bearer + } +} diff --git a/Trackable.cs b/Trackable.cs new file mode 100644 index 0000000..59a6284 --- /dev/null +++ b/Trackable.cs @@ -0,0 +1,81 @@ +using System; +using System.Collections.Generic; +using System.Linq; + +namespace Salesforce.NET +{ + /// + /// Allows for an object to track changes made + /// + /// + public class Trackable + { + private readonly Type type; + + private T value; + private IDictionary modified; + + private readonly IDictionary originalPropertyValues = new Dictionary(); + private readonly IDictionary latestPropertyValues = new Dictionary(); + + public Trackable(T value) + { + this.value = value; + + type = value.GetType(); + + SetPropertyValues(originalPropertyValues); + } + + public T Value + { + get => value; + protected set => this.value = value; + } + + /// + /// Gets a dictionary of modified fields since the object was created + /// + public IDictionary Modified + { + get + { + SetPropertyValues(latestPropertyValues); + + return originalPropertyValues + .Join(latestPropertyValues, o => o.Key, l => l.Key, (o, l) => new + { + Original = o, + Latest = l + }) + .Where(p => !object.Equals(p.Original.Value, p.Latest.Value)) + .Select(p => p.Latest) + .ToDictionary(t => t.Key, t => t.Value); + } + + protected set => modified = value; + } + + private void SetPropertyValues(IDictionary propertyValues) + { + type + .GetProperties() + .ToList() + .ForEach(p => propertyValues[p.Name] = p.GetValue(value)?.ToString()); + } + } + + public static class Trackable + { + /// + /// Allows an object to track changes for the Salesforce API update + /// + /// + /// + /// + public static Trackable AsTrackable(this T value) + { + return new Trackable(value); + } + } +} diff --git a/UpdateResponse.cs b/UpdateResponse.cs new file mode 100644 index 0000000..7352d5e --- /dev/null +++ b/UpdateResponse.cs @@ -0,0 +1,22 @@ +using Newtonsoft.Json; + +namespace Salesforce.NET +{ + public class UpdateResponse : IApiResponse + { + public bool Success { get; set; } + + [JsonProperty("errorCode")] + public string ErrorCode { get; set; } + + [JsonProperty("message")] + public string Message { get; set; } + + public UpdateResponse() { } + + public UpdateResponse(bool success) + { + Success = success; + } + } +} diff --git a/bin/Debug/netstandard2.1/Salesforce.NET.deps.json b/bin/Debug/netstandard2.1/Salesforce.NET.deps.json new file mode 100644 index 0000000..8adfe58 --- /dev/null +++ b/bin/Debug/netstandard2.1/Salesforce.NET.deps.json @@ -0,0 +1,250 @@ +{ + "runtimeTarget": { + "name": ".NETStandard,Version=v2.1/", + "signature": "" + }, + "compilationOptions": {}, + "targets": { + ".NETStandard,Version=v2.1": {}, + ".NETStandard,Version=v2.1/": { + "Salesforce.NET/1.0.0": { + "dependencies": { + "BinaryDad.Extensions": "21.4.20.3", + "Newtonsoft.Json": "13.0.1", + "System.Runtime.Caching": "5.0.0" + }, + "runtime": { + "Salesforce.NET.dll": {} + } + }, + "BinaryDad.Extensions/21.4.20.3": { + "dependencies": { + "Newtonsoft.Json": "13.0.1", + "System.ComponentModel.Annotations": "5.0.0", + "System.Runtime.Caching": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/BinaryDad.Extensions.dll": { + "assemblyVersion": "21.4.20.3", + "fileVersion": "21.4.20.3" + } + } + }, + "Newtonsoft.Json/13.0.1": { + "runtime": { + "lib/netstandard2.0/Newtonsoft.Json.dll": { + "assemblyVersion": "13.0.0.0", + "fileVersion": "13.0.1.25517" + } + } + }, + "System.Buffers/4.5.1": { + "runtime": { + "lib/netstandard2.0/System.Buffers.dll": { + "assemblyVersion": "4.0.3.0", + "fileVersion": "4.6.28619.1" + } + } + }, + "System.ComponentModel.Annotations/5.0.0": { + "runtime": { + "lib/netstandard2.1/System.ComponentModel.Annotations.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Configuration.ConfigurationManager/5.0.0": { + "dependencies": { + "System.Security.Cryptography.ProtectedData": "5.0.0", + "System.Security.Permissions": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/System.Configuration.ConfigurationManager.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Memory/4.5.4": { + "dependencies": { + "System.Buffers": "4.5.1", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + }, + "runtime": { + "lib/netstandard2.0/System.Memory.dll": { + "assemblyVersion": "4.0.1.1", + "fileVersion": "4.6.28619.1" + } + } + }, + "System.Numerics.Vectors/4.4.0": { + "runtime": { + "lib/netstandard2.0/System.Numerics.Vectors.dll": { + "assemblyVersion": "4.1.3.0", + "fileVersion": "4.6.25519.3" + } + } + }, + "System.Runtime.Caching/5.0.0": { + "dependencies": { + "System.Configuration.ConfigurationManager": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/System.Runtime.Caching.dll": { + "assemblyVersion": "4.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Runtime.CompilerServices.Unsafe/4.5.3": { + "runtime": { + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": { + "assemblyVersion": "4.0.4.1", + "fileVersion": "4.6.28619.1" + } + } + }, + "System.Security.AccessControl/5.0.0": { + "dependencies": { + "System.Security.Principal.Windows": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/System.Security.AccessControl.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Security.Cryptography.ProtectedData/5.0.0": { + "dependencies": { + "System.Memory": "4.5.4" + }, + "runtime": { + "lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Security.Permissions/5.0.0": { + "dependencies": { + "System.Security.AccessControl": "5.0.0" + }, + "runtime": { + "lib/netstandard2.0/System.Security.Permissions.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + }, + "System.Security.Principal.Windows/5.0.0": { + "runtime": { + "lib/netstandard2.0/System.Security.Principal.Windows.dll": { + "assemblyVersion": "5.0.0.0", + "fileVersion": "5.0.20.51904" + } + } + } + } + }, + "libraries": { + "Salesforce.NET/1.0.0": { + "type": "project", + "serviceable": false, + "sha512": "" + }, + "BinaryDad.Extensions/21.4.20.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-2JgmHs4yw6WQVM6BQshO05HeB8NcGPLtQnAytDkVNoMD7kHznX5o+f+B0zQe+vIe75559CtBzOT5hZHOd3W+Gg==", + "path": "binarydad.extensions/21.4.20.3", + "hashPath": "binarydad.extensions.21.4.20.3.nupkg.sha512" + }, + "Newtonsoft.Json/13.0.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==", + "path": "newtonsoft.json/13.0.1", + "hashPath": "newtonsoft.json.13.0.1.nupkg.sha512" + }, + "System.Buffers/4.5.1": { + "type": "package", + "serviceable": true, + "sha512": "sha512-Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==", + "path": "system.buffers/4.5.1", + "hashPath": "system.buffers.4.5.1.nupkg.sha512" + }, + "System.ComponentModel.Annotations/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dMkqfy2el8A8/I76n2Hi1oBFEbG1SfxD2l5nhwXV3XjlnOmwxJlQbYpJH4W51odnU9sARCSAgv7S3CyAFMkpYg==", + "path": "system.componentmodel.annotations/5.0.0", + "hashPath": "system.componentmodel.annotations.5.0.0.nupkg.sha512" + }, + "System.Configuration.ConfigurationManager/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-aM7cbfEfVNlEEOj3DsZP+2g9NRwbkyiAv2isQEzw7pnkDg9ekCU2m1cdJLM02Uq691OaCS91tooaxcEn8d0q5w==", + "path": "system.configuration.configurationmanager/5.0.0", + "hashPath": "system.configuration.configurationmanager.5.0.0.nupkg.sha512" + }, + "System.Memory/4.5.4": { + "type": "package", + "serviceable": true, + "sha512": "sha512-1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==", + "path": "system.memory/4.5.4", + "hashPath": "system.memory.4.5.4.nupkg.sha512" + }, + "System.Numerics.Vectors/4.4.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==", + "path": "system.numerics.vectors/4.4.0", + "hashPath": "system.numerics.vectors.4.4.0.nupkg.sha512" + }, + "System.Runtime.Caching/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-30D6MkO8WF9jVGWZIP0hmCN8l9BTY4LCsAzLIe4xFSXzs+AjDotR7DpSmj27pFskDURzUvqYYY0ikModgBTxWw==", + "path": "system.runtime.caching/5.0.0", + "hashPath": "system.runtime.caching.5.0.0.nupkg.sha512" + }, + "System.Runtime.CompilerServices.Unsafe/4.5.3": { + "type": "package", + "serviceable": true, + "sha512": "sha512-3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==", + "path": "system.runtime.compilerservices.unsafe/4.5.3", + "hashPath": "system.runtime.compilerservices.unsafe.4.5.3.nupkg.sha512" + }, + "System.Security.AccessControl/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-dagJ1mHZO3Ani8GH0PHpPEe/oYO+rVdbQjvjJkBRNQkX4t0r1iaeGn8+/ybkSLEan3/slM0t59SVdHzuHf2jmw==", + "path": "system.security.accesscontrol/5.0.0", + "hashPath": "system.security.accesscontrol.5.0.0.nupkg.sha512" + }, + "System.Security.Cryptography.ProtectedData/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-HGxMSAFAPLNoxBvSfW08vHde0F9uh7BjASwu6JF9JnXuEPhCY3YUqURn0+bQV/4UWeaqymmrHWV+Aw9riQCtCA==", + "path": "system.security.cryptography.protecteddata/5.0.0", + "hashPath": "system.security.cryptography.protecteddata.5.0.0.nupkg.sha512" + }, + "System.Security.Permissions/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-uE8juAhEkp7KDBCdjDIE3H9R1HJuEHqeqX8nLX9gmYKWwsqk3T5qZlPx8qle5DPKimC/Fy3AFTdV7HamgCh9qQ==", + "path": "system.security.permissions/5.0.0", + "hashPath": "system.security.permissions.5.0.0.nupkg.sha512" + }, + "System.Security.Principal.Windows/5.0.0": { + "type": "package", + "serviceable": true, + "sha512": "sha512-t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==", + "path": "system.security.principal.windows/5.0.0", + "hashPath": "system.security.principal.windows.5.0.0.nupkg.sha512" + } + } +} \ No newline at end of file diff --git a/bin/Debug/netstandard2.1/Salesforce.NET.dll b/bin/Debug/netstandard2.1/Salesforce.NET.dll new file mode 100644 index 0000000000000000000000000000000000000000..fa9870ebfb7473fdef82823fbaa19242481d7ef3 GIT binary patch literal 72704 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 literal 0 HcmV?d00001 diff --git a/bin/Debug/netstandard2.1/Salesforce.NET.pdb b/bin/Debug/netstandard2.1/Salesforce.NET.pdb new file mode 100644 index 0000000000000000000000000000000000000000..a9a27941a3ba129658ea4a58739787e2a86d78c9 GIT binary patch literal 23020 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 E1HnIUZU6uP literal 0 HcmV?d00001 diff --git a/obj/Debug/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs b/obj/Debug/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs new file mode 100644 index 0000000..bc644cb --- /dev/null +++ b/obj/Debug/netstandard2.1/.NETStandard,Version=v2.1.AssemblyAttributes.cs @@ -0,0 +1,4 @@ +// +using System; +using System.Reflection; +[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETStandard,Version=v2.1", FrameworkDisplayName = "")] diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfo.cs b/obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfo.cs new file mode 100644 index 0000000..ba931f8 --- /dev/null +++ b/obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfo.cs @@ -0,0 +1,23 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:4.0.30319.42000 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +using System; +using System.Reflection; + +[assembly: System.Reflection.AssemblyCompanyAttribute("Salesforce.NET")] +[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")] +[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")] +[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0")] +[assembly: System.Reflection.AssemblyProductAttribute("Salesforce.NET")] +[assembly: System.Reflection.AssemblyTitleAttribute("Salesforce.NET")] +[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")] + +// Generated by the MSBuild WriteCodeFragment class. + diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfoInputs.cache b/obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfoInputs.cache new file mode 100644 index 0000000..5651959 --- /dev/null +++ b/obj/Debug/netstandard2.1/Salesforce.NET.AssemblyInfoInputs.cache @@ -0,0 +1 @@ +3d639814e268ae7ece407339ad1686c1502f6f44 diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.assets.cache b/obj/Debug/netstandard2.1/Salesforce.NET.assets.cache new file mode 100644 index 0000000000000000000000000000000000000000..1b568b452662ef920954ceb15be046fa0ab290cc GIT binary patch literal 6177 zcmcIoUvJz*5Kn2-5=zo0DNSi9ZAueJOZM)P3xt$Hua~L{G|{P{L4bwi*n5fToo(6c zrYFQhUiyMSAie+}0wIC=zz0A=d=8%A6EI`%`u6PIJ0B`1O)fW{-TCe8{B`5QyR{ca zMn--={O#v|{;oCt+`j+aFNaTm-DrJz$qmnu}z!M$Beq6>jo@-Q=Ntsks z`nS50AAqE+`Z%aU)hB>Z_47c7M+WK+J0YWOVtH-fbE(VPo=scCbX|{`EH=mrfGHaR zZT1?YVr(Z%>tg9T@bm{ju%0%jAI;rXFte0qq=GoJe9cv+>V+}a5QAi4zvzREu>Oz)7guH*yN<{ zNxwEt7o0Uf>2WT-N!wn~LCy^4Y(;GvI95n@sKvYl!CC$+V+>q2pM3;Z=(K3CO@l{{ zMMLty4b3J+(TiMkn_5xeunwtNAP@pX7I-a`xR#Zu2OXbzdx7cicSs}f7+|9Iy2(rw zzmOGg(4g&vaq!`DVYpObBXC^H@y!sNuVj9X`uf(O$bP;G@*iY1|WSl(7<7m0(KL>H>zYsowxX%^Z3Ac6nI_& zJs6K?fiN%30IBet1O78iXSv*7Fr5k5*>v`@2KIU2e?LSPmI5Dgvh=H+qye7#a`4mC z*ONPxnMAh!1%M}K!&fxNxCs1Dih4skPEWBjR8>WcJ42GiWHhgGG?(BTec>{Y$`@vV z-!6*A6{+!2k{SV573!JZg4tXuBfJ8d(O$0sA;PObDui>uADnP_^r)+w9$+S+%lNX@ zZC-=#b>M$p*ez3lyi7n-m6VAnE)(%hE88W0(#0m zqAn1M+GWPI3*riE*T7IpD^O3#lhM8jDCF>2)SxB6|DmwCQ@EB~NPSUAZ78J0vFnSm ze2`M+AZ5)#D!`A1HoM=g@Wp{kZGnt*DT8!bgR~0#;`Jgmxt}&02T8Lr1mJWj?^9&h zD;d~tX<)w%eDwRrMU9-sW^ZepG{B(&r|6UF(!lKY$)dnzGs&t1_#OCv4d@2YyFgEd zcWqT9@}nq0S709F*<|>zya^aZ5<%?m0SW9s4v&3cSoS*zPLbJz{I?i=KXWSiM!p^X zR65V^cNo>J-QT(aF--)g0E@h2maNn?%!`ZYfvjbxoOs`|`HG{n_noY7CoqwzGm3Ild8qDqPTiGC?6 z(2RMDx&6vwKSk7!)xwank2*d*!S8#l?)ja2o@KUojEW@&jK9Y)89j%yT+} zO)JchnUF{0NnuW5LVjjxQkcrKR&xsr8f&hQNsCYAw{k#ID;I0T7gIn|udi*}dtU&= zMyy`dL+EzclUz-gqkD4zn?id`^qZ>MV=>dKo-OLPQaIvy4pi}|;7g0xD$6$uXw`S4 z;*~~L->^xP=?~d7gBMlky|PNMiR&E zE@ic6p685}t3UZG*g8#z21h}8O)OI(fl@8%E7W=J!DxkH=sp#)oclvFoLY%u? Hbdi4nm5-0u literal 0 HcmV?d00001 diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.csproj.CoreCompileInputs.cache b/obj/Debug/netstandard2.1/Salesforce.NET.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..58b6bbc --- /dev/null +++ b/obj/Debug/netstandard2.1/Salesforce.NET.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +273dbaab4e6e24514b4a048450187b085b8e22e9 diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.csproj.FileListAbsolute.txt b/obj/Debug/netstandard2.1/Salesforce.NET.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..0262012 --- /dev/null +++ b/obj/Debug/netstandard2.1/Salesforce.NET.csproj.FileListAbsolute.txt @@ -0,0 +1,9 @@ +D:\Git\Salesforce.NET\Salesforce.NET\obj\Debug\netstandard2.1\Salesforce.NET.csprojAssemblyReference.cache +D:\Git\Salesforce.NET\Salesforce.NET\obj\Debug\netstandard2.1\Salesforce.NET.AssemblyInfoInputs.cache +D:\Git\Salesforce.NET\Salesforce.NET\obj\Debug\netstandard2.1\Salesforce.NET.AssemblyInfo.cs +D:\Git\Salesforce.NET\Salesforce.NET\obj\Debug\netstandard2.1\Salesforce.NET.csproj.CoreCompileInputs.cache +D:\Git\Salesforce.NET\Salesforce.NET\bin\Debug\netstandard2.1\Salesforce.NET.deps.json +D:\Git\Salesforce.NET\Salesforce.NET\bin\Debug\netstandard2.1\Salesforce.NET.dll +D:\Git\Salesforce.NET\Salesforce.NET\bin\Debug\netstandard2.1\Salesforce.NET.pdb +D:\Git\Salesforce.NET\Salesforce.NET\obj\Debug\netstandard2.1\Salesforce.NET.dll +D:\Git\Salesforce.NET\Salesforce.NET\obj\Debug\netstandard2.1\Salesforce.NET.pdb diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.csprojAssemblyReference.cache b/obj/Debug/netstandard2.1/Salesforce.NET.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..4964b0cf13ebac85575fd397b9fc598c97e38ac1 GIT binary patch literal 424 zcmaJ-!Ait15KV2nZmowsdGb*2CA2I>FGa8*f{IF)Ju1_7s$sK@BHb3Hv*a?yp6wl~KLrXQPlEUw~N|UMY=fvP5l!8p^!jInQ{O zCeIfZ+>VVD?Ims&YK24DWb?l0kNZ6DiVWru(y*i7XVe>Gaa~)mNL^7c zBz~Rz!|yBSLP~6{vtalIm?sO3L~;4y{#sce_vQ>{e?13>x*6 z-mS$82Cir(OOPWP#(Wlr@$_Kp<3@L40QsYNzdJd73!DuX?A1jS64AJTN`L5R%lJV& T4(@X+FvvV_Mnb}j#Dw@0A+vW# literal 0 HcmV?d00001 diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.dll b/obj/Debug/netstandard2.1/Salesforce.NET.dll new file mode 100644 index 0000000000000000000000000000000000000000..fa9870ebfb7473fdef82823fbaa19242481d7ef3 GIT binary patch literal 72704 zcmcG%34B!5`9A*MJ6kf@lgS1NNyx&$1Z0UC5HLUx5yS;l6vQC7py*%{ahY5Uf+&hs z6xX5#!5w$pX~lv&ZY?gfh#=P1s;#!xYNhf2Jny-anXp*<{eAw?dC$9@_q^vl?>YD0 zbI%M%o^-8vM8u2Fk3Wh$jgo&23V#~3L!4RmY^JPBeWT)OYvLOfQ_h^zQa-OadPeii zbINDUJonsaYx$|Cl{cS%Zuy*Z%NviHTz*b;_Gtq$GJ;jE>7&PrOtd_*=;U8K5N~aV z^e#`c28x6%5x?Q~8Unl=cmqn2Y{hNkHyQL_|Jor3pMM@{x{Rv)KT*0QS@_#L*pj1& z!0uEAV$Z)OOVYvn^B_y6>?!*xx?ChBNuC1w@FaRb>uDFZg09MgzmREPUBBaMU^fkD zZfTwchWZ8{wW9?nll~gu{eb4v=0>4NUj;sE40`OPH#(`BK^a&4(KlOsvb$a6i$_Gd z*QCbJ`|D-LDnx?)Q1*7qO1H$22m4)ThpSQA9*1hS*P)i}bEsrzdL30lQ+WeDG8ZNM z$nl(yB&qhB(&FJmC9#?0f+tmf8o55VEJ}(X3Uq;a1TN8?;brukh4u*+4s|!t_ z({ioq^Dy{5ml4GEh`V}4wgwsrjv8@5g$n{j8mq|T>xE^t%7aoGv zIm&e`hjoprlJ58+uv}X(e&`X$ugDD}mHb*$$B%KJUtayv;gN2^rj`k|8>eBg=hZl^ zK%5G@;zY&&7N;(M52U~F`yjVG*e&Z>CbE-i$WCe@JE_F%RHd%m^l9I)xFqK$EBa%E z-E)(c{Mu^w+@xuLjIeudvMGOzaNoK4@AP5Ix`j)d+&eef?mlu;8{9iLwY`1k=F{DB zldb)?m@_xo{Ljfv`tx&glMepu+#CvJjx`b|*zfqR93>lLt6a|a;m9kjFv!y!GnND0 zJf)&PMrg*e$X#bx)2~)_ESbN*Ex+`w>w9(^5UscOfUvR|5Tv!vf37zH&Fit2%q!~3 zYZ~}DF{Z`;7GsnDz3uQJP!akd*-e76Wg;-e4#K24=lsC;|qivtcL# z2IhcaC;|ooX&8!tksD_y0!Ch(p$HhEI75-acDM|q62{mB;f!81)b0GZnj)xI5NEiE zs~Rj|wGr{&7RI#{LA9bdLlH2F;|v!`G}$9AQ3R?z;|xW>D2X!^f$t4_`#!R)vt<+5 z)wVN%>ZIQ=^kmZJnioMXq#zes-h(LU_c$j&CbqxR|2`NkBhjBQt`d<@7*~u)T0{bB z=mTSDx*EzGXbUcOk_tOwhp_}lg8u%VP{i*KkA{Kj{(%}hItG~5hyRVhb;uO~19xSH zp$Hg<#Tkl#F)q$rW4Co_Hf~)er^aqM3ibO%Ma{^JMP%vHW6jNCOQDl3t|DU#}1!@C< zDCR;?wjmY7!c4NIL`sL!EOWz_15m0@o-i^f*gwY(p8|(H(TSi6IxVb2@GuKQZrDev zdcOh9S7BKRdyxkHCMoVI@4&UIAbb=R`swwo+O-{zryV{MrcIw=5wV#M+NnXvQN#Fi zC`v3EIW0%SPS77d28DAhfZukI(#+l|Eb^V>ShP`;D`7MpF+>>29c25qAgu)JO-{>H zu;R8(WHsA4iG|0R#=`4hNNMt97H!mkN#qnvl5kC`P5Or=E2m`!1h9#y1f3=T*hEg! zCi0QSkc%)z5sYCehA|T1(*TTrw1w3!r{#38U<;WNbPyuin#025oW&yFIh#crMX;5k zwn&7}0Z7=w@aD9f3l?leQ8@DeVCy^<9;cZ_zSF{@jUw2>bcSCf!si2+abr$kjm?oT zG9yyGtQ_g+iQdgThGnEqB+cuOUI2Zu17VC-Bt0T22|utL=d@f1F|;p2;am&=KVmFA zP8*AS$6?V%5&Xa~!4DGQO8^qKki9uA?O?&yLKM!W0I;=)g~wUUBHy`;MH@x1h2eoM z65-1Mj4fn~U|Qs~;MoXkpc%KbNtqHwMRKpR)F$aj{pXd@41vegWU@HGH2$0Fako<$pZuz_)cD}%XzLcR;LkC%bt?dD{gQ>pS;->bxs62|MX-fogDnzC z^O1fP(^jqV>vo8pprwALv+y`+Eb^UH7Ht&47KRPBNQ663BjHyM+BzV~Ru-$-P7Vu? zlg%RE$z;(+5o}?2V2ebOtpV^0i)oI$T@EC?3XPzr7==h$KreBDa4C|XmpH#(;!L_D zKDdfnf)$l(^!YG@)jZVcNl&RgL;TS@*?Z)?Kf@ngO&l5T&%?}F6Bp$9O0UKug$J|d zC$OC2!7KI7>Z0an6fe&4-dWwlC3@!g?yN3p{uL$RyHG#RUym$9s~8Zgf0}*%u_)1Y z#45}S4Q2yU3zQ zbS)AAT5gdgMq~596PtmyudqB>ua|%=6}Yo8Lf< z@FQBGgx8ilUyiRfRn)WeNUC2SEfeb#))48X{*`46IL|Jt9B`UlmNno+yDWRak#<>V zz$m*cf53ru@qm7I(SS0$tZG1>T~<9H(EKkn6!A5G->vx3P;L>hRVBj|Ii@HyMNd;y zpa@2U;nMlV`CbNpTCiutbxG$c_NbW0`7H7stXN23@{quoKS*E_W|HDYrY~kJZ@ytt z%LvPhyDqvOhYEN$p&ZYhDu#M3)p&=b2pIk23`M{|LK_W5z(5)qh9Y1Lj58DgV^Ex- zi1yK=dtv2_c?(uEe|13=tF~XNo2wCv=#>V)gg915@|P38#^5g!Ut;iP4{&5XE<=nU z?gFbZ?zjs?!-L}uyNG-1s4+&O>7U*5DD<7j09^EOqOKK0VjamW%iRlkg33>lWye@2 z{1kvTMm-IkB51=eSiht~^U99Vs!=u-4QIjAU|07qtXc33kWT-zfGy9F*G|cT^+Xfm zUnRtpEckVI@$(dKAg`U0FxJAzg5Px4*+`vDszXT_Yg}Z(OWk!|rp_y>LrEBGS!BVh z-F050j`5U|1+RA(Z%&9Q;aVBd0b+8!2@VnuG4klOtv7T1EiifIcpD}1{2dfx#~AA9 zZvn!Xpbu0ppN3LlH2B#~F$wa_6wb z_=i_Ax0p>M;>wDEF*43j1Polu%v4YWjD|Qv5imx@8H#{`<e$!{h(Aa-?18u%~V)%y`){9^+QUSbN_Nbz6h+L{N(dkPk2b ze4@r>GW>hs*lP*@0VVcQ!rM?TW34=I#ODK$9B;oKEgyn?F`l8fqm+JUxeX#u#%c2( zf$gAKZ$Cc&U_J?Ec#b|8dV~J5{|rdM#4j9RN77|`zz!pM{o5k?>|ma4^2ILXwugCs zLf%SESAASyP&-gKz#H*KQX?$|!4DsRf}O8z1F>UApyg;0eV9mh%KoFGNE1Y4L~-{J zbdCf@WtQP`^xm07NAsuL7D~|BZ>-bk|fKOlc<51H^p?=!=m*O7cGQVA$x> z6`QioA=t}h;KLk(A!&Aj8IfQlP@p>un5VG`kUNZ#W*p|aKY0X?g22}5&M`pYYxgmv zd>>?k8gIE`oD+dzbg7HcJvd&ELq{dIvX1H#y1MD8(xMsF zt>^}4W_(`WetTkG(x@@OF;y?R#+2A2MA+29dhnu zm@&l!-eXJ;MW||Fvt<_s5BHd#pm6>OfNSrkEIiJiSmZl@X3<6wZZ&bK#;qoa@LvED zdD3&BPgYwZxKG6Rd=42d2xevWMgoxq^>~UCyX6ZAoG$?w@xP)BS8}HP4Va;u|A`wq zJ4Qxxs+Z_j)cTs>Li8f~cVN7z`~zkGF?K<9&|zzK3Lj&Gc81;dPn5Yft~XUMEg#~M z4>uANrrT{SI`cBXT7L3SGGp zhy?5LBrf%<0GK0q>UVPl5BrD((kK|kjdd`?PSrYN(9m5A%=GcNZH&?>zsi9ePzL-ls)D^YqSYywIdF zpU(}WC*DSoq0i=t^)4gm;JYqDR`s{+8AR#$OUt~xjw!GLjG2>KQT&~Ei97~ zSSus*G=cGK2w&N0J4W2W`+Fv^;j<4$+UYL@zGnjabNwcP57PuTZuy-eR_k)h54UhB zfLqsad}5U5`Rz8ANl9$n@|z?sriB<`+V=Y938%4-zTz-(# zB+M>f*LAWdo@Lgf%|V*e$}bp zcLtCVatxmy8fmBh0N^bH0eJ8s62(~-voK;KBfc=IWu*HMu)3V$!iXz}Sr{o{snn7#S|EhB)pj|50uPn(-B z#~krQhvAyne3hd0K=neH(Bl2H$-5z%cZb5p{_?H?GG`P39zzw5CSwc$@{XLAnP|Xi zqzq4)C`{fRMuyUE-jVUsc}F*pcjH(f?+!<)d4~nREAJ>o-myr^JFOYdyCYcNb(Xj@ zfsBx2`1H_7JN*-Zw;Tx&#+;5sCjrxC_9!6k1z9a4?~Vqm%PHm^W~|9ON|<*nJM(eV zZ0-?^OWyD?U^~aMc8stq?^GT#kqtQ-E$uP#ZZh=TyxX5vAUuUi|8w5eG4GB;Rpj0A zC>&hCnRioJc$^bihi3qXty5TdoF*3e z&P*0<6u}nK4Yo*xJ5VEG>mb@X75uoZS*&I|vsrkY(^%v?r?Y6I2)57_*dnoqt%GUn z4DjQ&&SW*b2V;TvU@Y(+j71wou!XL`7KuGl{|IopV`uoG6QYXC8|- zieL*}fh`io)_|7tfVVdTBxc|wk8X}9-$x{bSoAqR-|>hHMf-NF1$Be|u|9Kc(wnbz z;5qmd;1emXzaK?C77wX^iQrgV!s@pJ*e$K7>zof@#|)fL#sx`?3(2?$024Z)VrKEh zs>dou*6EJ{Z)pPvBhHbi1C0083sAcE)$|tA_!1VF#_cF|8Y7mN#+~#kMj@s#i_UyJ z&X_r)HDT;hu$@H!afgUIi^&MN{A8CdgP>&zKp5eQ=&gR@ZfUIEmZ)V+5vb%KzjQ&)-J-0zH!Lc z-63C>Lmyxi?U*`*Tf2Qa6m^(;>fc=o;e?3+ETcA!T)Q=-Pca6vz$49qQ5LP@ua*fi8!hM8>-j3hc+BfN^NK zafpR;opFeGC~f>R5!#Bnibw)s3aw1Ffg2oRbp19<^nA{r_Aw5MIHWxEbvB z95n^=d>TG@yxi||6w)-OnZqz3t_QXzg zR&P~gDJ)QXOT3;wJNOX^U&Qi;C7g}a}OCI$MD$$BklCx3%un% z03PIuMDGWd$9et$5G;m#pjXQ|K4&dh39o$cY9zhl6Fo(IQexSeKRdn{8lQaO2f=n8 zV)YmyZy@|kJ(Y*d@Pr%-azb6D-eE!N_*xaT97C3`KfzXgfpk*QPf5* zK8C`1900kvj)liTb>`xeEZQhSE@CSHxkw`XG(f)rEzh86f0lSxUUJV0+dAf4n7Kag zbuP@KkJoxGtg9aPkY*yEF$T!z=U}s2KKDR(>M=CP=k<^|zXGsh2L76i=K;89K*Hqa z2CBTBhLH%bV#fWJ09)Gr@ZkUpUVvC%uhIWb|8D?WHj>v)Nw@)>4UYn7{u5H4djt{Z zB?!>O%P4dkLSN=PuaK+lcI^^;i7L8Fz#7~o$nd$l1aykK1U;33T>{qLbC+O`EiMKF zm*Q7hAnRX4sh8q0@JT*AfI*2-h)Xexq#2<#<9F1XS>FvAapw&(LXP1xZbsVae-n7i zTL9rkG!cCpm|lwC0n*=Giq$eM#lHos%PC%p$Es7eA_MFgg`C4IJM+(p&k5s|H~c%W zoh>vFBTUi z2RD8DUAr;Sb6TS2oxJWBV3P5jJSHH|mSD2-)jXy-Ud>a4`EnRSVTir<3w(mrMKGa| z>#t#>wky}UUwVeSS%9_9&v&8Np^mXIdjqcmvtw@qHb;;|ypZg3W0Yo*HCtF9YhFjG zSu-vvYbZq4ut>@ptr^c6%o;Su<}sdt&dWqYPBQ-umAGQG}eq`h=VzVUB<$t&d*8g&NJp z9V71inP|u{e7b3*o&L{&xBLZwr%xl%&w=UE^92z1VO}jGFTMn;%PHo?L^{Q5F(u3k zmYw;n@pZ?z*02_KDSdA2a(FhqM@#(4!d*K(wZ-|?XeTGc{Z>h$|*5a+Lg;bXf@p%?JM1cP`e zJQ=d+beKTz$dBT!8II)TcyXr8aGHpZ}?9Ae_ybcz;v}?-7W0 zC-V68EGvw2alz&aoa+Lf3tX3^gbI3$ z^HhU8BDmo}u73>!U27lT8J&;j>oJFPWc~qZ6yxOYA839K5yuHVpI_!V{{$Zc$D;Wd zFv59g$@!MtmJm@qH2{4S(XMVj8w$+}0iyX3;RM?C!0njYz6`eG?0XXI%ahm}6KpK| zUD`D08o3JWZ~<()^wp&MG6A(gzILRyEEaqPpfiP$>-1Oi%K04KY^NkV1u5M8E=-$y z)bGJVO%`FCGz>Oxg{Y;7J^VLCG3{qeJ02q^S`1mV2LQg_6UM2;_zn=`YzLelSzy-x z9c8YCd43!kln>V+-gb<_G`o#OXa0itLaQ}ltdy<(hxM^`pm2U59x|*LiD)mV6oilG zG%N?ohe2dQ{JBdFrSeT^!UYdpI6+;gP!}k~g2kdUzrDK)o^Wrv&}m#?;p{dpC@V&S zUz0LZz78GwhGN4n1K&j}5@nvfX= z%v0lt`lG?c%&dgBvV9`&LjK?Fg{x?7&+E}un7G&BgH>^_dtL5VEftO$y#|snM%y3l1B@4vFiLmhkkxP@>B|D+(hsFxNT%wT_0ut<5Gln%Zy79o zAx04_6#r)g3b`ujuG;f zQy=qH9&)rh8WKF;TbS;$U2i$}635?acE6Vxh2R~IPsM)5?p5&d{DrYg#cXiz2M$Hw z(?RZIz#4SNg}NB93>N5f5Ty>-N!sU_z7^+F0u_=*i`BYD%e0_@Z%5#pO9Nc$(x75q z7ICpn+uj2=Wk_vpP}|Azh7W{9w&!=}2f_!D&D`ZV8lF_R?iT4$wa57c<}3S*2QBnD z6Rjon8Bb69?=yALXFP>ypR-VEpQpw9ObPnTBB{@;mguv#km&O`?KAF)_tj@@P`_u; zz0V2$|Ip``&}Tfxq0f0}&F%B480UO8PLKL$8zNSNRYt!BP=F&-vt1SCcAvW@6=)7& zDPVzA2%*%lOxLg+hwnjxgRrnj3Ja^n!y@rfR$FQUJvIwlh@+g~cP&uyF~0Vu_!#44 zVj+y;Ccxt;0!C4sp$HhoafTvb^oTQD#689~pygm>Q~NWRn~A%M-tLV@zXam(w$ww> zywAcq&)+M^@kED$$49eVlz1nbM1>Cl!FzVxo|B(s%e|FJwD+Dqv%>&xVt9z|9Tc&3 z0A|m1CouOtk}hS@;jpI%HgUZ-aZm)ktcf#R#O-C*lOpezJaQt|iSe2ve}?I9>-e$t zZ=rL@g+D=J$36w*{X#H00&VJ@0GITnI{{iiT8xC4Y4JypnieNBEk4AJ0c=r-%wUmp zC!jT9Oz#8^Wqq8KM&UFN4>`(;k#O$>X29e=&s3=;JoSxY#kdoE>N`bq6RQm+eClJF zv@{zR+%r|9SvyA9wHu)Fka0-6hU;+B(!7^Au{3vk&cj@hp7>NC8v9zOI39Rv#+(gc z-QV|k_#wel3?L`k{>OtBFdk#r8HBcm>C}rN;n=Ylg7ii;Eu;Q){YT&jfcuZ#v$!m_wm?E{C^q` zui!>P@a%~3C`0(VjmO3HxG!c-mqHT5LyMWC1^k{C9~66m;|d2P(1c$2aP((i^N1~B z+{Uxh2w4e89k)|;+-^dK;LJ6I7&jJ4S5^Kbr;JD3JCvd@o6BKgjSa#-L7Qd-BUUu)L+Zv7%NhEhwN-X3?8GZmR%jm7CBjE@9U5|*&&Opq z{zRQ%cfDXypF{CDsiPWr+<+Z~>h7k_{R&@sOje7zs_(=rm%uf|xwT19m)5)e!P@I_t%KV4j|?KHxDK zK2XR!WvTZg<^+Oq!hP3&G7aFgH40}2@sOh|8)s*LOlrrDkr74s{OD-N*bF&jl61#MBh*IU zJM+^x?@fw@FfhZG{pZIYw-;lBDrC4k#I6aL2Pw9w@Vy6Zl0gWc1wZtQrq33Xg_{yRnw!Ca(kfK3@khWG0JdAl}(eMwi`3roF`R!&Df?`2N&b;MXEi-o>Yw z%ZD9mddb3>M?B;xD@MY-RGq^-aNwlAbzcAk8~r?8 zW4!P==dohk3qFmXOE0+5PYIvKStgx8GA{Vc38ZG$juCcU6I33GhfV#`alkd91$yo^ zVSieIa4VJYaGJc&|1x6oCO%>0!ruAhlZ%l%*n3Al%|s8o?l-uqhf%Hm9so}IQy|qW z(&xBnJEp74TntIH5wzL5JfHn?MHfM|U_KbSPuL8q(|-X-_k}hk1)=bTD4dG`P>n?x zJ_VhaVXz3dk>MByiFD7|eLXJaV zAY3y`D8vlYy(7&#^Adug!Q8l4u&r=_s)TvG(Q=eth1T{{$*PW|qAV!$Bz0vFu zsvJj@C<&R72$}eYOw>ar);PXI741Lneh&m8{IX!Dp2I}d|H(pPV<9o>8ZQ0-bw>F_l3gwCGn7>tQd(sQ+$t8i^d6G z_h@rnHPJRH&MCt{a_dI}{JTMlEDw95SH{nP`QK*E-Tzc9T;4 z|6(DL;@#Hd-pHH2`0P8!J(3C8(VF9DW9;^q(4YfJ_mZqIj;22%yG7X9KVf0 z!_dQ`$?+B)`pb0aDMXI5NXl`o8PDKMaaPA-;a+DQ2i}qt=B{p*Q%s;h+{Oe%F zxD(93R&@d|QILNWGXGd6<)87w&A(MNfRleHoI8n!9A(8w>^J|+b=^4O>mCW_pGJb$ zb@rdhx6e4Z$+w!V#t6Hv>uNX@kBYjbVeU#W{d(N~v=T{_yiPucko*RpeP7qTG6Xqv zjONfh#DCv8G_Rf~CF-vRKzPrEUUCj8-IYVlmt$%A=|dT82#K_Y0l*lZ15y{u^K}gG zLMwKRLL?H4q(su1@kF|d_3ao7=WgO5M_I8b3?^O9^>V)$3h~Q1<#vo!_Md3l5)$nm z8jd^3M4O+KXcRKhSSBT!@zPDSduhOqv2gAq9&(fwBk^An%{bxf9w{c8Mv95X_%PA- z87DW54k;R@DzekKnO&LqL zP3^h@QtDm-AEjdKW=#y@i7Vh9Tgh}Dx%(LPkrp?C)ZD#5(_(_=E``Wl7D-v5HRE@9 zkF!30Mg@hlj(EsXR*XdS6aYQMks*aGcjD$F?L%z-V^*lN7o-Ke6WQ~uuX*;-cJL1H z37U<&$fUVQUA$KfQOLYunRMFM_~@SYeUb)ZggmLCS4WkH9F1ql1U}?wkVB4!Fl2h8 zaX~UYjPST8HU6in`#Bf<2*UdmJ|obFy`ND$QiEsQ$(mzNqG7CMUUn8AmVD;T#3zyy znO?sQNc|l!RbNiI9eaY~8e0b#djlY`Fzhk@G>q|oim^d(9|x)9f3XQJjM*^?G5#!) z#$Rj3$Ny>8w__}vXNZR!WyMJ7s!+hgxsm9zp!Fj791wR4R4rj`TF;7cC%87XsS}mz z1ch9iSa#;)e1_RtGG2JYzXIF&H4WhCFY)JzhvF&-3VW^243# z{swC1xo#t{csz+GLaEQk`m|)eePa6I>mE#IstM*aG-`s$Ox=Vg{ZckqwIR;?Psd_vq3K5#za3Ewuj5wA< z7A6j_A`b3ec@l@$WIY9^mavSPdRko%V&eh&ARSx1`P-jX*G7Nxm`+6WCgZd3YqCfF z4H-^D;hOv*TG;o!-wE~aVQlNCKoujr4SII$4}h^h10?459-~To7}Zyps92$X4^l_9 zT_b9q6)420vPc?Ltr;KHS6Lrl4nX0&Mm*#wD@NkKjH(*KsJ_m6aUVFU3)Ke;9kOE- za#UF+jjD0N9aYQEwugE+o&z#`#9LHJVGG>3iptojAI>+S&>FYxP|tP%HuYuqAw z!CN>=xWKVYI+bc%@R?JoZ)tmkUAJ&555=RRercF-)%^<1yL*89(@GrnP0knY;b8(M z<%`JZ$w!Q~_*{j*bbRL54H!6J$iN|khLYpce}7;d7KTbp*m5M(&9%TMw>Hl?_Y6D^ z;or(wC~|KKc*jkarYp_AD^WS_xbb|Zod>$D2C~s}qo-0Ce^`R76Uy#POYH^X-_{U* zx0J18=a&1A`Yh85#^b;T;)9^@_w(gm@X);Uz=wK>FZaI%S3a#zogw%%;6oYQ#NQIU z3+10*?(R9P+Ao7k2%l1TTaUY{^5mpyN>A#j^xd-`| z_MnB!O75!i%a-t!WqvsxcKq_F!fSdG-&sQb1BF+X1?An6SrvY{r-*n@#pn6X=;fEm zzO;0|bgH!?#aC3&{%Ha7?<=5%^_6$@@ypXHy{+JmK0ztzNo&We&H)wF8P)5~8o%sP zJ7cx=gM8$S@Li6&M+K;JgpaVJ@8hT&D<}Vag%O3*ipY7Tko~&fM>wv4nvUXcY3r94 ze3s^yX%X@lfpZUA;=FB)+_iEw-ny*S{+oh~MSy=sl|S=<_-JzrA2%MW!68_>HO)>cjXfMU*n-)85p%ri!(G zudzB>`%<8AxI(LzQlH{Od(iSMwf03h`A@w^}!9Na^6!;IXHfq=_5P}cu<qj3 z?@J@pIfsKqb8z1}qKg`jJJ}JKbznkviOT%Etpzm{uZ2cn<`+OaTL$)gEbU0l*b=3V zEiqK7Qj>}wOB;b-k}gwfuu}Q>^$*rN4U`|Jp$}5ZQCT5=>2MW%8U>0o>`;}Js;mcQ zR6AO4?L(WTICDfRH9kWfDHdcefohZrIbLN8`cl?grYW^dscJb>sXs(0>noQi^-K+^ zTFh74{IQ7CU|9~E*b@WwJ!bR@m8ENY2ZCCN_O36W<}kTcWtr;dF!`k{gq1n9bE-!m zPODWmsImZuWyZ-1;z7MdusZ@L(>5v9iIrsp_K@FD3QHWQ6XZRmreQ@JAyef8rFLU+ z86l_0PNn{$W7H(Ol*&`;EcsNaACx*<{;U+gb2~yVlFyZ@RH{wBRBEnLOXMr@RAfs( zt+!PEuCh9%u9AN$wOBQ8kndFU6qVf~ohqB7)GrY+_HU(XJ|JGDE>+os;#X>&%AS%` zi|yT{vS%bsWvi5WPBN9cTqE(a%n-rFKcV$^y91jF7)crONm(yNr;prADcGwPIO)mAXwwEY+%2>JuL|Gpz%Z z`lEW5XAQP&jQjUEhdDwDtpk%<=xL2q&5_!pN^6{IX5xx8LaMFtD&s!^GeY`Ulai=` z)-g)WP}xvxN)k23Izg!xl})xzQtEc4PO(l_>UE{gv6__nM5#7wmQw#w>T>IJrN%3D zoi#_Pr~_Elm4B4NPgNRL z=}?v4ru=u6e`4-ymL-45BV4YqXAbe_ayJxOa#;Q*!1q+=^bq-t3J*}7{`oJ1(@&*Y z3Z2j^&^Hzas=3I zuUW^me_loo{j5+wD_jq2)aF9SnZ&nLe_H65w*W24_xu&GBtYqdfqw!1eEnYscEirCrI>bI zwHSe)YQ-;o5J|u4`( zzARi;d+{E2uD4ltqyNTKOGc)g1UNKxHQ>fn^0x;GbJO;;d;`7%=a)3~@Up(O!GxcW zz`l{j{oDa--Tkb^iSW3eSEBA^eKT-{8(jSv>eA*xa%I~4!2~y!Bk(RJL88)fumuJI_+X2N-;y#TQXumSOKzjP~G86Vgo;~ef3u`kp!fyu{hu1XD z@41nAGM$kj|15=fDl8CkN<1qe9UOQ+h0!<xg|0KZc1GMl%%2MFFQ$GW~JxES& z+Oy#F)-fvaY*d>CMFsM_oa;;2?1?_URZ|XV`W4pM@qp%lCuKfnR%vP#dU~+N@YUe* zkR_h9WjNz_WLkgl?^L`%h?jWgfj>Af2-f0#=PZ7-{Nygr@3(0)5-{`Y4xIltGdHgP z1ai2jYust`j+}(GpO&&OrWdSb$!WTtkI_|koZ@!@XKWo`0e-RmT)?L-!XJEh0Ja29 z_ZP_JDcb;VNG0D1GFD5m_R{is9!qG!k~UaNc*Q7S|b5tHpm}9@}Dzr=}8*kHw*TtS9lhTuBz&%$7*tGU#{c zhGf+viF$L33%P-^77&J2jQ~DM79z z@tkL5E=pO6l`3wBqnvE#Jhd~ye;IPGx6bH$6y|9*-WD`|5}I{sU%u^WbEw)J=}*tM zWJpROU{)$~`-#-Sz~eT}T1U%ftxNd4e{W~(x7TK!G*_#6x%;<}_di?U>Kcz2*VTVn z>{pJiPN5X`Ykdm)^`*vtyBjgH-kQwhdK-^F*VVW+uBax*uJFH9V96%|uA=dABxkK= zORla1XQh!7kN=v2gw5o<<;rPncDh${M)*{{%Eap?=M~q_xIbJ!_gD86UH1|em{%LK zjxNWowJb^b1AZtC|8}TLtt@&6t7DT(EiWGipU!ltr%Mk7HP28*H&>;j&6|~aN&ZmN zSmcxJ3c=q?@BNdLRVia7AXm5)t)$4k zE=4OT@>f$YrGH@^sBc|rSnWI6DbnduRhh$3&tGZU>nu1FRHmWS>lCR|%Cwg*Yh8-% zWk^XC>%AmwFGGH>)RL6LdewpY*rl$Eypx?Fe=!tnj!MBTK6ay6kCDid!(ECtv!&go zXfs>>s?-wH43#phkg^}UWZ9sy@w~&B-B`92Kjv1X)S{HT%d$aLxUv^uGgtb$ zvUhrAgBtA03Np7!o(ywkrJ32F#<;SY^n#yPI+Mf9#f=DV^hDz{>PVu4FtSD6j!a+exfu~mxX7cMmk&zVKIF0g-} zrZ(d@X^Z79Bh$DP%R{c_Ddt@Mr$WOZ^b@Mr%U}kKO0n_j~SJxt7a9IN|sA)tU4Q1 zk)gD8ZjNy;;ytM!J-@`ktbGGR{!ihlm{Q%Kn*FhfVpZF4dWae=SaCCTZ5n*A63E^1V2oiw`C%Ud64Wf zRLTpHXNwM&zq!==k>^42-#oymp!FAv>ZRULvMc@dqM@?5i+aCkn0(+;=cj*FG+e6i zdK2~J{B$WEfuAri)b;5(#Uo|COU+5IC_Yra>!Rw4M@ge@$}f@JjIqU|*Wq7C&F zs3T;pON}plx_E;8S*hhRtNd4>zT=Bf>@{YT{;GJQ+{{-Epr#gWDn3&9v#YdOlRnlv zN#-hL*3U`O>QY=WCrO)2aUGl_iw%W%zFs^@R=cv-%ELH;^?*zLp?pTsF|y93JXu?D zYG%DlWoKoBdeNnJhqvOi!y7J@(Kj2^doFb~*7+&;X({@-B<0q^Y*2r4sg+o5j+4K+ z)O}cOj+5_P>Nl82#|zR)>ute2I$qM1x>3H3{I2)}Im5^_BTta?T+OGeK7i~Zm)cnM zF{n$EG^fh4E~?X-D%)Mn&r9m$MEO*y#VP+R>9kIiuUy&PSysVGl2S)s7NLF2$90hAed{uCz1cI+xe_uRX{_RpfR{sdfbD$ZOSF^%$nxwhZ`&l!JPLq&J zZAN>iONmQ;fc8$8YL_|#xpao~cc}}IOJ~SIF7;Khq?{=uT}paPEjm-ixl}3Y&5@&A zYB1`}k*O|qH|m`wO)m9Z@zkQTWR9Wa;moj{E$6vZSq-U+T#AZ)T4b?Ht&N01%{`b_7Rr0r6Ks*CO6^R2x?iszEwbED zR#cIQOR@D<8L01FP3x_4 zq*A8!Ryod4+Ip)@cV%q7Rc5;~w%#iDxD;D&m4}rwk!Y2tm0E<81O1`-$1a&q&KJB? z>GEv8G`JK!n=jr&C^MeTmkOnJrq1uT6|%mDQqShgKvzc3=1aXRd!=${kNLuX=!$)( zXY*x|QpU6SvP`K((rEoVWxl+hB)dR%xb@aXEV)3|@`xC${GqT3)I&-cD;LVsN*OB` ziiey3dX2*qi=->H)1sA&q`iSMW91^bR4HTSVp*otA}O)P2QQZQlVma3p_H)_lTD)q zf5u8oUQ)_fX_L2=qLqrYHt9Krn#+rBuNvLMkv>WpO-BYQwMag;w&Xc-WRh%wOjXLX zw?KxEO|-W_Mk-~jTq1`nwMYh7XQf{vD_rV*``Pq%+2K-SQ=UyJeDK-yMY2&T|ODWUBV)?+;toD~?E|xEnWS7ZzN*O;dlW&el_<5OptCX>_ zM8De1)`Ql>j3qK*0yT~7a+#u(v2wYzADOUnxm>E0(Y!*IDYZzxv}a^qA@3_?yk081 zk~Ejf7p`WDlx8lKo|6*oT`5RJ{F(Nylt*yjK0caP%415I_O6okN-dIaWPI={2^>RB zBU>ifN*OE5uNbB|r(x{ZNa*d=Pm#}h;WGZE> z{6Y$qS|q=*ug(62^jFIC{aP8CqvT|C&=Jj&BQpU;(x!09(Hm;DVCnq#l z$Vo~W%^PI4E2HKOGI2&i^9Grul+nCVrn)j}-Y5g1<#_ zw)I$GjSN$2NecULmyC8P_Tes>;8KqwW_QbEmwE;qvl#!gKr1Md$d;WR?28T zD37=@YCb4eG$%A4lq;1onh(heS4Pc;WOHjm^C5XtDWmzYeBjEc`LNVokkEWs4pPc! zJ|YdSjGB+g%@-v!ACX&?GMbOd8dpZmN97wFosIYCQTbLWqxqPKV`S8POkP=#(0oi@ zQ_5&QE?Zm~H6NGn+7p_O1GVI%Fi(qh6!HAm4dp!Ky}p!uy!ixd!$Gh(KB$nIBk=_3 z(SJ=FKS&EsTzW(=N^iuIXqmA{tvGt%JTLnHpin*@O3W9E%?^ z$v2iC#pqagvy^~Klw;so&_^#IwPh#9!XuNEv%g;d9R5=6(f%||WcDZhIs6BD)7y(Q z_kJv4e;pl#et>2iJuc@Qjg^5f=$IP(0qnF`^0{W(Pvh$}pOZC>{@(B*wV$k+jGNYz zIeX(q=gFiN8!;krKaKw0aDNedRQ1~;v^{%B5quF!Cjt?k{`|CN&>1956@ zAkN1P#2))V?C%c5E^8(}m*InxlUSHaaL-=~UMYB`;FW?`3SJp@pUc22!>)H3cxB*K z$cy-$_!qGu|01rnFJj;DMeG5-2&*q*`{YHb!{=aphT<~}pF{8&j?V~uM&mOEpGJJf z;&T{2K9lfC74GEc0Q%rN@e05oPVL=Xg|mMOM=2by@ECRE$YK4`{LT+R=VOV0H;~w?N7rqtz+yywM(p-cC6=P)_rm+ z?&{{)yti8^JioM3&o2Sut@KLa`K2{_erc`Rsj#@KG{}B3f4H?yKCbx=@XoAG>pc6* zu-87%zB4P^Uay*)WN?qczzlz%(jJ*;Z^93%&9FDC{$|w#4$aM2 zwJ!$biJi@=zeRPnsm(3We8dI^np^a=%of$zrZ%^!%}-SS3)TMw`a5iJp#O=UVEIJ# zzfk=zRR0^*->v%JKtJRG2m0Tr{x_<>TlIIV{zdky`SqT3YXQFF64HDqvDn{`#nUO^ zpl-!AOo z2OQ|vspfFi9Il#;syR_L8=+b11qYgqsyR_LC#vRF=nVC4RnAs$#(Jk{-6^Ow+y;(X zQ!Jjfn4)#3tIg@EKV2<6Dqj@b;XThfw(s-aIaW#0i@>J=A7rl$zwW)r`nK$Oz#DqM z1I{Hl=e7!PCp2G8`>XdpJFoBu@1ynw1wP*#D_E4~dsN2NX8V}uMZQ(Y`Ch)+>d#z@ zC)Va#Jh3*{;z_oPWHI#TT0Gk}*W$iutHsk7trkyWv|4;lXhYp;R;$JH7_Anc6?ZR7i`+J6uxR7km*Z#NAaB!Ev-vg4-2DGHfg(? zb&NLY2!eytBbzL~>E5IxxLL<;vyR;sdg8G{PX(OfzQ)N+bo{A+h%bu>l;{}X6@FxUfa~=$sDW@ zs?W1_o2?!dqf$3pvA*~xxwS{>HggYn%}J^0Ha$De@abE~<~hBsu=7f4 zm0GKU{v$T0&mrK@ zlUlXBO&G&ko6)PYdBUv@E5!Ij_Cfbbr6pdajJiIbEMWa`1pPE`5+$N0PHevLp zYm3uibB7JQW_@tFdOKbHoUPK?HqQjkRZgpN=EC#!;P6CWs|$IOaIX41SACwV-p*Ca zU#Pcp)!SC}wiVuDmruQ2tllnDZ(%bqIc=GGI~U$&qs7j5rNALwuhR7@-K5e@h+Ad)X60;A&Su2z+O*Bk$JIySW{ut!7xJ{^7MuH# z+n_(q`a~o1g+^vG;<*ymczxNe@%%!gv>7@1Wcn7HXDqka+`arp>%ub5KyF56;yP&a zEaeuPyP2D9o=w_p^IYW?n>(7DZJsIGZ1are7Mr`8n{A$@+-&o_?{X@Ff!>d@j!nqdTZ;jHczt_VEcs zt@=>sVV=~&@+uEFHP2?$dYC7*>SvvYc~a+Lo(xz0;U1ptY*gt)m&FQ~sm@~bXjs-_?aN~A3)hy5!Qm(@Rtv**6c+0!Ec5UL=`s)Z zUstGyE7ij_>fvH|xG`&udbk*)@L|?)9fjdK3Tr()LHe2fS<%;7(eOQM$ z=Vh-~uhuGOJ-j+Jdy|XvH0gTva6P=*n6(~Wm3k+tSL+dn55eJC({&!6N?qsSUhQV} zZM}!5PuF_5&%4Ft@FeOn_AR|`%U+8+^G9Hr=TWzLcqhN!!&9l-JiND`sGd($&p+{G z*Vf4=p3h6($^P2jP&gzwQ?GZkt%YTyQogsV3%<&>JjH2}^9=a@oSD{-=~+2nXk@<8 z$ZS<_ztPCtVvUK6%*pY*pWc|WTXno%&0#OIcdNF$742G*?$sIOWv2DT74Vjv&-Ch< z?&UesbT6-QpW(VmO`cz!Y3=UwXif!s`buiC=Z^BHpu_vFZ*XtksT zOxL!iYad&+MRlFRpYvN4i#@KBn6|O*-4=iTBwy-zYUACezR^ z&zFw3D{DW?TY*;IPg!Ym=C07I*b19xN+&`yJ!=KpnwPr*o-YIBDbp1;&ylXMdA@X| z%{jZ$=A2!Fr<~WUO*T)zZ?gGT=otI5g67Z~n`cVDCYx6M28g{ zZq1F|Hcy=HhRp>TyV2{LaV=op)?(FK2FSdftvNYYbF!9eZ^2y6$y%({FBQ~!c~a{%^L`T~xTI=~4s3UIRWrvZ*qJ7e%#;NBi%a5kW4)lB8gQqC-%B&b@b zoJGpPTMYSKRfoi&ze@S5mA@MNW2-kP{{`jmP<*H2Vo~3+=yQd_2IY)Wyh-tyinlAi z(4s#JmD8b|RmxeVocpXra$EHa%6UOK8!g7+Rq!9K-l_bZ%C~IVv23=RYA=!(swjNUiHm|>Y?K03M*Vlex>3K3P-t+ z{4t7;_b!sdYnl|F=|W0pDc-Jdp$o}hqEOJTdhMG99d+^BGu!q5DR+4#iiwkkZwP zzu-c0b}GIzKzx_tlA=*^A^9G~%N16*ko*S4N4b!kCdFsEkeqhK7rKy~4#iiwkenA3 ze<6jqq+Tx*drGR#MBrEVELXfiVG}s7_iR$UBb9z`P`E>(1j#8^*r2dUVY|W&3U?TO z8a3M$b|~DSaEC%kr?e?!m!y_7WqeLe;G;|074HBZE9p>t1MsIyHYmOW_&-Z_C|;hq zOAab6&t%;O;4P&MiZ=m&xU@;}cHn<4ZCAVlc;8+fif;fur`HC>cL2Y?*AB%c3;Mkz zi#E%F4=O8Hd;{=#Wg8UVkwwoXTjQXxNnyLf4uu;O?ocQ>s;RI+VUxmkg&hhvC@jyV zW`luw9G#{-a@rMkDBPfMhe8Qa+N7{uVTZyE3U?@!d~ID}gTf|-?Fu^-Zcw;Gp%kdT z!Uly+3fmQSDBNH;MO@oE6iPAia)k{Fn-sPy>`=HtVR;W~HYjXT*siccq4ZQc3fmQS zDBPfMhe9b)3njbouCSqmBh{gt9pD7YcPOW!lsfIDyYO9;_EPHXP)>QTUGiXgc`xPk z(zeQWiCs}%Mot6pX%!8MHvwN)(WH1g@QmK=igy4%y?2MvDW`>w@?G+L?~Za>kP7v! zVwZ#}8!D93TRFXV$(fZ6y~*iN&JJ*%uiT-WoxK_JoxM3XtxDonCGiTyD->_2q@7X9 z8D%(C z=Yq0ATP*S5_cy%wc99Qn2m|F?Hj6g~`ZjysAb0Nzl3 zG~oKu;{e-wkUyx9aAYl|;Y>>HLQ0S5MgENu@+TIa1bBZL;k&&E@5mx-ESdqhIy?*T z)gp2psU$qMg7DJtnSk>$6S(1=UO>*b`Gg--&F#`OHqYom{(NoA==+Ljr@ESOit_ta zw*t4*>0z?X*&d42jEft*6e}*M*T7T znHu3M)VHfk>E}HfTLT^VX>!NLTW}vf9^{UVJW2&jMc&wW@0`s{+Q>2frb}-?{=4P;MVBf-oZx`OLgrNf?*oa2x77Hj43LM_ z!21E>90w#8eqW^z@cxik_})ri;0Hir+i7V>=r@J9U|nX!O2-hht+JQ5NMZ@b3; zKMFI#!mk^T1%3=>hJ|lFi~~LyGsMET8O8%Y9#4E0ev@Sa@M)-R$#g(lPDX8fmmbi@ z8UAB{Hv!uCjhV^7=K$g)0>1TNOFL@YvJl@vuw@Z!;Cs1%Hs1B0415WoEtkWFC0792 zvJ@x%Ex8iVmaFh=XyFa=EZ|q;L_WTw3uxo5`We8l1GI4#aSres0d1TiJRA7UfHu$f z0bdDd<9p^&;I{+XatGeeTX+&a5BO?4U0SjR(8lSx^MT(DXv;k~(aiI07XZHx@Ar5v z?IPe0;F*-?$zs4C#3==y19N~stiPu72%wF#Sqs5`4A91zszt!p0ow8edW)ikYzuc(rT?9+oeFhvl!pBlzy?2tdDmDCR^a@cxnw ze4z9KK2XYm50)_S!O{ko(flrVvz$eIiz$eP@ zfltIgl5!|!*bd-F%E!Pb$)~_4$)AB&U?mxWxpfjU|9WKL6Y?wkTGEHILw4a;jC}uJ zd*2@%_i^2~-|ro8hXZf`4x~hdAa#7#O;}s9GqF2yCW@*yawEqYrIV_*+PaNqtg$_=rdDG$O=@?n#8T`= z>UgGB-OuOk?)Uq>JCLS0^&jaJn7!S7`}XbIw{PFR-TQv`oSU5e&R3n+@tx=YaBg;Q zbIb1M-Dliyy5Dh|BJGjU$ll2D$bFF~B2Pu$jC?^x-<@%NzTaL6m+44Ir-)Xrnu|Dz3i4%!x z;^D-X6W>U@pJ;0BZ5?gBr}aYX!>!M^eyjEE)|R%lZNJhs+jgPt@wQL5{rk4RYunU5 z*nXnD*nYnK58A)j{#tt^*_!-NvXp#0`PpQoW1!<~N4evlbo_D0pLYCZM{DPf&V8L1 zJD=+OH=VC`uJ8JA*YU3Vx-NCCO%12Ebnoc?Sof3N|GE3tRbO1ywfgbvK6_nsiO*1l z|9FoU*8}@^;rhq$tewIN5d1A&pS_8>)mSA~VZG3Qe}gC66lMjVQcB{T&ZN2#Aq@}X zCWM<2K7_CV;T8mX9v?>7h;S>yZ3wp`Y(m(K(2KAIp%0-SVE|z(!XUyngzX4B5OyN$ zLbwCrBM3tXA4M1jce}AN-H9*)Z)OiT83h+(;9wlB??tP3A?!n#K)4&>9<;t6El;Aw z189wZQI)-!(tuxevn%nTo7v;2x(!d-@eaAQ635lMHxVzc9ud5_`o>Mfi>tr5iFgUT z0nYM-stEpi^%Y23skDiEO?;<`_n3Ih#CuJ=&%}3|c)y7cnD~&1kC=Gc#K%m0+{C|P z;*%!+hbG3`W5U-d6Q7Z|Q=K(&!Nf&VUN!N@OuS^`kDK_{P5c`s{!J4QAvIw7Sp3CO)qob6 z%aK>rYmv3i|BT$~+#22D?2bOKiqYN9qX?IxkEmy(Q_c?%oTe?#=B7uSJ&dUgIAiRgr)%K41L|Y{C z4C2=jztQ$Se&_j~$WZ$`Dv$UR?WM@SZGTv8NTWq zQC~#-^^UiI`vdU!v&hlTht)soeAYpIgzo6;c&F#R&Rx;I zuHDh8u3gbHU2i+TkMOmweDr$={|m5G>TTzN)b1$zdI{-Q5Wby4JKejZw{@Rz_jP~D zeH!6~?pKh1CHhMD!|K0ve+#r+zeF@=Jgr6deug*swK=@6B zuONJ5^*xd9>vl)k*ITapOynHWk05^Gx+j{x6hGlMU4H^kHN6%YLpXN*?kM|q>iQ1& zXq^aM2q}bagjEQu5w1hH9$^i_4G6!4uoj^QVI9JHgc}jk2sa_zjPN0Z4G0?%Zbi5a z;dX>g2%8al5w;-oA@m~*AZ$e#MA(L~9bpH;PJ~?ucOZNOVF&>$GEK{nS1y;zlU}8g zIqg-3x6RD-_o<=biivkIo&n^vSDl$GwOt`7E#k;!<>%R}Ja`_2_(|l*#SQ7Xn0qvH`y;Afsh(MaZ6o!u?@9(67rLDwpQH za&-}GFF>l07syR{)fM6Qp7F}wL}kh==h4dtGP4D5I43ngc)XaKFXfBXqve8b10@6f zkg*;aq*fRiTi!o|R9!Fn1vuwb&y;d9+-j)oRpv{@if6L9(uE=gG%}w@s|GlmsdzPj zY@t*S(c%i%s#G)8g-T7mJQ^xjYd~{h?NdXQOu?(1DwVU|!P&E3wrV&yQ?1UA7V;Ql z0~p?kv0qU&Y^Q4m3aE9Or-qE^1#aa|;Zgk&El3m=Af(^lcOS|oiswuBdq=!;7+*8` z92qHVP-e^^)@gwEUj~i|vm*ZBW#E`XE8_3C3>;HuCH%{PF^4R6e?L?80ukWwshOFP zVyU<|S6Zk{FV1@!3IowU5L60Agp!nkqw~SMBXH1fY#URdF=MH~f(cE~4!^=qrs_-u zF$C_5shD*$JD9hOGRWxvQ?d! z7%deFP+Ohb2d&-bWpZ9wY(Y(#OlZ=Yl-amvAzuKVw0>>@rl7hwTAG{Blm$k-kqeo8 z)nI7;swLuswS__ziT(KsqoLusnVG%$Vx~}7M2+c}p;Z6@S_MY+`o8tP0kwCb zm_>Atr!D`XOumfl#8_U`AyZyN&dPo3igE|EqSrVG3mGj`a)8X)N~t(;x>zcUsRlr# zRs#{U9G0U`Ll$@BOt12KwFjWqumX@R6|2U~2DL{k=M5KDLMWpNMzn%{01CCU>)nA2 zY&;h=)`1uqL5y3qz?jpzIJlxr05!TbUd)zqa6ljq0L{8#a(b-^cU|fQOB=G;LS{j) zbI91?)y!#24Bc4!t5M+hU1CO0Y zRPS-oC~x;i9jO&85TIdxkyiC9ECUskj*0+snF+`DCVo; zVR^a0mD*9;3bL%TLy@7Q(|dP9*tJrk>;P>vVgT0bOQ3rwBwa*}ekz5ri^4F@czDnV zM?FMvz8Bya;>~009rYdmutHUO@A8UpO0#NZ`Kc+ds3ocD##c3T5*Yp}ue7Sj7+~pwqgm0vxS%0* zio`zDJHdp7S2T5~L?`TSOvx}+ohB|f8>-P|Gxb<_Xu)6|_ID?0h$bwwa~RG6RM%DU z?M;E-!vGlSYCW)KIqee?menhw_6usjCXqF)PI4^RD#$Ao3|_8a8wyTCFD7z|>Vb&4 z0*1*XM;FRvtPYczB6f_q=`&c(Su`|Un3>7zDdq!NRnJsI&d*GpDJ>LocF*G(+Hk>& zm5eNwra~>Gu2yX!8#{Ob8f&WBbX_G2#x6%tSxxUNOg%rtlKq)V)$V)uEE|ZWOvtGCnK`p1*F#nr^9o+oGb88c>Znin1>#R0g~U&J z2aEJIb!~DxQ3>*SjILII;XM6HtQ9a-dMV~EIs`q1EZ5Tz$SkSc5`>^!t;6|3zUX0^ z<9Am=NC(UL)AV9PAnvO(^sU1%y-f^w+Yj26Y6yde0;fym#Q>zIwdo6O;PCx3GkdTB z00#y-k!yrm{cS9%(Z$AMqjil1R@)j&>b0m5Bcvydh5j%%79GM-%?0@CjV0qe4H|`y z)mSvCcj=7E>cSxYK@hOD?mke8gQqv0WYpxG?hPH#K{Bvxo}GKwt?!HcPfKzh3xTGYID{rG=k~8G*Fr-Vrmq#-in2Fo=-z%v6P3yWyvk~0 ziJsmNZ`o@s<>7$d`>Uc?<+$fE<(w*uZ!0F<&Q!7berBR_V4+YrSibiRjsvFVGg;60 zR91QDAnnUk&Tu9R9e-X6p&+MCz3CTqdjWPIb@t%6Z~LI$ZYijfNfF)H0lf}so1oYc z>$ci*4HKu_g0Pky$rMj}YHShHKcCeenVK%q0L!@nTum5KeGC&mgy9|<-gJd$3#$Iq z&I0WC3(}DV90t#Mv=93rS5$*cnA=+}%^3*06I#a^@Ndzzlr&niA5trcqk;Gc2J!nnsTxuKlHKrXXoBJByW5O^Ayt#%VH> zJwp(Vn``n=uc~JYg&=ILG()2+{h@dSA_?LgfHFvi{q~{0<<-d64y&r4x(iObe>x`h zyxOdmkdy#dV!E5gfcY(joCj4UcQW?EtZ(Cmi6Cd?1XAa*>+{OgWj$PF_!pUiJ}((1 zRC@tdbIm5j&)!{{)oXzdIokl4z)7}W9NPB4L-E08y4h2~TDYGxJG79Z_iCNj%-645 z((49bovYVS&M^(GZ$c!Tud5#}T96%_F*J&v=4mLD9tx_K9tKH`d9w?rPebzM(gm5a zqKMcc^v}$Q8cHplGSjUrdrgpm6*Yz#ZIBFSb3H6XIw;~Ub#At>IGwMCYc$M^pvDBW zBZDJUVb4sBpp@H5tt$acwq5l=+uf#fRA6qc^uD~1CZ_PUd+p5UU}uhi6Xv6!4VH?W(t?Z!bCZhKfR#c z>YxR7-=9MPSdW*`JmM8H7bR5*$^+Y`?O{-2SvIajP++@lzDW!UYz?-VDJ}*D#<&Z- znxD<{tUM?s=hm<&=IL-R_3b*32ez0XyvOJ?7$`}zN zpI$TOESWCpHC-RIs97HTK}hroQH+5u>hCN}`E~^K2e2j`EYr==CjUUGDj7Bfe?(|A zX5M-|79P&$19w_gn&0IR*ReR}T+x-4~@tl85b9QEC8pBh2O5+2q4?FBbvRXfB z=mMau&p|dYHv!B}`T*jOT?nL)XZ*&@>5QNE4`(cdveoiX6c2ZEUKzV0i6&r>u%tmq z=ko-Q@NBo?OH}w8)tQ-D{f(*`g#m*FFW~G*?eX}9s?yd?77%7b->%Y?H(#_$^D<0j zb%CQ*R!58Zi}bu9oVj_rnnt~SlAOQ+jQrQ;e2ZR&x)_6A)-#f4FM$pz?3P5Cn84DA zbt+rc08cROchqoTtP+F`tU0{zwPNwzc=;!H>sot#ql*n*Bme1h3Pskx#5qas;0}+@_`rnNh0QY)!#3u8FLcW5nbup*w zn{xyqVAE8+@F9Z~)&TV8ykaG8S6b~Bd1Vam`8*a?Xg+tU=>xjnDvH= zNKVX?Rx6XVMy#U5Xc-mP=V)4;ZQ8^nV~^7W!Ox&AEEP)Ie^v1(looK{Dw{kBm1OBb z5xoS?H9Kt~KACLc<2h-q24IFIB!1tT!aVh2>kcwp1h^s`Javj$HoMX z2dsTrn|}pz*4k5GS3tW8o+;UDqi|Wie-6no?_t!T;enZ%to|NUtC5~;T7yj5dKfYd z^+1{ulA=35kI}1U%2jbQ%uLeyBNh@KkDQ+Jzz@s6nk=1{M<48PG9cG+EaJqMf|-civlS*#GlR)Xd#ccn%Kz85ePMpcV+AVTtr>@8MH_mF)oL0{jeD*yrX&R zB6`UG&3J2O5}!HzPviM>K9N3$|2sgtf;X=m{CGB7P_c{*g=!kYkgLd$Qcc5>8b<0S zNdbO>J>o!|Mx9`I?*xZher4fLOY%H0h>gczP@`8QIEQ#1I9ar=TbxDiqEcOy6t-%3 z0)G;aol0%(hZ;^o0+V>>@*H?R3^hD~+Go{q)sHuW7V$nOpSI8A&CL7p+b_qU!~c9M z(2wC2qFs0tAI}saJ%$JKPvJ$#X^@z}gZlS_8T<$rsvifjalBgOK@dAZa2w(Z8XG{( zBCtLDPoe{Cata|2*dnm_dTAc?_MmnNaS?Ucz3uqNW2tCu05y++%6VYi54H~o);wMn zxEozK3l$mxv&;QJ-;SookR3yMj}X{}Q650Wag^YZSCnlBWGhkwV1Fkn?*it4gh8bF zPVERV#!yQ9ok;INsvnSXFtH0U-@e@oDDyi|G6Z%BS z!lUU|K|_rmL4D4;GVszEI<}t`Ehz#T@K6L#1({{UW$SZjot&tyFb%e+nrI8ujptB@ z{4U~cv~$pII7_0z+UTkFGzO8qnj>~c8t=}Y5q$PpweLnP`>(pUfG&HQMUA}3Mcq1L zIHFY|Wjr8)ni*h_0%rzIAo%H^HPIMpyh*IKvhNpAPJG)>T7d=RCoHfjyM$8Gi_HvDkk{H;7<)jud!VDbsGC-2 zIek?GFF%fEAenigMD4Ll(iUjrX0*ls%@}RAIfoRbN{NLnzH@86q&ViJl|j$WVs(DbcQJ6GX%yvRG&yZltC@k=PSPIp}Rybd`fUgSr zsBXHP9M7U$X7~*&w}pPT9)g9MhF#jH)ViZG8q|&)Ae>_y9gZMIY~2=&MFzYQk^?v7 zm-8Dgmg3*{H-DmM;_1i79~s^8@qh8>+kRbP{d1ye$B8%LqiZ#jNlA|IGj*bQbt>cF z+PSoHW2;k3%TDTCG>sR<0O1P%w`B_-VoC8>u11zNI+g~?_TS^8Sr>Qp@1t-76V zw>uJPM)l@y2f;;%Bx6pv7|krNcDiv*1IS7$mUdlKR;I);F&Scc1f0gZRU+oM0BrD= zbh{l~^oJH(R3w>NUYA@)mfJu(&L)|N#_$2|I{muBO^}VRPOW0&PJ&f*vNt;_B3bo9s!Vr!^6vrUhx~ z$L@N;m~(`L&Ma?6-Dtw?Nj9OWqse%u1EkdQwrIjh9YueJ&;z&Gb(@nh4S;lgc%9I(P#TB3rL8nv~J=NNSQ_Mv4#}3m-YlM~-})^!Xr)uJlz?iE*pxuZMJ- z?Jx(nR%Wj53u`pRFw6d|2_v}lXPVwO4LuzT6VsN7XIa4t<4z7SX2jA9A~h>~7739b>b@m~$`1wfBT4@#7K@}# zq<{;#AnyiD^1Etu7mC3+-Qk4_qa*7 z>#z&uR_o9n2rN&wDL1uzG_~~NI%EX%1a5!EOm%wJ_0V{oh$)agkvh?&& zdXVh9!rQwr8L2}Y-yZ|Tj3!4FCLoEKaH0j1O6SDN5KQc!+VOkN#qh#FB$F5q4NssQ z18fHsh&h-9WDz3f$FcX9e(@%b{Q2Npx*T^`~&=uHvk&Z}rB@wQBfX zo7Q$VxdO-QFT;VYnplBrQ?{Wq0_kaE?lY?esI493=C&s6peBu*HP@xi zb;2%#(Ce5ky3d>i=V-H2=d{Jq@$1M#gNXY)DvQ?9RH6Hf60s&X(Y4&(b+|`c`X1GGz}3cNx?xr>v8RMEmbwXM zRFpPA?BN%jB-a_%=F%rr#Ds%dqR(}?Bz3NLIxuA67TPfSwB>B%g$^XchKh}`h`l6P zv7AhF8Y!;7erva6WfDIo6k_A?VO~BgQ zj2StTA||L>sWHE&zYCCLQe&o@gs>LrK+)pW30;zWa*y*A}len88`mX2B2?);PMXvGJ++H3z+|D zgi92PhaK_-IoK%3K?-uv2okYwLxjS{d_me~F;Ii8M&XhmXFPA?XCz_YYV?zAXbEl7 z3@tO3e*F=PMAQVWi^bxpTwo`@447snXL>{k`DDGYsu1q?5Xkkal4B2ZriX~7huSMd z4|9GGbD&LH=wVK?+^1VyW*j(%hW$SQP_u8)mi`qW(laJD$W*82Xa*;>^i`YDTLsfC zLdl%aqY82#!+l^fbq>bDWVvHWcF3v}EWxcB35+6A4agmhY5V4GRxn+EBY?hxIx9iG`kMerCN*uuObEryYR%Y_ z;?Fij6=t!oM5t4*MAKBFX`@7lMTxXm4<(xRm1x?~f)WY#e`K>9RqO`gx2KjDy7A)@ z#y6pJ!9Auh_8nkK$C&sfBS|f=6sdj}V60!VC^Id%Brhw3t5*oOh7qDAj7ly2ga-nc zu|H`6F)j}PK&u!51?L6uEnIPzpM(3Jf@;-zP_AC--vUip;@`rm1Ti3@H0V^rq3L#R zAm<{TrPoqR-_yx78INMflL^rQalu6#%kgvsTrDprlXRqM&6i$7{!yyFWPEDvMty() z!m@>UG$~Fg5VsY>o21tSO#Eoz&6~(dW3-M>+uiCpr-f+rURbP4y>J$eLL6@whrchh7gN9_6m55)1Ue9Y*cR)bXX&~NK zL%fy@%W5bPa5KcMJqe={pxkMR;MYRX=}r~3L(S!+$E_txY!2%NGpvY()CTCkPS{3M z8w_#Gy$xwBn8x`)&rq<+wko^VrAwmoW)>}@jN}>Dw$55{Ib(yX8?qNdj%;m2V;dn^ znNpjy+1_N#HnNyto018bZ8MiPaFrVr#$k2D57E5khI({GBB|F%~0&nMXR zWlY26XTXF`)G|T(VSbtCpj($DwTyXUOtI-BnyTp{5!m!!!jQFTR~HejMGtp4D9}fl z%a0Q4`|W07L;sMg<%XncTc@X0BjNhiiBL;~kXj-ee;yGc)Dj`&Mh0Qd{SA%`Mt)RzYX4`F#w zrixzCwJPsqqh!tKH&^!BE)gTFjLiE2#2Tudhp#`_{j=9Lzj-*`_x!>C{-rS&TRw(KUTEcCsWRGN;VzRZp_RB8f8KV8G_NNuv+zBM3WK(JiG^jxO5sKndz# zKJbKPttCPh<%rmC(d|k{g%N3QT@wswqR)Xq=vPd)+ayaNC=A+DsY5qdazZNDMB}v9 zm>sw|sF~Cz^F>BD|BTUzNp>BFUZf7m$-5|lJ{giETy;o@9OFQg=cG|>Vxw*8XisXn zDRly$EeX&`Eq5`A0S&(1NuA?DF3W!pR7n;je4&8DBPY5M-_GzuQZ7@G$VQb!0{r0P zFmi5eqfrDMOO4e27M+8-#+jli0&=_wcc?B$Q8#rC*`BBaWsf_!d6a+a9bD!*?Ou0p zIWvzJFZ`$6`7+amiUYhD@zr)m-N46J@zj#Msk+I$Q1H?71HJvAkX+@z=VadHkvAT@ zA=}{j9}>V7r+Cyu-uqFi4dnZK`}nWnl2PhTT*_Tr&41E(+`bT1x!vC3W*>`{+oy1) z3TS;4_c~ua0eQ8{*6zRR+II!dx5^{7`j#VHD6O{EwH;*r=lgD#ySd~lM6k?T$*!p) zZ!g1D)oMr3ggj*&WJ4|Lclt(bqjH_yHCN^(Zz~Pd6kVS10RI-&?Pbyvs@L2 zi@MeJpt;NUTgEr&HZPJ>!?*+fYUL- zo~sUDe98KvCM!&ifLv&_L$9QoyDdp#7al}#)NoMa@?vYeHHV^?iw@NuT$O({G|>P0 zD}02=2N(g62;cZ4)d!RschsF%!vWtUyzC87>X4)Exf&|<7dXm=iMPu&L0YkR(I@WD zxn_cL)#6G7ryX_hS~%q8t@rhVVtCeDF0YxW+*^4WqQ@OIbxoYgrI$X@z)Dzde-VUv zZ<6{&5azv0zYxN_x9Jx`nD;)ZYt{(4nG}N;w$OIqrtqT}*Q610ttp6xEH`M%m>qM} z;cKFadxeF~#v6dy|09l?ye6`8(<%rDmfrRr&XfMbw{Gh6$p_Q=orLs9(+}#@Lz~iB z{a`p>zau=9MWO#jom8>cAE6+4A&(_N?xFNU^u?ki*E!_h$(ok8`{1Un0u%CXAFD~? ziZwol-|IvT`_dpQ*)&NT5z#kyICcg;&2iJ0mw$C`E{ULwIHZuM?{dM5Q+ zUHBQ9It4Kg?&BT&Ui+#Ugj)Y{pb)CqYl)P)&QV?RM$8P}4zm~M;K64{xwvFZu&cc6 zW-9-H;X<(Gau)HJ@irH)?ABFqLzn)0>G$q@Q#q4|Tx9bILj(8?lT}s)_3t=z1O8!z zXHfP`s0<+7US9imWNK{c_O<`|Bcp%)nFF7@kbdjeo>=vFq&9ZP$-DB^leMC#&qBXX zijRLXbh{093UzqB^SN0ywQpo#+jeEz`Y+!#ZLvQu9{2};HT=@64}Sj1`P<$F&-O35 z73s9i)x|9H|M32Gd8|;F#Cu?Bu7X=?Jx^XTC&JHe0gd`@`!)aHOE}WmHA*ej_KjOW zg{MXv;l$gAa2!78PpMeu@2Bn{QpeO3o|`>}XSt6cHGy9(I)MBHKKCNczn7zb`@gm3 z*)h@aZYkxjWboHSYX8QNbwHKRDBCw2Ch%-1pN!?-2B|fTQa-0&!4sLmv$TSs{wR79 zMB$9!Sxr6(&8JNpDeV-TKJ;7v58~-m$UqI_cdYnJPx^UKwy}sF>32Cuf2Grl&% z`HJ!ix2xr@pTp1LNn1VvA8`Nk<=%(y0r|UIe2UrDua{aNGwilSz9Wz+pE{ny=<`*K mG&HYP(m@?9XLSAV&mYdV+Q4mE|5(l6AHM%Tr~g+Z@P7ae*Q0{~ literal 0 HcmV?d00001 diff --git a/obj/Debug/netstandard2.1/Salesforce.NET.pdb b/obj/Debug/netstandard2.1/Salesforce.NET.pdb new file mode 100644 index 0000000000000000000000000000000000000000..a9a27941a3ba129658ea4a58739787e2a86d78c9 GIT binary patch literal 23020 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 E1HnIUZU6uP literal 0 HcmV?d00001 diff --git a/obj/Salesforce.NET.csproj.nuget.dgspec.json b/obj/Salesforce.NET.csproj.nuget.dgspec.json new file mode 100644 index 0000000..4d8c35e --- /dev/null +++ b/obj/Salesforce.NET.csproj.nuget.dgspec.json @@ -0,0 +1,77 @@ +{ + "format": 1, + "restore": { + "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj": {} + }, + "projects": { + "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj", + "projectName": "Salesforce.NET", + "projectPath": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj", + "packagesPath": "C:\\Users\\rpeters\\.nuget\\packages\\", + "outputPath": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\obj\\", + "projectStyle": "PackageReference", + "configFilePaths": [ + "C:\\Users\\rpeters\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "netstandard2.1" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "http://nuget/nuget": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "netstandard2.1": { + "targetAlias": "netstandard2.1", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "netstandard2.1": { + "targetAlias": "netstandard2.1", + "dependencies": { + "BinaryDad.Extensions": { + "target": "Package", + "version": "[21.4.20.3, )" + }, + "Newtonsoft.Json": { + "target": "Package", + "version": "[13.0.1, )" + }, + "System.Runtime.Caching": { + "target": "Package", + "version": "[5.0.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "NETStandard.Library": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\5.0.202\\RuntimeIdentifierGraph.json" + } + } + } + } +} \ No newline at end of file diff --git a/obj/Salesforce.NET.csproj.nuget.g.props b/obj/Salesforce.NET.csproj.nuget.g.props new file mode 100644 index 0000000..a156baa --- /dev/null +++ b/obj/Salesforce.NET.csproj.nuget.g.props @@ -0,0 +1,18 @@ + + + + True + NuGet + $(MSBuildThisFileDirectory)project.assets.json + $(UserProfile)\.nuget\packages\ + C:\Users\rpeters\.nuget\packages\ + PackageReference + 5.9.1 + + + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + \ No newline at end of file diff --git a/obj/Salesforce.NET.csproj.nuget.g.targets b/obj/Salesforce.NET.csproj.nuget.g.targets new file mode 100644 index 0000000..53cfaa1 --- /dev/null +++ b/obj/Salesforce.NET.csproj.nuget.g.targets @@ -0,0 +1,6 @@ + + + + $(MSBuildAllProjects);$(MSBuildThisFileFullPath) + + \ No newline at end of file diff --git a/obj/project.assets.json b/obj/project.assets.json new file mode 100644 index 0000000..d04d6b2 --- /dev/null +++ b/obj/project.assets.json @@ -0,0 +1,751 @@ +{ + "version": 3, + "targets": { + ".NETStandard,Version=v2.1": { + "BinaryDad.Extensions/21.4.20.3": { + "type": "package", + "dependencies": { + "Newtonsoft.Json": "13.0.1", + "System.ComponentModel.Annotations": "5.0.0", + "System.Runtime.Caching": "5.0.0" + }, + "compile": { + "lib/netstandard2.0/BinaryDad.Extensions.dll": {} + }, + "runtime": { + "lib/netstandard2.0/BinaryDad.Extensions.dll": {} + } + }, + "Newtonsoft.Json/13.0.1": { + "type": "package", + "compile": { + "lib/netstandard2.0/Newtonsoft.Json.dll": {} + }, + "runtime": { + "lib/netstandard2.0/Newtonsoft.Json.dll": {} + } + }, + "System.Buffers/4.5.1": { + "type": "package", + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Buffers.dll": {} + } + }, + "System.ComponentModel.Annotations/5.0.0": { + "type": "package", + "compile": { + "ref/netstandard2.1/System.ComponentModel.Annotations.dll": {} + }, + "runtime": { + "lib/netstandard2.1/System.ComponentModel.Annotations.dll": {} + } + }, + "System.Configuration.ConfigurationManager/5.0.0": { + "type": "package", + "dependencies": { + "System.Security.Cryptography.ProtectedData": "5.0.0", + "System.Security.Permissions": "5.0.0" + }, + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Configuration.ConfigurationManager.dll": {} + } + }, + "System.Memory/4.5.4": { + "type": "package", + "dependencies": { + "System.Buffers": "4.5.1", + "System.Numerics.Vectors": "4.4.0", + "System.Runtime.CompilerServices.Unsafe": "4.5.3" + }, + "compile": { + "lib/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Memory.dll": {} + } + }, + "System.Numerics.Vectors/4.4.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Numerics.Vectors.dll": {} + } + }, + "System.Runtime.Caching/5.0.0": { + "type": "package", + "dependencies": { + "System.Configuration.ConfigurationManager": "5.0.0" + }, + "compile": { + "ref/netstandard2.0/System.Runtime.Caching.dll": {} + }, + "runtime": { + "lib/netstandard2.0/System.Runtime.Caching.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netstandard2.0/System.Runtime.Caching.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Runtime.CompilerServices.Unsafe/4.5.3": { + "type": "package", + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll": {} + } + }, + "System.Security.AccessControl/5.0.0": { + "type": "package", + "dependencies": { + "System.Security.Principal.Windows": "5.0.0" + }, + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.AccessControl.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netstandard1.3/System.Security.AccessControl.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Cryptography.ProtectedData/5.0.0": { + "type": "package", + "dependencies": { + "System.Memory": "4.5.4" + }, + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll": { + "assetType": "runtime", + "rid": "win" + } + } + }, + "System.Security.Permissions/5.0.0": { + "type": "package", + "dependencies": { + "System.Security.AccessControl": "5.0.0" + }, + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.Permissions.dll": {} + } + }, + "System.Security.Principal.Windows/5.0.0": { + "type": "package", + "compile": { + "ref/netstandard2.0/_._": {} + }, + "runtime": { + "lib/netstandard2.0/System.Security.Principal.Windows.dll": {} + }, + "runtimeTargets": { + "runtimes/win/lib/netstandard1.3/System.Security.Principal.Windows.dll": { + "assetType": "runtime", + "rid": "win" + } + } + } + } + }, + "libraries": { + "BinaryDad.Extensions/21.4.20.3": { + "sha512": "2JgmHs4yw6WQVM6BQshO05HeB8NcGPLtQnAytDkVNoMD7kHznX5o+f+B0zQe+vIe75559CtBzOT5hZHOd3W+Gg==", + "type": "package", + "path": "binarydad.extensions/21.4.20.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "binarydad.extensions.21.4.20.3.nupkg.sha512", + "binarydad.extensions.nuspec", + "lib/netstandard2.0/BinaryDad.Extensions.dll" + ] + }, + "Newtonsoft.Json/13.0.1": { + "sha512": "ppPFpBcvxdsfUonNcvITKqLl3bqxWbDCZIzDWHzjpdAHRFfZe0Dw9HmA0+za13IdyrgJwpkDTDA9fHaxOrt20A==", + "type": "package", + "path": "newtonsoft.json/13.0.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.md", + "lib/net20/Newtonsoft.Json.dll", + "lib/net20/Newtonsoft.Json.xml", + "lib/net35/Newtonsoft.Json.dll", + "lib/net35/Newtonsoft.Json.xml", + "lib/net40/Newtonsoft.Json.dll", + "lib/net40/Newtonsoft.Json.xml", + "lib/net45/Newtonsoft.Json.dll", + "lib/net45/Newtonsoft.Json.xml", + "lib/netstandard1.0/Newtonsoft.Json.dll", + "lib/netstandard1.0/Newtonsoft.Json.xml", + "lib/netstandard1.3/Newtonsoft.Json.dll", + "lib/netstandard1.3/Newtonsoft.Json.xml", + "lib/netstandard2.0/Newtonsoft.Json.dll", + "lib/netstandard2.0/Newtonsoft.Json.xml", + "newtonsoft.json.13.0.1.nupkg.sha512", + "newtonsoft.json.nuspec", + "packageIcon.png" + ] + }, + "System.Buffers/4.5.1": { + "sha512": "Rw7ijyl1qqRS0YQD/WycNst8hUUMgrMH4FCn1nNm27M4VxchZ1js3fVjQaANHO5f3sN4isvP4a+Met9Y4YomAg==", + "type": "package", + "path": "system.buffers/4.5.1", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Buffers.dll", + "lib/net461/System.Buffers.xml", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.1/System.Buffers.dll", + "lib/netstandard1.1/System.Buffers.xml", + "lib/netstandard2.0/System.Buffers.dll", + "lib/netstandard2.0/System.Buffers.xml", + "lib/uap10.0.16299/_._", + "ref/net45/System.Buffers.dll", + "ref/net45/System.Buffers.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.1/System.Buffers.dll", + "ref/netstandard1.1/System.Buffers.xml", + "ref/netstandard2.0/System.Buffers.dll", + "ref/netstandard2.0/System.Buffers.xml", + "ref/uap10.0.16299/_._", + "system.buffers.4.5.1.nupkg.sha512", + "system.buffers.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.ComponentModel.Annotations/5.0.0": { + "sha512": "dMkqfy2el8A8/I76n2Hi1oBFEbG1SfxD2l5nhwXV3XjlnOmwxJlQbYpJH4W51odnU9sARCSAgv7S3CyAFMkpYg==", + "type": "package", + "path": "system.componentmodel.annotations/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/net461/System.ComponentModel.Annotations.dll", + "lib/netcore50/System.ComponentModel.Annotations.dll", + "lib/netstandard1.4/System.ComponentModel.Annotations.dll", + "lib/netstandard2.0/System.ComponentModel.Annotations.dll", + "lib/netstandard2.1/System.ComponentModel.Annotations.dll", + "lib/netstandard2.1/System.ComponentModel.Annotations.xml", + "lib/portable-net45+win8/_._", + "lib/win8/_._", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/net461/System.ComponentModel.Annotations.dll", + "ref/net461/System.ComponentModel.Annotations.xml", + "ref/netcore50/System.ComponentModel.Annotations.dll", + "ref/netcore50/System.ComponentModel.Annotations.xml", + "ref/netcore50/de/System.ComponentModel.Annotations.xml", + "ref/netcore50/es/System.ComponentModel.Annotations.xml", + "ref/netcore50/fr/System.ComponentModel.Annotations.xml", + "ref/netcore50/it/System.ComponentModel.Annotations.xml", + "ref/netcore50/ja/System.ComponentModel.Annotations.xml", + "ref/netcore50/ko/System.ComponentModel.Annotations.xml", + "ref/netcore50/ru/System.ComponentModel.Annotations.xml", + "ref/netcore50/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netcore50/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/System.ComponentModel.Annotations.dll", + "ref/netstandard1.1/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/de/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/es/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/fr/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/it/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/ja/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/ko/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/ru/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netstandard1.1/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/System.ComponentModel.Annotations.dll", + "ref/netstandard1.3/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/de/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/es/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/fr/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/it/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/ja/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/ko/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/ru/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netstandard1.3/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/System.ComponentModel.Annotations.dll", + "ref/netstandard1.4/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/de/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/es/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/fr/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/it/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/ja/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/ko/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/ru/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/zh-hans/System.ComponentModel.Annotations.xml", + "ref/netstandard1.4/zh-hant/System.ComponentModel.Annotations.xml", + "ref/netstandard2.0/System.ComponentModel.Annotations.dll", + "ref/netstandard2.0/System.ComponentModel.Annotations.xml", + "ref/netstandard2.1/System.ComponentModel.Annotations.dll", + "ref/netstandard2.1/System.ComponentModel.Annotations.xml", + "ref/portable-net45+win8/_._", + "ref/win8/_._", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.componentmodel.annotations.5.0.0.nupkg.sha512", + "system.componentmodel.annotations.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Configuration.ConfigurationManager/5.0.0": { + "sha512": "aM7cbfEfVNlEEOj3DsZP+2g9NRwbkyiAv2isQEzw7pnkDg9ekCU2m1cdJLM02Uq691OaCS91tooaxcEn8d0q5w==", + "type": "package", + "path": "system.configuration.configurationmanager/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Configuration.ConfigurationManager.dll", + "lib/net461/System.Configuration.ConfigurationManager.xml", + "lib/netstandard2.0/System.Configuration.ConfigurationManager.dll", + "lib/netstandard2.0/System.Configuration.ConfigurationManager.xml", + "ref/net461/System.Configuration.ConfigurationManager.dll", + "ref/net461/System.Configuration.ConfigurationManager.xml", + "ref/netstandard2.0/System.Configuration.ConfigurationManager.dll", + "ref/netstandard2.0/System.Configuration.ConfigurationManager.xml", + "system.configuration.configurationmanager.5.0.0.nupkg.sha512", + "system.configuration.configurationmanager.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Memory/4.5.4": { + "sha512": "1MbJTHS1lZ4bS4FmsJjnuGJOu88ZzTT2rLvrhW7Ygic+pC0NWA+3hgAen0HRdsocuQXCkUTdFn9yHJJhsijDXw==", + "type": "package", + "path": "system.memory/4.5.4", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Memory.dll", + "lib/net461/System.Memory.xml", + "lib/netcoreapp2.1/_._", + "lib/netstandard1.1/System.Memory.dll", + "lib/netstandard1.1/System.Memory.xml", + "lib/netstandard2.0/System.Memory.dll", + "lib/netstandard2.0/System.Memory.xml", + "ref/netcoreapp2.1/_._", + "system.memory.4.5.4.nupkg.sha512", + "system.memory.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Numerics.Vectors/4.4.0": { + "sha512": "UiLzLW+Lw6HLed1Hcg+8jSRttrbuXv7DANVj0DkL9g6EnnzbL75EB7EWsw5uRbhxd/4YdG8li5XizGWepmG3PQ==", + "type": "package", + "path": "system.numerics.vectors/4.4.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Numerics.Vectors.dll", + "lib/net46/System.Numerics.Vectors.xml", + "lib/netcoreapp2.0/_._", + "lib/netstandard1.0/System.Numerics.Vectors.dll", + "lib/netstandard1.0/System.Numerics.Vectors.xml", + "lib/netstandard2.0/System.Numerics.Vectors.dll", + "lib/netstandard2.0/System.Numerics.Vectors.xml", + "lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.dll", + "lib/portable-net45+win8+wp8+wpa81/System.Numerics.Vectors.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Numerics.Vectors.dll", + "ref/net46/System.Numerics.Vectors.xml", + "ref/netcoreapp2.0/_._", + "ref/netstandard1.0/System.Numerics.Vectors.dll", + "ref/netstandard1.0/System.Numerics.Vectors.xml", + "ref/netstandard2.0/System.Numerics.Vectors.dll", + "ref/netstandard2.0/System.Numerics.Vectors.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "system.numerics.vectors.4.4.0.nupkg.sha512", + "system.numerics.vectors.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Runtime.Caching/5.0.0": { + "sha512": "30D6MkO8WF9jVGWZIP0hmCN8l9BTY4LCsAzLIe4xFSXzs+AjDotR7DpSmj27pFskDURzUvqYYY0ikModgBTxWw==", + "type": "package", + "path": "system.runtime.caching/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net45/_._", + "lib/netstandard2.0/System.Runtime.Caching.dll", + "lib/netstandard2.0/System.Runtime.Caching.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net45/_._", + "ref/netstandard2.0/System.Runtime.Caching.dll", + "ref/netstandard2.0/System.Runtime.Caching.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/win/lib/net45/_._", + "runtimes/win/lib/netstandard2.0/System.Runtime.Caching.dll", + "runtimes/win/lib/netstandard2.0/System.Runtime.Caching.xml", + "system.runtime.caching.5.0.0.nupkg.sha512", + "system.runtime.caching.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Runtime.CompilerServices.Unsafe/4.5.3": { + "sha512": "3TIsJhD1EiiT0w2CcDMN/iSSwnNnsrnbzeVHSKkaEgV85txMprmuO+Yq2AdSbeVGcg28pdNDTPK87tJhX7VFHw==", + "type": "package", + "path": "system.runtime.compilerservices.unsafe/4.5.3", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Runtime.CompilerServices.Unsafe.dll", + "lib/net461/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netcoreapp2.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "lib/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "ref/net461/System.Runtime.CompilerServices.Unsafe.dll", + "ref/net461/System.Runtime.CompilerServices.Unsafe.xml", + "ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.dll", + "ref/netstandard1.0/System.Runtime.CompilerServices.Unsafe.xml", + "ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.dll", + "ref/netstandard2.0/System.Runtime.CompilerServices.Unsafe.xml", + "system.runtime.compilerservices.unsafe.4.5.3.nupkg.sha512", + "system.runtime.compilerservices.unsafe.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.AccessControl/5.0.0": { + "sha512": "dagJ1mHZO3Ani8GH0PHpPEe/oYO+rVdbQjvjJkBRNQkX4t0r1iaeGn8+/ybkSLEan3/slM0t59SVdHzuHf2jmw==", + "type": "package", + "path": "system.security.accesscontrol/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.AccessControl.dll", + "lib/net461/System.Security.AccessControl.dll", + "lib/net461/System.Security.AccessControl.xml", + "lib/netstandard1.3/System.Security.AccessControl.dll", + "lib/netstandard2.0/System.Security.AccessControl.dll", + "lib/netstandard2.0/System.Security.AccessControl.xml", + "lib/uap10.0.16299/_._", + "ref/net46/System.Security.AccessControl.dll", + "ref/net461/System.Security.AccessControl.dll", + "ref/net461/System.Security.AccessControl.xml", + "ref/netstandard1.3/System.Security.AccessControl.dll", + "ref/netstandard1.3/System.Security.AccessControl.xml", + "ref/netstandard1.3/de/System.Security.AccessControl.xml", + "ref/netstandard1.3/es/System.Security.AccessControl.xml", + "ref/netstandard1.3/fr/System.Security.AccessControl.xml", + "ref/netstandard1.3/it/System.Security.AccessControl.xml", + "ref/netstandard1.3/ja/System.Security.AccessControl.xml", + "ref/netstandard1.3/ko/System.Security.AccessControl.xml", + "ref/netstandard1.3/ru/System.Security.AccessControl.xml", + "ref/netstandard1.3/zh-hans/System.Security.AccessControl.xml", + "ref/netstandard1.3/zh-hant/System.Security.AccessControl.xml", + "ref/netstandard2.0/System.Security.AccessControl.dll", + "ref/netstandard2.0/System.Security.AccessControl.xml", + "ref/uap10.0.16299/_._", + "runtimes/win/lib/net46/System.Security.AccessControl.dll", + "runtimes/win/lib/net461/System.Security.AccessControl.dll", + "runtimes/win/lib/net461/System.Security.AccessControl.xml", + "runtimes/win/lib/netcoreapp2.0/System.Security.AccessControl.dll", + "runtimes/win/lib/netcoreapp2.0/System.Security.AccessControl.xml", + "runtimes/win/lib/netstandard1.3/System.Security.AccessControl.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.accesscontrol.5.0.0.nupkg.sha512", + "system.security.accesscontrol.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Cryptography.ProtectedData/5.0.0": { + "sha512": "HGxMSAFAPLNoxBvSfW08vHde0F9uh7BjASwu6JF9JnXuEPhCY3YUqURn0+bQV/4UWeaqymmrHWV+Aw9riQCtCA==", + "type": "package", + "path": "system.security.cryptography.protecteddata/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/MonoAndroid10/_._", + "lib/MonoTouch10/_._", + "lib/net46/System.Security.Cryptography.ProtectedData.dll", + "lib/net461/System.Security.Cryptography.ProtectedData.dll", + "lib/net461/System.Security.Cryptography.ProtectedData.xml", + "lib/netstandard1.3/System.Security.Cryptography.ProtectedData.dll", + "lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll", + "lib/netstandard2.0/System.Security.Cryptography.ProtectedData.xml", + "lib/xamarinios10/_._", + "lib/xamarinmac20/_._", + "lib/xamarintvos10/_._", + "lib/xamarinwatchos10/_._", + "ref/MonoAndroid10/_._", + "ref/MonoTouch10/_._", + "ref/net46/System.Security.Cryptography.ProtectedData.dll", + "ref/net461/System.Security.Cryptography.ProtectedData.dll", + "ref/net461/System.Security.Cryptography.ProtectedData.xml", + "ref/netstandard1.3/System.Security.Cryptography.ProtectedData.dll", + "ref/netstandard2.0/System.Security.Cryptography.ProtectedData.dll", + "ref/netstandard2.0/System.Security.Cryptography.ProtectedData.xml", + "ref/xamarinios10/_._", + "ref/xamarinmac20/_._", + "ref/xamarintvos10/_._", + "ref/xamarinwatchos10/_._", + "runtimes/win/lib/net46/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/net461/System.Security.Cryptography.ProtectedData.xml", + "runtimes/win/lib/netstandard1.3/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.dll", + "runtimes/win/lib/netstandard2.0/System.Security.Cryptography.ProtectedData.xml", + "system.security.cryptography.protecteddata.5.0.0.nupkg.sha512", + "system.security.cryptography.protecteddata.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Permissions/5.0.0": { + "sha512": "uE8juAhEkp7KDBCdjDIE3H9R1HJuEHqeqX8nLX9gmYKWwsqk3T5qZlPx8qle5DPKimC/Fy3AFTdV7HamgCh9qQ==", + "type": "package", + "path": "system.security.permissions/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net461/System.Security.Permissions.dll", + "lib/net461/System.Security.Permissions.xml", + "lib/net5.0/System.Security.Permissions.dll", + "lib/net5.0/System.Security.Permissions.xml", + "lib/netcoreapp3.0/System.Security.Permissions.dll", + "lib/netcoreapp3.0/System.Security.Permissions.xml", + "lib/netstandard2.0/System.Security.Permissions.dll", + "lib/netstandard2.0/System.Security.Permissions.xml", + "ref/net461/System.Security.Permissions.dll", + "ref/net461/System.Security.Permissions.xml", + "ref/net5.0/System.Security.Permissions.dll", + "ref/net5.0/System.Security.Permissions.xml", + "ref/netcoreapp3.0/System.Security.Permissions.dll", + "ref/netcoreapp3.0/System.Security.Permissions.xml", + "ref/netstandard2.0/System.Security.Permissions.dll", + "ref/netstandard2.0/System.Security.Permissions.xml", + "system.security.permissions.5.0.0.nupkg.sha512", + "system.security.permissions.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + }, + "System.Security.Principal.Windows/5.0.0": { + "sha512": "t0MGLukB5WAVU9bO3MGzvlGnyJPgUlcwerXn1kzBRjwLKixT96XV0Uza41W49gVd8zEMFu9vQEFlv0IOrytICA==", + "type": "package", + "path": "system.security.principal.windows/5.0.0", + "files": [ + ".nupkg.metadata", + ".signature.p7s", + "Icon.png", + "LICENSE.TXT", + "THIRD-PARTY-NOTICES.TXT", + "lib/net46/System.Security.Principal.Windows.dll", + "lib/net461/System.Security.Principal.Windows.dll", + "lib/net461/System.Security.Principal.Windows.xml", + "lib/netstandard1.3/System.Security.Principal.Windows.dll", + "lib/netstandard2.0/System.Security.Principal.Windows.dll", + "lib/netstandard2.0/System.Security.Principal.Windows.xml", + "lib/uap10.0.16299/_._", + "ref/net46/System.Security.Principal.Windows.dll", + "ref/net461/System.Security.Principal.Windows.dll", + "ref/net461/System.Security.Principal.Windows.xml", + "ref/netcoreapp3.0/System.Security.Principal.Windows.dll", + "ref/netcoreapp3.0/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/System.Security.Principal.Windows.dll", + "ref/netstandard1.3/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/de/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/es/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/fr/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/it/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ja/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ko/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/ru/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/zh-hans/System.Security.Principal.Windows.xml", + "ref/netstandard1.3/zh-hant/System.Security.Principal.Windows.xml", + "ref/netstandard2.0/System.Security.Principal.Windows.dll", + "ref/netstandard2.0/System.Security.Principal.Windows.xml", + "ref/uap10.0.16299/_._", + "runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.dll", + "runtimes/unix/lib/netcoreapp2.0/System.Security.Principal.Windows.xml", + "runtimes/unix/lib/netcoreapp2.1/System.Security.Principal.Windows.dll", + "runtimes/unix/lib/netcoreapp2.1/System.Security.Principal.Windows.xml", + "runtimes/win/lib/net46/System.Security.Principal.Windows.dll", + "runtimes/win/lib/net461/System.Security.Principal.Windows.dll", + "runtimes/win/lib/net461/System.Security.Principal.Windows.xml", + "runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.dll", + "runtimes/win/lib/netcoreapp2.0/System.Security.Principal.Windows.xml", + "runtimes/win/lib/netcoreapp2.1/System.Security.Principal.Windows.dll", + "runtimes/win/lib/netcoreapp2.1/System.Security.Principal.Windows.xml", + "runtimes/win/lib/netstandard1.3/System.Security.Principal.Windows.dll", + "runtimes/win/lib/uap10.0.16299/_._", + "system.security.principal.windows.5.0.0.nupkg.sha512", + "system.security.principal.windows.nuspec", + "useSharedDesignerContext.txt", + "version.txt" + ] + } + }, + "projectFileDependencyGroups": { + ".NETStandard,Version=v2.1": [ + "BinaryDad.Extensions >= 21.4.20.3", + "Newtonsoft.Json >= 13.0.1", + "System.Runtime.Caching >= 5.0.0" + ] + }, + "packageFolders": { + "C:\\Users\\rpeters\\.nuget\\packages\\": {} + }, + "project": { + "version": "1.0.0", + "restore": { + "projectUniqueName": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj", + "projectName": "Salesforce.NET", + "projectPath": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj", + "packagesPath": "C:\\Users\\rpeters\\.nuget\\packages\\", + "outputPath": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\obj\\", + "projectStyle": "PackageReference", + "configFilePaths": [ + "C:\\Users\\rpeters\\AppData\\Roaming\\NuGet\\NuGet.Config", + "C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config" + ], + "originalTargetFrameworks": [ + "netstandard2.1" + ], + "sources": { + "C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {}, + "http://nuget/nuget": {}, + "https://api.nuget.org/v3/index.json": {} + }, + "frameworks": { + "netstandard2.1": { + "targetAlias": "netstandard2.1", + "projectReferences": {} + } + }, + "warningProperties": { + "warnAsError": [ + "NU1605" + ] + } + }, + "frameworks": { + "netstandard2.1": { + "targetAlias": "netstandard2.1", + "dependencies": { + "BinaryDad.Extensions": { + "target": "Package", + "version": "[21.4.20.3, )" + }, + "Newtonsoft.Json": { + "target": "Package", + "version": "[13.0.1, )" + }, + "System.Runtime.Caching": { + "target": "Package", + "version": "[5.0.0, )" + } + }, + "imports": [ + "net461", + "net462", + "net47", + "net471", + "net472", + "net48" + ], + "assetTargetFallback": true, + "warn": true, + "frameworkReferences": { + "NETStandard.Library": { + "privateAssets": "all" + } + }, + "runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\5.0.202\\RuntimeIdentifierGraph.json" + } + } + } +} \ No newline at end of file diff --git a/obj/project.nuget.cache b/obj/project.nuget.cache new file mode 100644 index 0000000..af659b6 --- /dev/null +++ b/obj/project.nuget.cache @@ -0,0 +1,22 @@ +{ + "version": 2, + "dgSpecHash": "/lUv+cPqzqvYWmPealOr6F/ozeSJMk50dUaMiaz8DRFtYYcODR3gG/No3o+0zhkhJG0pJa3eFsDkXjVd4lnjtg==", + "success": true, + "projectFilePath": "D:\\Git\\Salesforce.NET\\Salesforce.NET\\Salesforce.NET.csproj", + "expectedPackageFiles": [ + "C:\\Users\\rpeters\\.nuget\\packages\\binarydad.extensions\\21.4.20.3\\binarydad.extensions.21.4.20.3.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\newtonsoft.json\\13.0.1\\newtonsoft.json.13.0.1.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.buffers\\4.5.1\\system.buffers.4.5.1.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.componentmodel.annotations\\5.0.0\\system.componentmodel.annotations.5.0.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.configuration.configurationmanager\\5.0.0\\system.configuration.configurationmanager.5.0.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.memory\\4.5.4\\system.memory.4.5.4.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.numerics.vectors\\4.4.0\\system.numerics.vectors.4.4.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.runtime.caching\\5.0.0\\system.runtime.caching.5.0.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.runtime.compilerservices.unsafe\\4.5.3\\system.runtime.compilerservices.unsafe.4.5.3.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.security.accesscontrol\\5.0.0\\system.security.accesscontrol.5.0.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.security.cryptography.protecteddata\\5.0.0\\system.security.cryptography.protecteddata.5.0.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.security.permissions\\5.0.0\\system.security.permissions.5.0.0.nupkg.sha512", + "C:\\Users\\rpeters\\.nuget\\packages\\system.security.principal.windows\\5.0.0\\system.security.principal.windows.5.0.0.nupkg.sha512" + ], + "logs": [] +} \ No newline at end of file