From 8b98584ab70cf34e91fad895f81718dea7f41f81 Mon Sep 17 00:00:00 2001 From: Brandon H Date: Mon, 24 Oct 2016 12:33:28 -0700 Subject: [PATCH] Add AppInsightsBot --- CSharp/core-AppInsights/AppInsightsBot.csproj | 208 + CSharp/core-AppInsights/AppInsightsBot.sln | 27 + .../App_Start/WebApiConfig.cs | 33 + .../ApplicationInsights.config | 86 + CSharp/core-AppInsights/ContextConstants.cs | 9 + .../Controllers/MessagesController.cs | 61 + CSharp/core-AppInsights/Global.asax | 1 + CSharp/core-AppInsights/Global.asax.cs | 12 + .../Properties/AssemblyInfo.cs | 35 + CSharp/core-AppInsights/README.md | 117 + CSharp/core-AppInsights/StateDialog.cs | 113 + CSharp/core-AppInsights/Web.Debug.config | 30 + CSharp/core-AppInsights/Web.Release.config | 31 + CSharp/core-AppInsights/Web.config | 79 + CSharp/core-AppInsights/azuredeploy.json | 121 + CSharp/core-AppInsights/default.htm | 12 + CSharp/core-AppInsights/images/outcome-1.png | Bin 0 -> 134363 bytes CSharp/core-AppInsights/images/outcome-2.png | Bin 0 -> 131301 bytes CSharp/core-AppInsights/images/outcome-3.png | Bin 0 -> 148567 bytes CSharp/core-AppInsights/packages.config | 23 + .../scripts/ai.0.22.19-build00125.js | 3859 +++++++++++++++++ .../scripts/ai.0.22.19-build00125.min.js | 1 + 22 files changed, 4858 insertions(+) create mode 100644 CSharp/core-AppInsights/AppInsightsBot.csproj create mode 100644 CSharp/core-AppInsights/AppInsightsBot.sln create mode 100644 CSharp/core-AppInsights/App_Start/WebApiConfig.cs create mode 100644 CSharp/core-AppInsights/ApplicationInsights.config create mode 100644 CSharp/core-AppInsights/ContextConstants.cs create mode 100644 CSharp/core-AppInsights/Controllers/MessagesController.cs create mode 100644 CSharp/core-AppInsights/Global.asax create mode 100644 CSharp/core-AppInsights/Global.asax.cs create mode 100644 CSharp/core-AppInsights/Properties/AssemblyInfo.cs create mode 100644 CSharp/core-AppInsights/README.md create mode 100644 CSharp/core-AppInsights/StateDialog.cs create mode 100644 CSharp/core-AppInsights/Web.Debug.config create mode 100644 CSharp/core-AppInsights/Web.Release.config create mode 100644 CSharp/core-AppInsights/Web.config create mode 100644 CSharp/core-AppInsights/azuredeploy.json create mode 100644 CSharp/core-AppInsights/default.htm create mode 100644 CSharp/core-AppInsights/images/outcome-1.png create mode 100644 CSharp/core-AppInsights/images/outcome-2.png create mode 100644 CSharp/core-AppInsights/images/outcome-3.png create mode 100644 CSharp/core-AppInsights/packages.config create mode 100644 CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.js create mode 100644 CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.min.js diff --git a/CSharp/core-AppInsights/AppInsightsBot.csproj b/CSharp/core-AppInsights/AppInsightsBot.csproj new file mode 100644 index 0000000000..ef04c6122e --- /dev/null +++ b/CSharp/core-AppInsights/AppInsightsBot.csproj @@ -0,0 +1,208 @@ + + + + + Debug + AnyCPU + + + 2.0 + {A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4} + {349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc} + Library + Properties + StateBot + StateBot + v4.6 + true + + + + + + + + + + + true + full + false + bin\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\ + TRACE + prompt + 4 + + + + packages\Autofac.3.5.2\lib\net40\Autofac.dll + True + + + packages\Chronic.Signed.0.3.2\lib\net40\Chronic.dll + True + + + packages\Microsoft.ApplicationInsights.Agent.Intercept.1.2.1\lib\net45\Microsoft.AI.Agent.Intercept.dll + True + + + packages\Microsoft.ApplicationInsights.DependencyCollector.2.1.0\lib\net45\Microsoft.AI.DependencyCollector.dll + True + + + packages\Microsoft.ApplicationInsights.PerfCounterCollector.2.1.0\lib\net45\Microsoft.AI.PerfCounterCollector.dll + True + + + packages\Microsoft.ApplicationInsights.WindowsServer.TelemetryChannel.2.1.0\lib\net45\Microsoft.AI.ServerTelemetryChannel.dll + True + + + packages\Microsoft.ApplicationInsights.Web.2.1.0\lib\net45\Microsoft.AI.Web.dll + True + + + packages\Microsoft.ApplicationInsights.WindowsServer.2.1.0\lib\net45\Microsoft.AI.WindowsServer.dll + True + + + packages\Microsoft.ApplicationInsights.2.1.0\lib\net46\Microsoft.ApplicationInsights.dll + True + + + packages\Microsoft.Bot.Builder.3.2.1\lib\net46\Microsoft.Bot.Builder.dll + True + + + packages\Microsoft.Bot.Builder.3.2.1\lib\net46\Microsoft.Bot.Connector.dll + True + + + + packages\Microsoft.IdentityModel.Protocol.Extensions.1.0.2.206221351\lib\net45\Microsoft.IdentityModel.Protocol.Extensions.dll + True + + + packages\Microsoft.Rest.ClientRuntime.2.3.2\lib\net45\Microsoft.Rest.ClientRuntime.dll + True + + + packages\Microsoft.WindowsAzure.ConfigurationManager.3.2.1\lib\net40\Microsoft.WindowsAzure.Configuration.dll + True + + + packages\Newtonsoft.Json.8.0.3\lib\net45\Newtonsoft.Json.dll + True + + + + packages\System.IdentityModel.Tokens.Jwt.4.0.2.206221351\lib\net45\System.IdentityModel.Tokens.Jwt.dll + True + + + + + packages\Microsoft.AspNet.WebApi.Client.5.2.3\lib\net45\System.Net.Http.Formatting.dll + True + + + + + + + + + + + + + + packages\Microsoft.AspNet.WebApi.Core.5.2.3\lib\net45\System.Web.Http.dll + True + + + packages\Microsoft.AspNet.WebApi.WebHost.5.2.3\lib\net45\System.Web.Http.WebHost.dll + True + + + + + + + + + + + + + + Designer + + + + + + + + Global.asax + + + + + + + + PreserveNewest + + + Web.config + + + Web.config + + + + 10.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + + + true + + + + + + + + + True + True + 3979 + / + http://localhost:3979/ + False + False + + + False + + + + + + \ No newline at end of file diff --git a/CSharp/core-AppInsights/AppInsightsBot.sln b/CSharp/core-AppInsights/AppInsightsBot.sln new file mode 100644 index 0000000000..f7b6d956b0 --- /dev/null +++ b/CSharp/core-AppInsights/AppInsightsBot.sln @@ -0,0 +1,27 @@ + +Microsoft Visual Studio Solution File, Format Version 12.00 +# Visual Studio 14 +VisualStudioVersion = 14.0.25420.1 +MinimumVisualStudioVersion = 10.0.40219.1 +Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "AppInsightsBot", "AppInsightsBot.csproj", "{A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}" +EndProject +Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "README", "README", "{95ECA428-AA26-4C78-B6A1-DB63EA66E54C}" + ProjectSection(SolutionItems) = preProject + README.md = README.md + EndProjectSection +EndProject +Global + GlobalSection(SolutionConfigurationPlatforms) = preSolution + Debug|Any CPU = Debug|Any CPU + Release|Any CPU = Release|Any CPU + EndGlobalSection + GlobalSection(ProjectConfigurationPlatforms) = postSolution + {A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}.Debug|Any CPU.ActiveCfg = Debug|Any CPU + {A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}.Debug|Any CPU.Build.0 = Debug|Any CPU + {A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}.Release|Any CPU.ActiveCfg = Release|Any CPU + {A8BA1066-5695-4D71-ABB4-65E5A5E0C3D4}.Release|Any CPU.Build.0 = Release|Any CPU + EndGlobalSection + GlobalSection(SolutionProperties) = preSolution + HideSolutionNode = FALSE + EndGlobalSection +EndGlobal diff --git a/CSharp/core-AppInsights/App_Start/WebApiConfig.cs b/CSharp/core-AppInsights/App_Start/WebApiConfig.cs new file mode 100644 index 0000000000..ac129deab9 --- /dev/null +++ b/CSharp/core-AppInsights/App_Start/WebApiConfig.cs @@ -0,0 +1,33 @@ +namespace AppInsightsBot +{ + using System.Web.Http; + using Newtonsoft.Json; + using Newtonsoft.Json.Serialization; + + public static class WebApiConfig + { + public static void Register(HttpConfiguration config) + { + // Json settings + config.Formatters.JsonFormatter.SerializerSettings.NullValueHandling = NullValueHandling.Ignore; + config.Formatters.JsonFormatter.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); + config.Formatters.JsonFormatter.SerializerSettings.Formatting = Formatting.Indented; + JsonConvert.DefaultSettings = () => new JsonSerializerSettings() + { + ContractResolver = new CamelCasePropertyNamesContractResolver(), + Formatting = Newtonsoft.Json.Formatting.Indented, + NullValueHandling = NullValueHandling.Ignore, + }; + + // Web API configuration and services + + // Web API routes + config.MapHttpAttributeRoutes(); + + config.Routes.MapHttpRoute( + name: "DefaultApi", + routeTemplate: "api/{controller}/{id}", + defaults: new { id = RouteParameter.Optional }); + } + } +} diff --git a/CSharp/core-AppInsights/ApplicationInsights.config b/CSharp/core-AppInsights/ApplicationInsights.config new file mode 100644 index 0000000000..bf3735e8d5 --- /dev/null +++ b/CSharp/core-AppInsights/ApplicationInsights.config @@ -0,0 +1,86 @@ + + + + + + + + + + + + + + + System.Web.Handlers.TransferRequestHandler + Microsoft.VisualStudio.Web.PageInspector.Runtime.Tracing.RequestDataHttpHandler + System.Web.StaticFileHandler + System.Web.Handlers.AssemblyResourceLoader + System.Web.Optimization.BundleHandler + System.Web.Script.Services.ScriptHandlerFactory + System.Web.Handlers.TraceHandler + System.Web.Services.Discovery.DiscoveryRequestHandler + System.Web.HttpDebugHandler + + + + + + + + 5 + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CSharp/core-AppInsights/ContextConstants.cs b/CSharp/core-AppInsights/ContextConstants.cs new file mode 100644 index 0000000000..56db97c0cf --- /dev/null +++ b/CSharp/core-AppInsights/ContextConstants.cs @@ -0,0 +1,9 @@ +namespace AppInsightsBot +{ + public class ContextConstants + { + public const string UserNameKey = "UserName"; + + public const string CityKey = "City"; + } +} \ No newline at end of file diff --git a/CSharp/core-AppInsights/Controllers/MessagesController.cs b/CSharp/core-AppInsights/Controllers/MessagesController.cs new file mode 100644 index 0000000000..6cf12a63d7 --- /dev/null +++ b/CSharp/core-AppInsights/Controllers/MessagesController.cs @@ -0,0 +1,61 @@ +namespace AppInsightsBot +{ + using System.Net; + using System.Net.Http; + using System.Threading.Tasks; + using System.Web.Http; + using Microsoft.Bot.Builder.Dialogs; + using Microsoft.Bot.Connector; + + [BotAuthentication] + public class MessagesController : ApiController + { + /// + /// POST: api/Messages + /// Receive a message from a user and reply to it + /// + public async Task Post([FromBody]Activity activity) + { + if (activity.Type == ActivityTypes.Message) + { + await Conversation.SendAsync(activity, () => new StateDialog()); + } + else + { + this.HandleSystemMessage(activity); + } + + var response = Request.CreateResponse(HttpStatusCode.OK); + return response; + } + + private Activity HandleSystemMessage(Activity message) + { + if (message.Type == ActivityTypes.DeleteUserData) + { + // Implement user deletion here + // If we handle user deletion, return a real message + } + else if (message.Type == ActivityTypes.ConversationUpdate) + { + // Handle conversation state changes, like members being added and removed + // Use Activity.MembersAdded and Activity.MembersRemoved and Activity.Action for info + // Not available in all channels + } + else if (message.Type == ActivityTypes.ContactRelationUpdate) + { + // Handle add/remove from contact lists + // Activity.From + Activity.Action represent what happened + } + else if (message.Type == ActivityTypes.Typing) + { + // Handle knowing tha the user is typing + } + else if (message.Type == ActivityTypes.Ping) + { + } + + return null; + } + } +} \ No newline at end of file diff --git a/CSharp/core-AppInsights/Global.asax b/CSharp/core-AppInsights/Global.asax new file mode 100644 index 0000000000..6a22722cf0 --- /dev/null +++ b/CSharp/core-AppInsights/Global.asax @@ -0,0 +1 @@ +<%@ Application Codebehind="Global.asax.cs" Inherits="AppInsightsBot.WebApiApplication" Language="C#" %> diff --git a/CSharp/core-AppInsights/Global.asax.cs b/CSharp/core-AppInsights/Global.asax.cs new file mode 100644 index 0000000000..29dbcaedad --- /dev/null +++ b/CSharp/core-AppInsights/Global.asax.cs @@ -0,0 +1,12 @@ +namespace AppInsightsBot +{ + using System.Web.Http; + + public class WebApiApplication : System.Web.HttpApplication + { + protected void Application_Start() + { + GlobalConfiguration.Configure(WebApiConfig.Register); + } + } +} diff --git a/CSharp/core-AppInsights/Properties/AssemblyInfo.cs b/CSharp/core-AppInsights/Properties/AssemblyInfo.cs new file mode 100644 index 0000000000..b0ee7bcf05 --- /dev/null +++ b/CSharp/core-AppInsights/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AppInsightsBot")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("")] +[assembly: AssemblyProduct("AppInsightsBot")] +[assembly: AssemblyCopyright("Copyright © 2016")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("a8ba1066-5695-4d71-abb4-65e5a5e0c3d4")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/CSharp/core-AppInsights/README.md b/CSharp/core-AppInsights/README.md new file mode 100644 index 0000000000..bd74fcf8d4 --- /dev/null +++ b/CSharp/core-AppInsights/README.md @@ -0,0 +1,117 @@ +# State API Bot Sample + +A stateless sample bot tracking context of a conversation. + +[![Deploy to Azure][Deploy Button]][Deploy CSharp/State] +[Deploy Button]: https://azuredeploy.net/deploybutton.png +[Deploy CSharp/State]: https://azuredeploy.net + +### Prerequisites + +The minimum prerequisites to run this sample are: +* The latest update of Visual Studio 2015. You can download the community version [here](http://www.visualstudio.com) for free. +* The Bot Framework Emulator. To install the Bot Framework Emulator, download it from [here](https://aka.ms/bf-bc-emulator). Please refer to [this documentation article](https://docs.botframework.com/en-us/csharp/builder/sdkreference/gettingstarted.html#emulator) to know more about the Bot Framework Emulator. + +### Code Highlights + +The Bot Framework provides several ways of persisting data relative to a user or conversation. Behind the scenes the Bot Framework uses the Bot State Service for tracking context of a conversation. This allows the creation of stateless Bot web services so that they can be scaled. + +The `IDialogContext` has several properties which are useful for tracking state. + +Property| Use cases +------------ | ------------- +ConversationData | Remembering context data associated with a conversation. +PrivateConversationData | Remembering context data associated with a user in a conversation. +UserData | Remembering context data associated with a user (across all channels and conversations). + +Check out the use of `context.ConversationData` in the [`StartAsync`](StateDialog.cs#L19-L23) method to store a default search city. ConversationData is shared for all users within a conversation. + +````C# +public async Task StartAsync(IDialogContext context) +{ + string defaultCity; + + if (!context.ConversationData.TryGetValue(ContextConstants.CityKey, out defaultCity)) + { + defaultCity = "Seattle"; + context.ConversationData.SetValue(ContextConstants.CityKey, defaultCity); + } + + await context.PostAsync($"Welcome to the Search City bot. I'm currently configured to search for things in {defaultCity}"); + context.Wait(this.MessageReceivedAsync); +} +```` + +Also, check out the use of `context.PrivateConversationData` in the [`MessageReceivedAsync`](StateDialog.cs#L52-L63) method where logic is included to override data stored in the `ConversationData` property. PrivateConversationData is private to a specific user within a conversation. + +````C# + string userCity; + + var city = context.ConversationData.Get(ContextConstants.CityKey); + + if (context.PrivateConversationData.TryGetValue(ContextConstants.CityKey, out userCity)) + { + await context.PostAsync($"{userName}, you have overridden the city. Your searches are for things in {userCity}. The default conversation city is {city}."); + } + else + { + await context.PostAsync($"Hey {userName}, I'm currently configured to search for things in {city}."); + } +```` + +In contrast, check out the use of `context.UserData` in the [`ResumeAfterPrompt`](StateDialog.cs#L104) method to remember the user's name. UserData is shared across all channels and conversations for this user. + +````C# +private async Task ResumeAfterPrompt(IDialogContext context, IAwaitable result) +{ + try + { + var userName = await result; + this.userWelcomed = true; + + await context.PostAsync($"Welcome {userName}! {HelpMessage}"); + + context.UserData.SetValue(ContextConstants.UserNameKey, userName); + } + catch (TooManyAttemptsException) + { + } + + context.Wait(this.MessageReceivedAsync); +} +```` + +Additionally, Dialog State is automatically persisted with each message to ensure it is properly maintained between each turn of the conversation and it follows the same privacy rules as `PrivateConversationData`. Sub-dialogs have their own private state and does not need to worry about interfering with the parent dialog. +Check out the use of the `userWelcomed` variable in the [`StateDialog`](StateDialog.cs#L104) class to keep track if the welcome message was already sent to the user. + +````C# +if (!this.userWelcomed) +{ + this.userWelcomed = true; + await context.PostAsync($"Welcome back {userName}! Remember the rules: {HelpMessage}"); + + context.Wait(this.MessageReceivedAsync); + return; +} +```` + +### Outcome + +The first time you run this sample it will display a welcome message and configure itself to issue search queries for the 'Seattle' city, storing this value in the ConversationData bag. It will also prompt you for your name and store it in the UserData bag and display a help message. Issuing the `change my city` command will allow you to change the search city for this conversation only and just for your user, storing the value in the PrivateConversationData bag. + +![Sample Outcome](images/outcome-1.png) + +Subsequently, you can start a new conversation (In the Bot Framework Channel Emulator this can be done by using the 'ConversationNames - New' button) and this time the bot will remember you name but will forget the city override we executed in the previous conversation. Using the `change city` command this can be changed for all the users in the conversation. + +![Sample Outcome](images/outcome-2.png) + +When a another user arrives to the conversation (In the Bot Framework Emulator this is done by editing the 'User' field) the bot will remember its name (Or prompt for the user name depending on any previous conversation) and maintain the previous search city set. + +![Sample Outcome](images/outcome-3.png) + + +To get more information about how to get started in Bot Builder for .NET and Conversations please review the following resources: +* [Bot Builder for .NET](https://docs.botframework.com/en-us/csharp/builder/sdkreference/index.html) +* [Bot State Service](https://docs.botframework.com/en-us/csharp/builder/sdkreference/stateapi.html) +* [Dialogs - Echo Bot with State](https://docs.botframework.com/en-us/csharp/builder/sdkreference/dialogs.html#echoBot) +* [IDialogContext Interface](https://docs.botframework.com/en-us/csharp/builder/sdkreference/d1/dc6/interface_microsoft_1_1_bot_1_1_builder_1_1_dialogs_1_1_i_dialog_context.html) diff --git a/CSharp/core-AppInsights/StateDialog.cs b/CSharp/core-AppInsights/StateDialog.cs new file mode 100644 index 0000000000..c5e24c8265 --- /dev/null +++ b/CSharp/core-AppInsights/StateDialog.cs @@ -0,0 +1,113 @@ +namespace AppInsightsBot +{ + using System; + using System.Threading.Tasks; + using System.Web; + using Microsoft.Bot.Builder.Dialogs; + using Microsoft.Bot.Connector; + + [Serializable] + public class StateDialog : IDialog + { + private const string HelpMessage = "\n * If you want to know which city I'm using for my searches type 'current city'. \n * Want to change the current city? Type 'change city to cityName'. \n * Want to change it just for your searches? Type 'change my city to cityName'"; + private bool userWelcomed; + + public async Task StartAsync(IDialogContext context) + { + string defaultCity; + + if (!context.ConversationData.TryGetValue(ContextConstants.CityKey, out defaultCity)) + { + defaultCity = "Seattle"; + context.ConversationData.SetValue(ContextConstants.CityKey, defaultCity); + } + + await context.PostAsync($"Welcome to the Search City bot. I'm currently configured to search for things in {defaultCity}"); + context.Wait(this.MessageReceivedAsync); + } + + public virtual async Task MessageReceivedAsync(IDialogContext context, IAwaitable result) + { + var message = await result; + + string userName; + + if (!context.UserData.TryGetValue(ContextConstants.UserNameKey, out userName)) + { + PromptDialog.Text(context, this.ResumeAfterPrompt, "Before get started, please tell me your name?"); + return; + } + + if (!this.userWelcomed) + { + this.userWelcomed = true; + await context.PostAsync($"Welcome back {userName}! Remember the rules: {HelpMessage}"); + + context.Wait(this.MessageReceivedAsync); + return; + } + + if (message.Text.Equals("current city", StringComparison.InvariantCultureIgnoreCase)) + { + string userCity; + + var city = context.ConversationData.Get(ContextConstants.CityKey); + + if (context.PrivateConversationData.TryGetValue(ContextConstants.CityKey, out userCity)) + { + await context.PostAsync($"{userName}, you have overridden the city. Your searches are for things in {userCity}. The default conversation city is {city}."); + } + else + { + await context.PostAsync($"Hey {userName}, I'm currently configured to search for things in {city}."); + } + } + else if (message.Text.StartsWith("change city to", StringComparison.InvariantCultureIgnoreCase)) + { + var newCity = message.Text.Substring("change city to".Length).Trim(); + context.ConversationData.SetValue(ContextConstants.CityKey, newCity); + + await context.PostAsync($"All set {userName}. From now on, all my searches will be for things in {newCity}."); + } + else if (message.Text.StartsWith("change my city to", StringComparison.InvariantCultureIgnoreCase)) + { + var newCity = message.Text.Substring("change my city to".Length).Trim(); + context.PrivateConversationData.SetValue(ContextConstants.CityKey, newCity); + + await context.PostAsync($"All set {userName}. I have overridden the city to {newCity} just for you."); + } + else + { + string city; + + if (!context.PrivateConversationData.TryGetValue(ContextConstants.CityKey, out city)) + { + city = context.ConversationData.Get(ContextConstants.CityKey); + } + + await context.PostAsync($"{userName}, wait a few seconds. Searching for '{message.Text}' in '{city}'..."); + await context.PostAsync($"https://www.bing.com/search?q={HttpUtility.UrlEncode(message.Text)}+in+{HttpUtility.UrlEncode(city)}"); + } + + context.Wait(this.MessageReceivedAsync); + } + + private async Task ResumeAfterPrompt(IDialogContext context, IAwaitable result) + { + try + { + var userName = await result; + this.userWelcomed = true; + + await context.PostAsync($"Welcome {userName}! {HelpMessage}"); + + context.UserData.SetValue(ContextConstants.UserNameKey, userName); + } + catch (TooManyAttemptsException) + { + } + + context.Wait(this.MessageReceivedAsync); + } + } +} diff --git a/CSharp/core-AppInsights/Web.Debug.config b/CSharp/core-AppInsights/Web.Debug.config new file mode 100644 index 0000000000..2e302f9f95 --- /dev/null +++ b/CSharp/core-AppInsights/Web.Debug.config @@ -0,0 +1,30 @@ + + + + + + + + + + \ No newline at end of file diff --git a/CSharp/core-AppInsights/Web.Release.config b/CSharp/core-AppInsights/Web.Release.config new file mode 100644 index 0000000000..c35844462b --- /dev/null +++ b/CSharp/core-AppInsights/Web.Release.config @@ -0,0 +1,31 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/CSharp/core-AppInsights/Web.config b/CSharp/core-AppInsights/Web.config new file mode 100644 index 0000000000..d7edb02b03 --- /dev/null +++ b/CSharp/core-AppInsights/Web.config @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CSharp/core-AppInsights/azuredeploy.json b/CSharp/core-AppInsights/azuredeploy.json new file mode 100644 index 0000000000..bd08b87e36 --- /dev/null +++ b/CSharp/core-AppInsights/azuredeploy.json @@ -0,0 +1,121 @@ +{ + "$schema": "http://schema.management.azure.com/schemas/2014-04-01-preview/deploymentTemplate.json#", + "contentVersion": "1.0.0.0", + "parameters": { + "siteName": { + "defaultValue": "BotBuilder-Samples", + "type": "string" + }, + "hostingPlanName": { + "type": "string" + }, + "siteLocation": { + "type": "string" + }, + "sku": { + "type": "string", + "allowedValues": [ + "Free", + "Shared", + "Basic", + "Standard" + ], + "defaultValue": "Free" + }, + "workerSize": { + "type": "string", + "allowedValues": [ + "0", + "1", + "2" + ], + "defaultValue": "0" + }, + "repoUrl": { + "type": "string" + }, + "branch": { + "type": "string" + }, + "Project": { + "type": "string", + "defaultValue": "CSharp/core-State" + }, + "MicrosoftAppId": { + "type": "string" + }, + "MicrosoftAppPassword": { + "type": "string" + } + }, + "resources": [ + { + "apiVersion": "2014-06-01", + "name": "[parameters('hostingPlanName')]", + "type": "Microsoft.Web/serverFarms", + "location": "[parameters('siteLocation')]", + "properties": { + "name": "[parameters('hostingPlanName')]", + "sku": "[parameters('sku')]", + "workerSize": "[parameters('workerSize')]", + "numberOfWorkers": 1 + } + }, + { + "apiVersion": "2014-06-01", + "name": "[parameters('siteName')]", + "type": "Microsoft.Web/Sites", + "location": "[parameters('siteLocation')]", + "dependsOn": [ + "[concat('Microsoft.Web/serverFarms/', parameters('hostingPlanName'))]" + ], + "tags": { + "[concat('hidden-related:', resourceGroup().id, '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]": "empty" + }, + "properties": { + "name": "[parameters('siteName')]", + "serverFarm": "[parameters('hostingPlanName')]" + }, + "resources": [ + { + "apiVersion": "2014-04-01", + "type": "config", + "name": "web", + "dependsOn": [ + "[concat('Microsoft.Web/Sites/', parameters('siteName'))]" + ], + "properties": { + "appSettings": [ + { + "name": "Project", + "value": "[parameters('Project')]" + }, + { + "name": "MicrosoftAppId", + "value": "[parameters('MicrosoftAppId')]" + }, + { + "name": "MicrosoftAppPassword", + "value": "[parameters('MicrosoftAppPassword')]" + } + ] + } + }, + { + "apiVersion": "2014-04-01", + "name": "web", + "type": "sourcecontrols", + "dependsOn": [ + "[resourceId('Microsoft.Web/Sites', parameters('siteName'))]", + "[concat('Microsoft.Web/Sites/', parameters('siteName'), '/config/web')]" + ], + "properties": { + "RepoUrl": "[parameters('repoUrl')]", + "branch": "[parameters('branch')]", + "IsManualIntegration": true + } + } + ] + } + ] +} \ No newline at end of file diff --git a/CSharp/core-AppInsights/default.htm b/CSharp/core-AppInsights/default.htm new file mode 100644 index 0000000000..3b1b7cbc9d --- /dev/null +++ b/CSharp/core-AppInsights/default.htm @@ -0,0 +1,12 @@ + + + + + + + +

AppInsightsBot

+

A stateless sample bot tracking context of a conversation.

+

Visit Bot Framework to register your bot. When you register it, remember to set your bot's endpoint to

https://your_bots_hostname/api/messages

+ + diff --git a/CSharp/core-AppInsights/images/outcome-1.png b/CSharp/core-AppInsights/images/outcome-1.png new file mode 100644 index 0000000000000000000000000000000000000000..c62c94d59bb5beb611a8b224f873a4667232e824 GIT binary patch literal 134363 zcmb@sRa6~86EFxNK!Ot-E)d+^J-9m;cejhX2X}XOcL?t8?(Q1&2Di=U|JjEcKp;v=h$ulod^UlAfco+U=5LPyg}Mp^#CHfu5kVEV zwcnernfSoX$D8TI_4WJo$;;vgsjpu<1GfsHRmOy26{+~0QXs-}1qekIQAAJ_f1t-w z<5R_9#{ck;Z!$T*0Iglc(4EG9xBu$3U9;?cv6aTdVm7tmcsb!Z#Z|D<1R@DU5&A;( z&)a*2%IK$mHUGk)AN*g({yp*+M1c5z54}Zbr|omb7yJit;G>i>`XRi=v>dES6P8vk-r>yO?u9{zI{>#w~u$WTH7f{H6(okiQV-n)eoB^W^7(Vp{ zJ^Rd0OZtiZmpwhU3>f|A_xn!vw~1&NGkzAzhAO{^ea@ApP7Oa(tzMk}eO67lYyjiB z=bg8W`0s_(zZi|0UTFmXH^D0jMDwMf{LJ*j_IdRpif{f{Ie>ZH5`P{mu#UFk<5%a- z|F|De8!Ya{lAULNS;z7^efenk#9WJJG-mzGESsQBFTOQmluq7cV#ITA`tyGTLTlo? z{36TCPuilF_XiIhK$xkg5fQ&7u!`|t_2# z{T1EgjjbbX8omWngL2HkCH$0nau8@$n|c2m7u^3b+um;E7~G;`!zv54awaL0vuG&x zHW6h#2P$Lu{tv!Db%=vldDIEj{b4GzHy-N$5VoDckNkl) zabY*TO_SGqZlquYIpXweg}FtQ`wq>clz?YE3{ zT88fBPO=)eiyN#>n#R~2EXH^o`hN%v*qF?R5MNj?ldbe#N_#gUO#K(5keANt(tQ9E z&o_?Myb=b`YLrC@Wp3>assfUnJYfj~&G1mY;QT_(cJrvcoq~c(zJP|_e5KAk^tR~v z_Tnk#zet4Ev}@V4nzSQ-P3QOK4#9U>@uj2tcwX+t7VzN>3JTJi^gK#4<9t3T5crib z>%vg5+BQ2j#cDk3dMHN&=jG{u9aHUa^`h9tQQ&u{n9xlpW6i>7)XZRdFHC4RiLpJj z+|7X*v*`$*AlLbIy4*~oQhqN~acpkKV-IoUpq6h_kw*|1wB+jzRp3H$B;2fIves{Q0;<7r0t?OdM2XW-(2Kd7AA z?Nzw-5q5j+6m*Psp>1~xe7%i9wlUIxT{i{qHwjx~c7p+BXQ!0#*~e+EG}p+R85Ldb z1Ezx2+T}?hKAy-Ia%9I|$6nN4cxFfORlH6Qd`_Ie%(pBsdzx9p$=$H~@2Ejaa~b|W zD$yBC{>I}JulL#AyMe)uy%;5ESr6Z$y25_*lxti1{%au)_%(nsf`fxWQyF}o_r7eD zEGA><)$Q*drrS>Qra#lf3BA!3_|<+KMbwU`!%>F!ouc*s);d1!ZDq3CalIPkG_Vfc z7Yk|PYOC37P1JikaUghiHT!6M+$(8$4sKUpMJz8axaz~CO`aX1p|iPcIimfvd1b#9 zOqX;nOsTq}lPb(am}3iO9;z>Q(lM84r2G zso1>Pg7cp?nsPyUqw!-r4K#UHbdG9N#wHH?447)($hB&AHUrUM=@KyfW9jUFrJe z+cRwmHHUy4Zyxi%SRQg198OyQva!))&mtBZQ*&5vb+r>HU32(YCTWxThDCiA0`4P0 zj!S6M`}aa&M?-*lx{2`->6hi0-P}a9Mi|L-Su2A|uGX1X68ot<9KvZ_nsdd!IrQ_+ zXG=H5Kr<@k>eUFUo2v`3ZtrGl?@$3o0fB+0DZ`%2$;?$j2et(lNW4oul`;-qa8ga1Zl*zeg(992{KE5f3Y$S>piBklOG* zxLLDI??1ey4&teh6S(0HUkPNY<+!Dqz#luDd;6NH|FPK0Ss#gcXAC}{=5ndfp{=YI z9;dtNT$#FAez7r<%or*RklSCuxqH2MZ+Ew~VG(%mr>tH#e3Hfc`itHx4H=gXvoaLi z36Hd2BzY8R9PgnmtmNV*jY?43QX}8k!d7 z54v7LL%!~%kOjCr56Td#j@&lq985DX^eA&ARZMdSA3-xPb+1qEE$a<)nCj8pW)Zwv0|YTpfP@DPVYeByPp^+W66{ zeob3LztyvAraeFa#Ps!k_m&g5k(jWC{b!TgDdwG|?qISTd{U9KgIABGmf0rY>v`?7 zm4m){`O{t zrYD3Z5r<$j*uy@mjJYdeTkK3M8q@btM;oGA&6yjjP|pt7&E9giyf6i;9_XjS*2=Ug z5e>b_(n^cYtL&Zg4*S_nG@)?uvb;nb$U_amOB61B)Wp1VKO&u zP<||TH@VMarM6x^pQo{daMQ~X&40kS7)ayPNE4ZGa&~@Hz_~eNjJu3rvlDo)PtrEd zd9RE=aeQ1l)$U2VQD_ZA0{ODixRbkj$Klg0ygvlHJ|tKW5fLZ2^*>!i=Hg&Z-*$Jwu1?otv+rzn|foq!E~Qk=nq0Tbcff5 zs}Jg83IJYv9IHmtf4AW+j>jP!GZvSzJS}KrT1R}>sje{T>Fy+3ZRfAiNyp+TS(4`6 z@K3u@%e7~-H11xC{FVID!qo9V zRL#*rhlFF}1C!2{Z!)8zq0-}A(dTWw#JmnM+xHQN*8sU$_g(-U-wl;R*B4`)pevjL z(`CMXN7U!}4|R3tqj85H=&0o?1Z!5uQ^@uQOfBO3+dc1nCaXuqev-x;eOVhx>)HB? z{hO=+f+x(hTc|yG_?IU6Y z5!dm0ebssO_NH3abEc1Z{Y|b}zg}sme!XTik!5(H!5hL(M3?bH(Fr4FKF&`jUZA{Cd?Tc8TnRE2u$jy1PFrU^j zJ*(|JB$M2I=V{~Z1hve{YPZ$}m-2qaz~o5vep|sqneAig`vV4`N|!b~@|6Tqo#R2n zbelCpz~_rvcAehG(d|XlBfMwZ7FBupI4I#9v=o27VwgQnp0SS2gU{}bKK*(xp6PtH z`nn&$_L*87P3QSrMVpLfO6Tx!#M0_YagjSobPuRbV+Q)Q{kGF@`xBKaC_g;kVe3JDFZm^#==2IX5$&Pe_+?B-iN+<8wsTeBP;SFtcBDyt2P7 z4a;e@O6O0#V&53pS)q>Rc@nz!sQf9vcHU~QebqL_n`EW?=(j&@2l8}R`--K#*^}s> z{Qyom`R&_-0I`;#cH1NDs*D0xmtPP;yK@_Pumg2&kAoA8kT%u}`{z|JOSZP@j$}(~ zMzEK!*=RtufxO24iKEzYI>WI{H}1F|&1oxbxzC}<&$b<_ft5QlmI>pT*z^=Yv6 zRX!;L>VCU~!&Wx?{m?bd=Vu@7V86%Yroy2-guMHdWQCLO$#pwWz#*sAm6@EPm&;R&EYSAGx3)B4 zbQ%mAMx_8aQ6q9>FQDa*4qd~DIrct4WU;(4CQdBcYxEwgYnpk=R zrBh&a$P9xVAuQ_qC5TJDdvMllD-5?$q{{+-WRRB%xL?EF~=^`8pMT>c4-rwl&YI&egvc8A;RrtT-XG=q^R`X452- z>HE5ihBVHweaqDww)C1~CLh};IBni4Ki{gU>lEm(kBM=i(&X7cTrP7S`)?r{?rAs9 zZrQMJ=2w*0zP2OAsjCmO0qCzD0PaChqU-lDd(J;}Q}4un*X!|g5b3q9s* zZ6>Lu%B7k%CQA6pq>xouihoe#VeTvONb(@<{Hd&{e{3*RT~9T?KIn910q^BF-XYVQ z*xA7%>E;HW-6%gA2tzf$ze2vhS6nHw8xSsa-#}bwQc)1{C8%A#alP+`>@J7TE<{J2 zYBvYRkLAe!v%*usmc*o>R z9Yg0p1;lgBQ-T7!i=2Px&pW9y|O8 z>FJ)Iek2EVTYmB|#leBCPouvzxkEq>Fj?&cCqGO`yBZ`fve0fcXn#Ba7~>@!I_0C_ zmSm2e&ufkY?S0@%076tVi<>{EuaeSL|83?qp~Z4tEGRc~4Nd%5DaslJ4DVk0ihGJN zx$I!sI{Q8w<)K5%Dl0C0$HM0c7oRY?{#0Im$I7hWIW*6C?{CF*9A07WQx`3ho81s> z^(H@__FhHf_FPZsa1nA>xUR|dUJm0w^sSoz!RA#M4!d#teIanX^)>TU+v9R@0kJxl zckGA20ZzoA#$0!tAX|_=IAM47Oy2g{?*!ZWbiIP%SgPscx8aRud2Y=F{Wm z*KIAYFiFiuu&Hl+)C}!tC{uha#K7X zN|sh*VO0^1m(w;P^NsJ{lZ&m~XokP7Tz_vcbDeK|B(ap^f)!nyQ8C$nr}p;sETN)K zKRO!tXpMx&t2WlS_)a^G^8Qf2&tBav&=0`uy5VfNke}i6G0pPsRkb+rEU>`c`oT3E z18hAA&nR^QeJ_Xg;4iUwtQg+6d4}hhv?;Kk{S=&CjZ%smP;rRrbAO!YbzFI6_l9ih zxS8Qhy1vGBc>6(?PpMV%HK=VZZbQJAip5H*rE~Wq4-;d4DS2<>N=LZO3e_z8!FS{1 zp`Gh|N0XlCN-8{}V}f^|cw$P_3+%6F_p$9W-i%zmTMw=&Y?&FKu+*&4pf#qeOiluq?5Xr{9$S4HOZhS(iTA)?k9*uZAyN_8nShoI5{?EO5)qZ64y* z_1v%}fIUT2Jg-U^T(O1^$4JO~6Gr3>g-rbV7Uo*r!Shp{KRz-42VcfxUpoUEKuM^d zh%CNg&q~Z-KsN;09L|!0K&T4vpLoOys5Bn>->>|&R6o4GCH^l=f(`Ni1bxi@=zf@5 z{mw=CpCDIgO&0QU$%@sAZ&UO%exg0#aUK@rfc~H1FE_su#!7Ys5XK}P$o^#({~Zd2 z{QiGLtp2}4xyTE_KvBpZm&`0(RYi1_o->`lkH)R*c#veUf=D!QKdz_ey}yEYo+qzYT%vuSqznZ1*wO6U%0zYWAHbqkO@`H9>C8*({=Ah@9k>$)kFbTgpIhD6DFrb`I zOSXm%QR#5I4x@EkNSm?E?1N4AP-|Z5#=5?`tY3<=c8zY^hREe->~#Or{P>Em8)S(r z<@d%Y!}ABvG==&)pLsrdxvhrC`Yq)CN=+oQ zt$go;+h%6FErt=XO>h!y>5aF236R99Ka;uGk7ivY(RJLy+{H)VIPbdbZ-7h@ zNw;F%db%HugX%I0iMgj7iKjbMqzr$3_wFT53`s9g>mRCSwwDV5oqh`qk~HXM8U*ms z4usBq7w*?upa~xfdr`3$sY=P(G;|gXWhudIxVk2m%Rm_d2NgXjPi06!c^QeI$aV<{ zS*N_4NJ=Q?#gr8h(9R#+EmA4yug!e%Su~hkQa7|<>N@F= zVT=onNY602TRDf%1_)Pb5mH=&8E4z=pCo>!@Qrt3xAI;!t^-(U{p04`EbKESG(y+> zq+DHt-Lu?_mqKO~)VqlUjpnvYJy;h9eVqBxfke5&a$V~}znQ~SqL-5?xGcR;i+pN9 z$ev4&3Um=M8S@B)-wdW>MftIeBn^4)BFmZExPO$v)>~*X14B0hi_9bGUFMe(3-Vci zNI=2jiQA8Gqx@-4Rl@(#Afrl#4+G08({F5_(z{X)!9Qr~V-y~l&s@aq7tir%=bavZ z3(+scJ!_mywuzZg0mXSkdj}M>6h?|(oy@0iI8L9qC|+o?-yop&raq@j8pZJOZ}X2H z+!#`kU)!LDrVj#6QmIl*PF^a}gbR6__~i*k8PW`b60#CE}dgOfFes@R0IxRE&>K+3rUnlYdK9f=jT_)rm8Gel#QwkHG1F_3EG<%D`i`HXnZ#hs1%HJlyL+g$Ae- z4jj6$fMP?QDwJh#)P%Z7B{#%Q-a#Q)ex+4|QN7 z@X#Kq;nQ&I-JC@u&w7I*k;-Mt5z(yHeSQ?1eK;2{!m78C%Y{(sSrfSw+0Bf{6%Ys3 zYoyCy4M#KRKRt6s#M?b82uN!=G`bWw6UIU+sEDaT*L~ASCNG?Ut7|tulT%g#d_P!9 zQz)!!YR+6vd7(mV;dB#$yqNsTe=>pw_kyjMdp#S>3mZj6x|Y1t$(|uB7P#uE4%u4G z8c_g)kwjFCRo2nU8(l*>@P(l=>R6+ezBfcxBfU-O4HCz%w+J#*#J`m)q;8NNJ!L47 zTObQxQZwB~m_?eqR5(4w+2FyJC8c}}x-9#!|^lJ#3ScrNH_tb4iME`jJ zfR}nA{!TJ|jvY-LT@i%W(Z)RbxEs{s2!p3YepML_mK4uUq6>TXL+E)tgQz+$V70Ib zhF00|!FpM8(`X?NM*YgtIoDsf#wbTS`C8h~R3O~K(YmLM4sF{b{L3(I$N;FE$v)iw zM~VYB3a-Ii$NwmDa$y&ml!H|L8^=u>Z)A;wq8`4fSX4|pG2tRA2ZbE9vA1JpD?XBV z44k6QNx{_B^%hJ*!7xT`G1XLgU=%e*B#Pd9E&?j@X%j#)mn*rX@50b6ZYpG!SB_e~ zeb4lEhH<{4qorxSsibLOx>1Tl-fJcdcUEIHdDsOZotZl62YFUrLpS^Lbb>VwObtWC z?eiHaX6!hw2wg&T4Qsq~Bl6u? ze-lksa(30B=v{q~(XTY?WW*z^mIR?tQ1Z4L^SEO~o5doZ488My6PVS^`db(v+4Y`E-ZRJGegtEq%}V@&{`^h;J!>YP}H%4HX^-QsE_-q9KtjopO6`9agyi;sS;P4OvaKqLBET644#`mcbZ6csl|Nu$gXRdS1tMA z`+h{}eFeHGt7`LcooqreAkhZ1SAo3(7JYKCg&3;{g9r{iX%~ZECAWe{e8cYKY^tDL z#d_XYqc5Mtz<-T}ADA;H#4u0I*TLEyk-6R<85a~8dUDd%$77`gV9iUV?jDO@{AwAJ z#K>ORP);MPK{_H4(+i_xrc#zNM33joKOI~ttHvC2sW=M^S}Ocm*8b%X+-M4FV{w-$ z(+_;Sg)w0T_7+i@*8#R17=qG;bn-%eozhkqA{m8mw2%;pskqe|;qYH>ybq3_HKE&9 zhBgqv&e{Z^CJ}6;XGp1K7t`^dD<{48+6nk}R_0pqonCcztqlcXH<|#51*4b-v)?CF zfk9M@^jn&Mf|{EMs1|Lw^Evn6lxMqhxPU%fy4fnN;lJmLR9%czvyginAz9p}m@8S? zTi^$BnV2}2vl@eSoqMVGb zOyn{zr7!B3%oN~VX+CM~l0ceN$EcDu<|n6^7ox8h$!-;|2!sjIL4Vm)PySiV*})|s z^?k2DfrF9;jJn_q1BS}@8C0v{JzB!q>9`%6>> zq60wdD@{@RoPU$E2H0K;x2RTVM*P0Nj(%v2jPD2`cXjl7Ucl^EKt0}C=-N)quOu5N z0R6bThte0nW`_RNb^q-pZxyUBA^v}A0qo&f%;w@Z-R9yaH3l5`lGLTegZ<+ngu_{n zsw3x2{4BIshv_8JTHtvp?}w(ZoOofNS)+(V2`u3@NcXw+xFV7ZgG_|Q`+DrYXEUj9 zW|>Kp8TO@lE6pPt$W4qi zknr}N-q8fsn>3a{Ox4ss^5Av#vcDfwrZ$O6Z}jyNWwVDJnq02&)C3rOba}*BVy32_at}*S1 z7CUGzN-~t;jZI^X(Lx5>i5y|c>6i%+qP|9IvEnrBNP9ZM(l{p{b~XcG2{l3Bp2s|I z10ztwE1WvJdCGnpJT{PN4RHoZ{tX04meGr)xSyOz)Yq;L*ndxEwir)u>9pw!7ZqO` zDmgE#*U(hrbC%X3@cLmg5GAgtaO=KhJEfq8`oj@Dyc6!KN)BcHK=qfwO67$_f{IQg zy+d6Sjkp!B{7}3^9ZHVNMf?ahE1Aq%zI%E+dGY>C8tbSA5?vOKDusb|5puJ^Y$oHW z9F7PJxz#>93C-K*34kq|DHZiCQ@MoM)*5FHtJzIZCjx^*ojEA7I5Ggl<3x(kRu4ml z%HT5e-G=)!FZV?q>!v%bbwp`ZE)O-EAbyM%#ZuZ{0)0eSfL9?XNoa8|>X!vVNjDrx z2FvLsXm>e@v5X3AWO`c}adh*UFOqUDt({zM>d-(tEkrcxt0o%EW^jLSHEWecggLFe zW1qfgO7Hb8M3GH~np)AwI?`yQAgfh<+q$uF5h00HEq{6e2?^cpfLek9-Ck-Nsv9qX zHa%8)ao#_D?0Y42XcHbtslg_Yr)O{K-@*oq^wi=o6O99~``jsO_s8G-k~z0VwEsU! z4F-O|xuvoZkBq}}pPqCEusAAFovVs#d}AT?4Sa-yPlDmh6FIIMtlLTkSwy>T^hsC1+KdIYC+ zAxlf5F4M#9COa*dHMPRmbG=}ZmQI3bLcJe#(s`XEqY2{)>PY74V_gLiI2f}M6b-yL zl97dnx#iTJQIv*;adPw-$D>c1A}_@;w1$Rxa_kw$Wm~81w={Lbfl~B@nPy7@+)eI3 z1NQaTkitLF%MR9CyRb`!=QBFHFfY9sP`qhVW~}@zYE=$dN|>H zaHt+13~Oo28Q2;pfxc?^k9_`F1K3b;YK$jNv!dG%)eAic}FImA<9AE`+9mz*Nit=84OvI z52isUR&k9L3kg~BuJ6>_8{NrqvvSohlwH6yXA3D`_bX3ZP4;`aWZ%Ui$LkZJrRob) z_leKwLrdbNi=d&X3jM_nF#^4;zl@)>cvqwe#?x%eJ5JjFdVRTY?r7nE$q`| zwK~!`;)i5{lE#MV~X>9YP~DxX;*GYMoiV=1;_Huz_ZN9 z9|LFT$c0G!_|K0$ja3B(=W^Z!H?1uAjC-(aZ5 zhC3Xz%QG7sYE!pqn$wl<^~ZUFr}<*YcHu9E)G(m3ASMS9hnHE1zR21KKs{9N_Qm<2 zi|&?s!#Zx+5z;9J#F31(8hAj4=ht2>SXQT^6tZQP6c-0-A=3+9WcfTjey_3*==Gk5 zHSb0T9%dE<+wXnxm4^_TZ*^Y!f>gEf-tv`jcS43u`psYOb8%jz+5u2?sa1|CEP5$5pGw5*?6^Kstk1=^9I*JU| zT7MrOFBP^$`k?$<#%4l|pmY|A_RbB53H`G-Jfq?~1;39pbn={dzsSd{>qqSkr#XdU zpd|!)kpG6W1HKU-Pj~h09!g0JTkp^@-LZhmnr-aQRjt>mDdmd?m*KxZKfPm12DNOHw{hf{-Jd;i zVmgX9p)X7jLTR7XK3ae7Z+k>?89f|hQRs~u!DdO?cLeZUwkC$r2qdbq2ziMDUDzC7 zHdFqg(d-PDPXas_V%b?P#L6jMHofiQX_2;46A>StI>DxElY%Uaz6s?H&;_4pR{%%74eQEn&S)hw*~tlAj+TN zr|(q_wsDj39U**D+6VRS?@Zkp*tit(bf#N#F3CgI3g|=8lmqiylb$!(5pXrz(?mcx z0S}hm0Y2%M`Mgu=c`L0^(pd;F=qXao9^y{Zi01LTLoEA~S)XifDB`|;(ps+96 zzncJL+OpW(i*ETupE6~yJYIH7S*cFAzj%iO5G4ZKJ4}o)5~TE06_joTB(^Xq=p;lmo$oxk@o*Jk#4ZL=s(V5+|4#1d0D|;#ATGO zZ+kNIZF>e=1is&oc|Wx1UtaK8Gr`KV!1cGY=AUvurmvx;K3WiNI)a9;ipmGX<3P2A z?Gz|+8?j{7t=LQ>@=-Q*9lwrAS3}Lr8`vz*{WIj{|H#x(ZQa2Z5Wl1>CXzE-~XDsRZ4A@{fuG;7bv1jwJ!!T}o8~(0rNm1PF zAAUS?dXMGWiAuL)JwPQ`^=#v@g>H-=DV&7zPePn;lg#7o40kA( zQ^G0@_uuk#LtiJau~b2~jHFV~z&JmRj^mJ3CC9gfe?_2L)R@^sGhmU;0A6733+uw9 zw7b_dn6;U#u{z^MMzuiLwdw%0uMW$Kn93#xs=tgfI~ac@;bm7;K70+ZT&a*KptFf( z!e86xO5cN_vk%BLna7=+jdR52Xz>F-)RZTEyEFKH zVo(E@g{4aBIo>)nu`9^0JtuoijwryZ%b^AU4ign|%g*vv`=d1D17)M+^U90;atML4 z156r(;|Z*JoF~U4nhbb`?g%wG=SXG773QyFF!m{HN+i2*cP43KKAp9!27%ep{7d&7i%-&Y z6_bqwWI_M6gEVH)mPg*hLk~NmO0yVe?M>Hl?k!`&8@W84eBLK&KAnE_?^i1a=uw|+ zr{99-LSvW&GnR4Z(StVuObha!wDP)l4vR!Ul~#1i3SsRQd9s&ebJk(mdu*MlBu}jT zcBgxM9SK>5^C}M@5;m&g&6tg*b(FUlrsFC9pt?ms{n;lUdqeyZgqykaCN8gO>Mq6O z{&QDw0Etx^x?geOV4SC_vhRGz8k34kz{OCn|q24!6N||;#HIFQlqbQa+N61~{ujNxSV1_FKN|Hvd zFc2D;l$?jPpZktAS;t#GEjmC#ruL=o1!tivn=g54H!tlt;r>w(luMPM?fj$B#J)6qXgt!U;Bu=$b*zFDK+ zvH+&4LW+_1%j;Q@A$BZTg0H`lsdR2kwIb7A>bVxOPN>*MdoCS$BBd5HIlB3k=xukn zCodBo6l!7#_!zSh7I|FOdio1fmx4k#$4J!hY7SL$ftg(T&)Fo7*EzMXpp9A5~e3R=w}l))*M|1Dk!5$4`ZP+AWb z=_^)P{8E9`YF+*C$ZZV9^Z}Ap2#+zoAn}$}{%n58cTtdqOiCmDuxT!2M{5^xw8H9k zuYnrg&$qD)h0B?mw=&9PZH+}<7IUvy&1bE)KT{XDqCYoPR5h~AZT*#@H*GQeDLI3C zIWqjZ-95?+ET8puPN1mfM-agxum*mk`|^~kU1_(RxnR2J>h4Trr0rhqRh6cS)`%fF z7E^WHla7*?H%R+jn55^6z0NrmpKrGei^&25`=tT}$piafyS}%%|J-r?ar_pY?A%dC zpgO$#6V^)<_0C(2=F{fzR|rg}eh^EzyQdD8AciVCg}bvbLBE6DhD|y-W`moKfAdn2 zflhkLvs|^6^yBEy!Ou?WUF1?mL;0IBEF8slr-A`)4P3)3YmBIitEo1?{SkX;T8*u# zwo0hrUM*R!srBacHXs!>O&`KJ-3ujLf*9u9BD#t5TJPvV%gc7wL@E3?yYrk-#JT? zV)l`s$$Z4rT1sb07PvKR+-kDu;klu7Tx0bLUul6I}#-iKLV^8-@ZMnC0%(v9-#6o+_?jLY=Ra0Pe2XXf}LaR)OGx zlZ7N`&f1NLL&Y$P+m23NsfCp%`>4Rb9<#nVm^od_@+9<6|{! z1%nV8lsY!+-PNFM^YCI!>iG}#lYZntWK?gOJE{pr`j3jbOoM=ycQTh!ibszPez6Y|ZJ}0PppSWh*Uq zyiq_^;c%T`8aQUx9ph7 zVrN7T>H^0#H*_x_UBCA+AF7OVnYh@yjRV@7R}_!?kqsn=YO4b~heJH|CcE*oys@`7ce! z&8m#s9E@49g!?V8%rK;gZEy?7v&sNK44cL++4J5{^n&_k-AfVP?B&A~7a+;xcMsMUdhVr?2 z=JF<$<9_pGJHc3QI9grZgyeJ?1evF88+D<)+?A-Ub?=7a0a5k@k`l_lmFvKt;q{FD zo9hjc}6ar_#R0yZug6J?RIvsHX& zlN~IeDeaUu$!{i5Uq~9hT2}mN%|0EG<8*t{A!o=>7*5P{A#G28)3*Rh+tP13~?=46D&)2i5J~oaI}!>g87!IxVg6w`eFx zA+MR@OTFZV){!IH3a>(QZVn`8;H(~ zuPHiTP}HknNWPI~luo|tpqzu7(@lyCcJXDU;)~CVDq0NPNii9y077hmbjMk74UY}3 zeG~lzPJcF?Ew#NiZJtoO?=RlnKOxCC<4;uI!dP8-8{#AMtc|9>9?H-;O75Zy{dQSO zT2@Xx8OV{nlW#u{q&Y=Mx&K%~u+kh`yCphsZZ=Lu(Ibkm9A@!Z6sMG%=F-=7bsRoz zs8exHxa|%E0!jGwXmE;-ae>M|lz|-{(;6MaMfa{1+et7TFY)=50QRy(r9~p`o#R}G zmgiAy7bF6`Se{T9=bde@#;vB22HTaEH z3%j!`Io~4yGAq80i<$~1b9a~5L6iBMS}1dYJ=lWAq13+Z>G6!UE3+l6qm=TM>yUPP z>v{0hWuAe5pg`I3!>#6^%tWO)#dFGfDzK6}(?AY}Jn-?MgBp&`XNqtxa~LLFL(OD{ zXtsAcqm$Gre0PliGo3UfL4TD>_s`4YtlYL)C43l^6RZ z7hBw(6vHJYED(67VyLitGv5Y6Psy05yjOQ`(j$HFuETMiSC5WiGiq4Jp5e}%rZ82+ z`od%YgpSEc^hec|^m5>Q&vZD#f*#dX9*TfUXxZHD!Nil3aVG;idbRi$W%{}>Kj`=4 zT^7scCO0>9{<%yWS&}s|esLmB=pQHabLdWM;3nO3No46J^&2)k+{g|Ktg-!4U(6P< z|I-H(P8buW(SgNdO?5A0=w=9qiI^+tV~UR0{*vA4 z4^JM1Ko#A7opOBZ^kF`wd9nPsT`}!A89L@@=Vm`;Ib1BRQC{JOG$VF?8~;ELQr%;g zs?5!-c0Bf884hq`h9ccL=q}Y-_4$_*i@OawKkXk7o~%bG zLVTt%h$i1Bq~hX+uHY2cYWS#ju2~dYU}8%wY;^3fYGXn}>xXmcu2&`yf9KD=y|$74 zY_(l zjEq5ShmhZlve0d4^BBqfU62CCVuS3ILqUQpDSx%Lh}Cmck6MWwtA&%xYQ7(DGy3OG z+R65YsBB(HM?PE=?(BxAC0cUQXY*}d|1XaH{BpW#y*=~sE!%sf-2|Fst2k`kq5E3H zsF-jlPAiNruPO`YU+Y5w-puJuB*x5+W8pbCzI*yT17s{+I~DWQ6f8w-veNaZ4IVHx zy0^BSMDhpN4TYOw8;tLC+}1jS>5cR)oxiksZt&k7`=#9g22R_Ju?z9m$<3E_zBHj> z#tSB89sC~nOG_3T3k&1hT~vpg=UObFBU65zE3U$0jPY87{@^zY^Ipa;K|+B-Ls#Thr~&FD?f9Rd!G}z1pFFfA9p{5yoOeS#C75eCQZ81D=%kXMZAx@$=CNtJ0pA zSE44&MMd>fle1)8Z8;iMgeBu-@M$@<5II!Drc~;ph-^{_@)4FY0pkeuy@D09@b{iE zUSzUG-DE7cy7o%a)~ZJ@NHIEEeL)Lhih}rh?&KtxP-l%1hRWRlGLr>71r6YIzK}p2 zJ$zBoFR$9t#4(hGMUS)$E&0fGsk{3-RjuC}8ywk$m`4d0vqc(6?{&y12tgxM5A{{- zU&yavg^W`?D9dje@>&Q&78~E({)%@Xrr(sjdqZ5xf%71lsbZ`L6OPHk9d-V;Bk+}I z%*xBU;-_@G7_)~xDzq+C!eE~X1$lgq;!x(d?HbR$hmaM`y}Z(;>And|%SlshOf=}A zMX$!fNak)qcTqktm^YAz4*TbKFuMvPPeXcq?pIi%qna9h*|ZeIpgWakp@S69(Q>#Q za2&KL-hXNVg8m_!UHG4nzwQLtF&7hbl%_j6JczY1BlSa1t-^6~fbu8-j42rHIQ8K2 zM=w$6yIvH$@G~Y2*#&p6O8WbFwKD_vxR9~jG{%arISf64hoY~U=g=|(f$L$;X=PR0RKr3X^!m^1DtLX^lihBxQNG|FBzdlCpPBfmBASL^;K6VOvB_*{iaUQX z)K-mDh_$E)Pm5EF88swdvl-gIxtYv2TuORU&%WxlXxJ$$Gcy#!NF%$mroCnKwL&Dy zfQ~>l1j->=P|;&rQ=2&&@WF#S19>X-1J%2V;xR;Z{Y_aE<=}m4a+o3_)OAo7ZWxHg zv-}37RHbMx0bt@Kh1kkORh9OF(Fpk>=PfY;?5EFQp6tG9ip+*_%pLA`(P-T}7c7&w zue^-6U#0TVM&)D*rf|gM3~{~HWRJIOa}KMBKJ=9>U*6i^VG%6P-YQp)@>bADYZm&0 z9T*n3AgpdJDXX^M-Ui#kEB5q9KB7aCdii z2*Eu_aM$4O10=W;+$FfXySuv%fx+EvkUN}nZr$G>@4kAki<+Tkx2)ZJ^;+Hg`+7A# zOw%n;SEZ@2IeN5{d3lGRnzkBIm@>Up!Z!DFl~y@oYZIkPp^c%I(ih2HqM1hdw2v># zz%fE$j2{BHy!#0?ANXGwb%d*U%SUBA+&$)*8qWimhILX<|7NL#!M&?i+7xg#dvEs? z-yfv)3HL6(*ZfX;r_X>>k)g;ykx)bNY&GJl$FkW?d70^z2$OK2Y8L(B$BdeqdLW+n zSvnKGpmKWIP({BTo0I1r29pe@`~Dz-vjq=clrI|Zw}Ve<58(YhX-1%gh&4LdA)SMV zAi(`JL+-?N!B#)G6r{hszvw;t^_1|2VIe!KCmG{2J^aNAL7U^jYc*f{5vkqpYWn&P zrMC4~0Wxwjht~C_6IW|4e6`Y>#Ytw7RB|>NCk}RG8YlVd{q!-yVjdKV8G(ZjIC3!T3R(0i{VY4SnU#I_?7lqx!w3 z*o)Q{eYg}vT5)$oUbt~M4Gz7;A^l&&EK;=Nr1=cdPfZ2egPi^Mar{>wTJ1L2KbeaC zm+-o~VMme^BFO$r!C8K6|NH;QFCw^T|E3s;?Cgk;f0GpXw{H^v70*M{xC19q{U9<{ zhY$Pr@{qoQ-u$mdr{%Nk2srnHbc!9n{|Y|s0NOa7ekT1nmHq$K1Pu-OfB9!%G2;J| z2+iW78s#rY%}H)BlY}Q3|ZdhnvZxZ18ytaoMiq^a;Or7jS7> zSNObz9*^UzW!ApEhuwuNk}@;%xuRUlWLr_r&Y))?OcZ2A!xVX4D5+Q{A)fm{AGmZNCW5GOATwb>XU;j*@ z5yoFUv^k&5g!bY(>NFUQ8?HR*l=Te8I6CMIr%Dya? zlqFMyi1R9zwNrnm7DS zbeHD8>Dka`o*{8m8GNU$+1+m;8GrIijGAymOVvad!*3%58UJblZ<$-Oj2}5QGvfNt zX?4>J=gi^W~~h~7r=Zv*xlE*-9Oa=9@llAB3lGS4%?Bmzol0HrVZyh?u`~@zpjgWp9}^3_d=WY4G`{%WPDbFC9rP}bSvnTv~yZ?bvg z&L3;`GoMS!K+ev17v|Z)=-fIcd#S7P3U_pJpid+%y_0Y2-YQRA(#C68SxzeXZ5!6L zR|>y5Tm8$2*8b<(Q`t^{+3Pvfr0^?4^z$8SruQkY#7o`BSH1Y)8F{CBi|Iu2igcp! ztdf$FjHt?QG<8=OrpFIGfA11m9-p~APU;tNSZ$fQpJ~6=YYIH=m)`qCPvt!Ij6 zRbg*__yrT<#I3rlRc8S$@p}xj_TF&o{aCep^L>r1bj>2m!`_aDx3*@@a&Pu%1xcAZ zZ{URM_32bVN&5G(aYVkvuE?!p+Y8kNjd%WAjHCCrVCgxHt){;- zqd($)nBV5neq_91(214Kx~j}p95kt-w7+;525?_`t!y~$L^YN&r1JRT(mRGopNvd( zW=KD*cvv$O8P2XyiZuvFa#dItjIVy(=vH@B4yO7j*dOt1O_5ewo-XW6bE2{~mc`i8olyOboxTGxK z7^LgJ;pkqQ0zG;i^$s8jM<*v-9(xjqp|f7D350C^^Q{~ytz=7*-tZBrjv4B#5F|_+ zo{VjF`T+#j>5m@&nK{{xOJVgP^H*pJWGU^wGcIuWdKdMvaSyb@i=NEmhDke^)!lFI zV!j?h8xQSWrc;yN@PWBMg*`$1=sjY`1>OpE3Mq!k@--`)mO zt+f+nJIuzH4Uka^>kBpDg-&2v@BmG}XaB;9bxX_fS^OE7+ZK6G&lw6WN;t787OB>K z>!L7ODYb8MBST>cs%_15aXrcPW#z67|G-NR4rToUu~FdFF1Gj1HV{jaN68Qwkz-`I z`*L1gpVedtl>ixL!w1Z$uH*1Yq0lL~jQ!T$@ceQGq-Z~&J87>JmR7Eb3(nw%A#!7( z*{BJLmQbYr5w?4YU-?I~4&7HCO5f+4wjcQJ1Jf)20q{G3%@xZhr}=OJ|3^!2suldg z`SczLR-(`W#EFf*!j)9Ke4*oh=+L@W`C)x`p4}(UVy~2!3E1`w=CJl=GMMLgt8E5# z;&7EwYC;gQq4q5cYa=`nN4`LA<1{g=WU_WVa-B`VVHw*zn9&jS$eX%LR zY_@A|fcpmuOMf$k*3%6Ed+ECmz{S)a#(0gb(8whZFoOE?nE5Pw(A>CfcO%E718Pqu%ln+Wt-q{7hoaVY6nOIlY8vSshz@_R!DquUDflXI<|`Bx_DFJ*j~nsq0i7%Co@T!BM9gdI!jSnyZgoY^ zis*lg$)4P7gs(x~44NK1$Vi;B2fG9a_S-GjQ1bHfMiB7E4#!c?7ONC))W<$tY3I0l z2OBIysOl-E{KWiFDC`41J?EQtRR+dT9;N2&Zn~mYji1mZs;MgBpT3Vhc_3$Yb!@mc zYh4%Qx}eK)VS^a;x(iYZoNdt-QQv7^kP}ZZZ{C7mMGS_`<+NfTtmo;mA^5$-Ri@qW z;IrJ8o#r)9Lo1-?6~2JT`L>yI#!{T`ni~xMVB2Whxaru_mN;9wck}BR_f;=gu{OUf zOfy%gH^~PYJ3V$xk~m^BC+*C9pVzxu+oo@D&}eylJ;Bh?ezdldJx_Owl#lk_7=Pjdqhs`aZ+z`rhI)GVok!HrR}& zFV`{wg?s_?Gxo?fF$;LLa3xo2SGQ@ER}0w2#TTD05^PP@#`*zw-P&zW-Q234{y#-d z4{_Tr9<3to9gu%b{R-p(n3j4R-dI5P^TRY5|4`5LzUH-j=4|6T?yM7fr6OuN!;016 zDq$R6b6zFXSwaHdJ1^L^?$hsF3<9@fS6{mWZLHi++i8vmgJc66^q04@<^SOfc~^HuPu#_G1XXQ2CC2kR8}Ff@cVf$Q_mqVxw`P~vWt>w+5tqvF&yPF=jh| zJ+OD;WWB`(nfqSw-gj{hFn{^odEWys2AO@F?~b&8rnN8<+5wXnUXIn)X!gnhTXWOdVZo8#w5FBaCO31mIF>REMS$RPRQ*(do3$qMd z{`?|W9nGONc0X%Z)NCLPZ`+F1wS8LHk+oQO5K9$X3bmY$tQ&gI7H%ai#h>|-Fpyy_vH-R8G*S$dOy|33+ z(TPZ??8H^{?lRcjuPj1}rg9qQ@c~-fg9TBh+B~6&74+oAZ|Qa`M*Gh(E;hZ+;(S&( zb=JAl7lo2T8Z8kfJ8#&N)*YF#-9q<9tK*7q=xJ&T6+3;N_kr#F78Vxi4gq^~ZBN9Px=e*i(hn*GG8e z;obLwG2O$GE>@BmY+FEQ*A`~fokH$kOzl?vLOBGTV5^bYH|4!zj3x}NcHtXRTV`5K z8J0j6i3aAYBL{6S3;c3=ZJ}GoHUSYq&!y{p(JuW^9qw1+65~3Odb^%Isjh}!?&<{f z*dkXL*MzMp+@6n=CL%NjjkB2Z9FIO{dVAq<3qKL_#Vc(2Iyu2U92FN8W#{BPDzgOEdR2$_gmUGWMq^Hl0lu_ zEwpx53q!-#ia$hNC;V|dExjVXp~{g;m}^vPh6=z{ZVdf0e4wKy|#qHHY8c(%eS8`-_C z7-up3d-W+aGL)>eDdcxdRA)(qr#gq>tu99!m*iBTxfK=QhBxL!fs~UgmWnZLcIS}) zV45M!faE8yYL8Cohwx=YDr*0;C+xj>YfxyRUXP=za3c6KuIuZ!g3dcwdY@v#U_bto zuO>PS3H0F?frw=w>Nj|jBB*I&6n36ZP%R+d0DdxdsXB2nR2*wv_2UNGQ`Zv;ncZ3Vz*)%KgO0Pkb=IdVr7pq^ByT5w6Tw*5u|*&u^az(C zsB4nIz1gGRI*u!OO)u8d(}Tn3yzlcW#P%$vV8s`AW?q?ZxDAaWn^>O5#x$gTRKC59 zy%lOHi7ruPu>q?mp$RsX$SgfB~mw_JwTBI9m?ISwkD!KEn<|vEDQaS|R#s2RBH`>F)ck zHb2t?S-bbbFHptq9>x4#_8u&%I9u`%mlvc7;WP%ftxhtvGN1hUDc*1(sdLb|tmO(V zdxd1%M3<0K8_Scw0jDuO)vk_0HNGa1J!{u_;NC-`McLw@u>yK9vjs4B0`>^5P9a}V zvp+4`YSq8QvIUM(R~I)#ac6p`f0^gHWH@3;?aCfy?y=#TZr0}a(aVxGofQyzbr2#Y z52Cm2#Jf7HI3w*cd9R|%R~d~byXyxhU=Lz!dp;?o(84clj`-*Gons%w5oOG3G3`7I zzQ_iwN{h`R>nzvvra>szeF62!a`oxX6Dijg%fH-$JA2s?&_hCGjrVs%tN7D37^z6Q zk{gM7foI4;*Oo7ZN8xr0@RQL_G%XyFa2DmlO7x07p8i z&fwX~w#YsfVuivFad0dt4lO##a#PiA#6i9{0&e`S2Oyi zYWe=!^RcFpXk?71+4=t3I7d$a2D@f>vU$zO3cP+r+fMkrz7fV)fP0aDb~$ZceQjqp zXwf)R2TrNey~I)!tR_GZ;>&VkwE4U?=EBFyZH=msgiyO2uzt|fBKT!tr>u0J&sKm^ zL;7?IePij)qr*`UbD1dW%y_`a$)J|&W7@F-Hdiei3&@$5bs2;U&@%^mU%-7fCX+gI z#A{FUyx#(6U4Ri=(gl*AJjm}IZ4jf^d|qtn+dAvW?!}c`(W||0xU6bmW_UT_BS?Th zMXbem#QPHhQYDr2v_jaau+mJu%1j4sAsmxyYYVeJ^Nm@bzoudu5hsi|J_xsjHg=4_ z)R&9-F(1b!ujIpo+MQBXLmP;LJr$xV!hgikzYX1z$P7y8aw? z;cUI&JMA8Dbi2GwK+1lit~4w5d8MyUmv5$5Y+qHcZ@B3(TV;g4eu51S^2E_%5V0g6 zjP^v;NCyj1W|*<4=LeRwk}cHmxMI)O2?a(TJgrrZcx_2{j+aYEfXD|c7gpZ-mv$?8 zN|^LkAN_Y}>k`o-i)^;jrOD(I6y+|8ww*^cC*4Tsz;fYN){xlrFVhWQzt&}Ul>Kyk z?Wm7u)jYP=ek5lW?8HMy)A1Q}aZbCyh!$>t7gre6p}rxh43Mqh<&Tmi_VL@6LVvDk z2}l3@)OOzEB*uGa&%bKS1~E|t8t5%-Me{sF-iNqbXBm2=igki#(CCH>>DB^#WKK6}QjavhI)WnATU$L6KlrC^-xq=3d+qV zcG#o6JHYv8!L2MVPRSJ>dR@0`aG(5ikQSkxAXzsmt}z?6=DePd!355nlwhVZxR?U1 zrSaVH;P+i&Lv-q5-ASc$K&$yKXxanHEF z#3e7k{u?w$%}lHj?5EK1RS(qtSjN$Z4eDGtF)^cZdh(V@Or7QV{#Cm+(RO|`eWa(8 zTWyO??Qts=dXMu*r*qqk(OP}e3ttpnk&{EXwTqePw#!5MJPFRa8CJ`N%S$Vj=7a8| z&>BMBgY7%;@c1Zo`HtQCoOkL^ERLn#lmY z+mpX~o|6$kR%Q101VmofmIH0)97i7v^Tb+{JM0lEJHc$Bwt{=YsM-zIf5b<*G#EPT z-Jcwe-LB7k;i=-_Xm;|wvU+FOFzsA8PhfOL{&pP5`MhH8sxOBONOa0p{?YwGYd7w2 z8BOm68cvY zeYlKte%Y_`Y7|PHN|To1RN0x-H%@#RX@~mCQ;NA-&_1!cOnouNDd?*Av+#E?F@QiD zK&Dq2ZELRIz47R_-9LDi!x#TEg|4l-@O*9^`w0(2tI3_$;=sbI-kX^D`L~L(0x28W z=f>5@b=yI+TEluR-)9J>IA(Tr`=t60hO`|mlG59EbX9G%!#6X78PBWi$5vg58RxiMer-WipJau+d56DbjrAV$$o;xMR6yXEsK?qWL|&*pkQFcl~3ht>)(Sm<89h#%oSKo@tgVu4E9y8RD}z{u6GC{kUVcs3ZRf049x zP*_nDk-Ue|v9<&y;bO4wYvH8A>_q3$sdt-`+%9mC_&YQ~A|y`Z4DWv>9!3{#Z{mGX zq)l*I^abd`YP7sV3CjP$KVmwsk@hy*VpzX=`P>u}Ogy0+NVqab#pot1f7|~{$p7ct zezG7PazF0?ON8+C!Ibvzs9WQ)>tKsNzke+Qek>Bg<4TIYM}rSUez@oJ9gFLg{71+K zS++De6PxjZyu9P8a&{a5;w&RPb}jpGaijk zQvdD4Gl}U5j)gp;w=~qji({wHMvp80A1sM1{67%RU;iHvO`dFZqck}K9Iw}c3UUvi zv8iy~^9FIo_l%}87bVt%_W*-9{BsS4CJPfQ>kJaM72A4RS}44Thf^m6X{?eow1!Q6;^fe?lbZ;I7Dnue< z$iWD2MX#s6biREfD*X?5_}?ldQC##PJr!ddQqQV>TBmKVC7=A$fJLl+GF!b+jHc8? z#J1g05+awY>$~-&GBpIIaFIyvfM0Nh>rYmKeS0WMdnktQAm%V>-LH41N=V-zxHCmw zjECW)TQamkqjr_?HxL4CG^7HPvm@%rYUQ|LvAx7b|Dtjs$-ctR#AFNH3W*@;S?F?#7e6;^}`evgB~P3oX=4{!}|Gwy?k!^sEyy zXk^%R0f%^kAs$iwCrVjYcQWMRliYCmAnwjqfA|b5cH+fU-g_AUl3@x2us^UX-`p(D zm-zwFi)E|G&+!)XWKn~UgO?NAHgY4k2FY?9vdExCmWW}ofYGq|k9ztcEnoIg6w58! zp`NJNt7*}6)~5R#txAippwFQbiXnYESmrOpx|!*%jj!v2`UH4nrXKo>n7aCWsT$R zZF_sYR@edNF+6#B@t?{-{GbU>smv9j9R-5C%G#51;?a1l@t~J zSYs`5%1cdaDIh_Va(C2RVeOzdFdzw*Y z@$M}eezU0zD<0n)-{Mw0Z#F{sUfUqQ12`FA`srz7`#oPnI4STmWZ}9MZvw;5q(8NtF%Br^(Yb9Vuy7sPQcnjUwnJftvAfz|WKvdk6jU}V-y|>mWJty z`mGvStGp2{Vz`Xf)IO7+B>R&Bh=`3BRHq8H;gjl+s26M~nR>eO+g0|hudddEgk9V9 z;*r82u5)MBV#_DuNNq*lhL+J@DsRJ~e)MaeAFB-Ai451i?4FC18&~;P5pRvNH}rI4n_E>r zYBwZYbO&j54LDe^t}XDx)xudG0V2}XznFdhZQueo`RTpRY&%@iHLJg26=h`@b|FS> zGgHW_?YAAc&r86fMOf&2TM^R1!2;zY1X|yJ#7&0KD448JgA5J+FLUyXDc;w{)la?+ zdGT*{IPm}2;pTCvu%#RJ{K=&F%jQF(H)DzV?5v_a)@o4<2Ku=jpu2vKL5pcxw>@^{ z=So8=oqs$UG^#e>N@GoNZAYz*)qqG4h37dP19_ALqW{hUa)bZ;Pcsaul#J{@<_@oC z(LX-&|786a?`9SIzYu$>h)O;U^2paksExf@W8^4}M!0Z~yXT~>HLQ6-$S>R3d~?0a zgf-c6+FrZ|gztF>kau$4gsHj=a~uQGz=kjHYHd%t7*AVN{I9@V@Eecmo7z-m2Wl2 zMHny&dtcHK1GuAq#=bePs4xHc$04PjI_&2b-!yWsi)aQK#hph4MLuVFe@K6eA^-f> zC&jbeE_sI%?$Qh|2MN-lg@0CfEC21^@~pHth=$cAC2#B^Nv8T;%$Q!={?r?jJxn@M zu@@sF+NN3 zFEBxWyOj9fJuiWO`P`{>X-k^Ayh~yaq24B8n(>}$Tv1VpTHNm1F7Cx6l24v(Sp;kA z>V++%1r=5#p6_duh(a;%eCKQ;bUi#IDq@B| zJ`>3_*qHS66+0g~k;#*-_ldU_msF7RQ9;+zikW&)Rt!l2I5`dAl{8N%sYsz3*Zt70 zRg{&#c9~EL2@$0&i#g6V)Vb!PZ`=myZJUt3#RS{x~=>c>`YuL1Y0 zC4G2t(Zyy&1jNSGd#{ESUvh}$_vC;=k)8e)Gv$_zTphW&sS1?OC}vw+71SMC_d_-& zL;7>_zmeP5ebx~Vcxpxz?$~_w{?!sIXC{{=?RtwaZ!3p&}z=l#nf=YU@@b{6`C|D6? zCpRe=9o9}_^N};%d!rZe$LDRxO9`?vaW^vZTpY*gK#D+kkH?EbSXr=*mQMChICSc7 zdRoKV`GEpA*S?{2`hDz`-in?rY0;8$+cAxj4whfxD%*Jd`mQM!Oc$;uU%h_r%6pv; z&MkBx5ZUdv`RY7^8A zvnh45b?A-*PA4b6ds(kdkt;5>OR3FKO6-o!`!ll5m$6QoJg1T}u8W^Wu=;OM1P43> zXYL#jj(#lfsT%1bLuYcrI(bl)?#db1=%O<^y9**+2o^yUOuW9R z(uNB`7HNn3RlOYAs^|**H-HITfq1>B_gLmwwYH}eIi9+G8FxVG*IV5maj9L`N?GVY zZ&Xoel>Bh=EZWh=;x}(g@bN!Gwe{Ccf8~ZuE*b7*YIk4+S9HR3y-jmWrzz;yUV7N4 zs%F9fenK2GcCPpCR;9EIBZdp{7jk;>{STrOB!EUvMuhSf*Fx#B4rB&vY9=;~k3iFx!i!#RO?KPDfwhQ37FQl`%XDmWEA8T_xrO* zbll|MbSLQPN@E0p{^e~i>vZ;OtqEIn3B$nP7Q%vz`4w>`Q$pUOL}TaU;e&Sm&)17k zRh+p$ug;o+`On(3=qFDCas7!35h(_UMvEa$@$O~FAH^4~+b$knoY~JDsMl0C>50GH z3<^VU5EA}vAvU0w1Opzj4rW30H(&|bI5XFLVSB9S^=Ry*r>Cdp;=*ekFHpsb$*>+8 z%FAvNgCo7fMkmA-SyVW=1K(jLd{1V?T4P#ddOf|ELx&FxiHhQ@LgH-Y?U3aw#U7{b z6!_wKgtf$gT%)cyu<~p)aT*H=Lw30%<@kY$L211C;E=S5&{pAiH32Eytjg0HdcJ{Y zg(Gxb9%)Pg5~AMu&{d$?&`VgXf?Xgi-t3@G-cI4@_C(qW7y)Xz-HmT>7)#*|j>KIJ zk(17qmLd35y31;Hp|z6E8(-VXF^GjF@p5ZnGuf72%g0@)xyqC*!#+gAiNmpPt<@-# z>wbcPWsae&tK79z2{ijq-efRElDguQBIrwr`(T=v-`LZh1{KzO;xjO&H})XPL`Eui z^9AC!Ja=}mW0P?@S38-9b-%KEu|r5nkO@n8zhA#mw>8(nxA{+1 z(Up5qNiijxfVFUveR2yk)WtzY^X@ni6JS+e$EeZFg4xnLo$AyAHd+vTu^ZR?TJ z3RR2hK19mfFY8HfZnuhtiP8KxAgj2nWO70d#d!EA?xYzw#4zT zY!5P<9@LUWrRNrSB7oyOO6GB(vk)cv8+Fxsa#Oh;YI8pcVs@I(uFz23eye?JPq5W_rDS-+o?R%J_9^&uv|t zUCrz_!%!mm38C!FyTH(jTRj}6sHe1>uqt+3vuWmoS-NcHi4;38`DC#t|K_U$v*nDh zMuar@Z79wnw7O7U@dw<(YvM^D4q61_ptp+*8~AzuNV?InEmRd3T_zRhH6BT^t7Eb! zna2SuK3Jd$nK1$Hk9c6o9JeiC$K*_hmOq4sMf|8cDXJVYo4AzI>Q}99u>^nd!PLIr z>wFyqRSJoYAou3GeTvzNP()!UeD#TQTD^A{Oo8#h_VWHnXITqQ! zLpG4i;i^aC)_vx7#8UVR#vOI&D{xqkRF6e9GaKE?!hM*v zjtCK}Xy3$2l{m?f)pFrd?0jO<>kV4Q=rwKBRRrg;j5L<-mER4r>^Jc5FK~D!Nn3wx z8^e30R7o_6ojSy@Z3B?lmWGa$%>#H2B}-0d*Bp8=DFRks&$aCy)P$bxDVBGL9`zj= z3teT&_i1-pqlHa$JFeo63g1naYN|$e}>GpeK$Hxs`(GR zWc0s^uP&*nT|tQKCl~Ac$v8#_K>%x4e$vk1*sxSlmYRSN0y)g@^B5ROu|NjQ!rqR( z2l~=#jj^Ve>l0b%>FF4+b|hEzkMi0Ld9r(;gQXHe!w#FayIpO$J&Sk@TjRMU+PV`@vR{7lZC5W~xzyVD?L@-R zX!~#J)gg@=-oXd5+%q{gk}``5JN0)$=D-;ji1VeU#*p2+7IRda*j;xMG8>4+P)p0wpRV=m!oS6I!7m|)3vNC1)0s_*ABVH z*-6urWc3tX7Xg$FC)Qj&kJvAd(yC=yT`LjFR7^TU2j;q8;y={v`t+8fJ9+%=2JbKC z5;o}84|55$L8fXU!XUK@e)7OQB9HJ1^YpR8$(LYcY{9OZJ(s`r)OvZd#d~O=$LIHc zCVLpH_CuHy@#9y8DkTMbU^>gS{PGM1 zZ<%92`6#rv{d+AV#cOY3jO}WI5x@oF93u@4@HqN&%s~uri`~L#MfMt9b$9;(Qy>T?*d+8cWF9ND zhIYWyz{Ohe0z0Kg^)l>|Y_4=aE%CVT`4?|+Dh+~a9Nq$q>4ui>;eHy3(( z_Yhx7T6%MVX#5=vyzWPo!n`TLvA%fT4VC1MV7t5BZ!KDUtKvf8uH&lFF5w#3ESjh)TU=b3K;J*S-6*CXh{@8h+^W;6{Hjlf>?H z=?=ViBv+GU9PEwnkNL_Ri~q68Vx3Ede$t+$HvYcIp3A2;b{wC}P-DD&bElMuf;21$RIK0$If~+Zf$h1cO)EG z3oA+QPDEm)K?SFHYjeda*}t@@T2v+EvDwVHo3+&^D~A(i6`7oNda-msk1I~_1vdvU z;x{VUcK{phgv1;tPqzuzdT=Ev(;Cjq7Dp(T+65mjZ)oMbLB?TYw_4!@u}cxjBq(#~ z!dURs%Ymk1!Qfv^Kiw7i2Ww?REEfD=?F5{zG`BNv14Q{7l$o)Xrt|oMvFcXkCw3hhrtI z%=d^uL91rn#@LQT*y+c-IY2A82e<=#_RGPol4H&;8f*ror*D&X?Lrg!4I~O z7e?}Gew{uFt{k>k9D43kvC6A~d}k$lBYqV~?w$bkr8vDOV}(Eq?c~R0t)R6fLP~>j z29wdp@A0MHH1v$G2~+9e=xM?`S2qf_$B6;!W`*~C$iRCea&Dwfe|u(11?ucuhoGi;D!rLKZHb9tKrNRkdBWu!;34F4f&*tdCjslfyNE*XtXA-%P8tK z6aIs^N0DFJg}V%VBmsX)ed|gIs**+^*Zg6q>qNgIleHDVSQ7IaAo;Y1@)M@m!1$- zTRy>pvh;8e*Vm9oXHEJ9cQ20|wbuoT5#QNkSzA8DDEJaff^;h*dke%&A2I4WJwX3&{!`K!@Jwq0PZ`y&Jf5hUGYS=O9Utj8MviH? zqNMHFM(Sh%6IF+3r`Ez8`Z@_zIS?t{*4=~d8%;dUdvte$G4b}Dll*&rcxq zs*bttFZ%SegWlaCDQDA^Gh>V&ht%^Y2nN#5~g zNkJpwi(E{fc|7{-Cc`xJYRG<}a+++E^Rz+BHTRLqefNP92`{G8fR;9H;E#-U6n!0< z9(33DadUPc#qI!FUHEOQJNo{!fJ5`4(2>rrKtbotCx3}3iV<~1We`aN5ghqWqLB6T zzW5g2EoFDY;4mE|BI-V3<`31qiKLlp!m%f7_B+9Q)b3NfL#q^6j^35P)lRYa^BmxPo5}y6;@gX%mQ85_$a8~bIkM?m|U^EF2qL* zVePTd=go22Q{CANqY{qDEpcH6_Z7c>C4nx7PnbYbbf&>zQYd>MQ2D{U!hQZ4$v)K2 zeHM|+cEM$Px*+u;i}f{RgTxqe*!zoXr<)vZzJ#o@vS^g8#&FKO_Hy+d3I8oow=FEm zQh8YWpwmTo2$hzd=~<{w@ek5N=`RK1abl0oN7re0hy^ul@pPC$`h+S2zZx4CiRt6j zf+<1oh?zAf4$|pjQ~Rr}hOLEO%m@b+@>H}A$e3ordkaS`_U#JAh@%S+I7l;~XMnZ8 zQLudmZp&ABK<9rv%9#0+e8$@*vE$SX{VU4KNG&Xd`yi+{F+)v!Y=6FAP>@fIshnS2u%DUQ#@^d_H4VZUrej# z@lPQJ$fTVve%?B89d7lte*i~h)y5=$^S!lR|HaxyO1Q#p{99 z#{e2%4(CZv9atVy?!n{Ck*~GK>f}sg)aJ_mF_j>)zIqq%N%Q-O1MeZ!SQK zA&tO@x_+feZzh9;fID%Fp6%ZvgO`ZK>H2-?I2OCI{FJt>>k0{d=7j{57-Ik)9f{kDtVBS3gs$|MU=LjVF1+-Nw9PgEZYSUruG3}bnxj0;t)DjC|9;UpXWil@qp}~4ddeqA9kFhBE zEVW$zl-cgzD8^%%(R^vp!2Vo)pw4mGgF980tvai_f!DV57g(jNXF}r9XSm-2!}S{KD4q^fAodCIH^5T z>ulmRXl-bjk$xG#b_OU3b6xkGU1QI>>s*%g->z`JDgFCwcPAr`aKQ{e^e%luz+Wr3 zdvdXGVKQ7+rh3&{Oj7*G>Zt5~NhVX%K7El&FhoIt)Zr6b5;ptU4(rmYaNj<@)`$k& z*AP#eyUY(9w&@ysduJ!^NhZdU0)hgpIEX*$wK(vQEbAW!vxxmTTt1oRfn!m(HY8VM z5FGkj*M5$nU^i|FzkJG`*+0K=OseE{=pPy7k#pW)y*^&icsuvb0gi%(JfMgh64L+s z_wO3VQCWG~jPt5$+E7*6463Q+%9>wwx_$J&K)-}7CmrIS-7~d4iDC1G_F>XDc&HoY z<3WPy#Y%sZfK{^Nu`Ibi4QKYv9C@)hTK0XZycS%QPAd7l6?Oyuz;>=)7hkPiLc>`5 zXOWkM-{qs{E9UHD3k~zgVE$eA=>F}V9ngYYxbt1Othl`as#g7b9po^0*{N3iqO!8S zMPby)%bCN0ohoGw<)Bs(Nz(+R*LV8IyKD^bf<(|K`o6I|HW+DR_xJ7>qA|M22>Cl| z0Du4_0*11VT4b;tiO{KU9ePq+Y?}aGIV$Ss0KMFn-<_4}g4PF{eX7vBrX zxNh8>-?1=XUWjITWMD}v`n<@C-@hHZ_r%CeC__0Oi}y0|bFBIAK-Ri4l`+^nqRAV6 z!~03#Zc^(J`=mKAdT^uPiym2bL8~EEW`wR}a*)=NhPJfG`^@_LF|Z>@lBg}KeR*eZ z#?sNlU`Z;mTzBFm_mpgQyKNg_<#@~LyscZN%ax_%*8VjG{gxqRxOL+Ruwq89@B4^W z7+z{64St?YOCr)AML1&|@KlPab@T3zh*md*aa1HUIjt-7Fx}i0-dxh)Z7`+>opolN zMQ0M1mfh1tM|wrhY%K3z-VZQq)}9^PF{xY7QP9(e&(MvETYNGxHC0me`J*rz?&Mpo zV`K5|cB@z5wa0qoSRpKm3AErvY`Ei>65(@-&Tt8Ny@9GuVL?m&b`D{ucy=eVcdJ`R zj+xo@ITBSzhW}6%ot9^Cx~%ic@Z{v+);CmC=Z>3zQ4u8{Av6BH+4%T086}#8WVsz2 z!25GoC&LoQzek{7Jv-TXeF4FZDD(ML&;k$0LQo>uY%dO8@bCTJPg|+-*l=!RWBgS; zfQ3ig-X3@uQ$*V94}MhfbR?f-kTTs3@G531l{hFXXd7^`)#bK(L?Yza{9jTj-;8ezX@ZyMSWqvu1+A|ELP_#QK+!2>@w6uw zgAnVF3SetTh2f1<0GEaOESdTSDcru)83rCUSLNi$>Gf;$qOTu<&A83&?ve7-HOEqb`ReR|urr=twTgI>>?ed;T7;N; z(jL43m97A=R0RBoPZM~;H*;^_-32>EBK>U_ zakVkS9P(Etsnv@JvonMRJW=pC`|_JawMG@Bn~<~L=noxJ4{j_6idXwiH8kt=7Thuz zD)O1Wj2}|*)J4P`dP#xav-h_lCm<*_zjRMhwvRW6BU9FixO%VvO=ni;#9iHY$N449 zV&KiddRyu6Y&Ut^(A@p5(JjrfBf-onJ;h+X zp-L{c#OT~23sqkv3!7^kiZmkGof?=|Miu&ieRJC{#?j$Tb8PBx^{*~&=j_wdgV|8k zx#kE*LSI!S0o7=<-rq)VwWq-XFV~g8a!jFrai)h!*Snt>eyBaZDUM56PpV$74WVVV zWg44XaqSK=(-zRL9Ci{i1v7I{72X@3SM1E0D{_<~{nAVh=B=SIyl4%19osaWEc4=G ziTTzsqkL;cGB!iIS<7CYjtS59dE*paRCl#wk($HPfQ)4P?w7JdKp~_d?yS^EKi(xK zA%^V5wKWR?Q#5Jiy1VmBM9UD%fb?ZwZV&Vij-~|f(ljH_Gownb&_&*=V)H^YWxR}I z&mp4&uea~Cg6rznBZn-Hn}%!iZ1L5_yu)=_#n;Qvc-A&Pnf}sIN<2>Rz$KDF)6H)l z8|-m5@@z6F?FqK7XuWMF=$&HSzm|T}P=>CLG`EM^xjw+yCD(abk~Vk8!uT|B6ZCdIa>SjC%4>w7jPrS#B!zRzU3H^cS#n zXjKH9=>pbJ$2G=ikc`r1C+&XT#o?bMHigZeFM^KNKOJ-V@s)aVya*xCFh6>Upvp>R zNF@%n9(=_<&QSMgiKoozA`+2dP~_8=NI2!OSSOjujKjT!6#+1|E={gN0 zV6+!R6z{o6(WWP=?u>%JIPS@qir#Vy3wUEkHJK`!xFzsHvd-s$#I@V~dT+HN_1@Dw zO>v`zuY%nfvOZN}Q=7=|j3(wNag2W{`TX{`BX)z7pds@`S3Axp=dp`LJs|v9r-m8RxBS$oG8zS+;{CkYf{xhRtdTJ_qCw|3d9< zI!5<%iLJOv-lv01<7SI2#$cH@6b~MCF83?8rjhIg$wETDkN^*-C)I1Z*4VKk?Ctqd z2%WS6!qqg!zhjRl;`PbAzo)Ihry_ovDcr@(6pCoF$xE&BT##toPo4UtCIJ^F89)Mw zoJ3M-BE=$e$Mc3xucoV>=>`?GG-`T!^!3I=sQG*)?Xu}C6+5SyhDV}n3JFE2CP7{O zjX#WoOXc8V4f{2u$731TVt5FH@e^P!prDrD537R=9b%s@yRR5zyY5j`JW)hMM9x-g z(;5lTW^J~<2COIL$`>q@K(cE%NemA4CGcr$)L8>vTnI;tE*H)%*SqT55SeX`8gOj- zEXMZ}zZlgz?`pVYRqXjLX-5%k*<~W}v}nm-Az~x`s$|Mn@y}4j9jV06Ys<`N>wIHtT0urVZekN!qb5BA@n zq}^Vu-3a~zaOEgJ1CN*aN+%tbD_C0|pSOx28Z_22CC(Q1Q?0>kI*DjX8tSh#d^8$y zXu9P0-&ZwI6Ya#YNk?)vDy^dUJA?yKDHAiM-*b#Ul$f?#L-LxfY15WNqz*W=_yy=c zep$xl({R;bl@|2%$sh`eJa`gjC0M%ndw?xaP@>1v_~pR2HVe`gA_5 z06ZTq$X%_3&4i&PWG?rIOQqOs|A_}CS6W&xY&R^#CS(PdcEop_F{hTD5a%^LjoVbc zZ|b=iC%q#K3CU{ZMnrMn$GfwkmG{9Og`qjr+CLANyM#MTIap0mPipL#VH`vM9ev2z zX(~Q=VdP!2%Jt7vm+xkm)H zbKb!V?9BqJwcw*vm~`0W+N<_PBa`QIM6WkBqtRGwnWybcN0hZ>T(z0u#Oq}XfUt8ZNkj;z>r=4umc#tjF{CV0)=U>YF1@mm>2{I7J)6te))SFzM@Sl~_7<_y^kk@2q4<=^k zmGNID)ujUa_pow+!otFr6);l@Qt@2a+;RWD!}foMi=BMQp)%SyM0%8NaWyt4*J(%Pa?o%#Agze32qm% z*{M&H_%7CJvbCe|B*x$O>Ckra1?PLC&Cdm%%(F7>vs zjoJt-0SRlcNc<}9x^;ErDqzn;mxp=6y}G)m{6-BYo0SeHts(E_KvK$SEIiP!H(llv z|Ah!sXl1c_IYSY}&Ea&t8U4(ss>=(iSKMkNu|?1J??~O$0p^l7gLK~%34cl!J>P38 z+pFz&zOB$#dpoOVE*X_0gnK(V1;E!Pfp0{bLym4kY~k~HYu>BQxUBdqE^XmEitwB+ z9e+fv({~6y%S4#D-k)m~u!z9t;i;H;DtFQB3V2s~2i%EQIAbH2kw;fpR*iMvB@toYk`HN!en|rSJX`Nb zX<<9Rp3Or0vP`qw3S@{{b@}__66CXxr=9W1Vm|xVgKmytDY-X0^M>}XP|}#`YUf0y zOmNH>vhImG-D1B^pSZDlO*b+a?dIWTz<@h#(Foqzyv1D%KR=B53F7GRukH_vRzmp( zrj^{8S~w2LkQaGTX~t*QaJ~T5w=21>e0PmS?0}J8)o~UddmL=q4pudyqW~Mh_}}2z z8605V^=~pi$AcUP8qFw^zJi_Tc>%a5Z17Wsd9M$f6Gyn4;_#~J41f@`FHo;!1O$-!jZ&r}ge?@wbmfb`z zFyFU5P}*+A^RU`Cb$_@^al74ycRy&wS|l2M8^JeKd~p2Pj%8H7GPQ`7y?U1={%&-6sy zL6&&SNj^&J%g6dyKMHPO597VUFGz+5^ve++ru|O?EQDTpsnOlxWi4+(zIl)z!`u7t;k6oa`Z#@k8Hu<+nQaPzJD5cxy?K`^?psoijfR93t()=@CX)8wOVtI)ul3dG74RG#QY#>UZMH> zdE5|fT{dv=n&-w2x?}yXdAZ3eJ4yZaG@ilA-EJ};t$Mc`X=@Qw1u+Uk7LPE{rw@U8 zLtNfY%!B26w_NtiY{!F~!HW-PPhjP@7}>+0UunAoP@!!O%5Y&F`MolTJY5-q`v}4V ztXq?swxY@|0gu4sSjCgVA!(uGS(cE6h>aqt{k~FYF$T8Ffllb^Z%wZdqU;P9c{ak0 zvK5*A|M}4W3;sQJrY^gTt|Iasp9f(?S@X=jK5rSE56vxWE(FMe2A!+hbC_b1FijAARJ= zcTV$jKds|t#Z=34Ne!;~&g9@ZqGg_qBREv`W^&~xu{T?==2IhoPFa!qjdIZQ^9)5R z^r30ypb4GvL)Cg>sl8puc{KPkN*cwt~+knRnAm zJdPrE00{>JzhwV3seOd6DQ4Gn41ycp#Rkw)cJEbImbXdtz8BIs9@xJ~LznMx*EJ9Eu^g9-_<>h?cWaA3sxXG_hY+FqoTjCLRdzZo3Qvk+@sn^n9U;+kKJZ$z@R8ti92MruROiV?qh_jWl`mbT* z{K?>p9TZr|q-KD8(^{xx7VSiv>bwotf&%aF&G{p-2wKHM=JM*;J1_eD&Uzs##QOu_ z4TNEOOaAKeI=_hr@|~i0xNj-|L*DTBwnhTZbSiH@Xy#sIsfT9 zHhXkihN_NRU?R#Ji_Khw|EtFK{%MR%0ZbB{uP@0wmv37`g#N`TJ^F#6m?^SQsnYK0 zWsC-bL=>^FEO7W- zmdcm}K0{5r1v6TJzIu7R&Ya%Dz=86ZJ$5dw3!Rs$e!9D&Cb)w1k?)42E6J@7nGR?* zBveF6tGn(=3obj7qE(&sE)H$u>Ph_&v(Td?AT9W-E^sF*#HZq>JHGeXwx?~gHy^H- z?#`4ev9uka#tTNC-68cKxllEiqardZq&0iNvTM&_xVEZ&7`Bvlg5tU3igRc%iR;*Y z@3E6X^J?uXc+w?mg$j*HecH08De#tcYQA;5p}}cqC!Z1jR^j8u1cCZwOtS?lXSNPc z6;BTbz5~F6E%OV$71q5Oj_-?jF}5l*gKH`Um?o8!)kEkdL*q5Rd^auciWdB^Y&ivLwMQY`2 zRm-#p5ENw4I`HejDQCjgQ^A*0NiMj)ADYYUthhT*rUu6$*GO-M`{0T#*Z~*Qa6<$y ze~16{Hd6mlh+7REX}WI!HRPIO4@bNLiokO!J)Q=B`72$*Ivo6tgHvz2s3Y9TH=C^f${6N z5gCSaEvV62*v{|pkw+^P5mCp1iMCVSLB^WQSS!}N3O z^NCyh!$ohJr=Rgqg_O4`OII`@apxhY4C`4mS1xSU>qA`DH1s(RiK3Pb+`GnL?2H@p zNoxuN`QW1Zmz4G1v^hMp*PSbd;TfEd4M!PC;epRm5d7M=U)?D(ff*V2ax;a>@LtZj z*LS_r2qmm7dA&Bxy9bA1ivWS*nU@1vHMc%tC|)OLy6pxPI}k`5ip+3&1l08*8{P5$ zqbR0JP&L9d$mFb8_V8P`RFT7+iwhA*naLbb5ge^#zv)RYaHh*=0y$de=onpUO6v#D zw|;yDTk`c3@M=DRZO+|#%H+(f@6jhHD0&$6HZ+1Lrf*mIA}?-7$D!)27MR7zkcB)m znCy;hed|OpbD!&7S(LjTK4Y6z@J0aFQzE-(y%8V)7)gSpp*kODoD!dltk<|)yJD0s z4)$v?j@KGWlxJOq{%$ULi;L{4fa~xWn{7b)WH9#0zHhn&3E}C-$}?mpT0;>0s|B%i z)rkuNjvr3kh6O4ipQzj_9BzXHE%?Eo-zhK>ArCN&_bv++hI_8R~svBs_?6Kk$c1IlGHMK{W5j&dj106IC1^29rE4Bb+%sp z-}eKH{S5ZvJj>;T_0uKBtw~RF`~!CplDzP<*N)dmjkcyghP(Q(XnamYT%7j7VD-TD zzjyDjr$#U@J1a>lsZk#{(eW3Fu~>yp;;NnAa7U}*^5rs%6rl0lQ$V>@v z-t-zDBy&GP?pd>+vJ*s>VWWQ!!ft22LbUATb-nK+LbB{i?Mr;sXmazUsQ^#+R;79l6&N1W$&Q2O0|obE9p92`+OB37v${gIrEYk*nB#c_Q~jx!?A9nq%$ufua5l4ksT1)h+Sg zg2(6X9%hd0y)DP?ocB7G`TaO^Sy>p82*xtVTV^5?Fn#N-NHhMoV91<(#ja5Y0ZW;J1QxfHDA z5PT+pv$J^ckSM3-Y&?W$b`2{ar_YG&6Jrdb*x82DVGIL7FY-{j1cRgX;Lbg)`jle( zsp0opQ2!%=q#;BWclN4mw;reMhq>GQRw)6NYp@>CT84g2cbF@^i6*D`^}dQ!-hs>g zjA?T@yH$5H9n4~S9}wftxUUXX-?jU?4^Kr;C%TP3aa63((v+9Q&ZixgAqGMECV_hP zPf#Zq3DE1mZnHa`KH%lskdEGrJWx_&=&1hh?T*rF1i00tStWAr1R*n-&GFkpl+z** zR&l>|E54H=XDK^JqTWUb0q9isG6&0Y#GB~GkH`9P+d-ZGXP|Qkjvf?R@OX0b<1I3x z8v4Y3)V*jhmaDVuVlNU+yn3f`3hY|`D)-we!R_#NF2T-~CtxUBIMd*ZA@n97_M`~b zOy_iaKeZ-jLntnpjfrd461uM?6J|FP1pd>LT7d~cI}?7YMaKWm0-?lmJ{zOoXG@v8 zgIkP9Q@fPN;JJevj<4M()aUtYM7(RGA*LZpGL_R4pzF=-NN zO6K5)t{3^J<$wGzE;rfFi~-rq>D&-5cNEvyJ=a7#$*PS8nd(rm$;tNpj%ibM)!=k@ z<7e%j@jk|B{gP!cx%P2jd|Z~#f5CZ3hgLhTEbwH0a2^OX6uNvNeA&w6eq))(dxF{7hJ%(i ztEI&(67CgS7vTUOX@T_%CjnU7Anxh2lctBm^4mB*C^7k)|XaXC9{Jb%By;f%$wpPXzk^Ta1M|6$q zVF|s=?k$gQdQ3@}xP$>RuZNTSTXjozO}Q|(uDr(BYym>h@>F|~SRdZRk2G)b|Cz8Q z@8jW7G+b62x`<5=zmbTh_wVjrZ=>fOZxb2{7acJRLx^;S(wOv{Y~i+xmAlc;q6r#u zfeTuq9vb-Ip@>E}sXmP=O+VHDHYtkmi`OqH#X3_EoIWncTR5QE4S5$V*W4&xknmEd#)Y)}by0hThNLX&HPAwY7Xd85hy?AH&goT`l0RF~ zp*BYUxw1=aqL!d3FD)(Y>Dv-bTNZIs`;3^8#=LB5UxpGC8k#3BXy!$^*4uY|JpD&5 zheTtCgKB(aXp7{Je0f=c6Wk6rB?daNK&YrV2zQ;M^_WZtw8sMN!EW?g7Z~Z`4rNW& z!I*;W(DXNGgT}As7h3qFQN4E`equDkOO`y0nDEvQiTyc|2=%(B&&&tolvL9w;DWz2 zKHE1QrtE$;o1?wP><_1?IQGBZX}|5CV~!vyB1pJdY(I>mb#F?5_4BNn`mnh(rVcK1 zkYc+^J^iZGU=K=(=0;CVs?}guD`E{S5p+d^{)C+lSlzk**{88*o6t?UPehQrhq zJeSB2y>2HwI;JD-Vl&fi(`|L2a1%~*qMTMPf%KykWLhlh%4xlqGciCn z(fj_JRzY6NuXOY&hIlBTJ}q;E{!#4E-(Ib3c!a8-iZb}K??j^wvfjTM?iS$U=?`9a zMCQ+P`AFxh4FIv?MZ)FU1pHqF{{m#tH-w#zW&W&;9tUQqyA)=Yx4RabHXE_|c4m&Y zG0ngOZzJd(oad&;=r+6dk|{5HM%?h+w!hz>*K&g>8!;T+HRMpS zdSCrJ;hi}yZ z>G>>0Qkmj$1F$V6)bvGzF2^zZi{U>9qda2IHqi;{QfW#+QNM!5R0aZ?bxl-NU^y&6 zE*qMKUsg_D?~WQYf6zXYeljy$KAmE;oe1-##_H|bC$W3*Mgy+A?4M~rqF?&fpOYX= zVi9Whc^6PB9+d2BF{{eyH+>a;y_rI})g*}8Kq<($?{&3uhO92)8A_pHa|F3jECO-5 z7N;;#G@Mo(p&v9Xs7rs09By^37asK0^mvzY!{k#ik)qOf9xz!VYUnUWCgM;q|HzMg zq`B9xExEp7%cN<~AozFQ0+A#UHb-g;4ZioE5Ju;VR|SKKEw}BvG+aSL4e^Gj?ylQV z$u_)qhI-q7!|8_^IH%_$IvwgvXQYaJI*#j>SWGVsKthU-^~Bdd0mnR!n?hJELyi-E zkPWiP2TmRvN%E4(4hP*&$Wz_5secZ#j`?%>Q3B@)Wyb_6AM&&v2yUriqthKsA_*p= z&$_pJmduThE5yO&%`;UTN6w0~^`>ZM3M7tm!u8JJfU>8}=x>foDLib(koPp(FC}c( z%lVhB`>pCy-d?!+Gty?nB%?{J;$cabrk%rU`|$f?TJy~BYv5?i=`};TFhyxP-7Wf;*(OmfJCUE^BN!U60DjVC(S{ z2Ge8_xSkaQV`m`#(I)Nf?d{5)d_qC$sZ2hm)|Md%c5hWuT4nHn|9p0c@Jrg5${qH5 z3l{#1kl>_j!f~%sYQ*f3n6x>cvJ1BUcHR#w?7cm#d?q(c{Idtcy$OBRgp7nx6cmBH zJX{|(z1&uooL#XPdlhsk4-YnU#%(h!IYoIv9epY~0Nndltgh6|aYLH8tmJnxnv7e; zngHRA3krX^($NlHZt!h&iMPAnC_Coz;?g<+tWSIDWD{?4{4d*dh3oMfqM5 zqZ4Mx*+Fp6nKZRy;_C8r1I7z(Pw=~!#vqZclj(4@N3Qii*Nq$rKb_ZzT(Lk=grh{% zo5{=_Q0ZL1QT9#+BW_eDVxTVWh0Wo~x`MitcvSjl-)h~Bf2*{6Ci@DzO6a&4;ny!* zEt!caSaL>Xf&kXfgcv~?8UpG)>e0p7xmvyptN2=q?wl8>wse!$c7hPF8mm5y%J%-m#vS)7BBx$wP>miHQB`tAtom z`lD#AYTy@ZFdzxn8w%mpe#n9?&gEMYvuS3bX(q+bpGUo%+A6=&w8e%WPlxwwVsli3 zY=7gf=;k!tgL`5CZe1L3q#CBQFHRw|eQ7ZtJmL;-*IYrty=PpPI9d35Jc zf)f-Bn5NF!GtQx?uE-3J=RuU#af25ta5(XGxH!O0&R_K0wziW$wj=wu6nN9?b;f1u z#p~pEn%~`+_ysGM$wOXS!*7%f!j~R8xs2)NCPJY=%6NX(p$6k7Obj7?LlsTLL(u_HWlCk)|l3p(;jk5Lp%ZKT#ZUa737O*NEA z2AX)M*#?><A~EsnXUmSUMa?`i%|-IR2n!NvmOBr>O2hO1ZZ3+0 zXlQ?m?&X=&c+4n1# z1`AkLdX^W-G5pn9`g@!q$EE}E-Ua1~&9okE!<<7vF<;?4BO;n3YCD>G8V757dc2bk zQI4QREfk;ptL`98{M2&}$~+(L7Me6G{e;HgiANem$`%V38d*-vD)y^FkcRC9GdLe9$P4 z`7c2^Dq}2?u8N>K()Y7%)XormqvC2xz0sI{9X7=VcwE3pN=|QfTe^6{W}e`A*q}y8 zA5B~$P7dY9yP%Mz<+V6pW_{{SrqzbqxwB2nskwoF9W#8|Q!lXtVjXAp;nwmJ-`0uf zTcYtfxTHYgxR~Fkt}H4Tv+Cw@8)ZgUhFpC`A)MGTk@-ENrB&9mBMQd`4k_AJf3`3! zRf$-QMyjFJhb3lxBVjfn1DD(Wi%b?}QHPZVnonl2ZFl;O;%Vz^>*W!;N^gh~J>ScT zG*h>G1Urs(|JHs~t3qGD>js3D(S_znArU85rg*U&`edZ*X5qF-4{yrE_|j(8&Qsjw z>$k7aa@JfuhGfOez_BIu`^Qkii61>L+m=|j7onCzV$+u2Vzf80wAi|Q58Ykd&~^ar zZSO3@`juPdXvGO}9_jgO^+yKnSECVzpXNE28?D%?y>EH((R3|F!x5}DLa$}lM&6Vo z)IGOgn%3O)Mi0|!$*w__E_N2s1=+mp3`Ww&2-$6~K06-TB0Z&;gkxoUi|9g}9rnBf zBFk7*-_jT@DXzQtJE@wLv6(zqA}Tmj14HG5Y4Qn}iO)wBU3vRcAIHp2ii-vlCqMpS z0#ne%xD3Vk1p4Tr)H>f7WM$m5l9)wz=W39^y$5>#m~Cg)`6EUYHvkIfGSbGd+95o> z-a=fCZp)TZ>bBqIZ7C@EBbZHOb-d1L1xH?bM6OTck0v<)tf_$!_qKmTftS-2Z5(~mc zbo+6NjEZ=tW8x#TIvC!J9V#x|@YiRSWfT{;z8pjmjI&qs4WxZ}V7gC^_DizW@s4Mv z6=ilY!#t4kh|kZ3L9NyuQYIT@t_#dorI`9URMDfOD6q58e0{qPo%b!2T~|VXY=r5h zGsH2nlI=}h5W*DSG1C%X624D)V|ic1)cgf9X8ndk4(}-R(r`Za zS_S}-#r3u(5W0WMnyqI9E%Hk`0rOqE{c+yzEqk|)C>+`lu6^$>xMa#sythE69xf)X zP3^8D03ohK)LH>_k^X#51Q9_jbZjfe8tk55a)~v^7aD3!?Uo(~4?}cFpCa_WdihR0 z->u;Ejdwm|az2cYXPHjAM}s3aU*u6ObDO`%PHzBjXGj!tf{dY}KG-#kL92Y4W{kzvnGSBzAyO7>;SJ2Srj?)I2B z+@7TBFiK|T?8WNKl-D(pYlC-?F27ftp$;$TXpUQ+dsL0#hE4^X{MRSywWKr1xFs4a z>1zii6S&(u=w>cL6-~OQ%V2KoXHQMGR>I`=+LMtqU#fS9WT@74quRD`Iu#m`(_1~Il-=2hav#qky7>&zZhJ1f z%CMeh2uE?XLj!cXSU$w->dk2O;`S*hY?N{SBz?Q)|lO@6%j% zy8y6Cxj%cah(2$X4DT-2_C1;jQ4XTuO@#4!Qe7|vi(Q)Cr##g!#EJFU^rdmKCgyB- zBwkln?nESA$}i3J1~B%iwZCFHKV=dfIn|v*x-c} zvFRHphXzkF>5;l`*;Jz^OixVUohYWt?QXvxuB5 zo#6JCJ*h`~5M};Qv+j*xtB{Q0@KeC6!Gm|BOhPA}4eFhEH;uoBw&_KfB06obs%zc; z^#<;FeF9{*Y!+!j+3o$p5<^e(+6T$%M9h=k?s`UAJb_ExUQT=PV%YI=6S~Idi13;o zy4!$VzZWLoakn6Pu(2u4M>U{)SL)3wtBU~+Zi8ZT$Bp5PsHrFZo%zyY1`7g;HJ??y z9#&=Wht5blq*Xf_;M$tRw+?k5wy2kXx7$F^v=CY?w?>^oU@{Z0L)hRHOPmD(4uv}B zlI-gqo6ns{URZpd%EBo5-hBQcqS}4s4?iY4RkALgcj${^ue}P}ta0R)Xbf@5TFHmu z>Dvus3YjZXMutGYJ2Bi$3|loe1x9CKwN&z4|3m#NE!qU@YQZ)SV?1d}FTO7)kIc-~ zuga?nh$eX29F}x!);FEb*&C6ct$4iy0}rf~yXAjgzNJRZY4lgEhsv#_Fj}8Ftl3a< znlPKU0vb?|c-oy2%>RYqBlMOmt~*kOFXPibim4C!oF7`br|-Q84`exR;Bh*LHj z81e{E-2er>giF||Q}b$$(aF;Q>_YND&>VG<4{_YpP*oCt>Hi4AK;=MXk77LGaJkEnqm9AC4LPw zC0yrX5riz^@j9L_q8p1LqTHmJSm)hcqyDU*5L=80a9aL+0MWBPf+@sc*RMA#PTjmN?z@+c+dv7aZ~cGYoc zB`ov>@|xv!k7Y7+Gv=@zD=nW!b$ei9Km&B;V!P3UV)@OMz< zMa0Li1;-22;k=;yw!BgK$l{wb&}9Gy@IWmJ(Q87K>P{eLv!9O=rV&!I=m5cBia zYf$_X)xI8}_()7Fiwu=+(O-bOJk6;|p6fn&LZ^hI&W}X)2e|){9g68oMN@bEO=LV< zrzex|0oNiq#q4#qzVd_f<+x?Fcg(7NP!+Rg02GS`8rNNSLX~~-VdSQ)oDvKcAe%E? z!M}C(CG^{Ti8i*<$~s8-FtSD|aeLdmVg$QDiE8Tc#@7ScPf*?wDN1F^S=+|+SH0iK zbI3Lc@dKr-Y}AUn|MEqM#%Pz>p+eT9OPQSCf(>*qM%G5?sV#xvE`;<#m>l14w+dNW ze|n;cwvACMF?_O=YJ=aQ0!O^it=CnaVN5^DpueMG;vMbXQORQZ00py8<~}*zqrz>z zo}|$qipHc9(tt4q^#hR^{HPA9xr-%J$KPF6TOXs8G@vU_2Wma`HQM;OK2HExgq=w> zsy{zDhZ|3aZ?S`4~=aSB(*`Ax_^&OpW80V9}h2{ z0g`wq|B$Dint#k}lK(*m>Q6*u|1#FvgC8syCb-?Z&qZYGv}M;~8C|S^Kb?~_EmEpr zP@>Z*oTs$2jXCPqe(`;+;OV8Tp&!PaGaM@FX^n5+=~X=5AUGNI^$9otU+Km+9-u>zG{XQANFIQBj+FZ6eUj+W6E;9N=_s_o9JE!&*$unQ&ZM%sDf`1J+)`5bqT0(DqKyRw z@+(6gX2@Qn)hH@Jn+OvzDTG+Nt9_Uy&+3F0zblb7HIiCiD( z+mO#IO$bJ(7g%1<0SH&uo&yXMlH%}FO`T&*@#G>lvR*Z zKt)6$dP38?bhQO~hWHb#4(ZfAje+irNkt|kiPKH@H{cSa3!Uu9e zTIOucT-Vke(%7Sog~xdP54#CZj*y?h%7;B_?Vk(L5{?RoPh@m{O%bH!p@D%79g zo-q`MMq->GgW>+#>Fm^Q46(xRr90;yI#+A{)wcVU zv3RzAn8P`;Q!F9Oasla~OWEu7ln;z{;b<`CwTww`%@Ydjp0~pxfs(^a$e_tewCzGke3&Cl);|##FQo2 ztv3vLxHcUO8hP;`N2{EPnTD8C*Zut(_URrLkSu_iQ>62#G8ltDkSJzaLp$fNA;G~> zS>a|*frd&jcvP$So6UJIEEGOhiNO8p`Vm*Q%3$qihKJ3XZ74$9tU;8RkTQv#Hb=TH*kh>=5TRkuaohv|)>}s}jl7^l9 zTLr~(-Qtm?@E_f~%b6+Ep#P5rm_Y1!3A_f*WT)fg^TtdJ{bju7@~|5j2ZPY#?N^%ryQk?5o^$WD!LymT0h zBA&RV%qDGJi^90NLi{?sbSjm@42$ta?ylVBw;;Pms4?*0JSAtM@gU7t7+qQI2}VyB z^ZpGfw6%9wc*_i+#DPrz$^ZINuz_7oo5>2*;19^A%JM!*e)P69U?{*iS z>w=-HQBwl* znLOi(-)YIO#5-`CSQJr2L-7lq;2{8HZxr5l)as;e%H5OlcrA`=QYXo_hP|osQfc?( ztFz-ri4q#9xILZcw>+HsERH$8Dbva8=ERsz{t#8^_s#3l1JSZ+z_m~%w;(3-d%}u# zRR*7N-0aluprU5!gJ>D&Jw=6=?yck97*>9?2$qimGHI1lOW%Im704G%!m)Zj_@Cw* zI}SpQEEzBzeNs}=&-Knkb8pjmkFEZG@||5n27Dg6azRuaGZKCenO_GNCKO-RamPz+ z>mF}@sZR)@1UgrA^2f{GCtvM7d7Vu%ciU^5-2s@%jLsYm27G(vvj-AG#Tdw>rn<_8SaZ#Zo>@%6G7b$47bd z>B8~q$gTMlx-KK-v}a7z{LPwMaRZcfcp&`-OgjD0K-cesliJT_^CkCjH@4QAg7Ai( zQaTjKaL^i+U!p_n_{X0*vbmp)84Jk~ZwR=2 zHeZ|T%@}HbEKphCGZ2Mh0?#RclMxr7TV3=KwRdyX5c~b>K%yo?lGE9ZfQH@FQS%-3 z-QHR&bL|nSJvx(|k}?CDV5#Qp!OFwcnwC=H&wDE4*KC(K)D7=vAw=Vr|5U51a?78J zhc2!~H@awp5H=64uCp;-qNu-Y;*NLbm@<`=B7}}jsKSpOz58(SBgg!`@GJJ6?B1%S zp7??={O3J-Zj{}YR!^ub#9VfghrT)t-1AK?T*C5 zmZ;=+mG(|QC4d_a!`NZc5qk&6qJH6P!faV~*DsDjjLK6Ft1oxo7I9ejuAiTClOL?W zKC$47WYtNoRH}HC1i}!o9ODKKe}ScHk_yv8Vb@7nT6L7pF;@8`*Zxn{qG730*@?0W zc~lMvt>hLt>kUc>@V%-el`RnTGA5upkun0hZwBf-ukQDMx=wiohWS8RsW2l}qE4tI zq*{rjc|E+5664K=MreH?_P}qZRdtp-*yRPxqfOsj=Q3PqB#%V1Fw^Sr!TyybK!W_l zPzJJ5gDDO_cGEVb{<}6upd2Smi z{(Urs_Ai{}~&_ZtCrE3ZMgBwTZ4pyb@kj=fow(O z^bs!#l=Aj*tYd`l+5mTT4rE9W-af|N3x#W3N|rz4SExYI03WcN(|0bv?arkLVshQA zMG#H3PO;ZP@{$1>KkoJQWjnq9 zLPo>pLgwp@usvPDs-64BbMQPsC9);d6wl zNHR`L)+}H7t1_8CL}Fx_uDqcP2FlellWsTVhkWv6jRIO9)G{nWnOSCSyFF$`T z1}Lg%2wPa-yDaVFXeTB}Ie75V9m{+ig0Z3w4YqUp`uHq==r6ykyE~LxU;wPd5+F#>6$rrv73^`MZ-O*tE?xEn#j0FQq$Fe=LwU zoc*@i0#xVjx@dsTf=hpHDoahhvCmbDQ6knUzORTB%=H%2^Yz?RnlHdN1N-8O-EGg& z-EqL+dYXd|X=vNE6pe8UYs}&AOLSe-#;mk604`Omq`F;X8JkOG@I|bf52U!(#FJkT zFox**J|@rXn#B61Nd~BzkQiF;X?qqAT-YFFJO$zzxq*Xro|1tK~L2)+SpLcL4 zxLa^{cY?dS1$TE35ZoEuo!|s_m*DR1?(RF>_w#$+cdNE)_fKZ1n(nLn>LdLu07z`et9TzQ| zOTkMFpQ)wU-WpYY>r9Og3o0ByIYCE6Ne&wYYK`7+Y`nLnWC;@%+VxvC6F>1AZ406$ zpu@9Nft#SCJK?}Y$yON&1=+v&eD(aa8tsq6iNU$wi7L0q;Y3XB;+S!f*$kD1zoFp~23K-&iD(jg#pO5AeZmV^NjlP`qJi?=4&qe6P`60X>o<*ESH*;6 zQC~^2tPY`H;O-=VG~mv>cs?j*@PPOQm=qF{QGu|b?y)*&7?=H4mJ|Q88Vj_YuT(6r zph(F=9R(Xds8~+OK#t!w2(TI;)nk~)L`}P!v47@rP^kvbx6%n6A7YwpeG!buCPfHmEm_e8-*4-@D$#cXkRJf}6x^Rdbj7F9$nSqj4P77m5I>NlV-oITAcZ~Brv z9C7#?NrhnDS<+m>ScNtUM?WO@d1u;!j)JE%Beohz1@q~PG*2~*?%Vn8#i~S0@#nE6 zlsZzpU}?{tp<$gYFj35Ef*Zrv@TJ%esnDZYM(Y*Zrf1dr=9$I2feBe(o-D}JF3bJh zBQ4nc>G`Z!vz`oHJ}NL0N>3G0k*Iv-5JezLrw^lCN{jIcXzF$F9iO&Jn)WZggj?G)m*qb>^9nI0^@ZuisYMI$?nJ( zuj`=*CyiR3s4sq~9?e0{ZAPF*7v}+dA4t6+40(P~_!~B~`-SM)Gk@g~nufSn+Nhr=?0YzI(rEg?xr~Aq+@GgL z!>b-D>z6HQR{~ivtEVs82J$UIXxAg}BDAR^?!|dOOHiS*?tHqsquDNM9s>!P(s-%p zYnhFQXI8y+BinX>=cX!olOjV_MKncSMaRYLIHCJlCZWah8F#>RL{o=2uCFF{cEz57 z$Zt5#xC_}gcu%2H;0D;TY`A|Sc3(4DLLNUl>&*hG(rj=-`)`d} z%|)>)D=v4k8bL8qotHUpp>Tj5gs`EIU|v+r2_JHI%gi zm_gqaxreEk>6~p2v9Xt=jzC+|yGDfD6xQr4m|Wg^d;TwDX>O$!$+x;?O%GvJkC!JV zeeMgs&4<-1_S^-8FrOFVEJD~ppg53kZx)O=bA>U|3X~tiSdbjz?A}76Yb)*_C0+_G z<%=0Ojt>=^WBL(~hxsuuw+fdltuyX-z4dKucNpBO%mE$3?UZ!XyEg~qS9cTQ=DgKR zz+Qm6I$(s}FR0}85f52yA@R=-S63rGQ=56!O=y%on%)7ih|(#XTxmT<8#5o>CNfy- zm;$O}sJUlnU!5-2&+tll!Zjas2e0a@YPLhOVg$5;tMnu-2I$XQ513kRAG5%_vOGc$ z*J(5aipMocxX}6Fq|()3sEJSd4uaSU7UJimm%WgnU28Rl84O5X|}+D6r;e()^9Gwte%X^Hy2+<#8wW zmGhe|7TxbJR>K~;mLiV{py+8zTHWH-Jc(y6to=tk$+P7|@4sPmbod|HwTnmClMLYs z7_OcWPCc}zn(y(61O2UW)gA$UpCfOzj+bL?&!}|Ks$YU%tUW>=J*AQ5JGdk4bz$VA z)BonyWo=^jtp$cm>-c0`-OT5QwS?^p5&k(5A?TLG4YPIwTQ3xU@>GWGEk^7sX8rke z@h&K|5x0pye2GkAj(uo2_-?FXOVPh%p@GwwYqKyf5~3F6ZZZD{0>q=x{N|zB;Q$#j z>O?*!Uwf*lg~eQMw*+_f!xi-Ud3-5!F$r!(wXm#9fnoq)iT zLm&x%%UueD4>f>c5jHoF?rO?nrk$sSbu5Tbndf^|5t$F}6H3VK7mY1v! z)_mtX`Dz&^v&S+OGn~QLCL1`ieobDE8^tfQK|{Mw!CS6ci+_$u*iYs2dO#D8 zQu`WzOTm^YSRBrF5|US-6j!9!@G!d{0Sw?z(O1zwaz0R957HT!xp+i-@up zB8~&ER3dPj7du@T&Yq*X)%DrL`p~9R?h$ww-D-aR(wKzgDAsP}PIiSUo1X44`+6%S zXp|$Qf=0Cz)YUA6T|u8je|8M^13sK&I#%2_H7XCk)!emr4BS)2rL}sXB9yt~tDr>w z`D{hXcpp`a(@4%YoelEbd;1hzR&GB0);dubbH2bZc#haO^#MY_p}A}>eD)PF7!c#I z)(@9*s{&)k=R&yBct+AlnVuSh54yTbhK`(>71TZ*QMIn!x0OI_E$HZqZCZv;Pm-Y& z+ZK|~_2gZ1D9I0jw@*Ckk(I#JrB7$a4Ro3p-hheR@q?V2=>R>ieT0?0y8PM4yag~= zbnbf4keMj4s{Wjro}*h=>aU)z7X6sG9H>gMk{7wX4$Fu@kXz3c3Dl)ZSNp?yKr#xe zB|1(bY@Jx8)f)KEkSx!*Y~Oc(h#kVbwZ;C`HMFdZ8(M_ryTOdquR^N*l&aJjt_Pyo zz(x`SyJw0ne~Rbw?71DlxCLg&=x!>eJ&@7Sqo0W}p-rArjnn5uUc99KyB`)%vLDCW z9wbTFKk9--0p~lFX35AUb4Y6ia1RJ4YEJ$I4~Th>eKE9pfYBOxJ+ejV-r-_GQ*l{u zasOOTltxepsX_p3?c3{2zFIb0l{Sd$Nx!OCO zXgzE}!+J58_xJZPD}(cnn{eiurzp)TJp9qX2iT2z$~9O0ZYblWLh|O0Ej)VZR_B;n zOmR12p%E)QQe}gf+TM;q;Z+!|c5_C~F{$e@I)4wqH`}?7Iqp(t!q_FYnSQ!#%_t-$ zks_{n%%T65!8mt1ouh%@D~GFj|KOhsm*l9ZsVvn6>maP?ZV zLxVRblsfs?LfZL+>Q#9|Ld**(&>oSHV6=;l0myKVbnhguJDEyN?$jB|`lk=(_-k zA0Ej6LLsiSxpyIMYl?!c z$)$mR-nll1<9a;o5A+|dx+H6+<*&{t2%So6N+CUl#5t4HBxLg0Z*5Vfl`LJ)=q@VX zGBU;t==O^*I(N*sVdOHoht9`36)<82t0mpacx_3;+RJn3)=PH;*vG6e>u0P!nd-GkA2cn6$|S)$~2YpR6g zYRaAYGA<6I$v2r4>{>fky*UVLIk<(@uNPKOC(7{Bn zkvQs}(|ihgRG4Qsu*i?|C)1Xx*xEAWho^2T_cjJFY;xEM#pYdXB>RF~0m*21=|W1t zDJbVaCMS(O7?Y7>wBb(~5kEv#Nt!qJg#ddopbt#kg3Fwiqam6&$CiSit%T&unAe8n z1qO0`gOK@-E$_?iZG@aYr~yzcfn%wV1zBB8!jjj`-2uMdonvMCR+sNqh%1MmNUVJge5r1$30(%J;-KD`-2o)6m zPO`7myenEHj};Lz6|vq+P^b!qfXsxRXDLiXv}lzY(zN#%Co$8TYgAMw$l#emeavHzGl(4K z2k09N?_a~cg7%s7k+=?Tgjq?TAFdElnLNL;yV@U9|o8lgX}*2 z0hn^R3MZkG<|C&ESzY@1eT^F=ygIkcwG=VJ7Z#*#243WKhr)ehF_Yd8GURfrvVbJr zqm2{DwmWJC%Okf3B!cueW_fgY2nf8g?8rqA7RlzSH5w+ zH1$i5mj=s~{Whh*opct;_fy3@YMh1($=>^eg(}fT{yNT+EPjqmff|+$QMc`h<-ePR zqS7CwE8kpj^xGh0zB!u{UKi7$W9i0(>$^F!R*>BhgY7Nw0}qC6W-1-}1qg~RVAnrj z#tMi@0`h2jw}8Sa!`dYvd(`;oyin$ZCx0G{f*gqPB@CR}beQA#Uf3VLWSF>aACyS` zF@WE@zBhwFh(xp{^i71WEfTU0#{+;An-L!^mOn5t@emM$iH5ON%@Z0H9XrqxAb0v6 zmoTi*;wlxZ|MHoLlV57KB8Y^PR4Uxt41REbSwm5=<$%ewGrAY%_@+Ds%x3AF(H1`KCed7~BpN8bpzdEl z2r9}kn??y3`09NaoMjki4+~yg2pbq6=WfNho73A7D;nHW)xeFpLy7?_g1IjoTAP3E zCcq~Ubo7Y?Wz}E){3lI^2s0c?v#`V~oKkm*Z}HDarV=%Lj(Vc4-Lq4z>Q*tHSfF|a zY7TQtRWbZtHzn_bS0~zXIc7U*SA?ERjHT$t~=hGq&#dNCA4G-x_PA64X)xR z%rQ)xcH1N5Yz~IZ)(c!3J7z78UAA&$Okl!R7Ov-)Y1g%$@r1aKqCWFk0@r++X@Z}> zzYzRk`y6lQ4lj#i^&54TpxBR5flZ2hYrw)8CZ=R*+@g$#iwmN4I&d)s%NdqugEn*Q zLQ|;D1}j=z3UUFc+Y5i?RiUP6hS>WhGO&G6*lSBq#zlr-CuV4vr^qvAyr+(Yg7dSz zEfggk(l0-t&5yG%W0U{%wwL@_>k#$aIM$s(0k`@vw&E*eD4nE8d!D(w9;0 z7BHV)Z7lZ3qBQnVX=&oB(QrEnv|QgTtk?X*g(^&a>-X1;2L5*4A0l}EMWv2#wef%H zYcia&Kc6(c%zr9S{fLXs@JH>mU0S8@eEOG$%HKC_tjENeoy;k^#?l%OYF7w^+6CpQ z6S;|L9mT2dtov={<7}9#pa!dtCZRRCjRCh zd75K#&mvHJ8C7Cz`<@{mEynz(IQWHvPd)}WL?P~$=gt#?&^~qWC$M?K?I*ScGh=BnkDYo3i{5 z!A^(dz4b^M6J_Ppv!!uk*z@MdOD7@0IIgN}BGZNk1s8qz&qeaiWtfn5eBX)m#i^5o^1{ve4Nav?(X{syY($^0eiu-C!@V27bJeQ z0m%(#+m+)En5*L?1;}uiqs0yyHcz&!&iJeWf(#VdWc^H5&KsqzYy7M>uK0x*EGxbq zX+~URea{e?jg5tE32oD$-}7OJ)oT^I7UyYIO5< z^SK%(%VY$7I|iWYqCzOwVaGL-t7gr#U(rYVWDi&wVcUrN&~K*q2Kv@S|tfV^@uvl7a3U!w#BwG~Tz|7hN4p-Fj~i z69`NS|cH@lBpZv}hH&39S3eUB$FR+9k=F5d>@r>WR^Lc=4!7pvts zBwgOT16Dn6DpH(lvKoMf$V%8$4N*u4q@KTn#t1WRS;CncA6RIcC>8WinQhihu>z$6 zCH?DDv3;{n<#GU1F&Hzj3K(d8fsjJeT18FGq3Jd0)Ok0tibQD{8Df5Z$o%e|QoBQ` z2=v;1YCbuj@9Wu-{x2Sinn--i&~Sjx~?J4DGkD0#-CM>wW-K57X$kh5*%cxz{5C6N}c=hg0u{@{jo9><^p> zXZ&v`sPtw3qXhsCG0(W*-}_PIkF{GeX-UWzdGiuN-*D%LR0U!02!coVU)hcA&5W6A zgQeGV=*5Hw1-T&Ik|7FO^kxPiY)69+TXTn=@rVRH+u)6Bqg5MpJA>^dzge{)1vs;w zyMy6QPslG8ZTWTDqa9to07V&6p&^+r`W+KVeV}zX0>ROqDU^ixO=sSXx0>wxvu68| zLK$3X0FoCsWT)OWPNlC-I`~d;|>^5W!@4lIW4KQn%Dt@4W56FAL#8Z$E2c%Ow$;Hv+XPIyBlQk)#Z%U-p0@h(jnF4yzE2SEmP~f%OW1K zdmW!Qr|)n;N=gDOgk_=>4)D*)@AW37nA=j<@R55hU8O5?ACol;Z%tB;8rkt*f7Wt_ zVJ4Rw?yh=Z0o0f-2210Zh5pFGfOdV1g6JaFD8(xzq%mmO>eM!ZWVU9h zT6OGAg0L)X=o0E6g5s`rm7h0Od#{`G>n&uAClOLAQ9nK>25GSQt^%pu0mQfpNl#n? z-X|j$OP;p4NI@fdT_G10JCz~9wch>TzOYxiN1+ld-0YTPjHa`8w2)IPNo@`ln_V8A zI(XOCV~?e=Zx_3aJdUr!xBg*r>6Q5nZ@FAo>6z8xKm8AbLI4PR5v-cYTNtwA`h2zK z&W`nbN=PZNYu&)7-aW4Y@5V-nVMBIpeoH2l^^mWxe1GM*#k4B1YuAEjwu~3ts;+H| z(oX}!LXlzIX+Jpk_xIrrr=8Rakr#cVV9>MdGX^&WLYz|jj z!!EDYwourEzNTB-ZcFV>e1yKwa0CS8*AY@BqcVo#Qd`aF_F7!tyfKeh`W?O}Hrp>> z&8`!uz;|s97KH05nD}pJie=JY_zMvmosB-vGg{_<(O3(iWfldIsV*1o6KP{FLoTM* zNj<}ptvr)uSKL{?h9E8^pyoIS$}i{iP?{w}e%wAsF~_brT`mH2Kkm!97OAg2%pdK0 zgr!R^7Drj&Fmg+)Q56>i+sDDe1e!uA%+AF2@Ox82(u^2!!!q9?<;S^#3nj)vVK|(0 zM;X7+YQ9W9UKlK{Eg10>8Q;f~8H2Osh?YIOnD25k?pk-pouo@&~1(1%0C}KBgzK=qn^;T35n#9y_QKZpj`*5bAT+e zE&EM-&QBzTH9Iv8jb@7%)y(tw@4K$BFv-5b!5^&d5;UKl!M2^WoTM-iM5dpqzZU}w z8)3hA)+Zt^Wuz;5n%MvPI=50Tbz`;#tP+gP2LFt&NLh8Wv);*$L9ABBvsQYOXNx8GY<{CM!{)qMpG5x+5dV<3G&I1+WxwmulUbF z7h1+MRn^28=!dpe6%!x)PXr+NZv@aJ_UabqJ4WVVoJ_@7BE@J08V1eywqt^3n$=hN zwM$FkClxO!VQ=BSoWH~{vL|Ga8jzAgq$%_{ zlqQ+$C8~dIR`mNVh|z)faA{-lWzTTthZMGc$0M+-%u|$^n9SyZkw@|$Gb#pN)}#x+ zk4$lL8B(SVP?bGLE>ClTmzb=a>HX)GyIOS&fIBga)g7!9Sus0{>9(=2{tXkr%qLv6 zB@8$hho%3`IBi^Vrm-n1b5xU5{zU4M^fg7KFAO|gg(W`e+p(H7s zOl(hh-G-$eGi{6VgdJJy>le+bPIO|Xf+=2(czo2TlM1!A=NtGf0m{Qc)-zGtVoZ@* zJbeX=Fet6RVv-Jp(8B(WnmK%2Hhsrx)`&sUpu271(suF}v;ZGQ6o<_=7!}RmT@^8Y zu}=GK;@3Zk=n9q&$~v)8-!Ub0tcjkEj@-e6w+fY&H8X_6W`0)EhE1qfZl@zaY1G}4 z;6NTRKK`04aDd9&-Zr0Ci<0C1{m)$g>nr$i_)ry%+3>Cv9lKI|fz{+a7Lr=|niEv{ zGo~ZPY<;#nWBCm?#0fuRxfMkEjiN??1GVz1i3{cVw{o8ww<`8X`ky`R=ift<((Q)0 zRmt**`GolDB(?7_7YnLtSBx;)ZagNOyYT(AYzfzy>0D`b` zx3$i5vEQPBPsN3Pd$@zDx!hm%lQ8YiB$KHx+TO_Js|!0-W$>-U7N zJagXnINW9VIff15{~5z)7@MrZBaMATX3{qo(XX2o)9dvcpUrvEnKI?8WVREGFb=p%oPq z{?0t`Xo)_cQQ#wp9)CFpoI1jh(|waMs9zM1$2&BDS@MJi_^Q96s??f}rMXPO!8hXm zi)lP_-ErmyVj53}mW7L3GOgCCs;i*|1PJSJqUvfskD&L4?RaJtYBB->0!;5!>xNCo z=Bq0vUH|3ZFkzA8)XeZ-1LF=;%!!RorrE#6-_Ft=yB!YRRp6qaqKfONup*%1AQP&G z3`F4|=`;9O>ZZk~CrH=|A!}Xy_-=*r^6ozn7z`t8Fk zDasLfvyUt5v<6F%Bq?uUl1nxz%TNFPV}-fa5gHa2n2XcJZVjCk%bPix1o9$PsQ;lw zUS|k=f~+03rrKbWM_jtuP}XeSWCaKQ&!(f^@xP`+=MLe_vDKkx}KKV$4iJzv4mG3&_m_o~uz!EhulF-pKb?-GAF`^s#Mc%ipF0<#zHD=@XR&pcZK1!BdI+F@9Tkov~xhyS4is z61-hp)pGH$2bc0bK#dn~{>hI*`XK)QkDz9Sma>kU)l3(?d944n&6*8@-NNOcNqYU~ zZ2ed$-5|7u6Llv4nln1@Zs_0wjliXzh*Ggp|} zCRAG$7yI+kbdwUO|15_->Ax@NYbSczWSkkMEAIh+b~U#%44~m3@nYviDcmsUn*GZl zw%)mFr}Eyv(bN8dqre-ONbRR4X;w@@l27(toZKle(_L z08n%oGV*@!P-oe1l0YR*^ZAI>JN@{l?3T|}W%TUhzr95~)fCWV%M(6woR}Mp#TP#c z+@JHbg&P7(jvsD;Eq@sbrnSw9MUO&>+Tn-~(M7=FFhTB?yUPr#paY26W21@qegS{( zyXVCamjy-f`#ZGKFCt3My#wzoal)Dc=nwKmOGh9>xllR!ilk$bGfrIQ`t7X*4 z3w%dq@xQ!HsVqerVh=E#)grxRPJ~4}JzQ-M<1cM3=T6&g<+kpAMFS}7?k05IZ|C1A zIW5M_@TGJFmQf;61tZyT z>wJUTbD)6Y;?=`an~0JX%}W}hGcug2#HO2v5{<(Peb3{mFUAM{B4=_QEaf&KNri;T zin4-DZ&B^LqA83Ut;R3El#Tuxtol3StcjlAb!4=p;LRmr@yC#(X_l5z%st= zrm`QLre{TRbWsUF4BWZ3P?i`F1qA$_2O0;52DX#&<8>9n8|}VeEIidn={hHUH(`u{ zKMW5#L;;RI;4=AH9LnSt5)46hEJen!Ao6okuWxJ5w`7ff-^(Md-`o!1Mml`YgnY{p zOk}d}Pkr6^q}3}6t~b4`M`}n{^?KELP&8ZYVV7POZn|S2ZqMsC*{})D^_~x7#TTz##84d}K;qzt z3W_0t3nAGOHUgz2Y4Az#I6NUQp4n5lgpMXtZusxwuQKh+Vj5bL8bM6Mwk_wg0Xuf(A4f4Pl z(%e||rsag#z*?}~8;@|=^H9{5ey}p-);H74X zx$OTMV%xEXL-TmL7R7-d%Z!^Y$?pj5GIGJ=CZ@|r5tEU($3TE*!d_Q>FyfLyxA0+l zNkqdIr&Nzv`zL6&FW=nRkaU4C(d7}2z|WHHqP;x{!s+~AL|8LV5qzt`1VPi7lwo!YUCCKjG{J_z`6z53}Na2A* z#zYUew!5xRP%Ji`5hqm2XIr!1yNU4|`8rr*_pH&1Z$?xuxm_PG@w^&hq6Z(mM+M%F7y6{Lsv z<(amf?xt8EjKX_&#%8kkfM|IA-cNgJQKgc$VLGaxRbc~mI(r;JaRm5n=ih1nwo;sQ z>O&KIh}bHg&_7rqF=N80{I124B~F1rd~hqo|KSa%Dl3)|u${_m!3$D3|Jw=ia`~S4 znKPl9A6d`S0-4TZ$oqQA46W2fge=l<`p{S7?KldS+=m3J!FPB;pwRG)KmxC#V}!m3 z>@lBSFC!`zhx11{cH1Q(8$jIUxo|4GE0G#AOOQp#lkpqIFe_c(23t_7aI2wtrP0Ow zoi&d)hV+3T`9y{g&xSO}cR;1Tyq><0p(g~}1TCq}-}X_$ndITsnevZa7RNFd5!cR$ zum||Qd$IG7F;7?DSMvHShgtFq@`~B6N3NUd65j5Cst1E=xGjGOCurwCeb&=X=a07h z8*NdL0Q9%>)Zy5yvnI~)HS5huOuIPSwMJY38rZ>+{=_wtaR2b+~Z4K|FJ}cOdhTA8d1Te7s*Wm&fIG z?0LEM*=VXReTPcZIRa6L3e`vO(=NYL`<<8pfYX6?Rk~iDsPM<|f}{GtKS%8POR0U1 z*a$+@o)?6l8pRtwd2j5dmH93Y^B2ofuGW5DrARjG?*P1Z5xkvGQw4Wx1cZE>bg}^; zmEQrHXG5bW#>~oM!;W)}*yo7Xo!98ut?2qx4uiKLDfIn;+3cM5JLh0vOov1}vesPAT=HqM-AcrFe`?@EotSN7^BxSIIORC=7S&a%gH5@I7eqsnhjTECU?4`&-bV2 zov#wy>d+~Yz!p6p?}v=Nx=LuPWe2&p^S|<46a_=eVW7~QzF|g(&BHsOVO4a=V zZ>XH=A^z$Nhkq^Ie<_EAuQ8#6go4RxxxK*ehI@lNG0%#2d#RrW`cNQxi3K=2Qv`DS zjVkT#edRHkG_DYS1LiExSAki*q(ag-ZO4O4$zM<0jKX(YT4?{0O`#>>Ms zn4QE1w<_e($Nfoc^7ce!=hr=3XJ!-XC!GcBi#P>b&u`>7)@wqUBjNoqN++vXsZRUM zMC+*^y!X(>;kZn7vkun>sI0osvAXZI9l7D{8{XsHkr-mp9k?MQApyWqWIw0I2)sq- z5cH-n=0WMV)g%}}Af(*N8e^zB9q<8CxjaZIII4h6K^;fM@QV@8jYr;VSGi1ybN5wD z<^6sF>gi=tx&4R1vM-0CRTy!BHLW;$AN+w+%4SS;WgJ#nzTtTFTiTO3q$n5ns^i{DGxX{OS<#!Kexwd{)vG+AX##YTplPG7?Fiaa@G^)l(^xGS7UC* z32Fd9ad?fhyA9P-Jiq=tl)7oNil!i(K*pz7d9+bP=La-AcT)2{by zIc588FY3Tx7Q0oVJfmf&i%3lo&X0R8m8C}(i+$teL9rRXK9zGz3L`ticXa=1GV zSQ(;$5e&d;ux%#TV(SMHN)QBJt4nbQW8y`}ilnA08yAh1c_yj;!T@Fi z#@Ckr_N;z~gl^L7L!k{Sp_?igLqxh)cbgr~!;z+9`SONIat7G&p_G{!A&Za(Uw9 z81Ixof8td2XYG$8w)8RD*W3X0;HE!bNrY}4>VleYg^dWnolbDF)7NGjed|~Cv%IuH zToL$@bp>sSouyb6$7&j=lwhf2p4E4|RrJYrC#2SwvBJlrB^8wgMHQD>S>W8n0=# z>9+;8f|^PKh7D=q#6m|a9UWCxb8W&YKF~M%g8Gz_vhv)9oV2LyGKR{HPOH8|FIM*4 zO4ZF11Ft`^)FboBI%%?EmR4ndpPryBmFXj8@6RQg(jjy*Om>c;)CzUK(CF*-7ZdvR zbH5Ywd!PtKY18JhU5KgiaTP-QddvqYqc`fa zhBm7@?{N7dOR8%w*BK3Fuc&*GyCLJ_!d5Q|;eGXVkUVbmP|3m1Rwxr(5x5p~Jfx_p zVPLbwjbET-;g80W0gtKC1lJn3G4$|Iq?K0Yk4ZFDDoiJv>+(C+y<@9sj_apqy-x;Kc9I z4JAR#86>p6&U9{(*@9Kw$iGW(=xvCTcYb(nRaiMfV5l`{=twLnYf&<#cN zcGyw!u6r_<2lAk97PL*u!M^t9S0jU93pI_s#gIQk)FArw7gOvyyKqZZ-ar%JO{Zbh z?Ys?g9WaN7hfdu-nb+=zx}c^Exk-Rxs>l^p--4O?r9P8(Un_qMzIO=s=7g-zQE zzqdF}*nHq0RQFK-A+4pgpfUcuutC%)Dwf{r>oL zYc{uy{Ff}pPAwm>tcUSxj(}Ac0lk~A>y+X7~ZsM+0)s-K4y zI@#%+R{xDM$q`1(hb5|ohR~Oc*-A&Z{xu^-)VNcDk=2Qs3YE4e_U|tEGZZTD!tnzK zCkotLZQ)z3)6XPWV`fyyojE{5N|fg+v1j#ZKY{UuR}74m!1j8_1PNed3R}y`MT?r{ zsd+K#!c@Ksgf9J|^X+7y^VY5e9*9=#2B$Rs1^J{{fY(zRaxO*>qFaj-IGR+``)+J4 zAfr2?fTzM->NNAW%$#om7{zcsv4ICY>and#tJ^1y)`)HMmRnTPY-^}d<(oZ&kR{if z5E1OLzrHLzY5XO{a+YPq-A%yP6b~}PG+pI@by8+)-6-z?WlV?XgmT%OGUJK!GbT~a z_J~1-8M#DoGloY<4G4q zN3@3_2TrSug0m?cxMHrh=10K{Q^#7uG<4?MPK*x~v)NmieJxuO=9`a^oA6Ux5Uud! zK}pAtVZA{LUX~3{p6;8qBavee22hBd$Ts%qrKOOVE~$Al#?Pu-Lit7%iwA#Fp#Bg3PVg z*rkLI*8yxoA67VJvTn;k=qW$m*NC5G^LCXqTh3}$$K^%5$)F=x&Oz9e&Kx(I48^nu zv<(hml%u>c>!jT|bC+vHja-?!A$`Sg5k-jo&su=46ldd1{^8b>Mi$p@6z*p(og3&9 z0UN`ScjqsbQgBBsZ!ltR2*7?^#iZ$m?jBF=HtVz)S?^&J9qaPKfpNAZ15R$=Nl|=A zEROnbqa4Z0WWMcRq5xg_Un_i+z)ig$)T;AGQ8Kr~r8%PhG#HE-a|fi+y)QEN9)5(t z^NVz?e`$@j~tozT3uXJ18A-?3ZBT0GNDCD%7!kF13b{Pe?O&3DG?z@Tv z-iNGP>#oL`JmSTgBhY^UN>61*5D!@*tMei5Kh}lo;I0bVntth_5}FxfW=ngiXt3Cf z<6*R4LN9r>8X71mYp;X96UCLJ*nfax@Ha<_BMxjC*yNS#3~j3??-W*3u#bnRCo|;# z808#5Xkon&lh&k;;k)4{5PF~8%`E)DH&P(#<|v{;Kbfz-eli`9$Cq@QFvMW+#`EKW zVe7w}9KiIK64%dblhVBEgB@7qNc2TDtF@V$q5ZogAKS`CwwEZQcMba|Q+&$l4Q$kF z^V@bWZ%Jv1kipuri51JkpVLmWr`L+X%9bq_&9420tX(fJ%<$>>>Ql}j-z~(HIWo*Z zNaQyP)HWaF8-h_{;>oC*Y1s3OmS1{XeD>q|!`mifi#bKVk-vYjF(IeP_Q1Ew7M$(J zcJ44DLTor6O<@b3lP3J3Z%vC4%zbQa==kuTIttaOTBncN) zCO=k|Ngig9xpW%MYZ102Q?@->9qfdsiW9B9uH6z;kK?^Ti52V+z;|igTAG+jy*it6+GHsvY-lt&P!yx*K73TOPU9ONc&*W-xL` z!2KVG75-9K=8`)CNWtW-8<==c!?_W-#Dky-Pi0iXDqoC71E*%1_2Q`fVXQx!RJ(fJ zx3?PM#UTi$K5Sd<6pWU6EM){K!SiL43w80{Ppi;#R3U~uiB){3*cjjMwzr6=JH@p zB+p0Nh&As4TaEoe&TvL5w(xg;$PmOw8K0^+{xw z111meADbJBxY-sG?Rl@@$Ay4OT3xAn=96>@X)aL4{1S)*w=HvmD23k{)THEG<#*6wE{}i`i0dn41pP-IhvH0Kg&$yx)avax8eiMJZk` zGk1w}kbyN#K|q}pbD8{UR}yDbt*=j9(fb}A1ivM|*@Vr@q*uey?uEv3UBUgA7vXZ> zpq+q-*02X{hW8;7VVD$ocYz%d7gfX|{S_t9E|-#V9ih35k*~h>hQZ#6k~1l%`bE!< z5@&!B+b5S=RNs;<%8H5|Q^C@l{BgP=;U~vSlmRtGC0jC+n4l81-4j&t_R_Jg?0~SD zN^pAZvp9WSLB`yU5-R(~Mio{H$w%Mut?w5UaWdABlyvtp1I||~32Dgzh87lA^@7zD zN(p(0M#k3+I;Nv^30ZF0A1{@QRAh&&CI!13(^TYGFq0a}qb0kw=88y27{b*tH*8{m zuomB!Nls%C_U9mkn{FM+=?-R;{xYcVY!V1sJDXc&`W=N(02FX(L&ITmIr*~xo@d5# zsK;e!$`0Odsr&H&neW+I;j<+0`V=GcVSW=?1G{+Nb3)kmnvXJu===F7QN)E2xL>}2 z>ZoM!00P7{#PR3~4{@j^xwPfH56scx=Y3UH4dqpGczzVMFal<dg|a+!#0 zku+3YYuzp{y>f+Uho^eAti1ETsCwt-36tFclWMkILugbJj3WV=@AxL1V}D)cM+* z{GPng-H4Jg`ty7b_aVXM>MXC8tbghU@K|~KGqx|DTtHB;;rZ1$szVa~^kQjwMc2?U zP_9%USLSE(DD4Mn{BVp|p$O5U7sB)4#=cgDeo-w($Mz$b5s{d>+ZtQR_@??&%WVB- z^b=p7%>zj1p9sa?nzf%CVHm#JwUuAkP8R-qS>k?Z4MLrJ-?Ze43pm;wme(B z@O|kR-P`&SQ9wJo-1-YOPWzGl;ruQ#5fo(}$9?vzU_KTis8kXaQ256x;Kt@ z?nxEzbn}OqJVZ6!i+iA^lZCX~Lz`PcNY9AxM8}Kv+j5~gJl$#O!V-gvK^yaG*93Kp z7s$726%xgzsa*3n!&j$*TSZIq?s=X#jyFQuHxJWhX@S=Z4M#Sy0++zP9aJRub^E+J z`(owKugRIh94n7UujPLX0tB?(V$B?aX%?5_Q96g3M^6j{H5RRs?=j%n2Q}1ISBBFA zINGb#nKO$bG(`&|KAbNpzcC}Vfa%(5LbfeH1Oqq0{h{rt-hC37~?}W+0X34SGE~KNb~7fE|qYXCUQk?rFo_${1o+lXuHn-@C-|eXS3YDRtyWB zy-|?{7)2!fY`ZJO%B>nIUf#gcCPh_T?yRjFOA20WzkP)>n5r{fr?~NWttIM9EW0B- z^3V^ts}lrg{WFbOm|9#LcK$nt-~6YLEq#~#@C$7;&G~r1e;9tERc2HmdpNKna3Oi6A{+`78pF+6m zHz*^`wGQwNsFDQ02r-1p(vrWLB)>RxX{e||qsAp+b8K|BtKa!>Ad54Ce-a+IYie~J zmy7PSgN34;g{J3}aj|^Cg6@o|>68{n1Uh!dh|aqrUbFu$|CUcO)QdZCw|BlIxuS z@hi6j&?9%ZuMcfKp{QthNoOxBqDz$qd|)(PJ+!}$+=4#hju&{@j`Nvean>K?csVv-qu|=YC%P!ZhNrS zwOUs=)9lkW{TCT^IlOUBmmh$!;8?sG#A6{wx`1i|TWc)^wuH^$E(gqfpm@NOoVCY2D#3zU# zoyxacZ9N?mrFeM--|&uKiDus+@A=x@MgPvkDoTOL_ur^Z!Jq2_ofxl+^;gT1Z&%w4 zTAvql*>(}u3loPOIKeK*x&7Eo7h_n!L7w zFYw9Ii!zdGZs04>)-p4DIQy~0;%p82gyPE9e5C9pe@9wlqL=%ZDG;z4fN=|3acgXI z16!ou?q|b7h(rqCCF06UPg3feH{<3TyPe_Q>F%vX&_1&OVZNwbY#Kf#; zcp*+KGW6=|HxV`FMCNE$NdqYXCrl#D+v@!wa~EE;7tXcgi=h`62w3X#((8+^b*V|d zLz2M#rB7!kkF&#BNPHxiFt>a9?bqEDZ)X%XVSoX@(of36&A`??pRqSP3(a>(cpLt2 z=*es@5XdL{0`;waX+p?pX$*G^<^(-_(|e@X{Y|S+UeXlR?VpgbRumQ3T*nBD;XX0H z*_lRVL*Xd?zB3j{P@o0jTx2DlL71p^e6WvJR z;dcu0NzD{{;L)X-BBD}hwqc=rN;Adn>|&3#MneQU>vi1~ zRziq`bU17sAfZWScVB&a4DAKvFpC*?M;K0inPMaX_o-i08C6IgJvjt|kv?jwBq{D3 zu_KJ0%(gdNVCl8>+w9d>r?y|wCm6F_Pn~49Ja)U6O05mFxM$^McS7qAMiU;pEEMLu z_0`$Anyc!!hI0d@*w62s!6Mp!CCFdm?iAN`w1k6lJDNd=Jq@r#Z7(`F&9X1GRSmz*nk;n1AQNd0K`_EHO<*)Pcy+P+{E zIOd_)e1!%$8RjGPsip=QbxqOyo^S}GsDZlie36>kCVukHWp!pkxBS|BZEz5V7MN6d zGTM#@6x{I^Dy`;}{FYx0Cg~>A%)r}Bq1H{Y5l0v>DY2yqB3~h@5x#Mq3oar9cPW4; z^!v!a8U0-QW~7O{9|_y+#y+c}%2)rfa>@qYKRvzvwX*MAT~#mgrXueTGfXo z-oQ+}@j`o${nL0ME!g9aQIAo=4BFW#>ycgusQYgbE-0ur0Eyn1mhfYglW%MNgbTO@ z8MOSAP550VJ)N_3xRA11wLJXd$n%j<2i$KzQ%=g8lm z#|^hoXK<@W(N~_3Pu=#};k58!?w}AgW&Vjidc=gU1#*yfEfP!tz~MHp8Py07BmW6Q zVAfVAkspIkpj>F6962W6-{(ITKD4a=L-f2)`F#SN|DBta=ZoC&GJl1e5$fQCa@Yat zKenJH{lCduy^CN>I&r0P6QxZyTJ;iPs{HLPpflyaG+~qeWKZ()r|yrivbj>{jD%C#ovXm@&f82@=%;D1l^q-ibs3FHcREo;WEmF!`1;j@VKj1gYg@M^aW_5|Yhu944Cq&N$J;@jo4M+D(K0XM1q}w>|4N zA+fu-Tggx1vYUJ+m!=V?*o0OIe|zSAk`Hx<{ZGSM&ei+9me0F(z0^$ipX=*_tN+;M z>Ja%@{QukUI3@Y+mb-5hVs#?4C2#U#nwoZ5XLVvXvomDnmaU=Gk|^0c;=s_6si|?P zxs|>j7C)mYIVqdl2@EWC<>fu|F{TKYqhDV_J=5v9cN?RsQc9$nIfCYk^qh(&-_CS? z2AB2-?X6<@C^W0r9T^6gVv6;w8^#~Uy*=eCykYOHxf5}b8*vCF;PyhgoZH! z33SZM8^eK9CKE$lnqQLMI(`(IAflwwHg_ga_w2jWR#QfG_0UzaUN{({$PZ7e546Ju=`Y^^QprbAeIZ!zXbvB?FWxO^ zZ$Vl>&)n%g#Qi1C=pA>%Le#2yZ3EH^w?=z;v?RMJhJ$u^HM5}!F z*}#uVaeyr-G~C6&^bL=M8Y98Pq)>fa5FXRKXI}qyMxP!rw}^iIuu|=E7Wo)r*YwnT zc)1#_-QBhc13c|)Xpyql#4w)R&n<@?Wz3jInOAZ28_h*BICf$xSsHi$O zP5e(!L*^v!9oxBQQkU&@{|Z+p)Cnbqh!->_wn3FY?s(Z%>S2``<}__dmz!RQZS-W*Z=b4I-2 z(TK(ou1-giOBGs3TX^%l0#;I0+m_9((oZvJx`dY@`IJW}aY;c!iYy@W_l2f{2qTM1 zagYLq%!lrqXL|~>)gInbZzUc%5TH+b(2K&)KmB-pFS@EWsD2Q>-ucqYZ45XcJ(uL%?Zk3;UB{31o9B zs-fw7|MDD|@}%}ROp>t4Y~g)GpKwccmNT>f#}hxr5}x-~r@mgmJz~St99)+7F=K0# zXGHMDIUJOE>%-Z26}38z6?uJ4vGC=_+tYP)=Q6lrf2slM!qyhDSU|M>XfBy69ciUM+Z2Vz^#qVN5pQrsB&{^P%dkJv}aaWKXF=l=!3O7?S?!y@>^B+ zM)>xe@$HErgY_pq1@-To8wBQ-CNUZ_(vh8qTA}-v0wO3Jq3_4p&!{C!92*6KT(y5C ztj*=+=CnfcE0Q~^Agt4TgKhzp6vRKY3#)ayA!Hcy&uiz@Xa}j06X~Ag)6yc}`1+Ns z>Uv8_K2Fkzml!UqJK(i#Mnm4ONKj1G^sAUU9sys6m7Yjj)>#6h0&~+A9%68@Kd}?8 z@7?iyXtg{8P1Qcoy}i7!JzK9be-)c%iBnhL*Utn;mv#@MWD0m`kx?onW?h0$6_8dE z`pV7gtD=#wCsdg>Yl_h@WDyb_)x}5C(L7dCN6O3qQz+r5q$#8(glj}OxM0{2ldc_= zArwZL_B}GHe_04ph}u}XIG4UGBr3Aq1_kFZK7MMrlJ=rHw=CqYg1|xpYJ% z{n%9HpmW1fuXQWe!|*FOsNeYUJ^e-wtD@aJu`#UI8Q9qqIxCi@Z6L!4hQ=St-sh6`Z1xU8&cy8rHlWu$dLcV%)Vzd{ zBHd7JZDUnNU=1?HjPH=6k@xlOuT$9eB~wnqN*I=>=-FWcCHN$5;SQmJIh~C(0D&ME zd1u{Je|I`v->O9mEPZ>}!!l~s_v+Lo)duc3=0%izW(u;2(cYQq;E)(|ZID+WU`5_L zLMz8X&B^+?$HT!aYl#7hVX>UTvWsfYfXKtKyaF?-yfK|$L7-oTUBi9ilIycVmYbl!<1Q(XOSw;{rye#Eg!Mqb#2gRy}Oa zT60X%oZ!T#UD`L2SOC#qeb!^Svk;wN3wt>@8$K{=y9IL)c^0u;QValm?EnP2MW($3 z8A+r(xsIk+Y{v6VFN3rzG4h-T~lDv=6pQz>RoOx-v+aseYg0)}oh-Xli7nkPZT82jz zxxt!Aa=kF)idbm8AF-Gqyt_GcsV!rAti1MPa&M#xD0Z7FRjNtyW`4yCTdF&DhnmRV z>sRI}-1x5D&Xl}gZCOaf5<5THDOhLR4vQ&JEP_`schmFE=<2l&k8+ry zbML(%E3Z9JF5THz+Rh;7RDIY2?@i?S37)0a61AAE-Q~Uc>8D7kUDSSj()ueoLvJBM z^-P*vXA`~p>RCE<&Jb^Vd2vBjqtxg$ef0Up1`TVGOWMvB^;xy0VQ&BWr93;oMd(4; zbR@d{?%*(CUg75W1oaFkPW3O1B~m-X&f<_Zv^v7%iPNyEyezGlmjw$I4l;F?JGFD_ zrte;>6VmK~Q6_T0)6*|p^*>Q8S)M`JvvRHnrHa5*(xXv%mm41I+yzZ{c=Zjn;fXy? zid%U$^$PI(r09=Z7*abiw&&j9_SbV!iQh&yvJ~d?XU}hf3zp*DYYJU{!}2b#r-Ud4 zXFB&Q)l+Hr9<>kT08SS)M@8;KD6_Au&UVNUaW~7?)0kcoKOm zf7QgPn8`3>EyB(ORJ-;6Et%=Jhwc1<3WM$1>_1hj19{@F>{m7LwDB|R(K_d zV%mT9`9{3(nGspb>|d9->B`}C2z{`A6%yYb>ZR@IZqCYOQRJ4_r#G&XbU2yDan@un zwm17!Nf|ZCDQgWA%8wX2s$wnKDz*l6ouP)MhvQkbBEc0YBW~ui#PV)9NE{93aJcR0 zdHRRauGj%KQYV^+kulhvC}d~Eq6`y#0x2ISGWt`d`E%c393_3mV)5fI4EL^b$;@v} zno~=Eq>VoBb<)=9^+Poh?>BP$sJSydf0V8Wwr5&OWY< zJ=Wh#sKgG314r4?(nRwMq0tsi$~x3LNi4QNg*Lb%APM=Nbtgr~eg^}3e{eYv$zI5b znPFKszeI5Zn%!G>FcEn5b-@+yy{QD3Mpn}UT)e3~*k`-3%nE#oo-kPBwD?A(AxwB| zP^=c}%&p9sm}BG>!sESR&fCvShj@CTkEuc3TaZx^`##RyO_+SVT{xp29t57;W9%q! zKz=$yAAF?7V{lk<&k8y6%ee;OU_4NzaD?*u2Tzgrf%*6x=}M$Chkd=iD9ENIahyb> zK*?%uV?#P2-F^iz)nT4dQ4`A464H=>X-rxaL#XMU?2VeqARN=Wp(A6ZL&L`4TWf93d#4RiHdb zcEH^lA#A)BUT{aoqxi(&cxFQ~kt(Tr6Rlw8kW+8G_6|>Ha3_%Ep#zf?Rz6tV3??+) zCXNEwzJ|eO3R%ioVB$H9f#YO#WFUkPinSwwCZt$-?C_V#rkqXU>~W`m$kK&5#T9Ym z1v|-8Fx&qM(`rt(-X^$pcp5%uQBYd~`bSi7@JWR#aq)uG4$JxF{xY)sW(1LM+Bsrt z1K%0(xU!(6^*m&0;ZfV*AfOP&-GZA&35waf;p=6J2=+Q(Eg7ejohfm)B~O2Z=_9>~ z44wu`<)OAY*3edfhy^zP5!%IX-3L*?i)wF$ss0aoSKNo?;9(gS|F!s9#z6+Vx$jJD zrboZn-cl@#Ry_GJ=GqvcQe7g@{@UVyopSFC^=yE{c^e_Q9gGGhjGjR8uN+G=fmt&B zH$SkaJvWL|E!W7~mcwVW!`M+k zZs&8Wy6fOA@YJbh(V*t4RMxYOBgdq5=v;6s3@b9jJD{31SK2M`FJ$G%AV2=F4b(YLp~A4AHs+m{O@~{+M~1 zB#RW18Op6;OA=j*=9*_CNM(xk(~tR^drDg|sOxy**AOR)$%v>&Tk4xT&Z}BXC&VXZ zg?_M0cAoYcyLvk_U`iqzJx6LuE}BXu{<2F&X%TbX*5#eJqW2eNw~1LV4#${b0gRtt zx*vg&Ji_j$v!LJhBn#7FI5hkiXJRrjse{p(2FaIY-m5WKzBNczn5|&c@F0-=nBh@) z=o11bU^$w?=e;TSS1mbfd7GL3)1X6lVmf7FW66_I>OA0Mi9ideP16xYgg&G>5Qu$A z+jmSBU9RT|M$~*`bE5F~`Hg4Lxog+@aUy0>so;Z{-v@_9NzTp>O&tkq!Xzo-c}4GW zZf&taTE84H(u11{6C`!jtYCiV`h7UGp|0Z@-=t%(Ldq0)C;R+Mfg4DEi3W%d$V zkH&ZjV2#4#jz*kn{4s5gHEqHK)AFg^*P@;mpCTht@FN}5gf8{>Hwts;1UYiMma;#X zMvO{mNtN$#kaC4EsTeY<`mWCb^hR7M`y#|hX_#{cqq26GK z3I92$adHCQkE$A;0P`+QyYyZXyh)|Hqj0{sz~VKv1Ziw+Y-V-KVOqQzxTQs4bHjjt zwB3Df;x5!O@0;j{7q!G(b;8+`a57!(PQ{YYewokb42CCS@LGnh&;Vros;($tHs$I6 z^@oTQH@~JKgHd#lyu$4FqD+73E-6`A$xmQrf}!IgE?X|m2+6w##zi-xKwGO0UFtFS zl@%E^uc>)>WjJM2VQ0!DK@K1ie(!d0^%lOU?9gkM_c`M zxixEzC#5Qqw_AYwhCt@MN23|@Eijbu2q9f=Y+;=t9`|fDC~dKPhuZBayk&L!Y8}`H z_oM6CQ@i%@kkI1e0n|Tulh>z{lmi}{NcRc>sq+)fS^CqQTjv4C4I)&X`D!*c`^n53 zpAg)srDkLPy=m)7DJVK^{CFmac~nkSHX`4j@ZiOa;FUxheSE@lU#}i4BJlmJ2g8YW~ zgVEV}d36EEgK@G=KT0Ua_m_ql6%zODfteqXZiIi5sX3fpDA=bXGvBtE;cAW!B0KS(R+6zCPw;vZY!(o$s#FF6_=)vR*W@aOVy7(+1tt zyDvF!AsmLA(PkcwN;g+!#gj(K%V-U!_U-Py;kiHJ;0n$^*uJ$bTew{oJWjbo2=))? zUy?b23JUVNF@|)oP^tXBuFd(GCx;TdVP1ld?;8U;lgp*gj+YPi^W6$V{LoX(awo9iimMxCCabm&%U-3%4(xI=Gdy@d z`9onaoWIIwBx2q>CZc+`Fu2NaMqRvy;3j>tbr1O2Jim0}U`~fk9}il$8Z`T($DF?G z=0e$lJi&47L`+-=#FyJLU?3kMu#4z;eTY|9Dfk`oHu~h^IssvT-ii{hXQeq? z@NHf=|9)-P$3q6HEbZOe5Sm-j43nQuo6E~h`mwNh#CPkIX}U>*D4opXUS-frP3QMO zy<%jf2+mg<@fkRqZD$tsH)yPpkn~N_wjzVQ z$!zIm1Ns|)RRBnz0}UHkKQUh#Lc0im`blZB&y*>uvo}~uzcx}|vv&s!ZRC!Ney5j_ zQ4k*-wJtE%_=)?W+t)9&b9yXhqX09FnA^<3wzH!$>9=pH;e0y}+ML~7P2_mwEANSM zflu9X5e6L!1)p0*72P{O;c)&V7#0~(7heI@SYGcw-#%RA3{ENlh-`6mm5zI|$IGXO zElRyIML{0Ke7=H=hZ98ej4f zvNY={I<92$gr=z3dYTk9$8@75l|ph%qP8#)(wbf+S5@K1LfALBB#fhFHpsSh5f=fn zgPXVAB(`jwK2ZUUZ$T?iV^O|qZiDwvEv#`%wGaTu!i2dwzj!QNd|uWJgAfq|3j)Mk z;T0#FJo(3{g#CTp?-t!Y<}X_oObDrSaYrTJHE_InrjNET#1;#_go#twUc-^F{)`Fe z15E>a-95pP;Im-z#RZ>Xgo~MKp#%tVSbgMzf`iAVAc(8vz+Zf96ZHwmCA9`cVkqem zc91W9aN&Ju40*rY_sh8X_|0ItX>s^CZIgb$R8&*xeRhknKVE<;VRa+Mf-;2@;j<%o zOQZAU?S{g^_n(6jF1-=%ghs*i&i1BHXr}F6ph}cWaX~s)=hajsf%`K~>*6<@u4T5y zdF;4rO#JC!M?ygn(z_MNOK&Pv3*3m}ACRbw)o0#j_ zTwp)f`Eg+*Ih@=33F1)wL2y&eM;4q@&mJ;e<>nW<%(s@y`2G^KRYM8elwz(YLgP`e^#R%T5P=A8t zv8p`i-uC})GruVve{z^EZ!&+fr%l$;%Y z+u6pwctLC^L*UWNd8#9O=O<}VK}5*kPewwzH>l@}5E;S^)`Y{6eQwXs8y3?%ZA3&w zQv#{a^<+DFGg2=?>_LmnJF)S%< zgR(HYA?mW1_rw!u7qdB{q$;hE63E@5(wdAJ^D%d4s@_4Vz54w&O!PUFn~%9#2OjNH*93K#J<^p_<>Sgqtg+ z%Ll-$d|}*Nh}H>U_7vwz-NQmc-oPldk^VDkbONN6Eh6&39MXk(amze}PhAF%2h%CX zO_H*okHKZFfeY zL9C$V3w(z6`)?YH?MXjc9vww9$Z@1LyG82cUBes0CuC$3G#uWe0#?4LwfSZWW6Jo= z=QLe?66A}*XFdS|fe9jFL*Q3IDC;|+VMd3a$@%fr}nf=n$=cCBd z04=t#53U|^iZYP0k`jud`+a9y%WHxn8kO$%N+{Lrh2QFjnJ599yru(uGfoW#FBzH= zUi7JXiL&wK+KJHsc$Sgx)Euh?miOt;EsdVAv_wMn=}E$@0ln+rH!>^GFSKb&Z# zJ6;)h9~dH>ICSz{R~NpxxWBut+Oz@7LpbfE5vd9Y>`BPW3H@E`_wxC$d9z*<&h+wP z%e|tCoq9ax9h35+nz5+;NhwTybDh;PL8=XhFY5EWBQQ8Miu?7|Q>mw`eP0j|bo`LM zTP-9xU60qyHOne5sxYH2b3#tOV_k>98GSNPwwSJpuD1b;uDW2_JJQ49AL@VQTXiCw z*-VsEMz=UXzRVcriB+eG*tv&{-u^M;3rTpuFPSU69*Y}jiXytPOb*8HI9 zYH%iy<+cs0<#HyJA!S#Q1puHNVzaX!*YxYzXAXi%PDnsNU>vY)q5Hfd2}CG#b2|3Pzg9S;WqaQj zAI!#hwwYJ-OnL04w1|WwVJ3khh3H~SF{d#dg_tBoUaX^ZUU#L&1<-5Ea-=9{r%8k> zq1zaL;%Yd0v0iq*p-l5?^$7{>Zf%YFM{o3pGin>pvUp`UJ9^WE*%NaEYBeDyzwGo- zHNUtZpq>cF;6o}~)9xT6f4ANUUxk9d6}vIO*2H1^eDQU-xxweI!+`TK)?w9Umj0sW z{s!?GXwC2(ilgE1{@ZP^wdO87T6CCvaPEUABl(BRO-Sa!4Y9H@L{i14FE24aq}{E| z;NK?rY0siMMXi!>P3u=n@{n~8ChAP8X8O& zR#jnjA=vsGdD+X2l#0Fx&&hTU4twoZIMQtN_CG1HgySK-c{Y)`wKe3z`YlM>3KV#xHpA!aKz>fRX3zGly+-kfjF zDT;Y42K1ebxqaix_*%1C>C%6HP-^=~fe)mF8`2UFQGqlx2;Zv+ldAi z8(VF%FDW=s$QL?z(A+~ut+gDKqBxbNwkix}RPAv4McxLFn~Ji;ckn=6q1BP*FQ|Bu z@Rx*B;ur{K3fNj)XDb(7*WA`o*W5IDXwFx@ITvep+B!c#ZS9EDZa1D*Z;jlp>|7Z1 z9i0t;C2L3|M_IN!lzFW=Y4W)JiRhD6geNdwo0cnr^)5;{2I@2%G1Z}FTfDlRRTkHi zTh!tPOHWzMYQP8EU=hO@)$5z2*HWCLgQ(#HnpXP9FWA8fyyh5!h5C}=tCA85kVOP(n^2ZD(Sgfp+dQ!i41eg)nnxR;(RBLIBrev{qw$6Xo z|7dHtsPYA9G^o_ufr%&os%qkTM_{Hp+XO^MHLZ_=S@K0+gcmkOP-7_pZ|KmRMC}!u zjovKPn4zjW73ep9ZJv3Eqv;dqw=rG3cyh;1)gD!nKFONnp|=}|EqGWzp5cBFfo%&d zpy4`NV@Jzx%>(XCYG;w`cY%UZJKOtw!vZYx#R@{gL%P?;OXKAO34)!tD`qCG4AisD z@uZGr1EUL4#-=a?@1}uK=JdexRp*!_&yR zHHZZDin&D=px`K}t}gCgW4-Cqv(h=++o)n#CtZ4QqHkEdHv^+_U# z*UGOICN$!@dmrI+72USAz3`Y+WPsXn?5}oALj(B%qf@&=kC{QYOg*>oadY09*?Pi$ z1{W1sDDprU{ndiG0u5SfLYVvEOo;*$v#Ea7QpIx1VruP>z*x;Dhi6g4331#H~p-qB{+#vD8GHsV=bP6WTYiZi<8M;m}bxCP}p{&u37> zgBUwqq5Z@-zm&_6?Jt-Z(BFrQw&yjo&iveebJD!rj76DX7m;8@J%sc!X@&M;U) z4b_CK={AncIPOS>Oy86&ysun$b(sA62QDj({;1Wgo~4Z6|9D5j_}Ch6W`AP13tVg_ znof0&A7pTM9Jp-I>Dn{t(P8D<)jXkuUaHkczgN1K2THR~X|a(Ik$4>kr~Nl^+QY{3 zmmRs(-i&Sqg~;TSGgvzHogzbL7LxHnnq9RmCf zE;j58K7L$5MfBuapl?#EEi{kGjXqFgiHwivT91$bh3OX7YSct`7K(D3EwDq!OmJ(Bc?Rn@D7HY_n=ynNZbdO&Tn ztFB+XgreNaqX>{x$U{>EXczEBV*`nbih*RGM`SS0@qiSrYPRMaXSU9*X#GlBk7`r& zxixqNcmE|GnJ@^xZxhnyyKc{J{!&_+r2ldl4u?^FYGX2d4z*4r6C9)MRp@@`b?QwWX)u4q{&g1wa@P=HCiX|&+Fx^=wqQypQcxw0BpP`;kHbsuB3*LHy zlo)M|HPkcy%$0d`dieV4P~`6LdgjZ`K`orYkKCGlIn&4{SSO`Ylz-on>q;&H&StUB5K*#Yb zkZ^%bF}6?71yw|*HchrA5@<75-+GW*$f&NplbALjDP(hj#_Y4O$v=Pcd2wX9(dU|Q z^Kg)jmVSGe*t`B0WBEb*;1vX}!Nkhg=cDK5-8nEj&-+V>&dF3Qm0F8muKqxrlFaKN zR_V}AW^qh{0Y zsmGbyL70Y-#~tD+%VjqyQxK(fTQ>A+0G=m+)tQHFVB+_e!2VPLHB0P~kpVN-z+qQd z<}k)b{XdTTTipyWLN)Wsb+-NAxHS`cLPVtz_VstVf~;MhdksMYUUqPjy11Oz`Wmgd z4OGpzb%-hRQ@W)&Mf2{zTzdV98Obwa*R-Wv)I=G~dn~R$mZ8@<=<3E4;`{}6$WNKt zVM8tW%Vxjw(Ox&b2Ki!RQC_%?U=U1O8Cev4L*Vl^eMi<1Dr!vjulF63OW}WnL39j1UkW{14RDmA zZE)KknZI$toM}7|-Y!`5pdd_calGvAnt|G*T1(*eY+rG>*bNmb7+M++kZ#Hj56Z~hxQ$2tM;0ETmBg62P*v)=az^c zY+s6JJUKr*g!Qk_Xi|ea=taOobMZ?wB*^lavdjOR~Wlv0~tszkpjdg#( zii_(=UZ`$Fzr9X-^sw-qDp)@C`j}-8r!41IvB~Z{&~k`dVJz{neW+iwb4{@fQ`j6f zocq&uw_@b38KXVHnj$HP68+2}}VMU$Mf39!(P@y(2SJh?VwCi($&q4H?@ zQtOsFn&p~k$9$kWo@c_3PcmFL3r>~Ol&hhijr$My6y9H<;a%t)ZwM=1Y?yA7E{U#J zhz>kI5Y^!mV(Z-S9@pWBk11Vu!!0A+%$Ra7A}^IM7Fr~<<+=hOk*}Pe?@>G-<7k&$ zmLl?ZbuE0>_r`s439m|}_a}rmx7#nQ5p_oOAMPeaC|M<3Cb3#xN3_12saz9Ff67E~ zy?6+%KjUG0=KWyb@i=+(7$ltK&Oe>AZ3b)7Svo3bYk%P{YJY@1&uR@^CvRJd*NzfD zkXm3@n5mWI)NX&EutHzszv)Vfd~e5(R^EI|`#MaEEL$7)n(Z0cXf3@xyO>3~-8#Lt z!B$2usOA_VXwGjaoB;@P zKD^W)YBm7ZUJi2Be)SPsy*}NyNS$m~_>r73=0n+v!<89swSnYKE4`CWdOdpIj>Cag zzW*q%3P;0az5GpD8ZV7hNDnlw^=?1yc6IlT$2j!DD;LF5y=!+@=xU$>uay3?&Yl@< z@`Kja(~4wmHN@M6h&PKyK{-jE&UMGZVJa%sHQP(HxZH|hYToy1NPsglQXv6d|K_IW z`;sOI29pEIaI|LcTJ%P74tNir$CK5IIVbant=CH2ybDob;#1Sb=ElFh%7~ zeQ7n))FE74yzngj3cR@?nzeUL$On9s@zOoc(^f}yi4*K$`;*y5I$OA^eUja_;^A&s zVj!b2!tx~zy8zRM=?Dq}KSwsUkq3KtHDH~;Q@l+dlz>B{FJRBW4IKNR9 zZf%7PPlv2uO#Fg}146pUDtSL}s}ei@hP~HBKjrG#62ihZ*DwRrSimGo3c0LuTn+&FVWPm4Ati)w^GCOlg zAN+JS@mabB;~MWv_M~E^n)l#I3>FLQ&1&)91H_RIkSfBt+2`hqMVa>C<z3kh3niCU)|$>{1n_| zf{l;3j%0o>H)7s3ySsF6$2b!bauGh7&FaqxMs$5JN}HJ!BH-Ma1yoVdl~p11k32&w z4>-r^D8D^7;0}uB=syB!ggcMRhc_i}`cgI690lVwBOpY_HNy%95%PHJAYX0EvNSdIV7h0^z$&wGipT|YLxFQxO~@!}37&6r-Z-Jx z+{k>{y|5e~g^nsntx$qt-PNm$QPvXha)N}dd{bpQRFs2`NGLk*KAd?O=t~|Cn(q%c z!4#RK9+(^ir;$pjxKBV&jMbEjGQ8x?Ytyoo2$dByWb3y4=soK8RN=OS(WaK_?yU1` zrb%Wvd2t$ZeL)0h#|LdzEjP5DIOTadgCymzE+(Gq-yAKr+++=dHe-+t0}IHchF{zH zdK#jtP$_jqPMmXW?VJfoxO@rRk1UihJTAw0f3X9Xa)nzYd`)Px#E%C^81BgX+c@4A z3RiPeWxjJ~x@8GRi{O#138juFVg+#v1?ZDR!?}h}I@KlCCWIZoJdzZ;#^X-bw7Wf_@?c1at&A9eJ#a+q;Dvl_<0j zE3fT2ytuNveu_07$SBKqtvIGbhP59Tv{{mi>F+_~F&OOa#V6Bd64>*jqLs63Sdm0U z#kG|1&;ufSS|T#c4y8`|&jtva?uQb%KD8P=N`Q=!!Y zz9dRyzkqoTNEeo?v%ivza~?QSQife$-wy(%V%7YzJGsprDOnDNZ`B_QiBXawbE17> zMHf&31oYJ?-rfPE-Srg25(({|MRn?So?WyI_BQ*?di&5S$ijw(2$pPj-$blNIfmWN zwarog!sRNDr@JpBy;whPryn(@Do~-FFj5~@ek1{YMU8j1TgQ&K&@n{y{DEeRQTJVp zx*T$}o?vW(C8}VKOa+#)FfQQ02!<{tudlT|=dEhT*+EjTB`=3+TNhKTgv}${C!0a6p-=2E((Oa zwxm8kTYc@LudQD|t>IW4lhox-z**`mLA+0Bd)B(YF29DocYAmB(^XGbkzG`p%0g^?FYQ>M|MD%?d7`GQxoWR}t9nvr zx=o)-OG|?6Yj9{;B5o;?YploN^2XpgiW|Q9*q6x?{o>>Vq|gV*MM4KwG~EYp zDYb+unE4FEKyxDFy5n?(kO^hpF!4`24$8{((elK(o@zSk_bo6ix5WM~b|>3e`TqXQ zt9z$v9uwRXG3I>a^Y-nT--|bc*`wpS=Q)xiV&q~DkR+#gf6<8xJl{%k+4GR4?Ktw$ zvjMdymnug?#?}6kk(=1YZznMJ&h(O0n~+YumMyrm7yEAc;?7l$s&U;>P`BIpXK7#|;p|>gJazjI}%CV2`BD%}jdJS=S zCXL$E_|2`38{U*!8ZxYJQewGrNnTuTRm*ooItub7;BlgKewZ$5Tzw zgbovgNHtKmq2ouE252c=leWikErtgRgmHuvr=9{L$iS}dC&HtE@HQ6Lf6oy;+=>bDm`~0`T}17B}u!yWeK{KA}qbD@l>G; z{c2{E@#%`3^GY_12Two{zr)yOot9 z#j}FZ%xkRDTTF+?b~lV2or%#ByJ~L<~lL%1}IO2Zb@j z`i~v?u5?aXL1OLTH8*eV?tU9G?w*Tv7j>EE| z)KuGBSC7Fsp|0iISsDO`qjr&`?|*FLJO56Ta^JQT5_vOAgy9v=@Hw~977%UbGN_BL z=C!CHsD(P;qyDc+_iinNpF{`lM*~Bw%L$jVu9e~<WvH$vbIZjuHpYA=GW5kR1{RjV`AoQT6!oLX0abD>@{twL{A+ud142`wcat`(v zeq#Ecw$#Q#l9Q1+%GWHF@$m6%?iL4h{rTTj>7TJy>e|EuG#pT|#=pIluS^U{!uxoL zEC#7*dKdsOb#CVev6!Os643rVV9WL9r~fg~3lcl^7vOJd~y{g}5AqUrhp?2`2f(g=8u&WqIC%(HW7 zuJZBEx4W5n`N;b9ODtLph~FRu4Vtdk*F_h0^XvDSa+6T*L6;ApG(w;TVKK=R}7h;yL-<2w8&mub;ICOSwf82{lD z$T)>PLH}QKNr#7UO(5OVEcUlIEXX+ijnTi9koNx@?f;K5{gT=PvIta_m8>3J;>u%A ztrnElf1gZR$heSNK@?`5@uv6}TP}TUP;q|g@fci*(zeXk7bLgzH^_sZq zu`4R}!Y{P&u)&g-%dh`huAG>7Us@E*MW56Dgj+jrN}{8hQ5(=|*AjQGj2O!_qRtfr zw)63scC~id1Fd>(GVlf0ReRiIw6S~jkW^@-XAE@(4l7%&TbiD&D6rX$7`TxA9dPt} zHD#rJW;R@%raA>TRYn~Ls&O*eh(pv@(C)7ppMD zk;|IDb4+B}uyMZTp;ZCmy^b@LXs!98BDAScZNw;}Ze_9217XI@SL(9~G_ag`X9>O0 zpmg*gLqTXWH2RSRH_ExC4B)nA&uS}HsR|)7DB#=pbJO`5 z!EZMkfunNzvHf-&poxz(pMg$=>26Tt_MW-H{7FLYTpywKJrVyc&h%*uDKapZItC&F zpkd+mpv6RYRZ9Ld$6DB42-=KVXOb}+j28^c#|@m4sZ;cP@zDDSmb5GjZtM~H$7~J> z_l6tJ*Z24CH3V2Jp?ctS22vDa4YhoqSx>P}HAcgv&ZjT?No7-cvVk^aRm;csSNCyc zG>C@1P2o|#)+}(?ZNsz81YNcVUmj5RUz(yz&wNt@QpDIE)>kwfCo>F;`e&vRha+cj zpj@X@#*K$Z8CM0Z3CT(DJL4PstJyBmq+>yV0`_z3h4>YoUu8 zob-NQXCUIVxr58JvBvp^Vfl(=DCxkBf{H18gjo$Z4qMQn=mvz)WHbV^?0PD5i>;dvvdXlQfF6Mie5K-l#F7f|s&O18THD@& zBxL+Pythur`Ro!G6;|Rwdor3jnW0O!G3nB_4GqLaM@L`0){$^s5KW3^?uVB}Cg^7~ zVq5ehKXdX@IMxF}ON4VS=H;&CB^_{ih0?3q0mrY;g8Tc*5m3V)lN!a;#LJCM$;-!U z^ajL5VDfbj)2yg^-TVEUgWh##TVng}o|+{PPfKdm%5h1#E5+o(^`Vn|wy(STN%ivE zAZQ`q7l|AvR=ko5b3z{o(ZoNt@?Z+Xm|BAR_!$2UG^qn)*NVoo1Y~W;{ae|qKl4X7 zFxSCk*0E>@BhRMdYbh|FtWzRsyp0e?K&sj2xFKC#;!4_N!9+|(vk>X=<`*Io%L80@ z7dZ+q&t$__C_5j>acG<%urx1V_`*?JKt#%UVzX#$X?2kj3S>IZ{21PQv&Q;7#hdWs|il#cJ6;maCDMv zXtPe7v!lEE+srKlyPbIew39y$p=K0G{xx*${;faC4>blIvXQ%%8Uh;;d<>NF07i=g zhwqHK3+OvXZ+PrSg7Wa#_i167!YO(&hOMB|?mXFiCA1uWXuak#5CD<`+{&rhMpM{| z_S;@&pOFb(X<`A7@G{*-_G~GN^6(hhEytMS21NH0oe~;?d}*!RHnu`E}_agfO=PV0ya|6=T z@eA$J#ut5e6qfBhJ*gZVrkYxtv#&oFmy{MYRJ<_T>7^!#2h3%uRvSntz@wR*gJ#6x7&*=rViXs2`UOO3LKbyiFIQe2=|}ut+;G zK}F7w7L)+z5FYN{%md|$N+Q|A`Z4)aY`<;`SLB7(CeUv0 zpJ+y2BavgiBl=Gu(2(M@jE43V(#ot!9kXniy-uJLTu(H%$ww z9w)<@U~%zNQgo0@O50|vxGlWoshKx)kV zKM2VA_77&WAp3`;53v6Nq(2Bq^yQzq@_!+<|G`!NUCRFv*I|Qze~9n@$R$7ge+u~@ zfb`!*^d}_;`ak~L|DR?4#U%G||JR!Tzo4D@KaBrhQ24*q_7Bqg)6O)iQBAGU^lScV zVh?Sds*Hh9RO7*Xx00{!F=i!O%iM1iU4*`3H$Fdp?zeGGnK^VfTA&#DB*@7DF|oF?!3WPzhSU@%Q!YL5WmTay6QE ztP=*H;W!hsui{ z?948gBjbL9p>Wu-MYFEzYG;A>a4jeGm>UA zgX)gwgNv(vP`&o65=n2J%z4S*W!C3LkN`78_BxI%rw&K2(d0HCvRPjNrv$Rvj^~oL z9r;*qLT@XKk8aASFo-LE-w3>bXrScPxTe=TU)see>W)NJMA>H ztt7xn+Y#M3;nGr8R9#`{71eJ{C*Rp<|JlQER z2m5DR{#mmm>pQh&@P)`NnX}gbmghWXnqQ4OAe@mOaK!mW!tZ$rgm#+uxC&!hi2O6J zbHGp11a>iP&kHB2GAPQ_XnAX$YCM4cponLB5A&znwx^*>7(B+O-|MxBbu9^{+g9!; zV{VcF?SQe}iD&ZuNk-PNpp%youana{PU77Glof~Q+ z0!U6I8w?B_!)G){ELBq1a&NNruP#S(=ithXAld5gJ@FFKlpQ>TiaQxqCi`b)W|eyQ zJ;OhO0Q<16D~^9{pj^9R@vgl9C^gd?ZkyDgiqC{C7!K>fh2jMK8CQ7aW=d9P%y6e#d z#GOx3O~+pX5Jf)5M&T(G@w^%}R5C4&u_pjb59uc`wjDu604JeZKn z-ZmlX@2AU4Jn*nN2yWpLlwox^GnRHAIj?v?IP|+Z&zxv0dQEBM!h-}n#7)oY5j#Y;Eo&Vx#SXTbT@2YV6YP``i*a7s04jJ)4i`5KbO* z0o?rWC;p7X<+i{j8Ap%(Q@5}izUk!VcnfC1NC`vgn~H}xXe_2x0LWmtaeOC(Qj3+- zYND7`1kAA1JyXeKx=KF;!xvEA5T=&n6Qg@8Ab*QnndeZ#lQ|4$Cud|PkIwXVOe&i# z;NyWO7xR63EKplCdMqwmZFP)jAuF`DJ;r3?Ib~_1^5?HE@lqjfmfi7E2gnWJ?Gfhb zpFR?%egY{c;(`ht*i7D!OK=R@wQw0h1kWUCqBzV|S|{qfc6%Qq|9lG7eBpt?AG9=l<{hOPT9WQ9p?Jl@#>)h#YpIcr$EiIjY`Urol-S>_q zs?xH&_q-AKuw0kter_mE>DMXd7QGoxt9-aY?~l;aAFpMV2NZ~H*9eVmP*!tDZPyqW zM>k~QL*Fvc2iIVB_Qw=#RMWe>BbXkk;#8@2U()<(6jVaXm=EFavszpvta?eoC+MZd zU=`EzkG3u8Z7rW6Qc+T4*dIz1j_HP)8JmftwqT!QAF$qo!<{333p}KYQ!6|GSkhIu z){*g_DV~{6MLp&<#iPA~D!2iI7z*-Rb=p1qROBMgwGEQyTm`!c6}$RK98$);UDOZM#*a*v zo>{2c_%Hzp(bL@GAvjd&Gi(=G|Lf9~)pryF<{Fr^ORK>4JA`3wr z<*pENlcFgwd`En`-p9+bVa&wJcE_4?Nz3nJ0aXcu zqWwa;J^A;S9l2hvP&DRY`lEaj^&4N099)s$+^h{Pq~A885%r*C>9|`@>a&@5H4RXI z&;TaicIZaC*>g0+N0+TH-EpgauMW8OD(?;Tcu_EN@#eqALWK58c!4mthZy$`-x2%Qb!_@p2>5Gg$)IKRJ2wpPZo@ zc7~zn!Q{g*Sc@qlWA;i^SFy5GV<=XAW@u?OFbbL~YxUw^Iocq}=zNb!a(&zR1k|f+ zPjp&v(YbZmH~@AWL|p6DzUU*kW`tiow`w%khItWt1-?wldq2*zThm=b0*dHuhKHVY zZItX4Gzi#nH;;7*T+PZtbXFesW9R1m<1a}$;H?_#GY@a7ScUeO=u2HAGjXg??oqQT z1WtBSVCN2+Z1;u+<*ggo&Cfvkmhw;7XUQ+(PtVSLrzf{7 zH&4%IO*K*!xpR4{LRQ83L#Bg3rSK-!fdHwIE4d_QQ`GqdqB>DW~}yja4oz zn(wv{dhoc5`3)4anr|XRr(^PSXL%tPw8J&eg}>;3^ejKVl6=4J`7VwyZ2woWRH2BxpCnzw{PZeqweIO3-kmb7Dng$O2J{Lq9P7l8e;V@O{_q>!qG- z7h!pG_I3@|Zx5cVI}ex7ldvUF_V|x){+6`w@>44NCh=-hQI-9lq&2zZZP#%xVw`wN zzjYpt!+7zIjOqM|DJ~3;Fs!|aN!P!AOBlQ61g*B}O=2e~bfoakc=_d);VsFnWdD_; z@qNQie%VV}@zlarNwu=xN>tHpNd+Tf0W3ETPWspZKt0k7^yz8j#*yQeC-@g`zb;qi zQ~sDSXhrg zLsLkFP9RfC_zdinW*U} zQd*W{!|BK@(R1Q++yHJ%T|;x-elLrtRbPjqHMpZRLrB3@u{h4$h64Ctt5|xs~J}#&^e!tmtM6_RflW*8xylzsCs~2?o z3iYt7jAdZCwK?IxOf|bvyOzHMFV72+UGGsZ<{14nOXRLte>=OsuV`0o)R?xIQ}(?U#)}Yky`qbQA2m({oDB_k0fm-Rq z{-n^pTB`E8$cM)pEiaVr9%3JIhfKF>o{P#~2i_vWHGX+=30;iWeB(c6__LzRew~?v zG^^Fg{ShDWMC-zsO~r^MD^4{!#x(E9*wWkRVMZ}!JTMrrz4mGuc=ZaBiS6$~DX)kR zyb$jc@0xnXoNr8wow6<(*`#;BKXt>~)E>Pkmzb!m4eSpv*ArafI_V zIlNFh3_C#|Y^b*~XKB=?-{ZB|oj*Q&54u^~coo$wP@< z3lZDu{9a0Rv9DG6b7*b6;tJNVC1ewCI;#XtsQW6E#NcABafX{IsvBcSo$QhAINtZ$ z;~`JBvg7iWe8IvHJFc1zla_Lg)=2`m?%`@B{;PTBAt7Fv-@sb|miE2WTiKSlJ99r- zD*mj;*sZ?Cb+ckWgb}Wyp)sAOvHZt)h}0ro#=$$h)$8WB<@sD-7mwu%z4ol>n|01} zAuoRB8`x^s8a=6xHY`(m==WIb44&7YK{LufP?K$Q`7jlbT|6=8DPFP{Z{Xu$w0!G* zy-849Ck^Z3VAgNRAKT~oLp2Rg&>Odwq$xV7`o%n}{w`C(Q>WW&y8H(E?0$lLmGji% zK_bVp;KzLPG<7Zkvmj5nm0i{-Wbby|nKw&ye1r)Uc`9Zo$zS<8bA+?)JnwU&4efDw zujUSpd-QmaqnuE{a~OBNb0Zkp{X8V#d{F)k22M#?SNw`H0e5N$33JlT9H85F3B3+9 zqmnMi2=anuyN>)&*oN<(>>ifvEAq&8au(};uzsL;oQXS2?hgl~GaD{_d*H+5QbGE3 zFf}xq?gEf$51L#mk7{~W41vwsxXDFOV=r;Te@){E=21nW{yRPAOeiBU6vBRXs#I(4QL&_eku&c^8aGa?KEH*v#WZvySjQ7Tq1^y9zg_NARfcE=Pcy2O%cv%r43_)r zLbZI7?6*+sFX@G$Aw*v)hw4qq6r5<_iwB=!$fTt z{UT*Ih}~VbCX3}Wc#aixCC>V*Itd=W`=zq0)nRYAQO5Y}h||HCCImv;J6ICnYx^HR z=M(rb_=m>S{%(w68(wnN5XE>cW7W$4p&0M`8y6}yg)J5@MbKlMsHn&c9SbWaVI3UE z3?ot-S7^E;=5}G-&lhu`GLtKUD-FWj&-`?N5#Bgs*GjrrKGx=W?hZvYzI78oT6AMz zOU6wfxlDyb?A!GX);-I6i)&u(d)!xlrE{sU*yNvlVJO$HW5DvUdcu+7k6cWM(NO8X zkcNJRGz})x1dJJfWGBbS>kjzM;unGRD?9?FPeo1GAt)rQGdayI-AZP#Qu#f`Hr!$f z-7sm#&$!=<@=d&Tr^besWxJx{LbfmH-|m_XYB>^evcz2S@YK#fbqD$Qt{{)v=6&SG zSn#LOc9BlEj2NP^{@5S_Q{a*29_ng-^k7u`JtHed!X6It8l;L5+^nH8&$+XEq~IO~ zIGz`-Nk1OqQ501#Lggv$R9BN0FA0}tB{j1NG3A_3h|`sIFH(1=Gp}HztR0mtO4U#N zq%6l;Ajj7Yt;y%XIftpd_=AjZF*M>y8+7*euIaGTwy3bozb#&x!_$q7On7P$e`vgv zlC8x=PgPk^BP~hP8Sz!_YR;BZ>3f3Q*LHNb4t-%LffD-hyrnKUKQzI`^2B`;rFngF zx&~;^=)f|Y%hVSWTBHM^fF6yXY$3;F5h(aS1Le_Lmr9t1dv*^ab3(~oOVd^}8QMe) z?dR#LaZd&ri>b-z4!QSCIPnIDMtk*VK780#`0DVki&asbfNpSzu{R3;b<^HkFtaKh ze`u_nf`bY(9g<9-UO~o*Xo;6o)EQX}g+n#vdzM<@d>@?Gx+U@5&qNbFf$)aYIWY}+ z)F!yilXXY5S`O~-2?-*3Q!#3v;6DQy*G3t}>UXg@KcM5eC-a#VurTA8b$nSRoK=@Y z+1*b>CnO42U2=ShM6o1;(yR!mA-76>SY;D>+V}DHn;{yO*YO~27Q>?9@D%RuahPe$ zUtato=PFMuo`IOt`5vlm?Tdb13q{V;G`_%-hy%xhp&NK$KupY5mw5d%I*&ynb!Bw= zh44irz2eClJQ|vakrhS9kC4gY_bUE<>I%BL??@HV%@g&D8Oiw@;Y)>s{Ooao#N!+b zYViqL{!N7`5OlZqKW3G89}GR^Te>yNP5q9;&RnU@x0IFsyR=}B`P#Y(wK_Mqj-x4F8XS6w%L3D_(A)F+Yb4}UGboR%m@yx1NeqS4{$t!_~pUvp!p>9X<}yX zi(}#vbDL-bXW)Sz!N(-|FsJwc-(X1oQ$Wctg=>J0Uy_7AL`0z*;?Bn36GQK2w4rvI z&Zo@a!y>vwyc{|}Fs=k+AT>V4uU4Ne4;;v)cW!qPYe z-SqLTVI-OpF82GQBiyos*N=Yg*P#Lr>u7HlM`7969Pii0PEA$4e}Axw`6{D>@vk&^ zaAN`_uTeu9!~Mii8taEpG~-6a#EgJ0$F1Epm7EbIGy!?A$AQjg(VWue+jP=5vwLUT zUDQHbx7>}&8mS^lT?|Qb@T5%e|ACUHBk#B;D~Z${%C?x#B}%@q6b31`3Ocx!2IMmm z4AC*@4}@@XxSjbob7T|?i8w6Omnmm^d}j*=pjTWImVUw5v!&Y8heg#jxH?`(x3Q8O zpZzif+{HxZLEqqiYgfc>>Ze$I_AO3Ab0*COQtaFN0Rd=v^6NJhRuV@uXsn7J*p zZgCU^q##Y*Vg(<1Q(!pnF~d(v42Mi%vm|QzS!iXxvJZD7XdGS04EudBUMO$6&bM(! z|8LoART}BVc6CO!G)5zZS(y7pwFal2e0}1|*=i!^U29Vfwi&)G?`-tp0{Q#$TxW)| zAl=UNy$I$ANbz@e>;@tYtJ~Q3rM&a=0BF_+?&I*+Z44-t#${e1A4kg>6Y@voq%eC4 z`NX}~qHxps5VE#B`m{hYVAf5|W6HP%=7p1rx)|si3Ez<-`7N@+@4mAI=13tn?cZVk zfdcZ6EQn~vF75$Jn^~>U`pmp>feQ!?3C*lM=I~g3ZuJzO8dJ;g_-F zpzPsmNYdGz>|y8hb40~dKFn+=GiA{6Sk^~T2)Z&&T(TdBVbD=rQB8Dl)9MJMI1zCM23d&)g-Iw{v(V_r&H-2e|FP;!Jr-?D2oQ#N z>B{&KwPtE~io*=PZ-Lrw5mi>x^cU$Q;30X6bGv;9p7QY-939SUu8!Xsh}qiP>(5Lf z{>*BJ@*G6O!imZLcx0A#1)e}|wMk#4{BvmjyK=~1u9Xc}PF+W_N5oQW3+98Y&NF)_ zHmr@dXW_zKsxg#!BhqA4?GGrG&FKK6F#;s}Hz>IV^od;NX&0c&yAw{1M8eH^fxlqYAI({Npk(P_w6&_ybOd^0v7#G)re?RgU`b3CU-vt7O+FhnF;uA1 zvTELKd1YakPxy7UuI={7Ju6_3wXo*EKjOPOK%`7UG2DC#K6Z2k-vlzOYq6xL+eujO zQ^_6<3N6;GPEjX^H|h*AKXS9|1w1-5q|p#!_6)mt9r+FDN6gGC67xh62gEpr{-=B3 z!Lj#ha332059Vg;s@ ze`}$#zt7r9G6D58FMKp?*9xSQjwVO#NcmKdY_Je@(2A2X!;*_;m26`Sik`?zGC=t6 zs0Y2&f5!8&`qXdTP?sTKq0`e;)4?w@Pp#bY!mBwrRB0e74Nz1S5vW3Zh%b-~T1p;BUx0+e7 z%VisU@{vjbr3r9(71`rs&w-ja^!ARIP)67^Dl}L{H_%)lKNf9&`E!U@d<3dbUgP!4 z;@WLLKZLv8MMX=MfCi^8q&wi7`5}V*odoOy7G%a?$c-M%)yXmxSw zXixrnedLGx6uY^IM3YOXRCZ3i5(H?Kj)g>ajMmttTRMtKh99!soZ8f`JCKc z6uA&euMC(~j`c2EK{)_XqguDwxcmUIB1^$4Nmw;TW3h=`IsA#}**wIrpn|sNxeuuM z1=Tkxl|yAp=qb1Z4JLZEJ)Eg^2dpszjvo?U(tMT$JF(HmHuI8G z8O)p5)X#TmwYcu5^+lXPO7FS#DQvMyyoKC^u!K^6-#EGDex*6&xR5tpj~k4zI{@FS zA(c2rQ4U_O4$OLpUoOMh<&Ce8A2)*6xV)deSM27Z%yIgB)1~IBQJf314zTbX} zNU5mfh2iaZO!W?^s1uIj0JuMA$~)gb((_1oO$yXJ?v`(;xFgBySpEXL(EnGWFG_{721c6nbv06 zKvbOrwvCW0W>xA85N~m1s`L<#IYC{WZHXSEO`svCGaf;~$l_xA%qu_JDwRl-It3zr z#$d#=v(tVg^0sC_DOvy#ALqK%_l%JG1mVThrNJvKlhpDeUn2e$kj#xM=6Bwd!W!sR z0S7J;=6l4~`Ok_q^Bp}i8QOQY^I1weeiB{l=kA-egut9j3jFYPc!w@~hv~ez;)0Jb zyv^^-IV=SP1;<<3YJTBIE(yDtM(~>duJEiCiMS;bJPYK${&*g)j(Nj=_&6)N3h! z1j!+Xoyy0QFj74ajf!foa48d zkCx_^whN5LATIV5HKzPoJKR`V+*#AK1OP3sUm2RPn&s@vRg0RwD9W^5rf@iG%|^1Q znkW!DSVpnJJe#Wq603W(R!ZG{WUyrHkP6Mdi)8fWp5gm8QHEh)Q57;V_urww8i;%EosyLyabZ#z{(Dff-P=<&E|S z3Y4?2pFi!ZeMoI);Y>97?#S>OD3>!fJ^CWp%A&rfU9VOc!WN$pOIoDq)pR94Ypi+LO{q9!4xBf~j^fiV+9cwbDyf=1tl12+-~8Ur zQ*JulC%BuaJ^!vXw`%HPa4``@z@F}q5^dO9MHWsSBMjkD$Cw4z3Q13Xo8-f~MZH}-Bb*&-gZM-H& z(o(DFTj9Rwz`vlzMIiVNyA5Ue|eFhv9&Ey3u%r+)ALDWOsls6bSx66FUc`@ z9hms8X1lCs9IlEqpI1x3J1QD*&w%eDaUWw%+JQg6Uo3Bg|I(p2;A%N{FVqEKVtq-g zPcS2S{1yVJZqH>4Qp@&8421pG1V8jYyTt74{-_mXnh_CMuxP&tdR-nRlv@AnP>T`% z?3MSL$DTLsctnXXy4sR9P;myu#ZJIQ$?E%509tC!pzR^AN;_Wip~+Ij@HA{pALMDv zDeFee^yxlYt7X@uoW&+4UDynW{h1krCw4c`JHtrl-+zJ3WxXQtIV5_{YJSRT^NV+u z<_D8njvBKWST-c2#Tr*EIk4an{$A+V>|pLJ1!8IXZ{&zVvlLtoGo(idZ)J~oud|v^ z#gqBN1J#ozyvi;y<(@fec5W8L4J#p~ej~mVpe_gWQ(F6pOzLnQz5K(kOEhKki|!fK z;oQ*=P=-54_(vO_$OK||aJ-2c-^|S6+H5#eSINUsT;V_}IEA(6`c!NJY09JeSYU(&>ZtDC8feeAAYhF zs?S_ho81r+;eB%oh*I48q#Y~dUV0+QrzBL#0nK;tOD1y8 zVdrv9Iqc0AQWPXYpUGF2Hs1v?9mU*4ad4^PB&4T{=Y5qKxPuWEP?=Tvx=Da9y}WKi z$Qu`F`N${02zFn#azKcr9@W~2@2FvzmOj10a}?B3p{vRWN4_oiRAA|K%Ioo-;3S}V z96`-Y&_IzW?7GIDj5D~!KSuOj6V#-N&L?S8as&roLcZ@Z*4ppk5|quATBd8=m<6uV z=SK!Q;}R(lEk{M&PNkfG9M}!7Q~#t_)UBX~miQWs2LdDp$Q_8^e*2bS6f~c5P(yu9 zV;QUea0LpKpJUteKC2GO9Hj4?Vh{U9tYbe*V?i^r?Vc3z1=3T5BR%Y8>}&iX4dSh* zDmW(bo-EMiX7Gx@FS8)&N>ozDJ?*c(z(fuPO$E=Zvw+aNeTIdI=;_QnLV@hi<)sW_ z1i>%q$SU0C2xasJkNrfu*qQpzzg(Q7!}A;RL+*NYd5Yh(246itPQkiSj1Jrz3$C@= zkmEJKv({?-V08|&P3B#Vf5MxXF6~hN_WV0;i%W!XX*{!}1L=QtAjR2UXUzw`w^RML z1E#eG5Dc+$3c02}YRX>HSAq=j?J<7(>(?*vm9s?Y)Kl}~HzM6tb?^dvp~~+omUDov zLP4)-qfzw>vqXGV!o!G`HsFX9sC9)jH=cz%#s7fTptyNlVe+y9uwUvunZ%2{+uixP z`nsFt{kmk?zrluW1r}O=Vhai-$@&DIXZA4bqLQV8&hX0~=-StZbwk=2jNtZoNT|oe z##H`lpQ<4Akk|>_`CW}!V>+gZip_z3bS`B+;4Yv=F2>~q-8x@scrwo6O-2sBK%t%; z8!QVgtbWl)ceNrS@Oud@^RH+qp zzlfSh!CneI;L44@Z~4~b*QP~lHRL%W_0K_K2W$~D-0wTpNL$gA7V8gOFl)4Jbnf+FRL$cqcM<=t_h9x9(camosnKDM;ns{$VwzqlAe z-wHNH5!ez-?Ey(r`MgMZy&B__%?iwLC}U;Q!gy#w zPapMIOuGsL0AvfQY{*wsQ4$}2Vf21E<@>-)ATIX|2hcjDL2_SUn^zg9KvEE<9)g?-p2_?#%0$uLVKw;TBq+c>4}H7#N?MS7m5i z56N<=!mzNBB7#&=ZM1tAPU!C^g4{C805%nFMnt74%;W~6Fi%%p@qX!JneF0CB(v|{ zsk(Y!;%|^Bv-1ph=eYso#7&4P3+4zHfr0NzZ`sZ7-V=@{c|SZkV^d@4SB&gDR$^~Y zd3;0%%G*@nyrvTO!Zru34F}BWUCdfJm2hef$*+Vil|mcDd}VlY#VX(oPE5h6b$_8Y zrt8LAWy}op8F4o`Q%cVuSgLj;^^(3qKAi~w+32y^+(7+8ilm{JH+#vv=jlhycdFvQ zFB$Q;8(N^XYfyG)NE6eWFfdEv-(fzIzYi}LxannxI3C+2UhGCAKxNe*{FFHx!4fadpO$Z$*2lI@}DOg-jh5EQ+qJ-?PRR=V)ryD7|n@T0c?#Pwc3(%lW7L~0Rq ze>$P5&^-fsP$gNfjvE_It<{XBD+NhEJIjZSANEj$$L`PIPz}H0_cBf>1itsl`2z2t zA6&(K0yuakEjWu+r0@H&XJ_YgRZ1rL`LbO+l$F^b-tFDoxM>;w;#3o{zJj}lZ2pR> zN_!I0<@e5fMEKFLNz%c8;dsNnG7TopIIH*Yy9Fij5`X#~?UxJRS-+oJ@!Nia4N+^u zH_;g-)+}$SRBhM0Pi~`Mdd99^*1~QlC~5POefzUiLaC-%f58!PPB{Lk!n@sNyhA38 zh{a!h(C(2DtjPb#k`g5E(grjYR8YW$Su}V2y#qGO?v}El+)wgSZ?Hs55#mW-slXqU z4~~8;T3_M%UT|srbc%7m*P6BJxdGkFvm&K&^+AI0;ddVh&R&I{MJ1ozqnqMp-I*6! zL_tu1`zztz7#jEG)xyRU`{KKdxo<;1DVWhL%WPL)XJ_1xF)8lk4>C~ro2&hB(Zd%m z4Fl6Iy0uYxR4&(Bi23Y zNntL05H6dC^^9tbJoyk7Q)TGRN_^ApP}tix(> z$XhGp*ZpDpEiTuo5fy5TxIyEzaov|3-K*Avrnbdi!E-<9s95rP4=vVY9QNaNG+e?R zk)vD_?+h5H4tI#gCn9Pr=W=kN!(MLtS-*Olcq)gwNH2U^Wo)$7&Sd6A>5R|;OC-7C z$9}w4(@D#j8H}Xm{ZkOy5$l#mVN9fiMdS3WbwFXV#UYlZgt)c~hKw4M$>LZ79?7|! zgFVrPU`OC_tHhQuje(9MI)>>j^ba;8{&Vm8APGIcEOX}2%cl2p6xv+b3M3DKKMPO5 zjcPTP0|*t~Pl}1g`qlF+R}XM_A5Nm@zKkO&L;Cs58g_Z17RVKUe=ZPEihaZ2ofhk- zJ5tqzU?wQ*|O75mGiu z+-PfcaYbD$-iG>Edq4G19T)1N`lIVnO}OKeNW5#`7wE@1Xf7uHtLL{9*hhDAumixg7% zxgrs2<)p-|&PB~~aBZ9R9J$Vx26rtIz*T89AfoPN#z$O2&ZxFJ##s;QY4WStXO$CB z&m8yq=(3zwn*BMn^Ho*t(}c^u~MexYGHAB!a7h>#WxGNI_r+Hp`|%#oOGHzHLt5cJ|ynj zFMk9}uTOlBW6rD6lG3=PbV?>Bo!mfauOTj7dR};sM8tpHE0y%h4vj ze-SWjSsaO4N#6cx^X*wy9o`!eIod7q;}vTwYX;KF!K}wevBowg8WkSC;^Nn!c$A~1 zNZcIdy#vDOgfmtl#=aykyT0^@{PPxl9N$2C4{vFi|H!g zJxzEpI4N`T_Q?qdRB6fF5(FbkNMMc09WY^Zq`o-2yap0U(1(?-iOOwKULo4j4s7pu zRrg;N1?9|m=pkn33LfITux2P<;O)2N2-pZf^Sc|;LYYle^oli#mVAw|?G1K!WT*^- z5~1U@&=7D}7`c<~51~8!U_Wlep<=3R5T2)J_BubJ5EO)Xe7cFflqK1beBp`)FRtdC zO4XXQItBoD{XBKQf85SD@3pNqu=2S_I+;cwk#MnUM=3m1$HEpt@u-iMl|Ni{1b#*R zCKe*hwU|M$nB$QdSk}l}qXg~BpF|lg%7MR}U;As5=lX5<6}(lmYLX>m%SJ0%k|wN< zFK?utp4{Bn^J1MTwMeBW%)o|~z9Dy<3s25Bpjw{Ysny{&j(lbjL37_6#GHlm@t*|* z!gl+A7<P-|a+!LWb_ z-R+!MCn0I5^wky;S1~IyTK#8VesWcjC=)v${e4bhp2D&wl zcA7d77HubkuUw><8S8`t#MHs%&$6!AIxG5&N&L|FG>_%j+(sSDkZltXeVE^&N^o&G z`e09j`BI3jLshvlrg8?8zNT@=bx)4pR&`+tnqDt`@bfF4*^e)VEaZNkvXR?4iso`y z(iDZdtXSCe8A|19mMfBqMKhVFM)@->DAShgfbr(SJ0`BLk@y3N+b?5;^WF|xKPBKL z@?)#bz%y1S05LfZx0}QA&>nSm@MMnaO}AkbGETu^c#NSb(B9SLrka>sR`k|o8lnAn z^qvFjp<2+6K7ES*T_#YX5Kh40Qnj1Mv-^(9xyV4*PRd>94+?JrWiIxtmx976L3?Bt zY1Y--VJ14Ny&+FZIh_WTD&`;8d))+BFP*sM$6thwvcHg?X?iZ-*^A)SF3D5=SS&;T zYL4AGfmbQ7y~fF2EfJX(4)C;2=}NZpqKMw#UU$O9Et83Es}6Bva>+CX$aNgHJJ@J- z_FJ|rD(7t%@lJWWAlf?3*!;@7-4#{RNBy!--rUSFRHpj(j3>l9*qFK#PNQhuiPja>Y|8qoij`W9@5ck0$RE z2Xi2+Yk-7QRH&tRH=kjq{dOhOHCyKjqm}u!U9|bhi({NY)q8wxx~0ypS~T>r4C%xj z9mu{~c$r2KIGsFibSC2o3MxmwG^IB&JCV5yv~WnMve?}=cd_**U)gpI0m&JMK5H<+ z4m+E0BRRi7W$m|s-C0E?y65z{7d0>rHDhlP_@hp?8}v8@6#@QvIn;}l6Bnxv&V>Hv0ZAxp;Y84U6yEHf$qn0K*M(cTA z7HbS?Pn__&miQ70Pw?BHO~GH{>lrUf`jW?QR-p!>2}|{$_$Lsp#n($+eNSf~uBL`L_3a$MT`Ad?ygBXHvwjFKS9w=3K&c0=ZKy4m zK2siXo8Zo^U{n@N#*Uzn$d;=+c~Ap7uE_4{`7k!aPkCVOVhugKJ9`_mHD&2ce{+w& zPIQnPet0E%Jb|i9u3^mqQlr2tdh5N(%$*2wN?QXG%5cO-xE~r7%Rz17j>>oIk~Z{} z?O=eR2jhe6R{MJwIm#c0Kb#OqFUSlh(1Fy0JdWNmP<1tkB&d3ik7G-xi)q~jd*LdL zZq_5;p`7Umrow;1cI=BOf#yG@SZK8cNGPlfhRaIvxjpUQ9IM}mNr)Tv6zAs|BsPc_ z_=h86N7Z<~cu5pv%W=Bd0;Q=u-o{&8?y)69Myy3o<~W;wDXc72dEzvYIo{$p(>9Ip zZIzInaM7yk8k7=s;I^82ORcw}QRu9U`^VH>1;#2LR?Kq=I+LQ4HTr}g z(ky+mCjw%p*rEQS^j34hs&zN?882|%D@TeY@cGNWm4wPlG+Lqad{J6F?u@@g*;kZl zbw#H^FVDJi5!XVa+s~eqi}A!U*<*@()KzP2x$?)N;II=y{F}ne0s(K$LLfTDfWp=N zzDZsnmpE0}*ofDziY=3VIW`oGanSvVfPy1~$bpz!Z@t4021SgiLrj^DN0sIW>AcrT za-b@%Fu`($m^#*2cBlplfy97TsLIVlmB*Tqj6o8z_fWpW=WDYU%nC(dj^}75OE^`f zE8{OocHyVKUc|;v#*QNv+<{L|4mj+olanTHLPx4~E(}9ZQ8~8}x+Wi16fOR>M(Kzke{aW?dj7J-@2>(AcM46QNGZ@VXfl1>ysIxvqAPXq${Tt z`F1nHzCk&P!keVG9?rBdz0A`Zon$J09g~4;bD+Y5WG)#uNM(BAYMsO zD4DNio+e*$Pf#yOtk%u=x}GK|lg(CIZ*+);ZQ-X~>E!4p=#|O%U6cWnf})~;MwX-r zUO0N)cxW*=H5EMmSTFLL97un&z`Qlh{xx-u>V1zLOyoH?`;IQ>bIax-zL>y*PJOw? zXt}2;ChjX1Ya?QLlyS!cQT@4FS$`+%Wm=+o73Icwu|O$QpSTPD;3KK@?S{%iRo zjnCJUl}>$}xPF}RlhnRiw!WttEfE>wroa7BTx^cZ9y!ec$uH?Z%#7C$1$B3P@HaKX zU)q1SpS16Mkk3E<@ExR1Vm!8k%X`|5<^Fx&NBu!Uf-%`5@asqR2x3T-w+OVxpH++x7O0vPjmqMb8>S{VY>3u7w%GI&AWPSa3>rXM+ z5YHYI9*Sm`D0FH)Tp~>R|^0n}ib>mShLyr{kS1aRvdN7aK&q?tV59xRZv(Veix#(m|MUusPX?Pvw6%;)` z!6G%hc|d0lq=>3ApLt*wiYSmh)P^5iq#EHJKQ9{@bUq%4kTDj?0~F9fJ5A4f4#?*M z@B}>umpVd)sUS1knYIYHa^@BXr)qg<(mTRNtkRaOz!(M6T?t~&CI7@`Ok_zZNtU;m zT2c>f2=)PLVl_WPMOBp7-9OyGaQA5MtPLA%JPy?El^?Hfdm3`yMlSeS?Y^^ClZXx} z$gcX&nD%7<#^X6$_B38 zrYk=pAiGnjUBHPR{TB*z_xyD&=`WaAV-Wb~@rR5RD0U?F#Ku{>0TDNi3XJ3*XTW>u zL-c{nl#}pJ$A$;g{zXO!y%6(b{Wr=K@&O7x{O8_nVj}Q27~nsD08>(2`VH7m4*Le} zYbl7|^nW081kQD|M2@WvmKN}Qv0n_|bRIZ$9({VXg#PL3q%F^XfiAUXgF9COl8rAs3_GZw>J8bV%q7j7LJnJEI`s$chZ(M?8Z(Kb%VlZZX{B4|h{kQ}b{IWm-sSX=nCi z?)FfodmgPcV2rDgaZbpgaE<`d{#YF1p#28{_@`@A!jto}lQ9Zq3&n7R3hAAd&PMZQ zBp<4_Zx(Euo;;tiB&jOQe<>*oS$Q$E&uido&khc|%I1JxJJD`O3d6s$)1%8FEuYv~ zO)L&mUwm{A$Z9R@s{jMBH+(Lk#5H_Y!<_pb*JJ>%dk9U9wB(m-e@ad*!Mv=XJjaTv z(g`s|mb%BsuPPt=E8Lg&&Jkz(l2g8O+zcm7#Laj88nNSkWErj(bw`cD+TGw&cDz71 z-z)Ne09HWw9mbWv>9s6D+!kxdgjN%xC@@`g6dq5gmX9j2I@DFBfE>!sJ3Uay-V>%zmH4z2daICqY_60YiZT@eQv>G{3_7 zK{=7U3fvcNyMeLO;f&GzSQ$IcKPbdMWBBz%Om1J#uqLMYgZ&NA0W0b#sbHD0j%=}S zZwNo z*^j5}ESoCjG@6(=WyEYov8~q)Vsi!E*#n4^1JHti`er7NjH!%4PDkSzY)~*Q@gjDL zxZ*K0GlTv`9oq8#7vB#|Osbv8htas>jQWBGzID(PnVP+zHIf8)6$tB&{Uuq^Cz{)7 zWcEV8qC5DhT!kgnxqTxz&3&Y>sRg5IV%b;NnkUSEx_4zJZiV~fD_WR+0qVDG#jVq= ziMi-;Vg?oGuZZ}Wc67jgNT>Mk<1^B3R-u}O>$ozC>u?Q(7-6*|bVS_nYDn*AlCjna zpa_mXrf!QYY}$}u6ce=>$;_a|JReug8V z_IE+a0Zx7(Sh8ZogxBSbf4YHgtHj#7clR{XUx44igLo?w!6z=@b-ERaTjGV!#J}s$=Cm78w8kP8%0rmHY~g0Ay_~a zV*0Q?pA+#PEWoNvL?ha5#b!Wa!7W{) z?<#*r^y5g}10Eq=`3^^tce63VTLy})qpfhoLhhUyP=WdP+;P13*Pk%?-(AOv_;#rt zwDZbI{de>5O2_W@db;Gl69UViWBd=gG~7Y^8KY=iT=(go#;Em`rk&H(1c;=vt&08k zJ*J(PKiVM%jB~q|WF`3jJEcC`62&Ak{%OqrJE%6Ik&rndlkiBa9IY42Op;Nx#q7({ z7f7lIreti1r8c0pw72d$?U>`~N?R~_$t?IkuN*ofl!PV~?cr1jm)(BqC1nfVCsl0LP|%f3-69SKdO!X zIOc*?#z+AmV~Bj5eL`6OhS9uPsqXykii&gVaR+-?Msb`4%vbD*=GvyO@rC#<$zw&L zRApuf65c`0+u);K_C(%}jP8Pl2n21H^bPACJPqqlNG;JxwW{lKb}>ae!Ax$u`EWSg zF_Hkh{=?Xwl;`<}50!P8?@3JNAt(ClEE6ot4_QI`eyA2 zy5|dVcR?10r5Tsos}9?}MkIU>6UYo8UcutqJG;QK8n-;6QAbw_aMP$*Zc2;mPky95+V|QgG z0`~61A^j)%whhygovzU4E3`(e3-Y!c>#Dt!L5;Op;5rt>-|xpx0VQPYbdjsE{#Dr7 zMHUo&c(K57xL9409`N2Xc%CHYF3k&@Xq}hSIdHmUkI8TZx9#78y=UK0Wz^*nRy?eF zJv2~j98FxJ&8=mOv%*%ETiWjbd-pv8dzm2oYJ`t|0qxx2CR16SX%V;23w zpl6&o=Q|XGnGLo`=Y?&h^@|bA$jRr>i;+WQa9}&K9k>j~O>#WuEU15zns(9$-Al9I zqVNtsSQ@JHb4(Q#BJG&>VofE1wvmAF!5h9TR?-rv3t8LQ2kEg9V5vX7SrsG9BCT*` z(w3lC7gol_^kwN-6O1nsdGd7-JFjbApT}5RJiV9XDbvU+UU~-ucY< zR0LQV>9>Ty1S7`!$rYD+Rx-GvASCxFfWB6C&^kH^u z5yS)EY0r|7k|lih5JU|jv0C>A0e2CT-hlKd6nXQZlERwgeqHbo71d$aTU2ea-jJlq z^I4&mEP7EvBt91Dx#|7#d$Tbt7cBMXh+}Ch8CECMMlS57S}PuSIwnEU{W!EQpT3!U za=4~7OdVIz+o<ZufMa=&dA5_ud_eZY6SWLq-)?S0JUDhb<*Hz$P(-WarwoL_wJp z(dypy<0X^0F&WLuSp;)VE!oA~ov=<@eKt}VH`x}j)I4a<@sU=4*s2L;&~u=hIwDD# zUkI4mETkn%(NUj4Hm#eopkQFZdp#2h{DhhsBcP^cjex#i1q_^|D|~NZWEEv{O{<^b zbH@ziYKY_1K?+o#mp`ebci1&SApu9!+{Xv15>&M`1})Zh!QmvkJ+^v(rQ{4e1sYiHeO)HYPBd;$PvL09!EuMVze7Tq;iPOlGNbE zQ<^dek*d_gs{I6ycAekG#lXSM*3Hx9%bQD^)~XeodT~8H zo&GCBgSm+bDI+6pNuS-cv){^2-wsD?Jk#Tl`-LrC`~E}g&AQYv*b9@RVn@Z>Bo>O* z-dsm}&uo^q-CnC)0;p(4+hTiYSXD2EfQYFn%<_<@+-t5pk!(VM=v| zG&OpS-klQ)BNP&9mcVy0iieFy^TY!-9TpCi_pTF~^_{(0X#Z%B&0BYst8>)Vhl%LR zv@xKb9HgWK!WON%i~TsKS;?`9InCZ)VPt1l51@~I}Xe<7a=q8G*p(67cDCnbkF z8oQ4s0A?j($o-i4rhccD>G|x6Vn3cOn-Doxld1c>bD>kMO10P;qnzm$yWcn^g^42j zKJDE2wuN!2QhKWPL}Y)h#^L#W9{J3H_52{3?KN^pIa6?|e~(7HDJrH{N>2|JGiLdu zrpLDKs@JoFg#ASTg>vuywr$(pX?WoLtkFyyU;6*Z9; z*SQZNkw)DYKpMN4%nk|vc)GPJuiZaQ7CuC6X(;AqJ^lQke-+X4c#>Aauri8fp)p8J zP^!0^Cm!&KNl#fmNY%#1uBl4m+{tj03eZz{t%4#(l=^e%KLw$9R3vVy)x2 z?lo_{%rCXEbt?(Ohg-bo`3m>I!vy8-6T7BfAID(Ecz-W&-t?qYKgVgSbg}hw!8n%V zo;e3jn)~HJbW!>2SCIu5lUA1Se33D-p~coziB@!>a}DO(IzFLqx6ebl#lig8hL6eHru6S?PAb%NxK37Q><1IRw3`S7nK60yvRA7|Uqz&-hzBb^3(->Am}%X*gPaI_ce7wj{dKcP0)&t zdt^@$X;Pxmd;d1UAbmH|CP7=?p{s}|F z72=|;-fyJ*?F&|y7i)(n-&6LE%U;!n9vjY~1?BEDb-AAA5rmW&^y?|O{Tbc+{pr_p z&mHL?@=rTA&9?6F35opSM5#Czt^S{>;lf{eD(KWlzU;iju-<<^C)mm>C{1P;Wcg5Q zjo_-lgnGOTD71UYXh1c&o_xvHW;EUs>8C*0eL7g*>F?;6D8h<$!HeWpvBLscABO}& z!VKx!ZXCyPP=afU60|>F)tnZz_?1Sd8vLhlI}>2bb>?5J?a#j~*txk~dOL-8-|_n9y+OEy&8a>v1!CLkZDX1oxt)tvVU;=H9ReSYn(-DL}-AoL5 zv9&B%k?wm*}-ls2eu>2U+{4zKiqR+@`3U zZqL&Z_qaRvk|Q=65aUAs^&YxyK+>Lo`xoyT)qj2eB(R+*u%o~JmdC$xf@meIl+EGo|+qUvyx^-J_yFU zk&RSd6fi*G9(rTt5i$h6-7&=>jnAFpu=8TEx-ppG1zMWklCXMHLDFl`d34XPTT0zz zr@`s6?0UDZeU;U8BA#lnQ??|$`Z8^Q8(ytYw}WcswP}exK_DD(B)P5T%v8a92POz; z&%mL>_JtbhzGo}7^kBMj%8-Q?k9RHoHWKgF21jNT!1srDb;w(GOK5~ z$G_DfOoL=ijYPj+Jiy7q6c|W-W#i$FF36HKT5FjQoG0VHdXcQe^sso_)qZ^^$oI(_ zt1*^~We@aTcm2Yen-u+F%X9%)?7TFWS#WRo%in1Gozk9>K9%ESThhgIOX(|awua|b z;D!a0Bz?Rng3;J8w^Z2(7Q>bq%{)@S;ho`A7_E@y^6)MbLEq*>we5H~Hyc;hy14wO zwB^etK3YEd*d=dDUn6iG@+N1rJ9l2bfgv_5$aBMwsPEPNS`LkHl!P>~{H6?OO00Ou z!?i!p3aTzlf=C?#aYW+x-*?)GAQHF;5zf@*L=ItSb$a8c39cCSBy$;mIna8g_cCT;am4pZoNG8i zf)n`;d4Qz$hDO_7!K)=HN6C>3MSwL3f@zWNH8*GRI%2O;_fA6B^z1f{mBs%)FHnDQ zv6aeW4{~V2JJ<=!c~}bAo@yZ|V4@GZ9Q?eB&xdcl5W-?^gUP|+PmlAft|`tRzDf!+ zae7WE7rJFk2nT7}n9{V$38Z^FzVe4<_RNmXLZ-kx3-`cWi5B>4?K~SjM?-u>C?C0V zpZ@FiaF*S1ZAs&6H&sCLueSDp>V6w@st&7R)b1g*U zxgD-zLszbtKnajc4@#Y-np0A8XMU3;D?^}HEZ=<}&?X_}^c|$xVZRpP+H1h24_kKA8VS-hE@R&?`Jq8J6XIj z>I!eM@4_T(YjaT1xtU2>FNh0mjUiQ3{EF5d8O{%9Pp3_5F1s_paN?6V%G<{8H(g{< z#l$2~f6zIQRB(uurx(u$`X1~a>xtu= z$O6Ydndc^vaixC^h0K|BpPfD%0kS3pTXJtMudpM6^xKtQsZgIrW|q(_ zH2c62-$C7hDb)eNj9$xqs~%IAJts?k0!ueTxws*iW0DWr;d2Yao`Gq+&a{|Sz@v1j zL=d@@xxDt^ib9`FdNA-(DeqnJVOZzu zSwZI;KPo?UFYdU@bq?vQTMXxJ_z(#}c{(*E zmm&uQvsF3_nMp0ZVR}v(a=(l~xl&E_UfzCoDoqv_zbtyC+8GRPnB>*xpgvMPciV;V zVsyl`oP!83lp%UeUehC*JT@3B{)rjC)#L5`$-vXFIkp?|N!^3szF#8M%NI1}sDADMe`}y*N zKjYp6MI5tbUTp#FFLsz3cW*6HC0TEVht;f}%;_%Yw394hLN;5e1e-ppC@}5brF)m* zbRu<^Q}mw>z#leS_EG#iBRwvMOVZzK_>lDKnHaeOJ6fN>RAc$Fy(T2)&x^?4PUtWz z{C~h6>_AHs4#GOA6GG-jR$-)%;UKp5U(bGf?q6PNF~>302M|$`rXTxRmTt6$2Jwuj z)|I4=bQm;%%6qaq3t&gDJ<@D z9iC+RKwOD}I5n?|$J8ZfUX1#X6PS|M9@IW}jXQaN1weWbJw6S)le*IPY`+ij870_` z`A^_y5-!fEjdW;xfPOUTo6xRz;+&*5-5kmH3e_`^x|CxV5H~yazvsY>DZ1n&+evgXSYeV7>9XEisg4x98#&RsX1%ICC=&!Q z_&{Sw?IwD2^Q#?Nhp@3S+>}KhlETw7U60|{2mB%t^E^y*wYpOSMNSlGR++_lsG zVFb2IXPyF3^aynf*n-jWW3D-p!tuo`)I8(END0`m{EX+=BDRAh)n#76;s)Y%M&DvQ z=VZpS?nxqo2+1SyBXaZ6jpe>By|s{6IM&WiT3tww|KeRFi3>HO*6DiYNoTa63?A?c4Ubo}5% zr_~npr$~U_5!HWSo-&KlpY5D2x1Uy$1!s@~k`eOzKi9aO2czNM+PnuI=rae=+s=N& z9b;(}oW@E;M#QvXUfBFBVK}?#We|xkD*0}fSh^%)@+>yJ_QT&2n%lGZ!BmK>N%Z8w%hB~LSmJb=)HmKE zR624V@&F>i;7a2=jqCd#aXfq6ZmMt*$?W)oJ6=X!^x>B7VME++c640kpOoTLcH4_i zRe7>4DU}C@FI-*c+hmVk-LOlj@BJ!C$D@yFlpEXo zu9|G_Ty0~BpKVHlxx|*a?k^IDu3uPC5EPNE9|FzEDNszcI2c@mQC(4+$yD(QUuay2 z5*x$sq=ppEn=+P|0r80fLAU$2g4m%w%+^`psCIp9%x$a`Zj98ckHz=g)7e>EQhgIT z27V(r5!kojJ(PL*(bd2a$}(q0v)4~K;2yKASVKd20a%yK%SA;G@m#K$p+){f5l&1G z@vf(f>H-cT2>L+M$QGM$zKDgC&v1WShww+zl!Trm&m9Xa8zZR3oSF3%mNg$=NEP6(#=5kQgNW zdok&(F`x`u`(waV?Uu+PRLE*iPg=g`Bdp%OJF*gMOvwW;f%Pa4Fcij=WTpU+5k$7D za`NY&vMekOdW=}mkHeu}ZvnyP%t=6p9Jhl&FGt&d;@}34I^u~r=E{ZJg&V(B3qY3? z9u-63)Py}H9Tm*vk)UG-Wk6wW&5@y`8^&NL_?Zv z_4Wj(aZ9^~ovhj&e?Bo9f2T{Bb^ZN7IvuXcO-znZDZE_6H*T776dhJR7FoNwwLKd- zdPUkyqMB0@$dMnlQZTlH$xeThJd&mTfvfLl2MrHRMo*7aG6w``by=_yygxDLO*H_9 zJ`gJ6m#p7#v@JN>a!+?@-LqQ9`CnPNwp!fLAJ`Xbc%pOgsEeYLrHo3SNYBEQoUAlP z%mK8U6l~n(IPYAuTFyRo=80EBT7ZXFGnEG3#NxG)Cl^cjCBYffqQ$Wh0Il(InfE}> z49%Y?-wb{jIW4Vz0AvXwi4YIepufP$YD z)Z~hF(cT1U|LqfB#|<=j43WCmm(Tz6Un`r#Z{Pq(8Ncnh=(7G)bFr!U;~$Nz+`|)^W(MUMP^AlNW1HHfx)m7l5$pjf zaefQ+mh@^P@SXt~LZZ>(@x6+EFa>c~5LmzvNnb+koc(@2$Sn8jL2j+a85OR{mr&%oBk9INaMve9D zn`GxL3k!UrNofnI_7@(_ctRFrV*FiUqPsdfwFvU6A@L+YtPG`@7@IWutB0DqpqA`_1KmnG+IZq6F6 zPCNLrbyi@ko}YejKTq~}w7OB??6(cib-4N{5hz+c`tVI8yPHrGn6JCWMb9UA5&gWZ zzRnnU9J{4hl$YyX4!o%H@+K)0E^#^BTYB`QJ3hg-apfxFQjwGt#j$?9L!bZY0J3@X zd%wbYL)L%dc8SgtAN%;&wpnv_4nMDH&9|j4y``cf6=Pjn!qpJ@g4-3Nf%lbMG*THD zQM{keYTAnGsLK5nFbBJ?uP;wB_M&__Sdz8*z=2pdz<<`Irnao^`c~0U-CkS5Q(iCe z?sVbL?A9_3-0I-6tv%xyz1`^Ev*7Y@8a?DFyPTgjB_t+YkMo`HUNtCzdR-@V^b=e( zra2#2>&)adH0`GX538p{RU1ltQ~^AL7X;q01e;bBTL3ogfsq=Zey=gO^V;9Tf4$nk z>l*EkM3uC1<^OvgxDAGD{|5`8di(HVH7?HG(R_v|l%knTT~IYOmy~qzjP-v1wY+Il z0|pyk@Aiprt3sKtr)!0dXn3J_Al%t@2o({xia_+uD$~X7%R}26tDrl?)*? zyF>P;-kY70f~#lAzSrAk^Uxc2lgzlj)25P?+Y&0p3l%ZxYqX%dYJ&B`A@nZSB+cQL z3c7>o5^wPh9X_0m)})-@;;q*Q+PX|w|D05Mk2g;fFc6VlUe@D5IbT0uEZBdfS<{og z%ei}qq+T~Cs)M0EUdaM>#}=p`mmC+6PMj6^T#@YeEA+boviW8!V8;sMge6IlW5K+6 z57?YPPh>MD^kv&eYP?gOdasP78vWcwoxVH%3i<4eH387(8Mne|$<~UU%h~ll+j*bR@0dwnGIq;xpIk2v;_u)7w77I3fOm z{51ZLikurda3t?>VkwUjnnyJ!W)G_K7PO3ES8mMj59L;F*u?MtZjwsj9 z_q=Bq8boIJjLqI9jrvpyLEeQH{H{I^?OK`*0& zvgcFlcI8WP5^{$V!7?HE#0gkX*kN;;nP|tPHM04?%x6U~IP$TtolKV)NG2oBb;{161HPRmHD4*zBwk z-YEP}?@QL*ZqcM{$KvSa6Z%hH)X@h8UYh36(QrCvzTn>$JXm?7{rw|p;UeI8i+Reg zVU}Bw^q!48kuy_!LMn|_8oiiGB*9#`3m@c97D>K0?L8=8tx(|WdsKV_15s9Iv2JBe z+GuBvmKO(2DEIJ<)-HZN4S^TE_v^B8$odo*%&>bK`ufCXOz>XTho1+lD74G z98a4%cu9;7(2x~3B!QGf!qB46#6slxcKb+xYR&cRUpa)%@8SX;j!}_US?aqQPPfxp zO5wV-)?_iHK4C7)GwM4zgSEkS8*dx+!cy$P{E z^Rj~4T)-4|H^jm2^>hy+D%;jT?-HE$vo4S2t*{1nXO}r_3rt#s5soh_6m=3n|E!vW z`|Y@tgm3z#gGK4%w+w8^hxSBM+)6N!xWLbxa`fdU+%M7+2YC0>9(z?G*)mRW|DJ zBF&2KILXC}rf%>xKG@i)P0NO{Va<~V=b&|<{g}1$+jDXeW^qZ1(^MY7GIt3dcu?Nz z|C-OVBtI?YvW%Jeyzs_+q1B&e-6m_kYm)hTGbS1t#IQu%_%ty=PhJp;xb79+x-Ap8 zBTyxp&uFUR4Pv2NwCZ-iVv&3U`V_nz&u|Y12W8%LDY}DrHuTLQOLrGef~VEmpCcw~ z)qyQ3gDE9Kizpdf|FK6fdaBit_h#YDc$tOG)@uBh;EGZF9N@i%7mp`p9r<2x0KGq1 z!M+j{*;N1OMccYiZwGAM?S^Mqa|`YaqcB|YkBb9z9EUbYk38vB{jfC?KWC2w?_JcGetMOKHW_)kW(g2#>jzzgZ~kb zr$HYzy4fNC%2`dBaGR+`$Q~(JMIRJ0db8mud45x^V8Y6}U;D(!E6c?-U$M6_(J_&~ zz-QYHj+E6BiFdMa`3y^7dsLAnM+lTt`|H~A1TykuW?kc%FDiZ+Cvn#HzvD{%m^`pD z?pu{*-|J3mVyD;(Ajn^s8@_hE!Q?(er^8-SFVqyu6P*_70G2RaLz!@N6%mo@M4Q`w z0!u-dh=c#SB5t3M_)BZ`aZ}r|Sy;%8S^5?@N{M;SLN)*PJMfp64U8f1PhQ$T>QuKh z|EJ5pH_L$h>zn>(x&A+0{$mW#PyOqh00l>ZK*RqEV?qCt69E?04E=92!vEd|^nIr) zfGgm?RsUO8O*06Xh0>`~IH!QnE~x?i@dcFKquIZWq=Yd9`4c((g=h<`kb>=>IX98R z#~1c@F$LY+05#{YWe|D68)agzV7>i@GYBS+tm*Gcqp zm63HnV#k2NkK}+ym4XZ=VLT#Wt#%>6UU=$qba0rSoGpz)dLlqY!F5P?|IhRIMy8u)n3n{?CQ~FPDF- z`?oG&A^+VX0ImODE(Z~FvWrr{zx+7<4E$28;NRu}KddXuNU_II_^x!Nea`=n=l_ox zu>?{I_OJwF>et$kO#j%KDGVGg4(|N&RkyN{3ZfoaA2pRK;v-@dQBZSKNynp!f!2WcG+aw^;yABPSCW16{e+~ZEHrRvh_@5|QQ1)T=4 zq|T?9_kc7}%e0-~Gp_i^(yd$u^zz+rf-Q89_}eo&`+iKaWGoz4I9B=pw&ag&+8|=r zh0#dR&r!_=0-weRUnxAM&npd!!eUaK2Qt{=0ekB0Q#fOvmUNz~pIYy;mP(h^2Ogn! z#NZU@02K4ye0qOoNuKc}g&p#d5}XJVw77V0z~YswW&$21Uv00LRD}TwvA+%1GUeBz z&aFHBdWh*lXJUR0SzQR1C9$ zJ(I#7!`@x1yvk+>IFTH^9q}-Pz6;y$cE2JL$8&?rl4*bv%5k6T(yrLKDCx=wDY@g2 zyqP`;$HZa^>%;`|gTKhn?2`^|>wD{B$#^Rl$z{#1Gb<-4EG)Bp?L$Ws|KPn^JoCLB z8ST|jk}=if^36uR6_4oBW85?`FZf-Go%C=R3+Clf+t4txIxWuMg)d^5kA!Ivyw7^t zg`7t*pvUl7R8s!ybejQ5Hn7O^&EAXeTt_0z{eZ)s6qZ`AR_-++$aL3EOdJx6|iCr3L9Gy)a5W) zjdA9_nHZoHA^;QakFsUWtf%YCb?)~WA&uY<5-?%mE$Q@7QL&JW58CDe^9&J;EX+Pb znITMXG0Zrh+9*wAjqHPu85l%vMP%EeB`N7w7sh8|%dV9hqRrRFrgEg$h~&#DDMgYo zr^@?(cX6J#Q`5+TAVOFFTqw(vL7Em{y^Jo!ejx2N8h28CzZ#RXNdsJGI zlf5RYr-bg0c)FYWlgkz_*RMy1eu|n1zNI8^zW~86C%)-&w5k!O*yK)a2#+Bo|7Krd za#w%)NI?woUe2vDaB`6y#cvc1B+-YkUp6zMs3{B_ic3uVOnQ8iT!R-19)a(Osz=rS zH(&-T%HTL;T`}RuHskUT-p{f5x)GI@hNuW%L97&=gKyHb2py5P3_U8W#&lf8T)@q6 z=oA$wTGE0pVk9{&Ys@Ry8aNL}a!QR0nX(KQ@J+l~p`!4gFrd(Gz~?9#3JRWdS0+9^ z?>2D%A-|nlt19vRS(0lec%nadq993)hj>|NHzcz> z&8hh1HtyyyiATa3x~tw4RzcamK~A&HcCB2{=FM+)SycH=h@KWA{`%QxK_@|+ot5#0 znr+$?I`6>;6izI(@K<{}@7wdF)(;`q@R!RfXIAAZ-2qU>oly&omMECQ$RP!aE$+&U z2c^^goxnk@BMqlZ&7ImH9+oC~RWq;WoPY%7As6&#gT6Ba10h}~VdE*BdB0nK{Q zfVFP-EYr|&R%aKuFI))A)z*tWrTHBa?p*jtf%Mxdew)P#P+3RVF%KbaFuEq!))NBLFj9ae>*PEoemCU7Z5iXAW1$!34=xpMrsX01*-#)Ct@v{?5LP zISvVrUs4*{F{<1TCwk>>Y2_?QQR#6tQ# z%(vm|lPlb>%4U{j`BRqU^z8*SG^{kDZyzDmkjtyD$G+1L}3feNOS1%?!84P)H za8`4qY$J@HcaD#*AiT$tB@77I-zwodWz{v|WhxMDX3lL;aL@vPOzKNZBAS-!3%$K` z6d4)#U-EA^zZne&Fu>v1!HD!MWElSSeg60mv8dg1NBw%yV=UpF5^_H zF}z+}-&1koz#e5H8ayKW&45%1oc%59?fvHCQEvq?5q&b%6I&1xo^*O)@HMPJ-#LKb z($%(wTSypEV4;(MCh?o!s1~lw!BpC#CvchnuF?wOZu1GXKRU-^9$SNs;>(kJa$V8w zWwTa8_@GyA<&xm%dQ20$7lyRb#j$>p)Xfip56>zt9xV(y|DQ3PgeHgB;s)VxJr{P< zTh9(@By5bBod>qM)k~j0GYf`80p0L1D^A=_@rkQ5u$0`38~qK!KR(WyKd@hpSW}0u zsqFLY$B%NCG*l$NsW6up3t&f8wJ)6XZ`Djvlo1qA5-j<@_#BjUu(sspX1-!$#FIz$ zG`9f-f`l031%6wD8H-Z4gkfVbaN|tOzcofGeMik*s4_e>XD6Y`X9GWi%p1{tiAOtHqK#Ra4n@R0Kbi21FlpWPWwy| zNV%vpUNcHep2Jk#)v<>uFK~xVQAKO0I#LIFnZJ`*?w+6@%C~#|-H}Y+Bm>#VGTqzF zAUZapCk}dmAYb6d%&o0)&8l9}Qdgt@QQvA|a#GB|fL$qExQ&Kbbg`i$`FOe6x-Da3 zC#SX+MO}yndJ1{bMovy62$hN4nTzbF=2gU!(ZK1sj`tAgFb=0!NI2Q7kbAn#6kP&EFXCZGTE0Yi+__a(nU26%Dv)Ap90E2!{L?H!T0XY8aY#KQ@}#Q z5%R0b6APkbaNl*RXS!9|-AE!4E~c_0O5$0QVjq*mG^FoN0UY0iG# zzV+{1ZC<%t0-w7E9VaJeax9zwk@1@CX#W>9wAjo{2{|2~@w^b+tz1{h#b$Hs29uH@ z^wB2_Eg$^_nEi9gmv^l}9Rs;@0})}?n`4T!|EsmH4vXr0_XQD@R743W0R^PXp$91e zDFNvmy1N@ikQV8dazwftq+{rY0fz1Y>4v*8e&>FF_nhaP^E`L|1AF$~YrU)9{Jd-Z z{C-Q+{o5i5m6D=Hz@$DE1IL1N+&DMaf?chYtdxpG2ym*f9lXqq6zz^Ng~RFoW}1P_ z8d2n*jB-XWI8D_1PXfP#%tPkv>nanbD0sG{)1?QRCFK*|CuD-tOFHZW? zab)kRqc-PadR)n8)uwe!?}0(fWVQ7(enw44ysVDkkRbim0pSkzz);$=M}Ud*%UbEg z?{@%y4?b2*6Ba3xBsb? zy-xcl5$3No{cpGb7Fhaytn)u@?SC`mOKV<=d7CQHMJ$il@owCWyk@73TIV_b@*k#O z=e<7bQb^_G2>uP1rQQ>g{cYCC{`W-xIOd0jBIKo|L)_JY28W0A8jJq^c-V7?;1UD^ zJ$UdSBb5;7-Roe0@$4LD{;t=o;rLCvAqW2b`(OS%9p7wQ-Or)9>DP|IwWki8S%zWsIGP3X&tZJ_a8gEI*maPuJ2F9U;ZJEK04jvODUpoz7MbqHa*HZ zp{nnHh4HfJ6iz??aRqe#%fs>4Bk{-K@sHb^abCLp=HJcme>1fIVXe>j|6ddCcV++k zx@P=;6a2>m@Nc&_eRty!IHedRvNl|fRYYNM$qxD}$uT4N0|0NX=qZ zJRI{wz*3#0C$$Hs9K!o%nz}zYnA#>+HR_)WrsS#f1#W;?Q~NMtd$nbfjze&ritSEC zUX!MD9BSy8U^A{>1SUxD{q#~ry0{d%uM6N+oIBS3YSaPXwP`?`tw6i5+`CV4-XGg9 z1Xd_^1KIQ=@J_mPk0`-9N}hEQh9eKHGQU;q$6Ju8?J~v5_-t4lzpXT3FZ8V2=Jy!z zTC2&yfl<8b>zrQ-CF`=fK9MA9uUs*J*Hx+)Rg+y%sPub=#hf|`u7cMsSCAzAZzi`d z{d6n+YJI$TDJ=_HSIw6%$J5fkHNDR*|Lh}ljun>5YB{&AccjTVp)l!91|4e4Guc_K zo`l<0YjxmvpYW(9%G((!jTiGIo%V0`D|)`oOs{qn9M^Gw(bkL5y{;JFni~f~@yHi= zGX=jUDFU^$X71!s;pxZr0dFSPRc7lGI}j>jnC!iGVF(fBIa-%$qnw7!k2oRUnkh5O zOWFuu1cU~_H;~B{_$*kl^o3*KsBQVxuw7{;X72GD0Vt{piL|B%_it_2*v$5K*iiuR zh*;}cn7p;ehkXoj%8qb8x8uSHJ>Gp#f%M($Ze`J^fZf(o9~%0RgZe`wy&e>b%T>&FFMwRPTRtnjq#rWE#pqn<#Rnb@O24VcV3w zmDs^%^}3HefX_>XVgX2ATF(%FTj{!<6a$Oj!jTCa-&Lx1L6aUsKK+WIm!ssoOW@sI znV&HfD<`?n0@})1h#rJ;a&XS)3f&^bxg8Kd0K`Hk_p@pf+8nq!n4tHh2@4Ij+~PhH zTh9F`ILw~;qd>%3Xk_4& z%TrZ@=h%CA95uR6LSn6-(wp5kk$LQgeAD3wQZ8{Ee1KPR+SN%Rx;@}n#|*f6RDO)? z)9Q1+v}$s%;PSV9)%X0Qo@ImA)eh~3{0;EjJZ-z%(fR+S$L<-XS(V$i%|PxK0H?s{OOtq<~HWg zBzL@^3KhaW?UzX}!gEYgUwtf2F~VNq)LRgL>K~6Hw9K!fupq5JJph*2Dl9O(6QW|> zZW5wDl%OPaw|suzvBYRu#5o!i#cNK@3q5E@shZkQtM??yz5@qB?=4kZIH4!>Q)Qo5 ziW;hh<5_lKmx6PxPy<(u|bpPL-_ zb?3MeZc&)D1m7LHZ8n5ce@BwFc9LWNoaR2}{oAOb3+Jb$pAAnq3=A*LL7l&Zp6d1*E{}2W9g>T6^o)FWa7Hfd#Mc`#cd2Wi zv`CTLAxlg1KSkI;WsMHcta!dQNM$$?dhv0k8;)Z%B!Hs?8pE7t&IZe^FhEai7WHGd z?V});CU(}hO;Tn_<51OvV?8;;su{hT&3q#Kf4=NnORHWzne0_nYBZ`vv~<0f&$bh} zogPf>9bX%|EsCMPWTm%KBEVU@>+nC+;jZcQwt8$R~!KDD-5vh!!DR-$cGt>%d+>-)+|Hcsm zinAe+*HK`j!kem!`S_Ptdn1OR!1K9fQ*YW5<>6+9*=b|f*_kubO2~^K9OP*1e*aoC ze8Xq&>5rzAL)w^`X)W+4vI#(R4KaTn@ zBhNb!u&C=R-!IBd{1Mabt=z__pBk-c`=Nyb{Rc*xc9WiU_Sdp?XT4J`4OHr! zo8;To9s+61Q!?AZh1C}su+z=UYdr@k-<|98hul|}%1lXN&(a#&G<8`EFW!EM2F|As zJcz4jhQfDcfjuDRcb@$Yr%3Iz_vg|5JrtLG4HCWsyyoZGJ* z+}78jlW)lkM=Nb?m&5KU=!+CN@)Oupg>swZw|$@J&8*b!9YNRpxmvg!&RA%)>rCnQ zE}u!K*t=0?xTCgT_9^tq?RooI4|nQgfg`?U!suZS0GDc&82-oxWaqM~o~Q#}@}b*~|JgF&oD3;rIb<4ZXw@4>Tf zTX+-+d(0^Os`4g1%9VSI6^gGxtP2hN)+>?Mp0Dmko$d&B%|tYccNP^Nb+|1Ns!qwO%_A(J8QO8E_;ic+jp%b;Z3-qLC~Ve*WsP4I^1F zi@$}XF7A*f0EN(RVrANUoLOutJ==utI`KtBZXnkk7>j=d0E@&e-8b zv;M@EvS1F1DoeKO1D+rA^NE27Jy$xm5Er(k@7%oQPSjU3ujc8EI!t?xpVj-`4FQgOYGE7vV&GInfXHqQE4 zyw+fypz_0`>PK1mY1mfhpSLGhQ8*Y+^oE|61R`3h@CDg@)6w|s*Vj5G51@X&LCp1N zl?XRZeCH6_3gm^!nG4Qll!EBPjfFBs>vWe{XO%)VVU?Dhg-h^RyreUKdWzT$G62|FV)3&u6B|BZ|ZM&L09#2b=Jw2jS|D4qQXy&nU zlG4>mOms)NQL8u+{$>S4qX>DZ1V5?HaE@(VQSW-@5`+g1NF zv8!-sz2Aky*$~lfC4JAKBQVBfs6B>Ja?_EPh827#4g$Fpv9@uW*0LSVKd>Zg>(h~~ znrAJH+N6{djp&wGI`OK`1<;yeVh_7V(8uOw74dP%Z8Ke}di3yZ8n4+)E4`%pk12nY zG%q20RvQska~poLc#Bg*eZ1qdec$g;8m+0ba_rS;lGvFOsjTLiY)8o3&vW;q-9I>A zbA$Y}<;E^5YNi^qgo}(rCY39d@uir%WV+}oc_bMym^I31hjiR_6XQSs=sT@F^2fkS z1lhDz#T6sh^@xZ=jBF3Db>tdb}6bG3_ zFEi5-W0kPD+^J`^QZ2t!c%I)W*<+%b5OxJU&~F|uAvSU~{TqLs5vK{88BA{-p9_>RbH1iJ)iA)+iW3Id)6SBhyNZWb{kR znB44@JP9D#$MXm7?8mqm`MO}MB#?E$3`)y96$l)Tfvdy-XXXnx)g&H%N2@JQb2*u$ zUXz(T#0q}u(3vJV$@-;pga4fap+IYAX@Ax@CF^1hj8*SAc65p9Dp|otN2UC7dj^D@iNIKIOK zfpjJD%|j?xPC~`@V;n3sb4lGGtTQR3VDefhi&lkA z%?++zYEI%3K@v`0l*d*@dLJjzw?5!UNpkPA>|}Vl_-M^jE=$?ZE<~pu7=qTb)dq(z zSMG1F1qEk_4|m&(1kwfHt&F-*q-=eg)|WJxJhIm9_NwjKB9lfCLRYTOn$nA}qF}0` zHH(XE3ne+(ejS&|XNkR!-vnz_+m3*ypAYkxYTG6=BXNK}yF`YInh!6o{v$^tCIjU2 z;>mKsFPDn~y^=gfQYNM$iZknZ^oKrS&qE~I+bcH9;*CYR_@867TD(7517Ac;gt7?y z?2nr$hLBY1xG_s5q(wfY?0+7o-KI_Cc;+TiE$}ns11cdpKX#YojxVG%l8hXdnA|&1 zpuOCi?n77oVfSgr+wG%EADgngwD+hjY~gFv$E)l{3%OVM&G#m@l(|=qzPV~uZ%!a9 zP3PEALdZ9{KSd9HHlvjdSTM-?y*2bb3_y{~(lplj&#M|Lr#1G<>5IKxuG1(lNF3k(?D`;cE1EK^9&c3R zS(5kMOm<}5X_MFk?VqEK)<#JDdzlBY#@n^}kL`^cjXe(rRZki;JF1Vb4}X|t3=wl~ z<6qTzaQ25c#?V2t*fZ=NsMq%|XG;_m29sDi(;00-Ih~XRlx7no-@){!2)Ij}(nN=> zE0JA~$y<4}@(@MjiIo#RCJOaAGEA^nz?N2%P@V2lgFt1ggqiu~bzA$X?8?FGI@syL za-#zrp}SO1XOnjn$XL3G;%QUgs#+mglVV3l{u*}bxB+b?3?vzSj>fYGrT>5?ytg0X zC-%b-R+A=ak?1#0D&EplAi%RuGIVr+!EWg+5O|l$5|60ZnT`~M{NhvE%?|Mt=cmt+ ze9AH;2i9|$h%g=B@u*YxHBxW%)KSwTai;EJgI6Hm9ZC6$D|oXs2}ZSYueS`nwQGg*8`yf-V+-_86IN> z_?>zmPS^5X)~`EArQ}a|Kd!mAvu(+T8t?Xzp0p|G_S_$yO^|uQ618RvPXDN;Pb26^ z4hoI4x!|{Xr6rqma5uIuN$v>!cmNvozGuX-;RJ~Q=yBK? z&fSd^(tb|;A_;;fIPJdg`bygs>k)tKep+R${jfnL*`Pbwm{;yh%V`{*Nlz7j5EH2= zOzdO<*=3l_pGX@C!f_$squp6(TaT=B^1|9}D&VOQ=#kHX4l)# z5xS&sK}3bSk?QfRIh`fc*&=T*l=NpyXI>sBbZw|pasX$)=e^}NLJc{YFy*L86$?kzDoNk_3tNol(jwV~5V8^rKW4!QtJgq#&L?K;I7H%*Pp~Mw^ zVjG5f3T4wXQT{Pk3&hv!(+S=B_fXyaA*dJH7^}LN*3la|YqeHQ-D|PU*suu&vL|5L zBj1&v*Jg6D7UVljohyf$Q9;bW`5PP1=T>g033hmQFM_og-*%65T|X^Z!l8a`?>axa zQ+-A`ejma1t^wIBa5C3O>}*VVQ9D*tBao29Dww-6GZ((tj1P5yx41x-v|lYs3Z>PZ zG9ddJBQfwX0?97B=f6tPuO!53Ck54tDyEF;56=oNbC6Gk0WFYSAxW{4R-@mdrz+5HtOXN ze%ad8zOIy{g`!E*S#T0ky3wFAQnJ!HK{+m!-=Sf(lsA`mzq>ejESnvKmZ7A{@y!LB z(C3($k$Y)qHxyQVCQr9mM&kb-+&qinXs*uN{*mMWKU5MbQ46Hua@4Ien@xVR*M8r? zAprcFlptfKz&lxgc7L-%*44~P@eX^&(ui00Qy7t`fTl9>Adef#u6%WO|EHHQfx(Q@u5ru zBeRc>@ZLNQ&yqi`c*${!6bY@MP%Z<#~Oi;C7=B1l2BOwOSb+O|KsB06Cuw&QK z+_K@33`vC!HK=!^5}nxLYC70ge)U)>Pulh&>wRQ$oNo#9y_Z2cnC@mICB^e5oMiMP zUf7n5n-6LWE0|~pOira0+2z=8-C3tzirHGB-|9xUC~GManCEzF*{GGvTvo*$=c>g1 zbLmu6q}t^L<{8WuYBIGMJ9TuK`V-+GSb5`(&3cIVYclFYDf}6zuTc;H+p#KwB>?v>Jzd6!bP+WPn_BCVEArP}!-68~G^&~F%q+(K#* z5BW**;cu#(@!<>^>(f*rSi0!Ua2KjR1Nd;jqq41mn5Tufx*vpVSthIUQ69bGN-0e; zKRxrf*&Tn=Lk{NuRNj&PN9c#E&i{ zsmh@v+(Rzzyrm2|kszr_touXmoQ3?GR?PhdU*W(4?T?NW@Fe}fnE+XBd+%{3SaS)J zr?(KOmfS|HRT#Q|dJ%6NUsa{{A`ysUkd<4(9e|w(zVBXs&?Fj~7$vTRhYhc{0tbUu z!iy&@M|A=qWLb}m`Y%JxC_JO#^+Yefnmxe!aQB0Ve+%T6AIkFba@|3Tbf}=0Rv2Sk zRB3o#5ADN;OHuLht`nr>98^cwAQf!GS@KEWGSfTIx+)UgAJfOFpYh2JT#u5uFyyA* z=68g`tl!wWwA*1Cis5x^FAuwJWl~>xucld8kq2}4oAiW5xnA@VNxE!)RXHMBfvs-O z^pIY_kSmx2r|oi1-RQI zGb{AwA54{7XfK|#_IRX%BkO~L!kab^7woHT`BHeu!oQEte){_L&5A#Z?spu+$DawU zgxEfz7R`k{YeSJ~pWbL`h^lk6enxhDHlBTmy-Cu)y8e?^Q&Zoz}<><#WbwN**__WdO-<6zsET`wvz zH(O-mfqWj8v5v-@R^V(B^JLYRexVm*ba5?VdiJ-4BJ(8OR9lW-%`E&qBQApAvc~GG4m$O8Ksr9Qf!_|Z7$Z-w7!qeH7B(mW?kjd+FvZo?U#{NUIW8?6hIHTr+&hbY5P8;aD`wkgRQZi+2?c*Q zjM#ZJ-~4V)uFnkDzzy*6T@Oq;hqA6(IZ+nBgh%o zA&1pl8WuMX{%h@qeuodoFdfSPKe$<8arjNA?rLhQb=5b?7{3eg?q#67XIV-jU~8_}>nDR-4GSXdiJyP) zwSE^>d|pGX>XGrRDrJ#7RNmwrKqu;NknUNVimFOkS+n6>mTZrfE}pNMMl!pbbg!Tx z-k`^+8aijw#WD_Z;Ip+h|8TuD9Yz{|Fp1DMPlj83lYoxr9Hujd_c^G%85Qh)D79k4 zG?oB>b)0;E2PeIYN3&yQt|KSz2vDC(f-cl+$4dGe zKOX#!@%Ky>WI#jSkli=RrRD1`!MP(L2M6dweEPfs|5 z^G&a8+Y`9Lk5TR)5$*OuDNBnxGvHFl@5UwpA*Y@jmNiFKZQR3O7p=x(hR>Y!knajl zt=9>sQn>sn@{hxF4I*oe@pbzy{65hHfZxk!ifiDg(MlV81u*8)wF$|Yv^fja%aOcJ z3b2bw<3M9dI7APzw>KLrhI-3C#E;}V{9|0@$Xgyd!|*t*ibycI15Fkx%!uT1UO>e*>jt} zs&)IBGmd%RaL+%tYP|yPHa|?+RQZ8lB1~^qMM#fhXQrcifi*&r*cqQettCGWXR(yh z<=vx|q{>vI3;#xT7cb0ZI3c_7QcNBzra^-6tk(hG)zJ_Uu{BXC!aHDH+GT_3K0y2a zzi5}MO635d6>Q^|u4Zi5`XKpiH98`fm?U;HHJ%*v2OMn&_u_n>+!VPwJRz^jXWNlK zBSKyYr1DERcNB?K*|RQRlJF+4UM9D(qq$!D!EGmT`Y5I&ONFjs{csyzVz(BgqpZ^) zl|6r4gGx`2iw$-6UBw1t{8FFk*W)L5Q@xJR+GSH;rL{-;N>#Ssv+K`#j^lly!DLys z&7Dljx{cXnZ?B4L)V`OJWn{U6pp4sHpz9y(w4ht!Pq7lh9aH~>4g(eowp{0%mBHbK z%~zWwbFa6XLelDFY}=sI;9ak7W>Pgk-^iPX?Q9#Y*E*xzy21)L$kT&;cPc|Vf>|_; z9xR1RQ_q(7A9WZG&^O_}l+j`eTE`cg#4Xx-+SXpgOGc}e2vf;?M*diQ`|@FLX|2-9 zS)4ygi#1)YQB-$c*Y*=IU--p4#b9jY_koSSoc}C^85*Pa5Xy1Nfxx{$-HvsmU@)g z^}49kcFYn(hcmU}eW1e8G%;<%T(-Q*LtXC+mNto#GFlTyj5yrQ=7~+4O;-~@%e zS#?Y@9jP(m+s_GcZ^Nck0;&dFtQEP&xcdu|m)GmfWH7V?$Db($_tj6C5*jaZ=Gp8XRr5TX-%H=UJ$s$A z`Dg8^;DYuTSeLqliZKBe)}EA%j6gamA2A3spqXz0kTfr?p=hn8>N}g567^6+!v5&e>M6j=4j3yJ{_- z6ge_HiBSt1NhKxvOqLrMk)p(J@X!X)FF2B-gz1+Xm{yMNe`L9g-1_tA-`@Pk?Js{r z`R}Zw5&S;_>n5uNkYE3PyYc)+C?5VsPUX;y{GMIE3HYCvbEAkzGXKW&IQ_xcc-wu$ z{9#r(U&fdQh$-IUo8*6B;u1akjhF%o|L;gNxXCY)B;SPz8eLprb$ea4#K*PGAAjeK zgyyrt?aGGDlgfLij4$hlK^937mt}r>KdW?Sekb(sEer@6Wl+;RXMAq38EaMJIBJz! zp$^Zp8bk0~l~$a7gUWu4;NMo|?huS-myMdU`NRSYnB?U{yuji~@9G6Uh9POKT&5TC z010HAV4pU-lxw?tMs+%czo1pT4AzxNEu?Fe+mlt6ENu$RYXeNXY+sM|59$rp`Oa(( zx<3y30l7_z9ps2N?QD{-Un?@+K>OG~xvW7vd$AhakCiHQ;4_M0K~Yrn~piacvt$v~j1attifuEL}Qu6A)SxH?ym zylvC`cGUARX|_nA)aB^y2>Y{d7QFC9<0gIrH-jmyvr4|rFQwB(u3+Xn*O)$i`p&0v zR4;DDdLCi*dzFP^;0}@4&Wayc#PlRrrY;LPa1YSuqnh9}hW6o3*IiyHF->W_G7IWj zb_spvbUZ$N*c!-XKH^(PE*{$8a_b6xXLm{h@rF1Bc7#rn4Ay_BJtUjzvGKejMm;(n zbJ}iPwl%JBxeIzF`+@%*WvmS}@TdY9o%-L|a~mIZ8FV>pt7l%uk4k$#&6%H!-k$Ik zEXS{n^J+KYjZv+_P%x|(=R3rkYK2u@czn3PmwsB!eq zw1_dbqifosr|rTMCG?1j_~#Ci-Q=c4p^w@{KP3SaacL2N$pp7{_A(e8XYyu6mX>`A z6JrAR{ZO5iT98?*J3~m)7RHhlyk~E6-}R@>CVPvp#sM!;h|^Op^N-_ZEu`yBmBTIr z%hof=EnDchr|=rU142vZ6b@-wP<%|+wsHSHz<*4B@gGS+NQvHt&}oONn}EzjHU|m{ z_JWj{@LSL>>QF|qKPUe%%d-^kOZQ^0F0R+ZwL@G@?FVsJ5!@>7@h8WcA6+Otv*K|> zRtHQ6mZ!n)^u|{&t!t0P_oiL&OBYF23c8o?B~Vm6Ov>W66t`VIXPR{dYd?^6#<1kF z9Q8A1#;#sDs+HQELY=75n@Jr#;PkkXH@t?hp*(-S>)F5&_;cWB!Vfe#W2*jO;mA(4 zXf@Nb=1IV)Ma2+%S-d>quUJ-ALs0~!koQG8Z4ndpFc-Tl0j%V1V9V|I!h}}3VhF-Z z^9wC+Z&XZ7yQ*Zl@{*gCU*4SYV9S{lSV(sozp=v-1Q$KtK|+?XSBp#!K^iXG;yZn~ zrw9wyQUL_)g#in7tiEy2nco)@{jQ50wT6n16_fdP$hclhcug3g_E}^Mg}j&+hk`Ll zB*`QWd3-O?PJR10HZUn2R6jpZTA$2er>tjBNXV@iDt2&D97-AlJ#Y2V@lILiT)`jw z@{IivX~IRCOP6|-Xl7KPoepAb0!PwpDp@-OaIH_t)ZuClrAxCuc%SQfdU!9M-3A@l zp*UL_ikBCEg__%~$YUaD!jV}16fDx14=_72oAftT?Z<@H+L8vU2EfMEa!`WWnQ#DN zZCtACK@#8xA*;I!XOkTkm>`WcQby-UfAjGTy%-M}?ftuNbaeWph3Z--hC4>9?0I=N zJG;$aXK{;oC;&V@d@3L;$?irZwo)E=L0kM@?jK?hrpJb*BuvZdA{p-h$beAkZ2PC!|?F}BSTTs-v0Qfom(Ej z2tJO;{z4Cnd7~8rSdET$^EUR&Ts*t5^?pWE?dj@-Yg&xWk> z4J{ZPi-bEUFx-gPj(0}tSx@OkPa4b;{hQ6{fC6*)!!_xnqN61h6*Dx{07|?GAj3~B z6U}duM{_v2zWz-c{wrF6VgQBx|Ir3+e*P;=Z+h#WuZM3$PQabF-eUhr4DQ^KlaeA4 zqnHs0XNWFllJ*e()eAuFE==KIg8zW>{<9de4tryK3T}!B&3uMm6#`7`wJ>CtJ#Cd8 z*QgF3zqO;yR37MuUli0Us=c-E=@?V~7clsrrTs74@L#rc$VrFZk?F8(&}n4B{3lusT4RGsOAJRsI|S5P&HP%gErMH0gbML+{^f z+_G#BA#R8C!xneR1`qyxxpz*07dTnx#tAH&sw$p^g@y085(!?Y+LG;{N5{kzd!E`? zSWb#qS~5*ePClih+cf<(#{iLS&^~WFXUj8DY;foF^b}AO_4V~7B_*FQFkk_Ww3d0E z;;~a#R=xd|-aL(Rth9a!VPRCf!1vylXQK%PVt=Z)UnrflY;A1?3c7py7NFx^cnj4! zBbyg@?-LLx9qzf;(}}UzO^YVHeDacwxV3}{(1F2e_h2P>@hoI`r4Fld3=9n4Ye@c# z=tr`GwKY>DBs9($4Z#GVK88ug00zlQh=!O&1Yb6!F?*FTg}ksBE3%yAz{17`G`QX* zZnS}N3srK3za22~n9KB~r>AGwj%KX5loV#I%g)!bvNDYzC3|}gGcz+_+F#Iax=)Le z0Fwv!DJUpNEmk={u4ne8@%m732d35bX!L_~lX zJ^lpp2;r%fu=u!JEmmAX0Uw)?NpG<|?6=!=-j*0vqE_e14)mLU%lvz95HXIThQ@cg z7k>+8Wng3k@(C#KcM=Eq!Ir7{_-ZyVWd;WafpRsp5sQS~TS%%>(?M#G<;0sutxL=t88S}a7*o;|yRYj~6*!9!LMga7FlS_|Nu+Y?EmZ{NPvBW@R#jshkJOWdZv`YKRN zbZl%1P|R4Kx>7z@7niIjn9{qku|4wBvCW9+sNdg71x(A=($au6ZJ?z@M?C?$Ge`6j)zh7ZVpBbvGND=V3{gp?^p%B&0hJNRnUI1#Pk% zT~1DplX*&nG`&M!3o$zXpU)K$BS9UH&3;)^zedp}+)bXOg^ifgI8;OB5BpoXA1;0R zxz|_;_IC#bvUfv(kN4LVsqtI&ym|MJy!iF|A35`@2y?&x$h!D1UvK0C*wTyCzchQR z$0{G5y&!9JZfY04Vs0$@c+pIa1QKh0m#&IOSVv4u9I%_a>ZX<+3c0BJ^!)=#VCB2N z{c<=sTW5&SGrqnSdI&Gno)~;8{P&SlO0RW`ap@>=-^IeJh5Mr3^Zwbm8Ee&lC0#UH zIM>t+yW?+kQ;maq!{X0O896k;PCc3D9^NmUU)y&-TZyrjH%aQY2y9sh0Z8>TI zd?1Gom{fAm(mlbz#V=I7O&1F<8_&P;gOYHEx$JnzT&F3vK>SU5MH+gU|B}-iNnWLq z^-Uqe>v>oP-m;ici;_gvmGImvD;tqApC=9<`?&wr_P(Y7r%BR2zyWWb-qVoA`>-RD z$+6JOqj{@VWaHUiKk#9gk@}st50IpNWLxDs#Pu(D^HMp^?;X|d496WYTa+;6Zv2%4 zifLPv-CJ;lWl4;anN6a!hB9v4Ti@MbTe#XdE#Fj1%8n6_{%(gM=~e3Uv&4q2bjRmd z?p&HoqQ(~JW@gVx(&?@1oxe05c3q|Sr0aM>KbyvFLvhq`1s~j4^Y!O%6aQw^E_BG4TzNn1 zaM=1Abd#B*dcczZ%yO}fQW{)c^93G!)z^Q1%4#Uh!TkH!+vB%pb#rgtbdC0fGN&>a SCa{76TvFn4Vg(|4@BR-lQ)8F_ literal 0 HcmV?d00001 diff --git a/CSharp/core-AppInsights/images/outcome-2.png b/CSharp/core-AppInsights/images/outcome-2.png new file mode 100644 index 0000000000000000000000000000000000000000..62971691f1a42fcdcd17e53672cc245dfa0aa8a5 GIT binary patch literal 131301 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�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 {zb97FN4gi%726{V888`S$NTYMA8f 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 + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.js b/CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.js new file mode 100644 index 0000000000..e02b33ba13 --- /dev/null +++ b/CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.js @@ -0,0 +1,3859 @@ +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + (function (LoggingSeverity) { + LoggingSeverity[LoggingSeverity["CRITICAL"] = 0] = "CRITICAL"; + LoggingSeverity[LoggingSeverity["WARNING"] = 1] = "WARNING"; + })(ApplicationInsights.LoggingSeverity || (ApplicationInsights.LoggingSeverity = {})); + var LoggingSeverity = ApplicationInsights.LoggingSeverity; + (function (_InternalMessageId) { + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserDoesNotSupportLocalStorage"] = 0] = "NONUSRACT_BrowserDoesNotSupportLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotReadLocalStorage"] = 1] = "NONUSRACT_BrowserCannotReadLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotReadSessionStorage"] = 2] = "NONUSRACT_BrowserCannotReadSessionStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotWriteLocalStorage"] = 3] = "NONUSRACT_BrowserCannotWriteLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserCannotWriteSessionStorage"] = 4] = "NONUSRACT_BrowserCannotWriteSessionStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserFailedRemovalFromLocalStorage"] = 5] = "NONUSRACT_BrowserFailedRemovalFromLocalStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_BrowserFailedRemovalFromSessionStorage"] = 6] = "NONUSRACT_BrowserFailedRemovalFromSessionStorage"; + _InternalMessageId[_InternalMessageId["NONUSRACT_CannotSendEmptyTelemetry"] = 7] = "NONUSRACT_CannotSendEmptyTelemetry"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ClientPerformanceMathError"] = 8] = "NONUSRACT_ClientPerformanceMathError"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ErrorParsingAISessionCookie"] = 9] = "NONUSRACT_ErrorParsingAISessionCookie"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ErrorPVCalc"] = 10] = "NONUSRACT_ErrorPVCalc"; + _InternalMessageId[_InternalMessageId["NONUSRACT_ExceptionWhileLoggingError"] = 11] = "NONUSRACT_ExceptionWhileLoggingError"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedAddingTelemetryToBuffer"] = 12] = "NONUSRACT_FailedAddingTelemetryToBuffer"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxAbort"] = 13] = "NONUSRACT_FailedMonitorAjaxAbort"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxDur"] = 14] = "NONUSRACT_FailedMonitorAjaxDur"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxOpen"] = 15] = "NONUSRACT_FailedMonitorAjaxOpen"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxRSC"] = 16] = "NONUSRACT_FailedMonitorAjaxRSC"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedMonitorAjaxSend"] = 17] = "NONUSRACT_FailedMonitorAjaxSend"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedToAddHandlerForOnBeforeUnload"] = 18] = "NONUSRACT_FailedToAddHandlerForOnBeforeUnload"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedToSendQueuedTelemetry"] = 19] = "NONUSRACT_FailedToSendQueuedTelemetry"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailedToReportDataLoss"] = 20] = "NONUSRACT_FailedToReportDataLoss"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FlushFailed"] = 21] = "NONUSRACT_FlushFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_MessageLimitPerPVExceeded"] = 22] = "NONUSRACT_MessageLimitPerPVExceeded"; + _InternalMessageId[_InternalMessageId["NONUSRACT_MissingRequiredFieldSpecification"] = 23] = "NONUSRACT_MissingRequiredFieldSpecification"; + _InternalMessageId[_InternalMessageId["NONUSRACT_NavigationTimingNotSupported"] = 24] = "NONUSRACT_NavigationTimingNotSupported"; + _InternalMessageId[_InternalMessageId["NONUSRACT_OnError"] = 25] = "NONUSRACT_OnError"; + _InternalMessageId[_InternalMessageId["NONUSRACT_SessionRenewalDateIsZero"] = 26] = "NONUSRACT_SessionRenewalDateIsZero"; + _InternalMessageId[_InternalMessageId["NONUSRACT_SenderNotInitialized"] = 27] = "NONUSRACT_SenderNotInitialized"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StartTrackEventFailed"] = 28] = "NONUSRACT_StartTrackEventFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StopTrackEventFailed"] = 29] = "NONUSRACT_StopTrackEventFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StartTrackFailed"] = 30] = "NONUSRACT_StartTrackFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_StopTrackFailed"] = 31] = "NONUSRACT_StopTrackFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TelemetrySampledAndNotSent"] = 32] = "NONUSRACT_TelemetrySampledAndNotSent"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackEventFailed"] = 33] = "NONUSRACT_TrackEventFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackExceptionFailed"] = 34] = "NONUSRACT_TrackExceptionFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackMetricFailed"] = 35] = "NONUSRACT_TrackMetricFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackPVFailed"] = 36] = "NONUSRACT_TrackPVFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackPVFailedCalc"] = 37] = "NONUSRACT_TrackPVFailedCalc"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TrackTraceFailed"] = 38] = "NONUSRACT_TrackTraceFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_TransmissionFailed"] = 39] = "NONUSRACT_TransmissionFailed"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailToSetStorageBuffer"] = 40] = "NONUSRACT_FailToSetStorageBuffer"; + _InternalMessageId[_InternalMessageId["NONUSRACT_FailToRestoreStorageBuffer"] = 41] = "NONUSRACT_FailToRestoreStorageBuffer"; + _InternalMessageId[_InternalMessageId["USRACT_CannotSerializeObject"] = 42] = "USRACT_CannotSerializeObject"; + _InternalMessageId[_InternalMessageId["USRACT_CannotSerializeObjectNonSerializable"] = 43] = "USRACT_CannotSerializeObjectNonSerializable"; + _InternalMessageId[_InternalMessageId["USRACT_CircularReferenceDetected"] = 44] = "USRACT_CircularReferenceDetected"; + _InternalMessageId[_InternalMessageId["USRACT_ClearAuthContextFailed"] = 45] = "USRACT_ClearAuthContextFailed"; + _InternalMessageId[_InternalMessageId["USRACT_ExceptionTruncated"] = 46] = "USRACT_ExceptionTruncated"; + _InternalMessageId[_InternalMessageId["USRACT_IllegalCharsInName"] = 47] = "USRACT_IllegalCharsInName"; + _InternalMessageId[_InternalMessageId["USRACT_ItemNotInArray"] = 48] = "USRACT_ItemNotInArray"; + _InternalMessageId[_InternalMessageId["USRACT_MaxAjaxPerPVExceeded"] = 49] = "USRACT_MaxAjaxPerPVExceeded"; + _InternalMessageId[_InternalMessageId["USRACT_MessageTruncated"] = 50] = "USRACT_MessageTruncated"; + _InternalMessageId[_InternalMessageId["USRACT_NameTooLong"] = 51] = "USRACT_NameTooLong"; + _InternalMessageId[_InternalMessageId["USRACT_SampleRateOutOfRange"] = 52] = "USRACT_SampleRateOutOfRange"; + _InternalMessageId[_InternalMessageId["USRACT_SetAuthContextFailed"] = 53] = "USRACT_SetAuthContextFailed"; + _InternalMessageId[_InternalMessageId["USRACT_SetAuthContextFailedAccountName"] = 54] = "USRACT_SetAuthContextFailedAccountName"; + _InternalMessageId[_InternalMessageId["USRACT_StringValueTooLong"] = 55] = "USRACT_StringValueTooLong"; + _InternalMessageId[_InternalMessageId["USRACT_StartCalledMoreThanOnce"] = 56] = "USRACT_StartCalledMoreThanOnce"; + _InternalMessageId[_InternalMessageId["USRACT_StopCalledWithoutStart"] = 57] = "USRACT_StopCalledWithoutStart"; + _InternalMessageId[_InternalMessageId["USRACT_TelemetryInitializerFailed"] = 58] = "USRACT_TelemetryInitializerFailed"; + _InternalMessageId[_InternalMessageId["USRACT_TrackArgumentsNotSpecified"] = 59] = "USRACT_TrackArgumentsNotSpecified"; + _InternalMessageId[_InternalMessageId["USRACT_UrlTooLong"] = 60] = "USRACT_UrlTooLong"; + })(ApplicationInsights._InternalMessageId || (ApplicationInsights._InternalMessageId = {})); + var _InternalMessageId = ApplicationInsights._InternalMessageId; + var _InternalLogMessage = (function () { + function _InternalLogMessage(msgId, msg, properties) { + this.message = _InternalMessageId[msgId].toString(); + this.messageId = msgId; + var diagnosticText = (msg ? " message:" + _InternalLogMessage.sanitizeDiagnosticText(msg) : "") + + (properties ? " props:" + _InternalLogMessage.sanitizeDiagnosticText(JSON.stringify(properties)) : ""); + this.message += diagnosticText; + } + _InternalLogMessage.sanitizeDiagnosticText = function (text) { + return "\"" + text.replace(/\"/g, "") + "\""; + }; + return _InternalLogMessage; + })(); + ApplicationInsights._InternalLogMessage = _InternalLogMessage; + var _InternalLogging = (function () { + function _InternalLogging() { + } + _InternalLogging.throwInternalNonUserActionable = function (severity, message) { + if (this.enableDebugExceptions()) { + throw message; + } + else { + if (typeof (message) !== "undefined" && !!message) { + if (typeof (message.message) !== "undefined") { + message.message = this.AiNonUserActionablePrefix + message.message; + if (this.verboseLogging()) { + this.warnToConsole(message.message); + } + this.logInternalMessage(severity, message); + } + } + } + }; + _InternalLogging.throwInternalUserActionable = function (severity, message) { + if (this.enableDebugExceptions()) { + throw message; + } + else { + if (typeof (message) !== "undefined" && !!message) { + if (typeof (message.message) !== "undefined") { + message.message = this.AiUserActionablePrefix + message.message; + this.warnToConsole(message.message); + this.logInternalMessage(severity, message); + } + } + } + }; + _InternalLogging.warnToConsole = function (message) { + if (typeof console !== "undefined" && !!console) { + if (typeof console.warn === "function") { + console.warn(message); + } + else if (typeof console.log === "function") { + console.log(message); + } + } + }; + _InternalLogging.resetInternalMessageCount = function () { + this._messageCount = 0; + }; + _InternalLogging.clearInternalMessageLoggedTypes = function () { + if (ApplicationInsights.Util.canUseSessionStorage()) { + var sessionStorageKeys = ApplicationInsights.Util.getSessionStorageKeys(); + for (var i = 0; i < sessionStorageKeys.length; i++) { + if (sessionStorageKeys[i].indexOf(_InternalLogging.AIInternalMessagePrefix) === 0) { + ApplicationInsights.Util.removeSessionStorage(sessionStorageKeys[i]); + } + } + } + }; + _InternalLogging.setMaxInternalMessageLimit = function (limit) { + if (!limit) { + throw new Error('limit cannot be undefined.'); + } + this.MAX_INTERNAL_MESSAGE_LIMIT = limit; + }; + _InternalLogging.logInternalMessage = function (severity, message) { + if (this._areInternalMessagesThrottled()) { + return; + } + var logMessage = true; + if (ApplicationInsights.Util.canUseSessionStorage()) { + var storageMessageKey = _InternalLogging.AIInternalMessagePrefix + _InternalMessageId[message.messageId]; + var internalMessageTypeLogRecord = ApplicationInsights.Util.getSessionStorage(storageMessageKey); + if (internalMessageTypeLogRecord) { + logMessage = false; + } + else { + ApplicationInsights.Util.setSessionStorage(storageMessageKey, "1"); + } + } + if (logMessage) { + if (this.verboseLogging() || severity === LoggingSeverity.CRITICAL) { + this.queue.push(message); + this._messageCount++; + } + if (this._messageCount == this.MAX_INTERNAL_MESSAGE_LIMIT) { + var throttleLimitMessage = "Internal events throttle limit per PageView reached for this app."; + var throttleMessage = new _InternalLogMessage(_InternalMessageId.NONUSRACT_MessageLimitPerPVExceeded, throttleLimitMessage); + this.queue.push(throttleMessage); + this.warnToConsole(throttleLimitMessage); + } + } + }; + _InternalLogging._areInternalMessagesThrottled = function () { + return this._messageCount >= this.MAX_INTERNAL_MESSAGE_LIMIT; + }; + _InternalLogging.AiUserActionablePrefix = "AI: "; + _InternalLogging.AIInternalMessagePrefix = "AITR_"; + _InternalLogging.AiNonUserActionablePrefix = "AI (Internal): "; + _InternalLogging.enableDebugExceptions = function () { return false; }; + _InternalLogging.verboseLogging = function () { return false; }; + _InternalLogging.queue = []; + _InternalLogging.MAX_INTERNAL_MESSAGE_LIMIT = 25; + _InternalLogging._messageCount = 0; + return _InternalLogging; + })(); + ApplicationInsights._InternalLogging = _InternalLogging; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var StorageType; + (function (StorageType) { + StorageType[StorageType["LocalStorage"] = 0] = "LocalStorage"; + StorageType[StorageType["SessionStorage"] = 1] = "SessionStorage"; + })(StorageType || (StorageType = {})); + var Util = (function () { + function Util() { + } + Util._getLocalStorageObject = function () { + return Util._getVerifiedStorageObject(StorageType.LocalStorage); + }; + Util._getVerifiedStorageObject = function (storageType) { + var storage = null; + var fail; + var uid; + try { + uid = new Date; + storage = storageType === StorageType.LocalStorage ? window.localStorage : window.sessionStorage; + storage.setItem(uid, uid); + fail = storage.getItem(uid) != uid; + storage.removeItem(uid); + if (fail) { + storage = null; + } + } + catch (exception) { + storage = null; + } + return storage; + }; + Util.canUseLocalStorage = function () { + return !!Util._getLocalStorageObject(); + }; + Util.getStorage = function (name) { + var storage = Util._getLocalStorageObject(); + if (storage !== null) { + try { + return storage.getItem(name); + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotReadLocalStorage, "Browser failed read of local storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + } + return null; + }; + Util.setStorage = function (name, data) { + var storage = Util._getLocalStorageObject(); + if (storage !== null) { + try { + storage.setItem(name, data); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotWriteLocalStorage, "Browser failed write to local storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + } + return false; + }; + Util.removeStorage = function (name) { + var storage = Util._getLocalStorageObject(); + if (storage !== null) { + try { + storage.removeItem(name); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromLocalStorage, "Browser failed removal of local storage item. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + } + return false; + }; + Util._getSessionStorageObject = function () { + return Util._getVerifiedStorageObject(StorageType.SessionStorage); + }; + Util.canUseSessionStorage = function () { + return !!Util._getSessionStorageObject(); + }; + Util.getSessionStorageKeys = function () { + var keys = []; + if (Util.canUseSessionStorage()) { + for (var key in window.sessionStorage) { + keys.push(key); + } + } + return keys; + }; + Util.getSessionStorage = function (name) { + var storage = Util._getSessionStorageObject(); + if (storage !== null) { + try { + return storage.getItem(name); + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotReadSessionStorage, "Browser failed read of session storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, message); + } + } + return null; + }; + Util.setSessionStorage = function (name, data) { + var storage = Util._getSessionStorageObject(); + if (storage !== null) { + try { + storage.setItem(name, data); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserCannotWriteSessionStorage, "Browser failed write to session storage. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, message); + } + } + return false; + }; + Util.removeSessionStorage = function (name) { + var storage = Util._getSessionStorageObject(); + if (storage !== null) { + try { + storage.removeItem(name); + return true; + } + catch (e) { + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromSessionStorage, "Browser failed removal of session storage item. " + Util.getExceptionName(e), { exception: Util.dump(e) }); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, message); + } + } + return false; + }; + Util.setCookie = function (name, value, domain) { + var domainAttrib = ""; + if (domain) { + domainAttrib = ";domain=" + domain; + } + Util.document.cookie = name + "=" + value + domainAttrib + ";path=/"; + }; + Util.stringToBoolOrDefault = function (str) { + if (!str) { + return false; + } + return str.toString().toLowerCase() === "true"; + }; + Util.getCookie = function (name) { + var value = ""; + if (name && name.length) { + var cookieName = name + "="; + var cookies = Util.document.cookie.split(";"); + for (var i = 0; i < cookies.length; i++) { + var cookie = cookies[i]; + cookie = Util.trim(cookie); + if (cookie && cookie.indexOf(cookieName) === 0) { + value = cookie.substring(cookieName.length, cookies[i].length); + break; + } + } + } + return value; + }; + Util.deleteCookie = function (name) { + Util.document.cookie = name + "=;path=/;expires=Thu, 01 Jan 1970 00:00:01 GMT;"; + }; + Util.trim = function (str) { + if (typeof str !== "string") + return str; + return str.replace(/^\s+|\s+$/g, ""); + }; + Util.newId = function () { + var base64chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'; + var result = ""; + var random = Math.random() * 1073741824; + while (random > 0) { + var char = base64chars.charAt(random % 64); + result += char; + random = Math.floor(random / 64); + } + return result; + }; + Util.isArray = function (obj) { + return Object.prototype.toString.call(obj) === "[object Array]"; + }; + Util.isError = function (obj) { + return Object.prototype.toString.call(obj) === "[object Error]"; + }; + Util.isDate = function (obj) { + return Object.prototype.toString.call(obj) === "[object Date]"; + }; + Util.toISOStringForIE8 = function (date) { + if (Util.isDate(date)) { + if (Date.prototype.toISOString) { + return date.toISOString(); + } + else { + function pad(number) { + var r = String(number); + if (r.length === 1) { + r = "0" + r; + } + return r; + } + return date.getUTCFullYear() + + "-" + pad(date.getUTCMonth() + 1) + + "-" + pad(date.getUTCDate()) + + "T" + pad(date.getUTCHours()) + + ":" + pad(date.getUTCMinutes()) + + ":" + pad(date.getUTCSeconds()) + + "." + String((date.getUTCMilliseconds() / 1000).toFixed(3)).slice(2, 5) + + "Z"; + } + } + }; + Util.getIEVersion = function (userAgentStr) { + if (userAgentStr === void 0) { userAgentStr = null; } + var myNav = userAgentStr ? userAgentStr.toLowerCase() : navigator.userAgent.toLowerCase(); + return (myNav.indexOf('msie') != -1) ? parseInt(myNav.split('msie')[1]) : null; + }; + Util.msToTimeSpan = function (totalms) { + if (isNaN(totalms) || totalms < 0) { + totalms = 0; + } + var ms = "" + totalms % 1000; + var sec = "" + Math.floor(totalms / 1000) % 60; + var min = "" + Math.floor(totalms / (1000 * 60)) % 60; + var hour = "" + Math.floor(totalms / (1000 * 60 * 60)) % 24; + ms = ms.length === 1 ? "00" + ms : ms.length === 2 ? "0" + ms : ms; + sec = sec.length < 2 ? "0" + sec : sec; + min = min.length < 2 ? "0" + min : min; + hour = hour.length < 2 ? "0" + hour : hour; + return hour + ":" + min + ":" + sec + "." + ms; + }; + Util.isCrossOriginError = function (message, url, lineNumber, columnNumber, error) { + return (message === "Script error." || message === "Script error") && error === null; + }; + Util.dump = function (object) { + var objectTypeDump = Object.prototype.toString.call(object); + var propertyValueDump = JSON.stringify(object); + if (objectTypeDump === "[object Error]") { + propertyValueDump = "{ stack: '" + object.stack + "', message: '" + object.message + "', name: '" + object.name + "'"; + } + return objectTypeDump + propertyValueDump; + }; + Util.getExceptionName = function (object) { + var objectTypeDump = Object.prototype.toString.call(object); + if (objectTypeDump === "[object Error]") { + return object.name; + } + return ""; + }; + Util.addEventHandler = function (eventName, callback) { + if (!window || typeof eventName !== 'string' || typeof callback !== 'function') { + return false; + } + var verbEventName = 'on' + eventName; + if (window.addEventListener) { + window.addEventListener(eventName, callback, false); + } + else if (window["attachEvent"]) { + window["attachEvent"].call(verbEventName, callback); + } + else { + return false; + } + return true; + }; + Util.document = typeof document !== "undefined" ? document : {}; + Util.NotSpecified = "not_specified"; + return Util; + })(); + ApplicationInsights.Util = Util; + var UrlHelper = (function () { + function UrlHelper() { + } + UrlHelper.parseUrl = function (url) { + if (!UrlHelper.htmlAnchorElement) { + UrlHelper.htmlAnchorElement = !!UrlHelper.document.createElement ? UrlHelper.document.createElement('a') : {}; + } + UrlHelper.htmlAnchorElement.href = url; + return UrlHelper.htmlAnchorElement; + }; + UrlHelper.getAbsoluteUrl = function (url) { + var result; + var a = UrlHelper.parseUrl(url); + if (a) { + result = a.href; + } + return result; + }; + UrlHelper.getPathName = function (url) { + var result; + var a = UrlHelper.parseUrl(url); + if (a) { + result = a.pathname; + } + return result; + }; + UrlHelper.document = typeof document !== "undefined" ? document : {}; + return UrlHelper; + })(); + ApplicationInsights.UrlHelper = UrlHelper; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var extensions = (function () { + function extensions() { + } + extensions.IsNullOrUndefined = function (obj) { + return typeof (obj) === "undefined" || obj === null; + }; + return extensions; + })(); + ApplicationInsights.extensions = extensions; + var stringUtils = (function () { + function stringUtils() { + } + stringUtils.GetLength = function (strObject) { + var res = 0; + if (!extensions.IsNullOrUndefined(strObject)) { + var stringified = ""; + try { + stringified = strObject.toString(); + } + catch (ex) { + } + res = stringified.length; + res = isNaN(res) ? 0 : res; + } + return res; + }; + return stringUtils; + })(); + ApplicationInsights.stringUtils = stringUtils; + var dateTime = (function () { + function dateTime() { + } + dateTime.Now = (window.performance && window.performance.now) ? + function () { + return performance.now(); + } + : + function () { + return new Date().getTime(); + }; + dateTime.GetDuration = function (start, end) { + var result = null; + if (start !== 0 && end !== 0 && !extensions.IsNullOrUndefined(start) && !extensions.IsNullOrUndefined(end)) { + result = end - start; + } + return result; + }; + return dateTime; + })(); + ApplicationInsights.dateTime = dateTime; + var EventHelper = (function () { + function EventHelper() { + } + EventHelper.AttachEvent = function (obj, eventNameWithoutOn, handlerRef) { + var result = false; + if (!extensions.IsNullOrUndefined(obj)) { + if (!extensions.IsNullOrUndefined(obj.attachEvent)) { + obj.attachEvent("on" + eventNameWithoutOn, handlerRef); + result = true; + } + else { + if (!extensions.IsNullOrUndefined(obj.addEventListener)) { + obj.addEventListener(eventNameWithoutOn, handlerRef, false); + result = true; + } + } + } + return result; + }; + EventHelper.DetachEvent = function (obj, eventNameWithoutOn, handlerRef) { + if (!extensions.IsNullOrUndefined(obj)) { + if (!extensions.IsNullOrUndefined(obj.detachEvent)) { + obj.detachEvent("on" + eventNameWithoutOn, handlerRef); + } + else { + if (!extensions.IsNullOrUndefined(obj.removeEventListener)) { + obj.removeEventListener(eventNameWithoutOn, handlerRef, false); + } + } + } + }; + return EventHelper; + })(); + ApplicationInsights.EventHelper = EventHelper; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var XHRMonitoringState = (function () { + function XHRMonitoringState() { + this.openDone = false; + this.setRequestHeaderDone = false; + this.sendDone = false; + this.abortDone = false; + this.onreadystatechangeCallbackAttached = false; + } + return XHRMonitoringState; + })(); + ApplicationInsights.XHRMonitoringState = XHRMonitoringState; + var ajaxRecord = (function () { + function ajaxRecord(id) { + this.completed = false; + this.requestHeadersSize = null; + this.ttfb = null; + this.responseReceivingDuration = null; + this.callbackDuration = null; + this.ajaxTotalDuration = null; + this.aborted = null; + this.pageUrl = null; + this.requestUrl = null; + this.requestSize = 0; + this.method = null; + this.status = null; + this.requestSentTime = null; + this.responseStartedTime = null; + this.responseFinishedTime = null; + this.callbackFinishedTime = null; + this.endTime = null; + this.originalOnreadystatechage = null; + this.xhrMonitoringState = new XHRMonitoringState(); + this.clientFailure = 0; + this.CalculateMetrics = function () { + var self = this; + self.ajaxTotalDuration = ApplicationInsights.dateTime.GetDuration(self.requestSentTime, self.responseFinishedTime); + }; + this.id = id; + } + ajaxRecord.prototype.getAbsoluteUrl = function () { + return this.requestUrl ? ApplicationInsights.UrlHelper.getAbsoluteUrl(this.requestUrl) : null; + }; + ajaxRecord.prototype.getPathName = function () { + return this.requestUrl ? ApplicationInsights.UrlHelper.getPathName(this.requestUrl) : null; + }; + return ajaxRecord; + })(); + ApplicationInsights.ajaxRecord = ajaxRecord; + ; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +; +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var AjaxMonitor = (function () { + function AjaxMonitor(appInsights) { + this.currentWindowHost = window.location.host; + this.appInsights = appInsights; + this.initialized = false; + this.Init(); + } + AjaxMonitor.prototype.Init = function () { + if (this.supportsMonitoring()) { + this.instrumentOpen(); + this.instrumentSend(); + this.instrumentAbort(); + this.initialized = true; + } + }; + AjaxMonitor.prototype.isMonitoredInstance = function (xhr, excludeAjaxDataValidation) { + return this.initialized + && (excludeAjaxDataValidation === true || !ApplicationInsights.extensions.IsNullOrUndefined(xhr.ajaxData)) + && xhr[AjaxMonitor.DisabledPropertyName] !== true; + }; + AjaxMonitor.prototype.supportsMonitoring = function () { + var result = false; + if (!ApplicationInsights.extensions.IsNullOrUndefined(XMLHttpRequest)) { + result = true; + } + return result; + }; + AjaxMonitor.prototype.instrumentOpen = function () { + var originalOpen = XMLHttpRequest.prototype.open; + var ajaxMonitorInstance = this; + XMLHttpRequest.prototype.open = function (method, url, async) { + try { + if (ajaxMonitorInstance.isMonitoredInstance(this, true) && + (!this.ajaxData || + !this.ajaxData.xhrMonitoringState.openDone)) { + ajaxMonitorInstance.openHandler(this, method, url, async); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxOpen, "Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(this), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + return originalOpen.apply(this, arguments); + }; + }; + AjaxMonitor.prototype.openHandler = function (xhr, method, url, async) { + var ajaxData = new ApplicationInsights.ajaxRecord(ApplicationInsights.Util.newId()); + ajaxData.method = method; + ajaxData.requestUrl = url; + ajaxData.xhrMonitoringState.openDone = true; + xhr.ajaxData = ajaxData; + this.attachToOnReadyStateChange(xhr); + }; + AjaxMonitor.getFailedAjaxDiagnosticsMessage = function (xhr) { + var result = ""; + try { + if (!ApplicationInsights.extensions.IsNullOrUndefined(xhr) && + !ApplicationInsights.extensions.IsNullOrUndefined(xhr.ajaxData) && + !ApplicationInsights.extensions.IsNullOrUndefined(xhr.ajaxData.requestUrl)) { + result += "(url: '" + xhr.ajaxData.requestUrl + "')"; + } + } + catch (e) { } + return result; + }; + AjaxMonitor.prototype.instrumentSend = function () { + var originalSend = XMLHttpRequest.prototype.send; + var ajaxMonitorInstance = this; + XMLHttpRequest.prototype.send = function (content) { + try { + if (ajaxMonitorInstance.isMonitoredInstance(this) && !this.ajaxData.xhrMonitoringState.sendDone) { + ajaxMonitorInstance.sendHandler(this, content); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxSend, "Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(this), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + return originalSend.apply(this, arguments); + }; + }; + AjaxMonitor.prototype.sendHandler = function (xhr, content) { + xhr.ajaxData.requestSentTime = ApplicationInsights.dateTime.Now(); + if (!this.appInsights.config.disableCorrelationHeaders && (ApplicationInsights.UrlHelper.parseUrl(xhr.ajaxData.getAbsoluteUrl()).host == this.currentWindowHost)) { + xhr.setRequestHeader("x-ms-request-id", xhr.ajaxData.id); + } + xhr.ajaxData.xhrMonitoringState.sendDone = true; + }; + AjaxMonitor.prototype.instrumentAbort = function () { + var originalAbort = XMLHttpRequest.prototype.abort; + var ajaxMonitorInstance = this; + XMLHttpRequest.prototype.abort = function () { + try { + if (ajaxMonitorInstance.isMonitoredInstance(this) && !this.ajaxData.xhrMonitoringState.abortDone) { + this.ajaxData.aborted = 1; + this.ajaxData.xhrMonitoringState.abortDone = true; + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxAbort, "Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(this), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + return originalAbort.apply(this, arguments); + }; + }; + AjaxMonitor.prototype.attachToOnReadyStateChange = function (xhr) { + var ajaxMonitorInstance = this; + xhr.ajaxData.xhrMonitoringState.onreadystatechangeCallbackAttached = ApplicationInsights.EventHelper.AttachEvent(xhr, "readystatechange", function () { + try { + if (ajaxMonitorInstance.isMonitoredInstance(xhr)) { + if (xhr.readyState === 4) { + ajaxMonitorInstance.onAjaxComplete(xhr); + } + } + } + catch (e) { + var exceptionText = Microsoft.ApplicationInsights.Util.dump(e); + if (!exceptionText || exceptionText.toLowerCase().indexOf("c00c023f") == -1) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxRSC, "Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(xhr), + exception: Microsoft.ApplicationInsights.Util.dump(e) + })); + } + } + }); + }; + AjaxMonitor.prototype.onAjaxComplete = function (xhr) { + xhr.ajaxData.responseFinishedTime = ApplicationInsights.dateTime.Now(); + xhr.ajaxData.status = xhr.status; + xhr.ajaxData.CalculateMetrics(); + if (xhr.ajaxData.ajaxTotalDuration < 0) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedMonitorAjaxDur, "Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.", { + ajaxDiagnosticsMessage: AjaxMonitor.getFailedAjaxDiagnosticsMessage(xhr), + requestSentTime: xhr.ajaxData.requestSentTime, + responseFinishedTime: xhr.ajaxData.responseFinishedTime + })); + } + else { + this.appInsights.trackAjax(xhr.ajaxData.id, xhr.ajaxData.getAbsoluteUrl(), xhr.ajaxData.getPathName(), xhr.ajaxData.ajaxTotalDuration, (+(xhr.ajaxData.status)) >= 200 && (+(xhr.ajaxData.status)) < 400, +xhr.ajaxData.status, xhr.ajaxData.method); + xhr.ajaxData = null; + } + }; + AjaxMonitor.instrumentedByAppInsightsName = "InstrumentedByAppInsights"; + AjaxMonitor.DisabledPropertyName = "Microsoft_ApplicationInsights_BypassAjaxInstrumentation"; + return AjaxMonitor; + })(); + ApplicationInsights.AjaxMonitor = AjaxMonitor; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var HashCodeScoreGenerator = (function () { + function HashCodeScoreGenerator() { + } + HashCodeScoreGenerator.prototype.getHashCodeScore = function (key) { + var score = this.getHashCode(key) / HashCodeScoreGenerator.INT_MAX_VALUE; + return score * 100; + }; + HashCodeScoreGenerator.prototype.getHashCode = function (input) { + if (input == "") { + return 0; + } + while (input.length < HashCodeScoreGenerator.MIN_INPUT_LENGTH) { + input = input.concat(input); + } + var hash = 5381; + for (var i = 0; i < input.length; ++i) { + hash = ((hash << 5) + hash) + input.charCodeAt(i); + hash = hash & hash; + } + return Math.abs(hash); + }; + HashCodeScoreGenerator.INT_MAX_VALUE = 2147483647; + HashCodeScoreGenerator.MIN_INPUT_LENGTH = 8; + return HashCodeScoreGenerator; + })(); + ApplicationInsights.HashCodeScoreGenerator = HashCodeScoreGenerator; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + (function (FieldType) { + FieldType[FieldType["Default"] = 0] = "Default"; + FieldType[FieldType["Required"] = 1] = "Required"; + FieldType[FieldType["Array"] = 2] = "Array"; + FieldType[FieldType["Hidden"] = 4] = "Hidden"; + })(ApplicationInsights.FieldType || (ApplicationInsights.FieldType = {})); + var FieldType = ApplicationInsights.FieldType; + ; + var Serializer = (function () { + function Serializer() { + } + Serializer.serialize = function (input) { + var output = Serializer._serializeObject(input, "root"); + return JSON.stringify(output); + }; + Serializer._serializeObject = function (source, name) { + var circularReferenceCheck = "__aiCircularRefCheck"; + var output = {}; + if (!source) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_CannotSerializeObject, "cannot serialize object because it is null or undefined", { name: name })); + return output; + } + if (source[circularReferenceCheck]) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_CircularReferenceDetected, "Circular reference detected while serializing object", { name: name })); + return output; + } + if (!source.aiDataContract) { + if (name === "measurements") { + output = Serializer._serializeStringMap(source, "number", name); + } + else if (name === "properties") { + output = Serializer._serializeStringMap(source, "string", name); + } + else if (name === "tags") { + output = Serializer._serializeStringMap(source, "string", name); + } + else if (ApplicationInsights.Util.isArray(source)) { + output = Serializer._serializeArray(source, name); + } + else { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_CannotSerializeObjectNonSerializable, "Attempting to serialize an object which does not implement ISerializable", { name: name })); + try { + JSON.stringify(source); + output = source; + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, e && typeof e.toString === 'function' ? e.toString() : "Error serializing object"); + } + } + return output; + } + source[circularReferenceCheck] = true; + for (var field in source.aiDataContract) { + var contract = source.aiDataContract[field]; + var isRequired = (typeof contract === "function") ? (contract() & FieldType.Required) : (contract & FieldType.Required); + var isHidden = (typeof contract === "function") ? (contract() & FieldType.Hidden) : (contract & FieldType.Hidden); + var isArray = contract & FieldType.Array; + var isPresent = source[field] !== undefined; + var isObject = typeof source[field] === "object" && source[field] !== null; + if (isRequired && !isPresent && !isArray) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_MissingRequiredFieldSpecification, "Missing required field specification. The field is required but not present on source", { field: field, name: name })); + continue; + } + if (isHidden) { + continue; + } + var value; + if (isObject) { + if (isArray) { + value = Serializer._serializeArray(source[field], field); + } + else { + value = Serializer._serializeObject(source[field], field); + } + } + else { + value = source[field]; + } + if (value !== undefined) { + output[field] = value; + } + } + delete source[circularReferenceCheck]; + return output; + }; + Serializer._serializeArray = function (sources, name) { + var output = undefined; + if (!!sources) { + if (!ApplicationInsights.Util.isArray(sources)) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_ItemNotInArray, "This field was specified as an array in the contract but the item is not an array.\r\n", { name: name })); + } + else { + output = []; + for (var i = 0; i < sources.length; i++) { + var source = sources[i]; + var item = Serializer._serializeObject(source, name + "[" + i + "]"); + output.push(item); + } + } + } + return output; + }; + Serializer._serializeStringMap = function (map, expectedType, name) { + var output = undefined; + if (map) { + output = {}; + for (var field in map) { + var value = map[field]; + if (expectedType === "string") { + if (value === undefined) { + output[field] = "undefined"; + } + else if (value === null) { + output[field] = "null"; + } + else if (!value.toString) { + output[field] = "invalid field: toString() is not defined."; + } + else { + output[field] = value.toString(); + } + } + else if (expectedType === "number") { + if (value === undefined) { + output[field] = "undefined"; + } + else if (value === null) { + output[field] = "null"; + } + else { + var num = parseFloat(value); + if (isNaN(num)) { + output[field] = "NaN"; + } + else { + output[field] = num; + } + } + } + else { + output[field] = "invalid field: " + name + " is of unknown type."; + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, output[field]); + } + } + } + return output; + }; + return Serializer; + })(); + ApplicationInsights.Serializer = Serializer; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Base = (function () { + function Base() { + } + return Base; + })(); + Telemetry.Base = Base; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Envelope = (function () { + function Envelope() { + this.ver = 1; + this.sampleRate = 100.0; + this.tags = {}; + } + return Envelope; + })(); + Telemetry.Envelope = Envelope; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var __extends = (this && this.__extends) || function (d, b) { + for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; + function __() { this.constructor = d; } + __.prototype = b.prototype; + d.prototype = new __(); +}; +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var Envelope = (function (_super) { + __extends(Envelope, _super); + function Envelope(data, name) { + var _this = this; + _super.call(this); + this.name = Common.DataSanitizer.sanitizeString(name) || ApplicationInsights.Util.NotSpecified; + this.data = data; + this.time = ApplicationInsights.Util.toISOStringForIE8(new Date()); + this.aiDataContract = { + time: ApplicationInsights.FieldType.Required, + iKey: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Required, + sampleRate: function () { + return (_this.sampleRate == 100) ? ApplicationInsights.FieldType.Hidden : ApplicationInsights.FieldType.Required; + }, + tags: ApplicationInsights.FieldType.Required, + data: ApplicationInsights.FieldType.Required, + }; + } + return Envelope; + })(Microsoft.Telemetry.Envelope); + Common.Envelope = Envelope; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var Base = (function (_super) { + __extends(Base, _super); + function Base() { + _super.apply(this, arguments); + this.aiDataContract = {}; + } + return Base; + })(Microsoft.Telemetry.Base); + Common.Base = Base; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + var ContextTagKeys = (function () { + function ContextTagKeys() { + this.applicationVersion = "ai.application.ver"; + this.applicationBuild = "ai.application.build"; + this.applicationTypeId = "ai.application.typeId"; + this.applicationId = "ai.application.applicationId"; + this.deviceId = "ai.device.id"; + this.deviceIp = "ai.device.ip"; + this.deviceLanguage = "ai.device.language"; + this.deviceLocale = "ai.device.locale"; + this.deviceModel = "ai.device.model"; + this.deviceNetwork = "ai.device.network"; + this.deviceNetworkName = "ai.device.networkName"; + this.deviceOEMName = "ai.device.oemName"; + this.deviceOS = "ai.device.os"; + this.deviceOSVersion = "ai.device.osVersion"; + this.deviceRoleInstance = "ai.device.roleInstance"; + this.deviceRoleName = "ai.device.roleName"; + this.deviceScreenResolution = "ai.device.screenResolution"; + this.deviceType = "ai.device.type"; + this.deviceMachineName = "ai.device.machineName"; + this.deviceVMName = "ai.device.vmName"; + this.locationIp = "ai.location.ip"; + this.operationId = "ai.operation.id"; + this.operationName = "ai.operation.name"; + this.operationParentId = "ai.operation.parentId"; + this.operationRootId = "ai.operation.rootId"; + this.operationSyntheticSource = "ai.operation.syntheticSource"; + this.operationIsSynthetic = "ai.operation.isSynthetic"; + this.operationCorrelationVector = "ai.operation.correlationVector"; + this.sessionId = "ai.session.id"; + this.sessionIsFirst = "ai.session.isFirst"; + this.sessionIsNew = "ai.session.isNew"; + this.userAccountAcquisitionDate = "ai.user.accountAcquisitionDate"; + this.userAccountId = "ai.user.accountId"; + this.userAgent = "ai.user.userAgent"; + this.userId = "ai.user.id"; + this.userStoreRegion = "ai.user.storeRegion"; + this.userAuthUserId = "ai.user.authUserId"; + this.userAnonymousUserAcquisitionDate = "ai.user.anonUserAcquisitionDate"; + this.userAuthenticatedUserAcquisitionDate = "ai.user.authUserAcquisitionDate"; + this.sampleRate = "ai.sample.sampleRate"; + this.cloudName = "ai.cloud.name"; + this.cloudRoleVer = "ai.cloud.roleVer"; + this.cloudEnvironment = "ai.cloud.environment"; + this.cloudLocation = "ai.cloud.location"; + this.cloudDeploymentUnit = "ai.cloud.deploymentUnit"; + this.serverDeviceOS = "ai.serverDevice.os"; + this.serverDeviceOSVer = "ai.serverDevice.osVer"; + this.internalSdkVersion = "ai.internal.sdkVersion"; + this.internalAgentVersion = "ai.internal.agentVersion"; + this.internalDataCollectorReceivedTime = "ai.internal.dataCollectorReceivedTime"; + this.internalProfileId = "ai.internal.profileId"; + this.internalProfileClassId = "ai.internal.profileClassId"; + this.internalAccountId = "ai.internal.accountId"; + this.internalApplicationName = "ai.internal.applicationName"; + this.internalInstrumentationKey = "ai.internal.instrumentationKey"; + this.internalTelemetryItemId = "ai.internal.telemetryItemId"; + this.internalApplicationType = "ai.internal.applicationType"; + this.internalRequestSource = "ai.internal.requestSource"; + this.internalFlowType = "ai.internal.flowType"; + this.internalIsAudit = "ai.internal.isAudit"; + this.internalTrackingSourceId = "ai.internal.trackingSourceId"; + this.internalTrackingType = "ai.internal.trackingType"; + this.internalIsDiagnosticExample = "ai.internal.isDiagnosticExample"; + } + return ContextTagKeys; + })(); + AI.ContextTagKeys = ContextTagKeys; +})(AI || (AI = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Application = (function () { + function Application() { + } + return Application; + })(); + Context.Application = Application; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Device = (function () { + function Device() { + this.id = "browser"; + this.type = "Browser"; + } + return Device; + })(); + Context.Device = Device; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Internal = (function () { + function Internal() { + this.sdkVersion = "javascript:" + ApplicationInsights.Version; + } + return Internal; + })(); + Context.Internal = Internal; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Location = (function () { + function Location() { + } + return Location; + })(); + Context.Location = Location; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Operation = (function () { + function Operation() { + this.id = ApplicationInsights.Util.newId(); + if (window && window.location && window.location.pathname) { + this.name = window.location.pathname; + } + } + return Operation; + })(); + Context.Operation = Operation; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var SamplingScoreGenerator = (function () { + function SamplingScoreGenerator() { + this.hashCodeGeneragor = new ApplicationInsights.HashCodeScoreGenerator(); + } + SamplingScoreGenerator.prototype.getSamplingScore = function (envelope) { + var tagKeys = new AI.ContextTagKeys(); + var score = 0; + if (envelope.tags[tagKeys.userId]) { + score = this.hashCodeGeneragor.getHashCodeScore(envelope.tags[tagKeys.userId]); + } + else if (envelope.tags[tagKeys.operationId]) { + score = this.hashCodeGeneragor.getHashCodeScore(envelope.tags[tagKeys.operationId]); + } + else { + score = Math.random(); + } + return score; + }; + return SamplingScoreGenerator; + })(); + ApplicationInsights.SamplingScoreGenerator = SamplingScoreGenerator; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Sample = (function () { + function Sample(sampleRate) { + this.INT_MAX_VALUE = 2147483647; + if (sampleRate > 100 || sampleRate < 0) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SampleRateOutOfRange, "Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.", { samplingRate: sampleRate })); + this.sampleRate = 100; + } + this.sampleRate = sampleRate; + this.samplingScoreGenerator = new ApplicationInsights.SamplingScoreGenerator(); + } + Sample.prototype.isSampledIn = function (envelope) { + if (this.sampleRate == 100) + return true; + var score = this.samplingScoreGenerator.getSamplingScore(envelope); + return score < this.sampleRate; + }; + return Sample; + })(); + Context.Sample = Sample; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + (function (SessionState) { + SessionState[SessionState["Start"] = 0] = "Start"; + SessionState[SessionState["End"] = 1] = "End"; + })(AI.SessionState || (AI.SessionState = {})); + var SessionState = AI.SessionState; +})(AI || (AI = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var Session = (function () { + function Session() { + } + return Session; + })(); + Context.Session = Session; + var _SessionManager = (function () { + function _SessionManager(config) { + if (!config) { + config = {}; + } + if (!(typeof config.sessionExpirationMs === "function")) { + config.sessionExpirationMs = function () { return _SessionManager.acquisitionSpan; }; + } + if (!(typeof config.sessionRenewalMs === "function")) { + config.sessionRenewalMs = function () { return _SessionManager.renewalSpan; }; + } + this.config = config; + this.automaticSession = new Session(); + } + _SessionManager.prototype.update = function () { + if (!this.automaticSession.id) { + this.initializeAutomaticSession(); + } + var now = +new Date; + var acquisitionExpired = now - this.automaticSession.acquisitionDate > this.config.sessionExpirationMs(); + var renewalExpired = now - this.automaticSession.renewalDate > this.config.sessionRenewalMs(); + if (acquisitionExpired || renewalExpired) { + this.automaticSession.isFirst = undefined; + this.renew(); + } + else { + this.automaticSession.renewalDate = +new Date; + this.setCookie(this.automaticSession.id, this.automaticSession.acquisitionDate, this.automaticSession.renewalDate); + } + }; + _SessionManager.prototype.backup = function () { + this.setStorage(this.automaticSession.id, this.automaticSession.acquisitionDate, this.automaticSession.renewalDate); + }; + _SessionManager.prototype.initializeAutomaticSession = function () { + var cookie = ApplicationInsights.Util.getCookie('ai_session'); + if (cookie && typeof cookie.split === "function") { + this.initializeAutomaticSessionWithData(cookie); + } + else { + var storage = ApplicationInsights.Util.getStorage('ai_session'); + if (storage) { + this.initializeAutomaticSessionWithData(storage); + } + } + if (!this.automaticSession.id) { + this.automaticSession.isFirst = true; + this.renew(); + } + }; + _SessionManager.prototype.initializeAutomaticSessionWithData = function (sessionData) { + var params = sessionData.split("|"); + if (params.length > 0) { + this.automaticSession.id = params[0]; + } + try { + if (params.length > 1) { + var acq = +params[1]; + this.automaticSession.acquisitionDate = +new Date(acq); + this.automaticSession.acquisitionDate = this.automaticSession.acquisitionDate > 0 ? this.automaticSession.acquisitionDate : 0; + } + if (params.length > 2) { + var renewal = +params[2]; + this.automaticSession.renewalDate = +new Date(renewal); + this.automaticSession.renewalDate = this.automaticSession.renewalDate > 0 ? this.automaticSession.renewalDate : 0; + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ErrorParsingAISessionCookie, "Error parsing ai_session cookie, session will be reset: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + if (this.automaticSession.renewalDate == 0) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_SessionRenewalDateIsZero, "AI session renewal date is 0, session will be reset.")); + } + }; + _SessionManager.prototype.renew = function () { + var now = +new Date; + this.automaticSession.id = ApplicationInsights.Util.newId(); + this.automaticSession.acquisitionDate = now; + this.automaticSession.renewalDate = now; + this.setCookie(this.automaticSession.id, this.automaticSession.acquisitionDate, this.automaticSession.renewalDate); + if (!ApplicationInsights.Util.canUseLocalStorage()) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_BrowserDoesNotSupportLocalStorage, "Browser does not support local storage. Session durations will be inaccurate.")); + } + }; + _SessionManager.prototype.setCookie = function (guid, acq, renewal) { + var acquisitionExpiry = acq + this.config.sessionExpirationMs(); + var renewalExpiry = renewal + this.config.sessionRenewalMs(); + var cookieExpiry = new Date(); + var cookie = [guid, acq, renewal]; + if (acquisitionExpiry < renewalExpiry) { + cookieExpiry.setTime(acquisitionExpiry); + } + else { + cookieExpiry.setTime(renewalExpiry); + } + var cookieDomnain = this.config.cookieDomain ? this.config.cookieDomain() : null; + ApplicationInsights.Util.setCookie('ai_session', cookie.join('|') + ';expires=' + cookieExpiry.toUTCString(), cookieDomnain); + }; + _SessionManager.prototype.setStorage = function (guid, acq, renewal) { + ApplicationInsights.Util.setStorage('ai_session', [guid, acq, renewal].join('|')); + }; + _SessionManager.acquisitionSpan = 86400000; + _SessionManager.renewalSpan = 1800000; + return _SessionManager; + })(); + Context._SessionManager = _SessionManager; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Context; + (function (Context) { + "use strict"; + var User = (function () { + function User(config) { + var cookie = ApplicationInsights.Util.getCookie(User.userCookieName); + if (cookie) { + var params = cookie.split(User.cookieSeparator); + if (params.length > 0) { + this.id = params[0]; + } + } + this.config = config; + if (!this.id) { + this.id = ApplicationInsights.Util.newId(); + var date = new Date(); + var acqStr = ApplicationInsights.Util.toISOStringForIE8(date); + this.accountAcquisitionDate = acqStr; + date.setTime(date.getTime() + 31536000000); + var newCookie = [this.id, acqStr]; + var cookieDomain = this.config.cookieDomain ? this.config.cookieDomain() : undefined; + ApplicationInsights.Util.setCookie(User.userCookieName, newCookie.join(User.cookieSeparator) + ';expires=' + date.toUTCString(), cookieDomain); + ApplicationInsights.Util.removeStorage('ai_session'); + } + this.accountId = config.accountId ? config.accountId() : undefined; + var authCookie = ApplicationInsights.Util.getCookie(User.authUserCookieName); + if (authCookie) { + authCookie = decodeURI(authCookie); + var authCookieString = authCookie.split(User.cookieSeparator); + if (authCookieString[0]) { + this.authenticatedId = authCookieString[0]; + } + if (authCookieString.length > 1 && authCookieString[1]) { + this.accountId = authCookieString[1]; + } + } + } + User.prototype.setAuthenticatedUserContext = function (authenticatedUserId, accountId) { + var isInvalidInput = !this.validateUserInput(authenticatedUserId) || (accountId && !this.validateUserInput(accountId)); + if (isInvalidInput) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SetAuthContextFailedAccountName, "Setting auth user context failed. " + + "User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars.")); + return; + } + this.authenticatedId = authenticatedUserId; + var authCookie = this.authenticatedId; + if (accountId) { + this.accountId = accountId; + authCookie = [this.authenticatedId, this.accountId].join(User.cookieSeparator); + } + ApplicationInsights.Util.setCookie(User.authUserCookieName, encodeURI(authCookie), this.config.cookieDomain()); + }; + User.prototype.clearAuthenticatedUserContext = function () { + this.authenticatedId = null; + this.accountId = null; + ApplicationInsights.Util.deleteCookie(User.authUserCookieName); + }; + User.prototype.validateUserInput = function (id) { + if (typeof id !== 'string' || + !id || + id.match(/,|;|=| |\|/)) { + return false; + } + return true; + }; + User.cookieSeparator = '|'; + User.userCookieName = 'ai_user'; + User.authUserCookieName = 'ai_authUser'; + return User; + })(); + Context.User = User; + })(Context = ApplicationInsights.Context || (ApplicationInsights.Context = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var DataLossAnalyzer = (function () { + function DataLossAnalyzer() { + } + DataLossAnalyzer.reset = function () { + if (DataLossAnalyzer.isEnabled()) { + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY, "0"); + DataLossAnalyzer.itemsRestoredFromSessionBuffer = 0; + } + }; + DataLossAnalyzer.isEnabled = function () { + return DataLossAnalyzer.enabled && + DataLossAnalyzer.appInsights != null && + DataLossAnalyzer.appInsights.context._sender._XMLHttpRequestSupported && + ApplicationInsights.Util.canUseSessionStorage(); + }; + DataLossAnalyzer.getIssuesReported = function () { + var result = (!DataLossAnalyzer.isEnabled() || isNaN(+ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ISSUES_REPORTED_KEY))) ? + 0 : + +ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ISSUES_REPORTED_KEY); + return result; + }; + DataLossAnalyzer.incrementItemsQueued = function () { + try { + if (DataLossAnalyzer.isEnabled()) { + var itemsQueued = DataLossAnalyzer.getNumberOfLostItems(); + ++itemsQueued; + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY, itemsQueued.toString()); + } + } + catch (e) { } + }; + DataLossAnalyzer.decrementItemsQueued = function (countOfItemsSentSuccessfully) { + try { + if (DataLossAnalyzer.isEnabled()) { + var itemsQueued = DataLossAnalyzer.getNumberOfLostItems(); + itemsQueued -= countOfItemsSentSuccessfully; + if (itemsQueued < 0) + itemsQueued = 0; + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY, itemsQueued.toString()); + } + } + catch (e) { } + }; + DataLossAnalyzer.getNumberOfLostItems = function () { + var result = 0; + try { + if (DataLossAnalyzer.isEnabled()) { + result = isNaN(+ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY)) ? + 0 : + +ApplicationInsights.Util.getSessionStorage(DataLossAnalyzer.ITEMS_QUEUED_KEY); + } + } + catch (e) { + result = 0; + } + return result; + }; + DataLossAnalyzer.reportLostItems = function () { + try { + if (DataLossAnalyzer.isEnabled() && + DataLossAnalyzer.getIssuesReported() < DataLossAnalyzer.LIMIT_PER_SESSION && + DataLossAnalyzer.getNumberOfLostItems() > 0) { + var lostItems = DataLossAnalyzer.getNumberOfLostItems() - DataLossAnalyzer.itemsRestoredFromSessionBuffer; + DataLossAnalyzer.appInsights.trackTrace("AI (Internal): Internal report DATALOSS:\"" + lostItems + "\"", null); + DataLossAnalyzer.appInsights.flush(); + var issuesReported = DataLossAnalyzer.getIssuesReported(); + ++issuesReported; + ApplicationInsights.Util.setSessionStorage(DataLossAnalyzer.ISSUES_REPORTED_KEY, issuesReported.toString()); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedToReportDataLoss, "Failed to report data loss: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + finally { + try { + DataLossAnalyzer.reset(); + } + catch (e) { } + } + }; + DataLossAnalyzer.enabled = false; + DataLossAnalyzer.itemsRestoredFromSessionBuffer = 0; + DataLossAnalyzer.LIMIT_PER_SESSION = 10; + DataLossAnalyzer.ITEMS_QUEUED_KEY = "AI_itemsQueued"; + DataLossAnalyzer.ISSUES_REPORTED_KEY = "AI_lossIssuesReported"; + return DataLossAnalyzer; + })(); + ApplicationInsights.DataLossAnalyzer = DataLossAnalyzer; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var ArraySendBuffer = (function () { + function ArraySendBuffer(config) { + this._config = config; + this._buffer = []; + } + ArraySendBuffer.prototype.enqueue = function (payload) { + this._buffer.push(payload); + }; + ArraySendBuffer.prototype.count = function () { + return this._buffer.length; + }; + ArraySendBuffer.prototype.clear = function () { + this._buffer.length = 0; + }; + ArraySendBuffer.prototype.getItems = function () { + return this._buffer.slice(0); + }; + ArraySendBuffer.prototype.batchPayloads = function (payload) { + if (payload && payload.length > 0) { + var batch = this._config.emitLineDelimitedJson() ? + payload.join("\n") : + "[" + payload.join(",") + "]"; + return batch; + } + return null; + }; + ArraySendBuffer.prototype.markAsSent = function (payload) { + this.clear(); + }; + ArraySendBuffer.prototype.clearSent = function (payload) { + this.clear(); + }; + return ArraySendBuffer; + })(); + ApplicationInsights.ArraySendBuffer = ArraySendBuffer; + var SessionStorageSendBuffer = (function () { + function SessionStorageSendBuffer(config) { + this._config = config; + var bufferItems = this.getBuffer(SessionStorageSendBuffer.BUFFER_KEY); + var notDeliveredItems = this.getBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY); + this._buffer = bufferItems.concat(notDeliveredItems); + ApplicationInsights.DataLossAnalyzer.itemsRestoredFromSessionBuffer = this._buffer.length; + this.setBuffer(SessionStorageSendBuffer.BUFFER_KEY, this._buffer); + this.setBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY, []); + } + SessionStorageSendBuffer.prototype.enqueue = function (payload) { + this._buffer.push(payload); + this.setBuffer(SessionStorageSendBuffer.BUFFER_KEY, this._buffer); + }; + SessionStorageSendBuffer.prototype.count = function () { + return this._buffer.length; + }; + SessionStorageSendBuffer.prototype.clear = function () { + this._buffer.length = 0; + this.setBuffer(SessionStorageSendBuffer.BUFFER_KEY, []); + this.setBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY, []); + }; + SessionStorageSendBuffer.prototype.getItems = function () { + return this._buffer.slice(0); + }; + SessionStorageSendBuffer.prototype.batchPayloads = function (payload) { + if (payload && payload.length > 0) { + var batch = this._config.emitLineDelimitedJson() ? + payload.join("\n") : + "[" + payload.join(",") + "]"; + return batch; + } + return null; + }; + SessionStorageSendBuffer.prototype.markAsSent = function (payload) { + var sentElements = this.getBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY); + sentElements = sentElements.concat(payload); + this._buffer = this.removePayloadsFromBuffer(payload, this._buffer); + this.setBuffer(SessionStorageSendBuffer.BUFFER_KEY, this._buffer); + this.setBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY, sentElements); + }; + SessionStorageSendBuffer.prototype.clearSent = function (payload) { + var sentElements = this.getBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY); + sentElements = this.removePayloadsFromBuffer(payload, sentElements); + this.setBuffer(SessionStorageSendBuffer.SENT_BUFFER_KEY, sentElements); + }; + SessionStorageSendBuffer.prototype.removePayloadsFromBuffer = function (payloads, buffer) { + var remaining = []; + for (var i in buffer) { + var contains = false; + for (var j in payloads) { + if (payloads[j] === buffer[i]) { + contains = true; + break; + } + } + if (!contains) { + remaining.push(buffer[i]); + } + } + ; + return remaining; + }; + SessionStorageSendBuffer.prototype.getBuffer = function (key) { + try { + var bufferJson = ApplicationInsights.Util.getSessionStorage(key); + if (bufferJson) { + var buffer = JSON.parse(bufferJson); + if (buffer) { + return buffer; + } + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailToRestoreStorageBuffer, " storage key: " + key + ", " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + return []; + }; + SessionStorageSendBuffer.prototype.setBuffer = function (key, buffer) { + try { + var bufferJson = JSON.stringify(buffer); + ApplicationInsights.Util.setSessionStorage(key, bufferJson); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailToSetStorageBuffer, " storage key: " + key + ", " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + SessionStorageSendBuffer.BUFFER_KEY = "AI_buffer"; + SessionStorageSendBuffer.SENT_BUFFER_KEY = "AI_sentBuffer"; + return SessionStorageSendBuffer; + })(); + ApplicationInsights.SessionStorageSendBuffer = SessionStorageSendBuffer; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +; +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var Sender = (function () { + function Sender(config) { + this._XMLHttpRequestSupported = false; + this._lastSend = 0; + this._config = config; + this._sender = null; + this._buffer = (ApplicationInsights.Util.canUseSessionStorage() && this._config.enableSessionStorageBuffer()) + ? new ApplicationInsights.SessionStorageSendBuffer(config) : new ApplicationInsights.ArraySendBuffer(config); + if (typeof XMLHttpRequest != "undefined") { + var testXhr = new XMLHttpRequest(); + if ("withCredentials" in testXhr) { + this._sender = this._xhrSender; + this._XMLHttpRequestSupported = true; + } + else if (typeof XDomainRequest !== "undefined") { + this._sender = this._xdrSender; + } + } + } + Sender.prototype.send = function (envelope) { + var _this = this; + try { + if (this._config.disableTelemetry()) { + return; + } + if (!envelope) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_CannotSendEmptyTelemetry, "Cannot send empty telemetry")); + return; + } + if (!this._sender) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_SenderNotInitialized, "Sender was not initialized")); + return; + } + var payload = ApplicationInsights.Serializer.serialize(envelope); + var bufferPayload = this._buffer.getItems(); + var batch = this._buffer.batchPayloads(bufferPayload); + if (batch && (batch.length + payload.length > this._config.maxBatchSizeInBytes())) { + this.triggerSend(); + } + this._buffer.enqueue(payload); + if (!this._timeoutHandle) { + this._timeoutHandle = setTimeout(function () { + _this._timeoutHandle = null; + _this.triggerSend(); + }, this._config.maxBatchInterval()); + } + ApplicationInsights.DataLossAnalyzer.incrementItemsQueued(); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedAddingTelemetryToBuffer, "Failed adding telemetry to the sender's buffer, some telemetry will be lost: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + Sender.prototype._getSizeInBytes = function (list) { + var size = 0; + if (list && list.length) { + for (var i = 0; i < list.length; i++) { + var item = list[i]; + if (item && item.length) { + size += item.length; + } + } + } + return size; + }; + Sender.prototype.triggerSend = function (async) { + var isAsync = true; + if (typeof async === 'boolean') { + isAsync = async; + } + try { + if (!this._config.disableTelemetry()) { + if (this._buffer.count() > 0) { + var payload = this._buffer.getItems(); + this._sender(payload, isAsync); + } + this._lastSend = +new Date; + } + else { + this._buffer.clear(); + } + clearTimeout(this._timeoutHandle); + this._timeoutHandle = null; + } + catch (e) { + if (!ApplicationInsights.Util.getIEVersion() || ApplicationInsights.Util.getIEVersion() > 9) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TransmissionFailed, "Telemetry transmission failed, some telemetry will be lost: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + } + }; + Sender.prototype._xhrSender = function (payload, isAsync) { + var _this = this; + var xhr = new XMLHttpRequest(); + xhr[ApplicationInsights.AjaxMonitor.DisabledPropertyName] = true; + xhr.open("POST", this._config.endpointUrl(), isAsync); + xhr.setRequestHeader("Content-type", "application/json"); + xhr.onreadystatechange = function () { return _this._xhrReadyStateChange(xhr, payload, payload.length); }; + xhr.onerror = function (event) { return _this._onError(payload, xhr.responseText || xhr.response || "", event); }; + var batch = this._buffer.batchPayloads(payload); + xhr.send(batch); + this._buffer.markAsSent(payload); + }; + Sender.prototype._xdrSender = function (payload, isAsync) { + var _this = this; + var xdr = new XDomainRequest(); + xdr.onload = function () { return _this._xdrOnLoad(xdr, payload); }; + xdr.onerror = function (event) { return _this._onError(payload, xdr.responseText || "", event); }; + xdr.open('POST', this._config.endpointUrl()); + var batch = this._buffer.batchPayloads(payload); + xdr.send(batch); + this._buffer.markAsSent(payload); + }; + Sender.prototype._xhrReadyStateChange = function (xhr, payload, countOfItemsInPayload) { + if (xhr.readyState === 4) { + if ((xhr.status < 200 || xhr.status >= 300) && xhr.status !== 0) { + this._onError(payload, xhr.responseText || xhr.response || ""); + } + else { + this._onSuccess(payload, countOfItemsInPayload); + } + } + }; + Sender.prototype._xdrOnLoad = function (xdr, payload) { + if (xdr && (xdr.responseText + "" === "200" || xdr.responseText === "")) { + this._onSuccess(payload, 0); + } + else { + this._onError(payload, xdr && xdr.responseText || ""); + } + }; + Sender.prototype._onError = function (payload, message, event) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_OnError, "Failed to send telemetry.", { message: message })); + this._buffer.clearSent(payload); + }; + Sender.prototype._onSuccess = function (payload, countOfItemsInPayload) { + ApplicationInsights.DataLossAnalyzer.decrementItemsQueued(countOfItemsInPayload); + this._buffer.clearSent(payload); + }; + return Sender; + })(); + ApplicationInsights.Sender = Sender; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var SplitTest = (function () { + function SplitTest() { + this.hashCodeGeneragor = new ApplicationInsights.HashCodeScoreGenerator(); + } + SplitTest.prototype.isEnabled = function (key, percentEnabled) { + return this.hashCodeGeneragor.getHashCodeScore(key) < percentEnabled; + }; + return SplitTest; + })(); + ApplicationInsights.SplitTest = SplitTest; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Domain = (function () { + function Domain() { + } + return Domain; + })(); + Telemetry.Domain = Domain; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + (function (SeverityLevel) { + SeverityLevel[SeverityLevel["Verbose"] = 0] = "Verbose"; + SeverityLevel[SeverityLevel["Information"] = 1] = "Information"; + SeverityLevel[SeverityLevel["Warning"] = 2] = "Warning"; + SeverityLevel[SeverityLevel["Error"] = 3] = "Error"; + SeverityLevel[SeverityLevel["Critical"] = 4] = "Critical"; + })(AI.SeverityLevel || (AI.SeverityLevel = {})); + var SeverityLevel = AI.SeverityLevel; +})(AI || (AI = {})); +/// +/// +var AI; +(function (AI) { + "use strict"; + var MessageData = (function (_super) { + __extends(MessageData, _super); + function MessageData() { + _super.call(this); + this.ver = 2; + this.properties = {}; + _super.call(this); + } + return MessageData; + })(Microsoft.Telemetry.Domain); + AI.MessageData = MessageData; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var DataSanitizer = (function () { + function DataSanitizer() { + } + DataSanitizer.sanitizeKeyAndAddUniqueness = function (key, map) { + var origLength = key.length; + var field = DataSanitizer.sanitizeKey(key); + if (field.length !== origLength) { + var i = 0; + var uniqueField = field; + while (map[uniqueField] !== undefined) { + i++; + uniqueField = field.substring(0, DataSanitizer.MAX_NAME_LENGTH - 3) + DataSanitizer.padNumber(i); + } + field = uniqueField; + } + return field; + }; + DataSanitizer.sanitizeKey = function (name) { + if (name) { + name = ApplicationInsights.Util.trim(name.toString()); + if (name.search(/[^0-9a-zA-Z-._()\/ ]/g) >= 0) { + name = name.replace(/[^0-9a-zA-Z-._()\/ ]/g, "_"); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_IllegalCharsInName, "name contains illegal characters. Illegal characters have been replaced with '_'.", { newName: name })); + } + if (name.length > DataSanitizer.MAX_NAME_LENGTH) { + name = name.substring(0, DataSanitizer.MAX_NAME_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_NameTooLong, "name is too long. It has been truncated to " + DataSanitizer.MAX_NAME_LENGTH + " characters.", { name: name })); + } + } + return name; + }; + DataSanitizer.sanitizeString = function (value) { + if (value) { + value = ApplicationInsights.Util.trim(value); + if (value.toString().length > DataSanitizer.MAX_STRING_LENGTH) { + value = value.toString().substring(0, DataSanitizer.MAX_STRING_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_StringValueTooLong, "string value is too long. It has been truncated to " + DataSanitizer.MAX_STRING_LENGTH + " characters.", { value: value })); + } + } + return value; + }; + DataSanitizer.sanitizeUrl = function (url) { + if (url) { + url = ApplicationInsights.Util.trim(url); + if (url.length > DataSanitizer.MAX_URL_LENGTH) { + url = url.substring(0, DataSanitizer.MAX_URL_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_UrlTooLong, "url is too long, it has been trucated to " + DataSanitizer.MAX_URL_LENGTH + " characters.", { url: url })); + } + } + return url; + }; + DataSanitizer.sanitizeMessage = function (message) { + if (message) { + if (message.length > DataSanitizer.MAX_MESSAGE_LENGTH) { + message = message.substring(0, DataSanitizer.MAX_MESSAGE_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_MessageTruncated, "message is too long, it has been trucated to " + DataSanitizer.MAX_MESSAGE_LENGTH + " characters.", { message: message })); + } + } + return message; + }; + DataSanitizer.sanitizeException = function (exception) { + if (exception) { + if (exception.length > DataSanitizer.MAX_EXCEPTION_LENGTH) { + exception = exception.substring(0, DataSanitizer.MAX_EXCEPTION_LENGTH); + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_ExceptionTruncated, "exception is too long, it has been trucated to " + DataSanitizer.MAX_EXCEPTION_LENGTH + " characters.", { exception: exception })); + } + } + return exception; + }; + DataSanitizer.sanitizeProperties = function (properties) { + if (properties) { + var tempProps = {}; + for (var prop in properties) { + var value = DataSanitizer.sanitizeString(properties[prop]); + prop = DataSanitizer.sanitizeKeyAndAddUniqueness(prop, tempProps); + tempProps[prop] = value; + } + properties = tempProps; + } + return properties; + }; + DataSanitizer.sanitizeMeasurements = function (measurements) { + if (measurements) { + var tempMeasurements = {}; + for (var measure in measurements) { + var value = measurements[measure]; + measure = DataSanitizer.sanitizeKeyAndAddUniqueness(measure, tempMeasurements); + tempMeasurements[measure] = value; + } + measurements = tempMeasurements; + } + return measurements; + }; + DataSanitizer.padNumber = function (num) { + var s = "00" + num; + return s.substr(s.length - 3); + }; + DataSanitizer.MAX_NAME_LENGTH = 150; + DataSanitizer.MAX_STRING_LENGTH = 1024; + DataSanitizer.MAX_URL_LENGTH = 2048; + DataSanitizer.MAX_MESSAGE_LENGTH = 32768; + DataSanitizer.MAX_EXCEPTION_LENGTH = 32768; + return DataSanitizer; + })(); + Common.DataSanitizer = DataSanitizer; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Trace = (function (_super) { + __extends(Trace, _super); + function Trace(message, properties) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + message: ApplicationInsights.FieldType.Required, + severityLevel: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default + }; + message = message || ApplicationInsights.Util.NotSpecified; + this.message = Telemetry.Common.DataSanitizer.sanitizeMessage(message); + this.properties = Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + } + Trace.envelopeType = "Microsoft.ApplicationInsights.{0}.Message"; + Trace.dataType = "MessageData"; + return Trace; + })(AI.MessageData); + Telemetry.Trace = Trace; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var EventData = (function (_super) { + __extends(EventData, _super); + function EventData() { + _super.call(this); + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return EventData; + })(Microsoft.Telemetry.Domain); + AI.EventData = EventData; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Event = (function (_super) { + __extends(Event, _super); + function Event(name, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Required, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default, + }; + this.name = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeString(name) || ApplicationInsights.Util.NotSpecified; + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + } + Event.envelopeType = "Microsoft.ApplicationInsights.{0}.Event"; + Event.dataType = "EventData"; + return Event; + })(AI.EventData); + Telemetry.Event = Event; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + var ExceptionDetails = (function () { + function ExceptionDetails() { + this.hasFullStack = true; + this.parsedStack = []; + } + return ExceptionDetails; + })(); + AI.ExceptionDetails = ExceptionDetails; +})(AI || (AI = {})); +/// +/// +/// +var AI; +(function (AI) { + "use strict"; + var ExceptionData = (function (_super) { + __extends(ExceptionData, _super); + function ExceptionData() { + _super.call(this); + this.ver = 2; + this.exceptions = []; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return ExceptionData; + })(Microsoft.Telemetry.Domain); + AI.ExceptionData = ExceptionData; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + var StackFrame = (function () { + function StackFrame() { + } + return StackFrame; + })(); + AI.StackFrame = StackFrame; +})(AI || (AI = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Exception = (function (_super) { + __extends(Exception, _super); + function Exception(exception, handledAt, properties, measurements, severityLevel) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + handledAt: ApplicationInsights.FieldType.Required, + exceptions: ApplicationInsights.FieldType.Required, + severityLevel: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default, + }; + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + this.handledAt = handledAt || "unhandled"; + this.exceptions = [new _ExceptionDetails(exception)]; + if (severityLevel) { + this.severityLevel = severityLevel; + } + } + Exception.CreateSimpleException = function (message, typeName, assembly, fileName, details, line, handledAt) { + return { + handledAt: handledAt || "unhandled", + exceptions: [ + { + hasFullStack: true, + message: message, + stack: details, + typeName: typeName, + parsedStack: [ + { + level: 0, + assembly: assembly, + fileName: fileName, + line: line, + method: "unknown" + } + ] + } + ] + }; + }; + Exception.envelopeType = "Microsoft.ApplicationInsights.{0}.Exception"; + Exception.dataType = "ExceptionData"; + return Exception; + })(AI.ExceptionData); + Telemetry.Exception = Exception; + var _ExceptionDetails = (function (_super) { + __extends(_ExceptionDetails, _super); + function _ExceptionDetails(exception) { + _super.call(this); + this.aiDataContract = { + id: ApplicationInsights.FieldType.Default, + outerId: ApplicationInsights.FieldType.Default, + typeName: ApplicationInsights.FieldType.Required, + message: ApplicationInsights.FieldType.Required, + hasFullStack: ApplicationInsights.FieldType.Default, + stack: ApplicationInsights.FieldType.Default, + parsedStack: ApplicationInsights.FieldType.Array, + }; + this.typeName = Telemetry.Common.DataSanitizer.sanitizeString(exception.name) || ApplicationInsights.Util.NotSpecified; + this.message = Telemetry.Common.DataSanitizer.sanitizeMessage(exception.message) || ApplicationInsights.Util.NotSpecified; + var stack = exception["stack"]; + this.parsedStack = this.parseStack(stack); + this.stack = Telemetry.Common.DataSanitizer.sanitizeException(stack); + this.hasFullStack = ApplicationInsights.Util.isArray(this.parsedStack) && this.parsedStack.length > 0; + } + _ExceptionDetails.prototype.parseStack = function (stack) { + var parsedStack = undefined; + if (typeof stack === "string") { + var frames = stack.split('\n'); + parsedStack = []; + var level = 0; + var totalSizeInBytes = 0; + for (var i = 0; i <= frames.length; i++) { + var frame = frames[i]; + if (_StackFrame.regex.test(frame)) { + var parsedFrame = new _StackFrame(frames[i], level++); + totalSizeInBytes += parsedFrame.sizeInBytes; + parsedStack.push(parsedFrame); + } + } + var exceptionParsedStackThreshold = 32 * 1024; + if (totalSizeInBytes > exceptionParsedStackThreshold) { + var left = 0; + var right = parsedStack.length - 1; + var size = 0; + var acceptedLeft = left; + var acceptedRight = right; + while (left < right) { + var lSize = parsedStack[left].sizeInBytes; + var rSize = parsedStack[right].sizeInBytes; + size += lSize + rSize; + if (size > exceptionParsedStackThreshold) { + var howMany = acceptedRight - acceptedLeft + 1; + parsedStack.splice(acceptedLeft, howMany); + break; + } + acceptedLeft = left; + acceptedRight = right; + left++; + right--; + } + } + } + return parsedStack; + }; + return _ExceptionDetails; + })(AI.ExceptionDetails); + var _StackFrame = (function (_super) { + __extends(_StackFrame, _super); + function _StackFrame(frame, level) { + _super.call(this); + this.sizeInBytes = 0; + this.aiDataContract = { + level: ApplicationInsights.FieldType.Required, + method: ApplicationInsights.FieldType.Required, + assembly: ApplicationInsights.FieldType.Default, + fileName: ApplicationInsights.FieldType.Default, + line: ApplicationInsights.FieldType.Default, + }; + this.level = level; + this.method = ""; + this.assembly = ApplicationInsights.Util.trim(frame); + var matches = frame.match(_StackFrame.regex); + if (matches && matches.length >= 5) { + this.method = ApplicationInsights.Util.trim(matches[2]) || this.method; + this.fileName = ApplicationInsights.Util.trim(matches[4]); + this.line = parseInt(matches[5]) || 0; + } + this.sizeInBytes += this.method.length; + this.sizeInBytes += this.fileName.length; + this.sizeInBytes += this.assembly.length; + this.sizeInBytes += _StackFrame.baseSize; + this.sizeInBytes += this.level.toString().length; + this.sizeInBytes += this.line.toString().length; + } + _StackFrame.regex = /^([\s]+at)?(.*?)(\@|\s\(|\s)([^\(\@\n]+):([0-9]+):([0-9]+)(\)?)$/; + _StackFrame.baseSize = 58; + return _StackFrame; + })(AI.StackFrame); + Telemetry._StackFrame = _StackFrame; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var MetricData = (function (_super) { + __extends(MetricData, _super); + function MetricData() { + _super.call(this); + this.ver = 2; + this.metrics = []; + this.properties = {}; + _super.call(this); + } + return MetricData; + })(Microsoft.Telemetry.Domain); + AI.MetricData = MetricData; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + (function (DataPointType) { + DataPointType[DataPointType["Measurement"] = 0] = "Measurement"; + DataPointType[DataPointType["Aggregation"] = 1] = "Aggregation"; + })(AI.DataPointType || (AI.DataPointType = {})); + var DataPointType = AI.DataPointType; +})(AI || (AI = {})); +/// +var AI; +(function (AI) { + "use strict"; + var DataPoint = (function () { + function DataPoint() { + this.kind = AI.DataPointType.Measurement; + } + return DataPoint; + })(); + AI.DataPoint = DataPoint; +})(AI || (AI = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var DataPoint = (function (_super) { + __extends(DataPoint, _super); + function DataPoint() { + _super.apply(this, arguments); + this.aiDataContract = { + name: ApplicationInsights.FieldType.Required, + kind: ApplicationInsights.FieldType.Default, + value: ApplicationInsights.FieldType.Required, + count: ApplicationInsights.FieldType.Default, + min: ApplicationInsights.FieldType.Default, + max: ApplicationInsights.FieldType.Default, + stdDev: ApplicationInsights.FieldType.Default + }; + } + return DataPoint; + })(AI.DataPoint); + Common.DataPoint = DataPoint; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Metric = (function (_super) { + __extends(Metric, _super); + function Metric(name, value, count, min, max, properties) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + metrics: ApplicationInsights.FieldType.Required, + properties: ApplicationInsights.FieldType.Default, + }; + var dataPoint = new Microsoft.ApplicationInsights.Telemetry.Common.DataPoint(); + dataPoint.count = count > 0 ? count : undefined; + dataPoint.max = isNaN(max) || max === null ? undefined : max; + dataPoint.min = isNaN(min) || min === null ? undefined : min; + dataPoint.name = Telemetry.Common.DataSanitizer.sanitizeString(name) || ApplicationInsights.Util.NotSpecified; + dataPoint.value = value; + this.metrics = [dataPoint]; + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + } + Metric.envelopeType = "Microsoft.ApplicationInsights.{0}.Metric"; + Metric.dataType = "MetricData"; + return Metric; + })(AI.MetricData); + Telemetry.Metric = Metric; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var PageViewData = (function (_super) { + __extends(PageViewData, _super); + function PageViewData() { + _super.call(this); + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return PageViewData; + })(AI.EventData); + AI.PageViewData = PageViewData; +})(AI || (AI = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageView = (function (_super) { + __extends(PageView, _super); + function PageView(name, url, durationMs, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Default, + url: ApplicationInsights.FieldType.Default, + duration: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default, + }; + this.url = Telemetry.Common.DataSanitizer.sanitizeUrl(url); + this.name = Telemetry.Common.DataSanitizer.sanitizeString(name) || ApplicationInsights.Util.NotSpecified; + if (!isNaN(durationMs)) { + this.duration = ApplicationInsights.Util.msToTimeSpan(durationMs); + } + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + } + PageView.envelopeType = "Microsoft.ApplicationInsights.{0}.Pageview"; + PageView.dataType = "PageviewData"; + return PageView; + })(AI.PageViewData); + Telemetry.PageView = PageView; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var PageViewPerfData = (function (_super) { + __extends(PageViewPerfData, _super); + function PageViewPerfData() { + _super.call(this); + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return PageViewPerfData; + })(AI.PageViewData); + AI.PageViewPerfData = PageViewPerfData; +})(AI || (AI = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageViewPerformance = (function (_super) { + __extends(PageViewPerformance, _super); + function PageViewPerformance(name, url, unused, properties, measurements) { + _super.call(this); + this.aiDataContract = { + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Default, + url: ApplicationInsights.FieldType.Default, + duration: ApplicationInsights.FieldType.Default, + perfTotal: ApplicationInsights.FieldType.Default, + networkConnect: ApplicationInsights.FieldType.Default, + sentRequest: ApplicationInsights.FieldType.Default, + receivedResponse: ApplicationInsights.FieldType.Default, + domProcessing: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + measurements: ApplicationInsights.FieldType.Default + }; + this.isValid = false; + var timing = PageViewPerformance.getPerformanceTiming(); + if (timing) { + var total = PageViewPerformance.getDuration(timing.navigationStart, timing.loadEventEnd); + var network = PageViewPerformance.getDuration(timing.navigationStart, timing.connectEnd); + var request = PageViewPerformance.getDuration(timing.requestStart, timing.responseStart); + var response = PageViewPerformance.getDuration(timing.responseStart, timing.responseEnd); + var dom = PageViewPerformance.getDuration(timing.responseEnd, timing.loadEventEnd); + if (total == 0) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ErrorPVCalc, "error calculating page view performance.", { total: total, network: network, request: request, response: response, dom: dom })); + } + else if (total < Math.floor(network) + Math.floor(request) + Math.floor(response) + Math.floor(dom)) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ClientPerformanceMathError, "client performance math error.", { total: total, network: network, request: request, response: response, dom: dom })); + } + else { + this.durationMs = total; + this.perfTotal = this.duration = ApplicationInsights.Util.msToTimeSpan(total); + this.networkConnect = ApplicationInsights.Util.msToTimeSpan(network); + this.sentRequest = ApplicationInsights.Util.msToTimeSpan(request); + this.receivedResponse = ApplicationInsights.Util.msToTimeSpan(response); + this.domProcessing = ApplicationInsights.Util.msToTimeSpan(dom); + this.isValid = true; + } + } + this.url = Telemetry.Common.DataSanitizer.sanitizeUrl(url); + this.name = Telemetry.Common.DataSanitizer.sanitizeString(name) || ApplicationInsights.Util.NotSpecified; + this.properties = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeProperties(properties); + this.measurements = ApplicationInsights.Telemetry.Common.DataSanitizer.sanitizeMeasurements(measurements); + } + PageViewPerformance.prototype.getIsValid = function () { + return this.isValid; + }; + PageViewPerformance.prototype.getDurationMs = function () { + return this.durationMs; + }; + PageViewPerformance.getPerformanceTiming = function () { + if (typeof window != "undefined" && window.performance && window.performance.timing) { + return window.performance.timing; + } + return null; + }; + PageViewPerformance.isPerformanceTimingSupported = function () { + return typeof window != "undefined" && window.performance && window.performance.timing; + }; + PageViewPerformance.isPerformanceTimingDataReady = function () { + var timing = window.performance.timing; + return timing.domainLookupStart > 0 + && timing.navigationStart > 0 + && timing.responseStart > 0 + && timing.requestStart > 0 + && timing.loadEventEnd > 0 + && timing.responseEnd > 0 + && timing.connectEnd > 0 + && timing.domLoading > 0; + }; + PageViewPerformance.getDuration = function (start, end) { + var duration = 0; + if (!(isNaN(start) || isNaN(end))) { + duration = Math.max(end - start, 0); + } + return duration; + }; + PageViewPerformance.envelopeType = "Microsoft.ApplicationInsights.{0}.PageviewPerformance"; + PageViewPerformance.dataType = "PageviewPerformanceData"; + return PageViewPerformance; + })(AI.PageViewPerfData); + Telemetry.PageViewPerformance = PageViewPerformance; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var TelemetryContext = (function () { + function TelemetryContext(config) { + this._config = config; + this._sender = new ApplicationInsights.Sender(config); + if (typeof window !== 'undefined') { + this._sessionManager = new ApplicationInsights.Context._SessionManager(config); + this.application = new ApplicationInsights.Context.Application(); + this.device = new ApplicationInsights.Context.Device(); + this.internal = new ApplicationInsights.Context.Internal(); + this.location = new ApplicationInsights.Context.Location(); + this.user = new ApplicationInsights.Context.User(config); + this.operation = new ApplicationInsights.Context.Operation(); + this.session = new ApplicationInsights.Context.Session(); + this.sample = new ApplicationInsights.Context.Sample(config.sampleRate()); + } + } + TelemetryContext.prototype.addTelemetryInitializer = function (telemetryInitializer) { + this.telemetryInitializers = this.telemetryInitializers || []; + this.telemetryInitializers.push(telemetryInitializer); + }; + TelemetryContext.prototype.track = function (envelope) { + if (!envelope) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_TrackArgumentsNotSpecified, "cannot call .track() with a null or undefined argument")); + } + else { + if (envelope.name === ApplicationInsights.Telemetry.PageView.envelopeType) { + ApplicationInsights._InternalLogging.resetInternalMessageCount(); + } + if (this.session) { + if (typeof this.session.id !== "string") { + this._sessionManager.update(); + } + } + this._track(envelope); + } + return envelope; + }; + TelemetryContext.prototype._track = function (envelope) { + if (this.session) { + if (typeof this.session.id === "string") { + this._applySessionContext(envelope, this.session); + } + else { + this._applySessionContext(envelope, this._sessionManager.automaticSession); + } + } + this._applyApplicationContext(envelope, this.application); + this._applyDeviceContext(envelope, this.device); + this._applyInternalContext(envelope, this.internal); + this._applyLocationContext(envelope, this.location); + this._applySampleContext(envelope, this.sample); + this._applyUserContext(envelope, this.user); + this._applyOperationContext(envelope, this.operation); + envelope.iKey = this._config.instrumentationKey(); + var doNotSendItem = false; + try { + this.telemetryInitializers = this.telemetryInitializers || []; + var telemetryInitializersCount = this.telemetryInitializers.length; + for (var i = 0; i < telemetryInitializersCount; ++i) { + var telemetryInitializer = this.telemetryInitializers[i]; + if (telemetryInitializer) { + if (telemetryInitializer.apply(null, [envelope]) === false) { + doNotSendItem = true; + break; + } + } + } + } + catch (e) { + doNotSendItem = true; + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_TelemetryInitializerFailed, "One of telemetry initializers failed, telemetry item will not be sent: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + if (!doNotSendItem) { + if (envelope.name === ApplicationInsights.Telemetry.Metric.envelopeType || + this.sample.isSampledIn(envelope)) { + var iKeyNoDashes = this._config.instrumentationKey().replace(/-/g, ""); + envelope.name = envelope.name.replace("{0}", iKeyNoDashes); + this._sender.send(envelope); + } + else { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TelemetrySampledAndNotSent, "Telemetry is sampled and not sent to the AI service.", { SampleRate: this.sample.sampleRate })); + } + } + return envelope; + }; + TelemetryContext.prototype._applyApplicationContext = function (envelope, appContext) { + if (appContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof appContext.ver === "string") { + envelope.tags[tagKeys.applicationVersion] = appContext.ver; + } + if (typeof appContext.build === "string") { + envelope.tags[tagKeys.applicationBuild] = appContext.build; + } + } + }; + TelemetryContext.prototype._applyDeviceContext = function (envelope, deviceContext) { + var tagKeys = new AI.ContextTagKeys(); + if (deviceContext) { + if (typeof deviceContext.id === "string") { + envelope.tags[tagKeys.deviceId] = deviceContext.id; + } + if (typeof deviceContext.ip === "string") { + envelope.tags[tagKeys.deviceIp] = deviceContext.ip; + } + if (typeof deviceContext.language === "string") { + envelope.tags[tagKeys.deviceLanguage] = deviceContext.language; + } + if (typeof deviceContext.locale === "string") { + envelope.tags[tagKeys.deviceLocale] = deviceContext.locale; + } + if (typeof deviceContext.model === "string") { + envelope.tags[tagKeys.deviceModel] = deviceContext.model; + } + if (typeof deviceContext.network !== "undefined") { + envelope.tags[tagKeys.deviceNetwork] = deviceContext.network; + } + if (typeof deviceContext.oemName === "string") { + envelope.tags[tagKeys.deviceOEMName] = deviceContext.oemName; + } + if (typeof deviceContext.os === "string") { + envelope.tags[tagKeys.deviceOS] = deviceContext.os; + } + if (typeof deviceContext.osversion === "string") { + envelope.tags[tagKeys.deviceOSVersion] = deviceContext.osversion; + } + if (typeof deviceContext.resolution === "string") { + envelope.tags[tagKeys.deviceScreenResolution] = deviceContext.resolution; + } + if (typeof deviceContext.type === "string") { + envelope.tags[tagKeys.deviceType] = deviceContext.type; + } + } + }; + TelemetryContext.prototype._applyInternalContext = function (envelope, internalContext) { + if (internalContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof internalContext.agentVersion === "string") { + envelope.tags[tagKeys.internalAgentVersion] = internalContext.agentVersion; + } + if (typeof internalContext.sdkVersion === "string") { + envelope.tags[tagKeys.internalSdkVersion] = internalContext.sdkVersion; + } + } + }; + TelemetryContext.prototype._applyLocationContext = function (envelope, locationContext) { + if (locationContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof locationContext.ip === "string") { + envelope.tags[tagKeys.locationIp] = locationContext.ip; + } + } + }; + TelemetryContext.prototype._applyOperationContext = function (envelope, operationContext) { + if (operationContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof operationContext.id === "string") { + envelope.tags[tagKeys.operationId] = operationContext.id; + } + if (typeof operationContext.name === "string") { + envelope.tags[tagKeys.operationName] = operationContext.name; + } + if (typeof operationContext.parentId === "string") { + envelope.tags[tagKeys.operationParentId] = operationContext.parentId; + } + if (typeof operationContext.rootId === "string") { + envelope.tags[tagKeys.operationRootId] = operationContext.rootId; + } + if (typeof operationContext.syntheticSource === "string") { + envelope.tags[tagKeys.operationSyntheticSource] = operationContext.syntheticSource; + } + } + }; + TelemetryContext.prototype._applySampleContext = function (envelope, sampleContext) { + if (sampleContext) { + envelope.sampleRate = sampleContext.sampleRate; + } + }; + TelemetryContext.prototype._applySessionContext = function (envelope, sessionContext) { + if (sessionContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof sessionContext.id === "string") { + envelope.tags[tagKeys.sessionId] = sessionContext.id; + } + if (typeof sessionContext.isFirst !== "undefined") { + envelope.tags[tagKeys.sessionIsFirst] = sessionContext.isFirst; + } + } + }; + TelemetryContext.prototype._applyUserContext = function (envelope, userContext) { + if (userContext) { + var tagKeys = new AI.ContextTagKeys(); + if (typeof userContext.accountId === "string") { + envelope.tags[tagKeys.userAccountId] = userContext.accountId; + } + if (typeof userContext.agent === "string") { + envelope.tags[tagKeys.userAgent] = userContext.agent; + } + if (typeof userContext.id === "string") { + envelope.tags[tagKeys.userId] = userContext.id; + } + if (typeof userContext.authenticatedId === "string") { + envelope.tags[tagKeys.userAuthUserId] = userContext.authenticatedId; + } + if (typeof userContext.storeRegion === "string") { + envelope.tags[tagKeys.userStoreRegion] = userContext.storeRegion; + } + } + }; + return TelemetryContext; + })(); + ApplicationInsights.TelemetryContext = TelemetryContext; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var Data = (function (_super) { + __extends(Data, _super); + function Data() { + _super.call(this); + } + return Data; + })(Microsoft.Telemetry.Base); + Telemetry.Data = Data; + })(Telemetry = Microsoft.Telemetry || (Microsoft.Telemetry = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + var Common; + (function (Common) { + "use strict"; + var Data = (function (_super) { + __extends(Data, _super); + function Data(type, data) { + _super.call(this); + this.aiDataContract = { + baseType: ApplicationInsights.FieldType.Required, + baseData: ApplicationInsights.FieldType.Required + }; + this.baseType = type; + this.baseData = data; + } + return Data; + })(Microsoft.Telemetry.Data); + Common.Data = Data; + })(Common = Telemetry.Common || (Telemetry.Common = {})); + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageViewManager = (function () { + function PageViewManager(appInsights, overridePageViewDuration) { + this.pageViewPerformanceSent = false; + this.overridePageViewDuration = false; + this.overridePageViewDuration = overridePageViewDuration; + this.appInsights = appInsights; + } + PageViewManager.prototype.trackPageView = function (name, url, properties, measurements, duration) { + var _this = this; + if (typeof name !== "string") { + name = window.document && window.document.title || ""; + } + if (typeof url !== "string") { + url = window.location && window.location.href || ""; + } + var pageViewSent = false; + var customDuration = 0; + if (Telemetry.PageViewPerformance.isPerformanceTimingSupported()) { + var start = Telemetry.PageViewPerformance.getPerformanceTiming().navigationStart; + customDuration = Telemetry.PageViewPerformance.getDuration(start, +new Date); + } + else { + this.appInsights.sendPageViewInternal(name, url, !isNaN(duration) ? duration : 0, properties, measurements); + this.appInsights.flush(); + pageViewSent = true; + } + if (this.overridePageViewDuration || !isNaN(duration)) { + this.appInsights.sendPageViewInternal(name, url, !isNaN(duration) ? duration : customDuration, properties, measurements); + this.appInsights.flush(); + pageViewSent = true; + } + var maxDurationLimit = 60000; + if (!Telemetry.PageViewPerformance.isPerformanceTimingSupported()) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_NavigationTimingNotSupported, "trackPageView: navigation timing API used for calculation of page duration is not supported in this browser. This page view will be collected without duration and timing info.")); + return; + } + var handle = setInterval(function () { + try { + if (Telemetry.PageViewPerformance.isPerformanceTimingDataReady()) { + clearInterval(handle); + var pageViewPerformance = new Telemetry.PageViewPerformance(name, url, null, properties, measurements); + if (!pageViewPerformance.getIsValid() && !pageViewSent) { + _this.appInsights.sendPageViewInternal(name, url, customDuration, properties, measurements); + _this.appInsights.flush(); + } + else { + if (!pageViewSent) { + _this.appInsights.sendPageViewInternal(name, url, pageViewPerformance.getDurationMs(), properties, measurements); + } + if (!_this.pageViewPerformanceSent) { + _this.appInsights.sendPageViewPerformanceInternal(pageViewPerformance); + _this.pageViewPerformanceSent = true; + } + _this.appInsights.flush(); + } + } + else if (Telemetry.PageViewPerformance.getDuration(start, +new Date) > maxDurationLimit) { + clearInterval(handle); + if (!pageViewSent) { + _this.appInsights.sendPageViewInternal(name, url, maxDurationLimit, properties, measurements); + _this.appInsights.flush(); + } + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackPVFailedCalc, "trackPageView failed on page load calculation: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }, 100); + }; + return PageViewManager; + })(); + Telemetry.PageViewManager = PageViewManager; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var PageVisitTimeManager = (function () { + function PageVisitTimeManager(pageVisitTimeTrackingHandler) { + this.prevPageVisitDataKeyName = "prevPageVisitData"; + this.pageVisitTimeTrackingHandler = pageVisitTimeTrackingHandler; + } + PageVisitTimeManager.prototype.trackPreviousPageVisit = function (currentPageName, currentPageUrl) { + try { + var prevPageVisitTimeData = this.restartPageVisitTimer(currentPageName, currentPageUrl); + if (prevPageVisitTimeData) { + this.pageVisitTimeTrackingHandler(prevPageVisitTimeData.pageName, prevPageVisitTimeData.pageUrl, prevPageVisitTimeData.pageVisitTime); + } + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Auto track page visit time failed, metric will not be collected: " + ApplicationInsights.Util.dump(e)); + } + }; + PageVisitTimeManager.prototype.restartPageVisitTimer = function (pageName, pageUrl) { + try { + var prevPageVisitData = this.stopPageVisitTimer(); + this.startPageVisitTimer(pageName, pageUrl); + return prevPageVisitData; + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Call to restart failed: " + ApplicationInsights.Util.dump(e)); + return null; + } + }; + PageVisitTimeManager.prototype.startPageVisitTimer = function (pageName, pageUrl) { + try { + if (ApplicationInsights.Util.canUseSessionStorage()) { + if (ApplicationInsights.Util.getSessionStorage(this.prevPageVisitDataKeyName) != null) { + throw new Error("Cannot call startPageVisit consecutively without first calling stopPageVisit"); + } + var currPageVisitData = new PageVisitData(pageName, pageUrl); + var currPageVisitDataStr = JSON.stringify(currPageVisitData); + ApplicationInsights.Util.setSessionStorage(this.prevPageVisitDataKeyName, currPageVisitDataStr); + } + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Call to start failed: " + ApplicationInsights.Util.dump(e)); + } + }; + PageVisitTimeManager.prototype.stopPageVisitTimer = function () { + try { + if (ApplicationInsights.Util.canUseSessionStorage()) { + var pageVisitEndTime = Date.now(); + var pageVisitDataJsonStr = ApplicationInsights.Util.getSessionStorage(this.prevPageVisitDataKeyName); + if (pageVisitDataJsonStr) { + var prevPageVisitData = JSON.parse(pageVisitDataJsonStr); + prevPageVisitData.pageVisitTime = pageVisitEndTime - prevPageVisitData.pageVisitStartTime; + ApplicationInsights.Util.removeSessionStorage(this.prevPageVisitDataKeyName); + return prevPageVisitData; + } + else { + return null; + } + } + return null; + } + catch (e) { + ApplicationInsights._InternalLogging.warnToConsole("Stop page visit timer failed: " + ApplicationInsights.Util.dump(e)); + return null; + } + }; + return PageVisitTimeManager; + })(); + Telemetry.PageVisitTimeManager = PageVisitTimeManager; + var PageVisitData = (function () { + function PageVisitData(pageName, pageUrl) { + this.pageVisitStartTime = Date.now(); + this.pageName = pageName; + this.pageUrl = pageUrl; + } + return PageVisitData; + })(); + Telemetry.PageVisitData = PageVisitData; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var AI; +(function (AI) { + "use strict"; + (function (DependencyKind) { + DependencyKind[DependencyKind["SQL"] = 0] = "SQL"; + DependencyKind[DependencyKind["Http"] = 1] = "Http"; + DependencyKind[DependencyKind["Other"] = 2] = "Other"; + })(AI.DependencyKind || (AI.DependencyKind = {})); + var DependencyKind = AI.DependencyKind; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + (function (DependencySourceType) { + DependencySourceType[DependencySourceType["Undefined"] = 0] = "Undefined"; + DependencySourceType[DependencySourceType["Aic"] = 1] = "Aic"; + DependencySourceType[DependencySourceType["Apmc"] = 2] = "Apmc"; + })(AI.DependencySourceType || (AI.DependencySourceType = {})); + var DependencySourceType = AI.DependencySourceType; +})(AI || (AI = {})); +/// +/// +/// +/// +var AI; +(function (AI) { + "use strict"; + var RemoteDependencyData = (function (_super) { + __extends(RemoteDependencyData, _super); + function RemoteDependencyData() { + _super.call(this); + this.ver = 2; + this.kind = AI.DataPointType.Aggregation; + this.dependencyKind = AI.DependencyKind.Other; + this.success = true; + this.dependencySource = AI.DependencySourceType.Apmc; + this.properties = {}; + _super.call(this); + } + return RemoteDependencyData; + })(Microsoft.Telemetry.Domain); + AI.RemoteDependencyData = RemoteDependencyData; +})(AI || (AI = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + var Telemetry; + (function (Telemetry) { + "use strict"; + var RemoteDependencyData = (function (_super) { + __extends(RemoteDependencyData, _super); + function RemoteDependencyData(id, absoluteUrl, commandName, value, success, resultCode, method) { + _super.call(this); + this.aiDataContract = { + id: ApplicationInsights.FieldType.Required, + ver: ApplicationInsights.FieldType.Required, + name: ApplicationInsights.FieldType.Default, + kind: ApplicationInsights.FieldType.Required, + value: ApplicationInsights.FieldType.Default, + count: ApplicationInsights.FieldType.Default, + min: ApplicationInsights.FieldType.Default, + max: ApplicationInsights.FieldType.Default, + stdDev: ApplicationInsights.FieldType.Default, + dependencyKind: ApplicationInsights.FieldType.Default, + success: ApplicationInsights.FieldType.Default, + async: ApplicationInsights.FieldType.Default, + dependencySource: ApplicationInsights.FieldType.Default, + commandName: ApplicationInsights.FieldType.Default, + dependencyTypeName: ApplicationInsights.FieldType.Default, + properties: ApplicationInsights.FieldType.Default, + resultCode: ApplicationInsights.FieldType.Default + }; + this.id = id; + this.name = this.formatDependencyName(method, absoluteUrl); + this.commandName = Telemetry.Common.DataSanitizer.sanitizeUrl(commandName); + this.value = value; + this.success = success; + this.resultCode = resultCode + ""; + this.dependencyKind = AI.DependencyKind.Http; + this.dependencyTypeName = "Ajax"; + } + RemoteDependencyData.prototype.formatDependencyName = function (method, absoluteUrl) { + if (method) { + return method.toUpperCase() + " " + absoluteUrl; + } + else { + return absoluteUrl; + } + }; + RemoteDependencyData.envelopeType = "Microsoft.ApplicationInsights.{0}.RemoteDependency"; + RemoteDependencyData.dataType = "RemoteDependencyData"; + return RemoteDependencyData; + })(AI.RemoteDependencyData); + Telemetry.RemoteDependencyData = RemoteDependencyData; + })(Telemetry = ApplicationInsights.Telemetry || (ApplicationInsights.Telemetry = {})); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + ApplicationInsights.Version = "0.22.19"; + var AppInsights = (function () { + function AppInsights(config) { + var _this = this; + this._trackAjaxAttempts = 0; + this.config = config || {}; + var defaults = AppInsights.defaultConfig; + if (defaults !== undefined) { + for (var field in defaults) { + if (this.config[field] === undefined) { + this.config[field] = defaults[field]; + } + } + } + ApplicationInsights._InternalLogging.verboseLogging = function () { return _this.config.verboseLogging; }; + ApplicationInsights._InternalLogging.enableDebugExceptions = function () { return _this.config.enableDebug; }; + var configGetters = { + instrumentationKey: function () { return _this.config.instrumentationKey; }, + accountId: function () { return _this.config.accountId; }, + sessionRenewalMs: function () { return _this.config.sessionRenewalMs; }, + sessionExpirationMs: function () { return _this.config.sessionExpirationMs; }, + endpointUrl: function () { return _this.config.endpointUrl; }, + emitLineDelimitedJson: function () { return _this.config.emitLineDelimitedJson; }, + maxBatchSizeInBytes: function () { return _this.config.maxBatchSizeInBytes; }, + maxBatchInterval: function () { return _this.config.maxBatchInterval; }, + disableTelemetry: function () { return _this.config.disableTelemetry; }, + sampleRate: function () { return _this.config.samplingPercentage; }, + cookieDomain: function () { return _this.config.cookieDomain; }, + enableSessionStorageBuffer: function () { return _this.config.enableSessionStorageBuffer; } + }; + var enableExperiment = new ApplicationInsights.SplitTest().isEnabled(this.config.instrumentationKey, 5); + this.config.enableSessionStorageBuffer = enableExperiment; + this.context = new ApplicationInsights.TelemetryContext(configGetters); + ApplicationInsights.DataLossAnalyzer.appInsights = this; + ApplicationInsights.DataLossAnalyzer.enabled = enableExperiment; + ApplicationInsights.DataLossAnalyzer.reportLostItems(); + this._pageViewManager = new Microsoft.ApplicationInsights.Telemetry.PageViewManager(this, this.config.overridePageViewDuration); + this._eventTracking = new Timing("trackEvent"); + this._eventTracking.action = function (name, url, duration, properties, measurements) { + if (!measurements) { + measurements = { duration: duration }; + } + else { + if (isNaN(measurements["duration"])) { + measurements["duration"] = duration; + } + } + var event = new ApplicationInsights.Telemetry.Event(name, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Event.dataType, event); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Event.envelopeType); + _this.context.track(envelope); + }; + this._pageTracking = new Timing("trackPageView"); + this._pageTracking.action = function (name, url, duration, properties, measurements) { + _this.sendPageViewInternal(name, url, duration, properties, measurements); + }; + this._pageVisitTimeManager = new ApplicationInsights.Telemetry.PageVisitTimeManager(function (pageName, pageUrl, pageVisitTime) { return _this.trackPageVisitTime(pageName, pageUrl, pageVisitTime); }); + if (!this.config.disableAjaxTracking) { + new Microsoft.ApplicationInsights.AjaxMonitor(this); + } + } + AppInsights.prototype.sendPageViewInternal = function (name, url, duration, properties, measurements) { + var pageView = new ApplicationInsights.Telemetry.PageView(name, url, duration, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.PageView.dataType, pageView); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.PageView.envelopeType); + this.context.track(envelope); + this._trackAjaxAttempts = 0; + }; + AppInsights.prototype.sendPageViewPerformanceInternal = function (pageViewPerformance) { + var pageViewPerformanceData = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.PageViewPerformance.dataType, pageViewPerformance); + var pageViewPerformanceEnvelope = new ApplicationInsights.Telemetry.Common.Envelope(pageViewPerformanceData, ApplicationInsights.Telemetry.PageViewPerformance.envelopeType); + this.context.track(pageViewPerformanceEnvelope); + }; + AppInsights.prototype.startTrackPage = function (name) { + try { + if (typeof name !== "string") { + name = window.document && window.document.title || ""; + } + this._pageTracking.start(name); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StartTrackFailed, "startTrackPage failed, page view may not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.stopTrackPage = function (name, url, properties, measurements) { + try { + if (typeof name !== "string") { + name = window.document && window.document.title || ""; + } + if (typeof url !== "string") { + url = window.location && window.location.href || ""; + } + this._pageTracking.stop(name, url, properties, measurements); + if (this.config.autoTrackPageVisitTime) { + this._pageVisitTimeManager.trackPreviousPageVisit(name, url); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StopTrackFailed, "stopTrackPage failed, page view will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackPageView = function (name, url, properties, measurements, duration) { + try { + this._pageViewManager.trackPageView(name, url, properties, measurements, duration); + if (this.config.autoTrackPageVisitTime) { + this._pageVisitTimeManager.trackPreviousPageVisit(name, url); + } + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackPVFailed, "trackPageView failed, page view will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.startTrackEvent = function (name) { + try { + this._eventTracking.start(name); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StartTrackEventFailed, "startTrackEvent failed, event will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.stopTrackEvent = function (name, properties, measurements) { + try { + this._eventTracking.stop(name, undefined, properties, measurements); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_StopTrackEventFailed, "stopTrackEvent failed, event will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackEvent = function (name, properties, measurements) { + try { + var eventTelemetry = new ApplicationInsights.Telemetry.Event(name, properties, measurements); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Event.dataType, eventTelemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Event.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackEventFailed, "trackEvent failed, event will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackAjax = function (id, absoluteUrl, pathName, totalTime, success, resultCode, method) { + if (this.config.maxAjaxCallsPerView === -1 || + this._trackAjaxAttempts < this.config.maxAjaxCallsPerView) { + var dependency = new ApplicationInsights.Telemetry.RemoteDependencyData(id, absoluteUrl, pathName, totalTime, success, resultCode, method); + var dependencyData = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.RemoteDependencyData.dataType, dependency); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(dependencyData, ApplicationInsights.Telemetry.RemoteDependencyData.envelopeType); + this.context.track(envelope); + } + else if (this._trackAjaxAttempts === this.config.maxAjaxCallsPerView) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_MaxAjaxPerPVExceeded, "Maximum ajax per page view limit reached, ajax monitoring is paused until the next trackPageView(). In order to increase the limit set the maxAjaxCallsPerView configuration parameter.")); + } + ++this._trackAjaxAttempts; + }; + AppInsights.prototype.trackException = function (exception, handledAt, properties, measurements, severityLevel) { + try { + if (!ApplicationInsights.Util.isError(exception)) { + try { + throw new Error(exception); + } + catch (error) { + exception = error; + } + } + var exceptionTelemetry = new ApplicationInsights.Telemetry.Exception(exception, handledAt, properties, measurements, severityLevel); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Exception.dataType, exceptionTelemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Exception.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackExceptionFailed, "trackException failed, exception will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackMetric = function (name, average, sampleCount, min, max, properties) { + try { + var telemetry = new ApplicationInsights.Telemetry.Metric(name, average, sampleCount, min, max, properties); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Metric.dataType, telemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Metric.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackMetricFailed, "trackMetric failed, metric will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackTrace = function (message, properties) { + try { + var telemetry = new ApplicationInsights.Telemetry.Trace(message, properties); + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Trace.dataType, telemetry); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Trace.envelopeType); + this.context.track(envelope); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_TrackTraceFailed, "trackTrace failed, trace will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.trackPageVisitTime = function (pageName, pageUrl, pageVisitTime) { + var properties = { PageName: pageName, PageUrl: pageUrl }; + this.trackMetric("PageVisitTime", pageVisitTime, 1, pageVisitTime, pageVisitTime, properties); + }; + AppInsights.prototype.flush = function () { + try { + this.context._sender.triggerSend(); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FlushFailed, "flush failed, telemetry will not be collected: " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.setAuthenticatedUserContext = function (authenticatedUserId, accountId) { + try { + this.context.user.setAuthenticatedUserContext(authenticatedUserId, accountId); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SetAuthContextFailed, "Setting auth user context failed. " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.clearAuthenticatedUserContext = function () { + try { + this.context.user.clearAuthenticatedUserContext(); + } + catch (e) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_SetAuthContextFailed, "Clearing auth user context failed. " + ApplicationInsights.Util.getExceptionName(e), { exception: ApplicationInsights.Util.dump(e) })); + } + }; + AppInsights.prototype.SendCORSException = function (properties) { + var exceptionData = Microsoft.ApplicationInsights.Telemetry.Exception.CreateSimpleException("Script error.", "Error", "unknown", "unknown", "The browser's same-origin policy prevents us from getting the details of this exception.The exception occurred in a script loaded from an origin different than the web page.For cross- domain error reporting you can use crossorigin attribute together with appropriate CORS HTTP headers.For more information please see http://www.w3.org/TR/cors/.", 0, null); + exceptionData.properties = properties; + var data = new ApplicationInsights.Telemetry.Common.Data(ApplicationInsights.Telemetry.Exception.dataType, exceptionData); + var envelope = new ApplicationInsights.Telemetry.Common.Envelope(data, ApplicationInsights.Telemetry.Exception.envelopeType); + this.context.track(envelope); + }; + AppInsights.prototype._onerror = function (message, url, lineNumber, columnNumber, error) { + try { + var properties = { url: url ? url : document.URL }; + if (ApplicationInsights.Util.isCrossOriginError(message, url, lineNumber, columnNumber, error)) { + this.SendCORSException(properties); + } + else { + if (!ApplicationInsights.Util.isError(error)) { + var stack = "window.onerror@" + properties.url + ":" + lineNumber + ":" + (columnNumber || 0); + error = new Error(message); + error["stack"] = stack; + } + this.trackException(error, null, properties); + } + } + catch (exception) { + var errorString = error ? (error.name + ", " + error.message) : "null"; + var exceptionDump = ApplicationInsights.Util.dump(exception); + ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_ExceptionWhileLoggingError, "_onerror threw exception while logging error, error will not be collected: " + ApplicationInsights.Util.getExceptionName(exception), { exception: exceptionDump, errorString: errorString })); + } + }; + return AppInsights; + })(); + ApplicationInsights.AppInsights = AppInsights; + var Timing = (function () { + function Timing(name) { + this._name = name; + this._events = {}; + } + Timing.prototype.start = function (name) { + if (typeof this._events[name] !== "undefined") { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_StartCalledMoreThanOnce, "start was called more than once for this event without calling stop.", { name: this._name, key: name })); + } + this._events[name] = +new Date; + }; + Timing.prototype.stop = function (name, url, properties, measurements) { + var start = this._events[name]; + if (isNaN(start)) { + ApplicationInsights._InternalLogging.throwInternalUserActionable(ApplicationInsights.LoggingSeverity.WARNING, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.USRACT_StopCalledWithoutStart, "stop was called without a corresponding start.", { name: this._name, key: name })); + } + else { + var end = +new Date; + var duration = ApplicationInsights.Telemetry.PageViewPerformance.getDuration(start, end); + this.action(name, url, duration, properties, measurements); + } + delete this._events[name]; + this._events[name] = undefined; + }; + return Timing; + })(); + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + var Initialization = (function () { + function Initialization(snippet) { + snippet.queue = snippet.queue || []; + var config = snippet.config || {}; + if (config && !config.instrumentationKey) { + config = snippet; + if (config["iKey"]) { + Microsoft.ApplicationInsights.Version = "0.10.0.0"; + config.instrumentationKey = config["iKey"]; + } + else if (config["applicationInsightsId"]) { + Microsoft.ApplicationInsights.Version = "0.7.2.0"; + config.instrumentationKey = config["applicationInsightsId"]; + } + else { + throw new Error("Cannot load Application Insights SDK, no instrumentationKey was provided."); + } + } + config = Initialization.getDefaultConfig(config); + this.snippet = snippet; + this.config = config; + } + Initialization.prototype.loadAppInsights = function () { + var appInsights = new Microsoft.ApplicationInsights.AppInsights(this.config); + if (this.config["iKey"]) { + var originalTrackPageView = appInsights.trackPageView; + appInsights.trackPageView = function (pagePath, properties, measurements) { + originalTrackPageView.apply(appInsights, [null, pagePath, properties, measurements]); + }; + } + var legacyPageView = "logPageView"; + if (typeof this.snippet[legacyPageView] === "function") { + appInsights[legacyPageView] = function (pagePath, properties, measurements) { + appInsights.trackPageView(null, pagePath, properties, measurements); + }; + } + var legacyEvent = "logEvent"; + if (typeof this.snippet[legacyEvent] === "function") { + appInsights[legacyEvent] = function (name, properties, measurements) { + appInsights.trackEvent(name, properties, measurements); + }; + } + return appInsights; + }; + Initialization.prototype.emptyQueue = function () { + try { + if (Microsoft.ApplicationInsights.Util.isArray(this.snippet.queue)) { + var length = this.snippet.queue.length; + for (var i = 0; i < length; i++) { + var call = this.snippet.queue[i]; + call(); + } + this.snippet.queue = undefined; + delete this.snippet.queue; + } + } + catch (exception) { + var properties = {}; + if (exception && typeof exception.toString === "function") { + properties.exception = exception.toString(); + } + var message = new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedToSendQueuedTelemetry, "Failed to send queued telemetry", properties); + Microsoft.ApplicationInsights._InternalLogging.throwInternalNonUserActionable(ApplicationInsights.LoggingSeverity.WARNING, message); + } + }; + Initialization.prototype.pollInteralLogs = function (appInsightsInstance) { + return setInterval(function () { + var queue = Microsoft.ApplicationInsights._InternalLogging.queue; + var length = queue.length; + for (var i = 0; i < length; i++) { + appInsightsInstance.trackTrace(queue[i].message); + } + queue.length = 0; + }, this.config.diagnosticLogInterval); + }; + Initialization.prototype.addHousekeepingBeforeUnload = function (appInsightsInstance) { + // Add callback to push events when the user navigates away + if (!appInsightsInstance.config.disableFlushOnBeforeUnload && ('onbeforeunload' in window)) { + var performHousekeeping = function () { + appInsightsInstance.context._sender.triggerSend(); + appInsightsInstance.context._sessionManager.backup(); + }; + if (!Microsoft.ApplicationInsights.Util.addEventHandler('beforeunload', performHousekeeping)) { + Microsoft.ApplicationInsights._InternalLogging.throwInternalNonUserActionable(Microsoft.ApplicationInsights.LoggingSeverity.CRITICAL, new ApplicationInsights._InternalLogMessage(ApplicationInsights._InternalMessageId.NONUSRACT_FailedToAddHandlerForOnBeforeUnload, 'Could not add handler for beforeunload')); + } + } + }; + Initialization.getDefaultConfig = function (config) { + if (!config) { + config = {}; + } + config.endpointUrl = config.endpointUrl || "//dc.services.visualstudio.com/v2/track"; + config.sessionRenewalMs = 30 * 60 * 1000; + config.sessionExpirationMs = 24 * 60 * 60 * 1000; + config.maxBatchSizeInBytes = config.maxBatchSizeInBytes > 0 ? config.maxBatchSizeInBytes : 1000000; + config.maxBatchInterval = !isNaN(config.maxBatchInterval) ? config.maxBatchInterval : 15000; + config.enableDebug = ApplicationInsights.Util.stringToBoolOrDefault(config.enableDebug); + config.disableExceptionTracking = (config.disableExceptionTracking !== undefined && config.disableExceptionTracking !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableExceptionTracking) : + false; + config.disableTelemetry = ApplicationInsights.Util.stringToBoolOrDefault(config.disableTelemetry); + config.verboseLogging = ApplicationInsights.Util.stringToBoolOrDefault(config.verboseLogging); + config.emitLineDelimitedJson = ApplicationInsights.Util.stringToBoolOrDefault(config.emitLineDelimitedJson); + config.diagnosticLogInterval = config.diagnosticLogInterval || 10000; + config.autoTrackPageVisitTime = ApplicationInsights.Util.stringToBoolOrDefault(config.autoTrackPageVisitTime); + if (isNaN(config.samplingPercentage) || config.samplingPercentage <= 0 || config.samplingPercentage >= 100) { + config.samplingPercentage = 100; + } + config.disableAjaxTracking = (config.disableAjaxTracking !== undefined && config.disableAjaxTracking !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableAjaxTracking) : + false; + config.maxAjaxCallsPerView = !isNaN(config.maxAjaxCallsPerView) ? config.maxAjaxCallsPerView : 500; + config.disableCorrelationHeaders = (config.disableCorrelationHeaders !== undefined && config.disableCorrelationHeaders !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableCorrelationHeaders) : + true; + config.disableFlushOnBeforeUnload = (config.disableFlushOnBeforeUnload !== undefined && config.disableFlushOnBeforeUnload !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.disableFlushOnBeforeUnload) : + false; + config.enableSessionStorageBuffer = (config.enableSessionStorageBuffer !== undefined && config.enableSessionStorageBuffer !== null) ? + ApplicationInsights.Util.stringToBoolOrDefault(config.enableSessionStorageBuffer) : + false; + return config; + }; + return Initialization; + })(); + ApplicationInsights.Initialization = Initialization; + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var Microsoft; +(function (Microsoft) { + var ApplicationInsights; + (function (ApplicationInsights) { + "use strict"; + try { + if (typeof window !== "undefined" && typeof JSON !== "undefined") { + var aiName = "appInsights"; + if (window[aiName] === undefined) { + Microsoft.ApplicationInsights.AppInsights.defaultConfig = Microsoft.ApplicationInsights.Initialization.getDefaultConfig(); + } + else { + var snippet = window[aiName] || {}; + var init = new Microsoft.ApplicationInsights.Initialization(snippet); + var appInsightsLocal = init.loadAppInsights(); + for (var field in appInsightsLocal) { + snippet[field] = appInsightsLocal[field]; + } + init.emptyQueue(); + init.pollInteralLogs(appInsightsLocal); + init.addHousekeepingBeforeUnload(appInsightsLocal); + } + } + } + catch (e) { + Microsoft.ApplicationInsights._InternalLogging.warnToConsole('Failed to initialize AppInsights JS SDK: ' + e.message); + } + })(ApplicationInsights = Microsoft.ApplicationInsights || (Microsoft.ApplicationInsights = {})); +})(Microsoft || (Microsoft = {})); +/// +var AI; +(function (AI) { + "use strict"; + var AjaxCallData = (function (_super) { + __extends(AjaxCallData, _super); + function AjaxCallData() { + _super.call(this); + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return AjaxCallData; + })(AI.PageViewData); + AI.AjaxCallData = AjaxCallData; +})(AI || (AI = {})); +/// +var AI; +(function (AI) { + "use strict"; + var RequestData = (function (_super) { + __extends(RequestData, _super); + function RequestData() { + _super.call(this); + this.ver = 2; + this.properties = {}; + this.measurements = {}; + _super.call(this); + } + return RequestData; + })(Microsoft.Telemetry.Domain); + AI.RequestData = RequestData; +})(AI || (AI = {})); +/// +/// +var AI; +(function (AI) { + "use strict"; + var SessionStateData = (function (_super) { + __extends(SessionStateData, _super); + function SessionStateData() { + _super.call(this); + this.ver = 2; + this.state = AI.SessionState.Start; + _super.call(this); + } + return SessionStateData; + })(Microsoft.Telemetry.Domain); + AI.SessionStateData = SessionStateData; +})(AI || (AI = {})); +var AI; +(function (AI) { + "use strict"; + (function (TestResult) { + TestResult[TestResult["Pass"] = 0] = "Pass"; + TestResult[TestResult["Fail"] = 1] = "Fail"; + })(AI.TestResult || (AI.TestResult = {})); + var TestResult = AI.TestResult; +})(AI || (AI = {})); diff --git a/CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.min.js b/CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.min.js new file mode 100644 index 0000000000..88b4ac92d0 --- /dev/null +++ b/CSharp/core-AppInsights/scripts/ai.0.22.19-build00125.min.js @@ -0,0 +1 @@ +var __extends,Microsoft,AI;(function(n){var t;(function(n){var r,t,i,u;(function(n){n[n.CRITICAL=0]="CRITICAL";n[n.WARNING=1]="WARNING"})(n.LoggingSeverity||(n.LoggingSeverity={}));r=n.LoggingSeverity,function(n){n[n.NONUSRACT_BrowserDoesNotSupportLocalStorage=0]="NONUSRACT_BrowserDoesNotSupportLocalStorage";n[n.NONUSRACT_BrowserCannotReadLocalStorage=1]="NONUSRACT_BrowserCannotReadLocalStorage";n[n.NONUSRACT_BrowserCannotReadSessionStorage=2]="NONUSRACT_BrowserCannotReadSessionStorage";n[n.NONUSRACT_BrowserCannotWriteLocalStorage=3]="NONUSRACT_BrowserCannotWriteLocalStorage";n[n.NONUSRACT_BrowserCannotWriteSessionStorage=4]="NONUSRACT_BrowserCannotWriteSessionStorage";n[n.NONUSRACT_BrowserFailedRemovalFromLocalStorage=5]="NONUSRACT_BrowserFailedRemovalFromLocalStorage";n[n.NONUSRACT_BrowserFailedRemovalFromSessionStorage=6]="NONUSRACT_BrowserFailedRemovalFromSessionStorage";n[n.NONUSRACT_CannotSendEmptyTelemetry=7]="NONUSRACT_CannotSendEmptyTelemetry";n[n.NONUSRACT_ClientPerformanceMathError=8]="NONUSRACT_ClientPerformanceMathError";n[n.NONUSRACT_ErrorParsingAISessionCookie=9]="NONUSRACT_ErrorParsingAISessionCookie";n[n.NONUSRACT_ErrorPVCalc=10]="NONUSRACT_ErrorPVCalc";n[n.NONUSRACT_ExceptionWhileLoggingError=11]="NONUSRACT_ExceptionWhileLoggingError";n[n.NONUSRACT_FailedAddingTelemetryToBuffer=12]="NONUSRACT_FailedAddingTelemetryToBuffer";n[n.NONUSRACT_FailedMonitorAjaxAbort=13]="NONUSRACT_FailedMonitorAjaxAbort";n[n.NONUSRACT_FailedMonitorAjaxDur=14]="NONUSRACT_FailedMonitorAjaxDur";n[n.NONUSRACT_FailedMonitorAjaxOpen=15]="NONUSRACT_FailedMonitorAjaxOpen";n[n.NONUSRACT_FailedMonitorAjaxRSC=16]="NONUSRACT_FailedMonitorAjaxRSC";n[n.NONUSRACT_FailedMonitorAjaxSend=17]="NONUSRACT_FailedMonitorAjaxSend";n[n.NONUSRACT_FailedToAddHandlerForOnBeforeUnload=18]="NONUSRACT_FailedToAddHandlerForOnBeforeUnload";n[n.NONUSRACT_FailedToSendQueuedTelemetry=19]="NONUSRACT_FailedToSendQueuedTelemetry";n[n.NONUSRACT_FailedToReportDataLoss=20]="NONUSRACT_FailedToReportDataLoss";n[n.NONUSRACT_FlushFailed=21]="NONUSRACT_FlushFailed";n[n.NONUSRACT_MessageLimitPerPVExceeded=22]="NONUSRACT_MessageLimitPerPVExceeded";n[n.NONUSRACT_MissingRequiredFieldSpecification=23]="NONUSRACT_MissingRequiredFieldSpecification";n[n.NONUSRACT_NavigationTimingNotSupported=24]="NONUSRACT_NavigationTimingNotSupported";n[n.NONUSRACT_OnError=25]="NONUSRACT_OnError";n[n.NONUSRACT_SessionRenewalDateIsZero=26]="NONUSRACT_SessionRenewalDateIsZero";n[n.NONUSRACT_SenderNotInitialized=27]="NONUSRACT_SenderNotInitialized";n[n.NONUSRACT_StartTrackEventFailed=28]="NONUSRACT_StartTrackEventFailed";n[n.NONUSRACT_StopTrackEventFailed=29]="NONUSRACT_StopTrackEventFailed";n[n.NONUSRACT_StartTrackFailed=30]="NONUSRACT_StartTrackFailed";n[n.NONUSRACT_StopTrackFailed=31]="NONUSRACT_StopTrackFailed";n[n.NONUSRACT_TelemetrySampledAndNotSent=32]="NONUSRACT_TelemetrySampledAndNotSent";n[n.NONUSRACT_TrackEventFailed=33]="NONUSRACT_TrackEventFailed";n[n.NONUSRACT_TrackExceptionFailed=34]="NONUSRACT_TrackExceptionFailed";n[n.NONUSRACT_TrackMetricFailed=35]="NONUSRACT_TrackMetricFailed";n[n.NONUSRACT_TrackPVFailed=36]="NONUSRACT_TrackPVFailed";n[n.NONUSRACT_TrackPVFailedCalc=37]="NONUSRACT_TrackPVFailedCalc";n[n.NONUSRACT_TrackTraceFailed=38]="NONUSRACT_TrackTraceFailed";n[n.NONUSRACT_TransmissionFailed=39]="NONUSRACT_TransmissionFailed";n[n.NONUSRACT_FailToSetStorageBuffer=40]="NONUSRACT_FailToSetStorageBuffer";n[n.NONUSRACT_FailToRestoreStorageBuffer=41]="NONUSRACT_FailToRestoreStorageBuffer";n[n.USRACT_CannotSerializeObject=42]="USRACT_CannotSerializeObject";n[n.USRACT_CannotSerializeObjectNonSerializable=43]="USRACT_CannotSerializeObjectNonSerializable";n[n.USRACT_CircularReferenceDetected=44]="USRACT_CircularReferenceDetected";n[n.USRACT_ClearAuthContextFailed=45]="USRACT_ClearAuthContextFailed";n[n.USRACT_ExceptionTruncated=46]="USRACT_ExceptionTruncated";n[n.USRACT_IllegalCharsInName=47]="USRACT_IllegalCharsInName";n[n.USRACT_ItemNotInArray=48]="USRACT_ItemNotInArray";n[n.USRACT_MaxAjaxPerPVExceeded=49]="USRACT_MaxAjaxPerPVExceeded";n[n.USRACT_MessageTruncated=50]="USRACT_MessageTruncated";n[n.USRACT_NameTooLong=51]="USRACT_NameTooLong";n[n.USRACT_SampleRateOutOfRange=52]="USRACT_SampleRateOutOfRange";n[n.USRACT_SetAuthContextFailed=53]="USRACT_SetAuthContextFailed";n[n.USRACT_SetAuthContextFailedAccountName=54]="USRACT_SetAuthContextFailedAccountName";n[n.USRACT_StringValueTooLong=55]="USRACT_StringValueTooLong";n[n.USRACT_StartCalledMoreThanOnce=56]="USRACT_StartCalledMoreThanOnce";n[n.USRACT_StopCalledWithoutStart=57]="USRACT_StopCalledWithoutStart";n[n.USRACT_TelemetryInitializerFailed=58]="USRACT_TelemetryInitializerFailed";n[n.USRACT_TrackArgumentsNotSpecified=59]="USRACT_TrackArgumentsNotSpecified";n[n.USRACT_UrlTooLong=60]="USRACT_UrlTooLong"}(n._InternalMessageId||(n._InternalMessageId={}));t=n._InternalMessageId;i=function(){function n(i,r,u){this.message=t[i].toString();this.messageId=i;var f=(r?" message:"+n.sanitizeDiagnosticText(r):"")+(u?" props:"+n.sanitizeDiagnosticText(JSON.stringify(u)):"");this.message+=f}return n.sanitizeDiagnosticText=function(n){return'"'+n.replace(/\"/g,"")+'"'},n}();n._InternalLogMessage=i;u=function(){function u(){}return u.throwInternalNonUserActionable=function(n,t){if(this.enableDebugExceptions())throw t;else typeof t=="undefined"||!t||typeof t.message!="undefined"&&(t.message=this.AiNonUserActionablePrefix+t.message,this.verboseLogging()&&this.warnToConsole(t.message),this.logInternalMessage(n,t))},u.throwInternalUserActionable=function(n,t){if(this.enableDebugExceptions())throw t;else typeof t=="undefined"||!t||typeof t.message!="undefined"&&(t.message=this.AiUserActionablePrefix+t.message,this.warnToConsole(t.message),this.logInternalMessage(n,t))},u.warnToConsole=function(n){typeof console=="undefined"||!console||(typeof console.warn=="function"?console.warn(n):typeof console.log=="function"&&console.log(n))},u.resetInternalMessageCount=function(){this._messageCount=0},u.clearInternalMessageLoggedTypes=function(){var i,t;if(n.Util.canUseSessionStorage())for(i=n.Util.getSessionStorageKeys(),t=0;t=this.MAX_INTERNAL_MESSAGE_LIMIT},u.AiUserActionablePrefix="AI: ",u.AIInternalMessagePrefix="AITR_",u.AiNonUserActionablePrefix="AI (Internal): ",u.enableDebugExceptions=function(){return!1},u.verboseLogging=function(){return!1},u.queue=[],u.MAX_INTERNAL_MESSAGE_LIMIT=25,u._messageCount=0,u}();n._InternalLogging=u})(t=n.ApplicationInsights||(n.ApplicationInsights={}))})(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t,i,r;(function(n){n[n.LocalStorage=0]="LocalStorage";n[n.SessionStorage=1]="SessionStorage"})(t||(t={}));i=function(){function i(){}return i._getLocalStorageObject=function(){return i._getVerifiedStorageObject(t.LocalStorage)},i._getVerifiedStorageObject=function(n){var i=null,u,r;try{r=new Date;i=n===t.LocalStorage?window.localStorage:window.sessionStorage;i.setItem(r,r);u=i.getItem(r)!=r;i.removeItem(r);u&&(i=null)}catch(f){i=null}return i},i.canUseLocalStorage=function(){return!!i._getLocalStorageObject()},i.getStorage=function(t){var r=i._getLocalStorageObject(),f;if(r!==null)try{return r.getItem(t)}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotReadLocalStorage,"Browser failed read of local storage. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,f)}return null},i.setStorage=function(t,r){var u=i._getLocalStorageObject(),e;if(u!==null)try{return u.setItem(t,r),!0}catch(f){e=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotWriteLocalStorage,"Browser failed write to local storage. "+i.getExceptionName(f),{exception:i.dump(f)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,e)}return!1},i.removeStorage=function(t){var r=i._getLocalStorageObject(),f;if(r!==null)try{return r.removeItem(t),!0}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromLocalStorage,"Browser failed removal of local storage item. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,f)}return!1},i._getSessionStorageObject=function(){return i._getVerifiedStorageObject(t.SessionStorage)},i.canUseSessionStorage=function(){return!!i._getSessionStorageObject()},i.getSessionStorageKeys=function(){var n=[],t;if(i.canUseSessionStorage())for(t in window.sessionStorage)n.push(t);return n},i.getSessionStorage=function(t){var r=i._getSessionStorageObject(),f;if(r!==null)try{return r.getItem(t)}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotReadSessionStorage,"Browser failed read of session storage. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,f)}return null},i.setSessionStorage=function(t,r){var u=i._getSessionStorageObject(),e;if(u!==null)try{return u.setItem(t,r),!0}catch(f){e=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserCannotWriteSessionStorage,"Browser failed write to session storage. "+i.getExceptionName(f),{exception:i.dump(f)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,e)}return!1},i.removeSessionStorage=function(t){var r=i._getSessionStorageObject(),f;if(r!==null)try{return r.removeItem(t),!0}catch(u){f=new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserFailedRemovalFromSessionStorage,"Browser failed removal of session storage item. "+i.getExceptionName(u),{exception:i.dump(u)});n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,f)}return!1},i.setCookie=function(n,t,r){var u="";r&&(u=";domain="+r);i.document.cookie=n+"="+t+u+";path=/"},i.stringToBoolOrDefault=function(n){return n?n.toString().toLowerCase()==="true":!1},i.getCookie=function(n){var e="",f,u,r,t;if(n&&n.length)for(f=n+"=",u=i.document.cookie.split(";"),r=0;r0;)i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charAt(n%64),t+=i,n=Math.floor(n/64);return t},i.isArray=function(n){return Object.prototype.toString.call(n)==="[object Array]"},i.isError=function(n){return Object.prototype.toString.call(n)==="[object Error]"},i.isDate=function(n){return Object.prototype.toString.call(n)==="[object Date]"},i.toISOStringForIE8=function(n){if(i.isDate(n)){function t(n){var t=String(n);return t.length===1&&(t="0"+t),t}return Date.prototype.toISOString?n.toISOString():n.getUTCFullYear()+"-"+t(n.getUTCMonth()+1)+"-"+t(n.getUTCDate())+"T"+t(n.getUTCHours())+":"+t(n.getUTCMinutes())+":"+t(n.getUTCSeconds())+"."+String((n.getUTCMilliseconds()/1e3).toFixed(3)).slice(2,5)+"Z"}},i.getIEVersion=function(n){n===void 0&&(n=null);var t=n?n.toLowerCase():navigator.userAgent.toLowerCase();return t.indexOf("msie")!=-1?parseInt(t.split("msie")[1]):null},i.msToTimeSpan=function(n){(isNaN(n)||n<0)&&(n=0);var t=""+n%1e3,i=""+Math.floor(n/1e3)%60,r=""+Math.floor(n/6e4)%60,u=""+Math.floor(n/36e5)%24;return t=t.length===1?"00"+t:t.length===2?"0"+t:t,i=i.length<2?"0"+i:i,r=r.length<2?"0"+r:r,u=u.length<2?"0"+u:u,u+":"+r+":"+i+"."+t},i.isCrossOriginError=function(n,t,i,r,u){return(n==="Script error."||n==="Script error")&&u===null},i.dump=function(n){var t=Object.prototype.toString.call(n),i=JSON.stringify(n);return t==="[object Error]"&&(i="{ stack: '"+n.stack+"', message: '"+n.message+"', name: '"+n.name+"'"),t+i},i.getExceptionName=function(n){var t=Object.prototype.toString.call(n);return t==="[object Error]"?n.name:""},i.addEventHandler=function(n,t){if(!window||typeof n!="string"||typeof t!="function")return!1;var i="on"+n;if(window.addEventListener)window.addEventListener(n,t,!1);else if(window.attachEvent)window.attachEvent.call(i,t);else return!1;return!0},i.document=typeof document!="undefined"?document:{},i.NotSpecified="not_specified",i}();n.Util=i;r=function(){function n(){}return n.parseUrl=function(t){return n.htmlAnchorElement||(n.htmlAnchorElement=!n.document.createElement?{}:n.document.createElement("a")),n.htmlAnchorElement.href=t,n.htmlAnchorElement},n.getAbsoluteUrl=function(t){var i,r=n.parseUrl(t);return r&&(i=r.href),i},n.getPathName=function(t){var i,r=n.parseUrl(t);return r&&(i=r.pathname),i},n.document=typeof document!="undefined"?document:{},n}();n.UrlHelper=r})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function n(){}return n.IsNullOrUndefined=function(n){return typeof n=="undefined"||n===null},n}(),i,r,u;n.extensions=t;i=function(){function n(){}return n.GetLength=function(n){var i=0,r;if(!t.IsNullOrUndefined(n)){r="";try{r=n.toString()}catch(u){}i=r.length;i=isNaN(i)?0:i}return i},n}();n.stringUtils=i;r=function(){function n(){}return n.Now=window.performance&&window.performance.now?function(){return performance.now()}:function(){return(new Date).getTime()},n.GetDuration=function(n,i){var r=null;return n===0||i===0||t.IsNullOrUndefined(n)||t.IsNullOrUndefined(i)||(r=i-n),r},n}();n.dateTime=r;u=function(){function n(){}return n.AttachEvent=function(n,i,r){var u=!1;return t.IsNullOrUndefined(n)||(t.IsNullOrUndefined(n.attachEvent)?t.IsNullOrUndefined(n.addEventListener)||(n.addEventListener(i,r,!1),u=!0):(n.attachEvent("on"+i,r),u=!0)),u},n.DetachEvent=function(n,i,r){t.IsNullOrUndefined(n)||(t.IsNullOrUndefined(n.detachEvent)?t.IsNullOrUndefined(n.removeEventListener)||n.removeEventListener(i,r,!1):n.detachEvent("on"+i,r))},n}();n.EventHelper=u})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function n(){this.openDone=!1;this.setRequestHeaderDone=!1;this.sendDone=!1;this.abortDone=!1;this.onreadystatechangeCallbackAttached=!1}return n}(),i;n.XHRMonitoringState=t;i=function(){function i(i){this.completed=!1;this.requestHeadersSize=null;this.ttfb=null;this.responseReceivingDuration=null;this.callbackDuration=null;this.ajaxTotalDuration=null;this.aborted=null;this.pageUrl=null;this.requestUrl=null;this.requestSize=0;this.method=null;this.status=null;this.requestSentTime=null;this.responseStartedTime=null;this.responseFinishedTime=null;this.callbackFinishedTime=null;this.endTime=null;this.originalOnreadystatechage=null;this.xhrMonitoringState=new t;this.clientFailure=0;this.CalculateMetrics=function(){var t=this;t.ajaxTotalDuration=n.dateTime.GetDuration(t.requestSentTime,t.responseFinishedTime)};this.id=i}return i.prototype.getAbsoluteUrl=function(){return this.requestUrl?n.UrlHelper.getAbsoluteUrl(this.requestUrl):null},i.prototype.getPathName=function(){return this.requestUrl?n.UrlHelper.getPathName(this.requestUrl):null},i}();n.ajaxRecord=i})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(t){"use strict";var i=function(){function i(n){this.currentWindowHost=window.location.host;this.appInsights=n;this.initialized=!1;this.Init()}return i.prototype.Init=function(){this.supportsMonitoring()&&(this.instrumentOpen(),this.instrumentSend(),this.instrumentAbort(),this.initialized=!0)},i.prototype.isMonitoredInstance=function(n,r){return this.initialized&&(r===!0||!t.extensions.IsNullOrUndefined(n.ajaxData))&&n[i.DisabledPropertyName]!==!0},i.prototype.supportsMonitoring=function(){var n=!1;return t.extensions.IsNullOrUndefined(XMLHttpRequest)||(n=!0),n},i.prototype.instrumentOpen=function(){var u=XMLHttpRequest.prototype.open,r=this;XMLHttpRequest.prototype.open=function(f,e,o){try{!r.isMonitoredInstance(this,!0)||this.ajaxData&&this.ajaxData.xhrMonitoringState.openDone||r.openHandler(this,f,e,o)}catch(s){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxOpen,"Failed to monitor XMLHttpRequest.open, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(this),exception:n.ApplicationInsights.Util.dump(s)}))}return u.apply(this,arguments)}},i.prototype.openHandler=function(n,i,r){var u=new t.ajaxRecord(t.Util.newId());u.method=i;u.requestUrl=r;u.xhrMonitoringState.openDone=!0;n.ajaxData=u;this.attachToOnReadyStateChange(n)},i.getFailedAjaxDiagnosticsMessage=function(n){var i="";try{t.extensions.IsNullOrUndefined(n)||t.extensions.IsNullOrUndefined(n.ajaxData)||t.extensions.IsNullOrUndefined(n.ajaxData.requestUrl)||(i+="(url: '"+n.ajaxData.requestUrl+"')")}catch(r){}return i},i.prototype.instrumentSend=function(){var u=XMLHttpRequest.prototype.send,r=this;XMLHttpRequest.prototype.send=function(f){try{r.isMonitoredInstance(this)&&!this.ajaxData.xhrMonitoringState.sendDone&&r.sendHandler(this,f)}catch(e){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxSend,"Failed to monitor XMLHttpRequest, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(this),exception:n.ApplicationInsights.Util.dump(e)}))}return u.apply(this,arguments)}},i.prototype.sendHandler=function(n){n.ajaxData.requestSentTime=t.dateTime.Now();this.appInsights.config.disableCorrelationHeaders||t.UrlHelper.parseUrl(n.ajaxData.getAbsoluteUrl()).host!=this.currentWindowHost||n.setRequestHeader("x-ms-request-id",n.ajaxData.id);n.ajaxData.xhrMonitoringState.sendDone=!0},i.prototype.instrumentAbort=function(){var r=XMLHttpRequest.prototype.abort,u=this;XMLHttpRequest.prototype.abort=function(){try{u.isMonitoredInstance(this)&&!this.ajaxData.xhrMonitoringState.abortDone&&(this.ajaxData.aborted=1,this.ajaxData.xhrMonitoringState.abortDone=!0)}catch(f){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxAbort,"Failed to monitor XMLHttpRequest.abort, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(this),exception:n.ApplicationInsights.Util.dump(f)}))}return r.apply(this,arguments)}},i.prototype.attachToOnReadyStateChange=function(r){var u=this;r.ajaxData.xhrMonitoringState.onreadystatechangeCallbackAttached=t.EventHelper.AttachEvent(r,"readystatechange",function(){try{if(u.isMonitoredInstance(r)&&r.readyState===4)u.onAjaxComplete(r)}catch(f){var e=n.ApplicationInsights.Util.dump(f);e&&e.toLowerCase().indexOf("c00c023f")!=-1||t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxRSC,"Failed to monitor XMLHttpRequest 'readystatechange' event handler, monitoring data for this ajax call may be incorrect.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(r),exception:n.ApplicationInsights.Util.dump(f)}))}})},i.prototype.onAjaxComplete=function(n){n.ajaxData.responseFinishedTime=t.dateTime.Now();n.ajaxData.status=n.status;n.ajaxData.CalculateMetrics();n.ajaxData.ajaxTotalDuration<0?t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.WARNING,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_FailedMonitorAjaxDur,"Failed to calculate the duration of the ajax call, monitoring data for this ajax call won't be sent.",{ajaxDiagnosticsMessage:i.getFailedAjaxDiagnosticsMessage(n),requestSentTime:n.ajaxData.requestSentTime,responseFinishedTime:n.ajaxData.responseFinishedTime})):(this.appInsights.trackAjax(n.ajaxData.id,n.ajaxData.getAbsoluteUrl(),n.ajaxData.getPathName(),n.ajaxData.ajaxTotalDuration,+n.ajaxData.status>=200&&+n.ajaxData.status<400,+n.ajaxData.status,n.ajaxData.method),n.ajaxData=null)},i.instrumentedByAppInsightsName="InstrumentedByAppInsights",i.DisabledPropertyName="Microsoft_ApplicationInsights_BypassAjaxInstrumentation",i}();t.AjaxMonitor=i})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t=function(){function n(){}return n.prototype.getHashCodeScore=function(t){var i=this.getHashCode(t)/n.INT_MAX_VALUE;return i*100},n.prototype.getHashCode=function(t){var i,r;if(t=="")return 0;while(t.length100||t<0)&&(n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_SampleRateOutOfRange,"Sampling rate is out of range (0..100). Sampling will be disabled, you may be sending too much data which may affect your AI service level.",{samplingRate:t})),this.sampleRate=100);this.sampleRate=t;this.samplingScoreGenerator=new n.SamplingScoreGenerator}return t.prototype.isSampledIn=function(n){if(this.sampleRate==100)return!0;var t=this.samplingScoreGenerator.getSamplingScore(n);return tthis.config.sessionExpirationMs(),i=n-this.automaticSession.renewalDate>this.config.sessionRenewalMs();t||i?(this.automaticSession.isFirst=undefined,this.renew()):(this.automaticSession.renewalDate=+new Date,this.setCookie(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate))},t.prototype.backup=function(){this.setStorage(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate)},t.prototype.initializeAutomaticSession=function(){var t=n.Util.getCookie("ai_session"),i;t&&typeof t.split=="function"?this.initializeAutomaticSessionWithData(t):(i=n.Util.getStorage("ai_session"),i&&this.initializeAutomaticSessionWithData(i));this.automaticSession.id||(this.automaticSession.isFirst=!0,this.renew())},t.prototype.initializeAutomaticSessionWithData=function(t){var i=t.split("|"),r,u;i.length>0&&(this.automaticSession.id=i[0]);try{i.length>1&&(r=+i[1],this.automaticSession.acquisitionDate=+new Date(r),this.automaticSession.acquisitionDate=this.automaticSession.acquisitionDate>0?this.automaticSession.acquisitionDate:0);i.length>2&&(u=+i[2],this.automaticSession.renewalDate=+new Date(u),this.automaticSession.renewalDate=this.automaticSession.renewalDate>0?this.automaticSession.renewalDate:0)}catch(f){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_ErrorParsingAISessionCookie,"Error parsing ai_session cookie, session will be reset: "+n.Util.getExceptionName(f),{exception:n.Util.dump(f)}))}this.automaticSession.renewalDate==0&&n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_SessionRenewalDateIsZero,"AI session renewal date is 0, session will be reset."))},t.prototype.renew=function(){var t=+new Date;this.automaticSession.id=n.Util.newId();this.automaticSession.acquisitionDate=t;this.automaticSession.renewalDate=t;this.setCookie(this.automaticSession.id,this.automaticSession.acquisitionDate,this.automaticSession.renewalDate);n.Util.canUseLocalStorage()||n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_BrowserDoesNotSupportLocalStorage,"Browser does not support local storage. Session durations will be inaccurate."))},t.prototype.setCookie=function(t,i,r){var f=i+this.config.sessionExpirationMs(),e=r+this.config.sessionRenewalMs(),u=new Date,s=[t,i,r],o;f0&&(this.id=e[0]));this.config=i;this.id||(this.id=n.Util.newId(),u=new Date,o=n.Util.toISOStringForIE8(u),this.accountAcquisitionDate=o,u.setTime(u.getTime()+31536e6),h=[this.id,o],c=this.config.cookieDomain?this.config.cookieDomain():undefined,n.Util.setCookie(t.userCookieName,h.join(t.cookieSeparator)+";expires="+u.toUTCString(),c),n.Util.removeStorage("ai_session"));this.accountId=i.accountId?i.accountId():undefined;f=n.Util.getCookie(t.authUserCookieName);f&&(f=decodeURI(f),r=f.split(t.cookieSeparator),r[0]&&(this.authenticatedId=r[0]),r.length>1&&r[1]&&(this.accountId=r[1]))}return t.prototype.setAuthenticatedUserContext=function(i,r){var f=!this.validateUserInput(i)||r&&!this.validateUserInput(r),u;if(f){n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_SetAuthContextFailedAccountName,"Setting auth user context failed. User auth/account id should be of type string, and not contain commas, semi-colons, equal signs, spaces, or vertical-bars."));return}this.authenticatedId=i;u=this.authenticatedId;r&&(this.accountId=r,u=[this.authenticatedId,this.accountId].join(t.cookieSeparator));n.Util.setCookie(t.authUserCookieName,encodeURI(u),this.config.cookieDomain())},t.prototype.clearAuthenticatedUserContext=function(){this.authenticatedId=null;this.accountId=null;n.Util.deleteCookie(t.authUserCookieName)},t.prototype.validateUserInput=function(n){return typeof n!="string"||!n||n.match(/,|;|=| |\|/)?!1:!0},t.cookieSeparator="|",t.userCookieName="ai_user",t.authUserCookieName="ai_authUser",t}();t.User=i})(t=n.Context||(n.Context={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(){}return t.reset=function(){t.isEnabled()&&(n.Util.setSessionStorage(t.ITEMS_QUEUED_KEY,"0"),t.itemsRestoredFromSessionBuffer=0)},t.isEnabled=function(){return t.enabled&&t.appInsights!=null&&t.appInsights.context._sender._XMLHttpRequestSupported&&n.Util.canUseSessionStorage()},t.getIssuesReported=function(){return!t.isEnabled()||isNaN(+n.Util.getSessionStorage(t.ISSUES_REPORTED_KEY))?0:+n.Util.getSessionStorage(t.ISSUES_REPORTED_KEY)},t.incrementItemsQueued=function(){try{if(t.isEnabled()){var i=t.getNumberOfLostItems();++i;n.Util.setSessionStorage(t.ITEMS_QUEUED_KEY,i.toString())}}catch(r){}},t.decrementItemsQueued=function(i){try{if(t.isEnabled()){var r=t.getNumberOfLostItems();r-=i;r<0&&(r=0);n.Util.setSessionStorage(t.ITEMS_QUEUED_KEY,r.toString())}}catch(u){}},t.getNumberOfLostItems=function(){var i=0;try{t.isEnabled()&&(i=isNaN(+n.Util.getSessionStorage(t.ITEMS_QUEUED_KEY))?0:+n.Util.getSessionStorage(t.ITEMS_QUEUED_KEY))}catch(r){i=0}return i},t.reportLostItems=function(){var r,i;try{t.isEnabled()&&t.getIssuesReported()0&&(r=t.getNumberOfLostItems()-t.itemsRestoredFromSessionBuffer,t.appInsights.trackTrace('AI (Internal): Internal report DATALOSS:"'+r+'"',null),t.appInsights.flush(),i=t.getIssuesReported(),++i,n.Util.setSessionStorage(t.ISSUES_REPORTED_KEY,i.toString()))}catch(u){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_FailedToReportDataLoss,"Failed to report data loss: "+n.Util.getExceptionName(u),{exception:n.Util.dump(u)}))}finally{try{t.reset()}catch(u){}}},t.enabled=!1,t.itemsRestoredFromSessionBuffer=0,t.LIMIT_PER_SESSION=10,t.ITEMS_QUEUED_KEY="AI_itemsQueued",t.ISSUES_REPORTED_KEY="AI_lossIssuesReported",t}();n.DataLossAnalyzer=t})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var i=function(){function n(n){this._config=n;this._buffer=[]}return n.prototype.enqueue=function(n){this._buffer.push(n)},n.prototype.count=function(){return this._buffer.length},n.prototype.clear=function(){this._buffer.length=0},n.prototype.getItems=function(){return this._buffer.slice(0)},n.prototype.batchPayloads=function(n){return n&&n.length>0?this._config.emitLineDelimitedJson()?n.join("\n"):"["+n.join(",")+"]":null},n.prototype.markAsSent=function(){this.clear()},n.prototype.clearSent=function(){this.clear()},n}(),t;n.ArraySendBuffer=i;t=function(){function t(i){this._config=i;var r=this.getBuffer(t.BUFFER_KEY),u=this.getBuffer(t.SENT_BUFFER_KEY);this._buffer=r.concat(u);n.DataLossAnalyzer.itemsRestoredFromSessionBuffer=this._buffer.length;this.setBuffer(t.BUFFER_KEY,this._buffer);this.setBuffer(t.SENT_BUFFER_KEY,[])}return t.prototype.enqueue=function(n){this._buffer.push(n);this.setBuffer(t.BUFFER_KEY,this._buffer)},t.prototype.count=function(){return this._buffer.length},t.prototype.clear=function(){this._buffer.length=0;this.setBuffer(t.BUFFER_KEY,[]);this.setBuffer(t.SENT_BUFFER_KEY,[])},t.prototype.getItems=function(){return this._buffer.slice(0)},t.prototype.batchPayloads=function(n){return n&&n.length>0?this._config.emitLineDelimitedJson()?n.join("\n"):"["+n.join(",")+"]":null},t.prototype.markAsSent=function(n){var i=this.getBuffer(t.SENT_BUFFER_KEY);i=i.concat(n);this._buffer=this.removePayloadsFromBuffer(n,this._buffer);this.setBuffer(t.BUFFER_KEY,this._buffer);this.setBuffer(t.SENT_BUFFER_KEY,i)},t.prototype.clearSent=function(n){var i=this.getBuffer(t.SENT_BUFFER_KEY);i=this.removePayloadsFromBuffer(n,i);this.setBuffer(t.SENT_BUFFER_KEY,i)},t.prototype.removePayloadsFromBuffer=function(n,t){var u=[],i,r,f;for(i in t){r=!1;for(f in n)if(n[f]===t[i]){r=!0;break}r||u.push(t[i])}return u},t.prototype.getBuffer=function(t){var i,r;try{if(i=n.Util.getSessionStorage(t),i&&(r=JSON.parse(i),r))return r}catch(u){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_FailToRestoreStorageBuffer," storage key: "+t+", "+n.Util.getExceptionName(u),{exception:n.Util.dump(u)}))}return[]},t.prototype.setBuffer=function(t,i){try{var u=JSON.stringify(i);n.Util.setSessionStorage(t,u)}catch(r){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_FailToSetStorageBuffer," storage key: "+t+", "+n.Util.getExceptionName(r),{exception:n.Util.dump(r)}))}},t.BUFFER_KEY="AI_buffer",t.SENT_BUFFER_KEY="AI_sentBuffer",t}();n.SessionStorageSendBuffer=t})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(t){if(this._XMLHttpRequestSupported=!1,this._lastSend=0,this._config=t,this._sender=null,this._buffer=n.Util.canUseSessionStorage()&&this._config.enableSessionStorageBuffer()?new n.SessionStorageSendBuffer(t):new n.ArraySendBuffer(t),typeof XMLHttpRequest!="undefined"){var i=new XMLHttpRequest;"withCredentials"in i?(this._sender=this._xhrSender,this._XMLHttpRequestSupported=!0):typeof XDomainRequest!="undefined"&&(this._sender=this._xdrSender)}}return t.prototype.send=function(t){var i=this;try{if(this._config.disableTelemetry())return;if(!t){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_CannotSendEmptyTelemetry,"Cannot send empty telemetry"));return}if(!this._sender){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_SenderNotInitialized,"Sender was not initialized"));return}var r=n.Serializer.serialize(t),e=this._buffer.getItems(),u=this._buffer.batchPayloads(e);u&&u.length+r.length>this._config.maxBatchSizeInBytes()&&this.triggerSend();this._buffer.enqueue(r);this._timeoutHandle||(this._timeoutHandle=setTimeout(function(){i._timeoutHandle=null;i.triggerSend()},this._config.maxBatchInterval()));n.DataLossAnalyzer.incrementItemsQueued()}catch(f){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_FailedAddingTelemetryToBuffer,"Failed adding telemetry to the sender's buffer, some telemetry will be lost: "+n.Util.getExceptionName(f),{exception:n.Util.dump(f)}))}},t.prototype._getSizeInBytes=function(n){var r=0,t,i;if(n&&n.length)for(t=0;t0&&(r=this._buffer.getItems(),this._sender(r,i)),this._lastSend=+new Date);clearTimeout(this._timeoutHandle);this._timeoutHandle=null}catch(u){(!n.Util.getIEVersion()||n.Util.getIEVersion()>9)&&n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_TransmissionFailed,"Telemetry transmission failed, some telemetry will be lost: "+n.Util.getExceptionName(u),{exception:n.Util.dump(u)}))}},t.prototype._xhrSender=function(t,i){var u=this,r=new XMLHttpRequest,f;r[n.AjaxMonitor.DisabledPropertyName]=!0;r.open("POST",this._config.endpointUrl(),i);r.setRequestHeader("Content-type","application/json");r.onreadystatechange=function(){return u._xhrReadyStateChange(r,t,t.length)};r.onerror=function(n){return u._onError(t,r.responseText||r.response||"",n)};f=this._buffer.batchPayloads(t);r.send(f);this._buffer.markAsSent(t)},t.prototype._xdrSender=function(n){var i=this,t=new XDomainRequest,r;t.onload=function(){return i._xdrOnLoad(t,n)};t.onerror=function(r){return i._onError(n,t.responseText||"",r)};t.open("POST",this._config.endpointUrl());r=this._buffer.batchPayloads(n);t.send(r);this._buffer.markAsSent(n)},t.prototype._xhrReadyStateChange=function(n,t,i){n.readyState===4&&((n.status<200||n.status>=300)&&n.status!==0?this._onError(t,n.responseText||n.response||""):this._onSuccess(t,i))},t.prototype._xdrOnLoad=function(n,t){n&&(n.responseText+""=="200"||n.responseText==="")?this._onSuccess(t,0):this._onError(t,n&&n.responseText||"")},t.prototype._onError=function(t,i){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_OnError,"Failed to send telemetry.",{message:i}));this._buffer.clearSent(t)},t.prototype._onSuccess=function(t,i){n.DataLossAnalyzer.decrementItemsQueued(i);this._buffer.clearSent(t)},t}();n.Sender=t})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(){this.hashCodeGeneragor=new n.HashCodeScoreGenerator}return t.prototype.isEnabled=function(n,t){return this.hashCodeGeneragor.getHashCodeScore(n)=0&&(i=i.replace(/[^0-9a-zA-Z-._()\/ ]/g,"_"),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_IllegalCharsInName,"name contains illegal characters. Illegal characters have been replaced with '_'.",{newName:i}))),i.length>t.MAX_NAME_LENGTH&&(i=i.substring(0,t.MAX_NAME_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_NameTooLong,"name is too long. It has been truncated to "+t.MAX_NAME_LENGTH+" characters.",{name:i})))),i},t.sanitizeString=function(i){return i&&(i=n.Util.trim(i),i.toString().length>t.MAX_STRING_LENGTH&&(i=i.toString().substring(0,t.MAX_STRING_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_StringValueTooLong,"string value is too long. It has been truncated to "+t.MAX_STRING_LENGTH+" characters.",{value:i})))),i},t.sanitizeUrl=function(i){return i&&(i=n.Util.trim(i),i.length>t.MAX_URL_LENGTH&&(i=i.substring(0,t.MAX_URL_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_UrlTooLong,"url is too long, it has been trucated to "+t.MAX_URL_LENGTH+" characters.",{url:i})))),i},t.sanitizeMessage=function(i){return i&&i.length>t.MAX_MESSAGE_LENGTH&&(i=i.substring(0,t.MAX_MESSAGE_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_MessageTruncated,"message is too long, it has been trucated to "+t.MAX_MESSAGE_LENGTH+" characters.",{message:i}))),i},t.sanitizeException=function(i){return i&&i.length>t.MAX_EXCEPTION_LENGTH&&(i=i.substring(0,t.MAX_EXCEPTION_LENGTH),n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.USRACT_ExceptionTruncated,"exception is too long, it has been trucated to "+t.MAX_EXCEPTION_LENGTH+" characters.",{exception:i}))),i},t.sanitizeProperties=function(n){var r,i,u;if(n){r={};for(i in n)u=t.sanitizeString(n[i]),i=t.sanitizeKeyAndAddUniqueness(i,r),r[i]=u;n=r}return n},t.sanitizeMeasurements=function(n){var r,i,u;if(n){r={};for(i in n)u=n[i],i=t.sanitizeKeyAndAddUniqueness(i,r),r[i]=u;n=r}return n},t.padNumber=function(n){var t="00"+n;return t.substr(t.length-3)},t.MAX_NAME_LENGTH=150,t.MAX_STRING_LENGTH=1024,t.MAX_URL_LENGTH=2048,t.MAX_MESSAGE_LENGTH=32768,t.MAX_EXCEPTION_LENGTH=32768,t}();t.DataSanitizer=i})(i=t.Common||(t.Common={}))})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(r,u){i.call(this);this.aiDataContract={ver:n.FieldType.Required,message:n.FieldType.Required,severityLevel:n.FieldType.Default,measurements:n.FieldType.Default,properties:n.FieldType.Default};r=r||n.Util.NotSpecified;this.message=t.Common.DataSanitizer.sanitizeMessage(r);this.properties=t.Common.DataSanitizer.sanitizeProperties(u)}return __extends(r,i),r.envelopeType="Microsoft.ApplicationInsights.{0}.Message",r.dataType="MessageData",r}(AI.MessageData);t.Trace=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.EventData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(t){function i(i,r,u){t.call(this);this.aiDataContract={ver:n.FieldType.Required,name:n.FieldType.Required,properties:n.FieldType.Default,measurements:n.FieldType.Default};this.name=n.Telemetry.Common.DataSanitizer.sanitizeString(i)||n.Util.NotSpecified;this.properties=n.Telemetry.Common.DataSanitizer.sanitizeProperties(r);this.measurements=n.Telemetry.Common.DataSanitizer.sanitizeMeasurements(u)}return __extends(i,t),i.envelopeType="Microsoft.ApplicationInsights.{0}.Event",i.dataType="EventData",i}(AI.EventData);t.Event=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(){function n(){this.hasFullStack=!0;this.parsedStack=[]}return n}();n.ExceptionDetails=t}(AI||(AI={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.exceptions=[];this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.ExceptionData=t}(AI||(AI={})),function(n){"use strict";var t=function(){function n(){}return n}();n.StackFrame=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var u=function(t){function i(i,u,f,e,o){t.call(this);this.aiDataContract={ver:n.FieldType.Required,handledAt:n.FieldType.Required,exceptions:n.FieldType.Required,severityLevel:n.FieldType.Default,properties:n.FieldType.Default,measurements:n.FieldType.Default};this.properties=n.Telemetry.Common.DataSanitizer.sanitizeProperties(f);this.measurements=n.Telemetry.Common.DataSanitizer.sanitizeMeasurements(e);this.handledAt=u||"unhandled";this.exceptions=[new r(i)];o&&(this.severityLevel=o)}return __extends(i,t),i.CreateSimpleException=function(n,t,i,r,u,f,e){return{handledAt:e||"unhandled",exceptions:[{hasFullStack:!0,message:n,stack:u,typeName:t,parsedStack:[{level:0,assembly:i,fileName:r,line:f,method:"unknown"}]}]}},i.envelopeType="Microsoft.ApplicationInsights.{0}.Exception",i.dataType="ExceptionData",i}(AI.ExceptionData),r,i;t.Exception=u;r=function(r){function u(i){r.call(this);this.aiDataContract={id:n.FieldType.Default,outerId:n.FieldType.Default,typeName:n.FieldType.Required,message:n.FieldType.Required,hasFullStack:n.FieldType.Default,stack:n.FieldType.Default,parsedStack:n.FieldType.Array};this.typeName=t.Common.DataSanitizer.sanitizeString(i.name)||n.Util.NotSpecified;this.message=t.Common.DataSanitizer.sanitizeMessage(i.message)||n.Util.NotSpecified;var u=i.stack;this.parsedStack=this.parseStack(u);this.stack=t.Common.DataSanitizer.sanitizeException(u);this.hasFullStack=n.Util.isArray(this.parsedStack)&&this.parsedStack.length>0}return __extends(u,r),u.prototype.parseStack=function(n){var t=undefined,e,l,o,r,a,s,h,p,w,b;if(typeof n=="string"){for(e=n.split("\n"),t=[],l=0,o=0,r=0;r<=e.length;r++)a=e[r],i.regex.test(a)&&(s=new i(e[r],l++),o+=s.sizeInBytes,t.push(s));if(h=32768,o>h)for(var u=0,f=t.length-1,v=0,c=u,y=f;uh){b=y-c+1;t.splice(c,b);break}c=u;y=f;u++;f--}}return t},u}(AI.ExceptionDetails);i=function(t){function i(r,u){t.call(this);this.sizeInBytes=0;this.aiDataContract={level:n.FieldType.Required,method:n.FieldType.Required,assembly:n.FieldType.Default,fileName:n.FieldType.Default,line:n.FieldType.Default};this.level=u;this.method="";this.assembly=n.Util.trim(r);var f=r.match(i.regex);f&&f.length>=5&&(this.method=n.Util.trim(f[2])||this.method,this.fileName=n.Util.trim(f[4]),this.line=parseInt(f[5])||0);this.sizeInBytes+=this.method.length;this.sizeInBytes+=this.fileName.length;this.sizeInBytes+=this.assembly.length;this.sizeInBytes+=i.baseSize;this.sizeInBytes+=this.level.toString().length;this.sizeInBytes+=this.line.toString().length}return __extends(i,t),i.regex=/^([\s]+at)?(.*?)(\@|\s\(|\s)([^\(\@\n]+):([0-9]+):([0-9]+)(\)?)$/,i.baseSize=58,i}(AI.StackFrame);t._StackFrame=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.metrics=[];this.properties={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.MetricData=t}(AI||(AI={})),function(n){"use strict";(function(n){n[n.Measurement=0]="Measurement";n[n.Aggregation=1]="Aggregation"})(n.DataPointType||(n.DataPointType={}));var t=n.DataPointType}(AI||(AI={})),function(n){"use strict";var t=function(){function t(){this.kind=n.DataPointType.Measurement}return t}();n.DataPoint=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){var i;(function(t){"use strict";var i=function(t){function i(){t.apply(this,arguments);this.aiDataContract={name:n.FieldType.Required,kind:n.FieldType.Default,value:n.FieldType.Required,count:n.FieldType.Default,min:n.FieldType.Default,max:n.FieldType.Default,stdDev:n.FieldType.Default}}return __extends(i,t),i}(AI.DataPoint);t.DataPoint=i})(i=t.Common||(t.Common={}))})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(t){var i;(function(i){"use strict";var r=function(r){function u(u,f,e,o,s,h){r.call(this);this.aiDataContract={ver:t.FieldType.Required,metrics:t.FieldType.Required,properties:t.FieldType.Default};var c=new n.ApplicationInsights.Telemetry.Common.DataPoint;c.count=e>0?e:undefined;c.max=isNaN(s)||s===null?undefined:s;c.min=isNaN(o)||o===null?undefined:o;c.name=i.Common.DataSanitizer.sanitizeString(u)||t.Util.NotSpecified;c.value=f;this.metrics=[c];this.properties=t.Telemetry.Common.DataSanitizer.sanitizeProperties(h)}return __extends(u,r),u.envelopeType="Microsoft.ApplicationInsights.{0}.Metric",u.dataType="MetricData",u}(AI.MetricData);i.Metric=r})(i=t.Telemetry||(t.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(n.EventData);n.PageViewData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(r,u,f,e,o){i.call(this);this.aiDataContract={ver:n.FieldType.Required,name:n.FieldType.Default,url:n.FieldType.Default,duration:n.FieldType.Default,properties:n.FieldType.Default,measurements:n.FieldType.Default};this.url=t.Common.DataSanitizer.sanitizeUrl(u);this.name=t.Common.DataSanitizer.sanitizeString(r)||n.Util.NotSpecified;isNaN(f)||(this.duration=n.Util.msToTimeSpan(f));this.properties=n.Telemetry.Common.DataSanitizer.sanitizeProperties(e);this.measurements=n.Telemetry.Common.DataSanitizer.sanitizeMeasurements(o)}return __extends(r,i),r.envelopeType="Microsoft.ApplicationInsights.{0}.Pageview",r.dataType="PageviewData",r}(AI.PageViewData);t.PageView=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(n.PageViewData);n.PageViewPerfData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(u,f,e,o,s){var h;if(i.call(this),this.aiDataContract={ver:n.FieldType.Required,name:n.FieldType.Default,url:n.FieldType.Default,duration:n.FieldType.Default,perfTotal:n.FieldType.Default,networkConnect:n.FieldType.Default,sentRequest:n.FieldType.Default,receivedResponse:n.FieldType.Default,domProcessing:n.FieldType.Default,properties:n.FieldType.Default,measurements:n.FieldType.Default},this.isValid=!1,h=r.getPerformanceTiming(),h){var c=r.getDuration(h.navigationStart,h.loadEventEnd),l=r.getDuration(h.navigationStart,h.connectEnd),a=r.getDuration(h.requestStart,h.responseStart),v=r.getDuration(h.responseStart,h.responseEnd),y=r.getDuration(h.responseEnd,h.loadEventEnd);c==0?n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.WARNING,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_ErrorPVCalc,"error calculating page view performance.",{total:c,network:l,request:a,response:v,dom:y})):c0&&n.navigationStart>0&&n.responseStart>0&&n.requestStart>0&&n.loadEventEnd>0&&n.responseEnd>0&&n.connectEnd>0&&n.domLoading>0},r.getDuration=function(n,t){var i=0;return isNaN(n)||isNaN(t)||(i=Math.max(t-n,0)),i},r.envelopeType="Microsoft.ApplicationInsights.{0}.PageviewPerformance",r.dataType="PageviewPerformanceData",r}(AI.PageViewPerfData);t.PageViewPerformance=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(){"use strict"})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){"use strict";var t=function(){function t(t){this._config=t;this._sender=new n.Sender(t);typeof window!="undefined"&&(this._sessionManager=new n.Context._SessionManager(t),this.application=new n.Context.Application,this.device=new n.Context.Device,this.internal=new n.Context.Internal,this.location=new n.Context.Location,this.user=new n.Context.User(t),this.operation=new n.Context.Operation,this.session=new n.Context.Session,this.sample=new n.Context.Sample(t.sampleRate()))}return t.prototype.addTelemetryInitializer=function(n){this.telemetryInitializers=this.telemetryInitializers||[];this.telemetryInitializers.push(n)},t.prototype.track=function(t){return t?(t.name===n.Telemetry.PageView.envelopeType&&n._InternalLogging.resetInternalMessageCount(),this.session&&typeof this.session.id!="string"&&this._sessionManager.update(),this._track(t)):n._InternalLogging.throwInternalUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.USRACT_TrackArgumentsNotSpecified,"cannot call .track() with a null or undefined argument")),t},t.prototype._track=function(t){var i,f,r,u,o;this.session&&(typeof this.session.id=="string"?this._applySessionContext(t,this.session):this._applySessionContext(t,this._sessionManager.automaticSession));this._applyApplicationContext(t,this.application);this._applyDeviceContext(t,this.device);this._applyInternalContext(t,this.internal);this._applyLocationContext(t,this.location);this._applySampleContext(t,this.sample);this._applyUserContext(t,this.user);this._applyOperationContext(t,this.operation);t.iKey=this._config.instrumentationKey();i=!1;try{for(this.telemetryInitializers=this.telemetryInitializers||[],f=this.telemetryInitializers.length,r=0;rl&&(clearInterval(a),s||(o.appInsights.sendPageViewInternal(i,r,l,u,f),o.appInsights.flush()))}catch(v){n._InternalLogging.throwInternalNonUserActionable(n.LoggingSeverity.CRITICAL,new n._InternalLogMessage(n._InternalMessageId.NONUSRACT_TrackPVFailedCalc,"trackPageView failed on page load calculation: "+n.Util.getExceptionName(v),{exception:n.Util.dump(v)}))}},100)},i}();t.PageViewManager=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(n){var t;(function(t){"use strict";var r=function(){function t(n){this.prevPageVisitDataKeyName="prevPageVisitData";this.pageVisitTimeTrackingHandler=n}return t.prototype.trackPreviousPageVisit=function(t,i){try{var r=this.restartPageVisitTimer(t,i);r&&this.pageVisitTimeTrackingHandler(r.pageName,r.pageUrl,r.pageVisitTime)}catch(u){n._InternalLogging.warnToConsole("Auto track page visit time failed, metric will not be collected: "+n.Util.dump(u))}},t.prototype.restartPageVisitTimer=function(t,i){try{var r=this.stopPageVisitTimer();return this.startPageVisitTimer(t,i),r}catch(u){return n._InternalLogging.warnToConsole("Call to restart failed: "+n.Util.dump(u)),null}},t.prototype.startPageVisitTimer=function(t,r){try{if(n.Util.canUseSessionStorage()){if(n.Util.getSessionStorage(this.prevPageVisitDataKeyName)!=null)throw new Error("Cannot call startPageVisit consecutively without first calling stopPageVisit");var u=new i(t,r),f=JSON.stringify(u);n.Util.setSessionStorage(this.prevPageVisitDataKeyName,f)}}catch(e){n._InternalLogging.warnToConsole("Call to start failed: "+n.Util.dump(e))}},t.prototype.stopPageVisitTimer=function(){var r,i,t;try{return n.Util.canUseSessionStorage()?(r=Date.now(),i=n.Util.getSessionStorage(this.prevPageVisitDataKeyName),i?(t=JSON.parse(i),t.pageVisitTime=r-t.pageVisitStartTime,n.Util.removeSessionStorage(this.prevPageVisitDataKeyName),t):null):null}catch(u){return n._InternalLogging.warnToConsole("Stop page visit timer failed: "+n.Util.dump(u)),null}},t}(),i;t.PageVisitTimeManager=r;i=function(){function n(n,t){this.pageVisitStartTime=Date.now();this.pageName=n;this.pageUrl=t}return n}();t.PageVisitData=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";(function(n){n[n.SQL=0]="SQL";n[n.Http=1]="Http";n[n.Other=2]="Other"})(n.DependencyKind||(n.DependencyKind={}));var t=n.DependencyKind}(AI||(AI={})),function(n){"use strict";(function(n){n[n.Undefined=0]="Undefined";n[n.Aic=1]="Aic";n[n.Apmc=2]="Apmc"})(n.DependencySourceType||(n.DependencySourceType={}));var t=n.DependencySourceType}(AI||(AI={})),function(n){"use strict";var t=function(t){function i(){t.call(this);this.ver=2;this.kind=n.DataPointType.Aggregation;this.dependencyKind=n.DependencyKind.Other;this.success=!0;this.dependencySource=n.DependencySourceType.Apmc;this.properties={};t.call(this)}return __extends(i,t),i}(Microsoft.Telemetry.Domain);n.RemoteDependencyData=t}(AI||(AI={})),function(n){var t;(function(n){var t;(function(t){"use strict";var i=function(i){function r(r,u,f,e,o,s,h){i.call(this);this.aiDataContract={id:n.FieldType.Required,ver:n.FieldType.Required,name:n.FieldType.Default,kind:n.FieldType.Required,value:n.FieldType.Default,count:n.FieldType.Default,min:n.FieldType.Default,max:n.FieldType.Default,stdDev:n.FieldType.Default,dependencyKind:n.FieldType.Default,success:n.FieldType.Default,async:n.FieldType.Default,dependencySource:n.FieldType.Default,commandName:n.FieldType.Default,dependencyTypeName:n.FieldType.Default,properties:n.FieldType.Default,resultCode:n.FieldType.Default};this.id=r;this.name=this.formatDependencyName(h,u);this.commandName=t.Common.DataSanitizer.sanitizeUrl(f);this.value=e;this.success=o;this.resultCode=s+"";this.dependencyKind=AI.DependencyKind.Http;this.dependencyTypeName="Ajax"}return __extends(r,i),r.prototype.formatDependencyName=function(n,t){return n?n.toUpperCase()+" "+t:t},r.envelopeType="Microsoft.ApplicationInsights.{0}.RemoteDependency",r.dataType="RemoteDependencyData",r}(AI.RemoteDependencyData);t.RemoteDependencyData=i})(t=n.Telemetry||(n.Telemetry={}))})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(){"use strict"})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(){"use strict"})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(t){"use strict";var r,i;t.Version="0.22.19";r=function(){function r(u){var f=this,e,o,h,s;if(this._trackAjaxAttempts=0,this.config=u||{},e=r.defaultConfig,e!==undefined)for(o in e)this.config[o]===undefined&&(this.config[o]=e[o]);t._InternalLogging.verboseLogging=function(){return f.config.verboseLogging};t._InternalLogging.enableDebugExceptions=function(){return f.config.enableDebug};h={instrumentationKey:function(){return f.config.instrumentationKey},accountId:function(){return f.config.accountId},sessionRenewalMs:function(){return f.config.sessionRenewalMs},sessionExpirationMs:function(){return f.config.sessionExpirationMs},endpointUrl:function(){return f.config.endpointUrl},emitLineDelimitedJson:function(){return f.config.emitLineDelimitedJson},maxBatchSizeInBytes:function(){return f.config.maxBatchSizeInBytes},maxBatchInterval:function(){return f.config.maxBatchInterval},disableTelemetry:function(){return f.config.disableTelemetry},sampleRate:function(){return f.config.samplingPercentage},cookieDomain:function(){return f.config.cookieDomain},enableSessionStorageBuffer:function(){return f.config.enableSessionStorageBuffer}};s=(new t.SplitTest).isEnabled(this.config.instrumentationKey,5);this.config.enableSessionStorageBuffer=s;this.context=new t.TelemetryContext(h);t.DataLossAnalyzer.appInsights=this;t.DataLossAnalyzer.enabled=s;t.DataLossAnalyzer.reportLostItems();this._pageViewManager=new n.ApplicationInsights.Telemetry.PageViewManager(this,this.config.overridePageViewDuration);this._eventTracking=new i("trackEvent");this._eventTracking.action=function(n,i,r,u,e){e?isNaN(e.duration)&&(e.duration=r):e={duration:r};var o=new t.Telemetry.Event(n,u,e),s=new t.Telemetry.Common.Data(t.Telemetry.Event.dataType,o),h=new t.Telemetry.Common.Envelope(s,t.Telemetry.Event.envelopeType);f.context.track(h)};this._pageTracking=new i("trackPageView");this._pageTracking.action=function(n,t,i,r,u){f.sendPageViewInternal(n,t,i,r,u)};this._pageVisitTimeManager=new t.Telemetry.PageVisitTimeManager(function(n,t,i){return f.trackPageVisitTime(n,t,i)});this.config.disableAjaxTracking||new n.ApplicationInsights.AjaxMonitor(this)}return r.prototype.sendPageViewInternal=function(n,i,r,u,f){var e=new t.Telemetry.PageView(n,i,r,u,f),o=new t.Telemetry.Common.Data(t.Telemetry.PageView.dataType,e),s=new t.Telemetry.Common.Envelope(o,t.Telemetry.PageView.envelopeType);this.context.track(s);this._trackAjaxAttempts=0},r.prototype.sendPageViewPerformanceInternal=function(n){var i=new t.Telemetry.Common.Data(t.Telemetry.PageViewPerformance.dataType,n),r=new t.Telemetry.Common.Envelope(i,t.Telemetry.PageViewPerformance.envelopeType);this.context.track(r)},r.prototype.startTrackPage=function(n){try{typeof n!="string"&&(n=window.document&&window.document.title||"");this._pageTracking.start(n)}catch(i){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StartTrackFailed,"startTrackPage failed, page view may not be collected: "+t.Util.getExceptionName(i),{exception:t.Util.dump(i)}))}},r.prototype.stopTrackPage=function(n,i,r,u){try{typeof n!="string"&&(n=window.document&&window.document.title||"");typeof i!="string"&&(i=window.location&&window.location.href||"");this._pageTracking.stop(n,i,r,u);this.config.autoTrackPageVisitTime&&this._pageVisitTimeManager.trackPreviousPageVisit(n,i)}catch(f){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StopTrackFailed,"stopTrackPage failed, page view will not be collected: "+t.Util.getExceptionName(f),{exception:t.Util.dump(f)}))}},r.prototype.trackPageView=function(n,i,r,u,f){try{this._pageViewManager.trackPageView(n,i,r,u,f);this.config.autoTrackPageVisitTime&&this._pageVisitTimeManager.trackPreviousPageVisit(n,i)}catch(e){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_TrackPVFailed,"trackPageView failed, page view will not be collected: "+t.Util.getExceptionName(e),{exception:t.Util.dump(e)}))}},r.prototype.startTrackEvent=function(n){try{this._eventTracking.start(n)}catch(i){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StartTrackEventFailed,"startTrackEvent failed, event will not be collected: "+t.Util.getExceptionName(i),{exception:t.Util.dump(i)}))}},r.prototype.stopTrackEvent=function(n,i,r){try{this._eventTracking.stop(n,undefined,i,r)}catch(u){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_StopTrackEventFailed,"stopTrackEvent failed, event will not be collected: "+t.Util.getExceptionName(u),{exception:t.Util.dump(u)}))}},r.prototype.trackEvent=function(n,i,r){try{var f=new t.Telemetry.Event(n,i,r),e=new t.Telemetry.Common.Data(t.Telemetry.Event.dataType,f),o=new t.Telemetry.Common.Envelope(e,t.Telemetry.Event.envelopeType);this.context.track(o)}catch(u){t._InternalLogging.throwInternalNonUserActionable(t.LoggingSeverity.CRITICAL,new t._InternalLogMessage(t._InternalMessageId.NONUSRACT_TrackEventFailed,"trackEvent failed, event will not be collected: "+t.Util.getExceptionName(u),{exception:t.Util.dump(u)}))}},r.prototype.trackAjax=function(n,i,r,u,f,e,o){if(this.config.maxAjaxCallsPerView===-1||this._trackAjaxAttempts0?n.maxBatchSizeInBytes:1e6,n.maxBatchInterval=isNaN(n.maxBatchInterval)?15e3:n.maxBatchInterval,n.enableDebug=t.Util.stringToBoolOrDefault(n.enableDebug),n.disableExceptionTracking=n.disableExceptionTracking!==undefined&&n.disableExceptionTracking!==null?t.Util.stringToBoolOrDefault(n.disableExceptionTracking):!1,n.disableTelemetry=t.Util.stringToBoolOrDefault(n.disableTelemetry),n.verboseLogging=t.Util.stringToBoolOrDefault(n.verboseLogging),n.emitLineDelimitedJson=t.Util.stringToBoolOrDefault(n.emitLineDelimitedJson),n.diagnosticLogInterval=n.diagnosticLogInterval||1e4,n.autoTrackPageVisitTime=t.Util.stringToBoolOrDefault(n.autoTrackPageVisitTime),(isNaN(n.samplingPercentage)||n.samplingPercentage<=0||n.samplingPercentage>=100)&&(n.samplingPercentage=100),n.disableAjaxTracking=n.disableAjaxTracking!==undefined&&n.disableAjaxTracking!==null?t.Util.stringToBoolOrDefault(n.disableAjaxTracking):!1,n.maxAjaxCallsPerView=isNaN(n.maxAjaxCallsPerView)?500:n.maxAjaxCallsPerView,n.disableCorrelationHeaders=n.disableCorrelationHeaders!==undefined&&n.disableCorrelationHeaders!==null?t.Util.stringToBoolOrDefault(n.disableCorrelationHeaders):!0,n.disableFlushOnBeforeUnload=n.disableFlushOnBeforeUnload!==undefined&&n.disableFlushOnBeforeUnload!==null?t.Util.stringToBoolOrDefault(n.disableFlushOnBeforeUnload):!1,n.enableSessionStorageBuffer=n.enableSessionStorageBuffer!==undefined&&n.enableSessionStorageBuffer!==null?t.Util.stringToBoolOrDefault(n.enableSessionStorageBuffer):!1,n},i}();t.Initialization=i})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){var t;(function(){"use strict";var r,u;try{if(typeof window!="undefined"&&typeof JSON!="undefined")if(r="appInsights",window[r]===undefined)n.ApplicationInsights.AppInsights.defaultConfig=n.ApplicationInsights.Initialization.getDefaultConfig();else{var f=window[r]||{},t=new n.ApplicationInsights.Initialization(f),i=t.loadAppInsights();for(u in i)f[u]=i[u];t.emptyQueue();t.pollInteralLogs(i);t.addHousekeepingBeforeUnload(i)}}catch(e){n.ApplicationInsights._InternalLogging.warnToConsole("Failed to initialize AppInsights JS SDK: "+e.message)}})(t=n.ApplicationInsights||(n.ApplicationInsights={}))}(Microsoft||(Microsoft={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(n.PageViewData);n.AjaxCallData=t}(AI||(AI={})),function(n){"use strict";var t=function(n){function t(){n.call(this);this.ver=2;this.properties={};this.measurements={};n.call(this)}return __extends(t,n),t}(Microsoft.Telemetry.Domain);n.RequestData=t}(AI||(AI={})),function(n){"use strict";var t=function(t){function i(){t.call(this);this.ver=2;this.state=n.SessionState.Start;t.call(this)}return __extends(i,t),i}(Microsoft.Telemetry.Domain);n.SessionStateData=t}(AI||(AI={})),function(n){"use strict";(function(n){n[n.Pass=0]="Pass";n[n.Fail=1]="Fail"})(n.TestResult||(n.TestResult={}));var t=n.TestResult}(AI||(AI={})) \ No newline at end of file